summaryrefslogtreecommitdiff
Side-by-side diff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/apps/odict/odict.cpp26
1 files changed, 25 insertions, 1 deletions
diff --git a/noncore/apps/odict/odict.cpp b/noncore/apps/odict/odict.cpp
index cc3148a..9f9a8d9 100644
--- a/noncore/apps/odict/odict.cpp
+++ b/noncore/apps/odict/odict.cpp
@@ -57,64 +57,88 @@ ODict::ODict() : QMainWindow()
ding = new DingWidget();
ding->loadValues();
loadConfig();
setCentralWidget( vbox );
}
void ODict::loadConfig()
{
Config cfg ( "odict" );
cfg.setGroup( "generalsettings" );
errorTol = cfg.readEntry( "errtol" ).toInt();
casesens = cfg.readEntry( "casesens" ).toInt();
regexp = cfg.readEntry( "regexp" ).toInt();
completewords = cfg.readEntry( "completewords" ).toInt();
QStringList groupListCfg = cfg.groupList().grep( "Method_" );
query_co->clear();
for ( QStringList::Iterator it = groupListCfg.begin() ; it != groupListCfg.end() ; ++it )
{
cfg.setGroup( *it );
query_co->insertItem( cfg.readEntry( "Name" ) );
}
- slotMethodChanged(1 ); //FIXME: this line should not contain a integer
+ slotMethodChanged( 1 ); //FIXME: this line should not contain a integer
}
void ODict::saveConfig()
{
Config cfg ( "odict" );
cfg.setGroup( "generalsettings" );
cfg.writeEntry( "errtol" , errorTol );
cfg.writeEntry( "casesens" , casesens );
cfg.writeEntry( "regexp" , regexp );
cfg.writeEntry( "completewords" , completewords );
}
void ODict::slotStartQuery()
{
+ /*
+ * if the user has not yet defined a dictionary
+ */
+ if ( !query_co->currentText() )
+ {
+ switch ( QMessageBox::information( this, tr( "OPIE-Dictionary" ),
+ tr( "No dictionary defined" ),
+ tr( "&Define one" ),
+ tr( "&Cancel" ),
+ 0, // Define a dict choosen
+ 1 ) ) // Cancel choosen
+ {
+
+ case 0:
+ slotSettings();
+ break;
+ case 1: // stop here
+ return;
+ }
+ }
+
+ /*
+ * ok, the user has defined a dict
+ */
QString querystring = query_le->text();
ding->setCaseSensitive( casesens );
ding->setCompleteWord( completewords );
ding->setDict( activated_name );
if ( activated_name != ding->loadedDict() )
ding->loadDict(activated_name);
BroswerContent test = ding->setText( querystring );
browser_top->setText( test.top );
browser_bottom->setText( test.bottom );
}
void ODict::slotSetErrorcount( int count )
{
errorTol = count;
}
void ODict::slotSettings()
{
ConfigDlg dlg( this, "Config" , true);
if ( dlg.exec() == QDialog::Accepted )