git.ucc.asn.au
/
tpg
/
acess2.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
InitRD - Libc++, libm, bochs, dbserver
[tpg/acess2.git]
/
Usermode
/
Applications
/
axwin3_src
/
libaxwin3.so_src
/
r_menu.c
diff --git
a/Usermode/Applications/axwin3_src/libaxwin3.so_src/r_menu.c
b/Usermode/Applications/axwin3_src/libaxwin3.so_src/r_menu.c
index
78fa169
..
9894abd
100644
(file)
--- a/
Usermode/Applications/axwin3_src/libaxwin3.so_src/r_menu.c
+++ b/
Usermode/Applications/axwin3_src/libaxwin3.so_src/r_menu.c
@@
-43,9
+43,9
@@
int AxWin3_Menu_int_Callback(tHWND Window, int Message, int Length, void *Data)
if(msg->ID >= info->nItems) return -1;
item = &info->Items[msg->ID];
if(item->Callback) item->Callback(item->CbPtr);
if(msg->ID >= info->nItems) return -1;
item = &info->Items[msg->ID];
if(item->Callback) item->Callback(item->CbPtr);
- return
0
; }
+ return
1
; }
}
}
- return
1
;
+ return
0
;
}
tHWND AxWin3_Menu_Create(tHWND Parent)
}
tHWND AxWin3_Menu_Create(tHWND Parent)
@@
-67,6
+67,7
@@
void AxWin3_Menu_ShowAt(tHWND Menu, int X, int Y)
{
AxWin3_MoveWindow(Menu, X, Y);
AxWin3_ShowWindow(Menu, 1);
{
AxWin3_MoveWindow(Menu, X, Y);
AxWin3_ShowWindow(Menu, 1);
+ AxWin3_FocusWindow(Menu);
}
tAxWin3_MenuItem *AxWin3_Menu_AddItem(
}
tAxWin3_MenuItem *AxWin3_Menu_AddItem(
@@
-86,7
+87,7
@@
tAxWin3_MenuItem *AxWin3_Menu_AddItem(
_SysDebug("ERROR: Realloc Failed");
return NULL;
}
_SysDebug("ERROR: Realloc Failed");
return NULL;
}
-
+
ret = &info->Items[info->nItems-1];
ret->ID = info->nItems - 1;
ret->Window = Menu;
ret = &info->Items[info->nItems-1];
ret->ID = info->nItems - 1;
ret->Window = Menu;
@@
-95,16
+96,19
@@
tAxWin3_MenuItem *AxWin3_Menu_AddItem(
ret->SubMenu = SubMenu;
{
ret->SubMenu = SubMenu;
{
- tMenuMsg_AddItem *req;
- int data_size;
if(!Label) Label = "";
if(!Label) Label = "";
- data_size = sizeof(*req)+strlen(Label)+1;
+ tMenuIPC_AddItem *req;
+ int data_size = sizeof(*req) + strlen(Label)+1;
req = malloc(data_size);
req = malloc(data_size);
+ if( !req ) {
+ free(ret);
+ return NULL;
+ }
req->ID = ret->ID;
req->Flags = Flags;
req->SubMenuID = AxWin3_int_GetWindowID(SubMenu);
strcpy(req->Label, Label);
req->ID = ret->ID;
req->Flags = Flags;
req->SubMenuID = AxWin3_int_GetWindowID(SubMenu);
strcpy(req->Label, Label);
- AxWin3_Send
Message(Menu, Menu, MSG
_MENU_ADDITEM, data_size, req);
+ AxWin3_Send
IPC(Menu, IPC
_MENU_ADDITEM, data_size, req);
free(req);
}
free(req);
}
UCC
git Repository :: git.ucc.asn.au