pidgin/gtkmenutray.h

changeset 16238
33bf2fd32108
parent 12323
f52908fb23b0
parent 15572
e069b22c1fc4
equal deleted inserted replaced
13071:b98e72d4089a 16238:33bf2fd32108
1 /**
2 * @file gtkmenutray.h GTK+ Tray menu item
3 * @ingroup gtkui
4 *
5 * Pidgin is the legal property of its developers, whose names are too numerous
6 * to list here. Please refer to the COPYRIGHT file distributed with this
7 * source distribution.
8 *
9 * This program is free software; you can redistribute it and/or modify
10 * under the terms of the GNU General Public License as published by
11 * the Free Software Foundation; either version 2 of the License, or
12 * (at your option) any later version.
13 *
14 * This program is distributed in the hope that it will be useful,
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 * GNU General Public License for more details.
18 *
19 * You should have received a copy of the GNU General Public License
20 * along with this program; if not, write to the Free Software
21 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
22 */
23 #ifndef PIDGIN_MENU_TRAY_H
24 #define PIDGIN_MENU_TRAY_H
25
26 #include <gtk/gtkhbox.h>
27 #include <gtk/gtkmenuitem.h>
28 #include <gtk/gtktooltips.h>
29
30 #define PIDGIN_TYPE_MENU_TRAY (pidgin_menu_tray_get_gtype())
31 #define PIDGIN_MENU_TRAY(obj) (GTK_CHECK_CAST((obj), PIDGIN_TYPE_MENU_TRAY, PidginMenuTray))
32 #define PIDGIN_MENU_TRAY_CLASS(klass) (GTK_CHECK_CLASS_CAST((klass), PIDGIN_TYPE_MENU_TRAY, PidginMenuTrayClass))
33 #define PIDGIN_IS_MENU_TRAY(obj) (GTK_CHECK_TYPE((obj), PIDGIN_TYPE_MENU_TRAY))
34 #define PIDGIN_IS_MENU_TRAY_CLASS(klass) (GTK_CHECK_CLASS_TYPE((klass), PIDGIN_TYPE_MENU_TRAY))
35 #define PIDGIN_MENU_TRAY_GET_CLASS(obj) (GTK_CHECK_GET_CLASS((obj), PIDGIN_TYPE_MENU_TRAY, PidginMenuTrayClass))
36
37 typedef struct _PidginMenuTray PidginMenuTray;
38 typedef struct _PidginMenuTrayClass PidginMenuTrayClass;
39
40 /** A PidginMenuTray */
41 struct _PidginMenuTray {
42 GtkMenuItem gparent; /**< The parent instance */
43 GtkWidget *tray; /**< The tray */
44 GtkTooltips *tooltips; /**< Tooltips */
45 };
46
47 /** A PidginMenuTrayClass */
48 struct _PidginMenuTrayClass {
49 GtkMenuItemClass gparent; /**< The parent class */
50 };
51
52 G_BEGIN_DECLS
53
54 /**
55 * Registers the PidginMenuTray class if necessary and returns the
56 * type ID assigned to it.
57 *
58 * @return The PidginMenuTray type ID
59 */
60 GType pidgin_menu_tray_get_gtype(void);
61
62 /**
63 * Creates a new PidginMenuTray
64 *
65 * @return A new PidginMenuTray
66 */
67 GtkWidget *pidgin_menu_tray_new(void);
68
69 /**
70 * Gets the box for the PidginMenuTray
71 *
72 * @param menu_tray The PidginMenuTray
73 *
74 * @return The box that this menu tray is using
75 */
76 GtkWidget *pidgin_menu_tray_get_box(PidginMenuTray *menu_tray);
77
78 /**
79 * Appends a widget into the tray
80 *
81 * @param menu_tray The tray
82 * @param widget The widget
83 * @param tooltip The tooltip for this widget (widget requires its own X-window)
84 */
85 void pidgin_menu_tray_append(PidginMenuTray *menu_tray, GtkWidget *widget, const char *tooltip);
86
87 /**
88 * Prepends a widget into the tray
89 *
90 * @param menu_tray The tray
91 * @param widget The widget
92 * @param tooltip The tooltip for this widget (widget requires its own X-window)
93 */
94 void pidgin_menu_tray_prepend(PidginMenuTray *menu_tray, GtkWidget *widget, const char *tooltip);
95
96 /**
97 * Set the tooltip for a widget
98 *
99 * @param menu_tray The tray
100 * @param widget The widget
101 * @param tooltip The tooltip to set for the widget (widget requires its own X-window)
102 */
103 void pidgin_menu_tray_set_tooltip(PidginMenuTray *menu_tray, GtkWidget *widget, const char *tooltip);
104
105 G_END_DECLS
106
107 #endif /* PIDGIN_MENU_TRAY_H */

mercurial