]> Dogcows Code - chaz/tint2/blobdiff - src/launcher/launcher.h
Changed launcher to use Areas for each icon; this allows showing tooltips
[chaz/tint2] / src / launcher / launcher.h
index 3023546e90fb3f23bb7d833e2ef3702f63cebe9d..3a6abcf87f7c496408b16ad151cab14ef66bae35 100644 (file)
@@ -9,22 +9,25 @@
 
 #include "common.h"
 #include "area.h"
+#include "xsettings-client.h"
 
 typedef struct Launcher {
        // always start with area
        Area area;
        GSList *list_apps;                      // List of char*, each is a path to a app.desktop file
        GSList *list_icons;             // List of LauncherIcon*
-       GSList *icon_theme_names;       // List of char*, each is a theme name (oxygen, Tango...)
-       GSList *icon_themes;            // List of IconTheme*
+       GSList *list_themes;            // List of IconTheme*
 } Launcher;
 
 typedef struct LauncherIcon {
+       // always start with area
+       Area area;
        Imlib_Image icon_scaled;
        Imlib_Image icon_original;
        char *cmd;
        char *icon_name;
        char *icon_path;
+       char *icon_tooltip;
        int icon_size;
        int is_app_desktop;
        int x, y;
@@ -57,6 +60,8 @@ typedef struct IconTheme {
 
 extern int launcher_enabled;
 extern int launcher_max_icon_size;
+extern char *icon_theme_name;  // theme name
+extern XSettingsClient *xsettings_client;
 
 // default global data
 void default_launcher();
@@ -65,10 +70,15 @@ void default_launcher();
 void init_launcher();
 void init_launcher_panel(void *panel);
 void cleanup_launcher();
+void cleanup_launcher_theme(Launcher *launcher);
 
-void resize_launcher(void *obj);
+int  resize_launcher(void *obj);
 void draw_launcher (void *obj, cairo_t *c);
 
+// Populates the list_themes list
+void launcher_load_themes(Launcher *launcher);
+// Populates the list_icons list
+void launcher_load_icons(Launcher *launcher);
 void launcher_action(LauncherIcon *icon);
 
 void test_launcher_read_desktop_file();
This page took 0.020785 seconds and 4 git commands to generate.