diff options
| author | Dusan Durech <dusan.d@Centrum.sk> | 2009-07-15 20:36:23 +0200 |
|---|---|---|
| committer | Dusan Durech <dusan.d@Centrum.sk> | 2009-07-15 20:36:23 +0200 |
| commit | d0c088655af27e2e66b164c061e48a5f5bd28f05 (patch) | |
| tree | 59bb7dd44ff5bed456e84c4195fd4c1bd1aff130 /src/widget/widget_select.c | |
| parent | dd094a1c6598648c013ae1483c303eea34fc3bbe (diff) | |
add new API for mouse and fix bug with crash upon load session
Diffstat (limited to 'src/widget/widget_select.c')
| -rw-r--r-- | src/widget/widget_select.c | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/src/widget/widget_select.c b/src/widget/widget_select.c index d847113..a453ec4 100644 --- a/src/widget/widget_select.c +++ b/src/widget/widget_select.c @@ -4,6 +4,7 @@ #include "main.h" #include "interface.h" #include "font.h" +#include "mouse_buffer.h" #include "widget.h" #include "widget_select.h" @@ -92,7 +93,7 @@ void select_draw(widget_t *widget) line = (char *) p->list->list[i]; font_text_size(line, &w, &h); - +/* if (x > widget->x && y > widget->y + i * 20 && x < widget->x + w && y < widget->y + i * 20 + h) { font_draw(line, widget->x, widget->y + i * 20, COLOR_YELLOW); @@ -103,6 +104,17 @@ void select_draw(widget_t *widget) font_draw(line, widget->x, widget->y + i * 20, COLOR_WHITE); } } +*/ + if (mouse_buffer_is_on_area(widget->x, widget->y+i * 20, w, h, MOUSE_BUF_MOTION)) { + font_draw(line, widget->x, widget->y + i * 20, COLOR_YELLOW); + } else { + if (p->select == i) { + font_draw(line, widget->x, widget->y + i * 20, COLOR_RED); + } else { + font_draw(line, widget->x, widget->y + i * 20, COLOR_WHITE); + } + } + } } @@ -125,12 +137,18 @@ void select_event(widget_t *widget) font_text_size(line, &w, &h); + if (mouse_buffer_is_on_area(widget->x, widget->y+i * 20, w, h, MOUSE_BUF_CLICK)) { + p->select = i; + p->fce_event(p); + } +/* if (x > widget->x && y > widget->y + i * 20 && x < widget->x + w && y < widget->y + i * 20 + h && interface_is_mouse_clicket()) { p->select = i; p->fce_event(p); } +*/ } } |