Diffstat (limited to 'noncore/apps/opie-console/profileeditordialog.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r-- | noncore/apps/opie-console/profileeditordialog.cpp | 52 |
1 files changed, 38 insertions, 14 deletions
diff --git a/noncore/apps/opie-console/profileeditordialog.cpp b/noncore/apps/opie-console/profileeditordialog.cpp index 859abdd..374844e 100644 --- a/noncore/apps/opie-console/profileeditordialog.cpp +++ b/noncore/apps/opie-console/profileeditordialog.cpp | |||
@@ -16,36 +16,56 @@ | |||
16 | static QWidget *factory_serial(QWidget *parent) | 16 | static QWidget *factory_serial(QWidget *parent) |
17 | { | 17 | { |
18 | QFrame *device_frame = new QFrame(parent); | 18 | QFrame *device_frame = new QFrame(parent); |
19 | device_frame->setFrameStyle(QFrame::Panel | QFrame::Sunken); | 19 | device_frame->setFrameStyle(QFrame::Panel | QFrame::Sunken); |
20 | 20 | ||
21 | QLabel *frame_device = new QLabel(QObject::tr("Device"), device_frame); | 21 | QLabel *frame_device = new QLabel(QObject::tr("Device"), device_frame); |
22 | QLabel *frame_number = new QLabel(QObject::tr("Phone number"), device_frame); | ||
23 | frame_number->hide(); | ||
24 | 22 | ||
25 | QLineEdit *frame_device_line = new QLineEdit("/dev/ttyS0", device_frame); | 23 | QLineEdit *frame_device_line = new QLineEdit("/dev/ttyS0", device_frame); |
26 | QLineEdit *frame_number_line = new QLineEdit(device_frame); | ||
27 | frame_number_line->hide(); | ||
28 | 24 | ||
29 | QVBoxLayout *vbox_frame = new QVBoxLayout(device_frame, 2); | 25 | QVBoxLayout *vbox_frame = new QVBoxLayout(device_frame, 2); |
30 | vbox_frame->add(frame_device); | 26 | vbox_frame->add(frame_device); |
31 | vbox_frame->add(frame_device_line); | 27 | vbox_frame->add(frame_device_line); |
32 | vbox_frame->add(frame_number); | ||
33 | vbox_frame->add(frame_number_line); | ||
34 | 28 | ||
35 | return device_frame; | 29 | return device_frame; |
36 | } | 30 | } |
37 | 31 | ||
38 | static QWidget *factory_irda(QWidget *parent) | 32 | static QWidget *factory_irda(QWidget *parent) |
39 | { | 33 | { |
40 | return NULL; | 34 | QFrame *device_frame = new QFrame(parent); |
35 | device_frame->setFrameStyle(QFrame::Panel | QFrame::Sunken); | ||
36 | |||
37 | QLabel *frame_device = new QLabel(QObject::tr("Device"), device_frame); | ||
38 | |||
39 | QLineEdit *frame_device_line = new QLineEdit("/dev/ircomm0", device_frame); | ||
40 | |||
41 | QVBoxLayout *vbox_frame = new QVBoxLayout(device_frame, 2); | ||
42 | vbox_frame->add(frame_device); | ||
43 | vbox_frame->add(frame_device_line); | ||
44 | |||
45 | return device_frame; | ||
41 | } | 46 | } |
42 | 47 | ||
43 | static QWidget *factory_modem(QWidget *parent) | 48 | static QWidget *factory_modem(QWidget *parent) |
44 | { | 49 | { |
45 | return NULL; | 50 | QFrame *device_frame = new QFrame(parent); |
51 | device_frame->setFrameStyle(QFrame::Panel | QFrame::Sunken); | ||
52 | |||
53 | QLabel *frame_device = new QLabel(QObject::tr("Device"), device_frame); | ||
54 | QLabel *frame_number = new QLabel(QObject::tr("Phone number"), device_frame); | ||
55 | |||
56 | QLineEdit *frame_device_line = new QLineEdit("/dev/ttyS0", device_frame); | ||
57 | QLineEdit *frame_number_line = new QLineEdit(device_frame); | ||
58 | |||
59 | QVBoxLayout *vbox_frame = new QVBoxLayout(device_frame, 2); | ||
60 | vbox_frame->add(frame_device); | ||
61 | vbox_frame->add(frame_device_line); | ||
62 | vbox_frame->add(frame_number); | ||
63 | vbox_frame->add(frame_number_line); | ||
64 | |||
65 | return device_frame; | ||
46 | } | 66 | } |
47 | 67 | ||
48 | ProfileEditorDialog::ProfileEditorDialog( MetaFactory* fact, | 68 | ProfileEditorDialog::ProfileEditorDialog( MetaFactory* fact, |
49 | const Profile& prof ) | 69 | const Profile& prof ) |
50 | : QTabDialog(0, 0, TRUE), m_fact( fact ), m_prof( prof ) | 70 | : QTabDialog(0, 0, TRUE), m_fact( fact ), m_prof( prof ) |
51 | { | 71 | { |
@@ -83,13 +103,17 @@ ProfileEditorDialog::ProfileEditorDialog( MetaFactory* fact ) | |||
83 | 103 | ||
84 | QStringList w = m_fact->configWidgets(); | 104 | QStringList w = m_fact->configWidgets(); |
85 | for(QStringList::Iterator it = w.begin(); it != w.end(); it++) | 105 | for(QStringList::Iterator it = w.begin(); it != w.end(); it++) |
86 | device_box->insertItem(m_fact->name((*it))); | 106 | device_box->insertItem(m_fact->name((*it))); |
87 | 107 | ||
88 | // connection tab, factory part | 108 | // connection tab, factory part |
89 | QFrame *device_frame = static_cast<QFrame*>(factory_serial(tabconn)); | 109 | plugin_base = new QWidget(tabconn); |
110 | plugin_layout = new QHBoxLayout(plugin_base, 0); | ||
111 | |||
112 | plugin_plugin = m_fact->newConfigWidget("serial", plugin_base); | ||
113 | plugin_layout->add(plugin_plugin); | ||
90 | 114 | ||
91 | // connection tab, general part | 115 | // connection tab, general part |
92 | 116 | ||
93 | speed_box = new QComboBox(tabconn); | 117 | speed_box = new QComboBox(tabconn); |
94 | speed_box->insertItem("115200 baud"); | 118 | speed_box->insertItem("115200 baud"); |
95 | speed_box->insertItem("57600 baud"); | 119 | speed_box->insertItem("57600 baud"); |
@@ -157,13 +181,13 @@ ProfileEditorDialog::ProfileEditorDialog( MetaFactory* fact ) | |||
157 | vbox3->add(name_line); | 181 | vbox3->add(name_line); |
158 | vbox3->addStretch(1); | 182 | vbox3->addStretch(1); |
159 | 183 | ||
160 | QVBoxLayout *vbox = new QVBoxLayout(tabconn, 2); | 184 | QVBoxLayout *vbox = new QVBoxLayout(tabconn, 2); |
161 | vbox->add(device); | 185 | vbox->add(device); |
162 | vbox->add(device_box); | 186 | vbox->add(device_box); |
163 | vbox->add(device_frame); | 187 | vbox->add(plugin_base); |
164 | vbox->add(speed); | 188 | vbox->add(speed); |
165 | vbox->add(speed_box); | 189 | vbox->add(speed_box); |
166 | vbox->add(flow); | 190 | vbox->add(flow); |
167 | QHBoxLayout *hbox = new QHBoxLayout(vbox, 2); | 191 | QHBoxLayout *hbox = new QHBoxLayout(vbox, 2); |
168 | hbox->add(flow_hw); | 192 | hbox->add(flow_hw); |
169 | hbox->add(flow_sw); | 193 | hbox->add(flow_sw); |
@@ -211,18 +235,18 @@ ProfileEditorDialog::ProfileEditorDialog( MetaFactory* fact ) | |||
211 | ProfileEditorDialog::~ProfileEditorDialog() { | 235 | ProfileEditorDialog::~ProfileEditorDialog() { |
212 | 236 | ||
213 | } | 237 | } |
214 | 238 | ||
215 | void ProfileEditorDialog::slotDevice(int id) | 239 | void ProfileEditorDialog::slotDevice(int id) |
216 | { | 240 | { |
217 | MetaFactory::configWidget c; | 241 | delete plugin_plugin; |
218 | 242 | ||
219 | //c = m_fact->; | 243 | plugin_plugin = m_fact->newConfigWidget(prof_type(), plugin_base); |
220 | c = factory_serial; | 244 | plugin_layout->add(plugin_plugin); |
221 | 245 | ||
222 | QFrame *device_frame = static_cast<QFrame*>(c(NULL)); | 246 | plugin_plugin->show(); |
223 | } | 247 | } |
224 | 248 | ||
225 | void ProfileEditorDialog::slotOk() | 249 | void ProfileEditorDialog::slotOk() |
226 | { | 250 | { |
227 | if(prof_name().isEmpty()) | 251 | if(prof_name().isEmpty()) |
228 | { | 252 | { |