* menu.c (create_menu): Get help node as an argument.

* main.c: Use new create_menu() interface.
This commit is contained in:
Pavel Roskin 2002-08-20 21:30:06 +00:00
parent c597efa641
commit 608d74abda
4 changed files with 23 additions and 21 deletions

View File

@ -1,3 +1,8 @@
2002-08-20 David Martin <dmartina@excite.com>
* menu.c (create_menu): Get help node as an argument.
* main.c: Use new create_menu() interface.
2002-08-20 Pavel Roskin <proski@gnu.org>
* man2hlp.c: Don't redirect stdout. Check result of ftell.

View File

@ -1095,12 +1095,17 @@ void
init_menu (void)
{
MenuBar [0] = create_menu ( horizontal_split ? _(" &Above ") : _(" &Left "),
PanelMenu, menu_entries (PanelMenu));
MenuBar [1] = create_menu (_(" &File "), FileMenu, menu_entries (FileMenu));
MenuBar [2] = create_menu (_(" &Command "), CmdMenu, menu_entries (CmdMenu));
MenuBar [3] = create_menu (_(" &Options "), OptMenu, menu_entries (OptMenu));
PanelMenu, menu_entries (PanelMenu),
"[Left and Right Menus]");
MenuBar [1] = create_menu (_(" &File "), FileMenu, menu_entries (FileMenu),
"[File Menu]");
MenuBar [2] = create_menu (_(" &Command "), CmdMenu, menu_entries (CmdMenu),
"[Command Menu]");
MenuBar [3] = create_menu (_(" &Options "), OptMenu, menu_entries (OptMenu),
"[Options Menu]");
MenuBar [4] = create_menu (horizontal_split ? _(" &Below ") : _(" &Right "),
RightMenu, menu_entries (PanelMenu));
RightMenu, menu_entries (PanelMenu),
"[Left and Right Menus]");
}
void

View File

@ -48,7 +48,7 @@ static void menu_scan_hotkey(Menu menu)
menu->hotkey = 0;
}
Menu create_menu (char *name, menu_entry *entries, int count)
Menu create_menu (char *name, menu_entry *entries, int count, char *help_node)
{
Menu menu;
char *cp;
@ -82,6 +82,7 @@ Menu create_menu (char *name, menu_entry *entries, int count)
menu->name = g_strdup (name);
menu_scan_hotkey(menu);
menu->start_x = 0;
menu->help_node = g_strdup (help_node);
return menu;
}
@ -272,20 +273,8 @@ static int menubar_handle_key (WMenu *menubar, int key)
if (key == KEY_F(1)) {
if (menubar->dropped) {
switch (menubar->selected) {
case 1:
interactive_display (NULL, "[File Menu]");
break;
case 2:
interactive_display (NULL, "[Command Menu]");
break;
case 3:
interactive_display (NULL, "[Options Menu]");
break;
default:
interactive_display (NULL, "[Left and Right Menus]");
break;
}
interactive_display (NULL,
(menubar->menu [menubar->selected])->help_node);
} else {
interactive_display (NULL, "[Menu Bar]");
}
@ -545,6 +534,7 @@ void
destroy_menu (Menu menu)
{
g_free (menu->name);
g_free (menu->help_node);
g_free (menu);
}

View File

@ -24,6 +24,7 @@ typedef struct {
int hotkey;
menu_entry *entries;
int start_x; /* position relative to menubar start */
char *help_node;
} sMenu;
typedef sMenu *Menu;
@ -43,7 +44,8 @@ typedef struct {
int previous_selection; /* Selected widget before activating menu */
} WMenu;
Menu create_menu (char *name, menu_entry *entries, int count);
Menu create_menu (char *name, menu_entry *entries, int count,
char *help_node);
void destroy_menu (Menu menu);
WMenu *menubar_new (int y, int x, int cols, Menu menu [], int items);
void menubar_arrange (WMenu* menubar);