diff -p -up ./kppp/providerdb.cpp.wizard ./kppp/providerdb.cpp --- ./kppp/providerdb.cpp.wizard 2009-01-01 14:28:01.000000000 -0200 +++ ./kppp/providerdb.cpp 2009-09-04 17:45:45.000000000 -0300 @@ -114,6 +114,14 @@ void ProviderDB::pageSelected() { next = page3->lb->currentItem() != -1; } else if(page == page4) { loadProviderInfo(); + + QMap <QString, QString> map=cfg->entryMap("<default>"); + QString defaultUsername = map.value("Username"); + QString defaultPassword = map.value("Password"); + + page4->setUsername(defaultUsername); + page4->setPassword(defaultPassword); + next = !page4->username().isEmpty() && !page4->password().isEmpty(); } @@ -139,18 +147,16 @@ void ProviderDB::loadProviderInfo() { void ProviderDB::accept() { - QString usernamePlaceholder="%USERNAME%"; - QString passwordPlaceholder="%PASSWORD%"; - QString username=page4->username(); - QString password=page4->password(); - QMap <QString, QString> map=cfg->entryMap("<default>"); + + map["Username"] = page4->username(); + map["Password"] = page4->password(); + QMap <QString, QString>::Iterator it=map.begin(); + while(it != map.end()) { QString key = it.key(); QString value = *it; - value.replace(usernamePlaceholder,username); - value.replace(passwordPlaceholder,password); gpppdata.writeConfig(gpppdata.currentAccountGroup(), key, value); @@ -222,7 +228,11 @@ PDB_Country::PDB_Country(QWidget *parent // fill the listbox // set up filter - QDir d(KGlobal::dirs()->findDirs("appdata", "Provider").first()); + QStringList dirs = KGlobal::dirs()->findDirs("appdata", "Provider"); + if (dirs.isEmpty()) { + return; + } + QDir d(dirs.first()); d.setFilter(QDir::Dirs); d.setSorting(QDir::Name); @@ -393,12 +403,22 @@ QString PDB_UserInfo::username() { } +void PDB_UserInfo::setUsername(const QString &username) { + _username->setText(username); +} + + QString PDB_UserInfo::password() { QString s = _password->text(); return s; } +void PDB_UserInfo::setPassword(const QString &password) { + _password->setText(password); +} + + void PDB_UserInfo::activate() { _username->setFocus(); } diff -p -up ./kppp/providerdb.h.wizard ./kppp/providerdb.h --- ./kppp/providerdb.h.wizard 2008-01-04 21:59:27.000000000 -0200 +++ ./kppp/providerdb.h 2009-09-04 17:45:45.000000000 -0300 @@ -85,7 +85,9 @@ class PDB_UserInfo : public QWidget { public: PDB_UserInfo(QWidget *parent); QString username(); + void setUsername(const QString &username); QString password(); + void setPassword(const QString &password); void activate(); public slots: