Main Page | Directories | File List | File Members

hildon-home-titlebar.h

00001 /* -*- mode:C; c-file-style:"gnu"; -*- */
00002 /*
00003  * This file is part of maemo-af-desktop
00004  *
00005  * Copyright (C) 2006 Nokia Corporation.
00006  *
00007  * Contact: Karoliina Salminen <karoliina.t.salminen@nokia.com>
00008  *
00009  * This library is free software; you can redistribute it and/or
00010  * modify it under the terms of the GNU Lesser General Public License
00011  * version 2.1 as published by the Free Software Foundation.
00012  *
00013  * This library is distributed in the hope that it will be useful, but
00014  * WITHOUT ANY WARRANTY; without even the implied warranty of
00015  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
00016  * Lesser General Public License for more details.
00017  *
00018  * You should have received a copy of the GNU Lesser General Public
00019  * License along with this library; if not, write to the Free Software
00020  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
00021  * 02110-1301 USA
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 /* __HILDON_HOME_TITLEBAR_H__ */

Generated on Thu Dec 21 11:26:50 2006 for maemo-af-desktop-documentation by  doxygen 1.4.2