source: trunk/third/gnome-core/panel/foobar-widget.h @ 17152

Revision 17152, 1.8 KB checked in by ghudson, 23 years ago (diff)
This commit was generated by cvs2svn to compensate for changes in r17151, which included commits to RCS files with non-trunk default branches.
Line 
1/* GNOME panel: foobar widget
2 * Copyright 2000 Helix Code, Inc.
3 *
4 * Author:  Jacob Berkman
5 *
6 */
7
8#ifndef FOOBAR_WIDGET_H
9#define FOOBAR_WIDGET_H
10
11#include <gnome.h>
12#include "panel-types.h"
13#include "gwmh.h"
14
15BEGIN_GNOME_DECLS
16
17#define TYPE_FOOBAR_WIDGET     (foobar_widget_get_type ())
18#define FOOBAR_WIDGET(o)       (GTK_CHECK_CAST ((o), TYPE_FOOBAR_WIDGET, FoobarWidget))
19#define FOOBAR_WIDGET_CLASS(k) (GTK_CHECK_CLASS_CAST ((k), TYPE_FOOBAR_WIDGET, FoobarWidgetType))
20#define IS_FOOBAR_WIDGET(o)    (GTK_CHECK_TYPE ((o), TYPE_FOOBAR_WIDGET))
21
22typedef struct _FoobarWidget           FoobarWidget;
23typedef struct _FoobarWidgetClass      FoobarWidgetClass;
24
25struct _FoobarWidget
26{
27        GtkWindow window;
28
29        /*< private >*/
30
31        int screen;
32
33        GtkWidget *ebox;
34        GtkWidget *hbox;
35        GtkWidget *panel;
36        GtkWidget *clock_ebox;
37        GtkWidget *clock_label;
38        guint clock_timeout;
39
40        GtkWidget *programs;
41        GtkWidget *favorites;
42        GtkWidget *settings;
43
44        GHashTable *tasks;
45        GtkWidget *task_item;
46        GtkWidget *task_menu;
47        GtkWidget *task_pixmap;
48        GtkWidget *task_bin;
49        GwmhTask *icon_task; /* the task whoose icon is shown,
50                              * hopefully should be always OK,
51                              * but we only use the pointer value
52                              * and never dereference this */
53
54        gboolean compliant_wm;
55        char *clock_format;
56
57        guint notify;
58};
59
60struct _FoobarWidgetClass
61{
62        GtkWindowClass panel_class;
63};
64
65GtkType         foobar_widget_get_type          (void) G_GNUC_CONST;
66GtkWidget *     foobar_widget_new               (int screen);
67
68void            foobar_widget_update_winhints   (FoobarWidget *foo);
69void            foobar_widget_redo_window       (FoobarWidget *foo);
70
71void            foobar_widget_set_clock_format  (FoobarWidget *foo,
72                                                 const char *format);
73
74
75gboolean        foobar_widget_exists            (int screen);
76gint            foobar_widget_get_height        (int screen);
77
78void            foobar_widget_force_menu_remake (void);
79
80void            foobar_widget_global_set_clock_format (const char *format);
81
82END_GNOME_DECLS
83
84#endif
Note: See TracBrowser for help on using the repository browser.