summaryrefslogtreecommitdiff
path: root/core/pim/today/todayconfig.cpp
Side-by-side diff
Diffstat (limited to 'core/pim/today/todayconfig.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--core/pim/today/todayconfig.cpp32
1 files changed, 16 insertions, 16 deletions
diff --git a/core/pim/today/todayconfig.cpp b/core/pim/today/todayconfig.cpp
index c9823d4..dacce8b 100644
--- a/core/pim/today/todayconfig.cpp
+++ b/core/pim/today/todayconfig.cpp
@@ -75,76 +75,77 @@ TodayConfig::TodayConfig( QWidget* parent, const char* name, bool modal )
m_appletListView = new QListView( hbox1 );
m_appletListView->addColumn( "PluginList" );
m_appletListView->header()->hide();
m_appletListView->setSorting( -1 );
QWhatsThis::add
( m_appletListView, tr( "Check a checkbox to activate/deactivate a plugin or use the arrow buttons on the right to change the appearance order" ) );
QVBox *vbox1 = new QVBox( hbox1 );
new ToolButton( vbox1, tr( "Move Up" ), "up", this , SLOT( moveSelectedUp() ) );
new ToolButton( vbox1, tr( "Move Down" ), "down", this , SLOT( moveSelectedDown() ) );
tab2Layout->addWidget( hbox1 );
TabWidget3->addTab( tab_2, "pass", tr( "active/order" ) );
// Misc tab
tab_3 = new QWidget( TabWidget3, "tab_3" );
QVBoxLayout *tab3Layout = new QVBoxLayout( tab_3 );
m_guiMisc = new TodayConfigMiscBase( tab_3 );
tab3Layout->addWidget( m_guiMisc );
TabWidget3->addTab( tab_3, "SettingsIcon", tr( "Misc" ) );
connect ( m_appletListView , SIGNAL( clicked(QListViewItem*) ), this, SLOT( appletChanged() ) );
previousItem = 0l;
readConfig();
- QPEApplication::showDialog( this );
}
void TodayConfig::setUpPlugins( OPluginManager * plugManager, OPluginLoader *plugLoader ) {
-
+ m_configMap.clear();
m_pluginManager = plugManager;
m_pluginLoader = plugLoader;
OPluginItem::List inLst = m_pluginLoader->allAvailable( true );
OPluginItem::List lst;
for ( OPluginItem::List::Iterator it = inLst.begin(); it != inLst.end(); ++it ) {
lst.prepend((*it));
TodayPluginInterface* iface = m_pluginLoader->load<TodayPluginInterface>( *it, IID_TodayPluginInterface );
+ TodayConfigWidget *widget = iface->guiPart()->configWidget( TabWidget3 );
- if ( iface->guiPart()->configWidget(this) != 0l ) {
- TodayConfigWidget* widget = iface->guiPart()->configWidget( TabWidget3 );
- TabWidget3->addTab( widget, iface->guiPart()->pixmapNameConfig()
- , iface->guiPart()->appName() );
- }
+ if (!widget )
+ continue;
+
+ m_configMap.insert( iface, widget );
+ TabWidget3->addTab( widget, iface->guiPart()->pixmapNameConfig()
+ , iface->guiPart()->appName() );
}
- for ( OPluginItem::List::Iterator it = lst.begin(); it != lst.end(); ++it ) {
+ for ( OPluginItem::List::Iterator it = lst.begin(); it != lst.end(); ++it )
pluginManagement( (*it) );
- }
+
TabWidget3->setCurrentTab( tab_2 );
}
/**
* Autostart, uses the new (opie only) autostart method in the launcher code.
* If registered against that today ist started on each resume.
*/
void TodayConfig::setAutoStart() {
OConfig cfg( "today" );
cfg.setGroup( "Autostart" );
if ( m_autoStart ) {
QCopEnvelope e( "QPE/System", "autoStart(QString,QString,QString)" );
e << QString( "add" );
e << QString( "today" );
e << QString( "%1" ).arg( m_autoStartTimer );
} else {
QCopEnvelope e( "QPE/System", "autoStart(QString,QString)" );
e << QString( "remove" );
e << QString( "today" );
}
}
/**
@@ -153,83 +154,82 @@ void TodayConfig::setAutoStart() {
void TodayConfig::readConfig() {
OConfig cfg( "today" );
cfg.setGroup( "Autostart" );
m_autoStart = cfg.readNumEntry( "autostart", 1 );
m_guiMisc->CheckBoxAuto->setChecked( m_autoStart );
m_autoStartTimer = cfg.readNumEntry( "autostartdelay", 0 );
m_guiMisc->SpinBoxTime->setValue( m_autoStartTimer );
cfg.setGroup( "General" );
m_iconSize = cfg.readNumEntry( "IconSize", 18 );
m_guiMisc->SpinBoxIconSize->setValue( m_iconSize );
m_guiMisc->SpinRefresh->setValue( cfg.readNumEntry( "checkinterval", 15000 ) / 1000 );
m_guiMisc->CheckBoxHide->setChecked( cfg.readNumEntry( "HideBanner", 0 ) );
}
/**
* Write the config part
*/
void TodayConfig::writeConfig() {
OConfig cfg( "today" );
int position = m_appletListView->childCount();
QListViewItemIterator list_it( m_appletListView );
- //
+ OPluginItem::List lst = m_pluginLoader->allAvailable( true );
+
// this makes sure the names get saved in the order selected
for ( ; list_it.current(); ++list_it ) {
- OPluginItem::List lst = m_pluginLoader->allAvailable( true );
for ( OPluginItem::List::Iterator it = lst.begin(); it != lst.end(); ++it ) {
if ( QString::compare( (*it).name() , list_it.current()->text(0) ) == 0 ) {
(*it).setPosition(position--);
m_pluginManager->setEnabled( (*it),((QCheckListItem*)list_it.current())->isOn() );
}
}
}
m_pluginManager->save();
cfg.setGroup( "Autostart" );
m_autoStart = m_guiMisc->CheckBoxAuto->isChecked();
cfg.writeEntry( "autostart", m_autoStart );
m_autoStartTimer = m_guiMisc->SpinBoxTime->value();
cfg.writeEntry( "autostartdelay", m_autoStartTimer );
m_iconSize = m_guiMisc->SpinBoxIconSize->value();
cfg.setGroup( "General" );
cfg.writeEntry( "IconSize", m_iconSize );
cfg.writeEntry( "HideBanner", m_guiMisc->CheckBoxHide->isChecked() );
cfg.writeEntry( "checkinterval", m_guiMisc->SpinRefresh->value()*1000 );
// set autostart settings
setAutoStart();
- OPluginItem::List lst = m_pluginManager->managedPlugins();
- for ( OPluginItem::List::Iterator it = lst.begin(); it != lst.end(); ++it ) {
+ OPluginItem::List managedLst = m_pluginManager->managedPlugins();
+ for ( OPluginItem::List::Iterator it = managedLst.begin(); it != managedLst.end(); ++it ) {
TodayPluginInterface* iface = m_pluginLoader->load<TodayPluginInterface>( *it, IID_TodayPluginInterface );
- if ( iface->guiPart()->configWidget(this) != 0l ) {
- iface->guiPart()->configWidget(this)->writeConfig();
- }
+ if ( m_configMap.contains( iface ) )
+ m_configMap[iface]->writeConfig();
}
}
void TodayConfig::moveSelectedUp() {
QListViewItem *item = m_appletListView->selectedItem();
if ( item && item->itemAbove() ) {
item->itemAbove()->moveItem( item );
}
}
void TodayConfig::moveSelectedDown() {
QListViewItem *item = m_appletListView->selectedItem();
if ( item && item->itemBelow() ) {
item->moveItem( item->itemBelow() );
}
}
/**
* Set up the icons in the order/active tab
*/
void TodayConfig::pluginManagement( OPluginItem plugItem ) {