|
|
|
@ -1,4 +1,4 @@
|
|
|
|
/* $Id: gui.c,v 1.8 2013/02/24 00:39:59 steffen Exp $ */
|
|
|
|
/* $Id: gui.c,v 1.9 2013/02/24 12:42:14 steffen Exp $ */
|
|
|
|
/***************************************************************************
|
|
|
|
/***************************************************************************
|
|
|
|
* gui.c
|
|
|
|
* gui.c
|
|
|
|
*
|
|
|
|
*
|
|
|
|
@ -143,7 +143,6 @@ int gui_event (GUIEvent event) {
|
|
|
|
int i;
|
|
|
|
int i;
|
|
|
|
iPoint winpos = { 0 };
|
|
|
|
iPoint winpos = { 0 };
|
|
|
|
static int event_called = 0;
|
|
|
|
static int event_called = 0;
|
|
|
|
int nogui = 0;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (event_called) return 1;
|
|
|
|
if (event_called) return 1;
|
|
|
|
event_called = 1;
|
|
|
|
event_called = 1;
|
|
|
|
@ -157,8 +156,8 @@ int gui_event (GUIEvent event) {
|
|
|
|
case (GUI_BUTTON): {
|
|
|
|
case (GUI_BUTTON): {
|
|
|
|
GUIButton *button = (GUIButton *) currentwin->items[i].item;
|
|
|
|
GUIButton *button = (GUIButton *) currentwin->items[i].item;
|
|
|
|
if (GUI_ITEM_IS_INSIDE (button, winpos)) {
|
|
|
|
if (GUI_ITEM_IS_INSIDE (button, winpos)) {
|
|
|
|
d_printf ("button: %d,%d,%d,%d pos:%d,%d event:%d,%d ",
|
|
|
|
// d_printf ("button: %d,%d,%d,%d pos:%d,%d event:%d,%d ",
|
|
|
|
button->x, button->y, button->w, button->h, winpos.x, winpos.y, event.mousepos.x, event.mousepos.y);
|
|
|
|
// button->x, button->y, button->w, button->h, winpos.x, winpos.y, event.mousepos.x, event.mousepos.y);
|
|
|
|
gui_button_event (button, event);
|
|
|
|
gui_button_event (button, event);
|
|
|
|
event_called = 0;
|
|
|
|
event_called = 0;
|
|
|
|
return 1;
|
|
|
|
return 1;
|
|
|
|
@ -172,7 +171,7 @@ int gui_event (GUIEvent event) {
|
|
|
|
case (GUI_ENTRY): {
|
|
|
|
case (GUI_ENTRY): {
|
|
|
|
GUIEntry *entry = (GUIEntry*) currentwin->items[i].item;
|
|
|
|
GUIEntry *entry = (GUIEntry*) currentwin->items[i].item;
|
|
|
|
if (GUI_ITEM_IS_INSIDE (entry, winpos)) {
|
|
|
|
if (GUI_ITEM_IS_INSIDE (entry, winpos)) {
|
|
|
|
d_printf ("entry..");
|
|
|
|
// d_printf ("entry..");
|
|
|
|
gui_entry_event (entry, &event);
|
|
|
|
gui_entry_event (entry, &event);
|
|
|
|
event_called = 0;
|
|
|
|
event_called = 0;
|
|
|
|
return 1;
|
|
|
|
return 1;
|
|
|
|
@ -183,16 +182,17 @@ int gui_event (GUIEvent event) {
|
|
|
|
case (GUI_LIST): {
|
|
|
|
case (GUI_LIST): {
|
|
|
|
GUIList *list = (GUIList *) currentwin->items[i].item;
|
|
|
|
GUIList *list = (GUIList *) currentwin->items[i].item;
|
|
|
|
if (GUI_ITEM_IS_INSIDE (list, winpos)) {
|
|
|
|
if (GUI_ITEM_IS_INSIDE (list, winpos)) {
|
|
|
|
d_printf ("list..");
|
|
|
|
// d_printf ("list..");
|
|
|
|
gui_list_event (list, &event);
|
|
|
|
gui_list_event (list, &event);
|
|
|
|
event_called = 0;
|
|
|
|
event_called = 0;
|
|
|
|
return 1;
|
|
|
|
return 1;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
if (currentwin->focus) {
|
|
|
|
if (currentwin->focus) {
|
|
|
|
d_printf ("focus..");
|
|
|
|
// d_printf ("focus..");
|
|
|
|
switch (currentwin->focus->type) {
|
|
|
|
switch (currentwin->focus->type) {
|
|
|
|
case (GUI_ENTRY):
|
|
|
|
case (GUI_ENTRY):
|
|
|
|
gui_entry_event ((GUIEntry*)currentwin->focus->item, &event);
|
|
|
|
gui_entry_event ((GUIEntry*)currentwin->focus->item, &event);
|
|
|
|
@ -211,7 +211,7 @@ int gui_event (GUIEvent event) {
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/* no gui active nor any window is responsible.. */
|
|
|
|
/* no gui active nor any window is responsible.. */
|
|
|
|
d_printf ("no event..");
|
|
|
|
// d_printf ("no event..");
|
|
|
|
switch (event.event) {
|
|
|
|
switch (event.event) {
|
|
|
|
case (EGUI_MOUSERELEASED):
|
|
|
|
case (EGUI_MOUSERELEASED):
|
|
|
|
draw_mousebtnup (event.mousepos.x, event.mousepos.y, event.mousebtn);
|
|
|
|
draw_mousebtnup (event.mousepos.x, event.mousepos.y, event.mousebtn);
|
|
|
|
|