summaryrefslogtreecommitdiff
authorharlekin <harlekin>2004-06-20 13:19:19 (UTC)
committer harlekin <harlekin>2004-06-20 13:19:19 (UTC)
commit9f4c73fe369f2a8052323c2b1ae21f3ce133b9fd (patch) (unidiff)
treee5e0e4eb966be59ef350ac92710682857b006e15
parent3d49080501c6619f9bb323be9935d28f4458530f (diff)
downloadopie-9f4c73fe369f2a8052323c2b1ae21f3ce133b9fd.zip
opie-9f4c73fe369f2a8052323c2b1ae21f3ce133b9fd.tar.gz
opie-9f4c73fe369f2a8052323c2b1ae21f3ce133b9fd.tar.bz2
BUGFIX: 0001325 - no double dialog start in odict, when using QDialog::exec don't use it together with QPEApplication::execDialog() but with QPEApplication::showDialog(), also fixed another bug where shadow entries where created after deletion of entries
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/apps/odict/configdlg.cpp15
-rw-r--r--noncore/apps/odict/searchmethoddlg.cpp4
2 files changed, 11 insertions, 8 deletions
diff --git a/noncore/apps/odict/configdlg.cpp b/noncore/apps/odict/configdlg.cpp
index 7fa6008..3d98f63 100644
--- a/noncore/apps/odict/configdlg.cpp
+++ b/noncore/apps/odict/configdlg.cpp
@@ -32,30 +32,30 @@ ConfigDlg::ConfigDlg(QWidget *parent, const char *name, bool modal) : QDialog(pa
32 QVBoxLayout *vbox_layout = new QVBoxLayout( this ); 32 QVBoxLayout *vbox_layout = new QVBoxLayout( this );
33 search_tab = new QWidget( this , "search_tab" ); 33 search_tab = new QWidget( this , "search_tab" );
34 QVBoxLayout *vbox_layout_searchtab = new QVBoxLayout( search_tab, 4 , 4 ,"blah" ); 34 QVBoxLayout *vbox_layout_searchtab = new QVBoxLayout( search_tab, 4 , 4 ,"blah" );
35 35
36 QHBox *hbox = new QHBox( search_tab ); 36 QHBox *hbox = new QHBox( search_tab );
37 list = new QListView( hbox ); 37 list = new QListView( hbox );
38 list->addColumn( tr( "Searchmethod" ) ); 38 list->addColumn( tr( "Searchmethod" ) );
39 loadSearchMethodNames(); 39 loadSearchMethodNames();
40 40
41 QVBox *vbox = new QVBox( hbox ); 41 QVBox *vbox = new QVBox( hbox );
42 new_button = new QPushButton( tr( "New" ) , vbox ); 42 new_button = new QPushButton( tr( "New" ) , vbox );
43 change_button = new QPushButton( tr( "Change" ) , vbox ); 43 change_button = new QPushButton( tr( "Change" ) , vbox );
44 delete_button = new QPushButton( tr( "Delete" ) , vbox ); 44 delete_button = new QPushButton( tr( "Delete" ) , vbox );
45 connect( new_button, SIGNAL( clicked() ), this, SLOT( slotNewMethod() ) ); 45 connect( new_button, SIGNAL( clicked() ), this, SLOT( slotNewMethod() ) );
46 connect( change_button, SIGNAL( clicked() ), this, SLOT( slotChangeMethod() )); 46 connect( change_button, SIGNAL( clicked() ), this, SLOT( slotChangeMethod() ));
47 connect( delete_button, SIGNAL( clicked() ), this, SLOT( slotDeleteMethod() )); 47 connect( delete_button, SIGNAL( clicked() ), this, SLOT( slotDeleteMethod() ));
48 48
49 vbox_layout_searchtab->addWidget( hbox ); 49 vbox_layout_searchtab->addWidget( hbox );
50 50
51 vbox_layout->addWidget( search_tab ); 51 vbox_layout->addWidget( search_tab );
52 52
53 QPEApplication::execDialog( this ); 53 QPEApplication::showDialog( this );
54} 54}
55 55
56void ConfigDlg::slotNewMethod() 56void ConfigDlg::slotNewMethod()
57{ 57{
58 SearchMethodDlg dlg( this, "SearchMethodDlg", true ); 58 SearchMethodDlg dlg( this, "SearchMethodDlg", true );
59 if ( dlg.exec() == QDialog::Accepted ) 59 if ( dlg.exec() == QDialog::Accepted )
60 { 60 {
61 dlg.saveItem(); 61 dlg.saveItem();
@@ -81,24 +81,27 @@ void ConfigDlg::slotChangeMethod()
81void ConfigDlg::slotDeleteMethod() 81void ConfigDlg::slotDeleteMethod()
82{ 82{
83 if ( list->selectedItem() ) 83 if ( list->selectedItem() )
84 { 84 {
85 Config cfg ( "odict" ); 85 Config cfg ( "odict" );
86 cfg.setGroup( "Method_"+list->selectedItem()->text(0) ); 86 cfg.setGroup( "Method_"+list->selectedItem()->text(0) );
87 cfg.clearGroup(); 87 cfg.clearGroup();
88 //FIXME: this only removes the entries but not the group itself 88 //FIXME: this only removes the entries but not the group itself
89 89
90 list->takeItem( list->selectedItem() ); 90 list->takeItem( list->selectedItem() );
91 } 91 }
92} 92}
93 93
94void ConfigDlg::loadSearchMethodNames() 94void ConfigDlg::loadSearchMethodNames()
95{ 95{
96 Config cfg( "odict" ); 96 Config cfg( "odict" );
97 QStringList groupListCfg = cfg.groupList().grep( "Method_" ); 97 QStringList groupListCfg = cfg.groupList().grep( "Method_" );
98 for ( QStringList::Iterator it = groupListCfg.begin() ; it != groupListCfg.end() ; ++it ) 98 for ( QStringList::Iterator it = groupListCfg.begin() ; it != groupListCfg.end() ; ++it )
99 { 99 {
100 QListViewItem *item = new QListViewItem( list );
101 cfg.setGroup( *it ); 100 cfg.setGroup( *it );
102 item->setText( 0 , cfg.readEntry( "Name" ) ); 101 QString name = cfg.readEntry( "Name" );
102 if ( name != QString::null ) {
103 QListViewItem *item = new QListViewItem( list );
104 item->setText( 0 , name );
105 }
103 } 106 }
104} 107}
diff --git a/noncore/apps/odict/searchmethoddlg.cpp b/noncore/apps/odict/searchmethoddlg.cpp
index 34e8b16..0425657 100644
--- a/noncore/apps/odict/searchmethoddlg.cpp
+++ b/noncore/apps/odict/searchmethoddlg.cpp
@@ -61,26 +61,26 @@ SearchMethodDlg::SearchMethodDlg(QWidget *parent, const char *name, bool modal,
61 grid->addWidget( devider, 0,1 ); 61 grid->addWidget( devider, 0,1 );
62 grid->addWidget( lag2, 0,2 ); 62 grid->addWidget( lag2, 0,2 );
63 grid->addWidget( lang1, 1,0 ); 63 grid->addWidget( lang1, 1,0 );
64 grid->addWidget( trenner, 1,1 ); 64 grid->addWidget( trenner, 1,1 );
65 grid->addWidget( lang2, 1,2 ); 65 grid->addWidget( lang2, 1,2 );
66 66
67 vbox_layout->addWidget( vbox ); 67 vbox_layout->addWidget( vbox );
68 68
69 QPEApplication::execDialog ( this );
70
71 if( !itemname ) 69 if( !itemname )
72 setCaption( tr( "New Searchmethod" ) ); 70 setCaption( tr( "New Searchmethod" ) );
73 else 71 else
74 { 72 {
75 setCaption( tr( "Change Searchmethod" ) ); 73 setCaption( tr( "Change Searchmethod" ) );
76 itemName = itemname; 74 itemName = itemname;
77 setupEntries(itemname); 75 setupEntries(itemname);
78 } 76 }
77
78 QPEApplication::showDialog ( this );
79} 79}
80 80
81void SearchMethodDlg::setupEntries( QString item ) 81void SearchMethodDlg::setupEntries( QString item )
82{ 82{
83 Config cfg( "odict" ); 83 Config cfg( "odict" );
84 cfg.setGroup( "Method_"+itemName ); 84 cfg.setGroup( "Method_"+itemName );
85 trenner->setText( cfg.readEntry( "Seperator" ) ); 85 trenner->setText( cfg.readEntry( "Seperator" ) );
86 lang1->setText( cfg.readEntry( "Lang1" ) ); 86 lang1->setText( cfg.readEntry( "Lang1" ) );