[GITLAB] - UPGRADE TO v12 on Wednesday the 18th of December at 11.30AM

Commit 8f50b77e authored by Cedric Roux's avatar Cedric Roux

make label clickable (the user has to ask for it, it's non-clickable by default)

parent d4a4bba3
......@@ -26,6 +26,8 @@ widget *new_xy_plot(gui *gui, int width, int height, char *label,
int vruler_width);
widget *new_textlist(gui *_gui, int width, int nlines, int background_color);
void label_set_clickable(gui *gui, widget *label, int clickable);
void container_set_child_growable(gui *_gui, widget *_this,
widget *child, int growable);
......@@ -60,6 +62,8 @@ int new_color(gui *gui, char *color);
* - scrollup { void *: NULL }
* - scrolldown { void *: NULL }
* - click { int [2]: line, button }
* - label:
* - click { int: button } (if enabled)
*/
/* same type as in gui_defs.h */
......
......@@ -44,3 +44,37 @@ widget *new_label(gui *_gui, const char *label)
return w;
}
static void button(gui *gui, widget *_this, int x, int y, int button, int up)
{
LOGD("BUTTON label %p xy %d %d button %d up %d\n", _this, x, y, button, up);
if (up != 0) return;
gui_notify(gui, "click", _this, &button);
}
/* we could use default_button, but it's in widget.c, so, well... */
static void no_button(gui *gui, widget *_this, int x,int y,int button,int up)
{
/* do nothing */
}
/*************************************************************************/
/* public functions */
/*************************************************************************/
void label_set_clickable(gui *_g, widget *_this, int clickable)
{
struct gui *g = _g;
struct label_widget *this = _this;
glock(g);
if (clickable)
this->common.button = button;
else
this->common.button = no_button;
gunlock(g);
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment