Commit 8b1d37dca549d4c451539eda8174bceebb9e41a4

Authored by Perry Werneck
1 parent a83ae34f

Adding support for toolbar separators.

src/include/pw3270/actions.h
... ... @@ -263,6 +263,7 @@
263 263 void pw3270_action_list_free(Pw3270ActionList *action_list);
264 264 void pw3270_action_view_set_actions(GtkWidget *view, Pw3270ActionList *list);
265 265 void pw3270_action_view_move_selected(GtkWidget *from, GtkWidget *to);
  266 + void pw3270_action_view_append(GtkWidget *widget, const gchar *label, GdkPixbuf *pixbuf, const gchar *action_name, gint flags);
266 267  
267 268 Pw3270ActionList * pw3270_action_list_move_action(Pw3270ActionList *action_list, const gchar *action_name, GtkWidget *view);
268 269  
... ...
src/objects/actions/view.c
... ... @@ -106,6 +106,25 @@
106 106 return view;
107 107 }
108 108  
  109 + void pw3270_action_view_append(GtkWidget *widget, const gchar *label, GdkPixbuf *pixbuf, const gchar *action_name, gint flags) {
  110 +
  111 + GtkListStore * store = GTK_LIST_STORE(gtk_tree_view_get_model(GTK_TREE_VIEW(widget)));
  112 +
  113 + GtkTreeIter iter;
  114 + gtk_list_store_append(store, &iter);
  115 + gtk_list_store_set(
  116 + store,
  117 + &iter,
  118 + COLUMN_PIXBUF, pixbuf,
  119 + COLUMN_LABEL, label,
  120 + COLUMN_ACTION_NAME, action_name,
  121 + COLUMN_FLAGS, flags,
  122 + -1
  123 + );
  124 +
  125 +
  126 + }
  127 +
109 128 static void pw3270_action_view_append_element(GtkListStore * store, struct ListElement * element) {
110 129  
111 130 size_t ix;
... ...
src/objects/toolbar/settings.c
... ... @@ -59,8 +59,12 @@
59 59 // It's an action
60 60 action_list = pw3270_action_list_move_action(action_list,actions[ix],((ToolbarSettingsPage *) pg)->views[0]);
61 61  
62   - }
  62 + } else {
  63 +
  64 + // It's a separator
  65 + pw3270_action_view_append(((ToolbarSettingsPage *) pg)->views[0], _( "Separator"), NULL, "separator", 2);
63 66  
  67 + }
64 68  
65 69 }
66 70  
... ... @@ -68,6 +72,7 @@
68 72  
69 73 // Load available actions.
70 74 pw3270_action_view_set_actions(((ToolbarSettingsPage *) pg)->views[1], action_list);
  75 + pw3270_action_view_append(((ToolbarSettingsPage *) pg)->views[1], _( "Separator"), NULL, "separator", 1);
71 76  
72 77 pw3270_action_list_free(action_list);
73 78  
... ...
src/objects/window/header.c
... ... @@ -146,7 +146,7 @@
146 146  
147 147 for(item = children;item;item = g_list_next(item)) {
148 148  
149   - if(GPOINTER_TO_INT(g_object_get_data(G_OBJECT(item->data),"header-position-id") != id))
  149 + if(GPOINTER_TO_INT(g_object_get_data(G_OBJECT(item->data),"header-position-id")) != id)
150 150 continue;
151 151  
152 152 if(sep)
... ...