-rw-r--r-- | noncore/apps/opie-console/metafactory.cpp | 2 | ||||
-rw-r--r-- | noncore/apps/opie-console/metafactory.h | 4 | ||||
-rw-r--r-- | noncore/apps/opie-console/profileeditordialog.cpp | 14 | ||||
-rw-r--r-- | noncore/apps/opie-console/profileeditorplugins.cpp | 102 | ||||
-rw-r--r-- | noncore/apps/opie-console/profileeditorplugins.h | 10 |
5 files changed, 73 insertions, 59 deletions
diff --git a/noncore/apps/opie-console/metafactory.cpp b/noncore/apps/opie-console/metafactory.cpp index c5e614d..b69d6da 100644 --- a/noncore/apps/opie-console/metafactory.cpp +++ b/noncore/apps/opie-console/metafactory.cpp | |||
@@ -51,25 +51,25 @@ IOLayer* MetaFactory::newIOLayer( const QString& str,const Profile& prof ) { | |||
51 | QMap<QString, iolayer>::Iterator it; | 51 | QMap<QString, iolayer>::Iterator it; |
52 | it = m_layerFact.find( str ); | 52 | it = m_layerFact.find( str ); |
53 | if ( it != m_layerFact.end() ) { | 53 | if ( it != m_layerFact.end() ) { |
54 | lay = (*(it.data()))(prof); | 54 | lay = (*(it.data()))(prof); |
55 | /* | 55 | /* |
56 | iolayer laye = it.data(); | 56 | iolayer laye = it.data(); |
57 | lay = (*laye )(conf);*/ | 57 | lay = (*laye )(conf);*/ |
58 | } | 58 | } |
59 | 59 | ||
60 | return lay; | 60 | return lay; |
61 | } | 61 | } |
62 | 62 | ||
63 | ProfileEditorPlugin *MetaFactory::newConfigPlugin ( const QString& str, QWidget *parent, const Profile& prof) { | 63 | ProfileEditorPlugin *MetaFactory::newConfigPlugin ( const QString& str, QWidget *parent, Profile *prof) { |
64 | ProfileEditorPlugin *p = NULL; | 64 | ProfileEditorPlugin *p = NULL; |
65 | configWidget c; | 65 | configWidget c; |
66 | 66 | ||
67 | c = m_confFact[str]; | 67 | c = m_confFact[str]; |
68 | if(c) p = c(parent, prof); | 68 | if(c) p = c(parent, prof); |
69 | 69 | ||
70 | return p; | 70 | return p; |
71 | } | 71 | } |
72 | 72 | ||
73 | QString MetaFactory::name( const QString& str ) { | 73 | QString MetaFactory::name( const QString& str ) { |
74 | return m_namemap[str]; | 74 | return m_namemap[str]; |
75 | } | 75 | } |
diff --git a/noncore/apps/opie-console/metafactory.h b/noncore/apps/opie-console/metafactory.h index 8c714b3..216de03 100644 --- a/noncore/apps/opie-console/metafactory.h +++ b/noncore/apps/opie-console/metafactory.h | |||
@@ -9,43 +9,43 @@ | |||
9 | #include <qwidget.h> | 9 | #include <qwidget.h> |
10 | #include <qmap.h> | 10 | #include <qmap.h> |
11 | 11 | ||
12 | #include <qpe/config.h> | 12 | #include <qpe/config.h> |
13 | 13 | ||
14 | #include "io_layer.h" | 14 | #include "io_layer.h" |
15 | #include "file_layer.h" | 15 | #include "file_layer.h" |
16 | #include "profile.h" | 16 | #include "profile.h" |
17 | #include "profileeditorplugins.h" | 17 | #include "profileeditorplugins.h" |
18 | 18 | ||
19 | class MetaFactory { | 19 | class MetaFactory { |
20 | public: | 20 | public: |
21 | typedef ProfileEditorPlugin* (*configWidget)(QWidget* parent, const Profile&); | 21 | typedef ProfileEditorPlugin* (*configWidget)(QWidget* parent, Profile* prof); |
22 | typedef IOLayer* (*iolayer)(const Profile& ); | 22 | typedef IOLayer* (*iolayer)(const Profile& ); |
23 | typedef FileTransferLayer* (*filelayer)(IOLayer*); | 23 | typedef FileTransferLayer* (*filelayer)(IOLayer*); |
24 | 24 | ||
25 | MetaFactory(); | 25 | MetaFactory(); |
26 | ~MetaFactory(); | 26 | ~MetaFactory(); |
27 | 27 | ||
28 | void addConfigWidgetFactory( const QString&, | 28 | void addConfigWidgetFactory( const QString&, |
29 | const QString&, | 29 | const QString&, |
30 | configWidget ); | 30 | configWidget ); |
31 | void addIOLayerFactory(const QString&, | 31 | void addIOLayerFactory(const QString&, |
32 | iolayer ); | 32 | iolayer ); |
33 | void addFileTransferLayer( const QString&, | 33 | void addFileTransferLayer( const QString&, |
34 | filelayer ); | 34 | filelayer ); |
35 | QStringList ioLayers()const; | 35 | QStringList ioLayers()const; |
36 | QStringList configWidgets()const; | 36 | QStringList configWidgets()const; |
37 | QStringList fileTransferLayers()const; | 37 | QStringList fileTransferLayers()const; |
38 | IOLayer* newIOLayer( const QString&,const Profile& ); | 38 | IOLayer* newIOLayer( const QString&,const Profile& ); |
39 | ProfileEditorPlugin *newConfigPlugin ( const QString&, QWidget*, const Profile& ); | 39 | ProfileEditorPlugin *newConfigPlugin ( const QString&, QWidget*, Profile* ); |
40 | 40 | ||
41 | QString name( const QString& ); | 41 | QString name( const QString& ); |
42 | 42 | ||
43 | private: | 43 | private: |
44 | QMap<QString, configWidget> m_confFact; | 44 | QMap<QString, configWidget> m_confFact; |
45 | QMap<QString, iolayer> m_layerFact; | 45 | QMap<QString, iolayer> m_layerFact; |
46 | QMap<QString, filelayer> m_fileFact; | 46 | QMap<QString, filelayer> m_fileFact; |
47 | QMap<QString, QString> m_namemap; | 47 | QMap<QString, QString> m_namemap; |
48 | }; | 48 | }; |
49 | 49 | ||
50 | 50 | ||
51 | #endif | 51 | #endif |
diff --git a/noncore/apps/opie-console/profileeditordialog.cpp b/noncore/apps/opie-console/profileeditordialog.cpp index d98e589..8e63429 100644 --- a/noncore/apps/opie-console/profileeditordialog.cpp +++ b/noncore/apps/opie-console/profileeditordialog.cpp | |||
@@ -64,25 +64,25 @@ void ProfileEditorDialog::initUI() | |||
64 | QLabel *device = new QLabel(QObject::tr("Device"), tabconn); | 64 | QLabel *device = new QLabel(QObject::tr("Device"), tabconn); |
65 | 65 | ||
66 | device_box = new QComboBox(tabconn); | 66 | device_box = new QComboBox(tabconn); |
67 | 67 | ||
68 | QStringList w = m_fact->configWidgets(); | 68 | QStringList w = m_fact->configWidgets(); |
69 | for(QStringList::Iterator it = w.begin(); it != w.end(); it++) | 69 | for(QStringList::Iterator it = w.begin(); it != w.end(); it++) |
70 | device_box->insertItem(m_fact->name((*it))); | 70 | device_box->insertItem(m_fact->name((*it))); |
71 | 71 | ||
72 | // connection tab, factory part | 72 | // connection tab, factory part |
73 | plugin_base = new QWidget(tabconn); | 73 | plugin_base = new QWidget(tabconn); |
74 | plugin_layout = new QHBoxLayout(plugin_base, 0); | 74 | plugin_layout = new QHBoxLayout(plugin_base, 0); |
75 | 75 | ||
76 | plugin_plugin = m_fact->newConfigPlugin("serial", plugin_base, m_prof); | 76 | plugin_plugin = m_fact->newConfigPlugin("serial", plugin_base, &m_prof); |
77 | plugin_layout->add(plugin_plugin->widget()); | 77 | plugin_layout->add(plugin_plugin->widget()); |
78 | 78 | ||
79 | // connection tab, general part | 79 | // connection tab, general part |
80 | 80 | ||
81 | QWidget *conn_widget = plugin_plugin->connection_widget(); | 81 | QWidget *conn_widget = plugin_plugin->connection_widget(); |
82 | conn_widget->reparent(tabconn, 0, QPoint(), true); | 82 | conn_widget->reparent(tabconn, 0, QPoint(), true); |
83 | 83 | ||
84 | // terminal tab | 84 | // terminal tab |
85 | 85 | ||
86 | QWidget *term_widget = plugin_plugin->terminal_widget(); | 86 | QWidget *term_widget = plugin_plugin->terminal_widget(); |
87 | term_widget->reparent(tabterm, 0, QPoint(), true); | 87 | term_widget->reparent(tabterm, 0, QPoint(), true); |
88 | 88 | ||
@@ -103,64 +103,74 @@ void ProfileEditorDialog::initUI() | |||
103 | vbox2->add(term_widget); | 103 | vbox2->add(term_widget); |
104 | 104 | ||
105 | addTab(tabprof, QObject::tr("Profile")); | 105 | addTab(tabprof, QObject::tr("Profile")); |
106 | addTab(tabconn, QObject::tr("Connection")); | 106 | addTab(tabconn, QObject::tr("Connection")); |
107 | addTab(tabterm, QObject::tr("Terminal")); | 107 | addTab(tabterm, QObject::tr("Terminal")); |
108 | 108 | ||
109 | setOkButton(QObject::tr("OK")); | 109 | setOkButton(QObject::tr("OK")); |
110 | setCancelButton(QObject::tr("Cancel")); | 110 | setCancelButton(QObject::tr("Cancel")); |
111 | 111 | ||
112 | // load profile values | 112 | // load profile values |
113 | 113 | ||
114 | name_line->setText(m_prof.name()); | 114 | name_line->setText(m_prof.name()); |
115 | for(int i = 0; i < device_box->count(); i++) | ||
116 | { | ||
117 | device_box->setCurrentItem(i); | ||
118 | if(prof_type() == m_prof.ioLayerName()) | ||
119 | { | ||
120 | slotDevice(i); | ||
121 | break; | ||
122 | } | ||
123 | } | ||
115 | 124 | ||
116 | // signals | 125 | // signals |
117 | 126 | ||
118 | connect(this, SIGNAL(cancelButtonPressed()), SLOT(slotCancel())); | 127 | connect(this, SIGNAL(cancelButtonPressed()), SLOT(slotCancel())); |
119 | connect(device_box, SIGNAL(activated(int)), SLOT(slotDevice(int))); | 128 | connect(device_box, SIGNAL(activated(int)), SLOT(slotDevice(int))); |
120 | } | 129 | } |
121 | 130 | ||
122 | ProfileEditorDialog::~ProfileEditorDialog() { | 131 | ProfileEditorDialog::~ProfileEditorDialog() { |
123 | 132 | ||
124 | } | 133 | } |
125 | 134 | ||
126 | void ProfileEditorDialog::slotDevice(int id) | 135 | void ProfileEditorDialog::slotDevice(int id) |
127 | { | 136 | { |
128 | delete plugin_plugin; | 137 | delete plugin_plugin; |
129 | 138 | ||
130 | plugin_plugin = m_fact->newConfigPlugin(prof_type(), plugin_base, m_prof); | 139 | plugin_plugin = m_fact->newConfigPlugin(prof_type(), plugin_base, &m_prof); |
131 | plugin_layout->add(plugin_plugin->widget()); | 140 | plugin_layout->add(plugin_plugin->widget()); |
132 | 141 | ||
133 | // Reload profile associated to device, including e.g. conn_device() | 142 | // Reload profile associated to device, including e.g. conn_device() |
134 | // m_prof = plugin_plugin->profile() | 143 | // m_prof = plugin_plugin->profile() |
135 | // or, keeping the profile name: m_prof->reload(plugin_plugin->profile()) | 144 | // or, keeping the profile name: m_prof->reload(plugin_plugin->profile()) |
136 | 145 | ||
137 | //plugin_plugin->show(); | 146 | //plugin_plugin->show(); |
138 | plugin_plugin->widget()->show(); | 147 | plugin_plugin->widget()->show(); |
139 | } | 148 | } |
140 | 149 | ||
141 | void ProfileEditorDialog::accept() | 150 | void ProfileEditorDialog::accept() |
142 | { | 151 | { |
143 | if(prof_name().isEmpty()) | 152 | if(prof_name().isEmpty()) |
144 | { | 153 | { |
145 | QMessageBox::information(this, | 154 | QMessageBox::information(this, |
146 | QObject::tr("Invalid profile"), | 155 | QObject::tr("Invalid profile"), |
147 | QObject::tr("Please enter a profile name.")); | 156 | QObject::tr("Please enter a profile name.")); |
148 | return; | 157 | return; |
149 | } | 158 | } |
150 | // Save profile and plugin profile | 159 | // Save profile and plugin profile |
151 | if(plugin_plugin) plugin_plugin->save(); | 160 | if(plugin_plugin) plugin_plugin->save(); |
152 | 161 | ||
153 | // Save general values | 162 | // Save general values |
154 | m_prof.setName(prof_name()); | 163 | m_prof.setName(prof_name()); |
164 | m_prof.setIOLayer(prof_type()); | ||
155 | 165 | ||
156 | QDialog::accept(); | 166 | QDialog::accept(); |
157 | } | 167 | } |
158 | 168 | ||
159 | void ProfileEditorDialog::slotCancel() | 169 | void ProfileEditorDialog::slotCancel() |
160 | { | 170 | { |
161 | reject(); | 171 | reject(); |
162 | } | 172 | } |
163 | 173 | ||
164 | QString ProfileEditorDialog::prof_name() | 174 | QString ProfileEditorDialog::prof_name() |
165 | { | 175 | { |
166 | return name_line->text(); | 176 | return name_line->text(); |
diff --git a/noncore/apps/opie-console/profileeditorplugins.cpp b/noncore/apps/opie-console/profileeditorplugins.cpp index 32e8235..a0bcab8 100644 --- a/noncore/apps/opie-console/profileeditorplugins.cpp +++ b/noncore/apps/opie-console/profileeditorplugins.cpp | |||
@@ -6,25 +6,25 @@ | |||
6 | #include "qlabel.h" | 6 | #include "qlabel.h" |
7 | #include "qlineedit.h" | 7 | #include "qlineedit.h" |
8 | #include "qlayout.h" | 8 | #include "qlayout.h" |
9 | #include "qcombobox.h" | 9 | #include "qcombobox.h" |
10 | #include "qradiobutton.h" | 10 | #include "qradiobutton.h" |
11 | #include "qcheckbox.h" | 11 | #include "qcheckbox.h" |
12 | #include "qbuttongroup.h" | 12 | #include "qbuttongroup.h" |
13 | 13 | ||
14 | #include "io_serial.h" | 14 | #include "io_serial.h" |
15 | 15 | ||
16 | // Base class | 16 | // Base class |
17 | 17 | ||
18 | ProfileEditorPlugin::ProfileEditorPlugin(QWidget *parent, Profile p) | 18 | ProfileEditorPlugin::ProfileEditorPlugin(QWidget *parent, Profile *p) |
19 | { | 19 | { |
20 | m_parent = parent; | 20 | m_parent = parent; |
21 | m_profile = p; | 21 | m_profile = p; |
22 | m_widget = NULL; | 22 | m_widget = NULL; |
23 | } | 23 | } |
24 | 24 | ||
25 | ProfileEditorPlugin::~ProfileEditorPlugin() | 25 | ProfileEditorPlugin::~ProfileEditorPlugin() |
26 | { | 26 | { |
27 | if(m_widget) delete m_widget; | 27 | if(m_widget) delete m_widget; |
28 | } | 28 | } |
29 | 29 | ||
30 | QWidget *ProfileEditorPlugin::connection_widget() | 30 | QWidget *ProfileEditorPlugin::connection_widget() |
@@ -67,27 +67,28 @@ QWidget *ProfileEditorPlugin::connection_widget() | |||
67 | lroot->add(speedlabel); | 67 | lroot->add(speedlabel); |
68 | lroot->add(speed_box); | 68 | lroot->add(speed_box); |
69 | lroot->add(flow); | 69 | lroot->add(flow); |
70 | QHBoxLayout *hbox = new QHBoxLayout(lroot, 2); | 70 | QHBoxLayout *hbox = new QHBoxLayout(lroot, 2); |
71 | hbox->add(flow_hw); | 71 | hbox->add(flow_hw); |
72 | hbox->add(flow_sw); | 72 | hbox->add(flow_sw); |
73 | lroot->add(parity); | 73 | lroot->add(parity); |
74 | QHBoxLayout *hbox2 = new QHBoxLayout(lroot, 2); | 74 | QHBoxLayout *hbox2 = new QHBoxLayout(lroot, 2); |
75 | hbox2->add(parity_odd); | 75 | hbox2->add(parity_odd); |
76 | hbox2->add(parity_even); | 76 | hbox2->add(parity_even); |
77 | 77 | ||
78 | // Apply profile settings | 78 | // Apply profile settings |
79 | int rad_flow = m_profile.readNumEntry("Flow"); | 79 | |
80 | int rad_parity = m_profile.readNumEntry("Parity"); | 80 | int rad_flow = m_profile->readNumEntry("Flow"); |
81 | int speed = m_profile.readNumEntry("Speed"); | 81 | int rad_parity = m_profile->readNumEntry("Parity"); |
82 | int speed = m_profile->readNumEntry("Speed"); | ||
82 | 83 | ||
83 | if(rad_flow == IOSerial::FlowHW) flow_hw->setChecked(true); | 84 | if(rad_flow == IOSerial::FlowHW) flow_hw->setChecked(true); |
84 | else flow_sw->setChecked(true); | 85 | else flow_sw->setChecked(true); |
85 | if(rad_parity == IOSerial::ParityEven) parity_even->setChecked(true); | 86 | if(rad_parity == IOSerial::ParityEven) parity_even->setChecked(true); |
86 | else parity_odd->setChecked(true); | 87 | else parity_odd->setChecked(true); |
87 | if(speed == 115200) speed_box->setCurrentItem(id_baud_115200); | 88 | if(speed == 115200) speed_box->setCurrentItem(id_baud_115200); |
88 | if(speed == 57600) speed_box->setCurrentItem(id_baud_57600); | 89 | if(speed == 57600) speed_box->setCurrentItem(id_baud_57600); |
89 | if(speed == 38400) speed_box->setCurrentItem(id_baud_38400); | 90 | if(speed == 38400) speed_box->setCurrentItem(id_baud_38400); |
90 | if(speed == 19200) speed_box->setCurrentItem(id_baud_19200); | 91 | if(speed == 19200) speed_box->setCurrentItem(id_baud_19200); |
91 | if(speed == 9600) speed_box->setCurrentItem(id_baud_9600); | 92 | if(speed == 9600) speed_box->setCurrentItem(id_baud_9600); |
92 | 93 | ||
93 | // Signals | 94 | // Signals |
@@ -151,31 +152,32 @@ QWidget *ProfileEditorPlugin::terminal_widget() | |||
151 | lroot->add(colourlabel); | 152 | lroot->add(colourlabel); |
152 | lroot->add(colour_box); | 153 | lroot->add(colour_box); |
153 | lroot->add(conversions); | 154 | lroot->add(conversions); |
154 | QHBoxLayout *hbox2 = new QHBoxLayout(lroot, 2); | 155 | QHBoxLayout *hbox2 = new QHBoxLayout(lroot, 2); |
155 | hbox2->add(conv_inbound); | 156 | hbox2->add(conv_inbound); |
156 | hbox2->add(conv_outbound); | 157 | hbox2->add(conv_outbound); |
157 | lroot->add(options); | 158 | lroot->add(options); |
158 | QHBoxLayout *hbox3 = new QHBoxLayout(lroot, 2); | 159 | QHBoxLayout *hbox3 = new QHBoxLayout(lroot, 2); |
159 | hbox3->add(option_wrap); | 160 | hbox3->add(option_wrap); |
160 | hbox3->add(option_echo); | 161 | hbox3->add(option_echo); |
161 | 162 | ||
162 | // Apply profile settings | 163 | // Apply profile settings |
163 | int term = m_profile.readNumEntry("Terminal"); | 164 | |
164 | int colour = m_profile.readNumEntry("Colour"); | 165 | int term = m_profile->readNumEntry("Terminal"); |
165 | int fontsize = m_profile.readNumEntry("Font"); | 166 | int colour = m_profile->readNumEntry("Colour"); |
166 | int opt_echo = m_profile.readNumEntry("Echo"); | 167 | int fontsize = m_profile->readNumEntry("Font"); |
167 | int opt_wrap = m_profile.readNumEntry("Wrap"); | 168 | int opt_echo = m_profile->readNumEntry("Echo"); |
168 | int opt_inbound = m_profile.readNumEntry("Inbound"); | 169 | int opt_wrap = m_profile->readNumEntry("Wrap"); |
169 | int opt_outbound = m_profile.readNumEntry("Outbound"); | 170 | int opt_inbound = m_profile->readNumEntry("Inbound"); |
171 | int opt_outbound = m_profile->readNumEntry("Outbound"); | ||
170 | 172 | ||
171 | if(term == Profile::VT102) terminal_box->setCurrentItem(id_term_vt100); | 173 | if(term == Profile::VT102) terminal_box->setCurrentItem(id_term_vt100); |
172 | 174 | ||
173 | if(colour == Profile::Black) colour_box->setCurrentItem(id_term_black); | 175 | if(colour == Profile::Black) colour_box->setCurrentItem(id_term_black); |
174 | if(colour == Profile::White) colour_box->setCurrentItem(id_term_white); | 176 | if(colour == Profile::White) colour_box->setCurrentItem(id_term_white); |
175 | 177 | ||
176 | if(fontsize == Profile::Micro) size_small->setChecked(true); | 178 | if(fontsize == Profile::Micro) size_small->setChecked(true); |
177 | if(fontsize == Profile::Small) size_medium->setChecked(true); | 179 | if(fontsize == Profile::Small) size_medium->setChecked(true); |
178 | if(fontsize == Profile::Medium) size_large->setChecked(true); | 180 | if(fontsize == Profile::Medium) size_large->setChecked(true); |
179 | 181 | ||
180 | if(opt_echo) option_echo->setChecked(true); | 182 | if(opt_echo) option_echo->setChecked(true); |
181 | if(opt_wrap) option_wrap->setChecked(true); | 183 | if(opt_wrap) option_wrap->setChecked(true); |
@@ -192,140 +194,140 @@ QWidget *ProfileEditorPlugin::terminal_widget() | |||
192 | connect(option_wrap, SIGNAL(toggled(bool)), SLOT(slotTermWrap(bool))); | 194 | connect(option_wrap, SIGNAL(toggled(bool)), SLOT(slotTermWrap(bool))); |
193 | connect(conv_inbound, SIGNAL(toggled(bool)), SLOT(slotTermInbound(bool))); | 195 | connect(conv_inbound, SIGNAL(toggled(bool)), SLOT(slotTermInbound(bool))); |
194 | connect(conv_outbound, SIGNAL(toggled(bool)), SLOT(slotTermOutbound(bool))); | 196 | connect(conv_outbound, SIGNAL(toggled(bool)), SLOT(slotTermOutbound(bool))); |
195 | 197 | ||
196 | return root; | 198 | return root; |
197 | } | 199 | } |
198 | 200 | ||
199 | void ProfileEditorPlugin::slotConnFlow(int id) | 201 | void ProfileEditorPlugin::slotConnFlow(int id) |
200 | { | 202 | { |
201 | switch(id) | 203 | switch(id) |
202 | { | 204 | { |
203 | case id_flow_hw: | 205 | case id_flow_hw: |
204 | m_profile.writeEntry("Flow", IOSerial::FlowHW); | 206 | m_profile->writeEntry("Flow", IOSerial::FlowHW); |
205 | break; | 207 | break; |
206 | case id_flow_sw: | 208 | case id_flow_sw: |
207 | m_profile.writeEntry("Flow", IOSerial::FlowSW); | 209 | m_profile->writeEntry("Flow", IOSerial::FlowSW); |
208 | break; | 210 | break; |
209 | } | 211 | } |
210 | } | 212 | } |
211 | 213 | ||
212 | void ProfileEditorPlugin::slotConnParity(int id) | 214 | void ProfileEditorPlugin::slotConnParity(int id) |
213 | { | 215 | { |
214 | switch(id) | 216 | switch(id) |
215 | { | 217 | { |
216 | case id_parity_odd: | 218 | case id_parity_odd: |
217 | m_profile.writeEntry("Parity", IOSerial::ParityEven); | 219 | m_profile->writeEntry("Parity", IOSerial::ParityEven); |
218 | break; | 220 | break; |
219 | case id_parity_even: | 221 | case id_parity_even: |
220 | m_profile.writeEntry("Parity", IOSerial::ParityOdd); | 222 | m_profile->writeEntry("Parity", IOSerial::ParityOdd); |
221 | break; | 223 | break; |
222 | } | 224 | } |
223 | } | 225 | } |
224 | 226 | ||
225 | void ProfileEditorPlugin::slotConnSpeed(int id) | 227 | void ProfileEditorPlugin::slotConnSpeed(int id) |
226 | { | 228 | { |
227 | switch(id) | 229 | switch(id) |
228 | { | 230 | { |
229 | 231 | ||
230 | case id_baud_115200: | 232 | case id_baud_115200: |
231 | m_profile.writeEntry("Speed", 115200); | 233 | m_profile->writeEntry("Speed", 115200); |
232 | break; | 234 | break; |
233 | case id_baud_57600: | 235 | case id_baud_57600: |
234 | m_profile.writeEntry("Speed", 57600); | 236 | m_profile->writeEntry("Speed", 57600); |
235 | break; | 237 | break; |
236 | case id_baud_38400: | 238 | case id_baud_38400: |
237 | m_profile.writeEntry("Speed", 38400); | 239 | m_profile->writeEntry("Speed", 38400); |
238 | break; | 240 | break; |
239 | case id_baud_19200: | 241 | case id_baud_19200: |
240 | m_profile.writeEntry("Speed", 19200); | 242 | m_profile->writeEntry("Speed", 19200); |
241 | break; | 243 | break; |
242 | case id_baud_9600: | 244 | case id_baud_9600: |
243 | m_profile.writeEntry("Speed", 9600); | 245 | m_profile->writeEntry("Speed", 9600); |
244 | break; | 246 | break; |
245 | } | 247 | } |
246 | } | 248 | } |
247 | 249 | ||
248 | void ProfileEditorPlugin::slotTermTerm(int id) | 250 | void ProfileEditorPlugin::slotTermTerm(int id) |
249 | { | 251 | { |
250 | switch(id) | 252 | switch(id) |
251 | { | 253 | { |
252 | case id_term_vt100: | 254 | case id_term_vt100: |
253 | m_profile.writeEntry("Terminal", Profile::VT102); | 255 | m_profile->writeEntry("Terminal", Profile::VT102); |
254 | break; | 256 | break; |
255 | case id_term_vt220: | 257 | case id_term_vt220: |
256 | m_profile.writeEntry("Terminal", Profile::VT102); | 258 | m_profile->writeEntry("Terminal", Profile::VT102); |
257 | break; | 259 | break; |
258 | case id_term_ansi: | 260 | case id_term_ansi: |
259 | m_profile.writeEntry("Terminal", Profile::VT102); | 261 | m_profile->writeEntry("Terminal", Profile::VT102); |
260 | break; | 262 | break; |
261 | } | 263 | } |
262 | } | 264 | } |
263 | 265 | ||
264 | void ProfileEditorPlugin::slotTermColour(int id) | 266 | void ProfileEditorPlugin::slotTermColour(int id) |
265 | { | 267 | { |
266 | switch(id) | 268 | switch(id) |
267 | { | 269 | { |
268 | case id_term_black: | 270 | case id_term_black: |
269 | m_profile.writeEntry("Colour", Profile::Black); | 271 | m_profile->writeEntry("Colour", Profile::Black); |
270 | break; | 272 | break; |
271 | case id_term_white: | 273 | case id_term_white: |
272 | m_profile.writeEntry("Colour", Profile::White); | 274 | m_profile->writeEntry("Colour", Profile::White); |
273 | break; | 275 | break; |
274 | } | 276 | } |
275 | } | 277 | } |
276 | 278 | ||
277 | void ProfileEditorPlugin::slotTermFont(int id) | 279 | void ProfileEditorPlugin::slotTermFont(int id) |
278 | { | 280 | { |
279 | switch(id) | 281 | switch(id) |
280 | { | 282 | { |
281 | case id_size_small: | 283 | case id_size_small: |
282 | m_profile.writeEntry("Font", Profile::Micro); | 284 | m_profile->writeEntry("Font", Profile::Micro); |
283 | break; | 285 | break; |
284 | case id_size_medium: | 286 | case id_size_medium: |
285 | m_profile.writeEntry("Font", Profile::Small); | 287 | m_profile->writeEntry("Font", Profile::Small); |
286 | break; | 288 | break; |
287 | case id_size_large: | 289 | case id_size_large: |
288 | m_profile.writeEntry("Font", Profile::Medium); | 290 | m_profile->writeEntry("Font", Profile::Medium); |
289 | break; | 291 | break; |
290 | } | 292 | } |
291 | } | 293 | } |
292 | 294 | ||
293 | void ProfileEditorPlugin::slotTermEcho(bool on) | 295 | void ProfileEditorPlugin::slotTermEcho(bool on) |
294 | { | 296 | { |
295 | m_profile.writeEntry("Echo", on ? 1 : 0); | 297 | m_profile->writeEntry("Echo", on ? 1 : 0); |
296 | } | 298 | } |
297 | 299 | ||
298 | void ProfileEditorPlugin::slotTermWrap(bool on) | 300 | void ProfileEditorPlugin::slotTermWrap(bool on) |
299 | { | 301 | { |
300 | m_profile.writeEntry("Wrap", on ? 1 : 0); | 302 | m_profile->writeEntry("Wrap", on ? 1 : 0); |
301 | } | 303 | } |
302 | 304 | ||
303 | void ProfileEditorPlugin::slotTermInbound(bool on) | 305 | void ProfileEditorPlugin::slotTermInbound(bool on) |
304 | { | 306 | { |
305 | m_profile.writeEntry("Inbound", on ? 1 : 0); | 307 | m_profile->writeEntry("Inbound", on ? 1 : 0); |
306 | } | 308 | } |
307 | 309 | ||
308 | void ProfileEditorPlugin::slotTermOutbound(bool on) | 310 | void ProfileEditorPlugin::slotTermOutbound(bool on) |
309 | { | 311 | { |
310 | m_profile.writeEntry("Outbound", on ? 1 : 0); | 312 | m_profile->writeEntry("Outbound", on ? 1 : 0); |
311 | } | 313 | } |
312 | 314 | ||
313 | // Inherited classes | 315 | // Inherited classes |
314 | 316 | ||
315 | class ProfileEditorPluginSerial : public ProfileEditorPlugin | 317 | class ProfileEditorPluginSerial : public ProfileEditorPlugin |
316 | { | 318 | { |
317 | public: | 319 | public: |
318 | 320 | ||
319 | ProfileEditorPluginSerial(QWidget *parent, Profile p) | 321 | ProfileEditorPluginSerial(QWidget *parent, Profile *p) |
320 | : ProfileEditorPlugin(parent, p) | 322 | : ProfileEditorPlugin(parent, p) |
321 | { | 323 | { |
322 | } | 324 | } |
323 | 325 | ||
324 | ~ProfileEditorPluginSerial() | 326 | ~ProfileEditorPluginSerial() |
325 | { | 327 | { |
326 | } | 328 | } |
327 | 329 | ||
328 | QWidget *widget() | 330 | QWidget *widget() |
329 | { | 331 | { |
330 | if(!m_widget) | 332 | if(!m_widget) |
331 | { | 333 | { |
@@ -334,46 +336,47 @@ class ProfileEditorPluginSerial : public ProfileEditorPlugin | |||
334 | 336 | ||
335 | QLabel *frame_device = new QLabel(QObject::tr("Device"), device_frame); | 337 | QLabel *frame_device = new QLabel(QObject::tr("Device"), device_frame); |
336 | 338 | ||
337 | device_line = new QLineEdit("/dev/ttyS0", device_frame); | 339 | device_line = new QLineEdit("/dev/ttyS0", device_frame); |
338 | 340 | ||
339 | QVBoxLayout *vbox_frame = new QVBoxLayout(device_frame, 2); | 341 | QVBoxLayout *vbox_frame = new QVBoxLayout(device_frame, 2); |
340 | vbox_frame->add(frame_device); | 342 | vbox_frame->add(frame_device); |
341 | vbox_frame->add(device_line); | 343 | vbox_frame->add(device_line); |
342 | 344 | ||
343 | m_widget = device_frame; | 345 | m_widget = device_frame; |
344 | 346 | ||
345 | // Load special settings | 347 | // Load special settings |
346 | device_line->setText(m_profile.readEntry("Device")); | 348 | |
349 | QString dev = m_profile->readEntry("Device"); | ||
350 | if(!dev.isNull()) device_line->setText(dev); | ||
347 | } | 351 | } |
348 | 352 | ||
349 | return m_widget; | 353 | return m_widget; |
350 | } | 354 | } |
351 | 355 | ||
352 | void save() | 356 | void save() |
353 | { | 357 | { |
354 | // special settings | 358 | // special settings |
355 | Profile p = m_profile; | 359 | m_profile->writeEntry("Device", device_line->text()); |
356 | p.writeEntry("Device", device_line->text()); | ||
357 | } | 360 | } |
358 | 361 | ||
359 | private: | 362 | private: |
360 | QLineEdit *device_line; | 363 | QLineEdit *device_line; |
361 | }; | 364 | }; |
362 | 365 | ||
363 | class ProfileEditorPluginIrda : public ProfileEditorPlugin | 366 | class ProfileEditorPluginIrda : public ProfileEditorPlugin |
364 | { | 367 | { |
365 | public: | 368 | public: |
366 | 369 | ||
367 | ProfileEditorPluginIrda(QWidget *parent, Profile p) | 370 | ProfileEditorPluginIrda(QWidget *parent, Profile *p) |
368 | : ProfileEditorPlugin(parent, p) | 371 | : ProfileEditorPlugin(parent, p) |
369 | { | 372 | { |
370 | } | 373 | } |
371 | 374 | ||
372 | ~ProfileEditorPluginIrda() | 375 | ~ProfileEditorPluginIrda() |
373 | { | 376 | { |
374 | } | 377 | } |
375 | 378 | ||
376 | QWidget *widget() | 379 | QWidget *widget() |
377 | { | 380 | { |
378 | if(!m_widget) | 381 | if(!m_widget) |
379 | { | 382 | { |
@@ -382,46 +385,46 @@ class ProfileEditorPluginIrda : public ProfileEditorPlugin | |||
382 | 385 | ||
383 | QLabel *frame_device = new QLabel(QObject::tr("Device"), device_frame); | 386 | QLabel *frame_device = new QLabel(QObject::tr("Device"), device_frame); |
384 | 387 | ||
385 | device_line = new QLineEdit("/dev/ircomm0", device_frame); | 388 | device_line = new QLineEdit("/dev/ircomm0", device_frame); |
386 | 389 | ||
387 | QVBoxLayout *vbox_frame = new QVBoxLayout(device_frame, 2); | 390 | QVBoxLayout *vbox_frame = new QVBoxLayout(device_frame, 2); |
388 | vbox_frame->add(frame_device); | 391 | vbox_frame->add(frame_device); |
389 | vbox_frame->add(device_line); | 392 | vbox_frame->add(device_line); |
390 | 393 | ||
391 | m_widget = device_frame; | 394 | m_widget = device_frame; |
392 | 395 | ||
393 | // Load special settings | 396 | // Load special settings |
394 | device_line->setText(m_profile.readEntry("Device")); | 397 | QString dev = m_profile->readEntry("Device"); |
398 | if(!dev.isNull()) device_line->setText(dev); | ||
395 | } | 399 | } |
396 | 400 | ||
397 | return m_widget; | 401 | return m_widget; |
398 | } | 402 | } |
399 | 403 | ||
400 | void save() | 404 | void save() |
401 | { | 405 | { |
402 | // special settings | 406 | // special settings |
403 | Profile p = m_profile; | 407 | m_profile->writeEntry("Device", device_line->text()); |
404 | p.writeEntry("Device", device_line->text()); | ||
405 | } | 408 | } |
406 | 409 | ||
407 | private: | 410 | private: |
408 | QLineEdit *device_line; | 411 | QLineEdit *device_line; |
409 | }; | 412 | }; |
410 | 413 | ||
411 | class ProfileEditorPluginModem : public ProfileEditorPlugin | 414 | class ProfileEditorPluginModem : public ProfileEditorPlugin |
412 | { | 415 | { |
413 | public: | 416 | public: |
414 | 417 | ||
415 | ProfileEditorPluginModem(QWidget *parent, Profile p) | 418 | ProfileEditorPluginModem(QWidget *parent, Profile *p) |
416 | : ProfileEditorPlugin(parent, p) | 419 | : ProfileEditorPlugin(parent, p) |
417 | { | 420 | { |
418 | } | 421 | } |
419 | 422 | ||
420 | ~ProfileEditorPluginModem() | 423 | ~ProfileEditorPluginModem() |
421 | { | 424 | { |
422 | } | 425 | } |
423 | 426 | ||
424 | QWidget *widget() | 427 | QWidget *widget() |
425 | { | 428 | { |
426 | if(!m_widget) | 429 | if(!m_widget) |
427 | { | 430 | { |
@@ -434,46 +437,47 @@ class ProfileEditorPluginModem : public ProfileEditorPlugin | |||
434 | device_line = new QLineEdit("/dev/ttyS0", device_frame); | 437 | device_line = new QLineEdit("/dev/ttyS0", device_frame); |
435 | number_line = new QLineEdit(device_frame); | 438 | number_line = new QLineEdit(device_frame); |
436 | 439 | ||
437 | QVBoxLayout *vbox_frame = new QVBoxLayout(device_frame, 2); | 440 | QVBoxLayout *vbox_frame = new QVBoxLayout(device_frame, 2); |
438 | vbox_frame->add(frame_device); | 441 | vbox_frame->add(frame_device); |
439 | vbox_frame->add(device_line); | 442 | vbox_frame->add(device_line); |
440 | vbox_frame->add(frame_number); | 443 | vbox_frame->add(frame_number); |
441 | vbox_frame->add(number_line); | 444 | vbox_frame->add(number_line); |
442 | 445 | ||
443 | m_widget = device_frame; | 446 | m_widget = device_frame; |
444 | 447 | ||
445 | // Load special settings | 448 | // Load special settings |
446 | device_line->setText(m_profile.readEntry("Device")); | 449 | QString dev = m_profile->readEntry("Device"); |
447 | number_line->setText(m_profile.readEntry("Number")); | 450 | QString num = m_profile->readEntry("Number"); |
451 | if(!dev.isNull()) device_line->setText(dev); | ||
452 | number_line->setText(num); | ||
448 | } | 453 | } |
449 | 454 | ||
450 | return m_widget; | 455 | return m_widget; |
451 | } | 456 | } |
452 | 457 | ||
453 | void save() | 458 | void save() |
454 | { | 459 | { |
455 | // special settings | 460 | // special settings |
456 | Profile p = m_profile; | 461 | m_profile->writeEntry("Device", device_line->text()); |
457 | p.writeEntry("Device", device_line->text()); | 462 | m_profile->writeEntry("Number", number_line->text()); |
458 | p.writeEntry("Number", number_line->text()); | ||
459 | } | 463 | } |
460 | 464 | ||
461 | private: | 465 | private: |
462 | QLineEdit *device_line, *number_line; | 466 | QLineEdit *device_line, *number_line; |
463 | }; | 467 | }; |
464 | 468 | ||
465 | ProfileEditorPlugin *factory_serial(QWidget *parent, const Profile& p) | 469 | ProfileEditorPlugin *factory_serial(QWidget *parent, Profile *p) |
466 | { | 470 | { |
467 | return new ProfileEditorPluginSerial(parent, p); | 471 | return new ProfileEditorPluginSerial(parent, p); |
468 | } | 472 | } |
469 | 473 | ||
470 | ProfileEditorPlugin *factory_irda(QWidget *parent, const Profile& p) | 474 | ProfileEditorPlugin *factory_irda(QWidget *parent, Profile *p) |
471 | { | 475 | { |
472 | return new ProfileEditorPluginIrda(parent, p); | 476 | return new ProfileEditorPluginIrda(parent, p); |
473 | } | 477 | } |
474 | 478 | ||
475 | ProfileEditorPlugin *factory_modem(QWidget *parent, const Profile& p) | 479 | ProfileEditorPlugin *factory_modem(QWidget *parent, Profile *p) |
476 | { | 480 | { |
477 | return new ProfileEditorPluginModem(parent, p); | 481 | return new ProfileEditorPluginModem(parent, p); |
478 | } | 482 | } |
479 | 483 | ||
diff --git a/noncore/apps/opie-console/profileeditorplugins.h b/noncore/apps/opie-console/profileeditorplugins.h index caec7ba..591163a 100644 --- a/noncore/apps/opie-console/profileeditorplugins.h +++ b/noncore/apps/opie-console/profileeditorplugins.h | |||
@@ -2,50 +2,50 @@ | |||
2 | #define PROFILE_EDITOR_PLUGINS_H | 2 | #define PROFILE_EDITOR_PLUGINS_H |
3 | 3 | ||
4 | #include "profile.h" | 4 | #include "profile.h" |
5 | 5 | ||
6 | #include "qobject.h" | 6 | #include "qobject.h" |
7 | 7 | ||
8 | class QWidget; | 8 | class QWidget; |
9 | 9 | ||
10 | class ProfileEditorPlugin : public QObject | 10 | class ProfileEditorPlugin : public QObject |
11 | { | 11 | { |
12 | Q_OBJECT | 12 | Q_OBJECT |
13 | public: | 13 | public: |
14 | ProfileEditorPlugin(QWidget *parent, Profile p); | 14 | ProfileEditorPlugin(QWidget *parent, Profile *p); |
15 | 15 | ||
16 | virtual ~ProfileEditorPlugin(); | 16 | virtual ~ProfileEditorPlugin(); |
17 | 17 | ||
18 | virtual void save() = 0; | 18 | virtual void save() = 0; |
19 | 19 | ||
20 | virtual QWidget *widget() = 0; | 20 | virtual QWidget *widget() = 0; |
21 | 21 | ||
22 | QWidget *connection_widget(); | 22 | QWidget *connection_widget(); |
23 | QWidget *terminal_widget(); | 23 | QWidget *terminal_widget(); |
24 | 24 | ||
25 | public slots: | 25 | public slots: |
26 | void slotConnFlow(int id); | 26 | void slotConnFlow(int id); |
27 | void slotConnParity(int id); | 27 | void slotConnParity(int id); |
28 | void slotConnSpeed(int id); | 28 | void slotConnSpeed(int id); |
29 | void slotTermTerm(int id); | 29 | void slotTermTerm(int id); |
30 | void slotTermColour(int id); | 30 | void slotTermColour(int id); |
31 | void slotTermFont(int id); | 31 | void slotTermFont(int id); |
32 | void slotTermEcho(bool on); | 32 | void slotTermEcho(bool on); |
33 | void slotTermWrap(bool on); | 33 | void slotTermWrap(bool on); |
34 | void slotTermInbound(bool on); | 34 | void slotTermInbound(bool on); |
35 | void slotTermOutbound(bool on); | 35 | void slotTermOutbound(bool on); |
36 | 36 | ||
37 | protected: | 37 | protected: |
38 | QWidget *m_parent, *m_widget; | 38 | QWidget *m_parent, *m_widget; |
39 | Profile m_profile; | 39 | Profile *m_profile; |
40 | 40 | ||
41 | private: | 41 | private: |
42 | enum ParityIds | 42 | enum ParityIds |
43 | { | 43 | { |
44 | id_parity_odd, | 44 | id_parity_odd, |
45 | id_parity_even | 45 | id_parity_even |
46 | }; | 46 | }; |
47 | 47 | ||
48 | enum FlowIds | 48 | enum FlowIds |
49 | { | 49 | { |
50 | id_flow_hw, | 50 | id_flow_hw, |
51 | id_flow_sw | 51 | id_flow_sw |
@@ -76,22 +76,22 @@ class ProfileEditorPlugin : public QObject | |||
76 | enum FontIds | 76 | enum FontIds |
77 | { | 77 | { |
78 | id_size_small, | 78 | id_size_small, |
79 | id_size_medium, | 79 | id_size_medium, |
80 | id_size_large | 80 | id_size_large |
81 | }; | 81 | }; |
82 | }; | 82 | }; |
83 | 83 | ||
84 | //#ifdef __cplusplus | 84 | //#ifdef __cplusplus |
85 | //extern "C" { | 85 | //extern "C" { |
86 | //#endif | 86 | //#endif |
87 | 87 | ||
88 | ProfileEditorPlugin *factory_serial(QWidget *parent, const Profile& p); | 88 | ProfileEditorPlugin *factory_serial(QWidget *parent, Profile *p); |
89 | ProfileEditorPlugin *factory_irda(QWidget *parent, const Profile& p); | 89 | ProfileEditorPlugin *factory_irda(QWidget *parent, Profile *p); |
90 | ProfileEditorPlugin *factory_modem(QWidget *parent, const Profile& p); | 90 | ProfileEditorPlugin *factory_modem(QWidget *parent, Profile *p); |
91 | 91 | ||
92 | //#ifdef __cplusplus | 92 | //#ifdef __cplusplus |
93 | //} | 93 | //} |
94 | //#endif | 94 | //#endif |
95 | 95 | ||
96 | #endif | 96 | #endif |
97 | 97 | ||