1/* gtkradiotoolbutton.h
2 *
3 * Copyright (C) 2002 Anders Carlsson <andersca@gnome.org>
4 * Copyright (C) 2002 James Henstridge <james@daa.com.au>
5 * Copyright (C) 2003 Soeren Sandmann <sandmann@daimi.au.dk>
6 *
7 * This library is free software; you can redistribute it and/or
8 * modify it under the terms of the GNU Lesser General Public
9 * License as published by the Free Software Foundation; either
10 * version 2 of the License, or (at your option) any later version.
11 *
12 * This library is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 * Lesser General Public License for more details.
16 *
17 * You should have received a copy of the GNU Lesser General Public
18 * License along with this library. If not, see <http://www.gnu.org/licenses/>.
19 */
20
21#ifndef __GTK_RADIO_TOOL_BUTTON_H__
22#define __GTK_RADIO_TOOL_BUTTON_H__
23
24#if !defined (__GTK_H_INSIDE__) && !defined (GTK_COMPILATION)
25#error "Only <gtk/gtk.h> can be included directly."
26#endif
27
28#include <gtk/gtktoggletoolbutton.h>
29
30G_BEGIN_DECLS
31
32#define GTK_TYPE_RADIO_TOOL_BUTTON (gtk_radio_tool_button_get_type ())
33#define GTK_RADIO_TOOL_BUTTON(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_RADIO_TOOL_BUTTON, GtkRadioToolButton))
34#define GTK_RADIO_TOOL_BUTTON_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GTK_TYPE_RADIO_TOOL_BUTTON, GtkRadioToolButtonClass))
35#define GTK_IS_RADIO_TOOL_BUTTON(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_TYPE_RADIO_TOOL_BUTTON))
36#define GTK_IS_RADIO_TOOL_BUTTON_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GTK_TYPE_RADIO_TOOL_BUTTON))
37#define GTK_RADIO_TOOL_BUTTON_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), GTK_TYPE_RADIO_TOOL_BUTTON, GtkRadioToolButtonClass))
38
39typedef struct _GtkRadioToolButton GtkRadioToolButton;
40typedef struct _GtkRadioToolButtonClass GtkRadioToolButtonClass;
41
42struct _GtkRadioToolButton
43{
44 GtkToggleToolButton parent;
45};
46
47struct _GtkRadioToolButtonClass
48{
49 GtkToggleToolButtonClass parent_class;
50
51 /* Padding for future expansion */
52 void (* _gtk_reserved1) (void);
53 void (* _gtk_reserved2) (void);
54 void (* _gtk_reserved3) (void);
55 void (* _gtk_reserved4) (void);
56};
57
58GDK_AVAILABLE_IN_ALL
59GType gtk_radio_tool_button_get_type (void) G_GNUC_CONST;
60
61GDK_AVAILABLE_IN_ALL
62GtkToolItem *gtk_radio_tool_button_new (GSList *group);
63GDK_DEPRECATED_IN_3_10_FOR(gtk_radio_tool_button_new)
64GtkToolItem *gtk_radio_tool_button_new_from_stock (GSList *group,
65 const gchar *stock_id);
66GDK_AVAILABLE_IN_ALL
67GtkToolItem *gtk_radio_tool_button_new_from_widget (GtkRadioToolButton *group);
68GDK_DEPRECATED_IN_3_10_FOR(gtk_radio_tool_button_new_from_widget)
69GtkToolItem *gtk_radio_tool_button_new_with_stock_from_widget (GtkRadioToolButton *group,
70 const gchar *stock_id);
71GDK_AVAILABLE_IN_ALL
72GSList * gtk_radio_tool_button_get_group (GtkRadioToolButton *button);
73GDK_AVAILABLE_IN_ALL
74void gtk_radio_tool_button_set_group (GtkRadioToolButton *button,
75 GSList *group);
76
77G_END_DECLS
78
79#endif /* __GTK_RADIO_TOOL_BUTTON_H__ */
80