aboutsummaryrefslogtreecommitdiff
path: root/src/ui.hh
diff options
context:
space:
mode:
Diffstat (limited to 'src/ui.hh')
-rw-r--r--src/ui.hh25
1 files changed, 24 insertions, 1 deletions
diff --git a/src/ui.hh b/src/ui.hh
index 6fd09b10..ca09723f 100644
--- a/src/ui.hh
+++ b/src/ui.hh
@@ -36,7 +36,7 @@ class CustProgressBox;
class CustTabs;
-// Class definition ----------------------------------------------------------
+// Class definitions ---------------------------------------------------------
/*
* Used to reposition group's widgets when some of them are hidden.
* All children get the height of the group but retain their original width.
@@ -98,6 +98,29 @@ public:
}
};
+/*
+ * A button that highlights on mouse over
+ */
+class CustLightButton : public Fl_Button {
+ Fl_Color norm_color, light_color;
+public:
+ CustLightButton(int x, int y, int w, int h, const char *l=0) :
+ Fl_Button(x,y,w,h,l) { norm_color = color(); light_color = 51; };
+ virtual int handle(int e)
+ {
+ if (active()) {
+ if (e == FL_ENTER) {
+ color(light_color); // {17,26,51}
+ redraw();
+ } else if (e == FL_LEAVE || e == FL_RELEASE) {
+ color(norm_color);
+ redraw();
+ }
+ }
+ return Fl_Button::handle(e);
+ }
+ void hl_color(Fl_Color col) { light_color = col; };
+};
//
// UI class definition -------------------------------------------------------