From 68701c828c00e6ae826cc6a6df66da78457329ff Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Javier=20Jard=C3=B3n?= Date: Thu, 20 May 2010 00:40:58 +0200 Subject: [PATCH] Move documentation to inline comments: GtkRadioButton --- docs/reference/gtk/tmpl/.gitignore | 1 + docs/reference/gtk/tmpl/gtkradiobutton.sgml | 201 -------------------- gtk/gtkradiobutton.c | 127 ++++++++++++- 3 files changed, 127 insertions(+), 202 deletions(-) delete mode 100644 docs/reference/gtk/tmpl/gtkradiobutton.sgml diff --git a/docs/reference/gtk/tmpl/.gitignore b/docs/reference/gtk/tmpl/.gitignore index 5e0163b3af..83f383bdec 100644 --- a/docs/reference/gtk/tmpl/.gitignore +++ b/docs/reference/gtk/tmpl/.gitignore @@ -8,6 +8,7 @@ gtkorientable.sgml gtkpagesetupunixdialog.sgml gtkprinter.sgml gtkradioaction.sgml +gtkradiobutton.sgml gtkrecentaction.sgml gtkrecentchooser.sgml gtkrecentchooserwidget.sgml diff --git a/docs/reference/gtk/tmpl/gtkradiobutton.sgml b/docs/reference/gtk/tmpl/gtkradiobutton.sgml deleted file mode 100644 index 7899959773..0000000000 --- a/docs/reference/gtk/tmpl/gtkradiobutton.sgml +++ /dev/null @@ -1,201 +0,0 @@ - -GtkRadioButton - - -A choice from multiple check buttons - - - -A single radio button performs the same basic function as a #GtkCheckButton, -as its position in the object hierarchy reflects. It is only when multiple -radio buttons are grouped together that they become a different user -interface component in their own right. - -Every radio button is a member of some group of radio buttons. When one is selected, all other -radio buttons in the same group are deselected. A #GtkRadioButton is one way -of giving the user a choice from many options. - - -Radio button widgets are created with gtk_radio_button_new(), passing NULL -as the argument if this is the first radio button in a group. In subsequent -calls, the group you wish to add this button to should be passed as an -argument. Optionally, gtk_radio_button_new_with_label() can be used if you -want a text label on the radio button. - - -Alternatively, when adding widgets to an existing group of radio buttons, -use gtk_radio_button_new_from_widget() with a #GtkRadioButton that already -has a group assigned to it. The convenience function -gtk_radio_button_new_with_label_from_widget() is also provided. - - -To retrieve the group a #GtkRadioButton is assigned to, use -gtk_radio_button_get_group(). - - -To remove a #GtkRadioButton from one group and make it part of a new one, use gtk_radio_button_set_group(). - - -The group list does not need to be freed, as each #GtkRadioButton will remove -itself and its list item when it is destroyed. - - - -How to create a group of two radio buttons. - - -void create_radio_buttons (void) { - - GtkWidget *window, *radio1, *radio2, *box, *entry; - window = gtk_window_new (GTK_WINDOW_TOPLEVEL); - box = gtk_vbox_new (TRUE, 2); - - /* Create a radio button with a GtkEntry widget */ - radio1 = gtk_radio_button_new (NULL); - entry = gtk_entry_new (); - gtk_container_add (GTK_CONTAINER (radio1), entry); - - - /* Create a radio button with a label */ - radio2 = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (radio1), - "I'm the second radio button."); - - /* Pack them into a box, then show all the widgets */ - gtk_box_pack_start (GTK_BOX (box), radio1, TRUE, TRUE, 2); - gtk_box_pack_start (GTK_BOX (box), radio2, TRUE, TRUE, 2); - gtk_container_add (GTK_CONTAINER (window), box); - gtk_widget_show_all (window); - return; -} - - - - - -When an unselected button in the group is clicked the clicked button -receives the "toggled" signal, as does the previously selected button. -Inside the "toggled" handler, gtk_toggle_button_get_active() can be used -to determine if the button has been selected or deselected. - - - - - - -#GtkOptionMenu -Another way of offering the user a single choice from -many. - - - - - - - - - - - - - -Contains only private data that should be read and manipulated using the -functions below. - - - - - - - - -@radiobutton: the object which received the signal. - - - -Sets a new group for a radio button. - - - - -Creates a new #GtkRadioButton. To be of any practical value, a widget should -then be packed into the radio button. - - -@group: an existing radio button group, or %NULL if you are creating a new group. -@Returns: a new radio button. - - - - -Creates a new #GtkRadioButton, adding it to the same group as @radio_group_member. -As with gtk_radio_button_new(), a widget should be packed into the radio button. - - -@radio_group_member: an existing #GtkRadioButton. -@Returns: a new radio button. - - - - -Creates a new #GtkRadioButton with a text label. - - -@group: an existing radio button group, or %NULL if you are creating a new -group. -@label: the text label to display next to the radio button. -@Returns: a new radio button. - - - - -Creates a new #GtkRadioButton with a text label, adding it to the same group -as @radio_group_member. - - -@radio_group_member: widget to get radio group from or NULL -@label: a text string to display next to the radio button. -@Returns: a new radio button. - -@group: an existing #GtkRadioButton. - - - - - - - -@group: -@label: -@Returns: - - - - - - - -@radio_group_member: -@label: -@Returns: - - - - -Sets a #GtkRadioButton's group. It should be noted that this does not change -the layout of your interface in any way, so if you are changing the group, -it is likely you will need to re-arrange the user interface to reflect these -changes. - - -@radio_button: a #GtkRadioButton. -@group: an existing radio button group, such as one returned from -gtk_radio_button_get_group(). - - - - - -@radio_button: -@Returns: - - diff --git a/gtk/gtkradiobutton.c b/gtk/gtkradiobutton.c index f48d2205f5..24300334c9 100644 --- a/gtk/gtkradiobutton.c +++ b/gtk/gtkradiobutton.c @@ -33,6 +33,78 @@ #include "gtkalias.h" +/** + * SECTION:gtkradiobutton + * @Short_description: A choice from multiple check buttons + * @Title: GtkRadioButton + * @See_also: #GtkComboBox + * + * A single radio button performs the same basic function as a #GtkCheckButton, + * as its position in the object hierarchy reflects. It is only when multiple + * radio buttons are grouped together that they become a different user + * interface component in their own right. + * + * Every radio button is a member of some group of radio buttons. When one is + * selected, all other radio buttons in the same group are deselected. A + * #GtkRadioButton is one way of giving the user a choice from many options. + * + * Radio button widgets are created with gtk_radio_button_new(), passing %NULL + * as the argument if this is the first radio button in a group. In subsequent + * calls, the group you wish to add this button to should be passed as an + * argument. Optionally, gtk_radio_button_new_with_label() can be used if you + * want a text label on the radio button. + * + * Alternatively, when adding widgets to an existing group of radio buttons, + * use gtk_radio_button_new_from_widget() with a #GtkRadioButton that already + * has a group assigned to it. The convenience function + * gtk_radio_button_new_with_label_from_widget() is also provided. + * + * To retrieve the group a #GtkRadioButton is assigned to, use + * gtk_radio_button_get_group(). + * + * To remove a #GtkRadioButton from one group and make it part of a new one, + * use gtk_radio_button_set_group(). + * + * The group list does not need to be freed, as each #GtkRadioButton will remove + * itself and its list item when it is destroyed. + * + * + * How to create a group of two radio buttons. + * + * void create_radio_buttons (void) { + * + * GtkWidget *window, *radio1, *radio2, *box, *entry; + * window = gtk_window_new (GTK_WINDOW_TOPLEVEL); + * box = gtk_vbox_new (TRUE, 2); + * + * /* Create a radio button with a GtkEntry widget */ + * radio1 = gtk_radio_button_new (NULL); + * entry = gtk_entry_new (); + * gtk_container_add (GTK_CONTAINER (radio1), entry); + * + * + * /* Create a radio button with a label */ + * radio2 = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (radio1), + * "I'm the second radio button."); + * + * /* Pack them into a box, then show all the widgets */ + * gtk_box_pack_start (GTK_BOX (box), radio1, TRUE, TRUE, 2); + * gtk_box_pack_start (GTK_BOX (box), radio2, TRUE, TRUE, 2); + * gtk_container_add (GTK_CONTAINER (window), box); + * gtk_widget_show_all (window); + * return; + * } + * + * + * + * When an unselected button in the group is clicked the clicked button + * receives the #GtkToggleButton::toggled signal, as does the previously + * selected button. + * Inside the #GtkToggleButton::toggled handler, gtk_toggle_button_get_active() + * can be used to determine if the button has been selected or deselected. + */ + + enum { PROP_0, PROP_GROUP @@ -76,6 +148,11 @@ gtk_radio_button_class_init (GtkRadioButtonClass *class) gobject_class->set_property = gtk_radio_button_set_property; gobject_class->get_property = gtk_radio_button_get_property; + /** + * GtkRadioButton:group: + * + * Sets a new group for a radio button. + */ g_object_class_install_property (gobject_class, PROP_GROUP, g_param_spec_object ("group", @@ -175,6 +252,17 @@ gtk_radio_button_get_property (GObject *object, } } +/** + * gtk_radio_button_set_group: + * @radio_button: a #GtkRadioButton. + * @group: an existing radio button group, such as one returned from + * gtk_radio_button_get_group(). + * + * Sets a #GtkRadioButton's group. It should be noted that this does not change + * the layout of your interface in any way, so if you are changing the group, + * it is likely you will need to re-arrange the user interface to reflect these + * changes. + */ void gtk_radio_button_set_group (GtkRadioButton *radio_button, GSList *group) @@ -243,6 +331,15 @@ gtk_radio_button_set_group (GtkRadioButton *radio_button, g_object_unref (radio_button); } +/** + * gtk_radio_button_new: + * @group: an existing radio button group, or %NULL if you are creating a new group. + * + * Creates a new #GtkRadioButton. To be of any practical value, a widget should + * then be packed into the radio button. + * + * Returns: a new radio button. + */ GtkWidget* gtk_radio_button_new (GSList *group) { @@ -256,6 +353,16 @@ gtk_radio_button_new (GSList *group) return GTK_WIDGET (radio_button); } +/** + * gtk_radio_button_new_with_label: + * @group: an existing radio button group, or %NULL if you are creating a new + * group. + * @label: the text label to display next to the radio button. + * + * Creates a new #GtkRadioButton with a text label. + * + * Returns: a new radio button. + */ GtkWidget* gtk_radio_button_new_with_label (GSList *group, const gchar *label) @@ -300,6 +407,15 @@ gtk_radio_button_new_with_mnemonic (GSList *group, return radio_button; } +/** + * gtk_radio_button_new_from_widget: + * @radio_group_member: an existing #GtkRadioButton. + * + * Creates a new #GtkRadioButton, adding it to the same group as @radio_group_member. + * As with gtk_radio_button_new(), a widget should be packed into the radio button. + * + * Returns: a new radio button. + */ GtkWidget* gtk_radio_button_new_from_widget (GtkRadioButton *radio_group_member) { @@ -309,7 +425,16 @@ gtk_radio_button_new_from_widget (GtkRadioButton *radio_group_member) return gtk_radio_button_new (l); } - +/** + * gtk_radio_button_new_with_label_from_widget: + * @radio_group_member: widget to get radio group from or %NULL + * @label: a text string to display next to the radio button. + * + * Creates a new #GtkRadioButton with a text label, adding it to the same group + * as @radio_group_member. + * + * Returns: a new radio button. + */ GtkWidget* gtk_radio_button_new_with_label_from_widget (GtkRadioButton *radio_group_member, const gchar *label)