static void photos_organize_collection_view_init (PhotosOrganizeCollectionView *self) { GApplication *app; PhotosSearchContextState *state; app = g_application_get_default (); state = photos_search_context_get_state (PHOTOS_SEARCH_CONTEXT (app)); self->cancellable = g_cancellable_new (); self->model = photos_organize_collection_model_new (); gtk_tree_view_set_model (GTK_TREE_VIEW (self), GTK_TREE_MODEL (self->model)); self->view_col = gtk_tree_view_column_new (); gtk_tree_view_append_column (GTK_TREE_VIEW (self), self->view_col); self->renderer_check = gtk_cell_renderer_toggle_new (); gtk_tree_view_column_pack_start (self->view_col, self->renderer_check, FALSE); gtk_tree_view_column_set_cell_data_func (self->view_col, self->renderer_check, photos_organize_collection_view_check_cell, self, NULL); g_signal_connect_swapped (self->renderer_check, "toggled", G_CALLBACK (photos_organize_collection_view_check_toggled), self); self->renderer_text = gtk_cell_renderer_text_new (); gtk_tree_view_column_pack_start (self->view_col, self->renderer_text, TRUE); gtk_tree_view_column_add_attribute (self->view_col, self->renderer_text, "text", PHOTOS_ORGANIZE_MODEL_NAME); g_signal_connect_swapped (self->renderer_text, "edited", G_CALLBACK (photos_organize_collection_view_text_edited), self); g_signal_connect_swapped (self->renderer_text, "editing-canceled", G_CALLBACK (photos_organize_collection_view_text_editing_canceled), self); self->renderer_detail = gd_styled_text_renderer_new (); gtk_cell_renderer_set_padding (self->renderer_detail, 16, 0); gd_styled_text_renderer_add_class (GD_STYLED_TEXT_RENDERER (self->renderer_detail), "dim-label"); gtk_tree_view_column_pack_start (self->view_col, self->renderer_detail, FALSE); gtk_tree_view_column_set_cell_data_func (self->view_col, self->renderer_detail, photos_organize_collection_view_detail_cell, self, NULL); self->item_mngr = g_object_ref (state->item_mngr); self->src_mngr = g_object_ref (state->src_mngr); self->sel_cntrlr = photos_selection_controller_dup_singleton (); gtk_widget_show (GTK_WIDGET (self)); }
static void freetuxtv_cellrenderer_channelslist_init (FreetuxTVCellRendererChannelsList *self) { #if GTK_API_VERSION == 3 gtk_cell_renderer_set_padding (GTK_CELL_RENDERER(self), 2, 2); #else GTK_CELL_RENDERER(self)->mode = GTK_CELL_RENDERER_MODE_INERT; GTK_CELL_RENDERER(self)->xpad = 2; GTK_CELL_RENDERER(self)->ypad = 2; #endif }
static void custom_cell_renderer_flexi_init (CustomCellRendererFlexi *cellrendererflexi) { /* default: GTK_CELL_RENDERER(cellrendererflexi)->mode = GTK_CELL_RENDERER_MODE_INERT; */ gtk_cell_renderer_set_padding(GTK_CELL_RENDERER(cellrendererflexi), 2, 2); cellrendererflexi->raw_value = a_strnew(NULL); cellrendererflexi->alt_text = a_strnew(NULL); cellrendererflexi->mime_type = a_strnew(NULL); cellrendererflexi->rendered_type = RENDER_NONE; cellrendererflexi->rendered_value = NULL; cellrendererflexi->default_width = -1; cellrendererflexi->default_line_height = -1; }
static GtkTreeViewColumn *new_column(int type, int width, const char *title, ...){ GtkTreeViewColumn *col; GtkCellRenderer *render=NULL; col=gtk_tree_view_column_new(); switch(type){ case 0: render=gtk_cell_renderer_text_new(); #if GTK_MAJOR_VERSION>=3 || GTK_MINOR_VERSION >= 18 gtk_cell_renderer_set_padding(render, 1, 1); gtk_cell_renderer_set_alignment(render, 1, 0.5); #endif break; case 1: render=gtk_cell_renderer_progress_new(); break; case 2: render=gtk_cell_renderer_pixbuf_new(); break; default: error("Invalid\n"); } gtk_tree_view_column_set_title(col, title); gtk_tree_view_column_set_spacing(col, 2); gtk_tree_view_column_set_alignment(col, 1); gtk_tree_view_column_set_resizable(col, TRUE); //gtk_tree_view_column_set_clickable(col, TRUE); //gtk_tree_view_column_set_expand(col,FALSE); if(width>0){//Adjustable columns //Do not set min_width if set resizable. //gtk_tree_view_column_set_min_width(col, width); gtk_tree_view_column_set_expand(col,TRUE); //resizable is not good if expand gtk_tree_view_column_set_resizable(col, FALSE); if(type==0){ g_object_set(G_OBJECT(render),"ellipsize",PANGO_ELLIPSIZE_START,NULL); } }else if(width<0){/*max width*/ gtk_tree_view_column_set_min_width(col,-width/10); gtk_tree_view_column_set_max_width(col,-width); } gtk_tree_view_column_pack_start(col,render,TRUE); va_list ap; va_start(ap, title); const char *att=NULL; while((att=va_arg(ap, const char *))){ gtk_tree_view_column_add_attribute(col, render, att, va_arg(ap,int)); } va_end(ap); return col; }
static void gossip_cell_renderer_expander_init (GossipCellRendererExpander *expander) { GossipCellRendererExpanderPriv *priv; priv = GET_PRIV (expander); priv->style_flags = 0; priv->expander_size = 12; priv->activatable = TRUE; gtk_cell_renderer_set_padding (GTK_CELL_RENDERER (expander), 2, 2); g_object_set (expander, "mode", GTK_CELL_RENDERER_MODE_ACTIVATABLE, NULL); }
static void gtk_cell_renderer_toggle_init (GtkCellRendererToggle *celltoggle) { GtkCellRendererTogglePrivate *priv; celltoggle->priv = gtk_cell_renderer_toggle_get_instance_private (celltoggle); priv = celltoggle->priv; priv->activatable = TRUE; priv->active = FALSE; priv->radio = FALSE; g_object_set (celltoggle, "mode", GTK_CELL_RENDERER_MODE_ACTIVATABLE, NULL); gtk_cell_renderer_set_padding (GTK_CELL_RENDERER (celltoggle), 2, 2); priv->inconsistent = FALSE; }
void gnc_reconcile_view_add_padding (GNCReconcileView *view, gint column, gint xpadding) { GNCQueryView *qview = GNC_QUERY_VIEW (view); GtkTreeViewColumn *col; GList *renderers; GtkCellRenderer *cr0; gint xpad, ypad; //allow for pointer model column at column 0 col = gtk_tree_view_get_column (GTK_TREE_VIEW (qview), (column - 1)); renderers = gtk_cell_layout_get_cells (GTK_CELL_LAYOUT (col)); cr0 = g_list_nth_data (renderers, 0); g_list_free (renderers); gtk_cell_renderer_get_padding (cr0, &xpad, &ypad); gtk_cell_renderer_set_padding (cr0, xpadding, ypad); }
static void gtk_cell_renderer_toggle_init (GtkCellRendererToggle *celltoggle) { GtkCellRendererTogglePrivate *priv; celltoggle->priv = G_TYPE_INSTANCE_GET_PRIVATE (celltoggle, GTK_TYPE_CELL_RENDERER_TOGGLE, GtkCellRendererTogglePrivate); priv = celltoggle->priv; priv->activatable = TRUE; priv->active = FALSE; priv->radio = FALSE; g_object_set (celltoggle, "mode", GTK_CELL_RENDERER_MODE_ACTIVATABLE, NULL); gtk_cell_renderer_set_padding (GTK_CELL_RENDERER (celltoggle), 2, 2); priv->indicator_size = TOGGLE_WIDTH; priv->inconsistent = FALSE; }
static void gw_settingswindow_init_dictionary_treeview (GwSettingsWindow *window) { //Declarations GwSettingsWindowPrivate *priv; GwApplication *application; GwDictionaryList *dictionarylist; GtkListStore *liststore; GtkTreeModel *treemodel; GtkTreeView *view; GtkCellRenderer *renderer; GtkTreeViewColumn *column; GtkTreeSelection *selection; priv = window->priv; application = gw_window_get_application (GW_WINDOW (window)); dictionarylist = gw_application_get_installed_dictionarylist (application); liststore = gw_dictionarylist_get_liststore (dictionarylist); treemodel = GTK_TREE_MODEL (liststore); view = priv->manage_dictionaries_treeview; selection = gtk_tree_view_get_selection (view); gtk_tree_view_set_model (view, treemodel); //Create the columns and renderer for each column renderer = gtk_cell_renderer_pixbuf_new(); gtk_cell_renderer_set_padding (renderer, 6, 4); column = gtk_tree_view_column_new (); gtk_tree_view_column_set_title (column, " "); gtk_tree_view_column_pack_start (column, renderer, TRUE); gtk_tree_view_column_set_attributes (column, renderer, "icon-name", GW_DICTIONARYLIST_COLUMN_IMAGE, NULL); gtk_tree_view_append_column (view, column); renderer = gtk_cell_renderer_text_new(); gtk_cell_renderer_set_padding (renderer, 6, 4); column = gtk_tree_view_column_new_with_attributes ("#", renderer, "text", GW_DICTIONARYLIST_COLUMN_POSITION, NULL); gtk_tree_view_append_column (view, column); renderer = gtk_cell_renderer_text_new(); gtk_cell_renderer_set_padding (renderer, 6, 4); column = gtk_tree_view_column_new_with_attributes (gettext("Name"), renderer, "text", GW_DICTIONARYLIST_COLUMN_LONG_NAME, NULL); gtk_tree_view_column_set_min_width (column, 100); gtk_tree_view_append_column (view, column); renderer = gtk_cell_renderer_text_new(); gtk_cell_renderer_set_padding (renderer, 6, 4); column = gtk_tree_view_column_new_with_attributes (gettext("Engine"), renderer, "text", GW_DICTIONARYLIST_COLUMN_ENGINE, NULL); gtk_tree_view_append_column (view, column); renderer = gtk_cell_renderer_text_new(); gtk_cell_renderer_set_padding (renderer, 6, 4); column = gtk_tree_view_column_new_with_attributes (gettext("Shortcut"), renderer, "text", GW_DICTIONARYLIST_COLUMN_SHORTCUT, NULL); gtk_tree_view_append_column (view, column); gtk_tree_selection_set_mode (selection, GTK_SELECTION_BROWSE); gtk_drag_source_set ( GTK_WIDGET (priv->manage_dictionaries_treeview), GDK_BUTTON1_MASK, dictionary_row_source_targets, n_list_row_source_targets, GDK_ACTION_MOVE ); gtk_drag_dest_set ( GTK_WIDGET (priv->manage_dictionaries_treeview), GTK_DEST_DEFAULT_ALL, dictionary_row_dest_targets, n_list_row_dest_targets, GDK_ACTION_MOVE ); }
static void quick_opener() { GtkWidget *entry, *label, *hbox; GtkTreeViewColumn *path_column, *name_column; GtkCellRenderer *renderLeft, *renderRight; dialog = gtk_dialog_new_with_buttons(_("Quick Open:"), GTK_WINDOW(geany->main_widgets->window), GTK_DIALOG_DESTROY_WITH_PARENT,NULL); gtk_window_set_default_size(GTK_WINDOW(dialog), 500, 250); gtk_dialog_add_button(GTK_DIALOG(dialog),_("_Open"), GTK_RESPONSE_APPLY); gtk_dialog_add_button(GTK_DIALOG(dialog),_("_Cancel"), GTK_RESPONSE_CANCEL); hbox=gtk_hbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(GTK_DIALOG(dialog)->vbox),hbox, FALSE, FALSE, 0); label=gtk_label_new(_("File:")); gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2); entry = gtk_entry_new(); g_signal_connect(entry, "key-press-event", G_CALLBACK(onkeypress), NULL); g_signal_connect(entry, "key-release-event", G_CALLBACK(onkeyrelease), NULL); gtk_box_pack_start(GTK_BOX(hbox), entry, TRUE, TRUE, 2); //Table: list = gtk_tree_store_new(2, G_TYPE_STRING, G_TYPE_STRING); tree = gtk_tree_view_new_with_model(GTK_TREE_MODEL(list)); GtkTreeSelection *selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(tree)); gtk_tree_selection_set_mode(selection, GTK_SELECTION_MULTIPLE); path_column = gtk_tree_view_column_new(); gtk_tree_view_append_column(GTK_TREE_VIEW(tree), path_column); name_column = gtk_tree_view_column_new(); gtk_tree_view_append_column(GTK_TREE_VIEW(tree), name_column); renderRight = gtk_cell_renderer_text_new(); gtk_cell_renderer_set_alignment(renderRight, 1.0, 0.0); gtk_cell_renderer_set_padding(renderRight, 0, 1); g_object_set(renderRight, "foreground", "#777", "foreground-set", TRUE, NULL); renderLeft = gtk_cell_renderer_text_new(); gtk_cell_renderer_set_padding(renderLeft, 0, 1); gtk_tree_view_column_pack_start(path_column, renderRight, TRUE); gtk_tree_view_column_add_attribute(path_column, renderRight, "text", 0); gtk_tree_view_column_pack_start(name_column, renderLeft, TRUE); gtk_tree_view_column_add_attribute(name_column, renderLeft, "text", 1); g_object_unref(list); gtk_tree_view_set_headers_visible(GTK_TREE_VIEW(tree), FALSE); //Scrollable: scrollable = gtk_scrolled_window_new(NULL, NULL); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrollable), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); gtk_container_add(GTK_CONTAINER(scrollable), tree); g_signal_connect(tree, "key-press-event", G_CALLBACK(tree_keypress), entry); gtk_box_pack_start(GTK_BOX(GTK_DIALOG(dialog)->vbox), scrollable, TRUE, TRUE, 10); gtk_widget_show_all(dialog); adjustment = gtk_scrolled_window_get_hadjustment(GTK_SCROLLED_WINDOW(scrollable)); first = gtk_tree_path_new_from_string("0"); second = gtk_tree_path_new_from_string("1"); gint response = gtk_dialog_run(GTK_DIALOG(dialog)); if(response == GTK_RESPONSE_APPLY) { submit(); } gtk_widget_destroy(dialog); }
EaseSlideButtonPanel* ease_slide_button_panel_construct (GType object_type, EaseDocument* d, EaseEditorWindow* win) { #line 238 "ease-slide-button-panel.c" EaseSlideButtonPanel * self; EaseDocument* _tmp0_; EaseEditorWindow* _tmp1_; GtkTreeView* _tmp2_; GtkCellRendererPixbuf* _tmp3_; GtkViewport* viewport; EaseSlide* s; #line 63 "ease-slide-button-panel.vala" g_return_val_if_fail (d != NULL, NULL); #line 63 "ease-slide-button-panel.vala" g_return_val_if_fail (win != NULL, NULL); #line 250 "ease-slide-button-panel.c" self = g_object_newv (object_type, 0, NULL); #line 65 "ease-slide-button-panel.vala" self->priv->document = (_tmp0_ = _g_object_ref0 (d), _g_object_unref0 (self->priv->document), _tmp0_); #line 66 "ease-slide-button-panel.vala" self->priv->owner = (_tmp1_ = _g_object_ref0 (win), _g_object_unref0 (self->priv->owner), _tmp1_); #line 67 "ease-slide-button-panel.vala" g_object_set ((GtkWidget*) self, "width-request", EASE_SLIDE_BUTTON_PANEL_WIDTH_REQUEST, NULL); #line 70 "ease-slide-button-panel.vala" g_object_set ((GtkScrolledWindow*) self, "vscrollbar-policy", GTK_POLICY_AUTOMATIC, NULL); #line 71 "ease-slide-button-panel.vala" g_object_set ((GtkScrolledWindow*) self, "hscrollbar-policy", GTK_POLICY_NEVER, NULL); #line 72 "ease-slide-button-panel.vala" gtk_scrolled_window_set_shadow_type ((GtkScrolledWindow*) self, GTK_SHADOW_IN); #line 75 "ease-slide-button-panel.vala" self->priv->slides = (_tmp2_ = g_object_ref_sink ((GtkTreeView*) gtk_tree_view_new ()), _g_object_unref0 (self->priv->slides), _tmp2_); #line 76 "ease-slide-button-panel.vala" gtk_tree_view_set_reorderable (self->priv->slides, TRUE); #line 77 "ease-slide-button-panel.vala" gtk_tree_view_set_headers_visible (self->priv->slides, FALSE); #line 78 "ease-slide-button-panel.vala" self->priv->renderer = (_tmp3_ = g_object_ref_sink ((GtkCellRendererPixbuf*) gtk_cell_renderer_pixbuf_new ()), _g_object_unref0 (self->priv->renderer), _tmp3_); #line 79 "ease-slide-button-panel.vala" gtk_cell_renderer_set_padding ((GtkCellRenderer*) self->priv->renderer, EASE_SLIDE_BUTTON_PANEL_PADDING, EASE_SLIDE_BUTTON_PANEL_PADDING); #line 80 "ease-slide-button-panel.vala" gtk_tree_view_insert_column_with_attributes (self->priv->slides, -1, "Slides", (GtkCellRenderer*) self->priv->renderer, "pixbuf", EASE_DOCUMENT_COL_PIXBUF, NULL); #line 82 "ease-slide-button-panel.vala" gtk_tree_view_set_model (self->priv->slides, (GtkTreeModel*) ease_document_get_slides (self->priv->document)); #line 86 "ease-slide-button-panel.vala" viewport = g_object_ref_sink ((GtkViewport*) gtk_viewport_new (NULL, NULL)); #line 87 "ease-slide-button-panel.vala" gtk_viewport_set_shadow_type (viewport, GTK_SHADOW_NONE); #line 88 "ease-slide-button-panel.vala" gtk_container_add ((GtkContainer*) viewport, (GtkWidget*) self->priv->slides); #line 89 "ease-slide-button-panel.vala" gtk_container_add ((GtkContainer*) self, (GtkWidget*) viewport); #line 286 "ease-slide-button-panel.c" s = NULL; { EaseIterableTreeModelIterator* _itr_it; #line 93 "ease-slide-button-panel.vala" _itr_it = ease_iterable_tree_model_iterator ((EaseIterableTreeModel*) ease_document_get_slides (self->priv->document)); #line 93 "ease-slide-button-panel.vala" while (TRUE) { #line 294 "ease-slide-button-panel.c" GtkTreeIter _tmp4_ = {0}; GtkTreeIter itr; #line 93 "ease-slide-button-panel.vala" if (!ease_iterable_tree_model_iterator_next (_itr_it)) { #line 93 "ease-slide-button-panel.vala" break; #line 301 "ease-slide-button-panel.c" } #line 93 "ease-slide-button-panel.vala" itr = (ease_iterable_tree_model_iterator_get (_itr_it, &_tmp4_), _tmp4_); #line 95 "ease-slide-button-panel.vala" ease_slide_button_panel_slide_redraw (self, &itr); #line 96 "ease-slide-button-panel.vala" gtk_tree_model_get ((GtkTreeModel*) ease_document_get_slides (self->priv->document), &itr, EASE_DOCUMENT_COL_SLIDE, &s, -1); #line 97 "ease-slide-button-panel.vala" g_signal_connect_object (s, "changed", (GCallback) _ease_slide_button_panel_on_slide_changed_ease_slide_changed, self, 0); #line 98 "ease-slide-button-panel.vala" g_signal_connect_object (s, "background-changed", (GCallback) _ease_slide_button_panel_on_slide_changed_ease_slide_background_changed, self, 0); #line 313 "ease-slide-button-panel.c" } _ease_iterable_tree_model_iterator_unref0 (_itr_it); } #line 102 "ease-slide-button-panel.vala" g_signal_connect_object (gtk_tree_view_get_selection (self->priv->slides), "changed", (GCallback) __lambda4__gtk_tree_selection_changed, self, 0); #line 110 "ease-slide-button-panel.vala" g_signal_connect_object (self->priv->document, "slide-added", (GCallback) __lambda47__ease_document_slide_added, self, 0); #line 116 "ease-slide-button-panel.vala" g_signal_connect_object (self->priv->document, "slide-deleted", (GCallback) __lambda48__ease_document_slide_deleted, self, 0); #line 323 "ease-slide-button-panel.c" _g_object_unref0 (s); _g_object_unref0 (viewport); return self; }
static void populate_dialog (PpPPDSelectionDialog *dialog) { GtkTreeViewColumn *column; GtkCellRenderer *renderer; GtkTreeView *manufacturers_treeview; GtkTreeView *models_treeview; GtkWidget *widget; GtkWidget *header; manufacturers_treeview = (GtkTreeView*) gtk_builder_get_object (dialog->builder, "ppd-selection-manufacturers-treeview"); renderer = gtk_cell_renderer_text_new (); gtk_cell_renderer_set_padding (renderer, 10, 0); /* Translators: Name of column showing printer manufacturers */ column = gtk_tree_view_column_new_with_attributes (_("Manufacturer"), renderer, "text", PPD_MANUFACTURERS_DISPLAY_NAMES_COLUMN, NULL); gtk_tree_view_column_set_expand (column, TRUE); header = gtk_label_new (gtk_tree_view_column_get_title (column)); gtk_widget_set_margin_start (header, 10); gtk_tree_view_column_set_widget (column, header); gtk_widget_show (header); gtk_tree_view_append_column (manufacturers_treeview, column); models_treeview = (GtkTreeView*) gtk_builder_get_object (dialog->builder, "ppd-selection-models-treeview"); renderer = gtk_cell_renderer_text_new (); gtk_cell_renderer_set_padding (renderer, 10, 0); /* Translators: Name of column showing printer drivers */ column = gtk_tree_view_column_new_with_attributes (_("Driver"), renderer, "text", PPD_DISPLAY_NAMES_COLUMN, NULL); gtk_tree_view_column_set_expand (column, TRUE); header = gtk_label_new (gtk_tree_view_column_get_title (column)); gtk_widget_set_margin_start (header, 10); gtk_tree_view_column_set_widget (column, header); gtk_widget_show (header); gtk_tree_view_append_column (models_treeview, column); g_signal_connect (gtk_tree_view_get_selection (models_treeview), "changed", G_CALLBACK (model_selection_changed_cb), dialog); g_signal_connect (gtk_tree_view_get_selection (manufacturers_treeview), "changed", G_CALLBACK (manufacturer_selection_changed_cb), dialog); gtk_widget_show_all (dialog->dialog); if (!dialog->list) { widget = (GtkWidget*) gtk_builder_get_object (dialog->builder, "ppd-spinner"); gtk_widget_show (widget); gtk_spinner_start (GTK_SPINNER (widget)); widget = (GtkWidget*) gtk_builder_get_object (dialog->builder, "progress-label"); gtk_widget_show (widget); } else { fill_ppds_list (dialog); } }
void create_disk_view(GsmApplication *app, GtkBuilder *builder) { GtkScrolledWindow *scrolled; GsmTreeView *disk_tree; GtkListStore *model; GtkTreeViewColumn *col; GtkCellRenderer *cell; guint i; init_volume_monitor (app); const gchar * const titles[] = { N_("Device"), N_("Directory"), N_("Type"), N_("Total"), N_("Free"), N_("Available"), N_("Used") }; scrolled = GTK_SCROLLED_WINDOW (gtk_builder_get_object (builder, "disks_scrolled")); model = gtk_list_store_new(DISK_N_COLUMNS, /* n columns */ G_TYPE_STRING, /* DISK_DEVICE */ G_TYPE_STRING, /* DISK_DIR */ G_TYPE_STRING, /* DISK_TYPE */ G_TYPE_UINT64, /* DISK_TOTAL */ G_TYPE_UINT64, /* DISK_FREE */ G_TYPE_UINT64, /* DISK_AVAIL */ G_TYPE_UINT64, /* DISK_USED */ GDK_TYPE_PIXBUF, /* DISK_ICON */ G_TYPE_INT /* DISK_USED_PERCENTAGE */ ); disk_tree = gsm_tree_view_new (g_settings_get_child (app->settings->gobj(), GSM_SETTINGS_CHILD_DISKS), TRUE); gtk_tree_view_set_model (GTK_TREE_VIEW (disk_tree), GTK_TREE_MODEL (model)); g_signal_connect(G_OBJECT(disk_tree), "row-activated", G_CALLBACK(open_dir), NULL); app->disk_list = disk_tree; gtk_container_add(GTK_CONTAINER(scrolled), GTK_WIDGET (disk_tree)); g_object_unref(G_OBJECT(model)); /* icon + device */ col = gtk_tree_view_column_new(); cell = gtk_cell_renderer_pixbuf_new(); gtk_tree_view_column_pack_start(col, cell, FALSE); gtk_tree_view_column_set_attributes(col, cell, "pixbuf", DISK_ICON, NULL); cell = gtk_cell_renderer_text_new(); gtk_tree_view_column_pack_start(col, cell, FALSE); gtk_tree_view_column_set_attributes(col, cell, "text", DISK_DEVICE, NULL); gtk_tree_view_column_set_title(col, _(titles[DISK_DEVICE])); gtk_tree_view_column_set_sort_column_id(col, DISK_DEVICE); gtk_tree_view_column_set_reorderable(col, TRUE); gtk_tree_view_column_set_resizable(col, TRUE); gtk_tree_view_column_set_sizing(col, GTK_TREE_VIEW_COLUMN_FIXED); gsm_tree_view_append_and_bind_column (GSM_TREE_VIEW (disk_tree), col); /* sizes - used */ for (i = DISK_DIR; i <= DISK_AVAIL; i++) { cell = gtk_cell_renderer_text_new(); col = gtk_tree_view_column_new(); gtk_tree_view_column_pack_start(col, cell, TRUE); gtk_tree_view_column_set_title(col, _(titles[i])); gtk_tree_view_column_set_resizable(col, TRUE); gtk_tree_view_column_set_sort_column_id(col, i); gtk_tree_view_column_set_reorderable(col, TRUE); gtk_tree_view_column_set_sizing(col, GTK_TREE_VIEW_COLUMN_FIXED); gsm_tree_view_append_and_bind_column (GSM_TREE_VIEW (disk_tree), col); switch (i) { case DISK_TOTAL: case DISK_FREE: case DISK_AVAIL: g_object_set(cell, "xalign", 1.0f, NULL); gtk_tree_view_column_set_cell_data_func(col, cell, &procman::size_si_cell_data_func, GUINT_TO_POINTER(i), NULL); break; default: gtk_tree_view_column_set_attributes(col, cell, "text", i, NULL); break; } } /* used + percentage */ col = gtk_tree_view_column_new(); cell = gtk_cell_renderer_text_new(); g_object_set(cell, "xalign", 1.0f, NULL); gtk_tree_view_column_set_sizing(col, GTK_TREE_VIEW_COLUMN_FIXED); gtk_tree_view_column_pack_start(col, cell, FALSE); gtk_tree_view_column_set_cell_data_func(col, cell, &procman::size_si_cell_data_func, GUINT_TO_POINTER(DISK_USED), NULL); gtk_tree_view_column_set_title(col, _(titles[DISK_USED])); cell = gtk_cell_renderer_progress_new(); gtk_cell_renderer_set_padding(cell, 4.0f, 4.0f); gtk_tree_view_column_pack_start(col, cell, TRUE); gtk_tree_view_column_set_attributes(col, cell, "value", DISK_USED_PERCENTAGE, NULL); gtk_tree_view_column_set_resizable(col, TRUE); gtk_tree_view_column_set_sort_column_id(col, DISK_USED); gtk_tree_view_column_set_reorderable(col, TRUE); gsm_tree_view_append_and_bind_column (GSM_TREE_VIEW (disk_tree), col); /* numeric sort */ gsm_tree_view_load_state (GSM_TREE_VIEW (disk_tree)); g_signal_connect (G_OBJECT(disk_tree), "destroy", G_CALLBACK(cb_disk_list_destroying), app); g_signal_connect (G_OBJECT(disk_tree), "columns-changed", G_CALLBACK(cb_disk_columns_changed), app); g_signal_connect (G_OBJECT (model), "sort-column-changed", G_CALLBACK (cb_sort_changed), app); app->settings->signal_changed(GSM_SETTING_SHOW_ALL_FS).connect ([app](const Glib::ustring&) { disks_update (app); disks_reset_timeout (app); }); gtk_widget_show (GTK_WIDGET (disk_tree)); }