/* Starts, pauses and continues the timer */ static void toggleTimer() { if (prefs.timer_is_clock) return; switch (timerMode) { case 0: timer = g_timer_new(); timerMode = 1; gtk_widget_set_sensitive(GTK_WIDGET(resetButton), FALSE); gtk_tool_button_set_stock_id(GTK_TOOL_BUTTON(startButton), GTK_STOCK_MEDIA_PAUSE); break; case 1: g_timer_stop(timer); timerMode = 2; gtk_widget_set_sensitive(GTK_WIDGET(resetButton), TRUE); gtk_tool_button_set_stock_id(GTK_TOOL_BUTTON(startButton), GTK_STOCK_MEDIA_PLAY); break; case 2: g_timer_continue(timer); timerMode = 1; gtk_widget_set_sensitive(GTK_WIDGET(resetButton), FALSE); gtk_tool_button_set_stock_id(GTK_TOOL_BUTTON(startButton), GTK_STOCK_MEDIA_PAUSE); break; } }
static void update_playstatus(void *opaque, prop_event_t event, ...) { playdeck_t *pd = opaque; const char *status; va_list ap; va_start(ap, event); switch(event) { default: case PROP_SET_VOID: bar_sensitivity(pd, FALSE); break; case PROP_SET_CSTRING: status = va_arg(ap, const char *); if(0) case PROP_SET_RSTRING: status = rstr_get(va_arg(ap, const rstr_t *)); bar_sensitivity(pd, TRUE); gtk_tool_button_set_stock_id(GTK_TOOL_BUTTON(pd->playpause), !strcmp(status, "play") ? GTK_STOCK_MEDIA_PAUSE: GTK_STOCK_MEDIA_PLAY); pd->pp_action = !strcmp(status, "play") ? ACTION_PAUSE : ACTION_PLAY; break; } }
static void gtk_tool_button_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec) { GtkToolButton *button = GTK_TOOL_BUTTON (object); switch (prop_id) { case PROP_LABEL: gtk_tool_button_set_label (button, g_value_get_string (value)); break; case PROP_USE_UNDERLINE: gtk_tool_button_set_use_underline (button, g_value_get_boolean (value)); break; case PROP_LABEL_WIDGET: gtk_tool_button_set_label_widget (button, g_value_get_object (value)); break; case PROP_STOCK_ID: gtk_tool_button_set_stock_id (button, g_value_get_string (value)); break; case PROP_ICON_NAME: gtk_tool_button_set_icon_name (button, g_value_get_string (value)); break; case PROP_ICON_WIDGET: gtk_tool_button_set_icon_widget (button, g_value_get_object (value)); break; default: G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); break; } }
static GtkWidget *create_toolbar(void) { GtkWidget *toolbar, *item; GtkToolItem *tool_item; toolbar = gtk_toolbar_new(); gtk_toolbar_set_icon_size(GTK_TOOLBAR(toolbar), GTK_ICON_SIZE_MENU); gtk_toolbar_set_style(GTK_TOOLBAR(toolbar), GTK_TOOLBAR_ICONS); tool_item = gtk_menu_tool_button_new(NULL, NULL); gtk_tool_button_set_stock_id(GTK_TOOL_BUTTON(tool_item), GTK_STOCK_JUMP_TO); item = (GtkWidget*)tool_item; gtk_widget_set_tooltip_text(item, _("Show the current document")); gtk_container_add(GTK_CONTAINER(toolbar), item); g_signal_connect(item, "clicked", G_CALLBACK(on_refresh), NULL); item = gtk_menu_new(); gtk_menu_tool_button_set_menu(GTK_MENU_TOOL_BUTTON(tool_item), item); g_signal_connect(item, "show", G_CALLBACK(on_doc_menu_show), NULL); tool_item = gtk_tool_item_new(); gtk_tool_item_set_expand(tool_item, TRUE); gtk_container_add(GTK_CONTAINER(toolbar), GTK_WIDGET(tool_item)); item = gtk_label_new(NULL); gtk_label_set_ellipsize(GTK_LABEL(item), PANGO_ELLIPSIZE_START); gtk_container_add(GTK_CONTAINER(tool_item), item); edit_window.name_label = item; item = ui_tool_button_new(GTK_STOCK_CLOSE, _("_Unsplit"), NULL); gtk_container_add(GTK_CONTAINER(toolbar), item); g_signal_connect(item, "clicked", G_CALLBACK(on_unsplit), NULL); return toolbar; }
/*# @method set_stock_id GtkToolButton @brief Sets the name of the stock item. @param a name of a stock item, or NULL. The stock_id property only has an effect if not overridden by non-NULL "label" and "icon_widget" properties. */ FALCON_FUNC ToolButton::set_stock_id( VMARG ) { Gtk::ArgCheck1 args( vm, "[S]" ); const gchar* stock = args.getCString( 0, false ); MYSELF; GET_OBJ( self ); gtk_tool_button_set_stock_id( (GtkToolButton*)_obj, stock ); }
static void gtk_tool_button_sync_action_properties (GtkActivatable *activatable, GtkAction *action) { GtkToolButton *button; GIcon *icon; const gchar *stock_id; GtkIconSet *icon_set = NULL; parent_activatable_iface->sync_action_properties (activatable, action); if (!action) return; if (!gtk_activatable_get_use_action_appearance (activatable)) return; button = GTK_TOOL_BUTTON (activatable); G_GNUC_BEGIN_IGNORE_DEPRECATIONS; stock_id = gtk_action_get_stock_id (action); G_GNUC_END_IGNORE_DEPRECATIONS; gtk_tool_button_set_label (button, gtk_action_get_short_label (action)); gtk_tool_button_set_use_underline (button, TRUE); G_GNUC_BEGIN_IGNORE_DEPRECATIONS; gtk_tool_button_set_stock_id (button, stock_id); G_GNUC_END_IGNORE_DEPRECATIONS; gtk_tool_button_set_icon_name (button, gtk_action_get_icon_name (action)); if (stock_id) { G_GNUC_BEGIN_IGNORE_DEPRECATIONS; icon_set = gtk_icon_factory_lookup_default (stock_id); G_GNUC_END_IGNORE_DEPRECATIONS; } if (icon_set != NULL) gtk_tool_button_set_icon_widget (button, NULL); else if ((icon = gtk_action_get_gicon (action)) != NULL) { GtkIconSize icon_size = gtk_tool_item_get_icon_size (GTK_TOOL_ITEM (button)); GtkWidget *image = gtk_tool_button_get_icon_widget (button); if (!image) { image = gtk_image_new (); gtk_widget_show (image); gtk_tool_button_set_icon_widget (button, image); } gtk_image_set_from_gicon (GTK_IMAGE (image), icon, icon_size); } else if (gtk_action_get_icon_name (action)) gtk_tool_button_set_icon_name (button, gtk_action_get_icon_name (action)); else gtk_tool_button_set_label (button, gtk_action_get_short_label (action)); }
/* Enable or disable menu items based on whether you have an unsaved capture file you've finished reading. */ void set_toolbar_for_unsaved_capture_file(gboolean have_unsaved_capture_file) { if (toolbar_init) { if(have_unsaved_capture_file) { if (strcmp(gtk_tool_button_get_stock_id(GTK_TOOL_BUTTON(save_button)), GTK_STOCK_SAVE) != 0) { gtk_tool_button_set_stock_id(GTK_TOOL_BUTTON(save_button), GTK_STOCK_SAVE); gtk_widget_set_tooltip_text(GTK_WIDGET(save_button),SAVE_BUTTON_TOOLTIP_TEXT); g_object_set_data(G_OBJECT(save_button), "save", GINT_TO_POINTER(1)); } } else { if (strcmp(gtk_tool_button_get_stock_id(GTK_TOOL_BUTTON(save_button)), GTK_STOCK_SAVE_AS) != 0) { gtk_tool_button_set_stock_id(GTK_TOOL_BUTTON(save_button), GTK_STOCK_SAVE_AS); gtk_widget_set_tooltip_text(GTK_WIDGET(save_button), SAVE_AS_BUTTON_TOOLTIP_TEXT); g_object_set_data(G_OBJECT(save_button), "save", GINT_TO_POINTER(0)); } } /*gtk_widget_set_sensitive((GTK_WIDGET(save_button), have_unsaved_capture_file); gtk_widget_set_sensitive(GTK_WIDGET(save_as_button), !have_unsaved_capture_file);*/ } }
static void glade_gtk_tool_button_set_stock_id (GObject * object, const GValue * value) { const gchar *stock_id; g_return_if_fail (GTK_IS_TOOL_BUTTON (object)); stock_id = g_value_get_string (value); if (stock_id && strlen (stock_id) == 0) stock_id = NULL; gtk_tool_button_set_stock_id (GTK_TOOL_BUTTON (object), stock_id); }
static GtkToolItem * toggle_button_new (const gchar * icon, const gchar * alt, void (* toggled) (GtkToggleToolButton * button)) { GtkToolItem * item = gtk_toggle_tool_button_new (); if (! alt) gtk_tool_button_set_stock_id ((GtkToolButton *) item, icon); else if (gtk_icon_theme_has_icon (gtk_icon_theme_get_default (), icon)) gtk_tool_button_set_icon_name ((GtkToolButton *) item, icon); else gtk_tool_button_set_label ((GtkToolButton *) item, alt); g_signal_connect (item, "toggled", (GCallback) toggled, NULL); return item; }
static void glade_gtk_tool_button_set_stock_id (GObject * object, const GValue * value) { const gchar *stock_id; g_return_if_fail (GTK_IS_TOOL_BUTTON (object)); stock_id = g_value_get_string (value); if (stock_id && strlen (stock_id) == 0) stock_id = NULL; G_GNUC_BEGIN_IGNORE_DEPRECATIONS gtk_tool_button_set_stock_id (GTK_TOOL_BUTTON (object), stock_id); G_GNUC_END_IGNORE_DEPRECATIONS }
static void gtk_tool_button_update (GtkActivatable *activatable, GtkAction *action, const gchar *property_name) { GtkToolButton *button; GtkWidget *image; parent_activatable_iface->update (activatable, action, property_name); if (!gtk_activatable_get_use_action_appearance (activatable)) return; button = GTK_TOOL_BUTTON (activatable); if (strcmp (property_name, "short-label") == 0) gtk_tool_button_set_label (button, gtk_action_get_short_label (action)); else if (strcmp (property_name, "stock-id") == 0) gtk_tool_button_set_stock_id (button, gtk_action_get_stock_id (action)); else if (strcmp (property_name, "gicon") == 0) { const gchar *stock_id = gtk_action_get_stock_id (action); GIcon *icon = gtk_action_get_gicon (action); GtkIconSize icon_size = GTK_ICON_SIZE_BUTTON; if ((stock_id && gtk_icon_factory_lookup_default (stock_id)) || !icon) image = NULL; else { image = gtk_tool_button_get_icon_widget (button); icon_size = gtk_tool_item_get_icon_size (GTK_TOOL_ITEM (button)); if (!image) image = gtk_image_new (); } gtk_tool_button_set_icon_widget (button, image); gtk_image_set_from_gicon (GTK_IMAGE (image), icon, icon_size); } else if (strcmp (property_name, "icon-name") == 0) gtk_tool_button_set_icon_name (button, gtk_action_get_icon_name (action)); }
static void gtk_tool_button_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec) { GtkToolButton *button = GTK_TOOL_BUTTON (object); switch (prop_id) { case PROP_LABEL: gtk_tool_button_set_label (button, g_value_get_string (value)); break; case PROP_USE_UNDERLINE: gtk_tool_button_set_use_underline (button, g_value_get_boolean (value)); break; case PROP_LABEL_WIDGET: gtk_tool_button_set_label_widget (button, g_value_get_object (value)); break; case PROP_STOCK_ID: G_GNUC_BEGIN_IGNORE_DEPRECATIONS; gtk_tool_button_set_stock_id (button, g_value_get_string (value)); G_GNUC_END_IGNORE_DEPRECATIONS; break; case PROP_ICON_NAME: gtk_tool_button_set_icon_name (button, g_value_get_string (value)); break; case PROP_ICON_WIDGET: gtk_tool_button_set_icon_widget (button, g_value_get_object (value)); break; case PROP_ACTION_NAME: g_object_set_property (G_OBJECT (button->priv->button), "action-name", value); break; case PROP_ACTION_TARGET: g_object_set_property (G_OBJECT (button->priv->button), "action-target", value); break; default: G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); break; } }
static void ui_playback_stop (void) { if (update_song_timeout_source) { g_source_remove(update_song_timeout_source); update_song_timeout_source = 0; } if (delayed_title_change_source) g_source_remove (delayed_title_change_source); /* Don't update the window title immediately; we may be about to start * another song. */ delayed_title_change_source = g_idle_add ((GSourceFunc) title_change_cb, NULL); gtk_tool_button_set_stock_id ((GtkToolButton *) button_play, GTK_STOCK_MEDIA_PLAY); gtk_widget_set_sensitive ((GtkWidget *) button_stop, FALSE); gtk_widget_hide (slider); gtk_widget_hide (label_time); }
static GtkWidget *create_toolbar(void) { GtkWidget *toolbar, *item; GtkToolItem *tool_item; toolbar = gtk_toolbar_new(); gtk_toolbar_set_icon_size(GTK_TOOLBAR(toolbar), GTK_ICON_SIZE_MENU); gtk_toolbar_set_style(GTK_TOOLBAR(toolbar), GTK_TOOLBAR_ICONS); tool_item = gtk_menu_tool_button_new(NULL, NULL); gtk_tool_button_set_stock_id(GTK_TOOL_BUTTON(tool_item), GTK_STOCK_JUMP_TO); item = (GtkWidget*)tool_item; gtk_widget_set_tooltip_text(item, _("Show the current document")); gtk_container_add(GTK_CONTAINER(toolbar), item); g_signal_connect(item, "clicked", G_CALLBACK(on_refresh), NULL); item = gtk_menu_new(); gtk_menu_tool_button_set_menu(GTK_MENU_TOOL_BUTTON(tool_item), item); #if GTK_CHECK_VERSION (3, 0, 0) /* hack for https://bugzilla.gnome.org/show_bug.cgi?id=769287 */ if (! gtk_check_version(3, 15, 9) && gtk_check_version(3, 21, 4+1)) g_signal_connect(tool_item, "show-menu", G_CALLBACK(show_menu_gtk316_fix), NULL); #endif g_signal_connect(tool_item, "show-menu", G_CALLBACK(on_doc_show_menu), item); tool_item = gtk_tool_item_new(); gtk_tool_item_set_expand(tool_item, TRUE); gtk_container_add(GTK_CONTAINER(toolbar), GTK_WIDGET(tool_item)); item = gtk_label_new(NULL); gtk_label_set_ellipsize(GTK_LABEL(item), PANGO_ELLIPSIZE_START); gtk_container_add(GTK_CONTAINER(tool_item), item); edit_window.name_label = item; item = ui_tool_button_new(GTK_STOCK_CLOSE, _("_Unsplit"), NULL); gtk_container_add(GTK_CONTAINER(toolbar), item); g_signal_connect(item, "clicked", G_CALLBACK(on_unsplit), NULL); return toolbar; }
static void gb_gnome_app_add_toolbar_button (GtkToolbar *toolbar, const gchar *stock_id, const gchar *tooltip) { GtkWidget *button; GladeWidgetData *wdata; button = gb_widget_new ("GtkToolButton", NULL); gtk_tool_button_set_stock_id (GTK_TOOL_BUTTON (button), stock_id); gtk_tool_button_set_icon_widget (GTK_TOOL_BUTTON (button), NULL); gtk_tool_button_set_label (GTK_TOOL_BUTTON (button), NULL); gtk_object_set_data_full (GTK_OBJECT (button), GladeToolButtonStockIDKey, g_strdup (stock_id), g_free); wdata = gtk_object_get_data (GTK_OBJECT (button), GB_WIDGET_DATA_KEY); wdata->tooltip = g_strdup (tooltip); gtk_toolbar_insert (GTK_TOOLBAR (toolbar), GTK_TOOL_ITEM (button), -1); }
/* Create a GtkToolButton with stock icon, label and tooltip. * @param label can be NULL to use stock label text. @a label can contain underscores, * which will be removed. * @param tooltip can be NULL to use label text (useful for GTK_TOOLBAR_ICONS). */ static GtkWidget *ui_tool_button_new(const gchar *stock_id, const gchar *label, const gchar *tooltip) { GtkToolItem *item; gchar *dupl = NULL; if (stock_id && !label) { label = ui_lookup_stock_label(stock_id); } dupl = utils_str_remove_chars(g_strdup(label), "_"); label = dupl; item = gtk_tool_button_new(NULL, label); if (stock_id) gtk_tool_button_set_stock_id(GTK_TOOL_BUTTON(item), stock_id); if (!tooltip) tooltip = label; if (tooltip) gtk_widget_set_tooltip_text(GTK_WIDGET(item), tooltip); g_free(dupl); return GTK_WIDGET(item); }
static void gw_settingswindow_init_styles (GwSettingsWindow *window) { //Declarations GtkToolbar *toolbar; GtkStyleContext *context; GtkWidget *widget; //Vocabulary list pane widget = GTK_WIDGET (gw_window_get_object (GW_WINDOW (window), "dictionary_scrolledwindow")); context = gtk_widget_get_style_context (widget); gtk_style_context_set_junction_sides (context, GTK_JUNCTION_BOTTOM); gtk_widget_reset_style (widget); toolbar = GTK_TOOLBAR (gw_window_get_object (GW_WINDOW (window), "dictionary_toolbar")); widget = GTK_WIDGET (toolbar); context = gtk_widget_get_style_context (widget); gtk_style_context_add_class (context, "inline-toolbar"); gtk_style_context_set_junction_sides (context, GTK_JUNCTION_TOP); gtk_widget_reset_style (widget); { GtkIconTheme *theme; GtkToolItem *item; theme = gtk_icon_theme_get_default (); item = gtk_tool_button_new_from_stock (GTK_STOCK_ADD); if (gtk_icon_theme_has_icon (theme, "list-add-symbolic")) { gtk_tool_button_set_icon_name (GTK_TOOL_BUTTON (item), "list-add-symbolic"); gtk_tool_button_set_stock_id (GTK_TOOL_BUTTON (item), NULL); } gtk_toolbar_insert (toolbar, item, -1); gtk_actionable_set_detailed_action_name (GTK_ACTIONABLE (item), "win.add-dictionary"); gtk_widget_show (GTK_WIDGET (item)); item = gtk_tool_button_new_from_stock (GTK_STOCK_REMOVE); if (gtk_icon_theme_has_icon (theme, "list-remove-symbolic")) { gtk_tool_button_set_icon_name (GTK_TOOL_BUTTON (item), "list-remove-symbolic"); gtk_tool_button_set_stock_id (GTK_TOOL_BUTTON (item), NULL); } gtk_toolbar_insert (toolbar, item, -1); gtk_actionable_set_detailed_action_name (GTK_ACTIONABLE (item), "win.remove-dictionary"); gtk_widget_show (GTK_WIDGET (item)); } //Vocabulary listitem pane widget = GTK_WIDGET (gw_window_get_object (GW_WINDOW (window), "plugin_scrolledwindow")); context = gtk_widget_get_style_context (widget); gtk_style_context_set_junction_sides (context, GTK_JUNCTION_BOTTOM); gtk_widget_reset_style (widget); toolbar = GTK_TOOLBAR (gw_window_get_object (GW_WINDOW (window), "plugin_toolbar")); widget = GTK_WIDGET (toolbar); context = gtk_widget_get_style_context (widget); gtk_style_context_add_class (context, "inline-toolbar"); gtk_style_context_set_junction_sides (context, GTK_JUNCTION_TOP); gtk_widget_reset_style (widget); { GtkIconTheme *theme; GtkToolItem *item; theme = gtk_icon_theme_get_default (); item = gtk_tool_button_new_from_stock (GTK_STOCK_ADD); if (gtk_icon_theme_has_icon (theme, "list-add-symbolic")) { gtk_tool_button_set_icon_name (GTK_TOOL_BUTTON (item), "list-add-symbolic"); gtk_tool_button_set_stock_id (GTK_TOOL_BUTTON (item), NULL); } gtk_toolbar_insert (toolbar, item, -1); gtk_actionable_set_detailed_action_name (GTK_ACTIONABLE (item), "win.add-plugin"); gtk_widget_show (GTK_WIDGET (item)); item = gtk_tool_button_new_from_stock (GTK_STOCK_REMOVE); if (gtk_icon_theme_has_icon (theme, "list-remove-symbolic")) { gtk_tool_button_set_icon_name (GTK_TOOL_BUTTON (item), "list-remove-symbolic"); gtk_tool_button_set_stock_id (GTK_TOOL_BUTTON (item), NULL); } gtk_toolbar_insert (toolbar, item, -1); gtk_actionable_set_detailed_action_name (GTK_ACTIONABLE (item), "win.remove-plugin"); gtk_widget_show (GTK_WIDGET (item)); } }
static void pause_cb (void) { gtk_tool_button_set_stock_id ((GtkToolButton *) button_play, aud_drct_get_paused () ? GTK_STOCK_MEDIA_PLAY : GTK_STOCK_MEDIA_PAUSE); }
static void webViewIsLoadingChanged(GObject *object, GParamSpec *paramSpec, BrowserWindow *window) { gboolean isLoading = webkit_web_view_is_loading(window->webView); gtk_tool_button_set_stock_id(GTK_TOOL_BUTTON(window->reloadOrStopButton), isLoading ? GTK_STOCK_STOP : GTK_STOCK_REFRESH); // gtk_entry_set_icon_from_stock(GTK_ENTRY(window->uriEntry), GTK_ENTRY_ICON_SECONDARY, isLoading ? GTK_STOCK_STOP : GTK_STOCK_REFRESH); }