summaryrefslogtreecommitdiff
path: root/src/frontend/displaywindow
diff options
context:
space:
mode:
authorRoberto C. Sanchez <roberto@connexer.com>2014-10-21 22:48:27 -0400
committerRoberto C. Sanchez <roberto@connexer.com>2014-10-21 22:48:27 -0400
commitdd2f7ce46df53f2c377c02d1bf4df8adcf092072 (patch)
tree51d4bd5d66a45a24784695c4e99b452b417dc3d1 /src/frontend/displaywindow
parentb954e6dbcceaba3b50aca624e1bddc6db4830829 (diff)
Imported Upstream version 2.3
Diffstat (limited to 'src/frontend/displaywindow')
-rw-r--r--src/frontend/displaywindow/btactioncollection.cpp9
-rw-r--r--src/frontend/displaywindow/cbookreadwindow.cpp5
-rw-r--r--src/frontend/displaywindow/cdisplaywindow.cpp31
-rw-r--r--src/frontend/displaywindow/cdisplaywindow.h1
-rw-r--r--src/frontend/displaywindow/chtmlwritewindow.cpp4
-rw-r--r--src/frontend/displaywindow/clexiconreadwindow.cpp4
-rw-r--r--src/frontend/displaywindow/cmodulechooserbar.cpp2
-rw-r--r--src/frontend/displaywindow/cplainwritewindow.cpp2
8 files changed, 45 insertions, 13 deletions
diff --git a/src/frontend/displaywindow/btactioncollection.cpp b/src/frontend/displaywindow/btactioncollection.cpp
index 046c3c0..fc1a412 100644
--- a/src/frontend/displaywindow/btactioncollection.cpp
+++ b/src/frontend/displaywindow/btactioncollection.cpp
@@ -15,6 +15,7 @@
#include <QSettings>
#include <QString>
#include <QStringList>
+#include <QDebug>
class BtActionItem : public QObject
{
@@ -52,10 +53,10 @@ QList<QAction*> BtActionCollection::actions()
QAction* BtActionCollection::action(const QString& name)
{
- Q_ASSERT(m_actions[name] != 0);
- QAction* action = m_actions[name]->action;
- Q_ASSERT(action != 0);
- return action;
+ if (m_actions.contains(name))
+ return m_actions[name]->action;
+ qWarning() << "A QAction for a shortcut named" << name << "was requested but it is not defined.";
+ return (new QAction(this)); // dummy QAction*
}
QAction* BtActionCollection::addAction(const QString& name, QAction* action)
diff --git a/src/frontend/displaywindow/cbookreadwindow.cpp b/src/frontend/displaywindow/cbookreadwindow.cpp
index 40f737d..465eec9 100644
--- a/src/frontend/displaywindow/cbookreadwindow.cpp
+++ b/src/frontend/displaywindow/cbookreadwindow.cpp
@@ -100,6 +100,9 @@ void CBookReadWindow::initView()
QSplitter* splitter = new QSplitter(this);
setMainToolBar( new QToolBar(this) );
+ mainToolBar()->setAllowedAreas(Qt::TopToolBarArea);
+ mainToolBar()->setFloatable(false);
+
addToolBar(mainToolBar());
m_treeChooser = new CBookTreeChooser(modules(), key(), splitter);
@@ -112,6 +115,8 @@ void CBookReadWindow::initView()
addToolBar(moduleChooserBar());
setButtonsToolBar( new QToolBar(this) );
+ buttonsToolBar()->setAllowedAreas(Qt::TopToolBarArea);
+ buttonsToolBar()->setFloatable(false);
setDisplaySettingsButton( new CDisplaySettingsButton( &displayOptions(), &filterOptions(), modules(), buttonsToolBar()) );
addToolBar(buttonsToolBar());
m_treeChooser->hide();
diff --git a/src/frontend/displaywindow/cdisplaywindow.cpp b/src/frontend/displaywindow/cdisplaywindow.cpp
index 6cf160d..8b4a9cd 100644
--- a/src/frontend/displaywindow/cdisplaywindow.cpp
+++ b/src/frontend/displaywindow/cdisplaywindow.cpp
@@ -129,6 +129,15 @@ void CDisplayWindow::insertKeyboardActions( BtActionCollection* a )
actn->setShortcut(QKeySequence::Find);
a->addAction("findText", actn);
+ actn = new QAction(QIcon(), tr("Change location"), 0);
+ actn->setShortcut(QKeySequence(Qt::CTRL + Qt::Key_L));
+ a->addAction("openLocation", actn);
+
+ actn = new QAction(QIcon(util::filesystem::DirectoryUtil::getIcon(CResMgr::displaywindows::general::search::icon)),
+ tr("Search with works of this window"), 0);
+ actn->setShortcut(CResMgr::displaywindows::general::search::accel);
+ a->addAction(CResMgr::displaywindows::general::search::actionName, actn);
+
BtToolBarPopupAction* action = new BtToolBarPopupAction(
QIcon(util::filesystem::DirectoryUtil::getIcon(CResMgr::displaywindows::general::backInHistory::icon)),
tr("Back in history"),
@@ -154,18 +163,16 @@ void CDisplayWindow::initActions()
CDisplayWindow::insertKeyboardActions(ac);
- QAction* qaction = new QAction(
- QIcon(util::filesystem::DirectoryUtil::getIcon(CResMgr::displaywindows::general::search::icon)),
- tr("Open the search dialog with the works of this window"),
- ac
- );
- qaction->setShortcut(CResMgr::displaywindows::general::search::accel);
- QObject::connect(qaction, SIGNAL(triggered()), this, SLOT(slotSearchInModules()));
- ac->addAction(CResMgr::displaywindows::general::search::actionName, qaction);
+ QAction* actn = ac->action(CResMgr::displaywindows::general::search::actionName);
+ QObject::connect(actn, SIGNAL(triggered()), this, SLOT(slotSearchInModules()));
CDisplayConnections* conn = displayWidget()->connectionsProxy();
- QAction* actn = ac->action("zoomIn");
+ actn = ac->action("openLocation");
+ QObject::connect(actn, SIGNAL(triggered()), this, SLOT(setFocusKeyChooser()));
+ addAction(actn);
+
+ actn = ac->action("zoomIn");
QObject::connect(actn, SIGNAL(triggered()), conn, SLOT(zoomIn()));
addAction(actn);
@@ -536,3 +543,9 @@ BtActionCollection* CDisplayWindow::actionCollection()
{
return m_actionCollection;
}
+
+void CDisplayWindow::setFocusKeyChooser()
+{
+ keyChooser()->setFocus();
+}
+
diff --git a/src/frontend/displaywindow/cdisplaywindow.h b/src/frontend/displaywindow/cdisplaywindow.h
index 80877fb..733f06e 100644
--- a/src/frontend/displaywindow/cdisplaywindow.h
+++ b/src/frontend/displaywindow/cdisplaywindow.h
@@ -202,6 +202,7 @@ protected slots:
void printAnchorWithText();
+ void setFocusKeyChooser();
private:
BtActionCollection* m_actionCollection;
diff --git a/src/frontend/displaywindow/chtmlwritewindow.cpp b/src/frontend/displaywindow/chtmlwritewindow.cpp
index 7e97aa6..cee16e0 100644
--- a/src/frontend/displaywindow/chtmlwritewindow.cpp
+++ b/src/frontend/displaywindow/chtmlwritewindow.cpp
@@ -42,6 +42,8 @@ void CHTMLWriteWindow::initView() {
setCentralWidget( displayWidget()->view() );
setMainToolBar( new QToolBar(this) );
+ mainToolBar()->setAllowedAreas(Qt::TopToolBarArea);
+ mainToolBar()->setFloatable(false);
addToolBar(mainToolBar());
setKeyChooser( CKeyChooser::createInstance(modules(), key(), mainToolBar()) );
@@ -104,6 +106,8 @@ void CHTMLWriteWindow::initToolbars() {
//html formatting toolbar
QToolBar* bar = new QToolBar(this);
+ bar->setAllowedAreas(Qt::TopToolBarArea);
+ bar->setFloatable(false);
((CWriteDisplay*)displayWidget())->setupToolbar( bar, actionCollection() );
addToolBar(bar);
}
diff --git a/src/frontend/displaywindow/clexiconreadwindow.cpp b/src/frontend/displaywindow/clexiconreadwindow.cpp
index 8ceb326..df22de9 100644
--- a/src/frontend/displaywindow/clexiconreadwindow.cpp
+++ b/src/frontend/displaywindow/clexiconreadwindow.cpp
@@ -187,6 +187,8 @@ void CLexiconReadWindow::initView()
qDebug("CLexiconReadWindow::initView");
setDisplayWidget( CDisplay::createReadInstance(this) );
setMainToolBar( new QToolBar(this) );
+ mainToolBar()->setAllowedAreas(Qt::TopToolBarArea);
+ mainToolBar()->setFloatable(false);
addToolBar(mainToolBar());
setKeyChooser( CKeyChooser::createInstance(modules(), key(), mainToolBar()) );
mainToolBar()->addWidget(keyChooser());
@@ -194,6 +196,8 @@ void CLexiconReadWindow::initView()
moduleChooserBar()->adjustSize();
addToolBar(moduleChooserBar());
setButtonsToolBar( new QToolBar(this) );
+ buttonsToolBar()->setAllowedAreas(Qt::TopToolBarArea);
+ buttonsToolBar()->setFloatable(false);
addToolBar(buttonsToolBar());
setWindowIcon(CToolClass::getIconForModule(modules().first()));
setCentralWidget( displayWidget()->view() );
diff --git a/src/frontend/displaywindow/cmodulechooserbar.cpp b/src/frontend/displaywindow/cmodulechooserbar.cpp
index fc891ad..a282c4b 100644
--- a/src/frontend/displaywindow/cmodulechooserbar.cpp
+++ b/src/frontend/displaywindow/cmodulechooserbar.cpp
@@ -22,6 +22,8 @@ CModuleChooserBar::CModuleChooserBar(QList<CSwordModuleInfo*> useModules, CSword
m_idCounter(0),
m_buttonLimit(-1) //-1 means no limit
{
+ setAllowedAreas(Qt::TopToolBarArea);
+ setFloatable(false);
//insert buttons if useModules != 0
QList<CSwordModuleInfo*>::iterator end_it = useModules.end();
for (QList<CSwordModuleInfo*>::iterator it(useModules.begin()); it != end_it; ++it) {
diff --git a/src/frontend/displaywindow/cplainwritewindow.cpp b/src/frontend/displaywindow/cplainwritewindow.cpp
index 9f12020..71dc603 100644
--- a/src/frontend/displaywindow/cplainwritewindow.cpp
+++ b/src/frontend/displaywindow/cplainwritewindow.cpp
@@ -45,6 +45,8 @@ void CPlainWriteWindow::initView() {
setCentralWidget( displayWidget()->view() );
setMainToolBar( new QToolBar(this) );
+ mainToolBar()->setAllowedAreas(Qt::TopToolBarArea);
+ mainToolBar()->setFloatable(false);
addToolBar(mainToolBar());
addToolBarBreak();