]> git.sur5r.net Git - bacula/bacula/blob - bacula/src/tray-monitor/eggstatusicon.h
kes Fix sscanf problems reported by Peter Buschman that caused
[bacula/bacula] / bacula / src / tray-monitor / eggstatusicon.h
1 /* eggstatusicon.h:
2  *
3  * Copyright (C) 2003 Sun Microsystems, Inc.
4  *
5  * This library is free software; you can redistribute it and/or
6  * modify it under the terms of the GNU Lesser General Public
7  * License as published by the Free Software Foundation; either
8  * version 2 of the License, or (at your option) any later version.
9  *
10  * This library 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 GNU
13  * Lesser General Public License for more details.
14  *
15  * You should have received a copy of the GNU Lesser General Public
16  * License along with this library; if not, write to the
17  * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
18  * Boston, MA 02111-1307, USA.
19  *
20  * Authors:
21  *      Mark McLoughlin <mark@skynet.ie>
22  *      Nicolas Boichat <nicolas@boichat.ch> (add access to the underlying EggTrayIcon)
23  */
24
25
26 #ifndef __EGG_STATUS_ICON_H__
27 #define __EGG_STATUS_ICON_H__
28
29 #include "eggtrayicon.h"
30 #include <gtk/gtkimage.h>
31
32 G_BEGIN_DECLS
33
34 #define EGG_TYPE_STATUS_ICON         (egg_status_icon_get_type ())
35 #define EGG_STATUS_ICON(o)           (G_TYPE_CHECK_INSTANCE_CAST ((o), EGG_TYPE_STATUS_ICON, EggStatusIcon))
36 #define EGG_STATUS_ICON_CLASS(k)     (G_TYPE_CHECK_CLASS_CAST ((k), EGG_TYPE_STATUS_ICON, EggStatusIconClass))
37 #define EGG_IS_STATUS_ICON(o)        (G_TYPE_CHECK_INSTANCE_TYPE ((o), EGG_TYPE_STATUS_ICON))
38 #define EGG_IS_STATUS_ICON_CLASS(k)  (G_TYPE_CHECK_CLASS_TYPE ((k), EGG_TYPE_STATUS_ICON))
39 #define EGG_STATUS_ICON_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), EGG_TYPE_STATUS_ICON, EggStatusIconClass))
40
41 typedef struct _EggStatusIcon        EggStatusIcon;
42 typedef struct _EggStatusIconClass   EggStatusIconClass;
43 typedef struct _EggStatusIconPrivate EggStatusIconPrivate;
44
45 struct _EggStatusIcon
46 {
47   GObject               parent_instance;
48
49   EggStatusIconPrivate *priv;
50 };
51
52 struct _EggStatusIconClass
53 {
54   GObjectClass parent_class;
55
56   void     (* activate)     (EggStatusIcon *status_icon);
57   void     (* popup_menu)   (EggStatusIcon *status_icon,
58                              guint          buttton,
59                              guint32        activate_time);
60   gboolean (* size_changed) (EggStatusIcon *status_icon,
61                              gint           size);
62 };
63
64 GType                 egg_status_icon_get_type           (void);
65
66 EggStatusIcon        *egg_status_icon_new                (void);
67 EggStatusIcon        *egg_status_icon_new_from_pixbuf    (GdkPixbuf          *pixbuf);
68 EggStatusIcon        *egg_status_icon_new_from_file      (const gchar        *filename);
69 EggStatusIcon        *egg_status_icon_new_from_stock     (const gchar        *stock_id);
70 EggStatusIcon        *egg_status_icon_new_from_animation (GdkPixbufAnimation *animation);
71
72 void                  egg_status_icon_set_from_pixbuf    (EggStatusIcon      *status_icon,
73                                                           GdkPixbuf          *pixbuf);
74 void                  egg_status_icon_set_from_file      (EggStatusIcon      *status_icon,
75                                                           const gchar        *filename);
76 void                  egg_status_icon_set_from_stock     (EggStatusIcon      *status_icon,
77                                                           const gchar        *stock_id);
78 void                  egg_status_icon_set_from_animation (EggStatusIcon      *status_icon,
79                                                           GdkPixbufAnimation *animation);
80
81 GtkImageType          egg_status_icon_get_image_type     (EggStatusIcon      *status_icon);
82
83 GdkPixbuf            *egg_status_icon_get_pixbuf         (EggStatusIcon      *status_icon);
84 G_CONST_RETURN gchar *egg_status_icon_get_stock          (EggStatusIcon      *status_icon);
85 GdkPixbufAnimation   *egg_status_icon_get_animation      (EggStatusIcon      *status_icon);
86
87 gint                  egg_status_icon_get_size           (EggStatusIcon      *status_icon);
88
89 void                  egg_status_icon_set_tooltip        (EggStatusIcon      *status_icon,
90                                                           const gchar        *tooltip_text,
91                                                           const gchar        *tooltip_private);
92
93 void                  egg_status_icon_set_balloon_text   (EggStatusIcon      *status_icon,
94                                                           const gchar        *text);
95 G_CONST_RETURN gchar *egg_status_icon_get_balloon_text   (EggStatusIcon      *status_icon);
96
97 void                  egg_status_icon_set_is_blinking    (EggStatusIcon      *status_icon,
98                                                           guint            enable_blinking);
99 gboolean              egg_status_icon_get_is_blinking    (EggStatusIcon      *status_icon);
100
101 EggTrayIcon*          egg_status_icon_get_tray_icon      (EggStatusIcon      *status_icon);
102
103 G_END_DECLS
104
105 #endif /* __EGG_STATUS_ICON_H__ */