00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025 #ifndef __HILDON_HOME_TITLEBAR_H__
00026 #define __HILDON_HOME_TITLEBAR_H__
00027
00028 #include <gtk/gtkeventbox.h>
00029 #include <libosso.h>
00030 #include "hildon-home-applet.h"
00031 #include "hildon-home-area.h"
00032
00033 #define HILDON_TYPE_HOME_TITLEBAR_MODE (hildon_home_titlebar_mode_get_type ())
00034 #define HILDON_TYPE_HOME_TITLEBAR (hildon_home_titlebar_get_type ())
00035 #define HILDON_HOME_TITLEBAR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), HILDON_TYPE_HOME_TITLEBAR, HildonHomeTitlebar))
00036 #define HILDON_IS_HOME_TITLEBAR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), HILDON_TYPE_HOME_TITLEBAR))
00037 #define HILDON_HOME_TITLEBAR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), HILDON_TYPE_HOME_TITLEBAR, HildonHomeTitlebarClass))
00038 #define HILDON_IS_HOME_TITLEBAR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), HILDON_TYPE_HOME_TITLEBAR))
00039 #define HILDON_HOME_TITLEBAR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), HILDON_TYPE_HOME_TITLEBAR, HildonHomeTitlebarClass))
00040
00041 G_BEGIN_DECLS
00042
00043 typedef enum {
00044 HILDON_HOME_TITLEBAR_NORMAL,
00045 HILDON_HOME_TITLEBAR_LAYOUT
00046 } HildonHomeTitlebarMode;
00047
00048 GType hildon_home_titlebar_mode_get_type (void) G_GNUC_CONST;
00049
00050 typedef struct _HildonHomeTitlebar HildonHomeTitlebar;
00051 typedef struct _HildonHomeTitlebarClass HildonHomeTitlebarClass;
00052 typedef struct _HildonHomeTitlebarPrivate HildonHomeTitlebarPrivate;
00053
00054 struct _HildonHomeTitlebar
00055 {
00056 GtkEventBox parent_instance;
00057
00058 HildonHomeTitlebarPrivate *priv;
00059 };
00060
00061 struct _HildonHomeTitlebarClass
00062 {
00063 GtkEventBoxClass parent_class;
00064
00065 void (*layout_accept) (HildonHomeTitlebar *titlebar);
00066 void (*layout_cancel) (HildonHomeTitlebar *titlebar);
00067
00068 void (*select_applets_activate) (HildonHomeTitlebar *titlebar);
00069 void (*layout_mode_activate) (HildonHomeTitlebar *titlebar);
00070 void (*applet_activate) (HildonHomeTitlebar *titlebar,
00071 const gchar *applet_path);
00072 void (*help_activate) (HildonHomeTitlebar *titlebar);
00073 void (*set_background_activate) (HildonHomeTitlebar *titlebar);
00074
00075 void (*applet_added) (HildonHomeTitlebar *titlebar,
00076 HildonHomeArea *area);
00077 void (*applet_removed) (HildonHomeTitlebar *titlebar,
00078 HildonHomeArea *area);
00079 };
00080
00081 GType hildon_home_titlebar_get_type (void) G_GNUC_CONST;
00082 GtkWidget *hildon_home_titlebar_new (osso_context_t *osso_context);
00083
00084 void hildon_home_titlebar_set_mode (HildonHomeTitlebar *titlebar,
00085 HildonHomeTitlebarMode mode);
00086
00087
00088 void hildon_home_titlebar_toggle_menu (HildonHomeTitlebar *titlebar);
00089
00090 G_END_DECLS
00091
00092 #endif