Migrate certificates, icons, logs to XDG dirs
[pidgin-git.git] / pidgin / gtkmenutray.h
blobf680ea79f83e29c27f2564c53c2aca349a035e04
1 /* Pidgin is the legal property of its developers, whose names are too numerous
2 * to list here. Please refer to the COPYRIGHT file distributed with this
3 * source distribution.
5 * This program is free software; you can redistribute it and/or modify
6 * under the terms of the GNU General Public License as published by
7 * the Free Software Foundation; either version 2 of the License, or
8 * (at your option) any later version.
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
15 * You should have received a copy of the GNU General Public License
16 * along with this program; if not, write to the Free Software
17 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA
20 #ifndef PIDGIN_MENU_TRAY_H
21 #define PIDGIN_MENU_TRAY_H
22 /**
23 * SECTION:gtkmenutray
24 * @section_id: pidgin-gtkmenutray
25 * @short_description: <filename>gtkmenutray.h</filename>
26 * @title: Tray Menu Item
29 #include <gtk/gtk.h>
31 #define PIDGIN_TYPE_MENU_TRAY (pidgin_menu_tray_get_type())
32 #define PIDGIN_MENU_TRAY(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), PIDGIN_TYPE_MENU_TRAY, PidginMenuTray))
33 #define PIDGIN_MENU_TRAY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), PIDGIN_TYPE_MENU_TRAY, PidginMenuTrayClass))
34 #define PIDGIN_IS_MENU_TRAY(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), PIDGIN_TYPE_MENU_TRAY))
35 #define PIDGIN_IS_MENU_TRAY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), PIDGIN_TYPE_MENU_TRAY))
36 #define PIDGIN_MENU_TRAY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), PIDGIN_TYPE_MENU_TRAY, PidginMenuTrayClass))
38 typedef struct _PidginMenuTray PidginMenuTray;
39 typedef struct _PidginMenuTrayClass PidginMenuTrayClass;
41 /**
42 * PidginMenuTray:
43 * @tray: The tray
45 * A PidginMenuTray
47 struct _PidginMenuTray {
48 GtkMenuItem gparent;
50 /*< public >*/
51 GtkWidget *tray;
54 struct _PidginMenuTrayClass {
55 GtkMenuItemClass gparent;
58 G_BEGIN_DECLS
60 /**
61 * pidgin_menu_tray_get_type:
63 * Registers the PidginMenuTray class if necessary and returns the
64 * type ID assigned to it.
66 * Returns: The PidginMenuTray type ID
68 GType pidgin_menu_tray_get_type(void);
70 /**
71 * pidgin_menu_tray_new:
73 * Creates a new PidginMenuTray
75 * Returns: A new PidginMenuTray
77 GtkWidget *pidgin_menu_tray_new(void);
79 /**
80 * pidgin_menu_tray_get_box:
81 * @menu_tray: The PidginMenuTray
83 * Gets the box for the PidginMenuTray
85 * Returns: The box that this menu tray is using
87 GtkWidget *pidgin_menu_tray_get_box(PidginMenuTray *menu_tray);
89 /**
90 * pidgin_menu_tray_append:
91 * @menu_tray: The tray
92 * @widget: The widget
93 * @tooltip: The tooltip for this widget (widget requires its own X-window)
95 * Appends a widget into the tray
97 void pidgin_menu_tray_append(PidginMenuTray *menu_tray, GtkWidget *widget, const char *tooltip);
99 /**
100 * pidgin_menu_tray_prepend:
101 * @menu_tray: The tray
102 * @widget: The widget
103 * @tooltip: The tooltip for this widget (widget requires its own X-window)
105 * Prepends a widget into the tray
107 void pidgin_menu_tray_prepend(PidginMenuTray *menu_tray, GtkWidget *widget, const char *tooltip);
110 * pidgin_menu_tray_set_tooltip:
111 * @menu_tray: The tray
112 * @widget: The widget
113 * @tooltip: The tooltip to set for the widget (widget requires its own X-window)
115 * Set the tooltip for a widget
117 void pidgin_menu_tray_set_tooltip(PidginMenuTray *menu_tray, GtkWidget *widget, const char *tooltip);
119 G_END_DECLS
121 #endif /* PIDGIN_MENU_TRAY_H */