summaryrefslogtreecommitdiff
path: root/amiga/gui.c
diff options
context:
space:
mode:
authorChris Young <chris@unsatisfactorysoftware.co.uk>2008-09-28 13:55:40 +0000
committerChris Young <chris@unsatisfactorysoftware.co.uk>2008-09-28 13:55:40 +0000
commitbc22f2e7d4cd4089fc689c85eb4e12faa17c6cdf (patch)
treeb225f3d9fecf90291d8d9601f2d91dfa37ecb652 /amiga/gui.c
parent9c36d71ab89c8768dfe05cbf91f453282fc8baf9 (diff)
downloadnetsurf-bc22f2e7d4cd4089fc689c85eb4e12faa17c6cdf.tar.gz
netsurf-bc22f2e7d4cd4089fc689c85eb4e12faa17c6cdf.tar.bz2
Treeview window event handling (currently just double-clicking hotlist items and
closing the window) svn path=/trunk/netsurf/; revision=5453
Diffstat (limited to 'amiga/gui.c')
-rwxr-xr-xamiga/gui.c28
1 files changed, 17 insertions, 11 deletions
diff --git a/amiga/gui.c b/amiga/gui.c
index a249498b3..57b2dd478 100755
--- a/amiga/gui.c
+++ b/amiga/gui.c
@@ -404,6 +404,7 @@ void ami_handle_msg(void)
struct nsObject *nnode;
struct gui_window *gwin,*destroywin=NULL;
struct MenuItem *item;
+ struct InputEvent *ie;
node = (struct nsObject *)window_list->mlh_Head;
@@ -411,6 +412,19 @@ void ami_handle_msg(void)
{
gwin = node->objstruct;
+ if(node->Type == AMINS_TVWINDOW)
+ {
+ if(ami_tree_event((struct treeviw_window *)gwin))
+ {
+ break;
+ }
+ else
+ {
+ node = nnode;
+ continue;
+ }
+ }
+
while((result = RA_HandleInput(gwin->objects[OID_MAIN],&code)) != WMHI_LASTMSG)
{
@@ -588,6 +602,8 @@ void ami_handle_msg(void)
case WMHI_RAWKEY:
storage = result & WMHI_GADGETMASK;
+
+ GetAttr(WINDOW_InputEvent,gwin->objects[OID_MAIN],(ULONG *)&ie);
switch(storage)
{
case RAWKEY_CRSRUP:
@@ -633,17 +649,7 @@ void ami_handle_msg(void)
break;
case WMHI_CLOSEWINDOW:
- switch(node->Type)
- {
- case AMINS_TVWINDOW:
- ami_tree_close((struct treeview_window *)gwin);
- break;
-
- default:
- browser_window_destroy(gwin->bw);
- break;
- }
- //destroywin=gwin;
+ browser_window_destroy(gwin->bw);
break;
case WMHI_INTUITICK: