00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00015 
00016 
00017 
00026 #include <glib.h>
00027 
00028 #include <liberipc/eripc.h>
00029 #include <liberipc/eripctoolbar.h>
00030 #include <liberipc/eripcconnect.h>
00031 
00032 #include "connectionMgrLog.h"
00033 #include "toolbar.h"
00034 
00035 static erClientChannel_t toolbarChannel;
00036 
00037 static void toolbar_init_icons(void);
00038 
00039 void toolbar_init()
00040 {
00041     int returnValue;
00042 
00043     CN_LOGPRINTF("entry");
00044     
00045     
00046     returnValue = erIpcStartClient(ER_TOOLBAR_CHANNEL, &toolbarChannel);
00047 
00048     if (returnValue != 0)
00049     {
00050         CN_WARNPRINTF("erIpcStartClient returned %d", returnValue);
00051         return;
00052     }
00053 
00054     toolbar_init_icons();
00055 }
00056 
00057 static void toolbar_init_icons(void)
00058 {
00059     
00060     tbDisableUpdate(toolbarChannel, ER_CONNECT_UA_ID);
00061 
00062     
00063     tbSelectIconSet(toolbarChannel, ER_CONNECT_UA_ID);
00064 
00065     
00066     tbClearIconSet(toolbarChannel, ER_CONNECT_UA_ID);
00067 
00068     tbAppendPlatformIcon(toolbarChannel, ER_CONNECT_UA_ID, 
00069                          iconID_back, ccCnToolbar);
00070     tbSetStatePlatformIcon(toolbarChannel, ER_CONNECT_UA_ID, 
00071                            iconID_back, iconState_grey);
00072 
00073     
00074     tbAppendPlatformIcon(toolbarChannel, ER_CONNECT_UA_ID, 
00075                          iconID_trashcan, ccCnToolbar);
00076     toolbar_setIconState(iconID_trashcan, iconState_grey);
00077 
00078     tbAppendPlatformIcon(toolbarChannel, ER_CONNECT_UA_ID, 
00079                          iconID_keyboard, ccCnToolbar);
00080     toolbar_setIconState(iconID_keyboard, iconState_grey);
00081 
00082     
00083     tbEnableUpdate(toolbarChannel, ER_CONNECT_UA_ID);
00084 }
00085 
00086 
00087 void toolbar_disableUpdate()
00088 {
00089     CN_LOGPRINTF("entry");
00090 
00091     tbDisableUpdate(toolbarChannel, ER_CONTENT_LISTER_UA_ID);
00092 }
00093 
00094 
00095 void toolbar_enableUpdate()
00096 {
00097     CN_LOGPRINTF("entry");
00098 
00099     tbEnableUpdate(toolbarChannel, ER_CONTENT_LISTER_UA_ID);
00100 }
00101 
00102 
00103 void toolbar_setIconState(int iconID, int iconState)
00104 {
00105     CN_LOGPRINTF("entry: iconID [%d] iconState [%d]", iconID, iconState);
00106     
00107     tbSetStatePlatformIcon(toolbarChannel, ER_CONNECT_UA_ID, 
00108                            iconID, iconState);
00109 }
00110 
00111 void toolbar_synchronise(void)
00112 {
00113     CN_LOGPRINTF("entry");
00114 
00115     tbSynchronise(toolbarChannel, ER_CONNECT_UA_ID, ccCnToolbarSync);
00116 }
00117