]> Dogcows Code - chaz/tint2/blobdiff - src/tooltip/tooltip.h
*add* autohide
[chaz/tint2] / src / tooltip / tooltip.h
index cddb73c74de4a703476b812432a72308336f8c79..0aa965f2635232f06d29e4ddfc142f410a7b17d2 100644 (file)
 #ifndef TOOLTIP_H
 #define TOOLTIP_H
 
-#include <sys/time.h>
-
 #include "task.h"
+#include "panel.h"
+#include "timer.h"
 
-enum tooltip_state {
-       TOOLTIP_ABOUT_TO_SHOW,
-       TOOLTIP_ABOUT_TO_HIDE,
-};
 
 typedef struct {
-       Task* task;
+       Area* area;    // never ever use the area attribut if you are not 100% sure that this area was not freed
+       char* tooltip_text;
+       Panel* panel;
        Window window;
-       struct itimerval show_timeout;
-       struct itimerval hide_timeout;
+       int show_timeout_msec;
+       int hide_timeout_msec;
        Bool enabled;
-       enum tooltip_state current_state;
        Bool mapped;
        int paddingx;
        int paddingy;
@@ -41,18 +38,17 @@ typedef struct {
        config_color font_color;
        Color background_color;
        Border border;
+       const struct timeout* timeout;
 } Tooltip;
 
 extern Tooltip g_tooltip;
 
-
 void init_tooltip();
 void cleanup_tooltip();
-void tooltip_sighandler(int sig);
-void tooltip_trigger_show(Task* task, int x, int y);
-void tooltip_show();
+void tooltip_trigger_show(Area* area, Panel* p, int x, int y);
+void tooltip_show(void* /*arg*/);
 void tooltip_update();
 void tooltip_trigger_hide();
-void tooltip_hide();
+void tooltip_hide(void* /*arg*/);
 
 #endif // TOOLTIP_H
This page took 0.025443 seconds and 4 git commands to generate.