int ReaderViewNative::doCommand( int cmd, int param ) { switch (cmd) { case DCMD_OPEN_RECENT_BOOK: { return openRecentBook(); } break; case DCMD_CLOSE_BOOK: { return closeBook(); } break; case DCMD_RESTORE_POSITION: { if ( _docview->isDocumentOpened() ) { _docview->restorePosition(); } } break; default: return 0; } return 1; }
/// returns true if command is processed bool V3DocViewWin::onCommand( int command, int params ) { CRLog::info("V3DocViewWin::onCommand(%d [%s], %d)", command, getCommandName(command, params), params ); switch ( command ) { case MCMD_QUIT: getWindowManager()->closeAllWindows(); return true; case MCMD_MAIN_MENU: showMainMenu(); return true; case MCMD_SETTINGS_FONTSIZE: showFontSizeMenu(); return true; #if CR_INTERNAL_PAGE_ORIENTATION==1 case MCMD_SETTINGS_ORIENTATION: showOrientationMenu(); return true; #endif case MCMD_SETTINGS: showSettingsMenu(); return true; case MCMD_RECENT_BOOK_LIST: showRecentBooksMenu(); return true; case MCMD_OPEN_RECENT_BOOK: _docview->swapToCache(); _docview->getDocument()->updateMap(); openRecentBook( params ); return true; case MCMD_SWITCH_TO_RECENT_BOOK: _docview->swapToCache(); _docview->getDocument()->updateMap(); openRecentBook( 1 ); return true; case MCMD_ABOUT: showAboutDialog(); return true; case MCMD_CITE: activate_cite( _wm, this); return true; case MCMD_GO_PAGE_APPLY: _docview->doCommand( DCMD_GO_PAGE, params-1 ); return true; case MCMD_GO_PERCENT_APPLY: _docview->doCommand( DCMD_GO_POS, params * _docview->GetFullHeight() / 100 ); return true; case MCMD_SETTINGS_APPLY: #if CR_INTERNAL_PAGE_ORIENTATION==1 case mm_Orientation: #endif case mm_FontSize: applySettings(); saveSettings( lString16() ); _wm->getSkin()->gc(); return true; case DCMD_SAVE_HISTORY: saveHistory( lString16() ); saveSettings( lString16() ); return true; case DCMD_SAVE_TO_CACHE: _docview->swapToCache(); _docview->getDocument()->updateMap(); return true; case MCMD_BOOKMARK_LIST: showBookmarksMenu(false); return true; case MCMD_BOOKMARK_LIST_GO_MODE: showBookmarksMenu(true); return true; case DCMD_ZOOM_IN: case DCMD_ZOOM_OUT: showWaitIcon(); CRViewDialog::onCommand( command, params ); _props->setInt( PROP_FONT_SIZE, _docview->getFontSize() ); saveSettings( lString16() ); return true; case MCMD_HELP: showHelpDialog(); return true; case DCMD_BOOKMARK_SAVE_N: _docview->doCommand( DCMD_BOOKMARK_SAVE_N, params ); if ( _props->getBoolDef( PROP_AUTOSAVE_BOOKMARKS, true ) ) saveHistory( lString16() ); return true; default: // do nothing ; } return CRViewDialog::onCommand( command, params ); }