summaryrefslogtreecommitdiff
path: root/core/settings/launcher/taskbarsettings.cpp
Side-by-side diff
Diffstat (limited to 'core/settings/launcher/taskbarsettings.cpp') (more/less context) (show whitespace changes)
-rw-r--r--core/settings/launcher/taskbarsettings.cpp18
1 files changed, 13 insertions, 5 deletions
diff --git a/core/settings/launcher/taskbarsettings.cpp b/core/settings/launcher/taskbarsettings.cpp
index b5c03c8..5bc5ad2 100644
--- a/core/settings/launcher/taskbarsettings.cpp
+++ b/core/settings/launcher/taskbarsettings.cpp
@@ -52,7 +52,7 @@ TaskbarSettings::TaskbarSettings ( QWidget *parent, const char *name )
QBoxLayout *lay = new QVBoxLayout ( this, 4, 4 );
- QLabel *l = new QLabel ( tr( "Load applets:" ), this );
+ QLabel *l = new QLabel ( tr( "Load applets in Taskbar:" ), this );
lay-> addWidget ( l );
m_list = new QListView ( this );
@@ -85,7 +85,6 @@ void TaskbarSettings::init ( )
QLibrary *lib = new QLibrary ( path + "/" + *it );
lib-> queryInterface ( IID_TaskbarNamedApplet, (QUnknownInterface**) &iface );
if ( iface ) {
-
QString lang = getenv( "LANG" );
QTranslator *trans = new QTranslator ( qApp );
QString type = (*it). left ((*it). find ("."));
@@ -97,9 +96,11 @@ void TaskbarSettings::init ( )
name = iface-> name ( );
icon = iface-> icon ( );
iface-> release ( );
- lib-> unload ( );
- } else {
- delete lib;
+ }
+ if ( !iface ) {
+ lib-> queryInterface ( IID_TaskbarApplet, (QUnknownInterface**) &iface );
+
+ if ( iface ) {
name = (*it). mid ( 3 );
int sep = name. find( ".so" );
if ( sep > 0 )
@@ -108,7 +109,11 @@ void TaskbarSettings::init ( )
if ( sep == (int) name.length ( ) - 6 )
name. truncate ( sep );
name[0] = name[0]. upper ( );
+ iface-> release ( );
}
+ }
+
+ if ( iface ) {
QCheckListItem *item;
item = new QCheckListItem ( m_list, name, QCheckListItem::CheckBox );
if ( !icon. isNull ( ))
@@ -116,6 +121,9 @@ void TaskbarSettings::init ( )
item-> setOn ( exclude. find ( *it ) == exclude. end ( ));
m_applets [*it] = item;
}
+ lib-> unload ( );
+ delete lib;
+ }
}
void TaskbarSettings::appletChanged()