summaryrefslogtreecommitdiff
Side-by-side diff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/apps/odict/configdlg.cpp23
-rw-r--r--noncore/apps/odict/searchmethoddlg.cpp77
-rw-r--r--noncore/apps/odict/searchmethoddlg.h13
3 files changed, 104 insertions, 9 deletions
diff --git a/noncore/apps/odict/configdlg.cpp b/noncore/apps/odict/configdlg.cpp
index 75dc735..2056457 100644
--- a/noncore/apps/odict/configdlg.cpp
+++ b/noncore/apps/odict/configdlg.cpp
@@ -27,4 +27,5 @@
#include <qlistview.h>
#include <qpushbutton.h>
+#include <qlineedit.h>
#include <opie/otabwidget.h>
@@ -47,6 +48,4 @@ ConfigDlg::ConfigDlg(QWidget *parent, const char *name, bool modal) : QDialog(pa
list = new QListView( hbox );
list->addColumn( tr( "Searchmethod" ) );
- QListViewItem *item = new QListViewItem( list );
- item->setText( 0, "foofooofoofoof" );
QVBox *vbox = new QVBox( hbox );
@@ -76,12 +75,26 @@ void ConfigDlg::slotNewMethod()
if ( dlg.exec() == QDialog::Accepted )
{
- //dlg.saveItem();
+ dlg.saveItem();
QListViewItem *item = new QListViewItem( list );
- item->setText( 0 , dlg.itemName );
+ item->setText( 0 , dlg.nameLE->text() );
}
else qDebug( "SearchMethodDlg abgebrochen" );
}
-void ConfigDlg::slotChangeMethod(){}
+void ConfigDlg::slotChangeMethod()
+{
+ if ( list->selectedItem() )
+ {
+ SearchMethodDlg dlg( this, "SearchMethodDlg", true, list->selectedItem()->text( 0 ) );
+ if ( dlg.exec() == QDialog::Accepted )
+ {
+ dlg.saveItem();
+ QListViewItem *item = new QListViewItem( list );
+ item->setText( 0 , dlg.nameLE->text() );
+ }
+ else qDebug( "SearchMethodDlg abgebrochen" );
+ }
+ else qDebug( "kein item angewählt" );
+}
void ConfigDlg::slotDeleteMethod()
diff --git a/noncore/apps/odict/searchmethoddlg.cpp b/noncore/apps/odict/searchmethoddlg.cpp
index cd8a58a..0572f11 100644
--- a/noncore/apps/odict/searchmethoddlg.cpp
+++ b/noncore/apps/odict/searchmethoddlg.cpp
@@ -26,11 +26,82 @@
#include <qpushbutton.h>
#include <qstring.h>
+#include <qlineedit.h>
-SearchMethodDlg::SearchMethodDlg(QWidget *parent, const char *name, bool modal) : QDialog(parent, name, modal)
+#include <opie/ofileselector.h>
+#include <opie/ofiledialog.h>
+
+SearchMethodDlg::SearchMethodDlg(QWidget *parent, const char *name, bool modal, QString itemname) : QDialog(parent, name, modal)
{
- setCaption( tr( "New Searchmethod" ) );
+ if( !itemname )
+ setCaption( tr( "New Searchmethod" ) );
+ else
+ {
+ setCaption( tr( "Change Searchmethod" ) );
+ itemName = itemname;
+ setupEntries(itemname);
+ }
+
+ QVBoxLayout *vbox_layout = new QVBoxLayout( this, 4,4,"vbox_layout" );
+ QVBox *vbox = new QVBox( this );
+
+ QHBox *hbox1 = new QHBox( vbox );
+ QLabel *nameLabel = new QLabel( tr( "Name:" ) , hbox1 );
+ nameLE = new QLineEdit( hbox1 );
+
+ QLabel *dictLabel = new QLabel( tr( "Dictionary file" ), vbox );
+ QHBox *hbox2 = new QHBox( vbox );
+ dictFileLE = new QLineEdit( hbox2 );
+ QPushButton *browseButton = new QPushButton( tr( "Browse" ) , hbox2 );
+ connect( browseButton, SIGNAL( clicked() ), this, SLOT( slotBrowse() ) );
+
+ QWidget *dummywidget = new QWidget( vbox );
+ QLabel *lag1 = new QLabel( tr( "Language 1" ),dummywidget);
+ QLabel *devider = new QLabel( tr( "Decollator" ),dummywidget);
+ QLabel *lag2 = new QLabel( tr( "Language 2" ),dummywidget);
+ lang1 = new QLineEdit( dummywidget );
+ lang2 = new QLineEdit( dummywidget );
+ trenner = new QLineEdit( dummywidget );
+ trenner->setText( "::" );
+
+ QGridLayout *grid = new QGridLayout( dummywidget, 2,3 );
+ grid->addWidget( lag1, 0,0 );
+ grid->addWidget( devider, 0,1 );
+ grid->addWidget( lag2, 0,2 );
+ grid->addWidget( lang1, 1,0 );
+ grid->addWidget( trenner, 1,1 );
+ grid->addWidget( lang2, 1,2 );
+
+ vbox_layout->addWidget( vbox );
- itemName = "foo";
showMaximized();
}
+void SearchMethodDlg::setupEntries( QString item )
+{
+ Config cfg( "odict" );
+ cfg.setGroup( itemName );
+ trenner->setText( "foooof" );
+//X trenner->setText( cfg.readEntry( "Seperator" ) );
+//X lang1->setText( cfg.readEntry( "Lang1" ) );
+//X lang2->setText( cfg.readEntry( "Lang2" ) );
+//X nameLE->setText( itemName );
+//X dictFileLE->setText( cfg.readEntry( "file" ) );
+}
+
+void SearchMethodDlg::slotBrowse()
+{
+ itemName=OFileDialog::getOpenFileName( OFileSelector::EXTENDED,"/home/carsten" );
+ dictFileLE->setText( itemName );
+}
+
+void SearchMethodDlg::saveItem()
+{
+ QString name = nameLE->text();
+ Config cfg( "odict" );
+ cfg.setGroup( name );
+ cfg.writeEntry( "Name", name );
+ cfg.writeEntry( "Seperator", trenner->text() );
+ cfg.writeEntry( "Lang1", lang1->text() );
+ cfg.writeEntry( "Lang2", lang2->text() );
+ cfg.writeEntry( "file", dictFileLE->text() );
+}
diff --git a/noncore/apps/odict/searchmethoddlg.h b/noncore/apps/odict/searchmethoddlg.h
index e277cfb..d98842f 100644
--- a/noncore/apps/odict/searchmethoddlg.h
+++ b/noncore/apps/odict/searchmethoddlg.h
@@ -9,4 +9,5 @@
class QWidget;
+class QLineEdit;
class OTabWidget;
class QListView;
@@ -23,7 +24,17 @@ class SearchMethodDlg : public QDialog
public:
- SearchMethodDlg(QWidget *parent, const char *name, bool modal=FALSE );
+ SearchMethodDlg(QWidget *parent, const char *name, bool modal=FALSE, QString itemname=0 );
QString itemName;
+ QLineEdit *nameLE;
+ QLineEdit *lang1, *lang2, *trenner;
+ void saveItem();
+
+ private:
+ QLineEdit *dictFileLE;
+ void setupEntries( QString );
+
+ private slots:
+ void slotBrowse();
};