void termit_on_set_tab_name() { GtkWidget *dlg = gtk_dialog_new_with_buttons( _("Tab name"), GTK_WINDOW(termit.main_window), GTK_DIALOG_MODAL, GTK_STOCK_OK, GTK_RESPONSE_ACCEPT, GTK_STOCK_CANCEL, GTK_RESPONSE_REJECT, NULL); gtk_dialog_set_default_response(GTK_DIALOG(dlg), GTK_RESPONSE_ACCEPT); gtk_window_set_modal(GTK_WINDOW(dlg), TRUE); gint page = gtk_notebook_get_current_page(GTK_NOTEBOOK(termit.notebook)); TERMIT_GET_TAB_BY_INDEX(pTab, page); GtkWidget *label = gtk_label_new(_("Tab name")); GtkWidget *entry = gtk_entry_new(); gtk_entry_set_text( GTK_ENTRY(entry), gtk_notebook_get_tab_label_text(GTK_NOTEBOOK(termit.notebook), pTab->hbox)); GtkWidget *hbox = gtk_hbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 5); gtk_box_pack_start(GTK_BOX(hbox), entry, TRUE, FALSE, 5); g_signal_connect(G_OBJECT(dlg), "key-press-event", G_CALLBACK(dlg_key_press), dlg); gtk_box_pack_start(GTK_BOX(gtk_dialog_get_content_area(GTK_DIALOG(dlg))), hbox, FALSE, FALSE, 10); gtk_widget_show_all(dlg); if (GTK_RESPONSE_ACCEPT == gtk_dialog_run(GTK_DIALOG(dlg))) { termit_tab_set_title(pTab, gtk_entry_get_text(GTK_ENTRY(entry))); pTab->custom_tab_name = TRUE; } gtk_widget_destroy(dlg); }
static void get_path() { if(first_run == 1) { for(gint i = 0; i < gtk_notebook_get_n_pages(GTK_NOTEBOOK(geany->main_widgets->sidebar_notebook)); i++) { GtkWidget *page; const gchar *page_name; page = gtk_notebook_get_nth_page(GTK_NOTEBOOK(geany->main_widgets->sidebar_notebook), i); page_name = gtk_notebook_get_tab_label_text(GTK_NOTEBOOK(geany->main_widgets->sidebar_notebook), page); if(page_name && strcmp(page_name, "Tree Browser") == 0) { treebrowser_entry = find_entry(GTK_CONTAINER(page)); break; } } } if(treebrowser_entry == NULL) { GeanyProject *project = geany->app->project; if(project) { base_directory = project->base_path; } else { base_directory = geany->prefs->default_open_path; } } else { base_directory = gtk_entry_get_text(GTK_ENTRY(treebrowser_entry)); } }
void C4DevmodeDlg::SwitchPage(GtkWidget* widget) { bool is_visible = gtk_widget_get_visible(GTK_WIDGET(window)); // Remember window position if (window != NULL && is_visible) gtk_window_get_position(GTK_WINDOW(window), &x, &y); if (widget != NULL) { assert(window != NULL); // Show required page int page_num = gtk_notebook_page_num(GTK_NOTEBOOK(notebook), widget); assert(page_num != -1); // Make sure it is contained gtk_notebook_set_current_page(GTK_NOTEBOOK(notebook), page_num); gtk_window_set_title(GTK_WINDOW(window), gtk_notebook_get_tab_label_text(GTK_NOTEBOOK(notebook), widget)); // Show window if not visible if (!is_visible) { gtk_widget_show(window); if (x != -1 || y != -1) gtk_window_move(GTK_WINDOW(window), x, y); } } else { if (window != NULL && is_visible) gtk_widget_hide(window); } }
static GtkWidget * gnc_prefs_find_page (GtkNotebook *notebook, const gchar *name) { int n_pages, i; GtkWidget *child; const gchar *child_name; g_return_val_if_fail (GTK_IS_NOTEBOOK (notebook), NULL); g_return_val_if_fail (name, NULL); ENTER(""); n_pages = gtk_notebook_get_n_pages (notebook); for (i = 0; i < n_pages; i++) { child = gtk_notebook_get_nth_page (notebook, i); g_return_val_if_fail (child, NULL); child_name = gtk_notebook_get_tab_label_text (notebook, child); g_return_val_if_fail (child_name, NULL); if (g_utf8_collate (name, child_name) == 0) { LEAVE("found at index: %d", i); return child; } } LEAVE("not found"); return NULL; }
static gint luaH_notebook_get_title(lua_State *L) { widget_t *w = luaH_checkudata(L, 1, &widget_class); widget_t *child = luaH_checkudata(L, 2, &widget_class); lua_pushstring(L, gtk_notebook_get_tab_label_text( GTK_NOTEBOOK(w->widget), child->widget)); return 1; }
void on_radar_changed(GtkMenuItem *menu, AWeatherGui *self) { city_t *city = g_object_get_data(G_OBJECT(menu), "city"); grits_viewer_set_location(self->viewer, city->pos.lat, city->pos.lon, EARTH_R/35); /* Focus radar tab */ GtkWidget *config = aweather_gui_get_widget(self, "main_tabs"); gint npages = gtk_notebook_get_n_pages(GTK_NOTEBOOK(config)); for (int i = 0; i < npages; i++) { GtkWidget *child = gtk_notebook_get_nth_page(GTK_NOTEBOOK(config), i); const gchar *plugin = gtk_notebook_get_tab_label_text(GTK_NOTEBOOK(config), child); if (g_str_equal(plugin, "radar")) gtk_notebook_set_current_page(GTK_NOTEBOOK(config), i); } }
static void switch_page_cb (GtkNotebook *notebook, GtkNotebookPage *page, guint page_num, gpointer user_data) { GtkWidget *pg; gchar *title; pg = gtk_notebook_get_nth_page (GTK_NOTEBOOK (nbook), page_num); title = g_strdup_printf (_("GPREDICT: %s"), gtk_notebook_get_tab_label_text (GTK_NOTEBOOK (nbook), pg)); gtk_window_set_title (GTK_WINDOW (app), title); g_free (title); }
int clip_GTK_NOTEBOOKGETTABLABELTEXT(ClipMachine * cm) { C_widget *cntb = _fetch_cw_arg(cm); C_widget *cchild = _fetch_cwidget(cm,_clip_spar(cm,2)); gchar *text ; CHECKCWID(cntb,GTK_IS_NOTEBOOK); CHECKARG2(2,MAP_t,NUMERIC_t); CHECKCWID(cchild,GTK_IS_WIDGET); text = (gchar *)gtk_notebook_get_tab_label_text(GTK_NOTEBOOK(cntb->widget), GTK_WIDGET(cchild->widget)); LOCALE_TO_UTF(text); _clip_retc(cm, text); FREE_TEXT(text); return 0; err: return 1; }
void OnButtonAddRule(GtkWidget *pButton, gpointer data){ GtkWidget *pDialog; GtkWidget *pChild; gint iPageNum; const gchar *sTabLabel; /* Recuperation de la page active */ //iPageNum = gtk_notebook_get_current_page(GTK_NOTEBOOK(data)); iPageNum = gtk_notebook_get_current_page(dw->pNotebook); //si on est deja sur la page rule, on ne fait rien if(iPageNum != 1){ gchar *sDialogText; /* Recuperation du widget enfant */ pChild = gtk_notebook_get_nth_page(dw->pNotebook, iPageNum); /* Recuperation du label de l'onglet */ sTabLabel = gtk_notebook_get_tab_label_text(dw->pNotebook, pChild); /* Creation du label de la boite de dialogue */ sDialogText = g_strdup_printf("C'est la page %d\n" "Le label de l'onglet est \"%s\"\n", iPageNum, sTabLabel); pDialog = gtk_message_dialog_new (NULL, GTK_DIALOG_MODAL, GTK_MESSAGE_INFO, GTK_BUTTONS_OK, sDialogText); gtk_dialog_run(GTK_DIALOG(pDialog)); gtk_widget_destroy(pDialog); gtk_notebook_set_current_page (dw->pNotebook, (gint)0); g_free(sDialogText); } }
/* Creates the title of the dialog taking into account the current * page of the notebook. */ static void create_title (HildonWizardDialog *wizard_dialog) { gint pages, current; gchar *str = NULL; HildonWizardDialogPrivate *priv = HILDON_WIZARD_DIALOG_GET_PRIVATE (wizard_dialog); GtkNotebook *notebook; g_assert (priv); notebook = priv->notebook; if (! notebook) return; /* Get page information, we'll need that when creating title */ pages = gtk_notebook_get_n_pages (notebook); current = gtk_notebook_get_current_page (priv->notebook); if (current < 0) current = 0; /* the welcome title on the initial page */ if (current == 0) { str = g_strdup_printf (_("ecdg_ti_wizard_welcome"), priv->wizard_name); } else { const gchar *steps = gtk_notebook_get_tab_label_text (notebook, gtk_notebook_get_nth_page (notebook, current)); if (steps) { str = g_strdup_printf ("%s%s %s", priv->wizard_name, _("ecdg_ti_caption_separator"), steps); } else { str = g_strdup (priv->wizard_name); } } /* Update the dialog to display the generated title */ gtk_window_set_title (GTK_WINDOW (wizard_dialog), str); g_free (str); }
static void update_window_title () { gint pgn,num; GtkWidget *pg; gchar *title; /* get number of pages */ num = gtk_notebook_get_n_pages (GTK_NOTEBOOK (nbook)); if (num == 0) { gtk_window_set_title (GTK_WINDOW (app), _("GPREDICT: (none)")); } else { pgn = gtk_notebook_get_current_page (GTK_NOTEBOOK (nbook)); pg = gtk_notebook_get_nth_page (GTK_NOTEBOOK (nbook), pgn); title = g_strdup_printf (_("GPREDICT: %s"), gtk_notebook_get_tab_label_text (GTK_NOTEBOOK (nbook), pg)); gtk_window_set_title (GTK_WINDOW (app), title); g_free (title); } }
static bool current_tab_is(GtkNotebook *nb, GtkWidget *w, const char *str) { const char *name = gtk_notebook_get_tab_label_text(nb, w); return (strcmp(name, _(str)) == 0); }
void dlg_preferences (GthBrowser *browser) { DialogData *data; GtkWidget *notebook; GList *children; GList *scan; int page_num; GtkWidget *list_box; GtkTreeSelection *selection; if (gth_browser_get_dialog (browser, "preferences") != NULL) { gtk_window_present (GTK_WINDOW (gth_browser_get_dialog (browser, "preferences"))); return; } data = g_new0 (DialogData, 1); data->browser = browser; data->builder = _gtk_builder_new_from_file ("preferences.ui", NULL); data->dialog = GET_WIDGET ("preferences_dialog"); gtk_container_set_border_width (GTK_CONTAINER (gtk_dialog_get_content_area (GTK_DIALOG (data->dialog))), 0); gth_browser_set_dialog (browser, "preferences", data->dialog); gth_hook_invoke ("dlg-preferences-construct", data->dialog, data->browser, data->builder); /* widgets */ list_box = GET_WIDGET ("tabs_listbox"); notebook = GET_WIDGET ("notebook"); children = gtk_container_get_children (GTK_CONTAINER (notebook)); page_num = 0; for (scan = children; scan; scan = scan->next) { GtkWidget *child = scan->data; const char *name; GtkWidget *row; GtkWidget *box; GtkWidget *label; name = gtk_notebook_get_tab_label_text (GTK_NOTEBOOK (notebook), child); if (name == NULL) continue; if (scan != children) _gtk_list_box_add_separator (GTK_LIST_BOX (list_box)); row = gtk_list_box_row_new (); g_object_set_data (G_OBJECT (row), "gth.page_num", GINT_TO_POINTER (page_num)); gtk_widget_show (row); gtk_container_add (GTK_CONTAINER (list_box), row); box = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); gtk_container_set_border_width (GTK_CONTAINER (box), 10); gtk_widget_show (box); gtk_container_add (GTK_CONTAINER (row), box); label = gtk_label_new (name); gtk_label_set_ellipsize (GTK_LABEL(label), PANGO_ELLIPSIZE_END); gtk_widget_show (label); gtk_container_add (GTK_CONTAINER (box), label); page_num += 1; } /* Set the signals handlers. */ g_signal_connect (data->dialog, "destroy", G_CALLBACK (destroy_cb), data); g_signal_connect (list_box, "row-activated", G_CALLBACK (list_box_row_activated_cb), data); /* run dialog. */ gtk_window_set_transient_for (GTK_WINDOW (data->dialog), GTK_WINDOW (browser)); gtk_widget_show (data->dialog); }
/* "delete-event" handler for * windowstatic gboolean can_read_to_text_view; */ static gboolean delete_event (GtkWidget *widget, GdkEvent *event) { int *not_saved_tabs_array = NULL; int not_saved_tabs_array_size = 0; int i; /* Checking which files has been modified */ for (i = 0; i < code_widget_array_size; i++) { if (is_file_modified (i)) { not_saved_tabs_array = g_realloc (not_saved_tabs_array, (not_saved_tabs_array_size + 1)*sizeof (int)); not_saved_tabs_array [not_saved_tabs_array_size] = i; not_saved_tabs_array_size ++; } } if (not_saved_tabs_array_size == 0) { GtkBuilder *dialog_builder = gtk_builder_new (); gtk_builder_add_from_file (dialog_builder, "./ui/closing_dialog.glade", NULL); GObject *dialog = gtk_builder_get_object (dialog_builder, "dialog"); int response = gtk_dialog_run (GTK_DIALOG (dialog)); gtk_widget_destroy (GTK_WIDGET (dialog)); if (response == 0) return TRUE; else return FALSE; } /* Creating confirmation dialog */ GtkWidget *dialog = gtk_dialog_new_with_buttons ("gIDLE", GTK_WINDOW (window), GTK_DIALOG_DESTROY_WITH_PARENT, "Close without saving", 2, "Save", 1, "Cancel", 0, NULL); GtkWidget *not_saved_chk_array [not_saved_tabs_array_size]; GtkWidget *dialog_content_area = gtk_dialog_get_content_area (GTK_DIALOG (dialog)); for (i = 0; i < not_saved_tabs_array_size; i++) { const gchar *label; label = gtk_notebook_get_tab_label_text (GTK_NOTEBOOK (notebook), code_widget_array [i]->vbox); not_saved_chk_array [i] = gtk_check_button_new_with_label (label); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (not_saved_chk_array [i]), TRUE); gtk_box_pack_start (GTK_BOX (dialog_content_area), not_saved_chk_array [i], FALSE, FALSE, 2); } gtk_widget_show_all (dialog); int run = gtk_dialog_run (GTK_DIALOG (dialog)); if (run == 0) { /* If "Cancel" was clicked */ g_free (not_saved_tabs_array); gtk_widget_destroy (dialog); return TRUE; } if (run == 1) { /* If "Save" was clicked */ for (i = 0; i < not_saved_tabs_array_size; i++) { if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (not_saved_chk_array [i]))) { gtk_notebook_set_current_page (GTK_NOTEBOOK (notebook), not_saved_tabs_array [i]); file_save_activate (NULL); } } return FALSE; } if (run == 2) { /* If "Close without saving" was clicked */ g_free (not_saved_tabs_array); gtk_widget_destroy (dialog); return FALSE; } }
static gint tab_cmp (GtkWidget *page_a, GtkWidget *page_b, GtkNotebook *notebook) { return g_utf8_collate (gtk_notebook_get_tab_label_text (notebook, page_a), gtk_notebook_get_tab_label_text (notebook, page_b)); }
/*! \brief shows the tabe visibility chooser window \param widget is the widget clicked to get this to come up \param data is unused \return TRUE on success */ G_MODULE_EXPORT gboolean show_tab_visibility_window(GtkWidget * widget, gpointer data) { GladeXML *main_xml = NULL; GladeXML *xml = NULL; GtkWidget *vbox = NULL; GtkWidget *notebook = NULL; GtkWidget *table = NULL; GtkWidget *child = NULL; GtkWidget *label = NULL; GtkWidget *button = NULL; gboolean *hidden_list = NULL; if (!(GTK_IS_WIDGET(vis_window))) { main_xml = (GladeXML *)DATA_GET(global_data,"main_xml"); if (!main_xml) return FALSE; notebook = glade_xml_get_widget(main_xml,"toplevel_notebook"); hidden_list = (gboolean *)DATA_GET(global_data,"hidden_list"); xml = glade_xml_new(main_xml->filename,"tab_visibility_top_vbox",NULL); vis_window = gtk_window_new(GTK_WINDOW_TOPLEVEL); gtk_window_set_transient_for(GTK_WINDOW(vis_window),GTK_WINDOW(lookup_widget("main_window"))); gtk_window_set_title(GTK_WINDOW(vis_window),_("Tab Visibility")); gtk_window_set_default_size(GTK_WINDOW(vis_window),200,300); g_signal_connect(G_OBJECT(vis_window),"delete_event", G_CALLBACK(gtk_widget_hide),vis_window); vbox = glade_xml_get_widget(xml,"tab_visibility_top_vbox"); if (GTK_IS_WIDGET(vbox)) gtk_container_add(GTK_CONTAINER(vis_window),vbox); else printf(_("ERROR, glade element not found!\n")); gint rows = gtk_notebook_get_n_pages(GTK_NOTEBOOK(notebook)); DATA_SET(global_data,"notebook_rows",GINT_TO_POINTER(rows)); table = glade_xml_get_widget(xml,"tab_visibility_table"); gtk_table_resize(GTK_TABLE(table),rows,2); for (gint i=0;i<rows;i++) { child = gtk_notebook_get_nth_page(GTK_NOTEBOOK(notebook),i); button = gtk_check_button_new(); gtk_toggle_button_set_state(GTK_TOGGLE_BUTTON(button),hidden_list[i]); g_signal_connect(G_OBJECT(button),"toggled", G_CALLBACK(hide_tab), GINT_TO_POINTER(i)); gtk_table_attach_defaults(GTK_TABLE(table),button, 0,1,i+1,i+2); label = gtk_label_new(gtk_notebook_get_tab_label_text(GTK_NOTEBOOK(notebook),child)); gtk_table_attach_defaults(GTK_TABLE(table),label, 1,2,i+1,i+2); } } gtk_widget_show_all(vis_window); return TRUE; }
static VALUE rg_get_tab_label_text(VALUE self, VALUE child) { return CSTR2RVAL(gtk_notebook_get_tab_label_text(_SELF(self), RVAL2WIDGET(child))); }
static void textures_switch_page (GtkNotebook *notebook, GtkWidget *page, guint page_num, const gchar *texture_path) { if (page_num == 0 || g_array_index (textures_timestamps, time_t, page_num) > 0) return; // fix gtk2 page = gtk_notebook_get_nth_page (notebook, page_num); gtk_container_set_border_width (GTK_CONTAINER (page), 0); gtk_widget_set_size_request (page, -1, 480); const gchar *category = gtk_notebook_get_tab_label_text(notebook, page); /* scrolled window */ GtkWidget *scrolled_window = gtk_scrolled_window_new (NULL, NULL); gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolled_window), GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC); gtk_box_pack_start (GTK_BOX (page), scrolled_window, TRUE, TRUE, 0); gtk_widget_show (scrolled_window); /* table */ gint rows = 5; gint cols = 3; GtkWidget *table = gtk_table_new (rows, cols, FALSE); gtk_table_set_col_spacings (GTK_TABLE (table), 6); gtk_table_set_row_spacings (GTK_TABLE (table), 6); gtk_container_set_border_width (GTK_CONTAINER (table), 10); gtk_scrolled_window_add_with_viewport (GTK_SCROLLED_WINDOW (scrolled_window), table); gtk_widget_show (table); gint row = 1; gint col = 1; const gchar *gimp_dir = gimp_directory (); const gchar *texture_dir = g_build_filename (gimp_dir, texture_path, NULL); const gchar *path = g_build_filename (texture_dir, category, NULL); GDir *dir = g_dir_open (path, 0, NULL); if (dir) { const gchar *dir_ent; while (dir_ent = g_dir_read_name (dir)) { if (is_hidden (dir_ent)) continue; gchar *filename = g_build_filename (path, dir_ent, NULL); GdkPixbuf *pixbuf = gdk_pixbuf_new_from_file (filename, NULL); pixbuf = gdk_pixbuf_scale_simple (pixbuf, THUMBNAIL_SIZE, THUMBNAIL_SIZE, GDK_INTERP_BILINEAR); GtkWidget *image = gtk_image_new_from_pixbuf (pixbuf); GtkWidget *event_box = gtk_event_box_new (); gtk_container_add (GTK_CONTAINER (event_box), image); gtk_widget_show (image); gtk_table_attach_defaults (GTK_TABLE (table), event_box, col - 1, col, row - 1, row); gtk_widget_show (event_box); col++; if (col > cols) { row++; col = 1; } g_signal_connect (event_box, "button_press_event", G_CALLBACK (custom_texture_press), filename); } } g_array_index (textures_timestamps, time_t, page_num) = time (NULL); }