-rw-r--r-- | core/settings/security/security.cpp | 17 | ||||
-rw-r--r-- | core/settings/security/securitybase.ui | 27 |
2 files changed, 38 insertions, 6 deletions
diff --git a/core/settings/security/security.cpp b/core/settings/security/security.cpp index 75a181b..c4726b3 100644 --- a/core/settings/security/security.cpp +++ b/core/settings/security/security.cpp @@ -18,16 +18,17 @@ ** **********************************************************************/ #include "security.h" #include <qpe/qpeapplication.h> #include <qpe/config.h> #include <qpe/password.h> #include <qpe/qpedialog.h> +#include <qpe/qcopenvelope_qws.h> #include <qcheckbox.h> #include <qpushbutton.h> #include <qcombobox.h> #include <qmessagebox.h> #include <qfile.h> #include <qlistview.h> #include <qtextstream.h> @@ -67,16 +68,19 @@ autoLoginName=loginCfg.readEntry("AutoLogin",""); if (autoLoginName.stripWhiteSpace().isEmpty()) { autoLogin=false; } else { autoLogin=true; } + cfg.setGroup("SyncMode"); + int mode = cfg.readNumEntry("Mode",2); // Default to Sharp + syncModeCombo->setCurrentItem( mode - 1 ); connect(autologinToggle, SIGNAL(toggled(bool)), this, SLOT(toggleAutoLogin(bool))); connect(userlist, SIGNAL(activated(int)), this, SLOT(changeLoginName(int))); connect(changepasscode,SIGNAL(clicked()), this, SLOT(changePassCode())); connect(clearpasscode,SIGNAL(clicked()), this, SLOT(clearPassCode())); loadUsers(); updateGUI(); @@ -127,16 +131,17 @@ void Security::show() setEnabled(TRUE); valid=TRUE; } void Security::accept() { applySecurity(); QDialog::accept(); + QCopEnvelope env("QPE/System", "securityChanged()" ); } void Security::done(int r) { QDialog::done(r); close(); } @@ -180,44 +185,44 @@ void Security::parseNet(const QString& sn,int& auth_peer,int& auth_peer_bits) auth_peer = (auth_peer<<8)|sn.mid(x,nx-x).toInt(); x = nx+1; } uint n = (uint)sn.find(' ',x)-x; auth_peer_bits = sn.mid(x,n).toInt(); } } -void Security::loadUsers ( void ) +void Security::loadUsers ( void ) { QFile passwd("/etc/passwd"); if ( passwd.open(IO_ReadOnly) ) { - QTextStream t( &passwd ); + QTextStream t( &passwd ); QString s; QStringList account; - while ( !t.eof() ) { + while ( !t.eof() ) { account = QStringList::split(':',t.readLine()); // Hide disabled accounts if (*account.at(1)!="*") { userlist->insertItem(*account.at(0)); // Highlight this item if it is set to autologinToggle - if ( *account.at(0) == autoLoginName) + if ( *account.at(0) == autoLoginName) userlist->setCurrentItem(userlist->count()-1); } } passwd.close(); } } void Security::toggleAutoLogin(bool val) { autoLogin=val; userlist->setEnabled(val); - if (!autoLogin) + if (!autoLogin) autoLoginName=userlist->currentText(); } void Security::setSyncNet(const QString& sn) { int auth_peer,auth_peer_bits; parseNet(sn,auth_peer,auth_peer_bits); selectNet(auth_peer,auth_peer_bits); } @@ -250,16 +255,18 @@ void Security::applySecurity() loginCfg.setGroup("General"); if (autoLogin) { loginCfg.writeEntry("AutoLogin",autoLoginName); } else { loginCfg.removeEntry("AutoLogin"); } + cfg.setGroup("SyncMode"); + cfg.writeEntry("Mode", syncModeCombo->currentItem()+1 ); } } void Security::changeLoginName( int idx ) { autoLoginName = userlist->text(idx);; updateGUI(); } diff --git a/core/settings/security/securitybase.ui b/core/settings/security/securitybase.ui index da25f39..73290e5 100644 --- a/core/settings/security/securitybase.ui +++ b/core/settings/security/securitybase.ui @@ -6,17 +6,17 @@ <name>name</name> <cstring>SecurityBase</cstring> </property> <property stdset="1"> <name>geometry</name> <rect> <x>0</x> <y>0</y> - <width>329</width> + <width>339</width> <height>483</height> </rect> </property> <property stdset="1"> <name>caption</name> <string>Security Settings</string> </property> <property> @@ -376,16 +376,41 @@ <name>name</name> <cstring>syncnet</cstring> </property> <property stdset="1"> <name>editable</name> <bool>true</bool> </property> </widget> + <widget> + <class>QComboBox</class> + <item> + <property> + <name>text</name> + <string>Qtopia 1.7</string> + </property> + </item> + <item> + <property> + <name>text</name> + <string>Opie 1.0</string> + </property> + </item> + <item> + <property> + <name>text</name> + <string>Both</string> + </property> + </item> + <property stdset="1"> + <name>name</name> + <cstring>syncModeCombo</cstring> + </property> + </widget> </vbox> </widget> <spacer> <property> <name>name</name> <cstring>Spacer1</cstring> </property> <property stdset="1"> |