summaryrefslogtreecommitdiff
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/settings/networksettings/ppp/accounts.cpp2
-rw-r--r--noncore/settings/networksettings/ppp/edit.cpp1
2 files changed, 2 insertions, 1 deletions
diff --git a/noncore/settings/networksettings/ppp/accounts.cpp b/noncore/settings/networksettings/ppp/accounts.cpp
index 7760d5e..04905e8 100644
--- a/noncore/settings/networksettings/ppp/accounts.cpp
+++ b/noncore/settings/networksettings/ppp/accounts.cpp
@@ -56,300 +56,300 @@ AccountWidget::AccountWidget( PPPData *pd, QWidget *parent, const char *name )
56 connect(accountlist_l, SIGNAL(selected(int)), 56 connect(accountlist_l, SIGNAL(selected(int)),
57 this, SLOT(editaccount())); 57 this, SLOT(editaccount()));
58 l1->addWidget(accountlist_l, 10); 58 l1->addWidget(accountlist_l, 10);
59 59
60 edit_b = new QPushButton(tr("&Edit..."), this); 60 edit_b = new QPushButton(tr("&Edit..."), this);
61 connect(edit_b, SIGNAL(clicked()), SLOT(editaccount())); 61 connect(edit_b, SIGNAL(clicked()), SLOT(editaccount()));
62 QWhatsThis::add(edit_b, tr("Allows you to modify the selected account")); 62 QWhatsThis::add(edit_b, tr("Allows you to modify the selected account"));
63 l1->addWidget(edit_b); 63 l1->addWidget(edit_b);
64 64
65 new_b = new QPushButton(tr("&New..."), this); 65 new_b = new QPushButton(tr("&New..."), this);
66 connect(new_b, SIGNAL(clicked()), SLOT(newaccount())); 66 connect(new_b, SIGNAL(clicked()), SLOT(newaccount()));
67 l1->addWidget(new_b); 67 l1->addWidget(new_b);
68 QWhatsThis::add(new_b, tr("Create a new dialup connection\n" 68 QWhatsThis::add(new_b, tr("Create a new dialup connection\n"
69 "to the Internet")); 69 "to the Internet"));
70 70
71 copy_b = new QPushButton(tr("Co&py"), this); 71 copy_b = new QPushButton(tr("Co&py"), this);
72 connect(copy_b, SIGNAL(clicked()), SLOT(copyaccount())); 72 connect(copy_b, SIGNAL(clicked()), SLOT(copyaccount()));
73 l1->addWidget(copy_b); 73 l1->addWidget(copy_b);
74 QWhatsThis::add(copy_b, 74 QWhatsThis::add(copy_b,
75 tr("Makes a copy of the selected account. All\n" 75 tr("Makes a copy of the selected account. All\n"
76 "settings of the selected account are copied\n" 76 "settings of the selected account are copied\n"
77 "to a new account, that you can modify to fit your\n" 77 "to a new account, that you can modify to fit your\n"
78 "needs")); 78 "needs"));
79 79
80 delete_b = new QPushButton(tr("De&lete"), this); 80 delete_b = new QPushButton(tr("De&lete"), this);
81 connect(delete_b, SIGNAL(clicked()), SLOT(deleteaccount())); 81 connect(delete_b, SIGNAL(clicked()), SLOT(deleteaccount()));
82 l1->addWidget(delete_b); 82 l1->addWidget(delete_b);
83 QWhatsThis::add(delete_b, 83 QWhatsThis::add(delete_b,
84 tr("<p>Deletes the selected account\n\n" 84 tr("<p>Deletes the selected account\n\n"
85 "<font color=\"red\"><b>Use with care!</b></font>")); 85 "<font color=\"red\"><b>Use with care!</b></font>"));
86 86
87 QHBoxLayout *l12 = new QHBoxLayout; 87 QHBoxLayout *l12 = new QHBoxLayout;
88 l1->addStretch(1); 88 l1->addStretch(1);
89 l1->addLayout(l12); 89 l1->addLayout(l12);
90 90
91 int currAccId = _pppdata->currentAccountID(); 91 int currAccId = _pppdata->currentAccountID();
92 qDebug("currentAccountID %i", currAccId); 92 qDebug("currentAccountID %i", currAccId);
93 93
94 //load up account list from gppdata to the list box 94 //load up account list from gppdata to the list box
95 if(_pppdata->count() > 0) { 95 if(_pppdata->count() > 0) {
96 for(int i=0; i <= _pppdata->count()-1; i++) { 96 for(int i=0; i <= _pppdata->count()-1; i++) {
97 _pppdata->setAccountbyIndex(i); 97 _pppdata->setAccountbyIndex(i);
98 accountlist_l->insertItem(_pppdata->accname()); 98 accountlist_l->insertItem(_pppdata->accname());
99 } 99 }
100 } 100 }
101 _pppdata->setAccountbyIndex( currAccId ); 101 _pppdata->setAccountbyIndex( currAccId );
102 102
103 qDebug("setting listview index to %i",_pppdata->currentAccountID() ); 103 qDebug("setting listview index to %i",_pppdata->currentAccountID() );
104 accountlist_l->setCurrentItem( _pppdata->currentAccountID() ); 104 accountlist_l->setCurrentItem( _pppdata->currentAccountID() );
105 slotListBoxSelect( _pppdata->currentAccountID() ); 105 slotListBoxSelect( _pppdata->currentAccountID() );
106 106
107 l1->activate(); 107 l1->activate();
108} 108}
109 109
110 110
111 111
112void AccountWidget::slotListBoxSelect(int idx) { 112void AccountWidget::slotListBoxSelect(int idx) {
113 delete_b->setEnabled((bool)(idx != -1)); 113 delete_b->setEnabled((bool)(idx != -1));
114 edit_b->setEnabled((bool)(idx != -1)); 114 edit_b->setEnabled((bool)(idx != -1));
115 copy_b->setEnabled((bool)(idx != -1)); 115 copy_b->setEnabled((bool)(idx != -1));
116 if(idx!=-1) { 116 if(idx!=-1) {
117 qDebug("setting account to %i", idx); 117 qDebug("setting account to %i", idx);
118 QString account = _pppdata->accname(); 118 QString account = _pppdata->accname();
119 _pppdata->setAccountbyIndex(accountlist_l->currentItem()); 119 _pppdata->setAccountbyIndex(accountlist_l->currentItem());
120 } 120 }
121} 121}
122 122
123void AccountWidget::editaccount() { 123void AccountWidget::editaccount() {
124 _pppdata->setAccount(accountlist_l->text(accountlist_l->currentItem())); 124 _pppdata->setAccount(accountlist_l->text(accountlist_l->currentItem()));
125 125
126 int result = doTab(); 126 int result = doTab();
127 127
128 if(result == QDialog::Accepted) { 128 if(result == QDialog::Accepted) {
129 accountlist_l->changeItem(_pppdata->accname(),accountlist_l->currentItem()); 129 accountlist_l->changeItem(_pppdata->accname(),accountlist_l->currentItem());
130// emit resetaccounts(); 130// emit resetaccounts();
131 _pppdata->save(); 131 _pppdata->save();
132 } 132 }
133} 133}
134 134
135 135
136void AccountWidget::newaccount() { 136void AccountWidget::newaccount() {
137 137
138 if(accountlist_l->count() == MAX_ACCOUNTS) { 138 if(accountlist_l->count() == MAX_ACCOUNTS) {
139 QMessageBox::information(this, "sorry", 139 QMessageBox::information(this, "sorry",
140 tr("Maximum number of accounts reached.")); 140 tr("Maximum number of accounts reached."));
141 return; 141 return;
142 } 142 }
143 143
144 int result; 144 int result;
145 if (_pppdata->newaccount() == -1){ 145 if (_pppdata->newaccount() == -1){
146 qDebug("_pppdata->newaccount() == -1"); 146 qDebug("_pppdata->newaccount() == -1");
147 return; 147 return;
148 } 148 }
149 result = doTab(); 149 result = doTab();
150 150
151 if(result == QDialog::Accepted) { 151 if(result == QDialog::Accepted) {
152 accountlist_l->insertItem(_pppdata->accname()); 152 accountlist_l->insertItem(_pppdata->accname());
153 accountlist_l->setSelected(accountlist_l->findItem(_pppdata->accname()),true); 153 accountlist_l->setSelected(accountlist_l->findItem(_pppdata->accname()),true);
154 154
155 _pppdata->save(); 155 _pppdata->save();
156 } else 156 } else
157 _pppdata->deleteAccount(); 157 _pppdata->deleteAccount();
158} 158}
159 159
160 160
161void AccountWidget::copyaccount() { 161void AccountWidget::copyaccount() {
162 if(accountlist_l->count() == MAX_ACCOUNTS) { 162 if(accountlist_l->count() == MAX_ACCOUNTS) {
163 QMessageBox::information(this, "sorry", tr("Maximum number of accounts reached.")); 163 QMessageBox::information(this, "sorry", tr("Maximum number of accounts reached."));
164 return; 164 return;
165 } 165 }
166 166
167 if(accountlist_l->currentItem()<0) { 167 if(accountlist_l->currentItem()<0) {
168 QMessageBox::information(this, "sorry", tr("No account selected.")); 168 QMessageBox::information(this, "sorry", tr("No account selected."));
169 return; 169 return;
170 } 170 }
171 171
172 _pppdata->copyaccount(accountlist_l->currentItem()); 172 _pppdata->copyaccount(accountlist_l->currentItem());
173 173
174 accountlist_l->insertItem(_pppdata->accname()); 174 accountlist_l->insertItem(_pppdata->accname());
175// emit resetaccounts(); 175// emit resetaccounts();
176 _pppdata->save(); 176 _pppdata->save();
177} 177}
178 178
179 179
180void AccountWidget::deleteaccount() { 180void AccountWidget::deleteaccount() {
181 181
182 QString s = tr("Are you sure you want to delete\nthe account \"%1\"?") 182 QString s = tr("Are you sure you want to delete\nthe account \"%1\"?")
183 .arg(accountlist_l->text(accountlist_l->currentItem())); 183 .arg(accountlist_l->text(accountlist_l->currentItem()));
184 184
185 if(QMessageBox::warning(this, s, tr("Confirm")) != QMessageBox::Yes) 185 if(QMessageBox::warning(this, s, tr("Confirm")) != QMessageBox::Yes)
186 return; 186 return;
187 187
188 if(_pppdata->deleteAccount(accountlist_l->text(accountlist_l->currentItem()))) 188 if(_pppdata->deleteAccount(accountlist_l->text(accountlist_l->currentItem())))
189 accountlist_l->removeItem(accountlist_l->currentItem()); 189 accountlist_l->removeItem(accountlist_l->currentItem());
190 190
191 emit resetaccounts(); 191 emit resetaccounts();
192 _pppdata->save(); 192 _pppdata->save();
193 193
194 slotListBoxSelect(accountlist_l->currentItem()); 194 slotListBoxSelect(accountlist_l->currentItem());
195 195
196} 196}
197 197
198 198
199int AccountWidget::doTab(){ 199int AccountWidget::doTab(){
200 QDialog *dlg = new QDialog( 0, "newAccount", true ); 200 QDialog *dlg = new QDialog( 0, "newAccount", true );
201 QVBoxLayout *layout = new QVBoxLayout( dlg ); 201 QVBoxLayout *layout = new QVBoxLayout( dlg );
202 layout->setSpacing( 0 ); 202 layout->setSpacing( 0 );
203 layout->setMargin( 1 ); 203 layout->setMargin( 1 );
204 204
205 tabWindow = new QTabWidget( dlg, "tabWindow" ); 205 tabWindow = new QTabWidget( dlg, "tabWindow" );
206 layout->addWidget( tabWindow ); 206 layout->addWidget( tabWindow );
207 207
208 bool isnewaccount; 208 bool isnewaccount;
209 209
210 if(_pppdata->accname().isEmpty()) { 210 if(_pppdata->accname().isEmpty()) {
211 dlg->setCaption(tr("New Account")); 211 dlg->setCaption(tr("New Account"));
212 isnewaccount = true; 212 isnewaccount = true;
213 } else { 213 } else {
214 QString tit = tr("Edit Account: "); 214 QString tit = tr("Edit Account: ");
215 tit += _pppdata->accname(); 215 tit += _pppdata->accname();
216 dlg->setCaption(tit); 216 dlg->setCaption(tit);
217 isnewaccount = false; 217 isnewaccount = false;
218 } 218 }
219 219
220// // DIAL WIDGET 220// // DIAL WIDGET
221 dial_w = new DialWidget( _pppdata, tabWindow, isnewaccount, "Dial Setup"); 221 dial_w = new DialWidget( _pppdata, tabWindow, isnewaccount, "Dial Setup");
222 tabWindow->addTab( dial_w, tr("Dial") ); 222 tabWindow->addTab( dial_w, tr("Dial") );
223 223
224// // AUTH WIDGET 224// // AUTH WIDGET
225 auth_w = new AuthWidget( _pppdata, tabWindow, isnewaccount, tr("Edit Login Script")); 225 auth_w = new AuthWidget( _pppdata, tabWindow, isnewaccount, tr("Edit Login Script"));
226 tabWindow->addTab( auth_w, tr("Authentication") ); 226 tabWindow->addTab( auth_w, tr("Authentication") );
227 227
228// // IP WIDGET 228// // IP WIDGET
229 ip_w = new IPWidget( _pppdata, tabWindow, isnewaccount, tr("IP Setup")); 229 ip_w = new IPWidget( _pppdata, tabWindow, isnewaccount, tr("IP Setup"));
230 tabWindow->addTab( ip_w, tr("IP") ); 230 tabWindow->addTab( ip_w, tr("IP") );
231 231
232// // GATEWAY WIDGET 232// // GATEWAY WIDGET
233 gateway_w = new GatewayWidget( _pppdata, tabWindow, isnewaccount, tr("Gateway Setup")); 233 gateway_w = new GatewayWidget( _pppdata, tabWindow, isnewaccount, tr("Gateway Setup"));
234 tabWindow->addTab( gateway_w, tr("Gateway") ); 234 tabWindow->addTab( gateway_w, tr("Gateway") );
235 235
236// // DNS WIDGET 236// // DNS WIDGET
237 dns_w = new DNSWidget( _pppdata, tabWindow, isnewaccount, tr("DNS Servers") ); 237 dns_w = new DNSWidget( _pppdata, tabWindow, isnewaccount, tr("DNS Servers") );
238 tabWindow->addTab( dns_w, tr("DNS") ); 238 tabWindow->addTab( dns_w, tr("DNS") );
239 239
240// // EXECUTE WIDGET 240// // EXECUTE WIDGET
241 ExecWidget *exec_w = new ExecWidget( _pppdata, tabWindow, isnewaccount, tr("Execute Programs")); 241 ExecWidget *exec_w = new ExecWidget( _pppdata, tabWindow, isnewaccount, tr("Execute Programs"));
242 tabWindow->addTab( exec_w, tr("Execute") ); 242 tabWindow->addTab( exec_w, tr("Execute") );
243 243
244 int result = 0; 244 int result = 0;
245 bool ok = false; 245 bool ok = false;
246 246
247 while (!ok){ 247 while (!ok){
248 // dlg->showMinimized(); 248 dlg->showMaximized();
249 result = dlg->exec(); 249 result = dlg->exec();
250 ok = true; 250 ok = true;
251 251
252 if(result == QDialog::Accepted) { 252 if(result == QDialog::Accepted) {
253 if (!auth_w->check()){ 253 if (!auth_w->check()){
254 ok = false; 254 ok = false;
255 } else if(!dial_w->save()) { 255 } else if(!dial_w->save()) {
256 QMessageBox::critical(this, "error", tr( "You must enter a unique account name")); 256 QMessageBox::critical(this, "error", tr( "You must enter a unique account name"));
257 ok = false; 257 ok = false;
258 }else{ 258 }else{
259 ip_w->save(); 259 ip_w->save();
260 dns_w->save(); 260 dns_w->save();
261 gateway_w->save(); 261 gateway_w->save();
262 auth_w->save(); 262 auth_w->save();
263 exec_w->save(); 263 exec_w->save();
264 } 264 }
265 } 265 }
266 } 266 }
267 267
268 delete dlg; 268 delete dlg;
269 269
270 return result; 270 return result;
271} 271}
272 272
273 273
274QString AccountWidget::prettyPrintVolume(unsigned int n) { 274QString AccountWidget::prettyPrintVolume(unsigned int n) {
275 int idx = 0; 275 int idx = 0;
276 const QString quant[] = {tr("Byte"), tr("KB"), 276 const QString quant[] = {tr("Byte"), tr("KB"),
277 tr("MB"), tr("GB"), QString::null}; 277 tr("MB"), tr("GB"), QString::null};
278 278
279 float n1 = n; 279 float n1 = n;
280 while(n >= 1024 && quant[idx] != QString::null) { 280 while(n >= 1024 && quant[idx] != QString::null) {
281 idx++; 281 idx++;
282 n /= 1024; 282 n /= 1024;
283 } 283 }
284 284
285 int i = idx; 285 int i = idx;
286 while(i--) 286 while(i--)
287 n1 = n1 / 1024.0; 287 n1 = n1 / 1024.0;
288 288
289 QString s = QString::number( n1, 'f', idx==0 ? 0 : 1 ); 289 QString s = QString::number( n1, 'f', idx==0 ? 0 : 1 );
290 s += " " + quant[idx]; 290 s += " " + quant[idx];
291 return s; 291 return s;
292} 292}
293 293
294 294
295///////////////////////////////////////////////////////////////////////////// 295/////////////////////////////////////////////////////////////////////////////
296// 296//
297// Queries the user what to reset: costs, volume or both 297// Queries the user what to reset: costs, volume or both
298// 298//
299///////////////////////////////////////////////////////////////////////////// 299/////////////////////////////////////////////////////////////////////////////
300// QueryReset::QueryReset(QWidget *parent) : QDialog(parent, 0, true) { 300// QueryReset::QueryReset(QWidget *parent) : QDialog(parent, 0, true) {
301// // KWin::setIcons(winId(), kapp->icon(), kapp->miniIcon()); 301// // KWin::setIcons(winId(), kapp->icon(), kapp->miniIcon());
302// setCaption(tr("Reset Accounting")); 302// setCaption(tr("Reset Accounting"));
303 303
304// QVBoxLayout *tl = new QVBoxLayout(this, 10, 10); 304// QVBoxLayout *tl = new QVBoxLayout(this, 10, 10);
305// QVGroupBox *f = new QVGroupBox(tr("What to Reset"), this); 305// QVGroupBox *f = new QVGroupBox(tr("What to Reset"), this);
306 306
307// QVBoxLayout *l1 = new QVBoxLayout(this, 10, 10); 307// QVBoxLayout *l1 = new QVBoxLayout(this, 10, 10);
308// // costs = new QCheckBox(tr("Reset the accumulated phone costs"), f); 308// // costs = new QCheckBox(tr("Reset the accumulated phone costs"), f);
309// // costs->setChecked(true); 309// // costs->setChecked(true);
310// // l1->addWidget(costs); 310// // l1->addWidget(costs);
311// // QWhatsThis::add(costs, tr("Check this to set the phone costs\n" 311// // QWhatsThis::add(costs, tr("Check this to set the phone costs\n"
312 // // "to zero. Typically you'll want to\n" 312 // // "to zero. Typically you'll want to\n"
313 // // "do this once a month.")); 313 // // "do this once a month."));
314 314
315// // volume = new QCheckBox(tr("Reset volume accounting"), f); 315// // volume = new QCheckBox(tr("Reset volume accounting"), f);
316// // volume->setChecked(true); 316// // volume->setChecked(true);
317// // l1->addWidget(volume); 317// // l1->addWidget(volume);
318// // QWhatsThis::add(volume, tr("Check this to set the volume accounting\n" 318// // QWhatsThis::add(volume, tr("Check this to set the volume accounting\n"
319 // // "to zero. Typically you'll want to do this\n" 319 // // "to zero. Typically you'll want to do this\n"
320 // // "once a month.")); 320 // // "once a month."));
321 321
322// l1->activate(); 322// l1->activate();
323 323
324// // this activates the f-layout and sets minimumSize() 324// // this activates the f-layout and sets minimumSize()
325// f->show(); 325// f->show();
326 326
327// tl->addWidget(f); 327// tl->addWidget(f);
328 328
329// QButtonGroup *bbox = new QButtonGroup(this); 329// QButtonGroup *bbox = new QButtonGroup(this);
330// // bbox->addStretch(1); 330// // bbox->addStretch(1);
331// QPushButton *ok = new QPushButton( bbox, tr("OK") ); 331// QPushButton *ok = new QPushButton( bbox, tr("OK") );
332// bbox->insert(ok); 332// bbox->insert(ok);
333// ok->setDefault(true); 333// ok->setDefault(true);
334// QPushButton *cancel = new QPushButton( bbox, tr("Cancel") ); 334// QPushButton *cancel = new QPushButton( bbox, tr("Cancel") );
335// bbox->insert(cancel); 335// bbox->insert(cancel);
336 336
337// connect(ok, SIGNAL(clicked()), 337// connect(ok, SIGNAL(clicked()),
338 // this, SLOT(accepted())); 338 // this, SLOT(accepted()));
339// connect(cancel, SIGNAL(clicked()), 339// connect(cancel, SIGNAL(clicked()),
340 // this, SLOT(reject())); 340 // this, SLOT(reject()));
341 341
342// bbox->layout(); 342// bbox->layout();
343// tl->addWidget(bbox); 343// tl->addWidget(bbox);
344 344
345// } 345// }
346 346
347 347
348// void QueryReset::accepted() { 348// void QueryReset::accepted() {
349// int result = costs->isChecked() ? COSTS : 0; 349// int result = costs->isChecked() ? COSTS : 0;
350// result += volume->isChecked() ? VOLUME : 0; 350// result += volume->isChecked() ? VOLUME : 0;
351 351
352// done(result); 352// done(result);
353// } 353// }
354 354
355 355
diff --git a/noncore/settings/networksettings/ppp/edit.cpp b/noncore/settings/networksettings/ppp/edit.cpp
index b880978..0c96253 100644
--- a/noncore/settings/networksettings/ppp/edit.cpp
+++ b/noncore/settings/networksettings/ppp/edit.cpp
@@ -26,384 +26,385 @@
26#include <string.h> 26#include <string.h>
27#include <termios.h> 27#include <termios.h>
28#include <qlayout.h> 28#include <qlayout.h>
29#include <qmessagebox.h> 29#include <qmessagebox.h>
30#include <qwhatsthis.h> 30#include <qwhatsthis.h>
31#include <qregexp.h> 31#include <qregexp.h>
32#include <qapplication.h> 32#include <qapplication.h>
33#include <qbuttongroup.h> 33#include <qbuttongroup.h>
34#include <qvgroupbox.h> 34#include <qvgroupbox.h>
35#include <qhbox.h> 35#include <qhbox.h>
36#include <qdialog.h> 36#include <qdialog.h>
37#include <qpe/resource.h> 37#include <qpe/resource.h>
38 38
39#include "edit.h" 39#include "edit.h"
40#include "pppdata.h" 40#include "pppdata.h"
41#include "iplined.h" 41#include "iplined.h"
42#include "auth.h" 42#include "auth.h"
43 43
44DialWidget::DialWidget( PPPData *pd, QWidget *parent, bool isnewaccount 44DialWidget::DialWidget( PPPData *pd, QWidget *parent, bool isnewaccount
45 , const char *name ) 45 , const char *name )
46 : QWidget(parent, name), _pppdata(pd) 46 : QWidget(parent, name), _pppdata(pd)
47{ 47{
48 const int GRIDROWS = 6; 48 const int GRIDROWS = 6;
49 49
50 QGridLayout *tl = new QGridLayout(this, GRIDROWS, 2, 0 ); 50 QGridLayout *tl = new QGridLayout(this, GRIDROWS, 2, 0 );
51 51
52 connect_label = new QLabel(tr("Connection name:"), this); 52 connect_label = new QLabel(tr("Connection name:"), this);
53 tl->addWidget(connect_label, 0, 0); 53 tl->addWidget(connect_label, 0, 0);
54 54
55 connectname_l = new QLineEdit(this); 55 connectname_l = new QLineEdit(this);
56// connectname_l->setMaxLength(ACCNAME_SIZE); 56// connectname_l->setMaxLength(ACCNAME_SIZE);
57 tl->addWidget(connectname_l, 0, 1); 57 tl->addWidget(connectname_l, 0, 1);
58 QString tmp = tr("Type in a unique name for this connection"); 58 QString tmp = tr("Type in a unique name for this connection");
59 59
60 QWhatsThis::add(connect_label,tmp); 60 QWhatsThis::add(connect_label,tmp);
61 QWhatsThis::add(connectname_l,tmp); 61 QWhatsThis::add(connectname_l,tmp);
62 62
63 63
64 number_label = new QLabel(tr("Phone number:"), this); 64 number_label = new QLabel(tr("Phone number:"), this);
65 number_label->setAlignment(AlignTop|AlignLeft); 65 number_label->setAlignment(AlignTop|AlignLeft);
66 tl->addWidget(number_label, 1, 0); 66 tl->addWidget(number_label, 1, 0);
67 67
68 QHBoxLayout *lpn = new QHBoxLayout(5); 68 QHBoxLayout *lpn = new QHBoxLayout(5);
69 tl->addLayout(lpn, 1, 1); 69 tl->addLayout(lpn, 1, 1);
70 numbers = new QListBox(this); 70 numbers = new QListBox(this);
71// numbers->setMinimumSize(120, 70); 71// numbers->setMinimumSize(120, 70);
72 lpn->addWidget(numbers); 72 lpn->addWidget(numbers);
73 QVBoxLayout *lpn1 = new QVBoxLayout; 73 QVBoxLayout *lpn1 = new QVBoxLayout;
74 lpn->addLayout(lpn1); 74 lpn->addLayout(lpn1);
75 add = new QPushButton(tr("&Add..."), this); 75 add = new QPushButton(tr("&Add..."), this);
76 del = new QPushButton(tr("&Remove"), this); 76 del = new QPushButton(tr("&Remove"), this);
77 77
78 up = new QPushButton(this); 78 up = new QPushButton(this);
79 up->setPixmap( Resource::loadPixmap("inline/up") ); 79 up->setPixmap( Resource::loadPixmap("inline/up") );
80 down = new QPushButton(this); 80 down = new QPushButton(this);
81 down->setPixmap( Resource::loadPixmap("inline/down") ); 81 down->setPixmap( Resource::loadPixmap("inline/down") );
82 lpn1->addWidget(add); 82 lpn1->addWidget(add);
83 lpn1->addWidget(del); 83 lpn1->addWidget(del);
84 lpn1->addStretch(1); 84 lpn1->addStretch(1);
85 lpn1->addWidget(up); 85 lpn1->addWidget(up);
86 lpn1->addWidget(down); 86 lpn1->addWidget(down);
87 connect(add, SIGNAL(clicked()), 87 connect(add, SIGNAL(clicked()),
88 this, SLOT(addNumber())); 88 this, SLOT(addNumber()));
89 connect(del, SIGNAL(clicked()), 89 connect(del, SIGNAL(clicked()),
90 this, SLOT(delNumber())); 90 this, SLOT(delNumber()));
91 connect(up, SIGNAL(clicked()), 91 connect(up, SIGNAL(clicked()),
92 this, SLOT(upNumber())); 92 this, SLOT(upNumber()));
93 connect(down, SIGNAL(clicked()), 93 connect(down, SIGNAL(clicked()),
94 this, SLOT(downNumber())); 94 this, SLOT(downNumber()));
95 connect(numbers, SIGNAL(highlighted(int)), 95 connect(numbers, SIGNAL(highlighted(int)),
96 this, SLOT(selectionChanged(int))); 96 this, SLOT(selectionChanged(int)));
97 numbersChanged(); 97 numbersChanged();
98 98
99 tmp = tr("<p>Specifies the phone numbers to dial. You\n" 99 tmp = tr("<p>Specifies the phone numbers to dial. You\n"
100 "can supply multiple numbers here, simply\n" 100 "can supply multiple numbers here, simply\n"
101 "click on \"Add\". You can arrange the\n" 101 "click on \"Add\". You can arrange the\n"
102 "order the numbers are tried by using the\n" 102 "order the numbers are tried by using the\n"
103 "arrow buttons.\n\n" 103 "arrow buttons.\n\n"
104 "When a number is busy or fails, <i>kppp</i> will \n" 104 "When a number is busy or fails, <i>kppp</i> will \n"
105 "try the next number and so on"); 105 "try the next number and so on");
106 106
107 QWhatsThis::add(number_label,tmp); 107 QWhatsThis::add(number_label,tmp);
108 QWhatsThis::add(numbers,tmp); 108 QWhatsThis::add(numbers,tmp);
109 109
110 pppdargs = new QPushButton(tr("Customize pppd Arguments..."), this); 110 pppdargs = new QPushButton(tr("Customize pppd Arguments..."), this);
111 connect(pppdargs, SIGNAL(clicked()), SLOT(pppdargsbutton())); 111 connect(pppdargs, SIGNAL(clicked()), SLOT(pppdargsbutton()));
112 tl->addMultiCellWidget(pppdargs, 5, 5, 0, 1, AlignCenter); 112 tl->addMultiCellWidget(pppdargs, 5, 5, 0, 1, AlignCenter);
113 113
114 // Set defaults if editing an existing connection 114 // Set defaults if editing an existing connection
115 if(!isnewaccount) { 115 if(!isnewaccount) {
116 connectname_l->setText(_pppdata->accname()); 116 connectname_l->setText(_pppdata->accname());
117 117
118 // insert the phone numbers into the listbox 118 // insert the phone numbers into the listbox
119 QString n = _pppdata->phonenumber(); 119 QString n = _pppdata->phonenumber();
120 QString tmp = ""; 120 QString tmp = "";
121 uint idx = 0; 121 uint idx = 0;
122 while(idx != n.length()) { 122 while(idx != n.length()) {
123 if(n[idx] == ':') { 123 if(n[idx] == ':') {
124 if(tmp.length() > 0) 124 if(tmp.length() > 0)
125 numbers->insertItem(tmp); 125 numbers->insertItem(tmp);
126 tmp = ""; 126 tmp = "";
127 } else 127 } else
128 tmp += n[idx]; 128 tmp += n[idx];
129 idx++; 129 idx++;
130 } 130 }
131 if(tmp.length() > 0) 131 if(tmp.length() > 0)
132 numbers->insertItem(tmp); 132 numbers->insertItem(tmp);
133 133
134 } 134 }
135 135
136 numbersChanged(); 136 numbersChanged();
137 tl->activate(); 137 tl->activate();
138} 138}
139 139
140bool DialWidget::save() { 140bool DialWidget::save() {
141 //first check to make sure that the account name is unique! 141 //first check to make sure that the account name is unique!
142 if(connectname_l->text().isEmpty() || 142 if(connectname_l->text().isEmpty() ||
143 !_pppdata->isUniqueAccname(connectname_l->text())) { 143 !_pppdata->isUniqueAccname(connectname_l->text())) {
144 return false; 144 return false;
145 } else { 145 } else {
146 _pppdata->setAccname(connectname_l->text()); 146 _pppdata->setAccname(connectname_l->text());
147 147
148 QString number = ""; 148 QString number = "";
149 for(uint i = 0; i < numbers->count(); i++) { 149 for(uint i = 0; i < numbers->count(); i++) {
150 if(i != 0) 150 if(i != 0)
151 number += ":"; 151 number += ":";
152 number += numbers->text(i); 152 number += numbers->text(i);
153 } 153 }
154 154
155 _pppdata->setPhonenumber(number); 155 _pppdata->setPhonenumber(number);
156 return true; 156 return true;
157 } 157 }
158} 158}
159 159
160 160
161void DialWidget::numbersChanged() { 161void DialWidget::numbersChanged() {
162 int sel = numbers->currentItem(); 162 int sel = numbers->currentItem();
163 163
164 del->setEnabled(sel != -1); 164 del->setEnabled(sel != -1);
165 up->setEnabled(sel != -1 && sel != 0); 165 up->setEnabled(sel != -1 && sel != 0);
166 down->setEnabled(sel != -1 && sel != (int)numbers->count()-1); 166 down->setEnabled(sel != -1 && sel != (int)numbers->count()-1);
167} 167}
168 168
169 169
170void DialWidget::selectionChanged(int) { 170void DialWidget::selectionChanged(int) {
171 numbersChanged(); 171 numbersChanged();
172} 172}
173 173
174 174
175void DialWidget::addNumber() { 175void DialWidget::addNumber() {
176 PhoneNumberDialog dlg(this); 176 PhoneNumberDialog dlg(this);
177 if(dlg.exec()) { 177 if(dlg.exec()) {
178 numbers->insertItem(dlg.phoneNumber()); 178 numbers->insertItem(dlg.phoneNumber());
179 numbersChanged(); 179 numbersChanged();
180 } 180 }
181} 181}
182 182
183 183
184void DialWidget::delNumber() { 184void DialWidget::delNumber() {
185 if(numbers->currentItem() != -1) { 185 if(numbers->currentItem() != -1) {
186 numbers->removeItem(numbers->currentItem()); 186 numbers->removeItem(numbers->currentItem());
187 numbersChanged(); 187 numbersChanged();
188 } 188 }
189} 189}
190 190
191 191
192void DialWidget::upNumber() { 192void DialWidget::upNumber() {
193 int idx = numbers->currentItem(); 193 int idx = numbers->currentItem();
194 if(idx != -1) { 194 if(idx != -1) {
195 QString item = numbers->text(idx); 195 QString item = numbers->text(idx);
196 numbers->removeItem(idx); 196 numbers->removeItem(idx);
197 numbers->insertItem(item, idx-1); 197 numbers->insertItem(item, idx-1);
198 numbers->setCurrentItem(idx-1); 198 numbers->setCurrentItem(idx-1);
199 numbersChanged(); 199 numbersChanged();
200 } 200 }
201} 201}
202 202
203 203
204void DialWidget::downNumber() { 204void DialWidget::downNumber() {
205 int idx = numbers->currentItem(); 205 int idx = numbers->currentItem();
206 if(idx != -1) { 206 if(idx != -1) {
207 QString item = numbers->text(idx); 207 QString item = numbers->text(idx);
208 numbers->removeItem(idx); 208 numbers->removeItem(idx);
209 numbers->insertItem(item, idx+1); 209 numbers->insertItem(item, idx+1);
210 numbers->setCurrentItem(idx+1); 210 numbers->setCurrentItem(idx+1);
211 numbersChanged(); 211 numbersChanged();
212 } 212 }
213} 213}
214 214
215 215
216void DialWidget::pppdargsbutton() { 216void DialWidget::pppdargsbutton() {
217 PPPdArguments pa(_pppdata, this); 217 PPPdArguments pa(_pppdata, this);
218 pa.showMaximized();
218 pa.exec(); 219 pa.exec();
219} 220}
220 221
221 222
222 223
223///////////////////////////////////////////////////////////////////////////// 224/////////////////////////////////////////////////////////////////////////////
224// ExecWidget 225// ExecWidget
225///////////////////////////////////////////////////////////////////////////// 226/////////////////////////////////////////////////////////////////////////////
226ExecWidget::ExecWidget(PPPData *pd, QWidget *parent, bool isnewaccount, const char *name) : 227ExecWidget::ExecWidget(PPPData *pd, QWidget *parent, bool isnewaccount, const char *name) :
227 QWidget(parent, name), _pppdata(pd) 228 QWidget(parent, name), _pppdata(pd)
228{ 229{
229 QVBoxLayout *tl = new QVBoxLayout(this, 0 );//, KDialog::spacingHint()); 230 QVBoxLayout *tl = new QVBoxLayout(this, 0 );//, KDialog::spacingHint());
230 231
231 QLabel *l = new QLabel( tr("Here you can select commands to run at certain stages of the connection. The commands are run with your real user id, so you cannot run any commands here requiring root permissions (unless, of course, you are root).<br><br>Be sure to supply the whole path to the program otherwise we might be unable to find it."), this); 232 QLabel *l = new QLabel( tr("Here you can select commands to run at certain stages of the connection. The commands are run with your real user id, so you cannot run any commands here requiring root permissions (unless, of course, you are root).<br><br>Be sure to supply the whole path to the program otherwise we might be unable to find it."), this);
232 233
233 tl->addWidget(l); 234 tl->addWidget(l);
234 tl->addStretch(1); 235 tl->addStretch(1);
235 236
236 QGridLayout *l1 = new QGridLayout(4, 2, 10); 237 QGridLayout *l1 = new QGridLayout(4, 2, 10);
237 tl->addLayout(l1); 238 tl->addLayout(l1);
238 l1->setColStretch(0, 0); 239 l1->setColStretch(0, 0);
239 l1->setColStretch(1, 1); 240 l1->setColStretch(1, 1);
240 241
241 before_connect_l = new QLabel(tr("Before connect:"), this); 242 before_connect_l = new QLabel(tr("Before connect:"), this);
242 before_connect_l->setAlignment(AlignVCenter); 243 before_connect_l->setAlignment(AlignVCenter);
243 l1->addWidget(before_connect_l, 0, 0); 244 l1->addWidget(before_connect_l, 0, 0);
244 before_connect = new QLineEdit(this); 245 before_connect = new QLineEdit(this);
245// before_connect->setMaxLength(COMMAND_SIZE); 246// before_connect->setMaxLength(COMMAND_SIZE);
246 l1->addWidget(before_connect, 0, 1); 247 l1->addWidget(before_connect, 0, 1);
247 QString tmp = tr("Allows you to run a program <b>before</b> a connection\n" 248 QString tmp = tr("Allows you to run a program <b>before</b> a connection\n"
248 "is established. It is called immediately before\n" 249 "is established. It is called immediately before\n"
249 "dialing has begun.\n\n" 250 "dialing has begun.\n\n"
250 "This might be useful, e.g. to stop HylaFAX blocking the\n" 251 "This might be useful, e.g. to stop HylaFAX blocking the\n"
251 "modem."); 252 "modem.");
252 253
253 QWhatsThis::add(before_connect_l,tmp); 254 QWhatsThis::add(before_connect_l,tmp);
254 QWhatsThis::add(before_connect,tmp); 255 QWhatsThis::add(before_connect,tmp);
255 256
256 command_label = new QLabel(tr("Upon connect:"), this); 257 command_label = new QLabel(tr("Upon connect:"), this);
257 command_label->setAlignment(AlignVCenter); 258 command_label->setAlignment(AlignVCenter);
258 l1->addWidget(command_label, 1, 0); 259 l1->addWidget(command_label, 1, 0);
259 command = new QLineEdit(this); 260 command = new QLineEdit(this);
260// command->setMaxLength(COMMAND_SIZE); 261// command->setMaxLength(COMMAND_SIZE);
261 l1->addWidget(command, 1, 1); 262 l1->addWidget(command, 1, 1);
262 tmp = tr("Allows you to run a program <b>after</b> a connection\n" 263 tmp = tr("Allows you to run a program <b>after</b> a connection\n"
263 "is established. When your program is called, all\n" 264 "is established. When your program is called, all\n"
264 "preparations for an Internet connection are finished.\n" 265 "preparations for an Internet connection are finished.\n"
265 "\n" 266 "\n"
266 "Very useful for fetching mail and news"); 267 "Very useful for fetching mail and news");
267 268
268 QWhatsThis::add(command_label,tmp); 269 QWhatsThis::add(command_label,tmp);
269 QWhatsThis::add(command,tmp); 270 QWhatsThis::add(command,tmp);
270 271
271 predisconnect_label = new QLabel(tr("Before disconnect:"), 272 predisconnect_label = new QLabel(tr("Before disconnect:"),
272 this); 273 this);
273 predisconnect_label->setAlignment(AlignVCenter); 274 predisconnect_label->setAlignment(AlignVCenter);
274 l1->addWidget(predisconnect_label, 2, 0); 275 l1->addWidget(predisconnect_label, 2, 0);
275 predisconnect = new QLineEdit(this); 276 predisconnect = new QLineEdit(this);
276// predisconnect->setMaxLength(COMMAND_SIZE); 277// predisconnect->setMaxLength(COMMAND_SIZE);
277 l1->addWidget(predisconnect, 2, 1); 278 l1->addWidget(predisconnect, 2, 1);
278 tmp = tr("Allows you to run a program <b>before</b> a connection\n" 279 tmp = tr("Allows you to run a program <b>before</b> a connection\n"
279 "is closed. The connection will stay open until\n" 280 "is closed. The connection will stay open until\n"
280 "the program exits."); 281 "the program exits.");
281 282
282 QWhatsThis::add(predisconnect_label,tmp); 283 QWhatsThis::add(predisconnect_label,tmp);
283 QWhatsThis::add(predisconnect,tmp); 284 QWhatsThis::add(predisconnect,tmp);
284 285
285 discommand_label = new QLabel(tr("Upon disconnect:"), 286 discommand_label = new QLabel(tr("Upon disconnect:"),
286 this); 287 this);
287 discommand_label->setAlignment(AlignVCenter); 288 discommand_label->setAlignment(AlignVCenter);
288 l1->addWidget(discommand_label, 3, 0); 289 l1->addWidget(discommand_label, 3, 0);
289 290
290 discommand = new QLineEdit(this); 291 discommand = new QLineEdit(this);
291// discommand->setMaxLength(COMMAND_SIZE); 292// discommand->setMaxLength(COMMAND_SIZE);
292 l1->addWidget(discommand, 3, 1); 293 l1->addWidget(discommand, 3, 1);
293 tmp = tr("Allows you to run a program <b>after</b> a connection\n" 294 tmp = tr("Allows you to run a program <b>after</b> a connection\n"
294 "has been closed."); 295 "has been closed.");
295 296
296 QWhatsThis::add(discommand_label,tmp); 297 QWhatsThis::add(discommand_label,tmp);
297 QWhatsThis::add(discommand,tmp); 298 QWhatsThis::add(discommand,tmp);
298 299
299 // extra space between entries 300 // extra space between entries
300 l1->addRowSpacing(1, 5); 301 l1->addRowSpacing(1, 5);
301 l1->addRowSpacing(3, 5); 302 l1->addRowSpacing(3, 5);
302 303
303 tl->addStretch(1); 304 tl->addStretch(1);
304 tl->activate(); 305 tl->activate();
305 306
306 // Set defaults if editing an existing connection 307 // Set defaults if editing an existing connection
307 if(!isnewaccount) { 308 if(!isnewaccount) {
308 before_connect->setText(_pppdata->command_before_connect()); 309 before_connect->setText(_pppdata->command_before_connect());
309 command->setText(_pppdata->command_on_connect()); 310 command->setText(_pppdata->command_on_connect());
310 discommand->setText(_pppdata->command_on_disconnect()); 311 discommand->setText(_pppdata->command_on_disconnect());
311 predisconnect->setText(_pppdata->command_before_disconnect()); 312 predisconnect->setText(_pppdata->command_before_disconnect());
312 } 313 }
313} 314}
314 315
315 316
316bool ExecWidget::save() { 317bool ExecWidget::save() {
317 _pppdata->setCommand_before_connect(before_connect->text()); 318 _pppdata->setCommand_before_connect(before_connect->text());
318 _pppdata->setCommand_on_connect(command->text()); 319 _pppdata->setCommand_on_connect(command->text());
319 _pppdata->setCommand_before_disconnect(predisconnect->text()); 320 _pppdata->setCommand_before_disconnect(predisconnect->text());
320 _pppdata->setCommand_on_disconnect(discommand->text()); 321 _pppdata->setCommand_on_disconnect(discommand->text());
321 return true; 322 return true;
322} 323}
323 324
324 325
325 326
326///////////////////////////////////////////////////////////////////////////// 327/////////////////////////////////////////////////////////////////////////////
327// 328//
328// IPWidget 329// IPWidget
329// 330//
330///////////////////////////////////////////////////////////////////////////// 331/////////////////////////////////////////////////////////////////////////////
331IPWidget::IPWidget( PPPData *pd, QWidget *parent, bool isnewaccount, const char *name ) 332IPWidget::IPWidget( PPPData *pd, QWidget *parent, bool isnewaccount, const char *name )
332 : QWidget(parent, name), _pppdata(pd) 333 : QWidget(parent, name), _pppdata(pd)
333{ 334{
334 QVBoxLayout *topLayout = new QVBoxLayout(this); 335 QVBoxLayout *topLayout = new QVBoxLayout(this);
335 topLayout->setSpacing( 3 );//KDialog::spacingHint()); 336 topLayout->setSpacing( 3 );//KDialog::spacingHint());
336 337
337 box = new QVGroupBox(tr("Configuration"), this); 338 box = new QVGroupBox(tr("Configuration"), this);
338// box->setInsideSpacing( 1 );//KDialog::spacingHint()); 339// box->setInsideSpacing( 1 );//KDialog::spacingHint());
339 340
340 rb = new QButtonGroup(this); 341 rb = new QButtonGroup(this);
341 rb->hide(); 342 rb->hide();
342 connect(rb, SIGNAL(clicked(int)), 343 connect(rb, SIGNAL(clicked(int)),
343 SLOT(hitIPSelect(int))); 344 SLOT(hitIPSelect(int)));
344 345
345 dynamicadd_rb = new QRadioButton(box); 346 dynamicadd_rb = new QRadioButton(box);
346 dynamicadd_rb->setText(tr("Dynamic IP address")); 347 dynamicadd_rb->setText(tr("Dynamic IP address"));
347 QWhatsThis::add(dynamicadd_rb, 348 QWhatsThis::add(dynamicadd_rb,
348 tr("Select this option when your computer gets an\n" 349 tr("Select this option when your computer gets an\n"
349 "internet address (IP) every time a\n" 350 "internet address (IP) every time a\n"
350 "connection is made.\n" 351 "connection is made.\n"
351 "\n" 352 "\n"
352 "Almost every Internet Service Provider uses\n" 353 "Almost every Internet Service Provider uses\n"
353 "this method, so this should be turned on.")); 354 "this method, so this should be turned on."));
354 355
355 staticadd_rb = new QRadioButton(box); 356 staticadd_rb = new QRadioButton(box);
356 staticadd_rb->setText(tr("Static IP address")); 357 staticadd_rb->setText(tr("Static IP address"));
357 rb->insert(dynamicadd_rb, 0); 358 rb->insert(dynamicadd_rb, 0);
358 rb->insert(staticadd_rb, 1); 359 rb->insert(staticadd_rb, 1);
359 QWhatsThis::add(staticadd_rb, 360 QWhatsThis::add(staticadd_rb,
360 tr("Select this option when your computer has a\n" 361 tr("Select this option when your computer has a\n"
361 "fixed internet address (IP). Most computers\n" 362 "fixed internet address (IP). Most computers\n"
362 "don't have this, so you should probably select\n" 363 "don't have this, so you should probably select\n"
363 "dynamic IP addressing unless you know what you\n" 364 "dynamic IP addressing unless you know what you\n"
364 "are doing.")); 365 "are doing."));
365 366
366 QWidget *ipWidget = new QWidget(box); 367 QWidget *ipWidget = new QWidget(box);
367 QGridLayout *ipLayout = new QGridLayout(ipWidget, 2, 2); 368 QGridLayout *ipLayout = new QGridLayout(ipWidget, 2, 2);
368 ipLayout->setSpacing( 2 );//KDialog::spacingHint()); 369 ipLayout->setSpacing( 2 );//KDialog::spacingHint());
369 370
370 ipaddress_label = new QLabel(tr("IP address:"), ipWidget); 371 ipaddress_label = new QLabel(tr("IP address:"), ipWidget);
371 QString tmp = tr("If your computer has a permanent internet\n" 372 QString tmp = tr("If your computer has a permanent internet\n"
372 "address, you must supply your IP address here."); 373 "address, you must supply your IP address here.");
373 ipLayout->addWidget(ipaddress_label, 0, 0); 374 ipLayout->addWidget(ipaddress_label, 0, 0);
374 375
375 ipaddress_l = new IPLineEdit(ipWidget); 376 ipaddress_l = new IPLineEdit(ipWidget);
376 ipLayout->addWidget(ipaddress_l, 0, 1); 377 ipLayout->addWidget(ipaddress_l, 0, 1);
377 378
378 QWhatsThis::add(ipaddress_label,tmp); 379 QWhatsThis::add(ipaddress_label,tmp);
379 QWhatsThis::add(ipaddress_l,tmp); 380 QWhatsThis::add(ipaddress_l,tmp);
380 381
381 sub_label = new QLabel(tr("Subnet mask:"), ipWidget); 382 sub_label = new QLabel(tr("Subnet mask:"), ipWidget);
382 tmp = tr("<p>If your computer has a static Internet address,\n" 383 tmp = tr("<p>If your computer has a static Internet address,\n"
383 "you must supply a network mask here. In almost\n" 384 "you must supply a network mask here. In almost\n"
384 "all cases this netmask will be <b>255.255.255.0</b>,\n" 385 "all cases this netmask will be <b>255.255.255.0</b>,\n"
385 "but your mileage may vary.\n" 386 "but your mileage may vary.\n"
386 "\n" 387 "\n"
387 "If unsure, contact your Internet Service Provider"); 388 "If unsure, contact your Internet Service Provider");
388 ipLayout->addWidget(sub_label, 1, 0); 389 ipLayout->addWidget(sub_label, 1, 0);
389 390
390 subnetmask_l = new IPLineEdit(ipWidget); 391 subnetmask_l = new IPLineEdit(ipWidget);
391 ipLayout->addWidget(subnetmask_l, 1, 1); 392 ipLayout->addWidget(subnetmask_l, 1, 1);
392 393
393 QWhatsThis::add(sub_label,tmp); 394 QWhatsThis::add(sub_label,tmp);
394 QWhatsThis::add(subnetmask_l,tmp); 395 QWhatsThis::add(subnetmask_l,tmp);
395 396
396 autoname = new QCheckBox(tr("Auto-configure hostname from this IP"), this); 397 autoname = new QCheckBox(tr("Auto-configure hostname from this IP"), this);
397 autoname->setChecked(_pppdata->autoname()); 398 autoname->setChecked(_pppdata->autoname());
398 connect(autoname,SIGNAL(toggled(bool)), 399 connect(autoname,SIGNAL(toggled(bool)),
399 this,SLOT(autoname_t(bool))); 400 this,SLOT(autoname_t(bool)));
400 401
401 QWhatsThis::add(autoname, 402 QWhatsThis::add(autoname,
402 tr("<p>Whenever you connect, this reconfigures\n" 403 tr("<p>Whenever you connect, this reconfigures\n"
403 "your hostname to match the IP address you\n" 404 "your hostname to match the IP address you\n"
404 "got from the PPP server. This may be useful\n" 405 "got from the PPP server. This may be useful\n"
405 "if you need to use a protocol which depends\n" 406 "if you need to use a protocol which depends\n"
406 "on this information, but it can also cause several\n" 407 "on this information, but it can also cause several\n"
407 "<a href=\"kppp-7.html#autohostname\">problems</a>.\n" 408 "<a href=\"kppp-7.html#autohostname\">problems</a>.\n"
408 "\n" 409 "\n"
409 "Don't enable this unless you really need it.")); 410 "Don't enable this unless you really need it."));