summaryrefslogtreecommitdiff
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--inputmethods/dasher/QtDasherPlugin.cc4
-rw-r--r--noncore/net/opietooth/manager/bluebase.cpp2
-rw-r--r--noncore/settings/usermanager/userdialog.cpp12
3 files changed, 10 insertions, 8 deletions
diff --git a/inputmethods/dasher/QtDasherPlugin.cc b/inputmethods/dasher/QtDasherPlugin.cc
index 50d4539..91167c2 100644
--- a/inputmethods/dasher/QtDasherPlugin.cc
+++ b/inputmethods/dasher/QtDasherPlugin.cc
@@ -1,70 +1,72 @@
1#include "QtDasherPlugin.h" 1#include "QtDasherPlugin.h"
2 2
3#include <qpe/global.h> 3#include <qpe/global.h>
4#include <qpe/qpeapplication.h>
4 5
5#include <qpainter.h> 6#include <qpainter.h>
6#include <qlist.h> 7#include <qlist.h>
7#include <qbitmap.h> 8#include <qbitmap.h>
8#include <qlayout.h> 9#include <qlayout.h>
9#include <qvbox.h> 10#include <qvbox.h>
10#include <qdialog.h> 11#include <qdialog.h>
12#include <qfile.h>
11#include <qscrollview.h> 13#include <qscrollview.h>
12#include <qpopupmenu.h> 14#include <qpopupmenu.h>
13#include <qhbuttongroup.h> 15#include <qhbuttongroup.h>
14#include <qpushbutton.h> 16#include <qpushbutton.h>
15#include <qmessagebox.h> 17#include <qmessagebox.h>
16#include <qwindowsystem_qws.h> 18#include <qwindowsystem_qws.h>
17 19
18QtDasherPlugin::QtDasherPlugin(QWidget* parent, const char* name, WFlags f) : QFrame(parent,name,f) 20QtDasherPlugin::QtDasherPlugin(QWidget* parent, const char* name, WFlags f) : QFrame(parent,name,f)
19{ 21{
20 (new QHBoxLayout(this))->setAutoAdd(TRUE); 22 (new QHBoxLayout(this))->setAutoAdd(TRUE);
21 interface = new CDasherInterface; 23 interface = new CDasherInterface;
22 interface->SetSystemLocation("/opt/QtPalmtop/share/dasher/"); 24 interface->SetSystemLocation( QFile::encodeName(QPEApplication::qpeDir()+"share/dasher/").data() );
23 interface->Unpause(0); 25 interface->Unpause(0);
24 interface->Start(); 26 interface->Start();
25 d = new QtDasherScreen(240,100,interface,this,this); 27 d = new QtDasherScreen(240,100,interface,this,this);
26 interface->ChangeMaxBitRate(2.5); 28 interface->ChangeMaxBitRate(2.5);
27 d->show(); 29 d->show();
28 utf8_codec = new QUtf8Codec; 30 utf8_codec = new QUtf8Codec;
29} 31}
30 32
31QSize QtDasherPlugin::sizeHint() const 33QSize QtDasherPlugin::sizeHint() const
32{ 34{
33 return QSize(240,100); 35 return QSize(240,100);
34} 36}
35 37
36QtDasherPlugin::~QtDasherPlugin() 38QtDasherPlugin::~QtDasherPlugin()
37{ 39{
38 delete interface; 40 delete interface;
39} 41}
40 42
41void QtDasherPlugin::resetState() 43void QtDasherPlugin::resetState()
42{ 44{
43 flushcount=0; 45 flushcount=0;
44 interface->Start(); 46 interface->Start();
45 interface->Redraw(); 47 interface->Redraw();
46} 48}
47 49
48void QtDasherPlugin::unflush() 50void QtDasherPlugin::unflush()
49{ 51{
50 if (flushcount==0) 52 if (flushcount==0)
51 return; 53 return;
52 for (; flushcount>0; flushcount--) { 54 for (; flushcount>0; flushcount--) {
53 deletetext(); 55 deletetext();
54 } 56 }
55} 57}
56 58
57void QtDasherPlugin::output(int Symbol) 59void QtDasherPlugin::output(int Symbol)
58{ 60{
59 std::string label = interface->GetEditText(Symbol); 61 std::string label = interface->GetEditText(Symbol);
60 QString unicodestring = utf8_codec->toUnicode(label.c_str()); 62 QString unicodestring = utf8_codec->toUnicode(label.c_str());
61 for (int i=0; i<int(unicodestring.length()); i++) { 63 for (int i=0; i<int(unicodestring.length()); i++) {
62 emit key( unicodestring[i].unicode(), 0, 0, true, false ); 64 emit key( unicodestring[i].unicode(), 0, 0, true, false );
63 emit key( unicodestring[i].unicode(), 0, 0, false, false ); 65 emit key( unicodestring[i].unicode(), 0, 0, false, false );
64 } 66 }
65} 67}
66 68
67void QtDasherPlugin::deletetext() 69void QtDasherPlugin::deletetext()
68{ 70{
69 emit key( 0, Qt::Key_Backspace, 0, true, false); 71 emit key( 0, Qt::Key_Backspace, 0, true, false);
70 emit key( 0, Qt::Key_Backspace, 0, false, false); 72 emit key( 0, Qt::Key_Backspace, 0, false, false);
diff --git a/noncore/net/opietooth/manager/bluebase.cpp b/noncore/net/opietooth/manager/bluebase.cpp
index ee01b61..90e44cb 100644
--- a/noncore/net/opietooth/manager/bluebase.cpp
+++ b/noncore/net/opietooth/manager/bluebase.cpp
@@ -115,97 +115,97 @@ BlueBase::BlueBase( QWidget* parent, const char* name, WFlags fl )
115 m_iconLoader = new BTIconLoader(); 115 m_iconLoader = new BTIconLoader();
116 readSavedDevices(); 116 readSavedDevices();
117} 117}
118 118
119/** 119/**
120 * Reads all options from the config file 120 * Reads all options from the config file
121 */ 121 */
122void BlueBase::readConfig() 122void BlueBase::readConfig()
123{ 123{
124 124
125 Config cfg( "bluetoothmanager" ); 125 Config cfg( "bluetoothmanager" );
126 cfg.setGroup( "bluezsettings" ); 126 cfg.setGroup( "bluezsettings" );
127 127
128 m_deviceName = cfg.readEntry( "name" , "No name" ); // name the device should identify with 128 m_deviceName = cfg.readEntry( "name" , "No name" ); // name the device should identify with
129 m_defaultPasskey = cfg.readEntryCrypt( "passkey" , "" ); // <- hmm, look up how good the trolls did that, maybe too weak 129 m_defaultPasskey = cfg.readEntryCrypt( "passkey" , "" ); // <- hmm, look up how good the trolls did that, maybe too weak
130 m_useEncryption = cfg.readBoolEntry( "useEncryption" , TRUE ); 130 m_useEncryption = cfg.readBoolEntry( "useEncryption" , TRUE );
131 m_enableAuthentification = cfg.readBoolEntry( "enableAuthentification" , TRUE ); 131 m_enableAuthentification = cfg.readBoolEntry( "enableAuthentification" , TRUE );
132 m_enablePagescan = cfg.readBoolEntry( "enablePagescan" , TRUE ); 132 m_enablePagescan = cfg.readBoolEntry( "enablePagescan" , TRUE );
133 m_enableInquiryscan = cfg.readBoolEntry( "enableInquiryscan" , TRUE ); 133 m_enableInquiryscan = cfg.readBoolEntry( "enableInquiryscan" , TRUE );
134} 134}
135 135
136/** 136/**
137 * Writes all options to the config file 137 * Writes all options to the config file
138 */ 138 */
139void BlueBase::writeConfig() 139void BlueBase::writeConfig()
140{ 140{
141 141
142 Config cfg( "bluetoothmanager" ); 142 Config cfg( "bluetoothmanager" );
143 cfg.setGroup( "bluezsettings" ); 143 cfg.setGroup( "bluezsettings" );
144 144
145 cfg.writeEntry( "name" , m_deviceName ); 145 cfg.writeEntry( "name" , m_deviceName );
146 cfg.writeEntryCrypt( "passkey" , m_defaultPasskey ); 146 cfg.writeEntryCrypt( "passkey" , m_defaultPasskey );
147 cfg.writeEntry( "useEncryption" , m_useEncryption ); 147 cfg.writeEntry( "useEncryption" , m_useEncryption );
148 cfg.writeEntry( "enableAuthentification" , m_enableAuthentification ); 148 cfg.writeEntry( "enableAuthentification" , m_enableAuthentification );
149 cfg.writeEntry( "enablePagescan" , m_enablePagescan ); 149 cfg.writeEntry( "enablePagescan" , m_enablePagescan );
150 cfg.writeEntry( "enableInquiryscan" , m_enableInquiryscan ); 150 cfg.writeEntry( "enableInquiryscan" , m_enableInquiryscan );
151 151
152 writeToHciConfig(); 152 writeToHciConfig();
153} 153}
154 154
155/** 155/**
156 * Modify the hcid.conf file to our needs 156 * Modify the hcid.conf file to our needs
157 */ 157 */
158void BlueBase::writeToHciConfig() 158void BlueBase::writeToHciConfig()
159{ 159{
160 owarn << "writeToHciConfig" << oendl; 160 owarn << "writeToHciConfig" << oendl;
161 HciConfWrapper hciconf ( "/etc/bluetooth/hcid.conf" ); 161 HciConfWrapper hciconf ( "/etc/bluetooth/hcid.conf" );
162 hciconf.load(); 162 hciconf.load();
163 hciconf.setPinHelper( "/opt/QtPalmtop/bin/bluepin" ); 163 hciconf.setPinHelper( QPEApplication::qpeDir() + "bin/bluepin" );
164 hciconf.setName( m_deviceName ); 164 hciconf.setName( m_deviceName );
165 hciconf.setEncrypt( m_useEncryption ); 165 hciconf.setEncrypt( m_useEncryption );
166 hciconf.setAuth( m_enableAuthentification ); 166 hciconf.setAuth( m_enableAuthentification );
167 hciconf.setPscan( m_enablePagescan ); 167 hciconf.setPscan( m_enablePagescan );
168 hciconf.setIscan( m_enableInquiryscan ); 168 hciconf.setIscan( m_enableInquiryscan );
169 hciconf.save(); 169 hciconf.save();
170} 170}
171 171
172 172
173/** 173/**
174 * Read the list of allready known devices 174 * Read the list of allready known devices
175 */ 175 */
176void BlueBase::readSavedDevices() 176void BlueBase::readSavedDevices()
177{ 177{
178 178
179 QValueList<RemoteDevice> loadedDevices; 179 QValueList<RemoteDevice> loadedDevices;
180 DeviceHandler handler; 180 DeviceHandler handler;
181 loadedDevices = handler.load(); 181 loadedDevices = handler.load();
182 182
183 addSearchedDevices( loadedDevices ); 183 addSearchedDevices( loadedDevices );
184} 184}
185 185
186 186
187/** 187/**
188 * Write the list of allready known devices 188 * Write the list of allready known devices
189 */ 189 */
190void BlueBase::writeSavedDevices() 190void BlueBase::writeSavedDevices()
191{ 191{
192 QListViewItemIterator it( ListView2 ); 192 QListViewItemIterator it( ListView2 );
193 BTListItem* item; 193 BTListItem* item;
194 BTDeviceItem* device; 194 BTDeviceItem* device;
195 RemoteDevice::ValueList list; 195 RemoteDevice::ValueList list;
196 for ( ; it.current(); ++it ) 196 for ( ; it.current(); ++it )
197 { 197 {
198 item = (BTListItem*)it.current(); 198 item = (BTListItem*)it.current();
199 if(item->typeId() != BTListItem::Device ) 199 if(item->typeId() != BTListItem::Device )
200 continue; 200 continue;
201 device = (BTDeviceItem*)item; 201 device = (BTDeviceItem*)item;
202 202
203 list.append( device->remoteDevice() ); 203 list.append( device->remoteDevice() );
204 } 204 }
205 /* 205 /*
206 * if not empty save the List through DeviceHandler 206 * if not empty save the List through DeviceHandler
207 */ 207 */
208 if ( list.isEmpty() ) 208 if ( list.isEmpty() )
209 return; 209 return;
210 DeviceHandler handler; 210 DeviceHandler handler;
211 handler.save( list ); 211 handler.save( list );
diff --git a/noncore/settings/usermanager/userdialog.cpp b/noncore/settings/usermanager/userdialog.cpp
index 3616507..9dfb2af 100644
--- a/noncore/settings/usermanager/userdialog.cpp
+++ b/noncore/settings/usermanager/userdialog.cpp
@@ -220,101 +220,101 @@ bool UserDialog::addUser(int uid, int gid)
220 adduserDialog->groupID=gid; // Set next available GID as default gid. 220 adduserDialog->groupID=gid; // Set next available GID as default gid.
221 // Insert default group into groupComboBox 221 // Insert default group into groupComboBox
222 adduserDialog->groupComboBox->insertItem("<create new group>",0); 222 adduserDialog->groupComboBox->insertItem("<create new group>",0);
223 adduserDialog->uidLineEdit->setText(QString::number(uid)); 223 adduserDialog->uidLineEdit->setText(QString::number(uid));
224 // If we're running on OZ, add new users to some default groups. 224 // If we're running on OZ, add new users to some default groups.
225 if(oz) 225 if(oz)
226 { 226 {
227 QListViewItemIterator iter( adduserDialog->groupsListView ); 227 QListViewItemIterator iter( adduserDialog->groupsListView );
228 for ( ; iter.current(); ++iter ) 228 for ( ; iter.current(); ++iter )
229 { 229 {
230 temp=(QCheckListItem*)iter.current(); 230 temp=(QCheckListItem*)iter.current();
231 if (temp->text()=="video") temp->setOn(true); 231 if (temp->text()=="video") temp->setOn(true);
232 if (temp->text()=="audio") temp->setOn(true); 232 if (temp->text()=="audio") temp->setOn(true);
233 if (temp->text()=="time") temp->setOn(true); 233 if (temp->text()=="time") temp->setOn(true);
234 if (temp->text()=="power") temp->setOn(true); 234 if (temp->text()=="power") temp->setOn(true);
235 if (temp->text()=="input") temp->setOn(true); 235 if (temp->text()=="input") temp->setOn(true);
236 if (temp->text()=="sharp") temp->setOn(true); 236 if (temp->text()=="sharp") temp->setOn(true);
237 if (temp->text()=="tty") temp->setOn(true); 237 if (temp->text()=="tty") temp->setOn(true);
238 } 238 }
239 } 239 }
240 // Show the dialog! 240 // Show the dialog!
241 if(!(adduserDialog->exec())) return false; 241 if(!(adduserDialog->exec())) return false;
242 if((adduserDialog->groupComboBox->currentItem()!=0)) 242 if((adduserDialog->groupComboBox->currentItem()!=0))
243 { 243 {
244 accounts->findGroup(adduserDialog->groupComboBox->currentText()); 244 accounts->findGroup(adduserDialog->groupComboBox->currentText());
245 adduserDialog->groupID=accounts->gr_gid; 245 adduserDialog->groupID=accounts->gr_gid;
246 owarn << QString::number(accounts->gr_gid) << oendl; 246 owarn << QString::number(accounts->gr_gid) << oendl;
247 } 247 }
248 if(!(accounts->addUser(adduserDialog->loginLineEdit->text(), adduserDialog->passwordLineEdit->text(), 248 if(!(accounts->addUser(adduserDialog->loginLineEdit->text(), adduserDialog->passwordLineEdit->text(),
249 adduserDialog->uidLineEdit->text().toInt(), adduserDialog->groupID, adduserDialog->gecosLineEdit->text(), 249 adduserDialog->uidLineEdit->text().toInt(), adduserDialog->groupID, adduserDialog->gecosLineEdit->text(),
250 QString("/home/")+adduserDialog->loginLineEdit->text() , adduserDialog->shellComboBox->currentText()))) 250 QString("/home/")+adduserDialog->loginLineEdit->text() , adduserDialog->shellComboBox->currentText())))
251 { 251 {
252 QMessageBox::information(0,"Ooops!","Something went wrong!\nUnable to add user."); 252 QMessageBox::information(0,"Ooops!","Something went wrong!\nUnable to add user.");
253 return false; 253 return false;
254 } 254 }
255 255
256 // Add User to additional groups. 256 // Add User to additional groups.
257 QListViewItemIterator it( adduserDialog->groupsListView ); 257 QListViewItemIterator it( adduserDialog->groupsListView );
258 for ( ; it.current(); ++it ) 258 for ( ; it.current(); ++it )
259 { 259 {
260 temp=(QCheckListItem*)it.current(); 260 temp=(QCheckListItem*)it.current();
261 if (temp->isOn() ) 261 if (temp->isOn() )
262 accounts->addGroupMember(it.current()->text(0),adduserDialog->loginLineEdit->text()); 262 accounts->addGroupMember(it.current()->text(0),adduserDialog->loginLineEdit->text());
263 } 263 }
264 // Copy image to pics/users/ 264 // Copy image to pics/users/
265 if(!(adduserDialog->userImage.isNull())) 265 if(!(adduserDialog->userImage.isNull()))
266 { 266 {
267 QDir d; 267 QDir d;
268 if(!(d.exists("/opt/QtPalmtop/pics/users"))) 268 if(!(d.exists(QPEApplication::qpeDir() + "pics/users")))
269 { 269 {
270 d.mkdir("/opt/QtPalmtop/pics/users"); 270 d.mkdir(QPEApplication::qpeDir() + "pics/users");
271 } 271 }
272 QString filename="/opt/QtPalmtop/pics/users/"+accounts->pw_name+".png"; 272 QString filename= QPEApplication::qpeDir()+"pics/users/"+accounts->pw_name+".png";
273 // adduserDialog->userImage=adduserDialog->userImage.smoothScale(48,48); 273 // adduserDialog->userImage=adduserDialog->userImage.smoothScale(48,48);
274 adduserDialog->userImage.save(filename,"PNG"); 274 adduserDialog->userImage.save(filename,"PNG");
275 } 275 }
276 276
277 // Should we copy the skeleton homedirectory /etc/skel to the user's homedirectory? 277 // Should we copy the skeleton homedirectory /etc/skel to the user's homedirectory?
278 accounts->findUser(adduserDialog->loginLineEdit->text()); 278 accounts->findUser(adduserDialog->loginLineEdit->text());
279 if(adduserDialog->skelCheckBox->isChecked()) 279 if(adduserDialog->skelCheckBox->isChecked())
280 { 280 {
281 QString command_cp; 281 QString command_cp;
282 QString command_chown; 282 QString command_chown;
283 command_cp.sprintf("cp -a /etc/skel/* %s/",accounts->pw_dir.latin1()); 283 command_cp.sprintf("cp -a /etc/skel/* %s/",accounts->pw_dir.latin1());
284 system(command_cp); 284 system(command_cp);
285 285
286 command_cp.sprintf("cp -a /etc/skel/.[!.]* %s/",accounts->pw_dir.latin1()); // Bug in busybox, ".*" includes parent directory, does this work as a workaround? 286 command_cp.sprintf("cp -a /etc/skel/.[!.]* %s/",accounts->pw_dir.latin1()); // Bug in busybox, ".*" includes parent directory, does this work as a workaround?
287 system(command_cp); 287 system(command_cp);
288 288
289 command_chown.sprintf("chown -R %d:%d %s",accounts->pw_uid,accounts->pw_gid,accounts->pw_dir.latin1()); 289 command_chown.sprintf("chown -R %d:%d %s",accounts->pw_uid,accounts->pw_gid,accounts->pw_dir.latin1());
290 system(command_chown); 290 system(command_chown);
291 } 291 }
292 292
293 return true; 293 return true;
294} 294}
295 295
296/** 296/**
297 * Deletes the user account. 297 * Deletes the user account.
298 * 298 *
299 * @param username User to be deleted. 299 * @param username User to be deleted.
300 * 300 *
301 * @return <code>true</code> if the user was successfully deleted, otherwise <code>false</code>. 301 * @return <code>true</code> if the user was successfully deleted, otherwise <code>false</code>.
302 * 302 *
303 */ 303 */
304bool UserDialog::delUser(const char *username) 304bool UserDialog::delUser(const char *username)
305{ 305{
306 if((accounts->findUser(username))) 306 if((accounts->findUser(username)))
307 { // Does that user exist? 307 { // Does that user exist?
308 if(!(accounts->delUser(username))) 308 if(!(accounts->delUser(username)))
309 { // Delete the user. 309 { // Delete the user.
310 QMessageBox::information(0,"Ooops!","Something went wrong\nUnable to delete user: "+QString(username)+"."); 310 QMessageBox::information(0,"Ooops!","Something went wrong\nUnable to delete user: "+QString(username)+".");
311 } 311 }
312 } 312 }
313 else 313 else
314 { 314 {
315 QMessageBox::information(0,"Invalid Username","That username ("+QString(username)+")does not exist."); 315 QMessageBox::information(0,"Invalid Username","That username ("+QString(username)+")does not exist.");
316 return false; 316 return false;
317 } 317 }
318 return true; 318 return true;
319} 319}
320 320
@@ -391,98 +391,98 @@ bool UserDialog::editUser(const char *username)
391 QListViewItemIterator lvit( edituserDialog->groupsListView ); // Compare to all groups. 391 QListViewItemIterator lvit( edituserDialog->groupsListView ); // Compare to all groups.
392 for ( ; lvit.current(); ++lvit ) 392 for ( ; lvit.current(); ++lvit )
393 { 393 {
394 if(lvit.current()->text(0)==(*it).left((*it).find(":"))) 394 if(lvit.current()->text(0)==(*it).left((*it).find(":")))
395 { 395 {
396 temp=(QCheckListItem*)lvit.current(); 396 temp=(QCheckListItem*)lvit.current();
397 temp->setOn(true); // If we find a line with that groupname, select it.; 397 temp->setOn(true); // If we find a line with that groupname, select it.;
398 } 398 }
399 } 399 }
400 } 400 }
401 401
402 if(!(edituserDialog->exec())) return false; // SHOW THE DIALOG! 402 if(!(edituserDialog->exec())) return false; // SHOW THE DIALOG!
403 403
404 accounts->findUser(username); // Fill user variables in 'acccounts' object. 404 accounts->findUser(username); // Fill user variables in 'acccounts' object.
405 accounts->pw_name=edituserDialog->loginLineEdit->text(); 405 accounts->pw_name=edituserDialog->loginLineEdit->text();
406 // Has the password been changed ? Make a new "crypt":ed password. 406 // Has the password been changed ? Make a new "crypt":ed password.
407 if(edituserDialog->passwordLineEdit->text()!="........") accounts->pw_passwd=crypt(edituserDialog->passwordLineEdit->text(), accounts->crypt_make_salt()); 407 if(edituserDialog->passwordLineEdit->text()!="........") accounts->pw_passwd=crypt(edituserDialog->passwordLineEdit->text(), accounts->crypt_make_salt());
408 408
409 // Set all variables in accounts object, that will be used when calling 'updateUser()' 409 // Set all variables in accounts object, that will be used when calling 'updateUser()'
410 accounts->pw_uid=edituserDialog->uidLineEdit->text().toInt(); 410 accounts->pw_uid=edituserDialog->uidLineEdit->text().toInt();
411 if(accounts->findGroup(edituserDialog->groupComboBox->currentText())) 411 if(accounts->findGroup(edituserDialog->groupComboBox->currentText()))
412 { // Fill all group variables in 'accounts' object. 412 { // Fill all group variables in 'accounts' object.
413 accounts->pw_gid=accounts->gr_gid; // Only do this if the group is a valid group (ie. "<Undefined group>"), otherwise keep the old group. 413 accounts->pw_gid=accounts->gr_gid; // Only do this if the group is a valid group (ie. "<Undefined group>"), otherwise keep the old group.
414 } 414 }
415 accounts->pw_gecos=edituserDialog->gecosLineEdit->text(); 415 accounts->pw_gecos=edituserDialog->gecosLineEdit->text();
416 accounts->pw_shell=edituserDialog->shellComboBox->currentText(); 416 accounts->pw_shell=edituserDialog->shellComboBox->currentText();
417 // Update userinfo, using the information stored in the user variables stored in the accounts object. 417 // Update userinfo, using the information stored in the user variables stored in the accounts object.
418 accounts->updateUser(username); 418 accounts->updateUser(username);
419 419
420 // Remove user from all groups he/she is a member of. (could be done in a better way I guess, this was simple though.) 420 // Remove user from all groups he/she is a member of. (could be done in a better way I guess, this was simple though.)
421 for(QStringList::Iterator it=tempList.begin(); it!=tempList.end(); ++it) 421 for(QStringList::Iterator it=tempList.begin(); it!=tempList.end(); ++it)
422 { 422 {
423 accounts->delGroupMember((*it).left((*it).find(":")),username); 423 accounts->delGroupMember((*it).left((*it).find(":")),username);
424 } 424 }
425 425
426 // Add User to additional groups that he/she is a member of. 426 // Add User to additional groups that he/she is a member of.
427 QListViewItemIterator it( edituserDialog->groupsListView ); 427 QListViewItemIterator it( edituserDialog->groupsListView );
428 for ( ; it.current(); ++it ) 428 for ( ; it.current(); ++it )
429 { 429 {
430 temp=(QCheckListItem*)it.current(); 430 temp=(QCheckListItem*)it.current();
431 if ( temp->isOn() ) 431 if ( temp->isOn() )
432 accounts->addGroupMember(it.current()->text(0),edituserDialog->loginLineEdit->text()); 432 accounts->addGroupMember(it.current()->text(0),edituserDialog->loginLineEdit->text());
433 } 433 }
434 434
435 // Copy image to pics/users/ 435 // Copy image to pics/users/
436 if(!(edituserDialog->userImage.isNull())) 436 if(!(edituserDialog->userImage.isNull()))
437 { 437 {
438 QDir d; 438 QDir d;
439 if(!(d.exists("/opt/QtPalmtop/pics/users"))) 439 if(!(d.exists(QPEApplication::qpeDir()+"pics/users")))
440 { 440 {
441 d.mkdir("/opt/QtPalmtop/pics/users"); 441 d.mkdir(QPEApplication::qpeDir()+"pics/users");
442 } 442 }
443 QString filename="/opt/QtPalmtop/pics/users/"+accounts->pw_name+".png"; 443 QString filename=QPEApplication::qpeDir()+"pics/users/"+accounts->pw_name+".png";
444 // edituserDialog->userImage=edituserDialog->userImage.smoothScale(48,48); 444 // edituserDialog->userImage=edituserDialog->userImage.smoothScale(48,48);
445 edituserDialog->userImage.save(filename,"PNG"); 445 edituserDialog->userImage.save(filename,"PNG");
446 } 446 }
447 return true; 447 return true;
448} 448}
449 449
450/** 450/**
451 * "OK" has been clicked. Verify some information before closing the dialog. 451 * "OK" has been clicked. Verify some information before closing the dialog.
452 * 452 *
453 */ 453 */
454void UserDialog::accept() 454void UserDialog::accept()
455{ 455{
456 // Add checking... valid username? username taken? 456 // Add checking... valid username? username taken?
457 if(loginLineEdit->text().isEmpty()) 457 if(loginLineEdit->text().isEmpty())
458 { 458 {
459 QMessageBox::information(0,"Empty Login","Please enter a login."); 459 QMessageBox::information(0,"Empty Login","Please enter a login.");
460 return; 460 return;
461 } 461 }
462 QDialog::accept(); 462 QDialog::accept();
463} 463}
464 464
465/** 465/**
466 * This slot is called when the usericon is clicked, this loads (should) the iconselector. 466 * This slot is called when the usericon is clicked, this loads (should) the iconselector.
467 * 467 *
468 */ 468 */
469void UserDialog::clickedPicture() 469void UserDialog::clickedPicture()
470{ 470{
471 QString filename=OFileDialog::getOpenFileName(OFileSelector::EXTENDED, QString::null); 471 QString filename=OFileDialog::getOpenFileName(OFileSelector::EXTENDED, QString::null);
472 if(!(filename.isEmpty())) 472 if(!(filename.isEmpty()))
473 { 473 {
474 userImage.reset(); 474 userImage.reset();
475 if(!(userImage.load(filename))) 475 if(!(userImage.load(filename)))
476 { 476 {
477 QMessageBox::information(0,"Sorry!","That icon could not be loaded.\nLoading failed on: "+filename); 477 QMessageBox::information(0,"Sorry!","That icon could not be loaded.\nLoading failed on: "+filename);
478 } 478 }
479 else 479 else
480 { 480 {
481 // userImage=userImage.smoothScale(48,48); 481 // userImage=userImage.smoothScale(48,48);
482 QPixmap *picture; 482 QPixmap *picture;
483 picture=(QPixmap *)picturePushButton->pixmap(); 483 picture=(QPixmap *)picturePushButton->pixmap();
484 picture->convertFromImage(userImage,0); 484 picture->convertFromImage(userImage,0);
485 picturePushButton->update(); 485 picturePushButton->update();
486 } 486 }
487 } 487 }
488} 488}