author | andyq <andyq> | 2003-02-10 18:20:16 (UTC) |
---|---|---|
committer | andyq <andyq> | 2003-02-10 18:20:16 (UTC) |
commit | 2bc5aaa5c480c2b8924593f1010c7efd3bd50693 (patch) (unidiff) | |
tree | 1009b6d88a7773a59d4742a1376cafe1a4729b02 | |
parent | ee2434f70b0dbc88072748a52b353ab226669a47 (diff) | |
download | opie-2bc5aaa5c480c2b8924593f1010c7efd3bd50693.zip opie-2bc5aaa5c480c2b8924593f1010c7efd3bd50693.tar.gz opie-2bc5aaa5c480c2b8924593f1010c7efd3bd50693.tar.bz2 |
Fixed bug where feed names could have spaces in them
-rw-r--r-- | noncore/settings/aqpkg/settingsimpl.cpp | 25 |
1 files changed, 18 insertions, 7 deletions
diff --git a/noncore/settings/aqpkg/settingsimpl.cpp b/noncore/settings/aqpkg/settingsimpl.cpp index 7541f0b..9f611da 100644 --- a/noncore/settings/aqpkg/settingsimpl.cpp +++ b/noncore/settings/aqpkg/settingsimpl.cpp | |||
@@ -293,70 +293,81 @@ void SettingsImpl :: editServer( int sel ) | |||
293 | } | 293 | } |
294 | 294 | ||
295 | void SettingsImpl :: newServer() | 295 | void SettingsImpl :: newServer() |
296 | { | 296 | { |
297 | newserver = true; | 297 | newserver = true; |
298 | servername->setText( "" ); | 298 | servername->setText( "" ); |
299 | serverurl->setText( "" ); | 299 | serverurl->setText( "" ); |
300 | servername->setFocus(); | 300 | servername->setFocus(); |
301 | active->setChecked( true ); | 301 | active->setChecked( true ); |
302 | } | 302 | } |
303 | 303 | ||
304 | void SettingsImpl :: removeServer() | 304 | void SettingsImpl :: removeServer() |
305 | { | 305 | { |
306 | changed = true; | 306 | changed = true; |
307 | Server *s = dataMgr->getServer( servers->currentText() ); | 307 | Server *s = dataMgr->getServer( servers->currentText() ); |
308 | dataMgr->getServerList().removeRef( s ); | 308 | dataMgr->getServerList().removeRef( s ); |
309 | servers->removeItem( currentSelectedServer ); | 309 | servers->removeItem( currentSelectedServer ); |
310 | } | 310 | } |
311 | 311 | ||
312 | void SettingsImpl :: changeServerDetails() | 312 | void SettingsImpl :: changeServerDetails() |
313 | { | 313 | { |
314 | changed = true; | 314 | changed = true; |
315 | 315 | ||
316 | QString newName = servername->text(); | 316 | QString newName = servername->text(); |
317 | |||
318 | // Convert any spaces to underscores | ||
319 | char *tmpStr = new char[newName.length() + 1]; | ||
320 | for ( unsigned int i = 0 ; i < newName.length() ; ++i ) | ||
321 | { | ||
322 | if ( newName[i] == ' ' ) | ||
323 | tmpStr[i] = '_'; | ||
324 | else | ||
325 | tmpStr[i] = newName[i].latin1(); | ||
326 | } | ||
327 | tmpStr[newName.length()] = '\0'; | ||
328 | |||
329 | newName = tmpStr; | ||
330 | delete tmpStr; | ||
331 | |||
317 | if ( !newserver ) | 332 | if ( !newserver ) |
318 | { | 333 | { |
319 | Server *s = dataMgr->getServer( servers->currentText() ); | 334 | Server *s = dataMgr->getServer( servers->currentText() ); |
320 | 335 | ||
321 | // Update url | 336 | // Update url |
322 | s->setServerUrl( serverurl->text() ); | 337 | s->setServerUrl( serverurl->text() ); |
323 | s->setActive( active->isChecked() ); | 338 | s->setActive( active->isChecked() ); |
324 | 339 | ||
325 | 340 | ||
326 | // Check if server name has changed, if it has then we need to replace the key in the map | 341 | // Check if server name has changed, if it has then we need to replace the key in the map |
327 | if ( serverName != newName ) | 342 | if ( serverName != newName ) |
328 | { | 343 | { |
329 | // Update server name | 344 | // Update server name |
330 | s->setServerName( newName ); | 345 | s->setServerName( newName ); |
331 | |||
332 | // See if this server is the active server | ||
333 | // if ( dataMgr->getActiveServer() == serverName ) | ||
334 | // dataMgr->setActiveServer( newName ); | ||
335 | |||
336 | // Update list box | ||
337 | servers->changeItem( newName, currentSelectedServer ); | ||
338 | } | 346 | } |
347 | |||
348 | // Update list box | ||
349 | servers->changeItem( newName, currentSelectedServer ); | ||
339 | } | 350 | } |
340 | else | 351 | else |
341 | { | 352 | { |
342 | Server s( newName, serverurl->text() ); | 353 | Server s( newName, serverurl->text() ); |
343 | dataMgr->getServerList().append( new Server( newName, serverurl->text() ) ); | 354 | dataMgr->getServerList().append( new Server( newName, serverurl->text() ) ); |
344 | dataMgr->getServerList().last()->setActive( active->isChecked() ); | 355 | dataMgr->getServerList().last()->setActive( active->isChecked() ); |
345 | servers->insertItem( newName ); | 356 | servers->insertItem( newName ); |
346 | servers->setCurrentItem( servers->count() ); | 357 | servers->setCurrentItem( servers->count() ); |
347 | newserver = false; | 358 | newserver = false; |
348 | } | 359 | } |
349 | } | 360 | } |
350 | 361 | ||
351 | //------------------ Destinations tab ---------------------- | 362 | //------------------ Destinations tab ---------------------- |
352 | 363 | ||
353 | void SettingsImpl :: editDestination( int sel ) | 364 | void SettingsImpl :: editDestination( int sel ) |
354 | { | 365 | { |
355 | currentSelectedDestination = sel; | 366 | currentSelectedDestination = sel; |
356 | Destination *d = dataMgr->getDestination( destinations->currentText() ); | 367 | Destination *d = dataMgr->getDestination( destinations->currentText() ); |
357 | destinationName = d->getDestinationName(); | 368 | destinationName = d->getDestinationName(); |
358 | destinationname->setText( d->getDestinationName() ); | 369 | destinationname->setText( d->getDestinationName() ); |
359 | destinationurl->setText( d->getDestinationPath() ); | 370 | destinationurl->setText( d->getDestinationPath() ); |
360 | linkToRoot->setChecked( d->linkToRoot() ); | 371 | linkToRoot->setChecked( d->linkToRoot() ); |
361 | } | 372 | } |
362 | 373 | ||