Woah, Like a commandment. Although I understand the sentiment.

On Jun 24, 2010 11:41am, Jeff Hallock <[email protected]> wrote:


You shall RTFM and try it out yourself.





-----Original Message-----

From: [email protected] [mailto:[email protected]] On Behalf Of John Williams

Sent: Thursday, June 24, 2010 2:08 PM

To: Tadej Borovšak

Cc: [email protected]

Subject: Re: gtkcombobox with self internal code to the options



Shall I beg?



2010/6/21 John Williams [email protected]>:

> Anyone?

>

> 2010/6/16 John Williams [email protected]>:

>> Other question, how can I set the active option? gtk_combo_box_set_active?

>>

>> 2010/6/16 John Williams [email protected]>:

>>> Yes Tadej, you understand perfectly.

>>>

>>> Thank you for the example!

>>>

>>> 2010/6/15 Tadej Borovšak [email protected]>:

>>>> Hello.

>>>>

>>>> If I understand you correctly, you want to store name and ID of your

>>>> field inside combo box and retrieve it when needed. If this is true,

>>>> have a look at this snippet of code that demonstrates how to do this:

>>>>

>>>> -------

>>>> #include

>>>>

>>>> enum

>>>> {

>>>> COL_NAME,

>>>> COL_ID,

>>>> NO_COLS

>>>> };

>>>>

>>>> static void

>>>> cb_changed (GtkComboBox *combo)

>>>> {

>>>> GtkTreeIter iter;

>>>> GtkTreeModel *model;

>>>> gint id;

>>>> gchar *name;

>>>>

>>>> gtk_combo_box_get_active_iter (combo, &iter);

>>>> model = gtk_combo_box_get_model (combo);

>>>> gtk_tree_model_get (model, &iter, COL_NAME, &name, COL_ID, &id, -1);

>>>>

>>>> g_print ("Active selection: %s (id: %d)\n", name, id);

>>>> g_free (name);

>>>> }

>>>>

>>>> int

>>>> main (int argc,

>>>> char **argv)

>>>> {

>>>> GtkWidget *window,

>>>> *combo;

>>>> GtkCellRenderer *cell;

>>>> GtkListStore *store;

>>>> gint i;

>>>>

>>>> gtk_init (&argc, &argv);

>>>>

>>>> window = gtk_window_new (GTK_WINDOW_TOPLEVEL);

>>>> g_signal_connect (window, "destroy", gtk_main_quit, NULL);

>>>>

>>>> store = gtk_list_store_new (NO_COLS, G_TYPE_STRING, G_TYPE_INT);

>>>> for (i = 0; i
>>>> {

>>>> GtkTreeIter iter;

>>>> gchar name[] = "Item ";

>>>>

>>>> name[5] = '0' + i;

>>>> gtk_list_store_append (store, &iter);

>>>> gtk_list_store_set (store, &iter, COL_NAME, name,

>>>> COL_ID, g_random_int (),

>>>> -1);

>>>> }

>>>>

>>>> combo = gtk_combo_box_new_with_model (GTK_TREE_MODEL (store));

>>>> g_signal_connect (combo, "changed", G_CALLBACK (cb_changed), NULL);

>>>> gtk_container_add (GTK_CONTAINER (window), combo);

>>>>

>>>> cell = gtk_cell_renderer_text_new ();

>>>> gtk_cell_layout_pack_start (GTK_CELL_LAYOUT (combo), cell, TRUE);

>>>> gtk_cell_layout_add_attribute (GTK_CELL_LAYOUT (combo), cell,

>>>> "text", COL_NAME);

>>>>

>>>> gtk_widget_show_all (window);

>>>>

>>>> gtk_main();

>>>>

>>>> return 0;

>>>> }

>>>> ----------

>>>>

>>>> Tadej

>>>>

>>>> --

>>>> Tadej Borovšak

>>>> tadeboro.blogspot.com

>>>> [email protected]

>>>> [email protected]

>>>>

>>>

>>

>

_______________________________________________

gtk-list mailing list

[email protected]

http://mail.gnome.org/mailman/listinfo/gtk-list

_______________________________________________

gtk-list mailing list

[email protected]

http://mail.gnome.org/mailman/listinfo/gtk-list

_______________________________________________
gtk-list mailing list
[email protected]
http://mail.gnome.org/mailman/listinfo/gtk-list

Reply via email to