1 /**************************************************************************
2 * Copyright (C) 2010 (mrovi@interfete-web-club.com)
5 **************************************************************************/
13 typedef struct Launcher
{
14 // always start with area
16 GSList
*list_apps
; // List of char*, each is a path to a app.desktop file
17 GSList
*list_icons
; // List of LauncherIcon*
18 GSList
*icon_theme_names
; // List of char*, each is a theme name (oxygen, Tango...)
19 GSList
*icon_themes
; // List of IconTheme*
22 typedef struct LauncherIcon
{
23 Imlib_Image icon_scaled
;
24 Imlib_Image icon_original
;
33 typedef struct DesktopEntry
{
39 #define ICON_DIR_TYPE_SCALABLE 0
40 #define ICON_DIR_TYPE_FIXED 1
41 #define ICON_DIR_TYPE_THRESHOLD 2
42 typedef struct IconThemeDir
{
52 typedef struct IconTheme
{
54 GSList
*list_inherits
; // each item is a char* (theme name)
55 GSList
*list_directories
; // each item is an IconThemeDir*
58 extern int launcher_enabled
;
59 extern int launcher_max_icon_size
;
61 // default global data
62 void default_launcher();
64 // initialize launcher : y position, precision, ...
66 void init_launcher_panel(void *panel
);
67 void cleanup_launcher();
69 void resize_launcher(void *obj
);
70 void draw_launcher (void *obj
, cairo_t
*c
);
72 void launcher_action(LauncherIcon
*icon
);
74 void test_launcher_read_desktop_file();
75 void test_launcher_read_theme_file();