summaryrefslogtreecommitdiff
path: root/noncore/apps/dagger/mainwindow.cpp
Side-by-side diff
Diffstat (limited to 'noncore/apps/dagger/mainwindow.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/apps/dagger/mainwindow.cpp17
1 files changed, 10 insertions, 7 deletions
diff --git a/noncore/apps/dagger/mainwindow.cpp b/noncore/apps/dagger/mainwindow.cpp
index ace8f36..b2e00e8 100644
--- a/noncore/apps/dagger/mainwindow.cpp
+++ b/noncore/apps/dagger/mainwindow.cpp
@@ -52,48 +52,51 @@ MainWindow::MainWindow( QWidget *parent, const char *name, WFlags /*fl*/ )
// Retrieve list of available Sword module options (e.g. footnotes, Strong's numbers, etc.)
sword::OptionsList swordOpts = m_swordMgr->getGlobalOptions();
for ( sword::OptionsList::iterator it = swordOpts.begin(); it != swordOpts.end(); it++ )
m_actionSwordOpts.append( new QAction( (*it).c_str(), QString::null, 0, this, 0 ) );
m_actionSwordOpts.sort();
// Initialize user interface
setCaption( tr( "Dagger" ) );
initUI();
connect( &m_tabs, SIGNAL(currentChanged(QWidget *)), this, SLOT( slotTextDisplayed(QWidget *)) );
connect( &m_autoScrollTimer, SIGNAL(timeout()), this, SLOT(slotNavNextVerse()) );
m_bibleIcon = new QPixmap( Resource::loadPixmap( "dagger/bibletext" ) );
m_commentaryIcon = new QPixmap( Resource::loadPixmap( "dagger/commentary" ) );
m_lexiconIcon = new QPixmap( Resource::loadPixmap( "dagger/lexicon" ) );
// Load initial configuration
QTimer::singleShot( 100, this, SLOT( initConfig() ) );
}
MainWindow::~MainWindow()
{
+ // Re-enable screen blanking if it was disabled
+ QCopEnvelope( "QPE/System", "setScreenSaverMode(int)" ) << QPEApplication::Enable;
+
// Save Sword options
m_config.setGroup( "Sword" );
m_config.writeEntry( "ModPath", m_modulePath );
for ( QAction *a = m_actionSwordOpts.first(); a; a = m_actionSwordOpts.next() )
m_config.writeEntry( a->text(), a->isOn() );
// Save configuration options
m_config.setGroup( "Config" );
m_config.writeEntry( "AlwaysOpenNew", m_alwaysOpenNew );
m_config.writeEntry( "AutoScroll", m_navToolbar->autoScrollRate() );
m_config.writeEntry( "DisableScreenBlanking", m_disableScreenBlank );
m_config.writeEntry( "CopyFormat", m_copyFormat );
m_config.writeEntry( "NavBar", m_actionViewNavToolbar->isOn() );
m_config.writeEntry( "NumVerses", m_numVerses );
m_config.writeEntry( "SearchBar", m_actionViewSearchToolbar->isOn() );
// Save text font
m_config.setGroup( "Font");
m_config.writeEntry( "Family", m_textFont.family() );
m_config.writeEntry( "Italic", m_textFont.italic() );
m_config.writeEntry( "Size", m_textFont.pointSize() );
m_config.writeEntry( "Weight", m_textFont.weight() );
@@ -148,53 +151,53 @@ bool MainWindow::eventFilter( QObject *obj, QEvent *event )
{
slotNavNextVerse();
return true;
}
}
return QWidget::eventFilter( obj, event );
}
void MainWindow::initUI()
{
setCentralWidget( &m_tabs );
m_tabs.installEventFilter( this );
setToolBarsMovable( false );
m_barDock = new QToolBar( this );
m_barDock->setHorizontalStretchable( true );
m_menuBar = new QMenuBar( m_barDock );
m_menuBar->setMargin( 0 );
// Allocate toolbars
m_navToolbar = new NavBar( this );
m_navToolbar->navBtnsEnable( false );
- connect( m_navToolbar, SIGNAL(prevChapter()), this, SLOT(slotNavPrevChapter()) );
+ connect( m_navToolbar, SIGNAL(prevPage()), this, SLOT(slotNavPrevPage()) );
connect( m_navToolbar, SIGNAL(prevVerse()), this, SLOT(slotNavPrevVerse()) );
connect( m_navToolbar, SIGNAL(keyChanged(const QString &)), this, SLOT(slotNavKeyChanged(const QString &)) );
connect( m_navToolbar, SIGNAL(nextVerse()), this, SLOT(slotNavNextVerse()) );
- connect( m_navToolbar, SIGNAL(nextChapter()), this, SLOT(slotNavNextChapter()) );
+ connect( m_navToolbar, SIGNAL(nextPage()), this, SLOT(slotNavNextPage()) );
connect( m_navToolbar, SIGNAL(autoScroll(bool)), this, SLOT(slotNavAutoScroll(bool)) );
connect( m_navToolbar, SIGNAL(scrollRateChanged(int)), this, SLOT(slotNavScrollRateChanged(int)) );
m_searchToolbar = new SearchBar( this );
connect( m_searchToolbar, SIGNAL(sigResultClicked(const QString &)), this, SLOT(slotSearchResultClicked(const QString &)) );
// Text menu
QPopupMenu *popup = new QPopupMenu( this );
QAction *a = new QAction( tr( "Open..." ), Resource::loadPixmap( "fileopen" ), QString::null, 0, this, 0 );
connect( a, SIGNAL(activated()), this, SLOT(slotTextOpen()) );
a->addTo( popup );
m_actionTextClose = new QAction( tr( "Close" ), Resource::loadPixmap( "close" ), QString::null, 0, this, 0 );
connect( m_actionTextClose, SIGNAL(activated()), this, SLOT(slotTextClose()) );
m_actionTextClose->addTo( popup );
popup->insertSeparator();
// TODO - need to implent
a = new QAction( tr( "Install..." ), Resource::loadPixmap( "install" ), QString::null, 0, this, 0 );
a->setEnabled( false );
connect( a, SIGNAL(activated()), this, SLOT(slotTextInstall()) );
a->addTo( popup );
@@ -311,49 +314,49 @@ void MainWindow::openModule( const QString &modulename, const QString &key )
// Set key if one is present
if ( !key.isNull() )
tw->setKey( key );
}
}
}
int MainWindow::findBookmark( const QString &bookmark )
{
int index = 3;
int id = m_bookmarkMenu->idAt( index );
while ( ( id != -1 ) && ( m_bookmarkMenu->text( id ) != bookmark ) )
{
++index;
id = m_bookmarkMenu->idAt( index );
}
return id;
}
void MainWindow::enableScreenBlanking( bool enable )
{
enable ? QCopEnvelope( "QPE/System", "setScreenSaverMode(int)" ) << QPEApplication::Enable
- : QCopEnvelope( "QPE/System", "setScreenSaverMode(int)" ) << QPEApplication::Disable;
+ : QCopEnvelope( "QPE/System", "setScreenSaverMode(int)" ) << QPEApplication::DisableSuspend;
}
void MainWindow::initConfig()
{
bool show;
m_config.setGroup( "Sword" );
for ( QAction *a = m_actionSwordOpts.first(); a; a = m_actionSwordOpts.next() )
{
show = m_config.readBoolEntry( a->text(), false );
a->setOn( show );
m_swordMgr->setGlobalOption ( a->text(), show ? "On" : "Off" );
}
// Display/hide toolbars based on last run
m_config.setGroup( "Config" );
m_alwaysOpenNew = m_config.readBoolEntry( "AlwaysOpenNew", false );
m_navToolbar->setAutoScrollRate( m_config.readNumEntry( "AutoScroll", 50 ) );
m_disableScreenBlank = m_config.readBoolEntry( "DisableScreenBlanking", false );
enableScreenBlanking( !m_disableScreenBlank );
m_copyFormat = m_config.readNumEntry( "CopyFormat", 0 );
show = m_config.readBoolEntry( "NavBar", false );
@@ -576,100 +579,100 @@ void MainWindow::slotBookmarkSelected()
openModule( module, key );
}
}
void MainWindow::slotViewSwordOption( bool enabled )
{
const QAction *action = reinterpret_cast<const QAction*>(sender());
m_swordMgr->setGlobalOption ( action->text(), enabled ? "On" : "Off" );
emit sigOptionChanged();
}
void MainWindow::slotViewNavToolbar( bool enabled )
{
enabled ? m_navToolbar->show()
: m_navToolbar->hide();
}
void MainWindow::slotViewSearchToolbar( bool enabled )
{
enabled ? m_searchToolbar->show()
: m_searchToolbar->hide();
}
-void MainWindow::slotNavPrevChapter()
+void MainWindow::slotNavPrevPage()
{
TextWidget *text = reinterpret_cast<TextWidget *>(m_tabs.currentWidget());
if ( text )
{
- text->prevChapter();
+ text->prevPage();
setCaption( QString( "%1 - Dagger" ).arg( text->getFullKey() ) );
m_navToolbar->setKey( text->getAbbrevKey() );
}
}
void MainWindow::slotNavPrevVerse()
{
TextWidget *text = reinterpret_cast<TextWidget *>(m_tabs.currentWidget());
if ( text )
{
text->prevVerse();
setCaption( QString( "%1 - Dagger" ).arg( text->getFullKey() ) );
m_navToolbar->setKey( text->getAbbrevKey() );
}
}
void MainWindow::slotNavKeyChanged( const QString &newKey )
{
QString key = newKey;
key.replace( QRegExp( "[-=.]" ), ":" );
TextWidget *text = reinterpret_cast<TextWidget *>(m_tabs.currentWidget());
if ( text )
{
text->setKey( key );
setCaption( QString( "%1 - Dagger" ).arg( text->getFullKey() ) );
}
}
void MainWindow::slotNavNextVerse()
{
TextWidget *text = reinterpret_cast<TextWidget *>(m_tabs.currentWidget());
if ( text )
{
text->nextVerse();
setCaption( QString( "%1 - Dagger" ).arg( text->getFullKey() ) );
m_navToolbar->setKey( text->getAbbrevKey() );
}
}
-void MainWindow::slotNavNextChapter()
+void MainWindow::slotNavNextPage()
{
TextWidget *text = reinterpret_cast<TextWidget *>(m_tabs.currentWidget());
if ( text )
{
- text->nextChapter();
+ text->nextPage();
setCaption( QString( "%1 - Dagger" ).arg( text->getFullKey() ) );
m_navToolbar->setKey( text->getAbbrevKey() );
}
}
void MainWindow::slotNavAutoScroll( bool enabled )
{
m_autoScrollTimer.stop();
if ( enabled )
m_autoScrollTimer.start( m_navToolbar->autoScrollRate() * 100 );
}
void MainWindow::slotNavScrollRateChanged( int newRate )
{
if ( m_autoScrollTimer.isActive() )
{
m_autoScrollTimer.stop();
m_autoScrollTimer.start( newRate * 100 );
}
}
void MainWindow::slotSearchResultClicked( const QString &key )
{