hildon-status-bar-main.h

Go to the documentation of this file.
00001 /*
00002  * This file is part of maemo-af-desktop
00003  *
00004  * Copyright (C) 2005 Nokia Corporation.
00005  *
00006  * Contact: Karoliina Salminen <karoliina.t.salminen@nokia.com>
00007  *
00008  * This library is free software; you can redistribute it and/or
00009  * modify it under the terms of the GNU Lesser General Public License
00010  * as published by the Free Software Foundation; either version 2.1 of
00011  * the License, or (at your option) any later version.
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 
00029 #ifndef __HILDON_STATUS_BAR_MAIN__H__
00030 #define __HILDON_STATUS_BAR_MAIN__H__
00031 
00032 #define HILDON_STATUS_BAR_NAME             "statusbar"
00033 #define HILDON_STATUS_BAR_VERSION          "1.0"
00034 
00035 #define HSB_MAX_NO_OF_ITEMS  30  /* maximum number of items */
00036 #define HSB_VISIBLE_ITEMS    7   /* maximum number of items to 
00037                                                 * show */
00038 
00039 /* hardcoded pixel positions for the icons */
00040 /* CHECKME: Why isn't y=0 at top? -2 seems to be much better.. */
00041 #define HSB_ITEM0_X          240
00042 #define HSB_ITEM0_Y          0
00043 #define HSB_ITEM1_X          200
00044 #define HSB_ITEM1_Y          0
00045 #define HSB_ITEM2_X          160
00046 #define HSB_ITEM2_Y          0
00047 #define HSB_ITEM3_X          120 
00048 #define HSB_ITEM3_Y          0
00049 #define HSB_ITEM4_X          80 
00050 #define HSB_ITEM4_Y          0
00051 #define HSB_ITEM5_X          40 
00052 #define HSB_ITEM5_Y          0
00053 #define HSB_ITEM6_X          0  
00054 #define HSB_ITEM6_Y          0
00055 
00056 
00057 /* hardcoded slot position for the four prespecified items, 0,1,2.. */
00058 #define HSB_FIRST_DYN_SLOT  5   /* first slot for dynamic 
00059                                                * plugins */
00060 #define HSB_PRESENCE_SLOT   4
00061 #define HSB_DISPLAY_SLOT    3
00062 #define HSB_SOUND_SLOT      2
00063 #define HSB_INTERNET_SLOT   1
00064 #define HSB_BATTERY_SLOT    0
00065 
00066 #define HSB_DESKTOP_ENTRY_GROUP     "Desktop Entry"
00067 #define HSB_DESKTOP_ENTRY_NAME      "Name"
00068 #define HSB_DESKTOP_ENTRY_PATH      "X-status-bar-plugin"
00069 #define HSB_DESKTOP_ENTRY_CATEGORY  "Category"
00070 #define HSB_DESKTOP_ENTRY_ICON      "Icon"
00071 
00072 
00073 #define XLIB_FORMAT_32_BIT 32
00074 
00075 typedef struct status_bar_st StatusBar;
00076 
00077 struct status_bar_st
00078 {
00079     GtkWidget *window;                                   /* GTK Window */
00080     GtkWidget *items[HSB_MAX_NO_OF_ITEMS];               /* Plugin items */
00081     GtkWidget *fixed;                                    /* Fixed container 
00082                                                           * for the items */
00083 
00084     /* fixed X pixel coordinates for the plugins */
00085     gint plugin_pos_x[HSB_MAX_NO_OF_ITEMS];
00086 
00087     /* fixed Y pixel coordinates for the plugins */
00088     gint plugin_pos_y[HSB_MAX_NO_OF_ITEMS];
00089 
00090 };
00091 
00092 /* Task delayed info banner 27092005 */
00093 
00094 typedef struct status_bar_del_ib_st SBDelayedInfobanner;
00095 
00096 struct status_bar_del_ib_st
00097 {
00098   gint32 displaytime;
00099   gchar *text;
00100   guint timeout_to_show_id;
00101   guint timeout_onscreen_id;
00102   GtkWidget *banner;
00103 };
00104 
00105 int status_bar_main(osso_context_t *osso, StatusBar **panel);
00106 void status_bar_deinitialize(osso_context_t *osso, StatusBar **panel);
00107 
00108 #endif

Generated on Fri Jun 9 16:23:10 2006 for maemo-af-desktop-documentation by  doxygen 1.4.6