summaryrefslogtreecommitdiff
path: root/noncore/apps/odict/odict.cpp
Side-by-side diff
Diffstat (limited to 'noncore/apps/odict/odict.cpp') (more/less context) (show whitespace changes)
-rw-r--r--noncore/apps/odict/odict.cpp27
1 files changed, 21 insertions, 6 deletions
diff --git a/noncore/apps/odict/odict.cpp b/noncore/apps/odict/odict.cpp
index 9f9a8d9..cb9c4e0 100644
--- a/noncore/apps/odict/odict.cpp
+++ b/noncore/apps/odict/odict.cpp
@@ -43,19 +43,22 @@ ODict::ODict() : QMainWindow()
vbox = new QVBox( this );
setCaption( tr( "OPIE-Dictionary" ) );
setupMenus();
QHBox *hbox = new QHBox( vbox );
- QLabel* query_label = new QLabel( tr( "Query:" ) , hbox ); query_label->show();
+ QLabel* query_label = new QLabel( tr( "Query:" ) , hbox );
+ query_label->show();
query_le = new QLineEdit( hbox );
query_co = new QComboBox( hbox );
- connect( query_co , SIGNAL( activated(int) ), this, SLOT( slotMethodChanged(int) ) );
+ connect( query_co , SIGNAL( activated(const QString&) ), this, SLOT( slotMethodChanged(const QString&) ) );
ok_button = new QPushButton( tr( "&Ok" ), hbox );
connect( ok_button, SIGNAL( released() ), this, SLOT( slotStartQuery() ) );
+ top_name = new QLabel( vbox );
browser_top = new QTextBrowser( vbox );
+ bottom_name = new QLabel( vbox );
browser_bottom = new QTextBrowser( vbox );
ding = new DingWidget();
ding->loadValues();
loadConfig();
@@ -75,13 +78,13 @@ void ODict::loadConfig()
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
+//XXX slotMethodChanged( "1" ); //FIXME: this line should not contain a integer
}
void ODict::saveConfig()
{
Config cfg ( "odict" );
@@ -91,12 +94,14 @@ void ODict::saveConfig()
cfg.writeEntry( "regexp" , regexp );
cfg.writeEntry( "completewords" , completewords );
}
void ODict::slotStartQuery()
{
+ if ( !query_le->text( ).isEmpty() )
+ {
/*
* if the user has not yet defined a dictionary
*/
if ( !query_co->currentText() )
{
switch ( QMessageBox::information( this, tr( "OPIE-Dictionary" ),
@@ -119,21 +124,24 @@ void ODict::slotStartQuery()
* ok, the user has defined a dict
*/
QString querystring = query_le->text();
ding->setCaseSensitive( casesens );
ding->setCompleteWord( completewords );
ding->setDict( activated_name );
+ top_name->setText( ding->lang1_name );
+ bottom_name->setText( ding->lang2_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;
}
@@ -143,13 +151,12 @@ void ODict::slotSettings()
ConfigDlg dlg( this, "Config" , true);
if ( dlg.exec() == QDialog::Accepted )
{
dlg.writeEntries();
loadConfig();
}
- else qDebug( "abgebrochen" );
}
void ODict::slotSetParameter( int count )
{
if ( count == 0 )
{
@@ -173,15 +180,23 @@ void ODict::slotSetParameter( int count )
else
regexp = true;
}
else qWarning( "ERROR" );
}
-void ODict::slotMethodChanged( int /*methodnumber*/ )
+void ODict::slotMethodChanged( const QString& methodnumber )
{
- activated_name = query_co->currentText();
+ activated_name = methodnumber;
+
+ if ( activated_name != ding->loadedDict() )
+ ding->loadDict(activated_name);
+
+ top_name->setText( ding->lang1_name );
+ top_name->setAlignment( AlignHCenter );
+ bottom_name->setText( ding->lang2_name );
+ bottom_name->setAlignment( AlignHCenter );
}
void ODict::setupMenus()
{
menu = new QMenuBar( this );