/** Set the visibility of the toolbar */ static void gui_set_toolbar_visible(void) { GSList *list; gboolean visible; list = gtk_ui_manager_get_toplevels(ui_manager, GTK_UI_MANAGER_TOOLBAR); g_assert(g_slist_length(list) == 1); visible = gtk_toggle_action_get_active(GTK_TOGGLE_ACTION (gtk_ui_manager_get_action (ui_manager, "ui/MainMenu/SettingsMenu/ShowHideToolbar"))); if (visible) gtk_widget_show(GTK_WIDGET(list->data)); else gtk_widget_hide(GTK_WIDGET(list->data)); config_set_int("settings/show_toolbar", visible); g_slist_free(list); }
int clip_GTK_UIMANAGERGETTOPLEVELS(ClipMachine * ClipMachineMemory) { C_object *cmanager = _fetch_co_arg(ClipMachineMemory); GtkUIManagerItemType type = _clip_parni(ClipMachineMemory, 2); GSList *list; CHECKARG2(1, MAP_type_of_ClipVarType, NUMERIC_type_of_ClipVarType); CHECKCOBJ(cmanager, GTK_IS_UI_MANAGER(cmanager->object)); CHECKARG(2, NUMERIC_type_of_ClipVarType); list = gtk_ui_manager_get_toplevels(GTK_UI_MANAGER(cmanager->object), type); if (list) { ClipVar *cv = RETPTR(ClipMachineMemory); long n = g_slist_length(list); _clip_array(ClipMachineMemory, cv, 1, &n); for (n = 0; list; list = g_slist_next(list)) { C_widget *cwid; GtkWidget *wid; wid = list->data; cwid = _list_get_cwidget(ClipMachineMemory, wid); if (!cwid) cwid = _register_widget(ClipMachineMemory, wid, NULL); if (cwid) _clip_aset(ClipMachineMemory, cv, &cwid->obj, 1, &n); } } return 0; err: return 1; }
static VALUE rg_get_toplevels(VALUE self, VALUE types) { return GSLIST2ARYF(gtk_ui_manager_get_toplevels(_SELF(self), RVAL2GFLAGS(types, GTK_TYPE_UI_MANAGER_ITEM_TYPE))); }