summaryrefslogtreecommitdiff
authoreilers <eilers>2003-03-07 14:33:36 (UTC)
committer eilers <eilers>2003-03-07 14:33:36 (UTC)
commiteeb28ead6d3050d662783696661d9360a049104f (patch) (unidiff)
tree3a9f27185ecddcd1fe7a9dd20db49f87b4841556
parent78a2773ef477a4ab7327350e5f1f6c07428ad8a4 (diff)
downloadopie-eeb28ead6d3050d662783696661d9360a049104f.zip
opie-eeb28ead6d3050d662783696661d9360a049104f.tar.gz
opie-eeb28ead6d3050d662783696661d9360a049104f.tar.bz2
Removed unused files and starting with WhatsThis..
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--core/pim/addressbook/addresssettings.cpp136
-rw-r--r--core/pim/addressbook/addresssettings.h47
-rw-r--r--core/pim/addressbook/addresssettingsbase.ui170
-rw-r--r--core/pim/addressbook/configdlg.cpp3
-rw-r--r--core/pim/addressbook/configdlg_base.ui75
-rw-r--r--core/pim/addressbook/contacteditor.cpp17
6 files changed, 92 insertions, 356 deletions
diff --git a/core/pim/addressbook/addresssettings.cpp b/core/pim/addressbook/addresssettings.cpp
deleted file mode 100644
index 2a9413c..0000000
--- a/core/pim/addressbook/addresssettings.cpp
+++ b/dev/null
@@ -1,136 +0,0 @@
1/**********************************************************************
2** Copyright (C) 2000 Trolltech AS. All rights reserved.
3**
4** This file is part of Qt Palmtop Environment.
5**
6** This file may be distributed and/or modified under the terms of the
7** GNU General Public License version 2 as published by the Free Software
8** Foundation and appearing in the file LICENSE.GPL included in the
9** packaging of this file.
10**
11** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
12** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
13**
14** See http://www.trolltech.com/gpl/ for GPL licensing information.
15**
16** Contact info@trolltech.com if any conditions of this licensing are
17** not clear to you.
18**
19**********************************************************************/
20
21
22#include "addresssettings.h"
23
24#include <qpe/config.h>
25#include <opie/ocontact.h>
26
27#include <qfile.h>
28#include <qlistbox.h>
29
30#include <stdlib.h>
31
32AddressSettings::AddressSettings( QWidget *parent, const char *name )
33 : AddressSettingsBase( parent, name, TRUE )
34{
35 init();
36}
37
38AddressSettings::~AddressSettings()
39{
40}
41
42void AddressSettings::init()
43{
44 QStringList slFields = OContact::trfields();
45 // Make this match what is in initFields
46 slFields.remove( tr("Name Title") );
47 slFields.remove( tr("First Name") );
48 slFields.remove( tr("Last Name") );
49 slFields.remove( tr("File As") );
50 slFields.remove( tr("Default Email") );
51 slFields.remove( tr("Notes") );
52 slFields.remove( tr("Gender") );
53
54
55 for( QStringList::Iterator it = slFields.begin();
56 it != slFields.end(); ++it ) {
57 fieldListBox->insertItem( *it );
58 }
59
60 Config cfg( "AddressBook" );
61
62 cfg.setGroup( "Version" );
63 int version;
64 version = cfg.readNumEntry( "version" );
65 if ( version >= ADDRESSVERSION ) {
66 int i = 0;
67 int p = 0;
68 cfg.setGroup( "ImportantCategory" );
69 QString zn = cfg.readEntry( "Category" + QString::number(i),
70 QString::null );
71 while ( !zn.isNull() ) {
72 for ( int m = i; m < (int)fieldListBox->count(); m++ ) {
73 if ( fieldListBox->text( m ) == zn ) {
74 if ( m != p ) {
75 fieldListBox->removeItem( m );
76 fieldListBox->insertItem( zn, p );
77 }
78 p++;
79 break;
80 }
81 }
82 zn = cfg.readEntry( "Category" + QString::number(++i),
83 QString::null );
84 }
85
86 fieldListBox->setCurrentItem( 0 );
87 } else {
88 QString str;
89 str = getenv("HOME");
90
91 str += "/Settings/AddressBook.conf";
92 QFile::remove( str );
93 }
94}
95
96void AddressSettings::itemUp()
97{
98 int i = fieldListBox->currentItem();
99 if ( i > 0 ) {
100 QString item = fieldListBox->currentText();
101 fieldListBox->removeItem( i );
102 fieldListBox->insertItem( item, i-1 );
103 fieldListBox->setCurrentItem( i-1 );
104 }
105}
106
107void AddressSettings::itemDown()
108{
109 int i = fieldListBox->currentItem();
110 if ( i < (int)fieldListBox->count() - 1 ) {
111 QString item = fieldListBox->currentText();
112 fieldListBox->removeItem( i );
113 fieldListBox->insertItem( item, i+1 );
114 fieldListBox->setCurrentItem( i+1 );
115 }
116}
117
118void AddressSettings::accept()
119{
120 save();
121 QDialog::accept();
122}
123
124
125void AddressSettings::save()
126{
127 Config cfg( "AddressBook" );
128 cfg.setGroup( "Version" );
129 // *** To change the version change it here...
130 cfg.writeEntry( "version", QString::number(ADDRESSVERSION) );
131 cfg.setGroup( "ImportantCategory" );
132
133 for ( int i = 0; i < (int)fieldListBox->count(); i++ ) {
134 cfg.writeEntry( "Category"+QString::number(i), fieldListBox->text(i) );
135 }
136}
diff --git a/core/pim/addressbook/addresssettings.h b/core/pim/addressbook/addresssettings.h
deleted file mode 100644
index 0fdfa77..0000000
--- a/core/pim/addressbook/addresssettings.h
+++ b/dev/null
@@ -1,47 +0,0 @@
1/**********************************************************************
2** Copyright (C) 2000 Trolltech AS. All rights reserved.
3**
4** This file is part of Qt Palmtop Environment.
5**
6** This file may be distributed and/or modified under the terms of the
7** GNU General Public License version 2 as published by the Free Software
8** Foundation and appearing in the file LICENSE.GPL included in the
9** packaging of this file.
10**
11** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
12** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
13**
14** See http://www.trolltech.com/gpl/ for GPL licensing information.
15**
16** Contact info@trolltech.com if any conditions of this licensing are
17** not clear to you.
18**
19**********************************************************************/
20
21#ifndef _ADDRESSSETTINGS_H_
22#define _ADDRESSSETTINGS_H_
23
24#include <qlist.h>
25#include <qstringlist.h>
26#include "addresssettingsbase.h"
27
28const int ADDRESSVERSION = 3;
29
30class AddressSettings : public AddressSettingsBase
31{
32 Q_OBJECT
33public:
34 AddressSettings( QWidget *parent = 0, const char *name = 0 );
35 ~AddressSettings();
36
37protected:
38 void accept();
39 virtual void itemUp();
40 virtual void itemDown();
41
42private:
43 void init();
44 void save();
45};
46
47#endif // _ADDRESSSETTINGS_H_
diff --git a/core/pim/addressbook/addresssettingsbase.ui b/core/pim/addressbook/addresssettingsbase.ui
deleted file mode 100644
index f0eb7e8..0000000
--- a/core/pim/addressbook/addresssettingsbase.ui
+++ b/dev/null
@@ -1,170 +0,0 @@
1<!DOCTYPE UI><UI>
2<class>AddressSettingsBase</class>
3<comment>/**********************************************************************
4** Copyright (C) 2001 Trolltech AS. All rights reserved.
5**
6** This file is part of Qt Palmtop Environment.
7**
8** This file may be distributed and/or modified under the terms of the
9** GNU General Public License version 2 as published by the Free Software
10** Foundation and appearing in the file LICENSE.GPL included in the
11** packaging of this file.
12**
13** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
14** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
15**
16** See http://www.trolltech.com/gpl/ for GPL licensing information.
17**
18** Contact info@trolltech.com if any conditions of this licensing are
19** not clear to you.
20**
21** $Id$
22**
23**********************************************************************/</comment>
24<widget>
25 <class>QDialog</class>
26 <property stdset="1">
27 <name>name</name>
28 <cstring>AddressSettingsBase</cstring>
29 </property>
30 <property stdset="1">
31 <name>geometry</name>
32 <rect>
33 <x>0</x>
34 <y>0</y>
35 <width>240</width>
36 <height>207</height>
37 </rect>
38 </property>
39 <property stdset="1">
40 <name>caption</name>
41 <string>Arrange Edit Fields</string>
42 </property>
43 <property>
44 <name>layoutMargin</name>
45 </property>
46 <property>
47 <name>layoutSpacing</name>
48 </property>
49 <grid>
50 <property stdset="1">
51 <name>margin</name>
52 <number>6</number>
53 </property>
54 <property stdset="1">
55 <name>spacing</name>
56 <number>6</number>
57 </property>
58 <widget row="1" column="0" rowspan="3" colspan="1" >
59 <class>QListBox</class>
60 <property stdset="1">
61 <name>name</name>
62 <cstring>fieldListBox</cstring>
63 </property>
64 </widget>
65 <widget row="0" column="0" rowspan="1" colspan="2" >
66 <class>QLabel</class>
67 <property stdset="1">
68 <name>name</name>
69 <cstring>lblExplain</cstring>
70 </property>
71 <property stdset="1">
72 <name>sizePolicy</name>
73 <sizepolicy>
74 <hsizetype>1</hsizetype>
75 <vsizetype>1</vsizetype>
76 </sizepolicy>
77 </property>
78 <property stdset="1">
79 <name>frameShape</name>
80 <enum>MShape</enum>
81 </property>
82 <property stdset="1">
83 <name>frameShadow</name>
84 <enum>MShadow</enum>
85 </property>
86 <property stdset="1">
87 <name>text</name>
88 <string>Select the field order:</string>
89 </property>
90 <property stdset="1">
91 <name>alignment</name>
92 <set>AlignTop|AlignLeft</set>
93 </property>
94 <property>
95 <name>hAlign</name>
96 </property>
97 <property>
98 <name>vAlign</name>
99 </property>
100 </widget>
101 <widget row="1" column="1" >
102 <class>QPushButton</class>
103 <property stdset="1">
104 <name>name</name>
105 <cstring>upButton</cstring>
106 </property>
107 <property stdset="1">
108 <name>text</name>
109 <string>Up</string>
110 </property>
111 <property stdset="1">
112 <name>autoRepeat</name>
113 <bool>true</bool>
114 </property>
115 </widget>
116 <widget row="2" column="1" >
117 <class>QPushButton</class>
118 <property stdset="1">
119 <name>name</name>
120 <cstring>downButton</cstring>
121 </property>
122 <property stdset="1">
123 <name>text</name>
124 <string>Down</string>
125 </property>
126 <property stdset="1">
127 <name>autoRepeat</name>
128 <bool>true</bool>
129 </property>
130 </widget>
131 <spacer row="3" column="1" >
132 <property>
133 <name>name</name>
134 <cstring>Spacer2</cstring>
135 </property>
136 <property stdset="1">
137 <name>orientation</name>
138 <enum>Vertical</enum>
139 </property>
140 <property stdset="1">
141 <name>sizeType</name>
142 <enum>Expanding</enum>
143 </property>
144 <property>
145 <name>sizeHint</name>
146 <size>
147 <width>20</width>
148 <height>20</height>
149 </size>
150 </property>
151 </spacer>
152 </grid>
153</widget>
154<connections>
155 <connection>
156 <sender>upButton</sender>
157 <signal>clicked()</signal>
158 <receiver>AddressSettingsBase</receiver>
159 <slot>itemUp()</slot>
160 </connection>
161 <connection>
162 <sender>downButton</sender>
163 <signal>clicked()</signal>
164 <receiver>AddressSettingsBase</receiver>
165 <slot>itemDown()</slot>
166 </connection>
167 <slot access="protected">itemUp()</slot>
168 <slot access="protected">itemDown()</slot>
169</connections>
170</UI>
diff --git a/core/pim/addressbook/configdlg.cpp b/core/pim/addressbook/configdlg.cpp
index f5c0c5b..f2f4141 100644
--- a/core/pim/addressbook/configdlg.cpp
+++ b/core/pim/addressbook/configdlg.cpp
@@ -1,148 +1,151 @@
1#include "configdlg.h" 1#include "configdlg.h"
2#include "ocontactfields.h" 2#include "ocontactfields.h"
3 3
4#include <qcheckbox.h> 4#include <qcheckbox.h>
5#include <qradiobutton.h> 5#include <qradiobutton.h>
6#include <qlistbox.h> 6#include <qlistbox.h>
7#include <qpushbutton.h> 7#include <qpushbutton.h>
8#include <qiconset.h> 8#include <qiconset.h>
9 9
10#include <qpe/resource.h> 10#include <qpe/resource.h>
11 11
12#include <opie/ocontact.h> 12#include <opie/ocontact.h>
13 13
14ConfigDlg::ConfigDlg( QWidget *parent, const char *name): 14ConfigDlg::ConfigDlg( QWidget *parent, const char *name):
15 ConfigDlg_Base(parent, name, true ) 15 ConfigDlg_Base(parent, name, true )
16{ 16{
17 contFields = OContactFields::trfields(); 17 contFields = OContactFields::trfields();
18 18
19 // We add all Fields into the Listbox 19 // We add all Fields into the Listbox
20 for (uint i=0; i < contFields.count(); i++) { 20 for (uint i=0; i < contFields.count(); i++) {
21 allFieldListBox->insertItem( contFields[i] ); 21 allFieldListBox->insertItem( contFields[i] );
22 } 22 }
23 23
24 // Reset Widget Flags: This was not changeable by designer :(
25 setWFlags ( WStyle_ContextHelp );
26
24 // Set Pics to Buttons and Tabs 27 // Set Pics to Buttons and Tabs
25 m_upButton->setIconSet( QIconSet( Resource::loadPixmap( "addressbook/up" ) ) ); 28 m_upButton->setIconSet( QIconSet( Resource::loadPixmap( "addressbook/up" ) ) );
26 m_downButton->setIconSet( QIconSet( Resource::loadPixmap( "addressbook/down" ) ) ); 29 m_downButton->setIconSet( QIconSet( Resource::loadPixmap( "addressbook/down" ) ) );
27 m_addButton->setIconSet( QIconSet( Resource::loadPixmap( "addressbook/add" ) ) ); 30 m_addButton->setIconSet( QIconSet( Resource::loadPixmap( "addressbook/add" ) ) );
28 m_removeButton->setIconSet( QIconSet( Resource::loadPixmap( "addressbook/sub" ) ) ); 31 m_removeButton->setIconSet( QIconSet( Resource::loadPixmap( "addressbook/sub" ) ) );
29 32
30 33
31 // Get the translation maps between Field ID and translated strings 34 // Get the translation maps between Field ID and translated strings
32 m_mapStrToID = OContactFields::trFieldsToId(); 35 m_mapStrToID = OContactFields::trFieldsToId();
33 m_mapIDToStr = OContactFields::idToTrFields(); 36 m_mapIDToStr = OContactFields::idToTrFields();
34 37
35 connect ( m_addButton, SIGNAL( clicked() ), this, SLOT( slotItemAdd() ) ); 38 connect ( m_addButton, SIGNAL( clicked() ), this, SLOT( slotItemAdd() ) );
36 connect ( m_removeButton, SIGNAL( clicked() ), this, SLOT( slotItemRemove() ) ); 39 connect ( m_removeButton, SIGNAL( clicked() ), this, SLOT( slotItemRemove() ) );
37 connect ( m_upButton, SIGNAL( clicked() ), this, SLOT( slotItemUp() ) ); 40 connect ( m_upButton, SIGNAL( clicked() ), this, SLOT( slotItemUp() ) );
38 connect ( m_downButton, SIGNAL( clicked() ), this, SLOT( slotItemDown() ) ); 41 connect ( m_downButton, SIGNAL( clicked() ), this, SLOT( slotItemDown() ) );
39} 42}
40 43
41void ConfigDlg::slotItemUp() 44void ConfigDlg::slotItemUp()
42{ 45{
43 qWarning( "void ConfigDlg::slotItemUp()" ); 46 qWarning( "void ConfigDlg::slotItemUp()" );
44 47
45 int i = fieldListBox->currentItem(); 48 int i = fieldListBox->currentItem();
46 if ( i > 0 ) { 49 if ( i > 0 ) {
47 QString item = fieldListBox->currentText(); 50 QString item = fieldListBox->currentText();
48 fieldListBox->removeItem( i ); 51 fieldListBox->removeItem( i );
49 fieldListBox->insertItem( item, i-1 ); 52 fieldListBox->insertItem( item, i-1 );
50 fieldListBox->setCurrentItem( i-1 ); 53 fieldListBox->setCurrentItem( i-1 );
51 } 54 }
52 55
53} 56}
54 57
55void ConfigDlg::slotItemDown() 58void ConfigDlg::slotItemDown()
56{ 59{
57 qWarning( "void ConfigDlg::slotItemDown()" ); 60 qWarning( "void ConfigDlg::slotItemDown()" );
58 61
59 int i = fieldListBox->currentItem(); 62 int i = fieldListBox->currentItem();
60 if ( i < (int)fieldListBox->count() - 1 ) { 63 if ( i < (int)fieldListBox->count() - 1 ) {
61 QString item = fieldListBox->currentText(); 64 QString item = fieldListBox->currentText();
62 fieldListBox->removeItem( i ); 65 fieldListBox->removeItem( i );
63 fieldListBox->insertItem( item, i+1 ); 66 fieldListBox->insertItem( item, i+1 );
64 fieldListBox->setCurrentItem( i+1 ); 67 fieldListBox->setCurrentItem( i+1 );
65 } 68 }
66} 69}
67 70
68void ConfigDlg::slotItemAdd() 71void ConfigDlg::slotItemAdd()
69{ 72{
70 qWarning( "void ConfigDlg::slotItemAdd()" ); 73 qWarning( "void ConfigDlg::slotItemAdd()" );
71 74
72 int i = allFieldListBox->currentItem(); 75 int i = allFieldListBox->currentItem();
73 if ( i > 0 ) { 76 if ( i > 0 ) {
74 QString item = allFieldListBox->currentText(); 77 QString item = allFieldListBox->currentText();
75 qWarning("ADding %s", item.latin1()); 78 qWarning("ADding %s", item.latin1());
76 fieldListBox->insertItem( item ); 79 fieldListBox->insertItem( item );
77 } 80 }
78} 81}
79 82
80void ConfigDlg::slotItemRemove() 83void ConfigDlg::slotItemRemove()
81{ 84{
82 qWarning( "void ConfigDlg::slotItemRemove()" ); 85 qWarning( "void ConfigDlg::slotItemRemove()" );
83 86
84 int i = fieldListBox->currentItem(); 87 int i = fieldListBox->currentItem();
85 if ( i > 0 ) { 88 if ( i > 0 ) {
86 fieldListBox->removeItem( i ); 89 fieldListBox->removeItem( i );
87 } 90 }
88} 91}
89 92
90void ConfigDlg::setConfig( const AbConfig& cnf ) 93void ConfigDlg::setConfig( const AbConfig& cnf )
91{ 94{
92 m_config = cnf; 95 m_config = cnf;
93 96
94 m_useRegExp->setChecked( m_config.useRegExp() ); 97 m_useRegExp->setChecked( m_config.useRegExp() );
95 m_useWildCard->setChecked( m_config.useWildCards() ); 98 m_useWildCard->setChecked( m_config.useWildCards() );
96 m_useQtMail->setChecked( m_config.useQtMail() ); 99 m_useQtMail->setChecked( m_config.useQtMail() );
97 m_useOpieMail->setChecked( m_config.useOpieMail() ); 100 m_useOpieMail->setChecked( m_config.useOpieMail() );
98 m_useCaseSensitive->setChecked( m_config.beCaseSensitive() ); 101 m_useCaseSensitive->setChecked( m_config.beCaseSensitive() );
99 102
100 switch( m_config.fontSize() ){ 103 switch( m_config.fontSize() ){
101 case 0: 104 case 0:
102 m_smallFont->setChecked( true ); 105 m_smallFont->setChecked( true );
103 m_normalFont->setChecked( false ); 106 m_normalFont->setChecked( false );
104 m_largeFont->setChecked( false ); 107 m_largeFont->setChecked( false );
105 break; 108 break;
106 case 1: 109 case 1:
107 m_smallFont->setChecked( false ); 110 m_smallFont->setChecked( false );
108 m_normalFont->setChecked( true ); 111 m_normalFont->setChecked( true );
109 m_largeFont->setChecked( false ); 112 m_largeFont->setChecked( false );
110 break; 113 break;
111 case 2: 114 case 2:
112 m_smallFont->setChecked( false ); 115 m_smallFont->setChecked( false );
113 m_normalFont->setChecked( false ); 116 m_normalFont->setChecked( false );
114 m_largeFont->setChecked( true ); 117 m_largeFont->setChecked( true );
115 break; 118 break;
116 } 119 }
117 120
118 for( uint i = 0; i < m_config.orderList().count(); i++ ) { 121 for( uint i = 0; i < m_config.orderList().count(); i++ ) {
119 fieldListBox -> insertItem ( m_mapIDToStr[ m_config.orderList()[i] ] ); 122 fieldListBox -> insertItem ( m_mapIDToStr[ m_config.orderList()[i] ] );
120 } 123 }
121 124
122 125
123} 126}
124 127
125AbConfig ConfigDlg::getConfig() 128AbConfig ConfigDlg::getConfig()
126{ 129{
127 m_config.setUseRegExp( m_useRegExp->isOn() ); 130 m_config.setUseRegExp( m_useRegExp->isOn() );
128 m_config.setUseWildCards( m_useWildCard->isOn() ); 131 m_config.setUseWildCards( m_useWildCard->isOn() );
129 m_config.setUseQtMail( m_useQtMail->isOn() ); 132 m_config.setUseQtMail( m_useQtMail->isOn() );
130 m_config.setUseOpieMail( m_useOpieMail->isOn() ); 133 m_config.setUseOpieMail( m_useOpieMail->isOn() );
131 m_config.setBeCaseSensitive( m_useCaseSensitive->isChecked() ); 134 m_config.setBeCaseSensitive( m_useCaseSensitive->isChecked() );
132 135
133 if ( m_smallFont->isChecked() ) 136 if ( m_smallFont->isChecked() )
134 m_config.setFontSize( 0 ); 137 m_config.setFontSize( 0 );
135 if ( m_normalFont->isChecked() ) 138 if ( m_normalFont->isChecked() )
136 m_config.setFontSize( 1 ); 139 m_config.setFontSize( 1 );
137 if ( m_largeFont->isChecked() ) 140 if ( m_largeFont->isChecked() )
138 m_config.setFontSize( 2 ); 141 m_config.setFontSize( 2 );
139 142
140 QValueList<int> orderlist; 143 QValueList<int> orderlist;
141 for( int i = 0; i < (int)fieldListBox->count(); i++ ) { 144 for( int i = 0; i < (int)fieldListBox->count(); i++ ) {
142 orderlist.append( m_mapStrToID[ fieldListBox->text(i) ] ); 145 orderlist.append( m_mapStrToID[ fieldListBox->text(i) ] );
143 } 146 }
144 m_config.setOrderList( orderlist ); 147 m_config.setOrderList( orderlist );
145 148
146 return m_config; 149 return m_config;
147} 150}
148 151
diff --git a/core/pim/addressbook/configdlg_base.ui b/core/pim/addressbook/configdlg_base.ui
index 8ae2578..308e138 100644
--- a/core/pim/addressbook/configdlg_base.ui
+++ b/core/pim/addressbook/configdlg_base.ui
@@ -1,547 +1,620 @@
1<!DOCTYPE UI><UI> 1<!DOCTYPE UI><UI>
2<class>ConfigDlg_Base</class> 2<class>ConfigDlg_Base</class>
3<author>Stefan Eilers</author> 3<author>Stefan Eilers</author>
4<include location="global">qwhatsthis.h</include>
4<widget> 5<widget>
5 <class>QDialog</class> 6 <class>QDialog</class>
6 <property stdset="1"> 7 <property stdset="1">
7 <name>name</name> 8 <name>name</name>
8 <cstring>Configuration</cstring> 9 <cstring>Configuration</cstring>
9 </property> 10 </property>
10 <property stdset="1"> 11 <property stdset="1">
11 <name>geometry</name> 12 <name>geometry</name>
12 <rect> 13 <rect>
13 <x>0</x> 14 <x>0</x>
14 <y>0</y> 15 <y>0</y>
15 <width>282</width> 16 <width>284</width>
16 <height>327</height> 17 <height>327</height>
17 </rect> 18 </rect>
18 </property> 19 </property>
19 <property stdset="1"> 20 <property stdset="1">
20 <name>sizePolicy</name> 21 <name>sizePolicy</name>
21 <sizepolicy> 22 <sizepolicy>
22 <hsizetype>5</hsizetype> 23 <hsizetype>5</hsizetype>
23 <vsizetype>5</vsizetype> 24 <vsizetype>5</vsizetype>
24 </sizepolicy> 25 </sizepolicy>
25 </property> 26 </property>
26 <property stdset="1"> 27 <property stdset="1">
27 <name>caption</name> 28 <name>caption</name>
28 <string>Configuration</string> 29 <string>Configuration</string>
29 </property> 30 </property>
30 <property stdset="1"> 31 <property stdset="1">
31 <name>sizeGripEnabled</name> 32 <name>sizeGripEnabled</name>
32 <bool>true</bool> 33 <bool>true</bool>
33 </property> 34 </property>
34 <property> 35 <property>
35 <name>layoutMargin</name> 36 <name>layoutMargin</name>
36 </property> 37 </property>
37 <vbox> 38 <vbox>
38 <property stdset="1"> 39 <property stdset="1">
39 <name>margin</name> 40 <name>margin</name>
40 <number>1</number> 41 <number>1</number>
41 </property> 42 </property>
42 <property stdset="1"> 43 <property stdset="1">
43 <name>spacing</name> 44 <name>spacing</name>
44 <number>6</number> 45 <number>6</number>
45 </property> 46 </property>
46 <widget> 47 <widget>
47 <class>QTabWidget</class> 48 <class>QTabWidget</class>
48 <property stdset="1"> 49 <property stdset="1">
49 <name>name</name> 50 <name>name</name>
50 <cstring>configDlg_base</cstring> 51 <cstring>configDlg_base</cstring>
51 </property> 52 </property>
52 <property stdset="1"> 53 <property stdset="1">
53 <name>sizePolicy</name> 54 <name>sizePolicy</name>
54 <sizepolicy> 55 <sizepolicy>
55 <hsizetype>7</hsizetype> 56 <hsizetype>7</hsizetype>
56 <vsizetype>7</vsizetype> 57 <vsizetype>7</vsizetype>
57 </sizepolicy> 58 </sizepolicy>
58 </property> 59 </property>
59 <property> 60 <property>
60 <name>layoutMargin</name> 61 <name>layoutMargin</name>
61 </property> 62 </property>
62 <property> 63 <property>
63 <name>layoutSpacing</name> 64 <name>layoutSpacing</name>
64 </property> 65 </property>
66 <property>
67 <name>whatsThis</name>
68 <string>Click on tab to select one</string>
69 </property>
65 <widget> 70 <widget>
66 <class>QWidget</class> 71 <class>QWidget</class>
67 <property stdset="1"> 72 <property stdset="1">
68 <name>name</name> 73 <name>name</name>
69 <cstring>Widget5</cstring> 74 <cstring>Widget5</cstring>
70 </property> 75 </property>
71 <attribute> 76 <attribute>
72 <name>title</name> 77 <name>title</name>
73 <string>Misc</string> 78 <string>Misc</string>
74 </attribute> 79 </attribute>
75 <vbox> 80 <vbox>
76 <property stdset="1"> 81 <property stdset="1">
77 <name>margin</name> 82 <name>margin</name>
78 <number>5</number> 83 <number>5</number>
79 </property> 84 </property>
80 <property stdset="1"> 85 <property stdset="1">
81 <name>spacing</name> 86 <name>spacing</name>
82 <number>6</number> 87 <number>6</number>
83 </property> 88 </property>
84 <widget> 89 <widget>
85 <class>QGroupBox</class> 90 <class>QGroupBox</class>
86 <property stdset="1"> 91 <property stdset="1">
87 <name>name</name> 92 <name>name</name>
88 <cstring>GroupBox2</cstring> 93 <cstring>GroupBox2</cstring>
89 </property> 94 </property>
90 <property stdset="1"> 95 <property stdset="1">
91 <name>title</name> 96 <name>title</name>
92 <string>Search Settings</string> 97 <string>Search Settings</string>
93 </property> 98 </property>
94 <vbox> 99 <vbox>
95 <property stdset="1"> 100 <property stdset="1">
96 <name>margin</name> 101 <name>margin</name>
97 <number>11</number> 102 <number>11</number>
98 </property> 103 </property>
99 <property stdset="1"> 104 <property stdset="1">
100 <name>spacing</name> 105 <name>spacing</name>
101 <number>6</number> 106 <number>6</number>
102 </property> 107 </property>
103 <widget> 108 <widget>
104 <class>QButtonGroup</class> 109 <class>QButtonGroup</class>
105 <property stdset="1"> 110 <property stdset="1">
106 <name>name</name> 111 <name>name</name>
107 <cstring>ButtonGroup1</cstring> 112 <cstring>ButtonGroup1</cstring>
108 </property> 113 </property>
109 <property stdset="1"> 114 <property stdset="1">
110 <name>title</name> 115 <name>title</name>
111 <string>Query Style</string> 116 <string>Query Style</string>
112 </property> 117 </property>
118 <property>
119 <name>whatsThis</name>
120 <string>Settings for the search query style</string>
121 </property>
113 <vbox> 122 <vbox>
114 <property stdset="1"> 123 <property stdset="1">
115 <name>margin</name> 124 <name>margin</name>
116 <number>11</number> 125 <number>11</number>
117 </property> 126 </property>
118 <property stdset="1"> 127 <property stdset="1">
119 <name>spacing</name> 128 <name>spacing</name>
120 <number>6</number> 129 <number>6</number>
121 </property> 130 </property>
122 <widget> 131 <widget>
123 <class>QRadioButton</class> 132 <class>QRadioButton</class>
124 <property stdset="1"> 133 <property stdset="1">
125 <name>name</name> 134 <name>name</name>
126 <cstring>m_useRegExp</cstring> 135 <cstring>m_useRegExp</cstring>
127 </property> 136 </property>
128 <property stdset="1"> 137 <property stdset="1">
129 <name>text</name> 138 <name>text</name>
130 <string>Use Regular Expressions</string> 139 <string>Use Regular Expressions</string>
131 </property> 140 </property>
141 <property>
142 <name>whatsThis</name>
143 <string>Search widget expects regular expressions if selected</string>
144 </property>
132 </widget> 145 </widget>
133 <widget> 146 <widget>
134 <class>QRadioButton</class> 147 <class>QRadioButton</class>
135 <property stdset="1"> 148 <property stdset="1">
136 <name>name</name> 149 <name>name</name>
137 <cstring>m_useWildCard</cstring> 150 <cstring>m_useWildCard</cstring>
138 </property> 151 </property>
139 <property stdset="1"> 152 <property stdset="1">
140 <name>text</name> 153 <name>text</name>
141 <string>Use Wildcards (*,?)</string> 154 <string>Use Wildcards (*,?)</string>
142 </property> 155 </property>
143 <property stdset="1"> 156 <property stdset="1">
144 <name>checked</name> 157 <name>checked</name>
145 <bool>true</bool> 158 <bool>true</bool>
146 </property> 159 </property>
160 <property>
161 <name>whatsThis</name>
162 <string>Search widget just expects simple wildcards</string>
163 </property>
147 </widget> 164 </widget>
148 </vbox> 165 </vbox>
149 </widget> 166 </widget>
150 <widget> 167 <widget>
151 <class>QCheckBox</class> 168 <class>QCheckBox</class>
152 <property stdset="1"> 169 <property stdset="1">
153 <name>name</name> 170 <name>name</name>
154 <cstring>m_useCaseSensitive</cstring> 171 <cstring>m_useCaseSensitive</cstring>
155 </property> 172 </property>
156 <property stdset="1"> 173 <property stdset="1">
157 <name>text</name> 174 <name>text</name>
158 <string>Case Sensitive</string> 175 <string>Case Sensitive</string>
159 </property> 176 </property>
177 <property>
178 <name>whatsThis</name>
179 <string>If selected, search differs between upper and lower chars</string>
180 </property>
160 </widget> 181 </widget>
161 </vbox> 182 </vbox>
162 </widget> 183 </widget>
163 <widget> 184 <widget>
164 <class>QButtonGroup</class> 185 <class>QButtonGroup</class>
165 <property stdset="1"> 186 <property stdset="1">
166 <name>name</name> 187 <name>name</name>
167 <cstring>ButtonGroup3</cstring> 188 <cstring>ButtonGroup3</cstring>
168 </property> 189 </property>
169 <property stdset="1"> 190 <property stdset="1">
170 <name>title</name> 191 <name>title</name>
171 <string>Font</string> 192 <string>Font</string>
172 </property> 193 </property>
194 <property>
195 <name>whatsThis</name>
196 <string></string>
197 </property>
173 <hbox> 198 <hbox>
174 <property stdset="1"> 199 <property stdset="1">
175 <name>margin</name> 200 <name>margin</name>
176 <number>11</number> 201 <number>11</number>
177 </property> 202 </property>
178 <property stdset="1"> 203 <property stdset="1">
179 <name>spacing</name> 204 <name>spacing</name>
180 <number>6</number> 205 <number>6</number>
181 </property> 206 </property>
182 <widget> 207 <widget>
183 <class>QRadioButton</class> 208 <class>QRadioButton</class>
184 <property stdset="1"> 209 <property stdset="1">
185 <name>name</name> 210 <name>name</name>
186 <cstring>m_smallFont</cstring> 211 <cstring>m_smallFont</cstring>
187 </property> 212 </property>
188 <property stdset="1"> 213 <property stdset="1">
189 <name>text</name> 214 <name>text</name>
190 <string>Small</string> 215 <string>Small</string>
191 </property> 216 </property>
217 <property>
218 <name>whatsThis</name>
219 <string>Font size for list- and card view</string>
220 </property>
192 </widget> 221 </widget>
193 <widget> 222 <widget>
194 <class>QRadioButton</class> 223 <class>QRadioButton</class>
195 <property stdset="1"> 224 <property stdset="1">
196 <name>name</name> 225 <name>name</name>
197 <cstring>m_normalFont</cstring> 226 <cstring>m_normalFont</cstring>
198 </property> 227 </property>
199 <property stdset="1"> 228 <property stdset="1">
200 <name>text</name> 229 <name>text</name>
201 <string>Normal</string> 230 <string>Normal</string>
202 </property> 231 </property>
203 <property stdset="1"> 232 <property stdset="1">
204 <name>checked</name> 233 <name>checked</name>
205 <bool>true</bool> 234 <bool>true</bool>
206 </property> 235 </property>
236 <property>
237 <name>whatsThis</name>
238 <string>Font size for list- and card view</string>
239 </property>
207 </widget> 240 </widget>
208 <widget> 241 <widget>
209 <class>QRadioButton</class> 242 <class>QRadioButton</class>
210 <property stdset="1"> 243 <property stdset="1">
211 <name>name</name> 244 <name>name</name>
212 <cstring>m_largeFont</cstring> 245 <cstring>m_largeFont</cstring>
213 </property> 246 </property>
214 <property stdset="1"> 247 <property stdset="1">
215 <name>text</name> 248 <name>text</name>
216 <string>Large</string> 249 <string>Large</string>
217 </property> 250 </property>
251 <property>
252 <name>whatsThis</name>
253 <string>Font size for list- and card view</string>
254 </property>
218 </widget> 255 </widget>
219 </hbox> 256 </hbox>
220 </widget> 257 </widget>
221 <spacer> 258 <spacer>
222 <property> 259 <property>
223 <name>name</name> 260 <name>name</name>
224 <cstring>Spacer3</cstring> 261 <cstring>Spacer3</cstring>
225 </property> 262 </property>
226 <property stdset="1"> 263 <property stdset="1">
227 <name>orientation</name> 264 <name>orientation</name>
228 <enum>Vertical</enum> 265 <enum>Vertical</enum>
229 </property> 266 </property>
230 <property stdset="1"> 267 <property stdset="1">
231 <name>sizeType</name> 268 <name>sizeType</name>
232 <enum>Expanding</enum> 269 <enum>Expanding</enum>
233 </property> 270 </property>
234 <property> 271 <property>
235 <name>sizeHint</name> 272 <name>sizeHint</name>
236 <size> 273 <size>
237 <width>20</width> 274 <width>20</width>
238 <height>20</height> 275 <height>20</height>
239 </size> 276 </size>
240 </property> 277 </property>
241 </spacer> 278 </spacer>
242 </vbox> 279 </vbox>
243 </widget> 280 </widget>
244 <widget> 281 <widget>
245 <class>QWidget</class> 282 <class>QWidget</class>
246 <property stdset="1"> 283 <property stdset="1">
247 <name>name</name> 284 <name>name</name>
248 <cstring>tab</cstring> 285 <cstring>tab</cstring>
249 </property> 286 </property>
250 <attribute> 287 <attribute>
251 <name>title</name> 288 <name>title</name>
252 <string>Mail</string> 289 <string>Mail</string>
253 </attribute> 290 </attribute>
254 <vbox> 291 <vbox>
255 <property stdset="1"> 292 <property stdset="1">
256 <name>margin</name> 293 <name>margin</name>
257 <number>5</number> 294 <number>5</number>
258 </property> 295 </property>
259 <property stdset="1"> 296 <property stdset="1">
260 <name>spacing</name> 297 <name>spacing</name>
261 <number>6</number> 298 <number>6</number>
262 </property> 299 </property>
263 <widget> 300 <widget>
264 <class>QButtonGroup</class> 301 <class>QButtonGroup</class>
265 <property stdset="1"> 302 <property stdset="1">
266 <name>name</name> 303 <name>name</name>
267 <cstring>ButtonGroup2</cstring> 304 <cstring>ButtonGroup2</cstring>
268 </property> 305 </property>
269 <property stdset="1"> 306 <property stdset="1">
270 <name>title</name> 307 <name>title</name>
271 <string>Mail</string> 308 <string>Mail</string>
272 </property> 309 </property>
310 <property>
311 <name>whatsThis</name>
312 <string>Fontsettings for list and card view</string>
313 </property>
273 <vbox> 314 <vbox>
274 <property stdset="1"> 315 <property stdset="1">
275 <name>margin</name> 316 <name>margin</name>
276 <number>11</number> 317 <number>11</number>
277 </property> 318 </property>
278 <property stdset="1"> 319 <property stdset="1">
279 <name>spacing</name> 320 <name>spacing</name>
280 <number>6</number> 321 <number>6</number>
281 </property> 322 </property>
282 <widget> 323 <widget>
283 <class>QRadioButton</class> 324 <class>QRadioButton</class>
284 <property stdset="1"> 325 <property stdset="1">
285 <name>name</name> 326 <name>name</name>
286 <cstring>m_useQtMail</cstring> 327 <cstring>m_useQtMail</cstring>
287 </property> 328 </property>
288 <property stdset="1"> 329 <property stdset="1">
289 <name>text</name> 330 <name>text</name>
290 <string>Prefer QT-Mail </string> 331 <string>Prefer QT-Mail </string>
291 </property> 332 </property>
292 <property stdset="1"> 333 <property stdset="1">
293 <name>checked</name> 334 <name>checked</name>
294 <bool>true</bool> 335 <bool>true</bool>
295 </property> 336 </property>
337 <property>
338 <name>whatsThis</name>
339 <string>Use Sharp's mail application if available</string>
340 </property>
296 </widget> 341 </widget>
297 <widget> 342 <widget>
298 <class>QRadioButton</class> 343 <class>QRadioButton</class>
299 <property stdset="1"> 344 <property stdset="1">
300 <name>name</name> 345 <name>name</name>
301 <cstring>m_useOpieMail</cstring> 346 <cstring>m_useOpieMail</cstring>
302 </property> 347 </property>
303 <property stdset="1"> 348 <property stdset="1">
304 <name>text</name> 349 <name>text</name>
305 <string>Prefer Opie-Mail</string> 350 <string>Prefer Opie-Mail</string>
306 </property> 351 </property>
352 <property>
353 <name>whatsThis</name>
354 <string>Use OPIE mail if installed</string>
355 </property>
307 </widget> 356 </widget>
308 <widget> 357 <widget>
309 <class>QLabel</class> 358 <class>QLabel</class>
310 <property stdset="1"> 359 <property stdset="1">
311 <name>name</name> 360 <name>name</name>
312 <cstring>TextLabel1</cstring> 361 <cstring>TextLabel1</cstring>
313 </property> 362 </property>
314 <property stdset="1"> 363 <property stdset="1">
315 <name>text</name> 364 <name>text</name>
316 <string>Notice: QT-Mail is just 365 <string>Notice: QT-Mail is just
317provided in the SHARP 366provided in the SHARP
318default ROM. Opie-Mail 367default ROM. Opie-Mail
319is provided free !</string> 368is provided free !</string>
320 </property> 369 </property>
321 </widget> 370 </widget>
322 </vbox> 371 </vbox>
323 </widget> 372 </widget>
324 <spacer> 373 <spacer>
325 <property> 374 <property>
326 <name>name</name> 375 <name>name</name>
327 <cstring>Spacer2</cstring> 376 <cstring>Spacer2</cstring>
328 </property> 377 </property>
329 <property stdset="1"> 378 <property stdset="1">
330 <name>orientation</name> 379 <name>orientation</name>
331 <enum>Vertical</enum> 380 <enum>Vertical</enum>
332 </property> 381 </property>
333 <property stdset="1"> 382 <property stdset="1">
334 <name>sizeType</name> 383 <name>sizeType</name>
335 <enum>Expanding</enum> 384 <enum>Expanding</enum>
336 </property> 385 </property>
337 <property> 386 <property>
338 <name>sizeHint</name> 387 <name>sizeHint</name>
339 <size> 388 <size>
340 <width>20</width> 389 <width>20</width>
341 <height>20</height> 390 <height>20</height>
342 </size> 391 </size>
343 </property> 392 </property>
344 </spacer> 393 </spacer>
345 </vbox> 394 </vbox>
346 </widget> 395 </widget>
347 <widget> 396 <widget>
348 <class>QWidget</class> 397 <class>QWidget</class>
349 <property stdset="1"> 398 <property stdset="1">
350 <name>name</name> 399 <name>name</name>
351 <cstring>tab</cstring> 400 <cstring>tab</cstring>
352 </property> 401 </property>
353 <attribute> 402 <attribute>
354 <name>title</name> 403 <name>title</name>
355 <string>Order</string> 404 <string>Order</string>
356 </attribute> 405 </attribute>
357 <vbox> 406 <vbox>
358 <property stdset="1"> 407 <property stdset="1">
359 <name>margin</name> 408 <name>margin</name>
360 <number>2</number> 409 <number>2</number>
361 </property> 410 </property>
362 <property stdset="1"> 411 <property stdset="1">
363 <name>spacing</name> 412 <name>spacing</name>
364 <number>2</number> 413 <number>2</number>
365 </property> 414 </property>
366 <widget> 415 <widget>
367 <class>QGroupBox</class> 416 <class>QGroupBox</class>
368 <property stdset="1"> 417 <property stdset="1">
369 <name>name</name> 418 <name>name</name>
370 <cstring>GroupBox9</cstring> 419 <cstring>GroupBox9</cstring>
371 </property> 420 </property>
372 <property stdset="1"> 421 <property stdset="1">
373 <name>title</name> 422 <name>title</name>
374 <string>Select Contact Order:</string> 423 <string>Select Contact Order:</string>
375 </property> 424 </property>
376 <grid> 425 <grid>
377 <property stdset="1"> 426 <property stdset="1">
378 <name>margin</name> 427 <name>margin</name>
379 <number>11</number> 428 <number>11</number>
380 </property> 429 </property>
381 <property stdset="1"> 430 <property stdset="1">
382 <name>spacing</name> 431 <name>spacing</name>
383 <number>6</number> 432 <number>6</number>
384 </property> 433 </property>
385 <widget row="0" column="2" > 434 <widget row="0" column="2" >
386 <class>QPushButton</class> 435 <class>QPushButton</class>
387 <property stdset="1"> 436 <property stdset="1">
388 <name>name</name> 437 <name>name</name>
389 <cstring>m_upButton</cstring> 438 <cstring>m_upButton</cstring>
390 </property> 439 </property>
391 <property stdset="1"> 440 <property stdset="1">
392 <name>sizePolicy</name> 441 <name>sizePolicy</name>
393 <sizepolicy> 442 <sizepolicy>
394 <hsizetype>1</hsizetype> 443 <hsizetype>1</hsizetype>
395 <vsizetype>0</vsizetype> 444 <vsizetype>0</vsizetype>
396 </sizepolicy> 445 </sizepolicy>
397 </property> 446 </property>
398 <property stdset="1"> 447 <property stdset="1">
399 <name>text</name> 448 <name>text</name>
400 <string>Up</string> 449 <string>Up</string>
401 </property> 450 </property>
402 <property stdset="1"> 451 <property stdset="1">
403 <name>autoRepeat</name> 452 <name>autoRepeat</name>
404 <bool>true</bool> 453 <bool>true</bool>
405 </property> 454 </property>
455 <property>
456 <name>whatsThis</name>
457 <string>Move selected attribute one line up</string>
458 </property>
406 </widget> 459 </widget>
407 <widget row="1" column="2" > 460 <widget row="1" column="2" >
408 <class>QPushButton</class> 461 <class>QPushButton</class>
409 <property stdset="1"> 462 <property stdset="1">
410 <name>name</name> 463 <name>name</name>
411 <cstring>m_downButton</cstring> 464 <cstring>m_downButton</cstring>
412 </property> 465 </property>
413 <property stdset="1"> 466 <property stdset="1">
414 <name>sizePolicy</name> 467 <name>sizePolicy</name>
415 <sizepolicy> 468 <sizepolicy>
416 <hsizetype>1</hsizetype> 469 <hsizetype>1</hsizetype>
417 <vsizetype>0</vsizetype> 470 <vsizetype>0</vsizetype>
418 </sizepolicy> 471 </sizepolicy>
419 </property> 472 </property>
420 <property stdset="1"> 473 <property stdset="1">
421 <name>text</name> 474 <name>text</name>
422 <string>Down</string> 475 <string>Down</string>
423 </property> 476 </property>
424 <property stdset="1"> 477 <property stdset="1">
425 <name>autoRepeat</name> 478 <name>autoRepeat</name>
426 <bool>true</bool> 479 <bool>true</bool>
427 </property> 480 </property>
481 <property>
482 <name>whatsThis</name>
483 <string>Move selected attribute one line down</string>
484 </property>
428 </widget> 485 </widget>
429 <widget row="4" column="0" rowspan="1" colspan="2" > 486 <widget row="4" column="0" rowspan="1" colspan="2" >
430 <class>QListBox</class> 487 <class>QListBox</class>
431 <property stdset="1"> 488 <property stdset="1">
432 <name>name</name> 489 <name>name</name>
433 <cstring>allFieldListBox</cstring> 490 <cstring>allFieldListBox</cstring>
434 </property> 491 </property>
435 <property stdset="1"> 492 <property stdset="1">
436 <name>sizePolicy</name> 493 <name>sizePolicy</name>
437 <sizepolicy> 494 <sizepolicy>
438 <hsizetype>7</hsizetype> 495 <hsizetype>7</hsizetype>
439 <vsizetype>7</vsizetype> 496 <vsizetype>7</vsizetype>
440 </sizepolicy> 497 </sizepolicy>
441 </property> 498 </property>
499 <property>
500 <name>whatsThis</name>
501 <string>List of all available attributes</string>
502 </property>
442 </widget> 503 </widget>
443 <widget row="3" column="0" > 504 <widget row="3" column="0" >
444 <class>QPushButton</class> 505 <class>QPushButton</class>
445 <property stdset="1"> 506 <property stdset="1">
446 <name>name</name> 507 <name>name</name>
447 <cstring>m_addButton</cstring> 508 <cstring>m_addButton</cstring>
448 </property> 509 </property>
449 <property stdset="1"> 510 <property stdset="1">
450 <name>sizePolicy</name> 511 <name>sizePolicy</name>
451 <sizepolicy> 512 <sizepolicy>
452 <hsizetype>1</hsizetype> 513 <hsizetype>1</hsizetype>
453 <vsizetype>0</vsizetype> 514 <vsizetype>0</vsizetype>
454 </sizepolicy> 515 </sizepolicy>
455 </property> 516 </property>
456 <property stdset="1"> 517 <property stdset="1">
457 <name>text</name> 518 <name>text</name>
458 <string>Add</string> 519 <string>Add</string>
459 </property> 520 </property>
521 <property>
522 <name>whatsThis</name>
523 <string>Add selected attribute from list below to the upper list</string>
524 </property>
460 </widget> 525 </widget>
461 <widget row="3" column="1" > 526 <widget row="3" column="1" >
462 <class>QPushButton</class> 527 <class>QPushButton</class>
463 <property stdset="1"> 528 <property stdset="1">
464 <name>name</name> 529 <name>name</name>
465 <cstring>m_removeButton</cstring> 530 <cstring>m_removeButton</cstring>
466 </property> 531 </property>
467 <property stdset="1"> 532 <property stdset="1">
468 <name>sizePolicy</name> 533 <name>sizePolicy</name>
469 <sizepolicy> 534 <sizepolicy>
470 <hsizetype>1</hsizetype> 535 <hsizetype>1</hsizetype>
471 <vsizetype>0</vsizetype> 536 <vsizetype>0</vsizetype>
472 </sizepolicy> 537 </sizepolicy>
473 </property> 538 </property>
474 <property stdset="1"> 539 <property stdset="1">
475 <name>text</name> 540 <name>text</name>
476 <string>Remove</string> 541 <string>Remove</string>
477 </property> 542 </property>
543 <property>
544 <name>whatsThis</name>
545 <string>Remove the selected attribute from the upper list</string>
546 </property>
478 </widget> 547 </widget>
479 <spacer row="2" column="2" > 548 <spacer row="2" column="2" >
480 <property> 549 <property>
481 <name>name</name> 550 <name>name</name>
482 <cstring>Spacer23</cstring> 551 <cstring>Spacer23</cstring>
483 </property> 552 </property>
484 <property stdset="1"> 553 <property stdset="1">
485 <name>orientation</name> 554 <name>orientation</name>
486 <enum>Vertical</enum> 555 <enum>Vertical</enum>
487 </property> 556 </property>
488 <property stdset="1"> 557 <property stdset="1">
489 <name>sizeType</name> 558 <name>sizeType</name>
490 <enum>Expanding</enum> 559 <enum>Expanding</enum>
491 </property> 560 </property>
492 <property> 561 <property>
493 <name>sizeHint</name> 562 <name>sizeHint</name>
494 <size> 563 <size>
495 <width>20</width> 564 <width>20</width>
496 <height>20</height> 565 <height>20</height>
497 </size> 566 </size>
498 </property> 567 </property>
499 </spacer> 568 </spacer>
500 <spacer row="3" column="2" rowspan="2" colspan="1" > 569 <spacer row="3" column="2" rowspan="2" colspan="1" >
501 <property> 570 <property>
502 <name>name</name> 571 <name>name</name>
503 <cstring>Spacer2_2</cstring> 572 <cstring>Spacer2_2</cstring>
504 </property> 573 </property>
505 <property stdset="1"> 574 <property stdset="1">
506 <name>orientation</name> 575 <name>orientation</name>
507 <enum>Vertical</enum> 576 <enum>Vertical</enum>
508 </property> 577 </property>
509 <property stdset="1"> 578 <property stdset="1">
510 <name>sizeType</name> 579 <name>sizeType</name>
511 <enum>Expanding</enum> 580 <enum>Expanding</enum>
512 </property> 581 </property>
513 <property> 582 <property>
514 <name>sizeHint</name> 583 <name>sizeHint</name>
515 <size> 584 <size>
516 <width>20</width> 585 <width>20</width>
517 <height>20</height> 586 <height>20</height>
518 </size> 587 </size>
519 </property> 588 </property>
520 </spacer> 589 </spacer>
521 <widget row="0" column="0" rowspan="3" colspan="2" > 590 <widget row="0" column="0" rowspan="3" colspan="2" >
522 <class>QListBox</class> 591 <class>QListBox</class>
523 <property stdset="1"> 592 <property stdset="1">
524 <name>name</name> 593 <name>name</name>
525 <cstring>fieldListBox</cstring> 594 <cstring>fieldListBox</cstring>
526 </property> 595 </property>
527 <property stdset="1"> 596 <property stdset="1">
528 <name>sizePolicy</name> 597 <name>sizePolicy</name>
529 <sizepolicy> 598 <sizepolicy>
530 <hsizetype>7</hsizetype> 599 <hsizetype>7</hsizetype>
531 <vsizetype>7</vsizetype> 600 <vsizetype>7</vsizetype>
532 </sizepolicy> 601 </sizepolicy>
533 </property> 602 </property>
603 <property>
604 <name>whatsThis</name>
605 <string>Order (up -&gt; down) defines the primary contact shown in the second column of the list view</string>
606 </property>
534 </widget> 607 </widget>
535 </grid> 608 </grid>
536 </widget> 609 </widget>
537 </vbox> 610 </vbox>
538 </widget> 611 </widget>
539 </widget> 612 </widget>
540 </vbox> 613 </vbox>
541</widget> 614</widget>
542<tabstops> 615<tabstops>
543 <tabstop>configDlg_base</tabstop> 616 <tabstop>configDlg_base</tabstop>
544 <tabstop>m_useQtMail</tabstop> 617 <tabstop>m_useQtMail</tabstop>
545 <tabstop>m_useOpieMail</tabstop> 618 <tabstop>m_useOpieMail</tabstop>
546</tabstops> 619</tabstops>
547</UI> 620</UI>
diff --git a/core/pim/addressbook/contacteditor.cpp b/core/pim/addressbook/contacteditor.cpp
index 0b65a10..df97b85 100644
--- a/core/pim/addressbook/contacteditor.cpp
+++ b/core/pim/addressbook/contacteditor.cpp
@@ -1,974 +1,987 @@
1/* 1/*
2 * Copyright (c) 2002 Michael R. Crawford <mike@tuxnami.org> 2 * Copyright (c) 2002 Michael R. Crawford <mike@tuxnami.org>
3 * Copyright (C) 2002 by Stefan Eilers (eilers.stefan@epost.de) 3 * Copyright (C) 2002 by Stefan Eilers (eilers.stefan@epost.de)
4 * 4 *
5 * This file is an add-on for the OPIE Palmtop Environment 5 * This file is an add-on for the OPIE Palmtop Environment
6 * 6 *
7 * This file may be distributed and/or modified under the terms of the 7 * This file may be distributed and/or modified under the terms of the
8 * GNU General Public License version 2 as published by the Free Software 8 * GNU General Public License version 2 as published by the Free Software
9 * Foundation and appearing in the file LICENSE.GPL included in the pacakaging 9 * Foundation and appearing in the file LICENSE.GPL included in the pacakaging
10 * of this file. 10 * of this file.
11 * 11 *
12 * This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE 12 * This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
13 * WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. 13 * WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
14 * 14 *
15 * 15 *
16 * This is a rewrite of the abeditor.h file, modified to provide a more 16 * This is a rewrite of the abeditor.h file, modified to provide a more
17 * intuitive interface to TrollTech's original Address Book editor. This 17 * intuitive interface to TrollTech's original Address Book editor. This
18 * is made to operate exactly in interface with the exception of name. 18 * is made to operate exactly in interface with the exception of name.
19 * 19 *
20 */ 20 */
21 21
22#include "contacteditor.h" 22#include "contacteditor.h"
23#include "addresspicker.h" 23#include "addresspicker.h"
24#include "ocontactfields.h" 24#include "ocontactfields.h"
25 25
26#include <qpe/categoryselect.h> 26#include <qpe/categoryselect.h>
27#include <qpe/qpeapplication.h> 27#include <qpe/qpeapplication.h>
28#include <qpe/qpedialog.h> 28#include <qpe/qpedialog.h>
29#include <qpe/timeconversion.h> 29#include <qpe/timeconversion.h>
30#include <opie/ocontact.h> 30#include <opie/ocontact.h>
31#include <qpe/resource.h> 31#include <qpe/resource.h>
32 32
33#include <qcombobox.h> 33#include <qcombobox.h>
34#include <qlabel.h> 34#include <qlabel.h>
35#include <qtabwidget.h> 35#include <qtabwidget.h>
36#include <qlayout.h> 36#include <qlayout.h>
37#include <qlineedit.h> 37#include <qlineedit.h>
38#include <qmultilineedit.h> 38#include <qmultilineedit.h>
39#include <qscrollview.h> 39#include <qscrollview.h>
40#include <qtoolbutton.h> 40#include <qtoolbutton.h>
41#include <qpushbutton.h> 41#include <qpushbutton.h>
42#include <qmainwindow.h> 42#include <qmainwindow.h>
43#include <qvaluelist.h> 43#include <qvaluelist.h>
44#include <qpopupmenu.h> 44#include <qpopupmenu.h>
45#include <qlistbox.h> 45#include <qlistbox.h>
46#include <qhbox.h> 46#include <qhbox.h>
47#include <qaction.h> 47#include <qaction.h>
48#include <qiconset.h> 48#include <qiconset.h>
49#include <qmessagebox.h> 49#include <qmessagebox.h>
50#include <qwhatsthis.h>
50 51
51#include <assert.h> 52#include <assert.h>
52 53
53static inline bool containsAlphaNum( const QString &str ); 54static inline bool containsAlphaNum( const QString &str );
54static inline bool constainsWhiteSpace( const QString &str ); 55static inline bool constainsWhiteSpace( const QString &str );
55 56
56// helper functions, convert our comma delimited list to proper 57// helper functions, convert our comma delimited list to proper
57// file format... 58// file format...
58void parseEmailFrom( const QString &txt, QString &strDefaultEmail, 59void parseEmailFrom( const QString &txt, QString &strDefaultEmail,
59 QString &strAll ); 60 QString &strAll );
60 61
61// helper convert from file format to comma delimited... 62// helper convert from file format to comma delimited...
62void parseEmailTo( const QString &strDefaultEmail, 63void parseEmailTo( const QString &strDefaultEmail,
63 const QString &strOtherEmail, QString &strBack ); 64 const QString &strOtherEmail, QString &strBack );
64 65
65 ContactEditor::ContactEditor(const OContact &entry, 66 ContactEditor::ContactEditor(const OContact &entry,
66 QWidget *parent, 67 QWidget *parent,
67 const char *name, 68 const char *name,
68 WFlags fl ) 69 WFlags )
69 : QDialog( parent, name, TRUE, fl ), 70 : QDialog( parent, name, TRUE, WStyle_ContextHelp ),
70 defaultEmailChooserPosition( -1 ), 71 defaultEmailChooserPosition( -1 ),
71 m_personalView ( false ), 72 m_personalView ( false ),
72 cmbDefaultEmail( 0 ), 73 cmbDefaultEmail( 0 ),
73 initializing ( false ) 74 initializing ( false )
74{ 75{
75 76
76 initializing = true; 77 initializing = true;
77 78
78 init(); 79 init();
79 setEntry( entry ); 80 setEntry( entry );
80 // cmbDefaultEmail = 0; 81 // cmbDefaultEmail = 0;
81 // defaultEmailChooserPosition = -1; 82 // defaultEmailChooserPosition = -1;
82 83
83 initializing = false; 84 initializing = false;
84} 85}
85 86
86ContactEditor::~ContactEditor() { 87ContactEditor::~ContactEditor() {
87} 88}
88 89
89void ContactEditor::init() { 90void ContactEditor::init() {
90 qWarning("init() START"); 91 qWarning("init() START");
91 92
92 uint i = 0; 93 uint i = 0;
93 94
94 QStringList trlChooserNames; 95 QStringList trlChooserNames;
95 96
96 for (i = 0; i <= 6; i++) { 97 for (i = 0; i <= 6; i++) {
97 slHomeAddress.append( "" ); 98 slHomeAddress.append( "" );
98 slBusinessAddress.append( "" ); 99 slBusinessAddress.append( "" );
99 } 100 }
100 101
101 trlChooserNames = OContactFields::trphonefields( false ); 102 trlChooserNames = OContactFields::trphonefields( false );
102 slChooserNames = OContactFields::untrphonefields( false ); 103 slChooserNames = OContactFields::untrphonefields( false );
103 slDynamicEntries = OContactFields::untrdetailsfields( false ); 104 slDynamicEntries = OContactFields::untrdetailsfields( false );
104 trlDynamicEntries = OContactFields::trdetailsfields( false ); 105 trlDynamicEntries = OContactFields::trdetailsfields( false );
105 106
106 // Ok, we have to remove elements from the list of dynamic entries 107 // Ok, we have to remove elements from the list of dynamic entries
107 // which are now stored in special (not dynamic) widgets.. 108 // which are now stored in special (not dynamic) widgets..
108 // Otherwise we will get problems with field assignments! (se) 109 // Otherwise we will get problems with field assignments! (se)
109 slDynamicEntries.remove("Anniversary"); 110 slDynamicEntries.remove("Anniversary");
110 slDynamicEntries.remove("Birthday"); 111 slDynamicEntries.remove("Birthday");
111 slDynamicEntries.remove("Gender"); 112 slDynamicEntries.remove("Gender");
112 113
113 // The same with translated fields.. But I will 114 // The same with translated fields.. But I will
114 // use the translation map to avoid mismatches.. 115 // use the translation map to avoid mismatches..
115 QMap<int, QString> translMap = OContactFields::idToTrFields(); 116 QMap<int, QString> translMap = OContactFields::idToTrFields();
116 trlDynamicEntries.remove( translMap[Qtopia::Anniversary] ); 117 trlDynamicEntries.remove( translMap[Qtopia::Anniversary] );
117 trlDynamicEntries.remove( translMap[Qtopia::Birthday] ); 118 trlDynamicEntries.remove( translMap[Qtopia::Birthday] );
118 trlDynamicEntries.remove( translMap[Qtopia::Gender] ); 119 trlDynamicEntries.remove( translMap[Qtopia::Gender] );
119 120
120 // Last Check to be sure.. 121 // Last Check to be sure..
121 assert( slDynamicEntries.count() == trlDynamicEntries.count() ); 122 assert( slDynamicEntries.count() == trlDynamicEntries.count() );
122 assert( slChooserNames.count() == trlChooserNames.count() ); 123 assert( slChooserNames.count() == trlChooserNames.count() );
123 124
124 for (i = 0; i < slChooserNames.count(); i++) 125 for (i = 0; i < slChooserNames.count(); i++)
125 slChooserValues.append(""); 126 slChooserValues.append("");
126 127
127 128
128 QVBoxLayout *vb = new QVBoxLayout( this ); 129 QVBoxLayout *vb = new QVBoxLayout( this );
129 130
130 tabMain = new QTabWidget( this ); 131 tabMain = new QTabWidget( this );
131 vb->addWidget( tabMain ); 132 vb->addWidget( tabMain );
132 133
133 QWidget *tabViewport = new QWidget ( tabMain ); 134 QWidget *tabViewport = new QWidget ( tabMain );
134 135
135 vb = new QVBoxLayout( tabViewport ); 136 vb = new QVBoxLayout( tabViewport );
136 137
137 svGeneral = new QScrollView( tabViewport ); 138 svGeneral = new QScrollView( tabViewport );
138 vb->addWidget( svGeneral, 0, 0 ); 139 vb->addWidget( svGeneral, 0, 0 );
139 svGeneral->setResizePolicy( QScrollView::AutoOneFit ); 140 svGeneral->setResizePolicy( QScrollView::AutoOneFit );
140 // svGeneral->setHScrollBarMode( QScrollView::AlwaysOff ); 141 // svGeneral->setHScrollBarMode( QScrollView::AlwaysOff );
141 // svGeneral->setVScrollBarMode( QScrollView::AlwaysOff ); 142 // svGeneral->setVScrollBarMode( QScrollView::AlwaysOff );
142 svGeneral->setFrameStyle( QFrame::NoFrame ); 143 svGeneral->setFrameStyle( QFrame::NoFrame );
143 144
144 QWidget *container = new QWidget( svGeneral->viewport() ); 145 QWidget *container = new QWidget( svGeneral->viewport() );
145 svGeneral->addChild( container ); 146 svGeneral->addChild( container );
146 147
147 QGridLayout *gl = new QGridLayout( container, 1, 1, 2, 4 ); 148 QGridLayout *gl = new QGridLayout( container, 1, 1, 2, 4 );
148 gl->setResizeMode( QLayout::FreeResize ); 149 gl->setResizeMode( QLayout::FreeResize );
149 150
150 btnFullName = new QPushButton( tr( "Full Name..." ), container ); 151 btnFullName = new QPushButton( tr( "Full Name..." ), container );
152 QWhatsThis::add( btnFullName, tr( "Press to enter last- middle and firstname" ) );
151 gl->addWidget( btnFullName, 0, 0 ); 153 gl->addWidget( btnFullName, 0, 0 );
152 txtFullName = new QLineEdit( container ); 154 txtFullName = new QLineEdit( container );
155 QWhatsThis::add( txtFullName, tr( "Enter fullname directly ! If you have a lastname with multiple words ( for instance \"de la Guerra\"), please write <lastname>,<firstnames> like this: \"de la Guerra, Carlos Pedro\"" ) );
153 gl->addWidget( txtFullName, 0, 1 ); 156 gl->addWidget( txtFullName, 0, 1 );
154 157
155 QLabel *l = new QLabel( tr( "Job Title" ), container ); 158 QLabel *l = new QLabel( tr( "Job Title" ), container );
159 QWhatsThis::add( l, tr( "The jobtitle.." ) );
156 gl->addWidget( l, 1, 0 ); 160 gl->addWidget( l, 1, 0 );
157 txtJobTitle = new QLineEdit( container ); 161 txtJobTitle = new QLineEdit( container );
162 QWhatsThis::add( txtJobTitle, tr( "The jobtitle.." ) );
158 gl->addWidget( txtJobTitle, 1, 1 ); 163 gl->addWidget( txtJobTitle, 1, 1 );
159 164
160 l = new QLabel( tr("Suffix"), container ); 165 l = new QLabel( tr("Suffix"), container );
166 QWhatsThis::add( l, tr( "Something like \"jr.\".." ) );
161 gl->addWidget( l, 2, 0 ); 167 gl->addWidget( l, 2, 0 );
162 txtSuffix = new QLineEdit( container ); 168 txtSuffix = new QLineEdit( container );
169 QWhatsThis::add( txtSuffix, tr( "Something like \"jr.\".." ) );
163 gl->addWidget( txtSuffix, 2, 1 ); 170 gl->addWidget( txtSuffix, 2, 1 );
164 171
165 l = new QLabel( tr( "Organization" ), container ); 172 l = new QLabel( tr( "Organization" ), container );
173 QWhatsThis::add( l, tr( "The working place of the contact" ) );
166 gl->addWidget( l, 3, 0 ); 174 gl->addWidget( l, 3, 0 );
167 txtOrganization = new QLineEdit( container ); 175 txtOrganization = new QLineEdit( container );
176 QWhatsThis::add( txtOrganization, tr( "The working place of the contact" ) );
168 gl->addWidget( txtOrganization, 3, 1 ); 177 gl->addWidget( txtOrganization, 3, 1 );
169 178
170 // Chooser 1 179 // Chooser 1
171 cmbChooserField1 = new QComboBox( FALSE, container ); 180 cmbChooserField1 = new QComboBox( FALSE, container );
181 QWhatsThis::add( cmbChooserField1, tr( "Press to select attribute to change" ) );
172 cmbChooserField1->setMaximumWidth( 90 ); 182 cmbChooserField1->setMaximumWidth( 90 );
173 gl->addWidget( cmbChooserField1, 4, 0 ); 183 gl->addWidget( cmbChooserField1, 4, 0 );
174 // Textfield for chooser 1. 184 // Textfield for chooser 1.
175 // Now use Widgetstack to contain the textfield and the default-email combo ! 185 // Now use Widgetstack to contain the textfield and the default-email combo !
176 m_widgetStack1 = new QWidgetStack( container ); 186 m_widgetStack1 = new QWidgetStack( container );
177 txtChooserField1 = new QLineEdit( m_widgetStack1 ); 187 txtChooserField1 = new QLineEdit( m_widgetStack1 );
178 m_widgetStack1 -> addWidget( txtChooserField1, TextField ); 188 m_widgetStack1 -> addWidget( txtChooserField1, TextField );
179 gl->addWidget( m_widgetStack1, 4, 1 ); 189 gl->addWidget( m_widgetStack1, 4, 1 );
180 m_widgetStack1 -> raiseWidget( TextField ); 190 m_widgetStack1 -> raiseWidget( TextField );
181 191
182 // Chooser 2 192 // Chooser 2
183 cmbChooserField2 = new QComboBox( FALSE, container ); 193 cmbChooserField2 = new QComboBox( FALSE, container );
194 QWhatsThis::add( cmbChooserField2, tr( "Press to select attribute to change" ) );
184 cmbChooserField2->setMaximumWidth( 90 ); 195 cmbChooserField2->setMaximumWidth( 90 );
185 gl->addWidget( cmbChooserField2, 5, 0 ); 196 gl->addWidget( cmbChooserField2, 5, 0 );
186 // Textfield for chooser 2 197 // Textfield for chooser 2
187 // Now use WidgetStack to contain the textfield and the default-email combo! 198 // Now use WidgetStack to contain the textfield and the default-email combo!
188 m_widgetStack2 = new QWidgetStack( container ); 199 m_widgetStack2 = new QWidgetStack( container );
189 txtChooserField2 = new QLineEdit( m_widgetStack2 ); 200 txtChooserField2 = new QLineEdit( m_widgetStack2 );
190 m_widgetStack2 -> addWidget( txtChooserField2, TextField ); 201 m_widgetStack2 -> addWidget( txtChooserField2, TextField );
191 gl->addWidget( m_widgetStack2, 5, 1 ); 202 gl->addWidget( m_widgetStack2, 5, 1 );
192 m_widgetStack2 -> raiseWidget( TextField ); 203 m_widgetStack2 -> raiseWidget( TextField );
193 204
194 // Chooser 3 205 // Chooser 3
195 cmbChooserField3 = new QComboBox( FALSE, container ); 206 cmbChooserField3 = new QComboBox( FALSE, container );
207 QWhatsThis::add( cmbChooserField3, tr( "Press to select attribute to change" ) );
196 cmbChooserField3->setMaximumWidth( 90 ); 208 cmbChooserField3->setMaximumWidth( 90 );
197 gl->addWidget( cmbChooserField3, 6, 0 ); 209 gl->addWidget( cmbChooserField3, 6, 0 );
198 // Textfield for chooser 2 210 // Textfield for chooser 2
199 // Now use WidgetStack to contain the textfield and the default-email combo! 211 // Now use WidgetStack to contain the textfield and the default-email combo!
200 m_widgetStack3 = new QWidgetStack( container ); 212 m_widgetStack3 = new QWidgetStack( container );
201 txtChooserField3 = new QLineEdit( m_widgetStack3 ); 213 txtChooserField3 = new QLineEdit( m_widgetStack3 );
202 m_widgetStack3 -> addWidget( txtChooserField3, TextField ); 214 m_widgetStack3 -> addWidget( txtChooserField3, TextField );
203 gl->addWidget( m_widgetStack3, 6, 1 ); 215 gl->addWidget( m_widgetStack3, 6, 1 );
204 m_widgetStack3 -> raiseWidget( TextField ); 216 m_widgetStack3 -> raiseWidget( TextField );
205 217
206 l = new QLabel( tr( "File As" ), container ); 218 l = new QLabel( tr( "File As" ), container );
219 QWhatsThis::add( l, tr( "Press to select how to store the name (and howto show it in the listview)" ) );
207 gl->addWidget( l, 7, 0 ); 220 gl->addWidget( l, 7, 0 );
208 cmbFileAs = new QComboBox( TRUE, container ); 221 cmbFileAs = new QComboBox( TRUE, container );
209 gl->addWidget( cmbFileAs, 7, 1 ); 222 gl->addWidget( cmbFileAs, 7, 1 );
210 223
211 labCat = new QLabel( tr( "Category" ), container ); 224 labCat = new QLabel( tr( "Category" ), container );
212 gl->addWidget( labCat, 8, 0 ); 225 gl->addWidget( labCat, 8, 0 );
213 cmbCat = new CategorySelect( container ); 226 cmbCat = new CategorySelect( container );
214 gl->addWidget( cmbCat, 8, 1 ); 227 gl->addWidget( cmbCat, 8, 1 );
215 labCat->show(); 228 labCat->show();
216 cmbCat->show(); 229 cmbCat->show();
217 230
218 btnNote = new QPushButton( tr( "Notes..." ), container ); 231 btnNote = new QPushButton( tr( "Notes..." ), container );
219 gl->addWidget( btnNote, 9, 1 ); 232 gl->addWidget( btnNote, 9, 1 );
220 233
221 tabMain->insertTab( tabViewport, tr( "General" ) ); 234 tabMain->insertTab( tabViewport, tr( "General" ) );
222 235
223 tabViewport = new QWidget ( tabMain ); 236 tabViewport = new QWidget ( tabMain );
224 237
225 vb = new QVBoxLayout( tabViewport ); 238 vb = new QVBoxLayout( tabViewport );
226 239
227 svAddress = new QScrollView( tabViewport ); 240 svAddress = new QScrollView( tabViewport );
228 vb->addWidget( svAddress, 0, 0 ); 241 vb->addWidget( svAddress, 0, 0 );
229 svAddress->setResizePolicy( QScrollView::AutoOneFit ); 242 svAddress->setResizePolicy( QScrollView::AutoOneFit );
230 svAddress->setFrameStyle( QFrame::NoFrame ); 243 svAddress->setFrameStyle( QFrame::NoFrame );
231 244
232 container = new QWidget( svAddress->viewport() ); 245 container = new QWidget( svAddress->viewport() );
233 svAddress->addChild( container ); 246 svAddress->addChild( container );
234 247
235 gl = new QGridLayout( container, 8, 3, 2, 4 ); // row 7 QSpacerItem 248 gl = new QGridLayout( container, 8, 3, 2, 4 ); // row 7 QSpacerItem
236 249
237 cmbAddress = new QComboBox( FALSE, container ); 250 cmbAddress = new QComboBox( FALSE, container );
238 cmbAddress->insertItem( tr( "Business" ) ); 251 cmbAddress->insertItem( tr( "Business" ) );
239 cmbAddress->insertItem( tr( "Home" ) ); 252 cmbAddress->insertItem( tr( "Home" ) );
240 gl->addMultiCellWidget( cmbAddress, 0, 0, 0, 1 ); 253 gl->addMultiCellWidget( cmbAddress, 0, 0, 0, 1 );
241 254
242 l = new QLabel( tr( "Address" ), container ); 255 l = new QLabel( tr( "Address" ), container );
243 gl->addWidget( l, 1, 0 ); 256 gl->addWidget( l, 1, 0 );
244 txtAddress = new QLineEdit( container ); 257 txtAddress = new QLineEdit( container );
245 gl->addMultiCellWidget( txtAddress, 1, 1, 1, 2 ); 258 gl->addMultiCellWidget( txtAddress, 1, 1, 1, 2 );
246 259
247 l = new QLabel( tr( "City" ), container ); 260 l = new QLabel( tr( "City" ), container );
248 gl->addWidget( l, 2, 0 ); 261 gl->addWidget( l, 2, 0 );
249 txtCity = new QLineEdit( container ); 262 txtCity = new QLineEdit( container );
250 gl->addMultiCellWidget( txtCity, 2, 2, 1, 2 ); 263 gl->addMultiCellWidget( txtCity, 2, 2, 1, 2 );
251 264
252 l = new QLabel( tr( "State" ), container ); 265 l = new QLabel( tr( "State" ), container );
253 gl->addWidget( l, 3, 0 ); 266 gl->addWidget( l, 3, 0 );
254 txtState = new QLineEdit( container ); 267 txtState = new QLineEdit( container );
255 gl->addMultiCellWidget( txtState, 3, 3, 1, 2 ); 268 gl->addMultiCellWidget( txtState, 3, 3, 1, 2 );
256 269
257 l = new QLabel( tr( "Zip Code" ), container ); 270 l = new QLabel( tr( "Zip Code" ), container );
258 gl->addWidget( l, 4, 0 ); 271 gl->addWidget( l, 4, 0 );
259 txtZip = new QLineEdit( container ); 272 txtZip = new QLineEdit( container );
260 gl->addMultiCellWidget( txtZip, 4, 4, 1, 2 ); 273 gl->addMultiCellWidget( txtZip, 4, 4, 1, 2 );
261 274
262 l = new QLabel( tr( "Country" ), container ); 275 l = new QLabel( tr( "Country" ), container );
263 gl->addWidget( l, 5, 0 ); 276 gl->addWidget( l, 5, 0 );
264 cmbCountry = new QComboBox( TRUE, container ); 277 cmbCountry = new QComboBox( TRUE, container );
265 cmbCountry->insertItem( tr( "" ) ); 278 cmbCountry->insertItem( tr( "" ) );
266 cmbCountry->insertItem( tr ( "United States" ) ); 279 cmbCountry->insertItem( tr ( "United States" ) );
267 cmbCountry->insertItem( tr ( "United Kingdom" ) ); 280 cmbCountry->insertItem( tr ( "United Kingdom" ) );
268 cmbCountry->insertItem( tr ( "Afghanistan" ) ); 281 cmbCountry->insertItem( tr ( "Afghanistan" ) );
269 cmbCountry->insertItem( tr ( "Albania" ) ); 282 cmbCountry->insertItem( tr ( "Albania" ) );
270 cmbCountry->insertItem( tr ( "Algeria" ) ); 283 cmbCountry->insertItem( tr ( "Algeria" ) );
271 cmbCountry->insertItem( tr ( "American Samoa" ) ); 284 cmbCountry->insertItem( tr ( "American Samoa" ) );
272 cmbCountry->insertItem( tr ( "Andorra" ) ); 285 cmbCountry->insertItem( tr ( "Andorra" ) );
273 cmbCountry->insertItem( tr ( "Angola" ) ); 286 cmbCountry->insertItem( tr ( "Angola" ) );
274 cmbCountry->insertItem( tr ( "Anguilla" ) ); 287 cmbCountry->insertItem( tr ( "Anguilla" ) );
275 cmbCountry->insertItem( tr ( "Antarctica" ) ); 288 cmbCountry->insertItem( tr ( "Antarctica" ) );
276 cmbCountry->insertItem( tr ( "Argentina" ) ); 289 cmbCountry->insertItem( tr ( "Argentina" ) );
277 cmbCountry->insertItem( tr ( "Armenia" ) ); 290 cmbCountry->insertItem( tr ( "Armenia" ) );
278 cmbCountry->insertItem( tr ( "Aruba" ) ); 291 cmbCountry->insertItem( tr ( "Aruba" ) );
279 cmbCountry->insertItem( tr ( "Australia" ) ); 292 cmbCountry->insertItem( tr ( "Australia" ) );
280 cmbCountry->insertItem( tr ( "Austria" ) ); 293 cmbCountry->insertItem( tr ( "Austria" ) );
281 cmbCountry->insertItem( tr ( "Azerbaijan" ) ); 294 cmbCountry->insertItem( tr ( "Azerbaijan" ) );
282 cmbCountry->insertItem( tr ( "Bahamas" ) ); 295 cmbCountry->insertItem( tr ( "Bahamas" ) );
283 cmbCountry->insertItem( tr ( "Bahrain" ) ); 296 cmbCountry->insertItem( tr ( "Bahrain" ) );
284 cmbCountry->insertItem( tr ( "Bangladesh" ) ); 297 cmbCountry->insertItem( tr ( "Bangladesh" ) );
285 cmbCountry->insertItem( tr ( "Barbados" ) ); 298 cmbCountry->insertItem( tr ( "Barbados" ) );
286 cmbCountry->insertItem( tr ( "Belarus" ) ); 299 cmbCountry->insertItem( tr ( "Belarus" ) );
287 cmbCountry->insertItem( tr ( "Belgium" ) ); 300 cmbCountry->insertItem( tr ( "Belgium" ) );
288 cmbCountry->insertItem( tr ( "Belize" ) ); 301 cmbCountry->insertItem( tr ( "Belize" ) );
289 cmbCountry->insertItem( tr ( "Benin" ) ); 302 cmbCountry->insertItem( tr ( "Benin" ) );
290 cmbCountry->insertItem( tr ( "Bermuda" ) ); 303 cmbCountry->insertItem( tr ( "Bermuda" ) );
291 cmbCountry->insertItem( tr ( "Bhutan" ) ); 304 cmbCountry->insertItem( tr ( "Bhutan" ) );
292 cmbCountry->insertItem( tr ( "Bolivia" ) ); 305 cmbCountry->insertItem( tr ( "Bolivia" ) );
293 cmbCountry->insertItem( tr ( "Botswana" ) ); 306 cmbCountry->insertItem( tr ( "Botswana" ) );
294 cmbCountry->insertItem( tr ( "Bouvet Island" ) ); 307 cmbCountry->insertItem( tr ( "Bouvet Island" ) );
295 cmbCountry->insertItem( tr ( "Brazil" ) ); 308 cmbCountry->insertItem( tr ( "Brazil" ) );
296 cmbCountry->insertItem( tr ( "Brunei Darussalam" ) ); 309 cmbCountry->insertItem( tr ( "Brunei Darussalam" ) );
297 cmbCountry->insertItem( tr ( "Bulgaria" ) ); 310 cmbCountry->insertItem( tr ( "Bulgaria" ) );
298 cmbCountry->insertItem( tr ( "Burkina Faso" ) ); 311 cmbCountry->insertItem( tr ( "Burkina Faso" ) );
299 cmbCountry->insertItem( tr ( "Burundi" ) ); 312 cmbCountry->insertItem( tr ( "Burundi" ) );
300 cmbCountry->insertItem( tr ( "Cambodia" ) ); 313 cmbCountry->insertItem( tr ( "Cambodia" ) );
301 cmbCountry->insertItem( tr ( "Cameroon" ) ); 314 cmbCountry->insertItem( tr ( "Cameroon" ) );
302 cmbCountry->insertItem( tr ( "Canada" ) ); 315 cmbCountry->insertItem( tr ( "Canada" ) );
303 cmbCountry->insertItem( tr ( "Cape Verde" ) ); 316 cmbCountry->insertItem( tr ( "Cape Verde" ) );
304 cmbCountry->insertItem( tr ( "Cayman Islands" ) ); 317 cmbCountry->insertItem( tr ( "Cayman Islands" ) );
305 cmbCountry->insertItem( tr ( "Chad" ) ); 318 cmbCountry->insertItem( tr ( "Chad" ) );
306 cmbCountry->insertItem( tr ( "Chile" ) ); 319 cmbCountry->insertItem( tr ( "Chile" ) );
307 cmbCountry->insertItem( tr ( "China" ) ); 320 cmbCountry->insertItem( tr ( "China" ) );
308 cmbCountry->insertItem( tr ( "Christmas Island" ) ); 321 cmbCountry->insertItem( tr ( "Christmas Island" ) );
309 cmbCountry->insertItem( tr ( "Colombia" ) ); 322 cmbCountry->insertItem( tr ( "Colombia" ) );
310 cmbCountry->insertItem( tr ( "Comoros" ) ); 323 cmbCountry->insertItem( tr ( "Comoros" ) );
311 cmbCountry->insertItem( tr ( "Congo" ) ); 324 cmbCountry->insertItem( tr ( "Congo" ) );
312 cmbCountry->insertItem( tr ( "Cook Island" ) ); 325 cmbCountry->insertItem( tr ( "Cook Island" ) );
313 cmbCountry->insertItem( tr ( "Costa Rica" ) ); 326 cmbCountry->insertItem( tr ( "Costa Rica" ) );
314 cmbCountry->insertItem( tr ( "Cote d'Ivoire" ) ); 327 cmbCountry->insertItem( tr ( "Cote d'Ivoire" ) );
315 cmbCountry->insertItem( tr ( "Croatia" ) ); 328 cmbCountry->insertItem( tr ( "Croatia" ) );
316 cmbCountry->insertItem( tr ( "Cuba" ) ); 329 cmbCountry->insertItem( tr ( "Cuba" ) );
317 cmbCountry->insertItem( tr ( "Cyprus" ) ); 330 cmbCountry->insertItem( tr ( "Cyprus" ) );
318 cmbCountry->insertItem( tr ( "Czech Republic" ) ); 331 cmbCountry->insertItem( tr ( "Czech Republic" ) );
319 cmbCountry->insertItem( tr ( "Denmark" ) ); 332 cmbCountry->insertItem( tr ( "Denmark" ) );
320 cmbCountry->insertItem( tr ( "Djibouti" ) ); 333 cmbCountry->insertItem( tr ( "Djibouti" ) );
321 cmbCountry->insertItem( tr ( "Dominica" ) ); 334 cmbCountry->insertItem( tr ( "Dominica" ) );
322 cmbCountry->insertItem( tr ( "Dominican Republic" ) ); 335 cmbCountry->insertItem( tr ( "Dominican Republic" ) );
323 cmbCountry->insertItem( tr ( "East Timor" ) ); 336 cmbCountry->insertItem( tr ( "East Timor" ) );
324 cmbCountry->insertItem( tr ( "Ecuador" ) ); 337 cmbCountry->insertItem( tr ( "Ecuador" ) );
325 cmbCountry->insertItem( tr ( "Egypt" ) ); 338 cmbCountry->insertItem( tr ( "Egypt" ) );
326 cmbCountry->insertItem( tr ( "El Salvador" ) ); 339 cmbCountry->insertItem( tr ( "El Salvador" ) );
327 cmbCountry->insertItem( tr ( "Equatorial Guinea" ) ); 340 cmbCountry->insertItem( tr ( "Equatorial Guinea" ) );
328 cmbCountry->insertItem( tr ( "Eritrea" ) ); 341 cmbCountry->insertItem( tr ( "Eritrea" ) );
329 cmbCountry->insertItem( tr ( "Estonia" ) ); 342 cmbCountry->insertItem( tr ( "Estonia" ) );
330 cmbCountry->insertItem( tr ( "Ethiopia" ) ); 343 cmbCountry->insertItem( tr ( "Ethiopia" ) );
331 cmbCountry->insertItem( tr ( "Falkland Islands" ) ); 344 cmbCountry->insertItem( tr ( "Falkland Islands" ) );
332 cmbCountry->insertItem( tr ( "Faroe Islands" ) ); 345 cmbCountry->insertItem( tr ( "Faroe Islands" ) );
333 cmbCountry->insertItem( tr ( "Fiji" ) ); 346 cmbCountry->insertItem( tr ( "Fiji" ) );
334 cmbCountry->insertItem( tr ( "Finland" ) ); 347 cmbCountry->insertItem( tr ( "Finland" ) );
335 cmbCountry->insertItem( tr ( "France" ) ); 348 cmbCountry->insertItem( tr ( "France" ) );
336 cmbCountry->insertItem( tr ( "French Guiana" ) ); 349 cmbCountry->insertItem( tr ( "French Guiana" ) );
337 cmbCountry->insertItem( tr ( "French Polynesia" ) ); 350 cmbCountry->insertItem( tr ( "French Polynesia" ) );
338 cmbCountry->insertItem( tr ( "Gabon" ) ); 351 cmbCountry->insertItem( tr ( "Gabon" ) );
339 cmbCountry->insertItem( tr ( "Gambia" ) ); 352 cmbCountry->insertItem( tr ( "Gambia" ) );
340 cmbCountry->insertItem( tr ( "Georgia" ) ); 353 cmbCountry->insertItem( tr ( "Georgia" ) );
341 cmbCountry->insertItem( tr ( "Germany" ) ); 354 cmbCountry->insertItem( tr ( "Germany" ) );
342 cmbCountry->insertItem( tr ( "Ghana" ) ); 355 cmbCountry->insertItem( tr ( "Ghana" ) );
343 cmbCountry->insertItem( tr ( "Gibraltar" ) ); 356 cmbCountry->insertItem( tr ( "Gibraltar" ) );
344 cmbCountry->insertItem( tr ( "Greece" ) ); 357 cmbCountry->insertItem( tr ( "Greece" ) );
345 cmbCountry->insertItem( tr ( "Greenland" ) ); 358 cmbCountry->insertItem( tr ( "Greenland" ) );
346 cmbCountry->insertItem( tr ( "Grenada" ) ); 359 cmbCountry->insertItem( tr ( "Grenada" ) );
347 cmbCountry->insertItem( tr ( "Guadeloupe" ) ); 360 cmbCountry->insertItem( tr ( "Guadeloupe" ) );
348 cmbCountry->insertItem( tr ( "Guam" ) ); 361 cmbCountry->insertItem( tr ( "Guam" ) );
349 cmbCountry->insertItem( tr ( "Guatemala" ) ); 362 cmbCountry->insertItem( tr ( "Guatemala" ) );
350 cmbCountry->insertItem( tr ( "Guinea" ) ); 363 cmbCountry->insertItem( tr ( "Guinea" ) );
351 cmbCountry->insertItem( tr ( "Guinea-Bissau" ) ); 364 cmbCountry->insertItem( tr ( "Guinea-Bissau" ) );
352 cmbCountry->insertItem( tr ( "Guyana" ) ); 365 cmbCountry->insertItem( tr ( "Guyana" ) );
353 cmbCountry->insertItem( tr ( "Haiti" ) ); 366 cmbCountry->insertItem( tr ( "Haiti" ) );
354 cmbCountry->insertItem( tr ( "Holy See" ) ); 367 cmbCountry->insertItem( tr ( "Holy See" ) );
355 cmbCountry->insertItem( tr ( "Honduras" ) ); 368 cmbCountry->insertItem( tr ( "Honduras" ) );
356 cmbCountry->insertItem( tr ( "Hong Kong" ) ); 369 cmbCountry->insertItem( tr ( "Hong Kong" ) );
357 cmbCountry->insertItem( tr ( "Hungary" ) ); 370 cmbCountry->insertItem( tr ( "Hungary" ) );
358 cmbCountry->insertItem( tr ( "Iceland" ) ); 371 cmbCountry->insertItem( tr ( "Iceland" ) );
359 cmbCountry->insertItem( tr ( "India" ) ); 372 cmbCountry->insertItem( tr ( "India" ) );
360 cmbCountry->insertItem( tr ( "Indonesia" ) ); 373 cmbCountry->insertItem( tr ( "Indonesia" ) );
361 cmbCountry->insertItem( tr ( "Ireland" ) ); 374 cmbCountry->insertItem( tr ( "Ireland" ) );
362 cmbCountry->insertItem( tr ( "Israel" ) ); 375 cmbCountry->insertItem( tr ( "Israel" ) );
363 cmbCountry->insertItem( tr ( "Italy" ) ); 376 cmbCountry->insertItem( tr ( "Italy" ) );
364 cmbCountry->insertItem( tr ( "Jamaica" ) ); 377 cmbCountry->insertItem( tr ( "Jamaica" ) );
365 cmbCountry->insertItem( tr ( "Japan" ) ); 378 cmbCountry->insertItem( tr ( "Japan" ) );
366 cmbCountry->insertItem( tr ( "Jordan" ) ); 379 cmbCountry->insertItem( tr ( "Jordan" ) );
367 cmbCountry->insertItem( tr ( "Kazakhstan" ) ); 380 cmbCountry->insertItem( tr ( "Kazakhstan" ) );
368 cmbCountry->insertItem( tr ( "Kenya" ) ); 381 cmbCountry->insertItem( tr ( "Kenya" ) );
369 cmbCountry->insertItem( tr ( "Kiribati" ) ); 382 cmbCountry->insertItem( tr ( "Kiribati" ) );
370 cmbCountry->insertItem( tr ( "Korea" ) ); 383 cmbCountry->insertItem( tr ( "Korea" ) );
371 cmbCountry->insertItem( tr ( "Kuwait" ) ); 384 cmbCountry->insertItem( tr ( "Kuwait" ) );
372 cmbCountry->insertItem( tr ( "Kyrgyzstan" ) ); 385 cmbCountry->insertItem( tr ( "Kyrgyzstan" ) );
373 cmbCountry->insertItem( tr ( "Laos" ) ); 386 cmbCountry->insertItem( tr ( "Laos" ) );
374 cmbCountry->insertItem( tr ( "Latvia" ) ); 387 cmbCountry->insertItem( tr ( "Latvia" ) );
375 cmbCountry->insertItem( tr ( "Lebanon" ) ); 388 cmbCountry->insertItem( tr ( "Lebanon" ) );
376 cmbCountry->insertItem( tr ( "Lesotho" ) ); 389 cmbCountry->insertItem( tr ( "Lesotho" ) );
377 cmbCountry->insertItem( tr ( "Liberia" ) ); 390 cmbCountry->insertItem( tr ( "Liberia" ) );
378 cmbCountry->insertItem( tr ( "Liechtenstein" ) ); 391 cmbCountry->insertItem( tr ( "Liechtenstein" ) );
379 cmbCountry->insertItem( tr ( "Lithuania" ) ); 392 cmbCountry->insertItem( tr ( "Lithuania" ) );
380 cmbCountry->insertItem( tr ( "Luxembourg" ) ); 393 cmbCountry->insertItem( tr ( "Luxembourg" ) );
381 cmbCountry->insertItem( tr ( "Macau" ) ); 394 cmbCountry->insertItem( tr ( "Macau" ) );
382 cmbCountry->insertItem( tr ( "Macedonia" ) ); 395 cmbCountry->insertItem( tr ( "Macedonia" ) );
383 cmbCountry->insertItem( tr ( "Madagascar" ) ); 396 cmbCountry->insertItem( tr ( "Madagascar" ) );
384 cmbCountry->insertItem( tr ( "Malawi" ) ); 397 cmbCountry->insertItem( tr ( "Malawi" ) );
385 cmbCountry->insertItem( tr ( "Malaysia" ) ); 398 cmbCountry->insertItem( tr ( "Malaysia" ) );
386 cmbCountry->insertItem( tr ( "Maldives" ) ); 399 cmbCountry->insertItem( tr ( "Maldives" ) );
387 cmbCountry->insertItem( tr ( "Mali" ) ); 400 cmbCountry->insertItem( tr ( "Mali" ) );
388 cmbCountry->insertItem( tr ( "Malta" ) ); 401 cmbCountry->insertItem( tr ( "Malta" ) );
389 cmbCountry->insertItem( tr ( "Martinique" ) ); 402 cmbCountry->insertItem( tr ( "Martinique" ) );
390 cmbCountry->insertItem( tr ( "Mauritania" ) ); 403 cmbCountry->insertItem( tr ( "Mauritania" ) );
391 cmbCountry->insertItem( tr ( "Mauritius" ) ); 404 cmbCountry->insertItem( tr ( "Mauritius" ) );
392 cmbCountry->insertItem( tr ( "Mayotte" ) ); 405 cmbCountry->insertItem( tr ( "Mayotte" ) );
393 cmbCountry->insertItem( tr ( "Mexico" ) ); 406 cmbCountry->insertItem( tr ( "Mexico" ) );
394 cmbCountry->insertItem( tr ( "Micronesia" ) ); 407 cmbCountry->insertItem( tr ( "Micronesia" ) );
395 cmbCountry->insertItem( tr ( "Moldova" ) ); 408 cmbCountry->insertItem( tr ( "Moldova" ) );
396 cmbCountry->insertItem( tr ( "Monaco" ) ); 409 cmbCountry->insertItem( tr ( "Monaco" ) );
397 cmbCountry->insertItem( tr ( "Mongolia" ) ); 410 cmbCountry->insertItem( tr ( "Mongolia" ) );
398 cmbCountry->insertItem( tr ( "Montserrat" ) ); 411 cmbCountry->insertItem( tr ( "Montserrat" ) );
399 cmbCountry->insertItem( tr ( "Morocco" ) ); 412 cmbCountry->insertItem( tr ( "Morocco" ) );
400 cmbCountry->insertItem( tr ( "Mozambique" ) ); 413 cmbCountry->insertItem( tr ( "Mozambique" ) );
401 cmbCountry->insertItem( tr ( "Myanmar" ) ); 414 cmbCountry->insertItem( tr ( "Myanmar" ) );
402 cmbCountry->insertItem( tr ( "Namibia" ) ); 415 cmbCountry->insertItem( tr ( "Namibia" ) );
403 cmbCountry->insertItem( tr ( "Nauru" ) ); 416 cmbCountry->insertItem( tr ( "Nauru" ) );
404 cmbCountry->insertItem( tr ( "Nepal" ) ); 417 cmbCountry->insertItem( tr ( "Nepal" ) );
405 cmbCountry->insertItem( tr ( "Netherlands" ) ); 418 cmbCountry->insertItem( tr ( "Netherlands" ) );
406 cmbCountry->insertItem( tr ( "New Caledonia" ) ); 419 cmbCountry->insertItem( tr ( "New Caledonia" ) );
407 cmbCountry->insertItem( tr ( "New Zealand" ) ); 420 cmbCountry->insertItem( tr ( "New Zealand" ) );
408 cmbCountry->insertItem( tr ( "Nicaragua" ) ); 421 cmbCountry->insertItem( tr ( "Nicaragua" ) );
409 cmbCountry->insertItem( tr ( "Niger" ) ); 422 cmbCountry->insertItem( tr ( "Niger" ) );
410 cmbCountry->insertItem( tr ( "Nigeria" ) ); 423 cmbCountry->insertItem( tr ( "Nigeria" ) );
411 cmbCountry->insertItem( tr ( "Niue" ) ); 424 cmbCountry->insertItem( tr ( "Niue" ) );
412 cmbCountry->insertItem( tr ( "Norway" ) ); 425 cmbCountry->insertItem( tr ( "Norway" ) );
413 cmbCountry->insertItem( tr ( "Oman" ) ); 426 cmbCountry->insertItem( tr ( "Oman" ) );
414 cmbCountry->insertItem( tr ( "Pakistan" ) ); 427 cmbCountry->insertItem( tr ( "Pakistan" ) );
415 cmbCountry->insertItem( tr ( "Palau" ) ); 428 cmbCountry->insertItem( tr ( "Palau" ) );
416 cmbCountry->insertItem( tr ( "Palestinian Sovereign Areas" ) ); 429 cmbCountry->insertItem( tr ( "Palestinian Sovereign Areas" ) );
417 cmbCountry->insertItem( tr ( "Panama" ) ); 430 cmbCountry->insertItem( tr ( "Panama" ) );
418 cmbCountry->insertItem( tr ( "Papua New Guinea" ) ); 431 cmbCountry->insertItem( tr ( "Papua New Guinea" ) );
419 cmbCountry->insertItem( tr ( "Paraguay" ) ); 432 cmbCountry->insertItem( tr ( "Paraguay" ) );
420 cmbCountry->insertItem( tr ( "Peru" ) ); 433 cmbCountry->insertItem( tr ( "Peru" ) );
421 cmbCountry->insertItem( tr ( "Philippines" ) ); 434 cmbCountry->insertItem( tr ( "Philippines" ) );
422 cmbCountry->insertItem( tr ( "Pitcairn Islands" ) ); 435 cmbCountry->insertItem( tr ( "Pitcairn Islands" ) );
423 cmbCountry->insertItem( tr ( "Poland" ) ); 436 cmbCountry->insertItem( tr ( "Poland" ) );
424 cmbCountry->insertItem( tr ( "Portugal" ) ); 437 cmbCountry->insertItem( tr ( "Portugal" ) );
425 cmbCountry->insertItem( tr ( "Puerto Rico" ) ); 438 cmbCountry->insertItem( tr ( "Puerto Rico" ) );
426 cmbCountry->insertItem( tr ( "Qatar" ) ); 439 cmbCountry->insertItem( tr ( "Qatar" ) );
427 cmbCountry->insertItem( tr ( "Reunion" ) ); 440 cmbCountry->insertItem( tr ( "Reunion" ) );
428 cmbCountry->insertItem( tr ( "Romania" ) ); 441 cmbCountry->insertItem( tr ( "Romania" ) );
429 cmbCountry->insertItem( tr ( "Russia" ) ); 442 cmbCountry->insertItem( tr ( "Russia" ) );
430 cmbCountry->insertItem( tr ( "Rwanda" ) ); 443 cmbCountry->insertItem( tr ( "Rwanda" ) );
431 cmbCountry->insertItem( tr ( "Saint Lucia" ) ); 444 cmbCountry->insertItem( tr ( "Saint Lucia" ) );
432 cmbCountry->insertItem( tr ( "Samoa" ) ); 445 cmbCountry->insertItem( tr ( "Samoa" ) );
433 cmbCountry->insertItem( tr ( "San Marino" ) ); 446 cmbCountry->insertItem( tr ( "San Marino" ) );
434 cmbCountry->insertItem( tr ( "Saudi Arabia" ) ); 447 cmbCountry->insertItem( tr ( "Saudi Arabia" ) );
435 cmbCountry->insertItem( tr ( "Senegal" ) ); 448 cmbCountry->insertItem( tr ( "Senegal" ) );
436 cmbCountry->insertItem( tr ( "Seychelles" ) ); 449 cmbCountry->insertItem( tr ( "Seychelles" ) );
437 cmbCountry->insertItem( tr ( "Sierra Leone" ) ); 450 cmbCountry->insertItem( tr ( "Sierra Leone" ) );
438 cmbCountry->insertItem( tr ( "Singapore" ) ); 451 cmbCountry->insertItem( tr ( "Singapore" ) );
439 cmbCountry->insertItem( tr ( "Slovakia" ) ); 452 cmbCountry->insertItem( tr ( "Slovakia" ) );
440 cmbCountry->insertItem( tr ( "Slovenia" ) ); 453 cmbCountry->insertItem( tr ( "Slovenia" ) );
441 cmbCountry->insertItem( tr ( "Solomon Islands" ) ); 454 cmbCountry->insertItem( tr ( "Solomon Islands" ) );
442 cmbCountry->insertItem( tr ( "Somalia" ) ); 455 cmbCountry->insertItem( tr ( "Somalia" ) );
443 cmbCountry->insertItem( tr ( "South Africa" ) ); 456 cmbCountry->insertItem( tr ( "South Africa" ) );
444 cmbCountry->insertItem( tr ( "Spain" ) ); 457 cmbCountry->insertItem( tr ( "Spain" ) );
445 cmbCountry->insertItem( tr ( "Sri Lanka" ) ); 458 cmbCountry->insertItem( tr ( "Sri Lanka" ) );
446 cmbCountry->insertItem( tr ( "St. Helena" ) ); 459 cmbCountry->insertItem( tr ( "St. Helena" ) );
447 cmbCountry->insertItem( tr ( "Sudan" ) ); 460 cmbCountry->insertItem( tr ( "Sudan" ) );
448 cmbCountry->insertItem( tr ( "Suriname" ) ); 461 cmbCountry->insertItem( tr ( "Suriname" ) );
449 cmbCountry->insertItem( tr ( "Swaziland" ) ); 462 cmbCountry->insertItem( tr ( "Swaziland" ) );
450 cmbCountry->insertItem( tr ( "Sweden" ) ); 463 cmbCountry->insertItem( tr ( "Sweden" ) );
451 cmbCountry->insertItem( tr ( "Switzerland" ) ); 464 cmbCountry->insertItem( tr ( "Switzerland" ) );
452 cmbCountry->insertItem( tr ( "Taiwan" ) ); 465 cmbCountry->insertItem( tr ( "Taiwan" ) );
453 cmbCountry->insertItem( tr ( "Tajikistan" ) ); 466 cmbCountry->insertItem( tr ( "Tajikistan" ) );
454 cmbCountry->insertItem( tr ( "Tanzania" ) ); 467 cmbCountry->insertItem( tr ( "Tanzania" ) );
455 cmbCountry->insertItem( tr ( "Thailand" ) ); 468 cmbCountry->insertItem( tr ( "Thailand" ) );
456 cmbCountry->insertItem( tr ( "Togo" ) ); 469 cmbCountry->insertItem( tr ( "Togo" ) );
457 cmbCountry->insertItem( tr ( "Tokelau" ) ); 470 cmbCountry->insertItem( tr ( "Tokelau" ) );
458 cmbCountry->insertItem( tr ( "Tonga" ) ); 471 cmbCountry->insertItem( tr ( "Tonga" ) );
459 cmbCountry->insertItem( tr ( "Tunisia" ) ); 472 cmbCountry->insertItem( tr ( "Tunisia" ) );
460 cmbCountry->insertItem( tr ( "Turkey" ) ); 473 cmbCountry->insertItem( tr ( "Turkey" ) );
461 cmbCountry->insertItem( tr ( "Turkmenistan" ) ); 474 cmbCountry->insertItem( tr ( "Turkmenistan" ) );
462 cmbCountry->insertItem( tr ( "Tuvalu" ) ); 475 cmbCountry->insertItem( tr ( "Tuvalu" ) );
463 cmbCountry->insertItem( tr ( "Uganda" ) ); 476 cmbCountry->insertItem( tr ( "Uganda" ) );
464 cmbCountry->insertItem( tr ( "Ukraine" ) ); 477 cmbCountry->insertItem( tr ( "Ukraine" ) );
465 cmbCountry->insertItem( tr ( "Uruguay" ) ); 478 cmbCountry->insertItem( tr ( "Uruguay" ) );
466 cmbCountry->insertItem( tr ( "Uzbekistan" ) ); 479 cmbCountry->insertItem( tr ( "Uzbekistan" ) );
467 cmbCountry->insertItem( tr ( "Vanuatu" ) ); 480 cmbCountry->insertItem( tr ( "Vanuatu" ) );
468 cmbCountry->insertItem( tr ( "Venezuela" ) ); 481 cmbCountry->insertItem( tr ( "Venezuela" ) );
469 cmbCountry->insertItem( tr ( "Vietnam" ) ); 482 cmbCountry->insertItem( tr ( "Vietnam" ) );
470 cmbCountry->insertItem( tr ( "Virgin Islands" ) ); 483 cmbCountry->insertItem( tr ( "Virgin Islands" ) );
471 cmbCountry->insertItem( tr ( "Western Sahara" ) ); 484 cmbCountry->insertItem( tr ( "Western Sahara" ) );
472 cmbCountry->insertItem( tr ( "Yemen" ) ); 485 cmbCountry->insertItem( tr ( "Yemen" ) );
473 cmbCountry->insertItem( tr ( "Yugoslavia" ) ); 486 cmbCountry->insertItem( tr ( "Yugoslavia" ) );
474 cmbCountry->insertItem( tr ( "Zambia" ) ); 487 cmbCountry->insertItem( tr ( "Zambia" ) );
475 cmbCountry->insertItem( tr ( "Zimbabwe" ) ); 488 cmbCountry->insertItem( tr ( "Zimbabwe" ) );
476 if (cmbCountry->listBox()!=0) 489 if (cmbCountry->listBox()!=0)
477 cmbCountry->listBox()->sort(); 490 cmbCountry->listBox()->sort();
478 491
479 cmbCountry->setMaximumWidth( 135 ); 492 cmbCountry->setMaximumWidth( 135 );
480 493
481 gl->addMultiCellWidget( cmbCountry, 5, 5, 1, 2 ); 494 gl->addMultiCellWidget( cmbCountry, 5, 5, 1, 2 );
482 495
483 // Chooser 4 496 // Chooser 4
484 cmbChooserField4 = new QComboBox( FALSE, container ); 497 cmbChooserField4 = new QComboBox( FALSE, container );
485 cmbChooserField4->setMaximumWidth( 90 ); 498 cmbChooserField4->setMaximumWidth( 90 );
486 gl->addWidget( cmbChooserField4, 6, 0 ); 499 gl->addWidget( cmbChooserField4, 6, 0 );
487 // Textfield for chooser 2 500 // Textfield for chooser 2
488 // Now use WidgetStack to contain the textfield and the default-email combo! 501 // Now use WidgetStack to contain the textfield and the default-email combo!
489 m_widgetStack4 = new QWidgetStack( container ); 502 m_widgetStack4 = new QWidgetStack( container );
490 txtChooserField4 = new QLineEdit( m_widgetStack4 ); 503 txtChooserField4 = new QLineEdit( m_widgetStack4 );
491 m_widgetStack4 -> addWidget( txtChooserField4, TextField ); 504 m_widgetStack4 -> addWidget( txtChooserField4, TextField );
492 gl->addMultiCellWidget( m_widgetStack4, 6, 6, 1, 2 ); 505 gl->addMultiCellWidget( m_widgetStack4, 6, 6, 1, 2 );
493 m_widgetStack4 -> raiseWidget( TextField ); 506 m_widgetStack4 -> raiseWidget( TextField );
494 507
495 QSpacerItem *space = new QSpacerItem(1,1, 508 QSpacerItem *space = new QSpacerItem(1,1,
496 QSizePolicy::Maximum, 509 QSizePolicy::Maximum,
497 QSizePolicy::MinimumExpanding ); 510 QSizePolicy::MinimumExpanding );
498 gl->addItem( space, 7, 0 ); 511 gl->addItem( space, 7, 0 );
499 512
500 tabMain->insertTab( tabViewport, tr( "Address" ) ); 513 tabMain->insertTab( tabViewport, tr( "Address" ) );
501 514
502 tabViewport = new QWidget ( tabMain ); 515 tabViewport = new QWidget ( tabMain );
503 516
504 vb = new QVBoxLayout( tabViewport ); 517 vb = new QVBoxLayout( tabViewport );
505 518
506 svDetails = new QScrollView( tabViewport ); 519 svDetails = new QScrollView( tabViewport );
507 vb->addWidget( svDetails, 0, 0 ); 520 vb->addWidget( svDetails, 0, 0 );
508 svDetails->setResizePolicy( QScrollView::AutoOneFit ); 521 svDetails->setResizePolicy( QScrollView::AutoOneFit );
509 svDetails->setFrameStyle( QFrame::NoFrame ); 522 svDetails->setFrameStyle( QFrame::NoFrame );
510 523
511 container = new QWidget( svDetails->viewport() ); 524 container = new QWidget( svDetails->viewport() );
512 svDetails->addChild( container ); 525 svDetails->addChild( container );
513 526
514 gl = new QGridLayout( container, 1, 2, 2, 4 ); 527 gl = new QGridLayout( container, 1, 2, 2, 4 );
515 528
516 int counter = 0; 529 int counter = 0;
517 530
518 // Birthday 531 // Birthday
519 QHBox* hBox = new QHBox( container ); 532 QHBox* hBox = new QHBox( container );
520 l = new QLabel( tr("Birthday"), container ); 533 l = new QLabel( tr("Birthday"), container );
521 gl->addWidget( l, counter, 0 ); 534 gl->addWidget( l, counter, 0 );
522 535
523 QPopupMenu* m1 = new QPopupMenu( container ); 536 QPopupMenu* m1 = new QPopupMenu( container );
524 birthdayPicker = new DateBookMonth( m1, 0, TRUE ); 537 birthdayPicker = new DateBookMonth( m1, 0, TRUE );
525 m1->insertItem( birthdayPicker ); 538 m1->insertItem( birthdayPicker );
526 539
527 birthdayButton= new QToolButton( hBox, "buttonStart" ); 540 birthdayButton= new QToolButton( hBox, "buttonStart" );
528 birthdayButton->setPopup( m1 ); 541 birthdayButton->setPopup( m1 );
529 birthdayButton->setPopupDelay(0); 542 birthdayButton->setPopupDelay(0);
530 543
531 QPushButton* deleteButton = new QPushButton( QIconSet( Resource::loadPixmap( "trash" ) ), 544 QPushButton* deleteButton = new QPushButton( QIconSet( Resource::loadPixmap( "trash" ) ),
532 tr( "Delete" ), 545 tr( "Delete" ),
533 hBox, 0 ); 546 hBox, 0 );
534 547
535 gl->addWidget( hBox, counter , 1 ); 548 gl->addWidget( hBox, counter , 1 );
536 549
537 connect( birthdayPicker, SIGNAL( dateClicked( int, int, int ) ), 550 connect( birthdayPicker, SIGNAL( dateClicked( int, int, int ) ),
538 this, SLOT( slotBirthdayDateChanged( int, int, int ) ) ); 551 this, SLOT( slotBirthdayDateChanged( int, int, int ) ) );
539 connect( deleteButton, SIGNAL( clicked() ), this, SLOT( slotRemoveBirthday() ) ); 552 connect( deleteButton, SIGNAL( clicked() ), this, SLOT( slotRemoveBirthday() ) );
540 553
541 ++counter; 554 ++counter;
542 555
543 // Anniversary 556 // Anniversary
544 hBox = new QHBox( container ); 557 hBox = new QHBox( container );
545 l = new QLabel( tr("Anniversary"), container ); 558 l = new QLabel( tr("Anniversary"), container );
546 gl->addWidget( l, counter, 0 ); 559 gl->addWidget( l, counter, 0 );
547 560
548 m1 = new QPopupMenu( container ); 561 m1 = new QPopupMenu( container );
549 anniversaryPicker = new DateBookMonth( m1, 0, TRUE ); 562 anniversaryPicker = new DateBookMonth( m1, 0, TRUE );
550 m1->insertItem( anniversaryPicker ); 563 m1->insertItem( anniversaryPicker );
551 564
552 anniversaryButton= new QToolButton( hBox, "buttonStart" ); 565 anniversaryButton= new QToolButton( hBox, "buttonStart" );
553 anniversaryButton->setPopup( m1 ); 566 anniversaryButton->setPopup( m1 );
554 anniversaryButton->setPopupDelay(0); 567 anniversaryButton->setPopupDelay(0);
555 568
556 deleteButton = new QPushButton( QIconSet( Resource::loadPixmap( "trash" ) ), 569 deleteButton = new QPushButton( QIconSet( Resource::loadPixmap( "trash" ) ),
557 tr( "Delete" ), 570 tr( "Delete" ),
558 hBox, 0 ); 571 hBox, 0 );
559 gl->addWidget( hBox, counter , 1 ); 572 gl->addWidget( hBox, counter , 1 );
560 573
561 connect( anniversaryPicker, SIGNAL( dateClicked( int, int, int ) ), 574 connect( anniversaryPicker, SIGNAL( dateClicked( int, int, int ) ),
562 this, SLOT( slotAnniversaryDateChanged( int, int, int ) ) ); 575 this, SLOT( slotAnniversaryDateChanged( int, int, int ) ) );
563 connect( deleteButton, SIGNAL( clicked() ), this, SLOT( slotRemoveAnniversary() ) ); 576 connect( deleteButton, SIGNAL( clicked() ), this, SLOT( slotRemoveAnniversary() ) );
564 577
565 ++counter; 578 ++counter;
566 579
567 // Gender 580 // Gender
568 l = new QLabel( tr("Gender"), container ); 581 l = new QLabel( tr("Gender"), container );
569 gl->addWidget( l, counter, 0 ); 582 gl->addWidget( l, counter, 0 );
570 cmbGender = new QComboBox( container ); 583 cmbGender = new QComboBox( container );
571 cmbGender->insertItem( "", 0 ); 584 cmbGender->insertItem( "", 0 );
572 cmbGender->insertItem( tr("Male"), 1); 585 cmbGender->insertItem( tr("Male"), 1);
573 cmbGender->insertItem( tr("Female"), 2); 586 cmbGender->insertItem( tr("Female"), 2);
574 gl->addWidget( cmbGender, counter, 1 ); 587 gl->addWidget( cmbGender, counter, 1 );
575 588
576 ++counter; 589 ++counter;
577 590
578 // Create Labels and lineedit fields for every dynamic entry 591 // Create Labels and lineedit fields for every dynamic entry
579 QStringList::ConstIterator it = slDynamicEntries.begin(); 592 QStringList::ConstIterator it = slDynamicEntries.begin();
580 QMap<QString, int> mapStrToID = OContactFields::untrFieldsToId(); 593 QMap<QString, int> mapStrToID = OContactFields::untrFieldsToId();
581 QMap<int, QString> mapIdToStr = OContactFields::idToTrFields(); 594 QMap<int, QString> mapIdToStr = OContactFields::idToTrFields();
582 for (i = counter; it != slDynamicEntries.end(); i++, ++it ) { 595 for (i = counter; it != slDynamicEntries.end(); i++, ++it ) {
583 596
584 if (((*it) == "Anniversary") || 597 if (((*it) == "Anniversary") ||
585 ((*it) == "Birthday")|| ((*it) == "Gender")) continue; 598 ((*it) == "Birthday")|| ((*it) == "Gender")) continue;
586 599
587 l = new QLabel( mapIdToStr[mapStrToID[*it]].utf8() , container ); 600 l = new QLabel( mapIdToStr[mapStrToID[*it]].utf8() , container );
588 listName.append( l ); 601 listName.append( l );
589 gl->addWidget( l, i, 0 ); 602 gl->addWidget( l, i, 0 );
590 QLineEdit *e = new QLineEdit( container ); 603 QLineEdit *e = new QLineEdit( container );
591 listValue.append( e ); 604 listValue.append( e );
592 gl->addWidget( e, i, 1); 605 gl->addWidget( e, i, 1);
593 } 606 }
594 // Fill labels with names.. 607 // Fill labels with names..
595 //loadFields(); 608 //loadFields();
596 609
597 610
598 tabMain->insertTab( tabViewport, tr( "Details" ) ); 611 tabMain->insertTab( tabViewport, tr( "Details" ) );
599 612
600 dlgNote = new QDialog( this, "Note Dialog", TRUE ); 613 dlgNote = new QDialog( this, "Note Dialog", TRUE );
601 dlgNote->setCaption( tr("Enter Note") ); 614 dlgNote->setCaption( tr("Enter Note") );
602 QVBoxLayout *vbNote = new QVBoxLayout( dlgNote ); 615 QVBoxLayout *vbNote = new QVBoxLayout( dlgNote );
603 txtNote = new QMultiLineEdit( dlgNote ); 616 txtNote = new QMultiLineEdit( dlgNote );
604 vbNote->addWidget( txtNote ); 617 vbNote->addWidget( txtNote );
605 connect( btnNote, SIGNAL(clicked()), this, SLOT(slotNote()) ); 618 connect( btnNote, SIGNAL(clicked()), this, SLOT(slotNote()) );
606 619
607 dlgName = new QDialog( this, "Name Dialog", TRUE ); 620 dlgName = new QDialog( this, "Name Dialog", TRUE );
608 dlgName->setCaption( tr("Edit Name") ); 621 dlgName->setCaption( tr("Edit Name") );
609 gl = new QGridLayout( dlgName, 5, 2, 2, 3 ); 622 gl = new QGridLayout( dlgName, 5, 2, 2, 3 );
610 623
611 l = new QLabel( tr("First Name"), dlgName ); 624 l = new QLabel( tr("First Name"), dlgName );
612 gl->addWidget( l, 0, 0 ); 625 gl->addWidget( l, 0, 0 );
613 txtFirstName = new QLineEdit( dlgName ); 626 txtFirstName = new QLineEdit( dlgName );
614 gl->addWidget( txtFirstName, 0, 1 ); 627 gl->addWidget( txtFirstName, 0, 1 );
615 628
616 l = new QLabel( tr("Middle Name"), dlgName ); 629 l = new QLabel( tr("Middle Name"), dlgName );
617 gl->addWidget( l, 1, 0 ); 630 gl->addWidget( l, 1, 0 );
618 txtMiddleName = new QLineEdit( dlgName ); 631 txtMiddleName = new QLineEdit( dlgName );
619 gl->addWidget( txtMiddleName, 1, 1 ); 632 gl->addWidget( txtMiddleName, 1, 1 );
620 633
621 l = new QLabel( tr("Last Name"), dlgName ); 634 l = new QLabel( tr("Last Name"), dlgName );
622 gl->addWidget( l, 2, 0 ); 635 gl->addWidget( l, 2, 0 );
623 txtLastName = new QLineEdit( dlgName ); 636 txtLastName = new QLineEdit( dlgName );
624 gl->addWidget( txtLastName, 2, 1 ); 637 gl->addWidget( txtLastName, 2, 1 );
625 638
626 // l = new QLabel( tr("Suffix"), dlgName ); 639 // l = new QLabel( tr("Suffix"), dlgName );
627 // gl->addWidget( l, 3, 0 ); 640 // gl->addWidget( l, 3, 0 );
628 // txtSuffix = new QLineEdit( dlgName ); 641 // txtSuffix = new QLineEdit( dlgName );
629 // gl->addWidget( txtSuffix, 3, 1 ); 642 // gl->addWidget( txtSuffix, 3, 1 );
630 space = new QSpacerItem(1,1, 643 space = new QSpacerItem(1,1,
631 QSizePolicy::Maximum, 644 QSizePolicy::Maximum,
632 QSizePolicy::MinimumExpanding ); 645 QSizePolicy::MinimumExpanding );
633 gl->addItem( space, 4, 0 ); 646 gl->addItem( space, 4, 0 );
634 647
635 cmbChooserField1->insertStringList( trlChooserNames ); 648 cmbChooserField1->insertStringList( trlChooserNames );
636 cmbChooserField2->insertStringList( trlChooserNames ); 649 cmbChooserField2->insertStringList( trlChooserNames );
637 cmbChooserField3->insertStringList( trlChooserNames ); 650 cmbChooserField3->insertStringList( trlChooserNames );
638 cmbChooserField4->insertStringList( trlChooserNames ); 651 cmbChooserField4->insertStringList( trlChooserNames );
639 652
640 cmbChooserField1->setCurrentItem( 0 ); 653 cmbChooserField1->setCurrentItem( 0 );
641 cmbChooserField2->setCurrentItem( 1 ); 654 cmbChooserField2->setCurrentItem( 1 );
642 cmbChooserField3->setCurrentItem( 2 ); 655 cmbChooserField3->setCurrentItem( 2 );
643 656
644 connect( btnFullName, SIGNAL(clicked()), this, SLOT(slotName()) ); 657 connect( btnFullName, SIGNAL(clicked()), this, SLOT(slotName()) );
645 658
646 connect( txtFullName, SIGNAL(textChanged(const QString &)), this, SLOT(slotFullNameChange(const QString &)) ); 659 connect( txtFullName, SIGNAL(textChanged(const QString &)), this, SLOT(slotFullNameChange(const QString &)) );
647 660
648 connect( txtSuffix, SIGNAL(textChanged(const QString &)), this, SLOT(slotSuffixChange(const QString &)) ); 661 connect( txtSuffix, SIGNAL(textChanged(const QString &)), this, SLOT(slotSuffixChange(const QString &)) );
649 662
650 connect( txtChooserField1, SIGNAL(textChanged(const QString &)), 663 connect( txtChooserField1, SIGNAL(textChanged(const QString &)),
651 this, SLOT(slotChooser1Change(const QString &)) ); 664 this, SLOT(slotChooser1Change(const QString &)) );
652 connect( txtChooserField2, SIGNAL(textChanged(const QString &)), 665 connect( txtChooserField2, SIGNAL(textChanged(const QString &)),
653 this, SLOT(slotChooser2Change(const QString &)) ); 666 this, SLOT(slotChooser2Change(const QString &)) );
654 connect( txtChooserField3, SIGNAL(textChanged(const QString &)), 667 connect( txtChooserField3, SIGNAL(textChanged(const QString &)),
655 this, SLOT(slotChooser3Change(const QString &)) ); 668 this, SLOT(slotChooser3Change(const QString &)) );
656 connect( txtChooserField4, SIGNAL(textChanged(const QString &)), 669 connect( txtChooserField4, SIGNAL(textChanged(const QString &)),
657 this, SLOT(slotChooser4Change(const QString &)) ); 670 this, SLOT(slotChooser4Change(const QString &)) );
658 connect( txtAddress, SIGNAL(textChanged(const QString &)), 671 connect( txtAddress, SIGNAL(textChanged(const QString &)),
659 this, SLOT(slotAddressChange(const QString &)) ); 672 this, SLOT(slotAddressChange(const QString &)) );
660 connect( txtCity, SIGNAL(textChanged(const QString &)), 673 connect( txtCity, SIGNAL(textChanged(const QString &)),
661 this, SLOT(slotCityChange(const QString &)) ); 674 this, SLOT(slotCityChange(const QString &)) );
662 connect( txtState, SIGNAL(textChanged(const QString &)), 675 connect( txtState, SIGNAL(textChanged(const QString &)),
663 this, SLOT(slotStateChange(const QString &)) ); 676 this, SLOT(slotStateChange(const QString &)) );
664 connect( txtZip, SIGNAL(textChanged(const QString &)), 677 connect( txtZip, SIGNAL(textChanged(const QString &)),
665 this, SLOT(slotZipChange(const QString &)) ); 678 this, SLOT(slotZipChange(const QString &)) );
666 connect( cmbCountry, SIGNAL(textChanged(const QString &)), 679 connect( cmbCountry, SIGNAL(textChanged(const QString &)),
667 this, SLOT(slotCountryChange(const QString &)) ); 680 this, SLOT(slotCountryChange(const QString &)) );
668 connect( cmbCountry, SIGNAL(activated(const QString &)), 681 connect( cmbCountry, SIGNAL(activated(const QString &)),
669 this, SLOT(slotCountryChange(const QString &)) ); 682 this, SLOT(slotCountryChange(const QString &)) );
670 connect( cmbChooserField1, SIGNAL(activated(int)), 683 connect( cmbChooserField1, SIGNAL(activated(int)),
671 this, SLOT(slotCmbChooser1Change(int)) ); 684 this, SLOT(slotCmbChooser1Change(int)) );
672 connect( cmbChooserField2, SIGNAL(activated(int)), 685 connect( cmbChooserField2, SIGNAL(activated(int)),
673 this, SLOT(slotCmbChooser2Change(int)) ); 686 this, SLOT(slotCmbChooser2Change(int)) );
674 connect( cmbChooserField3, SIGNAL(activated(int)), 687 connect( cmbChooserField3, SIGNAL(activated(int)),
675 this, SLOT(slotCmbChooser3Change(int)) ); 688 this, SLOT(slotCmbChooser3Change(int)) );
676 connect( cmbChooserField4, SIGNAL(activated(int)), 689 connect( cmbChooserField4, SIGNAL(activated(int)),
677 this, SLOT(slotCmbChooser4Change(int)) ); 690 this, SLOT(slotCmbChooser4Change(int)) );
678 connect( cmbAddress, SIGNAL(activated(int)), 691 connect( cmbAddress, SIGNAL(activated(int)),
679 this, SLOT(slotAddressTypeChange(int)) ); 692 this, SLOT(slotAddressTypeChange(int)) );
680 693
681 new QPEDialogListener(this); 694 new QPEDialogListener(this);
682 695
683 setPersonalView ( m_personalView ); 696 setPersonalView ( m_personalView );
684 697
685 qWarning("init() END"); 698 qWarning("init() END");
686} 699}
687 700
688void ContactEditor::defaultEmailChanged(int i){ 701void ContactEditor::defaultEmailChanged(int i){
689 qDebug("defaultEmailChanged"); 702 qDebug("defaultEmailChanged");
690 703
691 // was sollte das ? (se) 704 // was sollte das ? (se)
692 // int index = cmbChooserField1->currentItem(); 705 // int index = cmbChooserField1->currentItem();
693 // slChooserValues[index] = cmbDefaultEmail->text(i); 706 // slChooserValues[index] = cmbDefaultEmail->text(i);
694 707
695 defaultEmail = cmbDefaultEmail->text(i); 708 defaultEmail = cmbDefaultEmail->text(i);
696 qDebug ("Changed to: %s", defaultEmail.latin1()); 709 qDebug ("Changed to: %s", defaultEmail.latin1());
697 710
698} 711}
699 712
700void ContactEditor::populateDefaultEmailCmb(){ 713void ContactEditor::populateDefaultEmailCmb(){
701 714
702 // if the default-email combo was not selected and therfore not created 715 // if the default-email combo was not selected and therfore not created
703 // we get a lot of trouble.. Therfore create an invisible one.. 716 // we get a lot of trouble.. Therfore create an invisible one..
704 if ( !cmbDefaultEmail ){ 717 if ( !cmbDefaultEmail ){
705 cmbDefaultEmail = new QComboBox(this); 718 cmbDefaultEmail = new QComboBox(this);
706 cmbDefaultEmail -> hide(); 719 cmbDefaultEmail -> hide();
707 } 720 }
708 cmbDefaultEmail->clear(); 721 cmbDefaultEmail->clear();
709 cmbDefaultEmail->insertStringList( emails ); 722 cmbDefaultEmail->insertStringList( emails );
710 // cmbDefaultEmail->show(); 723 // cmbDefaultEmail->show();
711 724
712 // Select default email in combo.. 725 // Select default email in combo..
713 bool found = false; 726 bool found = false;
714 for ( int i = 0; i < cmbDefaultEmail->count(); i++){ 727 for ( int i = 0; i < cmbDefaultEmail->count(); i++){
715 qDebug(" populateDefaultEmailCmb text >%s< defaultEmail >%s<", 728 qDebug(" populateDefaultEmailCmb text >%s< defaultEmail >%s<",
716 cmbDefaultEmail->text( i ).latin1(), defaultEmail.latin1()); 729 cmbDefaultEmail->text( i ).latin1(), defaultEmail.latin1());
717 730
718 if ( cmbDefaultEmail->text( i ).stripWhiteSpace() == defaultEmail.stripWhiteSpace() ){ 731 if ( cmbDefaultEmail->text( i ).stripWhiteSpace() == defaultEmail.stripWhiteSpace() ){
719 cmbDefaultEmail->setCurrentItem( i ); 732 cmbDefaultEmail->setCurrentItem( i );
720 qDebug("set"); 733 qDebug("set");
721 found = true; 734 found = true;
722 } 735 }
723 } 736 }
724 737
725 // If the current default email is not found in the list, we choose the 738 // If the current default email is not found in the list, we choose the
726 // first one.. 739 // first one..
727 if ( !found ) 740 if ( !found )
728 defaultEmail = cmbDefaultEmail->text(0); 741 defaultEmail = cmbDefaultEmail->text(0);
729} 742}
730 743
731// Called when any combobox was changed. 744// Called when any combobox was changed.
732// "true" returned if the change was chandled by this function, else it should 745// "true" returned if the change was chandled by this function, else it should
733// be handled by something else.. 746// be handled by something else..
734bool ContactEditor::cmbChooserChange( int index, QWidgetStack* inputStack, int widgetPos ) { 747bool ContactEditor::cmbChooserChange( int index, QWidgetStack* inputStack, int widgetPos ) {
735 QString type = slChooserNames[index]; 748 QString type = slChooserNames[index];
736 qWarning("ContactEditor::cmbChooserChange -> Type: %s, WidgetPos: %d", type.latin1(), widgetPos ); 749 qWarning("ContactEditor::cmbChooserChange -> Type: %s, WidgetPos: %d", type.latin1(), widgetPos );
737 750
738 if ( !initializing ) 751 if ( !initializing )
739 contactfields.setFieldOrder( widgetPos-1, index ); 752 contactfields.setFieldOrder( widgetPos-1, index );
740 753
741 // Create and connect combobox for selecting the default email 754 // Create and connect combobox for selecting the default email
742 if ( type == "Default Email"){ 755 if ( type == "Default Email"){
743 qWarning("Choosing default-email (defaultEmailChooserPosition= %d) ", defaultEmailChooserPosition); 756 qWarning("Choosing default-email (defaultEmailChooserPosition= %d) ", defaultEmailChooserPosition);
744 757
745 // More than one default-email chooser is not allowed ! 758 // More than one default-email chooser is not allowed !
746 if ( ( defaultEmailChooserPosition != -1 ) && 759 if ( ( defaultEmailChooserPosition != -1 ) &&
747 defaultEmailChooserPosition != widgetPos && !initializing){ 760 defaultEmailChooserPosition != widgetPos && !initializing){
748 chooserError( widgetPos ); 761 chooserError( widgetPos );
749 return true; 762 return true;
750 } 763 }
751 764
752 QComboBox* cmbo = ( QComboBox* ) inputStack -> widget( Combo ); 765 QComboBox* cmbo = ( QComboBox* ) inputStack -> widget( Combo );
753 if ( cmbo ){ 766 if ( cmbo ){
754 inputStack->raiseWidget( TextField ); 767 inputStack->raiseWidget( TextField );
755 inputStack -> removeWidget( cmbo ); 768 inputStack -> removeWidget( cmbo );
756 delete cmbo; 769 delete cmbo;
757 } 770 }
758 cmbo = new QComboBox( inputStack ); 771 cmbo = new QComboBox( inputStack );
759 cmbo -> insertStringList( emails ); 772 cmbo -> insertStringList( emails );
760 773
761 inputStack -> addWidget( cmbo, Combo ); 774 inputStack -> addWidget( cmbo, Combo );
762 inputStack -> raiseWidget( Combo ); 775 inputStack -> raiseWidget( Combo );
763 776
764 defaultEmailChooserPosition = widgetPos; 777 defaultEmailChooserPosition = widgetPos;
765 cmbDefaultEmail = cmbo; 778 cmbDefaultEmail = cmbo;
766 779
767 connect( cmbo,SIGNAL( activated(int) ), 780 connect( cmbo,SIGNAL( activated(int) ),
768 SLOT( defaultEmailChanged(int) ) ); 781 SLOT( defaultEmailChanged(int) ) );
769 782
770 // Set current default email 783 // Set current default email
771 populateDefaultEmailCmb(); 784 populateDefaultEmailCmb();
772 785
773 786
774 } else { 787 } else {
775 // Something else was selected: Hide combo.. 788 // Something else was selected: Hide combo..
776 qWarning(" Hiding default-email combo" ); 789 qWarning(" Hiding default-email combo" );
777 if ( defaultEmailChooserPosition == widgetPos ){ 790 if ( defaultEmailChooserPosition == widgetPos ){
778 defaultEmailChooserPosition = -1; 791 defaultEmailChooserPosition = -1;
779 } 792 }
780 QComboBox* cmbo = ( QComboBox* ) inputStack -> widget( Combo ); 793 QComboBox* cmbo = ( QComboBox* ) inputStack -> widget( Combo );
781 if ( cmbo ){ 794 if ( cmbo ){
782 inputStack->raiseWidget( TextField ); 795 inputStack->raiseWidget( TextField );
783 inputStack -> removeWidget( cmbo ); 796 inputStack -> removeWidget( cmbo );
784 cmbDefaultEmail = 0l; 797 cmbDefaultEmail = 0l;
785 delete cmbo; 798 delete cmbo;
786 } 799 }
787 800
788 // Caller should initialize the responsible textfield, therefore 801 // Caller should initialize the responsible textfield, therefore
789 // "false" is returned 802 // "false" is returned
790 return false; 803 return false;
791 } 804 }
792 805
793 // Everything is worked off .. 806 // Everything is worked off ..
794 return true; 807 return true;
795 808
796} 809}
797 810
798// Currently accessed when we select default-email more than once ! 811// Currently accessed when we select default-email more than once !
799void ContactEditor::chooserError( int index ) 812void ContactEditor::chooserError( int index )
800{ 813{
801 qWarning("ContactEditor::chooserError( %d )", index); 814 qWarning("ContactEditor::chooserError( %d )", index);
802 QMessageBox::warning( this, "Chooser Error", 815 QMessageBox::warning( this, "Chooser Error",
803 "Multiple selection of this\n" 816 "Multiple selection of this\n"
804 "Item is not allowed !\n\n" 817 "Item is not allowed !\n\n"
805 "First deselect the previous one !", 818 "First deselect the previous one !",
806 "&OK", 0, 0, 819 "&OK", 0, 0,
807 0, 0 ); 820 0, 0 );
808 821
809 // Reset the selected Chooser. Unfortunately the chooser 822 // Reset the selected Chooser. Unfortunately the chooser
810 // generates no signal, therfore we have to 823 // generates no signal, therfore we have to
811 // call the cmbChooserChange function manually.. 824 // call the cmbChooserChange function manually..
812 switch( index ){ 825 switch( index ){
813 case 1: 826 case 1:
814 cmbChooserField1 -> setCurrentItem( 0 ); 827 cmbChooserField1 -> setCurrentItem( 0 );
815 slotCmbChooser1Change( 0 ); 828 slotCmbChooser1Change( 0 );
816 break; 829 break;
817 case 2: 830 case 2:
818 cmbChooserField2 -> setCurrentItem( 0 ); 831 cmbChooserField2 -> setCurrentItem( 0 );
819 slotCmbChooser2Change( 0 ); 832 slotCmbChooser2Change( 0 );
820 break; 833 break;
821 case 3: 834 case 3:
822 cmbChooserField3 -> setCurrentItem( 0 ); 835 cmbChooserField3 -> setCurrentItem( 0 );
823 slotCmbChooser3Change( 0 ); 836 slotCmbChooser3Change( 0 );
824 break; 837 break;
825 case 4: 838 case 4:
826 cmbChooserField4 -> setCurrentItem( 0 ); 839 cmbChooserField4 -> setCurrentItem( 0 );
827 slotCmbChooser4Change( 0 ); 840 slotCmbChooser4Change( 0 );
828 break; 841 break;
829 } 842 }
830} 843}
831 844
832// Called when something was changed in a textfield (shouldn't it called textchanged? (se)) 845// Called when something was changed in a textfield (shouldn't it called textchanged? (se))
833void ContactEditor::chooserChange( const QString &textChanged, int index, 846void ContactEditor::chooserChange( const QString &textChanged, int index,
834 QLineEdit* , int widgetPos ) { 847 QLineEdit* , int widgetPos ) {
835 848
836 QString type = slChooserNames[index]; // :SX 849 QString type = slChooserNames[index]; // :SX
837 qDebug("ContactEditor::chooserChange( type=>%s<, textChanged=>%s< index=%i, widgetPos=%i", 850 qDebug("ContactEditor::chooserChange( type=>%s<, textChanged=>%s< index=%i, widgetPos=%i",
838 type.latin1(),textChanged.latin1(), index, widgetPos ); 851 type.latin1(),textChanged.latin1(), index, widgetPos );
839 852
840 if ( type == "Default Email"){ 853 if ( type == "Default Email"){
841 qWarning ("??? Wozu??: %s", textChanged.latin1()); 854 qWarning ("??? Wozu??: %s", textChanged.latin1());
842 defaultEmail = textChanged; 855 defaultEmail = textChanged;
843 856
844 populateDefaultEmailCmb(); 857 populateDefaultEmailCmb();
845 858
846 }else if (type == "Emails"){ 859 }else if (type == "Emails"){
847 qDebug("emails"); 860 qDebug("emails");
848 861
849 QString de; 862 QString de;
850 emails = QStringList::split (",", textChanged ); 863 emails = QStringList::split (",", textChanged );
851 864
852 populateDefaultEmailCmb(); 865 populateDefaultEmailCmb();
853 } 866 }
854 867
855 slChooserValues[index] = textChanged; 868 slChooserValues[index] = textChanged;
856 869
857} 870}
858 871
859void ContactEditor::slotChooser1Change( const QString &textChanged ) { 872void ContactEditor::slotChooser1Change( const QString &textChanged ) {
860 qWarning("ContactEditor::slotChooser1Change( %s )", textChanged.latin1()); 873 qWarning("ContactEditor::slotChooser1Change( %s )", textChanged.latin1());
861 chooserChange( textChanged, cmbChooserField1->currentItem(), txtChooserField1, 1); 874 chooserChange( textChanged, cmbChooserField1->currentItem(), txtChooserField1, 1);
862} 875}
863 876
864void ContactEditor::slotChooser2Change( const QString &textChanged ) { 877void ContactEditor::slotChooser2Change( const QString &textChanged ) {
865 qWarning("ContactEditor::slotChooser2Change( %s )", textChanged.latin1()); 878 qWarning("ContactEditor::slotChooser2Change( %s )", textChanged.latin1());
866 chooserChange( textChanged, cmbChooserField2->currentItem(), txtChooserField2, 2); 879 chooserChange( textChanged, cmbChooserField2->currentItem(), txtChooserField2, 2);
867 880
868} 881}
869 882
870void ContactEditor::slotChooser3Change( const QString &textChanged ) { 883void ContactEditor::slotChooser3Change( const QString &textChanged ) {
871 qWarning("ContactEditor::slotChooser3Change( %s )", textChanged.latin1()); 884 qWarning("ContactEditor::slotChooser3Change( %s )", textChanged.latin1());
872 chooserChange( textChanged, cmbChooserField3->currentItem(), txtChooserField3, 3); 885 chooserChange( textChanged, cmbChooserField3->currentItem(), txtChooserField3, 3);
873} 886}
874 887
875void ContactEditor::slotChooser4Change( const QString &textChanged ) { 888void ContactEditor::slotChooser4Change( const QString &textChanged ) {
876 qWarning("ContactEditor::slotChooser4Change( %s )", textChanged.latin1()); 889 qWarning("ContactEditor::slotChooser4Change( %s )", textChanged.latin1());
877 chooserChange( textChanged, cmbChooserField4->currentItem(), txtChooserField4, 4); 890 chooserChange( textChanged, cmbChooserField4->currentItem(), txtChooserField4, 4);
878} 891}
879 892
880void ContactEditor::slotAddressChange( const QString &textChanged ) { 893void ContactEditor::slotAddressChange( const QString &textChanged ) {
881 894
882 if ( cmbAddress->currentItem() == 0 ) { 895 if ( cmbAddress->currentItem() == 0 ) {
883 slBusinessAddress[0] = textChanged; 896 slBusinessAddress[0] = textChanged;
884 } else { 897 } else {
885 slHomeAddress[0] = textChanged; 898 slHomeAddress[0] = textChanged;
886 } 899 }
887} 900}
888 901
889void ContactEditor::slotAddress2Change( const QString &textChanged ) { 902void ContactEditor::slotAddress2Change( const QString &textChanged ) {
890 903
891 if ( cmbAddress->currentItem() == 0 ) { 904 if ( cmbAddress->currentItem() == 0 ) {
892 slBusinessAddress[1] = textChanged; 905 slBusinessAddress[1] = textChanged;
893 } else { 906 } else {
894 slHomeAddress[1] = textChanged; 907 slHomeAddress[1] = textChanged;
895 } 908 }
896} 909}
897 910
898void ContactEditor::slotPOBoxChange( const QString &textChanged ) { 911void ContactEditor::slotPOBoxChange( const QString &textChanged ) {
899 912
900 if ( cmbAddress->currentItem() == 0 ) { 913 if ( cmbAddress->currentItem() == 0 ) {
901 slBusinessAddress[2] = textChanged; 914 slBusinessAddress[2] = textChanged;
902 } else { 915 } else {
903 slHomeAddress[2] = textChanged; 916 slHomeAddress[2] = textChanged;
904 } 917 }
905} 918}
906 919
907void ContactEditor::slotCityChange( const QString &textChanged ) { 920void ContactEditor::slotCityChange( const QString &textChanged ) {
908 921
909 if ( cmbAddress->currentItem() == 0 ) { 922 if ( cmbAddress->currentItem() == 0 ) {
910 slBusinessAddress[3] = textChanged; 923 slBusinessAddress[3] = textChanged;
911 } else { 924 } else {
912 slHomeAddress[3] = textChanged; 925 slHomeAddress[3] = textChanged;
913 } 926 }
914} 927}
915 928
916void ContactEditor::slotStateChange( const QString &textChanged ) { 929void ContactEditor::slotStateChange( const QString &textChanged ) {
917 930
918 931
919 if ( cmbAddress->currentItem() == 0 ) { 932 if ( cmbAddress->currentItem() == 0 ) {
920 slBusinessAddress[4] = textChanged; 933 slBusinessAddress[4] = textChanged;
921 } else { 934 } else {
922 slHomeAddress[4] = textChanged; 935 slHomeAddress[4] = textChanged;
923 } 936 }
924} 937}
925 938
926void ContactEditor::slotZipChange( const QString &textChanged ) { 939void ContactEditor::slotZipChange( const QString &textChanged ) {
927 940
928 if ( cmbAddress->currentItem() == 0 ) { 941 if ( cmbAddress->currentItem() == 0 ) {
929 slBusinessAddress[5] = textChanged; 942 slBusinessAddress[5] = textChanged;
930 } else { 943 } else {
931 slHomeAddress[5] = textChanged; 944 slHomeAddress[5] = textChanged;
932 } 945 }
933} 946}
934 947
935void ContactEditor::slotCountryChange( const QString &textChanged ) { 948void ContactEditor::slotCountryChange( const QString &textChanged ) {
936 949
937 if ( cmbAddress->currentItem() == 0 ) { 950 if ( cmbAddress->currentItem() == 0 ) {
938 slBusinessAddress[6] = textChanged; 951 slBusinessAddress[6] = textChanged;
939 } else { 952 } else {
940 slHomeAddress[6] = textChanged; 953 slHomeAddress[6] = textChanged;
941 } 954 }
942} 955}
943 956
944 957
945void ContactEditor::slotCmbChooser1Change( int index ) { 958void ContactEditor::slotCmbChooser1Change( int index ) {
946 qWarning("ContactEditor::slotCmbChooser1Change( %d )", index); 959 qWarning("ContactEditor::slotCmbChooser1Change( %d )", index);
947 if ( !cmbChooserChange( cmbChooserField1->currentItem(), m_widgetStack1, 1) ){ 960 if ( !cmbChooserChange( cmbChooserField1->currentItem(), m_widgetStack1, 1) ){
948 961
949 txtChooserField1->setText( slChooserValues[index] ); 962 txtChooserField1->setText( slChooserValues[index] );
950 txtChooserField1->setFocus(); 963 txtChooserField1->setFocus();
951 964
952 } 965 }
953 966
954} 967}
955 968
956void ContactEditor::slotCmbChooser2Change( int index ) { 969void ContactEditor::slotCmbChooser2Change( int index ) {
957 qWarning("ContactEditor::slotCmbChooser2Change( %d )", index); 970 qWarning("ContactEditor::slotCmbChooser2Change( %d )", index);
958 971
959 if ( !cmbChooserChange( cmbChooserField2->currentItem(), m_widgetStack2, 2) ){ 972 if ( !cmbChooserChange( cmbChooserField2->currentItem(), m_widgetStack2, 2) ){
960 973
961 txtChooserField2->setText( slChooserValues[index] ); 974 txtChooserField2->setText( slChooserValues[index] );
962 txtChooserField2->setFocus(); 975 txtChooserField2->setFocus();
963 976
964 } 977 }
965} 978}
966 979
967void ContactEditor::slotCmbChooser3Change( int index ) { 980void ContactEditor::slotCmbChooser3Change( int index ) {
968 qWarning("ContactEditor::slotCmbChooser3Change( %d )", index); 981 qWarning("ContactEditor::slotCmbChooser3Change( %d )", index);
969 982
970 if ( !cmbChooserChange( cmbChooserField3->currentItem(), m_widgetStack3, 3) ){ 983 if ( !cmbChooserChange( cmbChooserField3->currentItem(), m_widgetStack3, 3) ){
971 984
972 txtChooserField3->setText( slChooserValues[index] ); 985 txtChooserField3->setText( slChooserValues[index] );
973 txtChooserField3->setFocus(); 986 txtChooserField3->setFocus();
974 987