/** * Update the settings from the dialog. * Example use: User clicks Ok or Apply button in a configure dialog. * REIMPLEMENTED */ void AmarokConfigDialog::updateSettings() { OSDPreviewWidget *osd = (OSDPreviewWidget*)child( "osdpreview" ); AmarokConfig::setOsdAlignment( osd->alignment() ); AmarokConfig::setOsdYOffset( osd->y() ); amaroK::OSD::instance()->applySettings(); static_cast<CollectionSetup*>(child("CollectionSetup"))->writeConfig(); if ( m_engineConfig ) m_engineConfig->save(); // When sound system has changed, update engine config page if ( m_soundSystem->currentText() != m_pluginAmarokName[AmarokConfig::soundSystem()] ) { AmarokConfig::setSoundSystem( m_pluginName[m_soundSystem->currentText()] ); emit settingsChanged(); soundSystemChanged(); } if ( m_opt2->styleComboBox->currentText() != AmarokConfig::contextBrowserStyleSheet() ) { //can't use kconfigxt for the style comboxbox's since we need the string, not the index AmarokConfig::setContextBrowserStyleSheet( m_opt2->styleComboBox->currentText() ); ContextBrowser::instance()->setStyleSheet(); } const QString dbType = databaseType(); if ( dbType != AmarokConfig::databaseEngine() ) { AmarokConfig::setDatabaseEngine( dbType ); emit settingsChanged(); } }
/** * @return true if any configuration items we are managing changed from amaroK's stored settings * We manage the engine combo box and some of the OSD settings * REIMPLEMENTED */ bool AmarokConfigDialog::hasChanged() { OSDPreviewWidget *osd = (OSDPreviewWidget*) child( "osdpreview" ); return m_soundSystem->currentText() != m_pluginAmarokName[AmarokConfig::soundSystem()] || osd->alignment() != AmarokConfig::osdAlignment() || osd->alignment() != OSDWidget::Center && osd->y() != AmarokConfig::osdYOffset() || m_opt2->styleComboBox->currentText() != AmarokConfig::contextBrowserStyleSheet() || databaseType() != AmarokConfig::databaseEngine() || m_engineConfig && m_engineConfig->hasChanged(); }
/** * @return true if any configuration items we are managing changed from amaroK's stored settings * We manage the engine combo box and some of the OSD settings * REIMPLEMENTED */ bool AmarokConfigDialog::hasChanged() { OSDPreviewWidget *osd = static_cast<OSDPreviewWidget*>( child( "osdpreview" ) ); return m_soundSystem->currentText() != m_pluginAmarokName[AmarokConfig::soundSystem()] || osd->alignment() != AmarokConfig::osdAlignment() || osd->alignment() != OSDWidget::Center && osd->y() != AmarokConfig::osdYOffset() || m_opt2->styleComboBox->currentText() != AmarokConfig::contextBrowserStyleSheet() || amaroK::databaseTypeCode( m_opt7->dbSetupFrame->databaseEngine->currentText() ) != AmarokConfig::databaseEngine().toInt() || m_engineConfig && m_engineConfig->hasChanged() || m_deviceManager && m_deviceManager->hasChanged() || externalBrowser() != AmarokConfig::externalBrowser(); }
/** * Update the settings from the dialog. * Example use: User clicks Ok or Apply button in a configure dialog. * REIMPLEMENTED */ void AmarokConfigDialog::updateSettings() { OSDPreviewWidget *osd = static_cast<OSDPreviewWidget*>( child( "osdpreview" ) ); AmarokConfig::setOsdAlignment( osd->alignment() ); AmarokConfig::setOsdYOffset( osd->y() ); amaroK::OSD::instance()->applySettings(); static_cast<CollectionSetup*>(child("CollectionSetup"))->writeConfig(); if ( m_engineConfig ) m_engineConfig->save(); AmarokConfig::setExternalBrowser( externalBrowser() ); // When sound system has changed, update engine config page if ( m_soundSystem->currentText() != m_pluginAmarokName[AmarokConfig::soundSystem()] ) { AmarokConfig::setSoundSystem( m_pluginName[m_soundSystem->currentText()] ); emit settingsChanged(); soundSystemChanged(); } if ( m_opt2->styleComboBox->currentText() != AmarokConfig::contextBrowserStyleSheet() ) { //can't use kconfigxt for the style comboxbox's since we need the string, not the index AmarokConfig::setContextBrowserStyleSheet( m_opt2->styleComboBox->currentText() ); ContextBrowser::instance()->reloadStyleSheet(); } int dbType = amaroK::databaseTypeCode( m_opt7->dbSetupFrame->databaseEngine->currentText() ); if ( dbType != AmarokConfig::databaseEngine().toInt() ) { AmarokConfig::setDatabaseEngine( QString::number( dbType ) ); emit settingsChanged(); } m_deviceManager->finished(); if( MediaBrowser::isAvailable() ) { PlaylistWindow::self()->addBrowser( "MediaBrowser", MediaBrowser::instance(), i18n( "Media Device" ), amaroK::icon( "device" ) ); } amaroK::setUseScores( m_opt1->kcfg_UseScores->isChecked() ); amaroK::setUseRatings( m_opt1->kcfg_UseRatings->isChecked() ); }