Diffstat (limited to 'noncore/apps/opie-console/profileeditordialog.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r-- | noncore/apps/opie-console/profileeditordialog.cpp | 95 |
1 files changed, 73 insertions, 22 deletions
diff --git a/noncore/apps/opie-console/profileeditordialog.cpp b/noncore/apps/opie-console/profileeditordialog.cpp index fc95e56..5b7f851 100644 --- a/noncore/apps/opie-console/profileeditordialog.cpp +++ b/noncore/apps/opie-console/profileeditordialog.cpp | |||
@@ -78,46 +78,46 @@ void ProfileEditorDialog::initUI() | |||
78 | 78 | ||
79 | plugin_plugin = m_fact->newConfigPlugin("serial", plugin_base, m_prof); | 79 | plugin_plugin = m_fact->newConfigPlugin("serial", plugin_base, m_prof); |
80 | plugin_layout->add(plugin_plugin->widget()); | 80 | plugin_layout->add(plugin_plugin->widget()); |
81 | 81 | ||
82 | // connection tab, general part | 82 | // connection tab, general part |
83 | 83 | ||
84 | speed_box = new QComboBox(tabconn); | 84 | QComboBox *speed_box = new QComboBox(tabconn); |
85 | speed_box->insertItem("115200 baud"); | 85 | speed_box->insertItem("115200 baud", id_baud_115200); |
86 | speed_box->insertItem("57600 baud"); | 86 | speed_box->insertItem("57600 baud", id_baud_57600); |
87 | speed_box->insertItem("38400 baud"); | 87 | speed_box->insertItem("38400 baud", id_baud_38400); |
88 | speed_box->insertItem("19200 baud"); | 88 | speed_box->insertItem("19200 baud", id_baud_19200); |
89 | speed_box->insertItem("9600 baud"); | 89 | speed_box->insertItem("9600 baud", id_baud_9600); |
90 | 90 | ||
91 | QLabel *speed = new QLabel(QObject::tr("Speed"), tabconn); | 91 | QLabel *speed = new QLabel(QObject::tr("Speed"), tabconn); |
92 | QLabel *flow = new QLabel(QObject::tr("Flow control"), tabconn); | 92 | QLabel *flow = new QLabel(QObject::tr("Flow control"), tabconn); |
93 | QLabel *parity = new QLabel(QObject::tr("Parity"), tabconn); | 93 | QLabel *parity = new QLabel(QObject::tr("Parity"), tabconn); |
94 | 94 | ||
95 | QButtonGroup *group_flow = new QButtonGroup(tabconn); | 95 | QButtonGroup *group_flow = new QButtonGroup(tabconn); |
96 | group_flow->hide(); | 96 | group_flow->hide(); |
97 | QRadioButton *flow_hw = new QRadioButton(QObject::tr("Hardware"), tabconn); | 97 | QRadioButton *flow_hw = new QRadioButton(QObject::tr("Hardware"), tabconn); |
98 | QRadioButton *flow_sw = new QRadioButton(QObject::tr("Software"), tabconn); | 98 | QRadioButton *flow_sw = new QRadioButton(QObject::tr("Software"), tabconn); |
99 | group_flow->insert(flow_hw); | 99 | group_flow->insert(flow_hw, id_flow_hw); |
100 | group_flow->insert(flow_sw); | 100 | group_flow->insert(flow_sw, id_flow_sw); |
101 | 101 | ||
102 | QButtonGroup *group_parity = new QButtonGroup(tabconn); | 102 | QButtonGroup *group_parity = new QButtonGroup(tabconn); |
103 | group_parity->hide(); | 103 | group_parity->hide(); |
104 | QRadioButton *parity_odd = new QRadioButton(QObject::tr("Odd"), tabconn); | 104 | QRadioButton *parity_odd = new QRadioButton(QObject::tr("Odd"), tabconn); |
105 | QRadioButton *parity_even = new QRadioButton(QObject::tr("Even"), tabconn); | 105 | QRadioButton *parity_even = new QRadioButton(QObject::tr("Even"), tabconn); |
106 | group_parity->insert(parity_odd); | 106 | group_parity->insert(parity_odd, id_parity_odd); |
107 | group_parity->insert(parity_even); | 107 | group_parity->insert(parity_even, id_parity_even); |
108 | 108 | ||
109 | flow_sw->setChecked(true); | 109 | flow_sw->setChecked(true); |
110 | parity_odd->setChecked(true); | 110 | parity_odd->setChecked(true); |
111 | 111 | ||
112 | // terminal tab | 112 | // terminal tab |
113 | 113 | ||
114 | terminal_box = new QComboBox(tabterm); | 114 | QComboBox *terminal_box = new QComboBox(tabterm); |
115 | terminal_box->insertItem("VT 100"); | 115 | terminal_box->insertItem("VT 100", id_term_vt100); |
116 | terminal_box->insertItem("VT 220"); | 116 | terminal_box->insertItem("VT 220", id_term_vt220); |
117 | terminal_box->insertItem("ANSI"); | 117 | terminal_box->insertItem("ANSI", id_term_ansi); |
118 | 118 | ||
119 | QLabel *terminal = new QLabel(QObject::tr("Terminal type"), tabterm); | 119 | QLabel *terminal = new QLabel(QObject::tr("Terminal type"), tabterm); |
120 | QLabel *colour = new QLabel(QObject::tr("Colour scheme"), tabterm); | 120 | QLabel *colour = new QLabel(QObject::tr("Colour scheme"), tabterm); |
121 | QLabel *size = new QLabel(QObject::tr("Font size"), tabterm); | 121 | QLabel *size = new QLabel(QObject::tr("Font size"), tabterm); |
122 | QLabel *options = new QLabel(QObject::tr("Options"), tabterm); | 122 | QLabel *options = new QLabel(QObject::tr("Options"), tabterm); |
123 | QLabel *conversions = new QLabel(QObject::tr("Line-break conversions"), tabterm); | 123 | QLabel *conversions = new QLabel(QObject::tr("Line-break conversions"), tabterm); |
@@ -199,12 +199,19 @@ void ProfileEditorDialog::initUI() | |||
199 | name_line->setText(m_prof.name()); | 199 | name_line->setText(m_prof.name()); |
200 | 200 | ||
201 | // signals | 201 | // signals |
202 | 202 | ||
203 | connect(this, SIGNAL(cancelButtonPressed()), SLOT(slotCancel())); | 203 | connect(this, SIGNAL(cancelButtonPressed()), SLOT(slotCancel())); |
204 | connect(device_box, SIGNAL(activated(int)), SLOT(slotDevice(int))); | 204 | connect(device_box, SIGNAL(activated(int)), SLOT(slotDevice(int))); |
205 | |||
206 | connect(group_flow, SIGNAL(clicked(int)), SLOT(slotConn(int))); | ||
207 | connect(group_parity, SIGNAL(clicked(int)), SLOT(slotConn(int))); | ||
208 | connect(speed_box, SIGNAL(clicked(int)), SLOT(slotConn(int))); | ||
209 | |||
210 | connect(terminal_box, SIGNAL(clicked(int)), SLOT(slotConn(int))); | ||
211 | connect(group_size, SIGNAL(clicked(int)), SLOT(slotConn(int))); | ||
205 | } | 212 | } |
206 | 213 | ||
207 | ProfileEditorDialog::~ProfileEditorDialog() { | 214 | ProfileEditorDialog::~ProfileEditorDialog() { |
208 | 215 | ||
209 | } | 216 | } |
210 | 217 | ||
@@ -229,13 +236,12 @@ void ProfileEditorDialog::accept() | |||
229 | { | 236 | { |
230 | QMessageBox::information(this, | 237 | QMessageBox::information(this, |
231 | QObject::tr("Invalid profile"), | 238 | QObject::tr("Invalid profile"), |
232 | QObject::tr("Please enter a profile name.")); | 239 | QObject::tr("Please enter a profile name.")); |
233 | return; | 240 | return; |
234 | } | 241 | } |
235 | |||
236 | // Save profile and plugin profile | 242 | // Save profile and plugin profile |
237 | if(plugin_plugin) plugin_plugin->save(); | 243 | if(plugin_plugin) plugin_plugin->save(); |
238 | 244 | ||
239 | // Save general values | 245 | // Save general values |
240 | m_prof.setName(prof_name()); | 246 | m_prof.setName(prof_name()); |
241 | 247 | ||
@@ -258,17 +264,62 @@ QString ProfileEditorDialog::prof_type() | |||
258 | for(QStringList::Iterator it = w.begin(); it != w.end(); it++) | 264 | for(QStringList::Iterator it = w.begin(); it != w.end(); it++) |
259 | if(device_box->currentText() == m_fact->name((*it))) return (*it); | 265 | if(device_box->currentText() == m_fact->name((*it))) return (*it); |
260 | 266 | ||
261 | return QString::null; | 267 | return QString::null; |
262 | } | 268 | } |
263 | 269 | ||
264 | QString ProfileEditorDialog::conn_device() | 270 | void ProfileEditorDialog::slotConn(int id) |
265 | { | 271 | { |
266 | //return frame_device_line->text(); | 272 | switch(id) |
267 | return "/dev/ttyS0"; | 273 | { |
274 | case id_flow_hw: | ||
275 | m_prof.writeEntry("Flow", 0x01); | ||
276 | break; | ||
277 | case id_flow_sw: | ||
278 | m_prof.writeEntry("Flow", 0x02); | ||
279 | break; | ||
280 | case id_parity_odd: | ||
281 | m_prof.writeEntry("Parity", 2); | ||
282 | break; | ||
283 | case id_parity_even: | ||
284 | m_prof.writeEntry("Parity", 1); | ||
285 | break; | ||
286 | |||
287 | case id_baud_115200: | ||
288 | m_prof.writeEntry("Speed", 115200); | ||
289 | break; | ||
290 | case id_baud_57600: | ||
291 | m_prof.writeEntry("Speed", 57600); | ||
292 | break; | ||
293 | case id_baud_38400: | ||
294 | m_prof.writeEntry("Speed", 38400); | ||
295 | break; | ||
296 | case id_baud_19200: | ||
297 | m_prof.writeEntry("Speed", 19200); | ||
298 | break; | ||
299 | case id_baud_9600: | ||
300 | m_prof.writeEntry("Speed", 9600); | ||
301 | break; | ||
302 | |||
303 | case id_term_vt100: | ||
304 | m_prof.writeEntry("Terminal", 2); | ||
305 | break; | ||
306 | case id_term_vt220: | ||
307 | m_prof.writeEntry("Terminal", 1); | ||
308 | break; | ||
309 | case id_term_ansi: | ||
310 | m_prof.writeEntry("Terminal", 0); | ||
311 | break; | ||
312 | |||
313 | case id_size_small: | ||
314 | m_prof.writeEntry("Font", 0); | ||
315 | break; | ||
316 | case id_size_medium: | ||
317 | m_prof.writeEntry("Font", 1); | ||
318 | break; | ||
319 | case id_size_large: | ||
320 | m_prof.writeEntry("Font", 2); | ||
321 | break; | ||
322 | } | ||
268 | } | 323 | } |
269 | 324 | ||
270 | QString ProfileEditorDialog::term_type() | ||
271 | { | ||
272 | return terminal_box->currentText(); | ||
273 | } | ||
274 | 325 | ||