void IliadToolbar::initialize() { //initialize events eventHandler = new ToolBarEventHandler(); // busy indicator erIpcStartClient(ER_BUSYD_CHANNEL, &erbusyChannel); // pagebar erIpcStartClient(ER_PAGEBAR_CHANNEL, &erpagebarChannel); // toolbar erIpcStartClient(ER_TOOLBAR_CHANNEL, &ertoolbarChannel); tbSelectIconSet(ertoolbarChannel, ER_PDF_VIEWER_UA_ID); // disable redraw tbDisableUpdate(ertoolbarChannel, ER_PDF_VIEWER_UA_ID); tbClearIconSet(ertoolbarChannel, ER_PDF_VIEWER_UA_ID); // trashcan tbAppendPlatformIcon( ertoolbarChannel, ER_PDF_VIEWER_UA_ID, iconID_trashcan, -1); tbSetStatePlatformIcon(ertoolbarChannel, ER_PDF_VIEWER_UA_ID, iconID_trashcan, iconState_grey ); // keyboard tbAppendPlatformIcon( ertoolbarChannel, ER_PDF_VIEWER_UA_ID, iconID_keyboard, -1); tbSetStatePlatformIcon(ertoolbarChannel, ER_PDF_VIEWER_UA_ID, iconID_keyboard, iconState_grey ); tbEnableUpdate(ertoolbarChannel, ER_PDF_VIEWER_UA_ID); //nPanState = nZoominState = nZoomoutState = iconState_normal; //nZoombackState = iconState_grey; //nContinousState = iconState_normal; //nRotateState = PortraitToLandscape; //nBackwardState = nForwardState = iconState_grey; }
//draw icons and set status by current mode. void drawIconsByMode(int iTotalPage) { // freeze toolbar tbDisableUpdate(toolbarChannel, ER_SCRIBBLE_UA_ID); // clear the toolbar tbClearIconSet(toolbarChannel, ER_SCRIBBLE_UA_ID); switch ( getOperationMode() ) { case MODE_INVALID: addIconsByListMode(ICONS_FLDALL); break; case MODE_DRAW: addIconsByListMode(ICONS_FLDALL); activeIcon( iconID_pen ); break; case MODE_SELSIZE: addIconsByListMode(ICONLIST_UNFLDSIZE); activeIcon( getIconfromPenSize(getPenSize(), LIST_INDEX_ICONLOW) ); activeIcon( iconID_pen ); break; case MODE_SELCOLOR: addIconsByListMode(ICONLIST_UNFLDCOLOR); activeIcon( getIconfromPenColor(getPenColor(), LIST_INDEX_ICONLOW) ); activeIcon( iconID_pen ); break; case MODE_ERASE: addIconsByListMode(ICONS_FLDALL); activeIcon( iconID_eraseline ); break; case MODE_DELPAGE: addIconsByListMode(ICONS_FLDALL); activeIcon( iconID_trashcan ); break; default: SB_ERRORPRINTF("Error Mode[%d]\n", getOperationMode()); return; } if( iTotalPage<=1 ) { disableIcon(iconID_trashcan); } // redraw toolbar now tbEnableUpdate(toolbarChannel, ER_SCRIBBLE_UA_ID); }
void IliadToolbar::redrawToolbar(gboolean bSync) { if (isToolbarDirty()) { // avoid redraw again and again, it's more faster tbDisableUpdate(ertoolbarChannel, ER_PDF_VIEWER_UA_ID); tbClearIconSet(ertoolbarChannel, ER_PDF_VIEWER_UA_ID); // rotate // if (PortraitToLandscape == nRotateState) // { // tbAppendPlatformIcon( ertoolbarChannel, ER_PDF_VIEWER_UA_ID, iconID_portrait_landscape, ccVwrToolbar); // tbSetStatePlatformIcon(ertoolbarChannel, ER_PDF_VIEWER_UA_ID, iconID_portrait_landscape, iconState_normal); // } // else if (LandscapeToPortrait == nRotateState) // { // tbAppendPlatformIcon( ertoolbarChannel, ER_PDF_VIEWER_UA_ID, iconID_landscape_portrait, ccVwrToolbar); // tbSetStatePlatformIcon(ertoolbarChannel, ER_PDF_VIEWER_UA_ID, iconID_landscape_portrait, iconState_selected); // } // page/continous mode // if (iconState_normal == nContinousState) // { // tbAppendPlatformIcon(ertoolbarChannel, ER_PDF_VIEWER_UA_ID, iconID_page_mode, ccVwrToolbar); // tbSetStatePlatformIcon(ertoolbarChannel, ER_PDF_VIEWER_UA_ID, iconID_page_mode, iconState_normal); // } // else if (3 == nContinousState) // { // tbAppendPlatformIcon(ertoolbarChannel, ER_PDF_VIEWER_UA_ID, iconID_continuous_mode, ccVwrToolbar); // tbSetStatePlatformIcon(ertoolbarChannel, ER_PDF_VIEWER_UA_ID, iconID_continuous_mode, iconState_selected); // } // zoom fit // tbAppendPlatformIcon( ertoolbarChannel, ER_PDF_VIEWER_UA_ID, iconID_zoomfit, ccVwrToolbar); // tbSetStatePlatformIcon(ertoolbarChannel, ER_PDF_VIEWER_UA_ID, iconID_zoomfit, iconState_normal ); // zoom in // tbAppendPlatformIcon( ertoolbarChannel, ER_PDF_VIEWER_UA_ID, iconID_zoomin, ccVwrToolbar); // tbSetStatePlatformIcon(ertoolbarChannel, ER_PDF_VIEWER_UA_ID, iconID_zoomin, nZoominState); // zoom back // tbAppendPlatformIcon( ertoolbarChannel, ER_PDF_VIEWER_UA_ID, iconID_zoomback, ccVwrToolbar); // tbSetStatePlatformIcon(ertoolbarChannel, ER_PDF_VIEWER_UA_ID, iconID_zoomback, nZoombackState); // temp. // tbAppendPlatformIcon( ertoolbarChannel, ER_PDF_VIEWER_UA_ID, iconID_pan, ccVwrToolbar); // tbSetStatePlatformIcon(ertoolbarChannel, ER_PDF_VIEWER_UA_ID, iconID_pan, nPanState ); // backward // tbAppendPlatformIcon( ertoolbarChannel, ER_PDF_VIEWER_UA_ID, iconID_back, ccVwrToolbar); // tbSetStatePlatformIcon(ertoolbarChannel, ER_PDF_VIEWER_UA_ID, iconID_back, nBackwardState); // forward // tbAppendPlatformIcon( ertoolbarChannel, ER_PDF_VIEWER_UA_ID, iconID_forward, ccVwrToolbar); // tbSetStatePlatformIcon(ertoolbarChannel, ER_PDF_VIEWER_UA_ID, iconID_forward, nForwardState); // scribble icons // updateScribbleIcons(doc); // repaint only once tbEnableUpdate(ertoolbarChannel, ER_PDF_VIEWER_UA_ID); if (bSync) { tbSynchronise(ertoolbarChannel, ER_PDF_VIEWER_UA_ID, ccVwrToolbarSync); } setToolbarDirty(FALSE); } }
//clear the toolbar to make void toolbar_clearall() { tbClearIconSet(toolbarChannel, ER_SCRIBBLE_UA_ID); }