Add controls for fit to page scaling

This commit is contained in:
Felix Kauselmann 2014-11-30 18:22:34 +01:00
parent 5bf074758f
commit 496a90daef
3 changed files with 25 additions and 1 deletions

View File

@ -107,6 +107,7 @@ MainWindowViewer::~MainWindowViewer()
delete showDictionaryAction;
delete alwaysOnTopAction;
delete adjustToFullSizeAction;
delete fitToPageAction;
delete showFlowAction;
}
@ -410,6 +411,15 @@ void MainWindowViewer::createActions()
adjustToFullSizeAction->setData(ADJUST_TO_FULL_SIZE_ACTION_Y);
adjustToFullSizeAction->setShortcut(ShortcutsManager::getShortcutsManager().getShortcut(ADJUST_TO_FULL_SIZE_ACTION_Y));
connect(adjustToFullSizeAction,SIGNAL(triggered()),this,SLOT(adjustToFullSizeSwitch()));
fitToPageAction = new QAction(tr("Fit to page"),this);
//fitToPageAction->setIcon(QIcon(":/images/viewer_toolbar/full.png"));
fitToPageAction->setCheckable(true);
fitToPageAction->setDisabled(true);
fitToPageAction->setChecked(Configuration::getConfiguration().getFitToPage());
fitToPageAction->setData(FIT_TO_PAGE_ACTION_Y);
fitToPageAction->setShortcut(ShortcutsManager::getShortcutsManager().getShortcut(FIT_TO_PAGE_ACTION_Y));
connect(fitToPageAction,SIGNAL(triggered()),this,SLOT(fitToPageSwitch()));
showFlowAction = new QAction(tr("Show go to flow"),this);
showFlowAction->setIcon(QIcon(":/images/viewer_toolbar/flow.png"));
@ -524,6 +534,7 @@ void MainWindowViewer::createToolBars()
comicToolBar->addAction(adjustHeightAction);
comicToolBar->addAction(adjustToFullSizeAction);
comicToolBar->addAction(fitToPageAction);
comicToolBar->addAction(leftRotationAction);
comicToolBar->addAction(rightRotationAction);
comicToolBar->addAction(doublePageAction);
@ -574,6 +585,7 @@ void MainWindowViewer::createToolBars()
viewer->addAction(adjustHeightAction);
viewer->addAction(adjustWidthAction);
viewer->addAction(adjustToFullSizeAction);
viewer->addAction(fitToPageAction);
viewer->addAction(leftRotationAction);
viewer->addAction(rightRotationAction);
viewer->addAction(doublePageAction);
@ -809,6 +821,7 @@ void MainWindowViewer::enableActions()
doublePageAction->setDisabled(false);
doubleMangaPageAction->setDisabled(false);
adjustToFullSizeAction->setDisabled(false);
fitToPageAction->setDisabled(false);
//setBookmark->setDisabled(false);
showBookmarksAction->setDisabled(false);
showInfoAction->setDisabled(false); //TODO enable goTo and showInfo (or update) when numPages emited
@ -830,6 +843,7 @@ void MainWindowViewer::disableActions()
doublePageAction->setDisabled(true);
doubleMangaPageAction->setDisabled(true);
adjustToFullSizeAction->setDisabled(true);
fitToPageAction->setDisabled(true);
setBookmarkAction->setDisabled(true);
showBookmarksAction->setDisabled(true);
showInfoAction->setDisabled(true); //TODO enable goTo and showInfo (or update) when numPages emited
@ -1082,7 +1096,8 @@ void MainWindowViewer::setUpShortcutsManagement()
<< rightRotationAction
<< doublePageAction
<< doubleMangaPageAction
<< adjustToFullSizeAction);
<< adjustToFullSizeAction
<< fitToPageAction);
allActions << tmpList;
@ -1375,6 +1390,12 @@ void MainWindowViewer::adjustToFullSizeSwitch()
viewer->updatePage();
}
void MainWindowViewer::fitToPageSwitch()
{
Configuration::getConfiguration().setFitToPage(!Configuration::getConfiguration().getFitToPage());
viewer->updatePage();
}
void MainWindowViewer::sendComic()
{
YACReaderLocalClient * client = new YACReaderLocalClient;

View File

@ -53,6 +53,7 @@ class EditShortcutsDialog;
void openFolderFromPath(QString pathFile, QString atFileName);
void alwaysOnTopSwitch();
void adjustToFullSizeSwitch();
void fitToPageSwitch();
void reloadOptions();
void fitToWidth();
void fitToHeight();
@ -118,6 +119,7 @@ class EditShortcutsDialog;
QAction *showDictionaryAction;
QAction *alwaysOnTopAction;
QAction *adjustToFullSizeAction;
QAction *fitToPageAction;
QAction *showFlowAction;
QAction *showEditShortcutsAction;

View File

@ -108,6 +108,7 @@ public:
#define SHOW_DICTIONARY_ACTION_Y "SHOW_DICTIONARY_ACTION_Y"
#define ALWAYS_ON_TOP_ACTION_Y "ALWAYS_ON_TOP_ACTION_Y"
#define ADJUST_TO_FULL_SIZE_ACTION_Y "ADJUST_TO_FULL_SIZE_ACTION_Y"
#define FIT_TO_PAGE_ACTION_Y "FIT_TO_PAGE_ACTION_Y"
#define SHOW_FLOW_ACTION_Y "SHOW_FLOW_ACTION_Y"
#define SHOW_EDIT_SHORTCUTS_ACTION_Y "SHOW_EDIT_SHORTCUTS_ACTION_Y"