static void create_side_panel(MainWindow *main_window){ /* Close button for the side bar */ GtkWidget *close_box = get_widget_from_builder(main_window, "sidepanelheader"); main_window->pclose_sidebar_button = gedit_close_button_new(); gtk_widget_set_tooltip_text(main_window->pclose_sidebar_button, _("Close side panel")); g_signal_connect(G_OBJECT(main_window->pclose_sidebar_button), "clicked", G_CALLBACK (side_panel_togle), main_window); gtk_widget_show(main_window->pclose_sidebar_button); gtk_box_pack_end(GTK_BOX(close_box), main_window->pclose_sidebar_button, FALSE, FALSE, 0); main_window->notebook_manager = get_widget_from_builder(main_window, "notebook_manager"); /* Classbrowser stuff creation */ GtkWidget *classbox = get_widget_from_builder(main_window, "classbox"); main_window->pclassbrowser = gphpedit_classbrowser_new (main_window); gtk_widget_show(main_window->pclassbrowser); gtk_box_pack_start(GTK_BOX(classbox), main_window->pclassbrowser, TRUE, TRUE, 0); /* File browser stuff creation */ if (get_preferences_manager_show_filebrowser(main_window->prefmg)) { main_window->pfolder= gphpedit_filebrowser_new(main_window); gtk_widget_show(main_window->pfolder); GtkWidget *label= gtk_image_new_from_icon_name ("file-manager", GTK_ICON_SIZE_SMALL_TOOLBAR); gtk_widget_show(label); gtk_notebook_insert_page (GTK_NOTEBOOK(main_window->notebook_manager), main_window->pfolder, label, 1); } }
LifereaHtmlView * browser_tabs_add_new (const gchar *url, const gchar *title, gboolean activate) { GtkWidget *close_button, *labelBox; tabInfo *tab; int i; tab = g_new0 (tabInfo, 1); tab->htmlview = liferea_htmlview_new (TRUE /* internal browsing */); tab->widget = liferea_htmlview_get_widget (tab->htmlview); tabs->priv->list = g_slist_append (tabs->priv->list, tab); g_object_set_data (G_OBJECT (tab->widget), "tabInfo", tab); g_signal_connect (tab->htmlview, "title-changed", G_CALLBACK (on_htmlview_title_changed), tab); g_signal_connect (tab->htmlview, "statusbar-changed", G_CALLBACK (on_htmlview_status_message), NULL); /* create tab widgets */ tab->label = gtk_label_new (create_label_text (title)); gtk_label_set_ellipsize (GTK_LABEL (tab->label), PANGO_ELLIPSIZE_END); gtk_label_set_width_chars (GTK_LABEL (tab->label), 17); labelBox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 4); gtk_box_pack_start (GTK_BOX (labelBox), tab->label, FALSE, FALSE, 0); close_button = gedit_close_button_new (); gtk_box_pack_end (GTK_BOX (labelBox), close_button, FALSE, FALSE, 0); g_signal_connect ((gpointer)close_button, "clicked", G_CALLBACK (on_htmlview_close_tab), (gpointer)tab); gtk_widget_show_all (labelBox); i = gtk_notebook_append_page (tabs->priv->notebook, tab->widget, labelBox); g_signal_connect (gtk_notebook_get_nth_page (tabs->priv->notebook, i), "key-press-event", G_CALLBACK (on_tab_key_press), (gpointer)tab); gtk_notebook_set_show_tabs (tabs->priv->notebook, TRUE); gtk_notebook_set_tab_reorderable (tabs->priv->notebook, tab->widget, TRUE); if (activate && (i != -1)) gtk_notebook_set_current_page (tabs->priv->notebook, i); if (url) liferea_htmlview_launch_URL_internal (tab->htmlview, (gchar *)url); return tab->htmlview; }
/* internal */ GtkWidget *get_close_tab_widget(Document *document) { GtkWidget *hbox; GtkWidget *close_button; hbox = gtk_hbox_new(FALSE, 0); close_button = gedit_close_button_new (); gtk_widget_set_tooltip_text(close_button, _("Close Tab")); g_signal_connect(G_OBJECT(close_button), "clicked", G_CALLBACK(on_tab_close_activate), document); /* load file icon */ GtkWidget *label; GIcon *doc_icon; g_object_get(document, "editor_label", &label, "icon", &doc_icon, NULL); GtkWidget *icon= gtk_image_new_from_gicon (doc_icon, GTK_ICON_SIZE_SMALL_TOOLBAR); gtk_widget_show (icon); gtk_box_pack_start(GTK_BOX(hbox), icon, FALSE, FALSE, 0); gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 5); gtk_box_pack_end(GTK_BOX(hbox), close_button, FALSE, FALSE, 0); gtk_widget_show(close_button); gtk_widget_show(hbox); return hbox; }