static GtkTreeStore *tree1, *tree2;
static GtkTreeModel *model1, *model2;
-static struct menu *current; // current node for SINGLE view
-static struct menu *browsed; // browsed node for SPLIT view
+static struct menu *browsed; // browsed menu for SINGLE/SPLIT view
enum {
COL_OPTION, COL_NAME, COL_NO, COL_MOD, COL_YES, COL_VALUE,
switch (mode) {
case SINGLE_VIEW:
- current = &rootmenu;
+ browsed = &rootmenu;
display_tree_part();
gtk_widget_set_sensitive(single_btn, FALSE);
break;
{
enum prop_type ptype;
- current = current->parent;
- ptype = current->prompt ? current->prompt->type : P_UNKNOWN;
+ browsed = browsed->parent;
+ ptype = browsed->prompt ? browsed->prompt->type : P_UNKNOWN;
if (ptype != P_MENU)
- current = current->parent;
+ browsed = browsed->parent;
display_tree_part();
- if (current == &rootmenu)
+ if (browsed == &rootmenu)
gtk_widget_set_sensitive(back_btn, FALSE);
}
if (ptype == P_MENU && view_mode != FULL_VIEW && col == COL_OPTION) {
// goes down into menu
- current = menu;
+ browsed = menu;
display_tree_part();
gtk_widget_set_sensitive(back_btn, TRUE);
} else if (col == COL_OPTION) {
gtk_tree_model_get_iter(model, &iter, path);
gtk_tree_model_get(model, &iter, COL_MENU, &menu, -1);
- if (event->type == GDK_2BUTTON_PRESS) {
+ if (event->type == GDK_2BUTTON_PRESS)
toggle_sym_value(menu);
- current = menu;
- display_tree_part();
- } else {
- browsed = menu;
- display_tree_part();
- }
+
+ browsed = menu;
+ display_tree_part();
gtk_tree_view_set_cursor(view, path, NULL, FALSE);
gtk_widget_grab_focus(tree2_w);
GtkTreeIter iter;
if (menu == &rootmenu)
- current = &rootmenu;
+ browsed = &rootmenu;
for (child = menu->list; child; child = child->next) {
prop = child->prompt;
static void display_tree_part(void)
{
gtk_tree_store_clear(tree2);
- if (view_mode == SINGLE_VIEW)
- display_tree(tree2, current);
- else if (view_mode == SPLIT_VIEW)
+ if (view_mode == SINGLE_VIEW || view_mode == SPLIT_VIEW)
display_tree(tree2, browsed);
else if (view_mode == FULL_VIEW)
display_tree(tree2, &rootmenu);