Main Page | Directories | File List | File Members

hn-app-switcher.h

Go to the documentation of this file.
00001 /* -*- mode:C; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
00002 
00003 /* hn-app-switcher.h
00004  * This file is part of maemo-af-desktop
00005  *
00006  * Copyright (C) 2006 Nokia Corporation.
00007  *
00008  * Contact: Karoliina Salminen <karoliina.t.salminen@nokia.com>
00009  *
00010  * This library is free software; you can redistribute it and/or
00011  * modify it under the terms of the GNU Lesser General Public License
00012  * version 2.1 as published by the Free Software Foundation.
00013  *
00014  * This library is distributed in the hope that it will be useful, but
00015  * WITHOUT ANY WARRANTY; without even the implied warranty of
00016  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
00017  * Lesser General Public License for more details.
00018  *
00019  * You should have received a copy of the GNU Lesser General Public
00020  * License along with this library; if not, write to the Free Software
00021  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
00022  * 02110-1301 USA
00023  *
00024  */
00025 
00033 #ifndef HN_APP_SWITCHER_H
00034 #define HN_APP_SWITCHER_H
00035 
00036 #include <gtk/gtkvbox.h>
00037 #include "hn-wm-types.h"
00038 
00039 G_BEGIN_DECLS
00040 
00041 #define HN_TYPE_APP_SWITCHER            (hn_app_switcher_get_type ())
00042 #define HN_APP_SWITCHER(obj)            (G_TYPE_CHECK_INSTANCE_CAST ((obj), HN_TYPE_APP_SWITCHER, HNAppSwitcher))
00043 #define HN_IS_APP_SWITCHER(obj)         (G_TYPE_CHECK_INSTANCE_TYPE ((obj), HN_TYPE_APP_SWITCHER))
00044 #define HN_APP_SWITCHER_CLASS(klass)    (G_TYPE_CHECK_CLASS_CAST ((klass), HN_TYPE_APP_SWITCHER, HNAppSwitcherClass))
00045 #define HN_IS_APP_SWITCHER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), HN_TYPE_APP_SWITCHER))
00046 #define HN_APP_SWITCHER_GET_CLASS(obj)  (G_TYPE_INSTANCE_GET_CLASS ((obj), HN_TYPE_APP_SWITCHER, HNAppSwitcherClass))
00047 
00048 typedef struct _HNAppSwitcherPrivate HNAppSwitcherPrivate;
00049 typedef struct _HNAppSwitcherClass   HNAppSwitcherClass;
00050 
00051 typedef gboolean (*HNAppSwitcherForeachFunc) (HNEntryInfo *info,
00052                           gpointer     data);
00053 
00054 struct _HNAppSwitcher
00055 {
00056   GtkVBox parent_instance;
00057   
00058   HNAppSwitcherPrivate *priv;
00059 };
00060 
00061 struct _HNAppSwitcherClass
00062 {
00063   GtkVBoxClass parent_class;
00064   
00065   void (*add_info)      (HNAppSwitcher *app_switcher,
00066                  HNEntryInfo   *entry_info);
00067   void (*remove_info)   (HNAppSwitcher *app_switcher,
00068                  HNEntryInfo   *entry_info);
00069   void (*changed_info)  (HNAppSwitcher *app_switcher,
00070                  HNEntryInfo   *entry_info);
00071   void (*changed_stack) (HNAppSwitcher *app_switcher,
00072              HNEntryInfo   *entry_info);
00073   
00074   /* relay signals from the bus */
00075   void (*lowmem)   (HNAppSwitcher *app_switcher,
00076                     gboolean       is_active);
00077   void (*bgkill)   (HNAppSwitcher *app_switcher,
00078                     gboolean       is_active);
00079 };
00080 
00081 GType      hn_app_switcher_get_type      (void) G_GNUC_CONST;
00082 
00083 GtkWidget *hn_app_switcher_new           (void);
00084 
00085 GList *    hn_app_switcher_get_entries   (HNAppSwitcher            *app_switcher);
00086 void       hn_app_switcher_foreach_entry (HNAppSwitcher            *app_switcher,
00087                       HNAppSwitcherForeachFunc  func,
00088                       gpointer                  data);
00089 
00090 void       hn_app_switcher_add           (HNAppSwitcher *app_switcher,
00091                           HNEntryInfo   *entry_info);
00092 void       hn_app_switcher_remove        (HNAppSwitcher *app_switcher,
00093                           HNEntryInfo   *entry_info);
00094 void       hn_app_switcher_changed       (HNAppSwitcher *app_switcher,
00095                           HNEntryInfo   *entry_info);
00096 void       hn_app_switcher_changed_stack (HNAppSwitcher *app_switcher,
00097                       HNEntryInfo   *entry_info);
00098 
00099 void       hn_app_switcher_toggle_menu_button (HNAppSwitcher *app_switcher);
00100 
00101 gboolean   hn_app_switcher_get_system_inactivity (HNAppSwitcher *app_switcher);
00102 
00103 gboolean   hn_app_switcher_menu_button_release_cb (GtkWidget      *widget,
00104                                                  GdkEventButton *event);
00105 
00106 HNEntryInfo * hn_app_switcher_get_home_entry_info (HNAppSwitcher *as);
00107 
00108 G_END_DECLS
00109 
00110 #endif /* HN_APP_SWITCHER_H */

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