g_free (info->macro);
g_free (info->accel_str);
if (info->small_icon)
- g_object_unref (G_OBJECT (info->small_icon));
+ g_object_unref (info->small_icon);
g_free (info);
}
info->small_icon = src->small_icon;
if (info->small_icon)
- g_object_ref (G_OBJECT (info->small_icon));
+ g_object_ref (info->small_icon);
return info;
}
GSList *ids;
GSList *tmp_list;
- store = gtk_list_store_new (1, STOCK_ITEM_INFO_TYPE);
+ store = gtk_list_store_new (2, STOCK_ITEM_INFO_TYPE, G_TYPE_STRING);
ids = gtk_stock_list_ids ();
ids = g_slist_sort (ids, (GCompareFunc) strcmp);
w, h,
GDK_INTERP_BILINEAR);
- g_object_unref (G_OBJECT (info.small_icon));
+ g_object_unref (info.small_icon);
info.small_icon = scaled;
}
}
info.macro = id_to_macro (info.id);
gtk_list_store_append (store, &iter);
- gtk_list_store_set (store, &iter, 0, &info, -1);
+ gtk_list_store_set (store, &iter, 0, &info, 1, info.id, -1);
g_free (info.macro);
g_free (info.accel_str);
if (info.small_icon)
- g_object_unref (G_OBJECT (info.small_icon));
+ g_object_unref (info.small_icon);
tmp_list = g_slist_next (tmp_list);
}
stock_item_info_free (info);
}
-static void
-macro_set_func_pixbuf (GtkTreeViewColumn *tree_column,
- GtkCellRenderer *cell,
- GtkTreeModel *model,
- GtkTreeIter *iter,
- gpointer data)
-{
- StockItemInfo *info;
-
- gtk_tree_model_get (model, iter,
- 0, &info,
- -1);
-
- g_object_set (GTK_CELL_RENDERER (cell),
- "pixbuf", info->small_icon,
- NULL);
-
- stock_item_info_free (info);
-}
-
static void
id_set_func (GtkTreeViewColumn *tree_column,
GtkCellRenderer *cell,
}
GtkWidget *
-do_stock_browser (void)
+do_stock_browser (GtkWidget *do_widget)
{
if (!window)
{
GtkTreeViewColumn *column;
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
+ gtk_window_set_screen (GTK_WINDOW (window),
+ gtk_widget_get_screen (do_widget));
gtk_window_set_title (GTK_WINDOW (window), "Stock Icons and Items");
gtk_window_set_default_size (GTK_WINDOW (window), -1, 500);
treeview = gtk_tree_view_new_with_model (model);
- g_object_unref (G_OBJECT (model));
+ g_object_unref (model);
gtk_container_add (GTK_CONTAINER (sw), treeview);
gtk_tree_view_column_pack_start (column,
cell_renderer,
FALSE);
- gtk_tree_view_column_set_cell_data_func (column, cell_renderer,
- macro_set_func_pixbuf, NULL, NULL);
+ gtk_tree_view_column_set_attributes (column, cell_renderer,
+ "stock_id", 1, NULL);
cell_renderer = gtk_cell_renderer_text_new ();
gtk_tree_view_column_pack_start (column,
cell_renderer,
column);
cell_renderer = gtk_cell_renderer_text_new ();
-
gtk_tree_view_insert_column_with_data_func (GTK_TREE_VIEW (treeview),
-1,
"Label",
NULL,
NULL);
+ cell_renderer = gtk_cell_renderer_text_new ();
gtk_tree_view_insert_column_with_data_func (GTK_TREE_VIEW (treeview),
-1,
"Accel",
NULL,
NULL);
+ cell_renderer = gtk_cell_renderer_text_new ();
gtk_tree_view_insert_column_with_data_func (GTK_TREE_VIEW (treeview),
-1,
"ID",
selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (treeview));
gtk_tree_selection_set_mode (selection, GTK_SELECTION_SINGLE);
- g_signal_connect (G_OBJECT (selection),
+ g_signal_connect (selection,
"changed",
G_CALLBACK (selection_changed),
NULL);
}
- if (!GTK_WIDGET_VISIBLE (window))
+ if (!gtk_widget_get_visible (window))
{
gtk_widget_show_all (window);
}