summaryrefslogtreecommitdiff
Side-by-side diff
Diffstat (more/less context) (show whitespace changes)
-rw-r--r--noncore/apps/dagger/ChangeLog8
-rw-r--r--noncore/apps/dagger/README8
-rw-r--r--noncore/apps/dagger/TODO7
-rw-r--r--noncore/apps/dagger/mainwindow.cpp62
-rw-r--r--noncore/apps/dagger/opie-dagger.control2
-rw-r--r--noncore/apps/dagger/searchbar.cpp2
6 files changed, 48 insertions, 41 deletions
diff --git a/noncore/apps/dagger/ChangeLog b/noncore/apps/dagger/ChangeLog
index 108419e..22b20d4 100644
--- a/noncore/apps/dagger/ChangeLog
+++ b/noncore/apps/dagger/ChangeLog
@@ -1,4 +1,12 @@
+2005-08-09 Dan Williams <drw@handhelds.org>
+
+ * Released version 0.9.2
+ * Added support for Sword v1.5.8
+ * Implemented morph tag cross-referencing
+ * Fix crash when last module is closed
+ * Fix display of key when module is opened
+
2004-04-22 Dan Williams <drw@handhelds.org>
* Released version 0.9.1
* Fixed the disabling of screen blanking
diff --git a/noncore/apps/dagger/README b/noncore/apps/dagger/README
index 00e9eed..47b8eee 100644
--- a/noncore/apps/dagger/README
+++ b/noncore/apps/dagger/README
@@ -1,16 +1,16 @@
/************************************************************************
/*
/* Opie - Dagger
/* ===============
-/* Version 0.9.1
+/* Version 0.9.2
/*
/* A Bible study/reader application
/*
/************************************************************************
---------------------------------------------
- Release Notes for Opie-Dagger - April, 2004
+ Release Notes for Opie-Dagger - August, 2005
---------------------------------------------
======================
= To-do =
@@ -24,9 +24,9 @@
In order to build opie-dagger, libsword needs to be present on
the build system along with the appropriate headers.
-- libsword source (best to use version 1.5.x or greater):
+- libsword source (requires version 1.5.8 or greater):
- http://www.crosswire.org/sword/
- the Sword library headers need to be located in an appropriate
include directory
@@ -47,9 +47,9 @@ the build system along with the appropriate headers.
======================
= Credits =
======================
-- Opie-Dagger is (C) 2004 Dan Williams
+- Opie-Dagger is (C) 2004, 2005 Dan Williams
======================
= Links =
======================
diff --git a/noncore/apps/dagger/TODO b/noncore/apps/dagger/TODO
index 1530bd6..21426aa 100644
--- a/noncore/apps/dagger/TODO
+++ b/noncore/apps/dagger/TODO
@@ -1,23 +1,26 @@
/************************************************************************
/*
/* Opie - Dagger
/* ===============
-/* Version 0.9.1
+/* Version 0.9.2
/*
/* A Bible study/reader application
/*
/************************************************************************
------------------------------------
-To-do for Opie-Dagger - April, 2004
+To-do for Opie-Dagger - August, 2005
------------------------------------
======================
= Current release =
======================
1. Implement module installation
+2. Fix support for other languages
+3. Fix display sleep prevention
+4. Implement footnote cross-referencing
======================
= Future releases =
======================
diff --git a/noncore/apps/dagger/mainwindow.cpp b/noncore/apps/dagger/mainwindow.cpp
index 1f2d521..f61df68 100644
--- a/noncore/apps/dagger/mainwindow.cpp
+++ b/noncore/apps/dagger/mainwindow.cpp
@@ -324,8 +324,10 @@ void MainWindow::openModule( const QString &modulename, const QString &key )
// Set key if one is present
if ( !key.isNull() )
tw->setKey( key );
+ setCaption( QString( "%1 - Dagger" ).arg( tw->getFullKey() ) );
+ m_navToolbar->setKey( tw->getAbbrevKey() );
}
}
}
@@ -633,14 +635,15 @@ void MainWindow::slotNavPrevVerse()
}
void MainWindow::slotNavKeyChanged( const QString &newKey )
{
- QString key = newKey;
- key.replace( QRegExp( "[-=.]" ), ":" );
-
TextWidget *text = reinterpret_cast<TextWidget *>(m_tabs.currentWidget());
if ( text )
{
+ QString key = newKey;
+ if ( text->isBibleText() )
+ key.replace( QRegExp( "[-=.]" ), ":" );
+
text->setKey( key );
setCaption( QString( "%1 - Dagger" ).arg( text->getFullKey() ) );
}
}
@@ -698,56 +701,49 @@ void MainWindow::slotSearchResultClicked( const QString &key )
void MainWindow::slotTextRefClicked( const QString &ref )
{
//printf( "Ref clicked: '%s'\n", ref.latin1() );
/*
-Ref clicked: 'type=Strongs value=G3482'
-Ref clicked: 'type=Strongs value=H07225'
-Ref clicked: 'type=morph class=x-Robinson:N-PRI value=N-PRI'
-Ref clicked: 'type=morph class=x-StrongsMorph:TH8804 value=TH8804'
+Ref clicked: 'passagestudy.jsp?action=showStrongs&type=Hebrew&value=07225'
+Ref clicked: 'passagestudy.jsp?action=showStrongs&type=Greek&value=602'
+Ref clicked: 'passagestudy.jsp?action=showMorph&type=x-Robinson%3AN-NSF&value=N-NSF'
+Ref clicked: 'passagestudy.jsp?action=showNote&type=n&value=1&module=KJV&passage=Genesis+1%3A5'
*/
//owarn << "Reference: " << ref << oendl;
if ( !ref.isNull() )
{
TextWidget *text = reinterpret_cast<TextWidget *>(m_tabs.currentWidget());
if ( text )
{
- // Parse type
- int pos = ref.find( "type=", 0, false ) + 5;
- QString typeStr = ref.mid( pos, ref.find( ' ', pos ) - pos );
-
- // Parse class (for morph. only)
- QString classStr;
- if ( typeStr == "morph" )
- {
- pos = ref.find( "class=", 0, false ) + 5;
- QString classStr = ref.mid( pos, ref.find( ' ', pos ) - pos );
+ // Parse action
+ int pos = ref.find( '&', 28 );
+ QString actionStr = ref.mid( 28, pos - 28 );
- // TODO - need to strip 'x-' from beginning and ':key' at end?
- }
+ // Parse type
+ pos = ref.find( "type=", pos, false ) + 5;
+ QString typeStr = ref.mid( pos, ref.find( '&', pos ) - pos );
// Parse value
pos = ref.find( "value=", 0, false ) + 6;
QString valueStr = ref.mid( pos, ref.find( ' ', pos ) - pos );
- if ( typeStr == "Strongs" )
+ if ( actionStr == "Strongs" )
{
- //Determine if is a Hebrew or Greek reference
- QString module;
- if ( valueStr.at( 0 ) == 'H' )
- module = "StrongsHebrew";
- else
- module = "StrongsGreek";
+ QString module = actionStr;
+ module.append( typeStr );
- // Get key
- QString key( valueStr );
- key.remove( 0, 1 );
// Open reference
- openModule( module, key );
+ openModule( module, valueStr );
+ }
+ else if ( actionStr == "Morph" )
+ {
+ QString module = typeStr.mid( 2, typeStr.find( '%', 2 ) - 2 );
+
+ // Open reference
+ openModule( module, valueStr );
}
- else if ( typeStr == "morph" )
+ else if ( actionStr == "Note" )
{
- QMessageBox::information( this, tr( "Morphological Tags" ),
- tr( "Morphological tag cross-referencing not implemented yet." ) );
+ // TODO
}
}
}
}
diff --git a/noncore/apps/dagger/opie-dagger.control b/noncore/apps/dagger/opie-dagger.control
index 4ded1f2..e613ddb 100644
--- a/noncore/apps/dagger/opie-dagger.control
+++ b/noncore/apps/dagger/opie-dagger.control
@@ -5,5 +5,5 @@ Section: opie/applications
Depends: task-opie-minimal, libopiecore2, libopieui2
Architecture: arm
Maintainer: Dan Williams (drw@handhelds.org)
Description: A Bible study program utilizing the Sword library.
-Version: 0.9.1$EXTRAVERSION
+Version: 0.9.2$EXTRAVERSION
diff --git a/noncore/apps/dagger/searchbar.cpp b/noncore/apps/dagger/searchbar.cpp
index b195f67..463a19f 100644
--- a/noncore/apps/dagger/searchbar.cpp
+++ b/noncore/apps/dagger/searchbar.cpp
@@ -90,9 +90,9 @@ SearchBar::SearchBar( QMainWindow *parent )
void SearchBar::setCurrModule( TextWidget *currText )
{
m_actionFind->setEnabled( ( m_searchText->text() != "" ) && currText );
- if ( !m_currText || ( currText->getModuleName() != m_currText->getModuleName() ) )
+ if ( !m_currText || !currText || ( currText->getModuleName() != m_currText->getModuleName() ) )
{
m_actionPrev->setEnabled( false );
m_resultList->clear();
m_resultList->setEnabled( false );