[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: KDE/kdebase/workspace/libs/taskmanager
From: Aaron J. Seigo <aseigo () kde ! org>
Date: 2011-01-15 23:11:55
Message-ID: 20110115231155.DB9F03E1F1 () svn ! kde ! org
[Download RAW message or body]
SVN commit 1214697 by aseigo:
don't offer signal suppression, too unpredictable in terms of global results.
some general cleanups in the process.
M +25 -13 groupmanager.cpp
M +2 -2 groupmanager.h
--- trunk/KDE/kdebase/workspace/libs/taskmanager/groupmanager.cpp #1214696:1214697
@@ -568,29 +568,32 @@
d->reloadTasks();
}
-LauncherItem *GroupManager::addLauncher(const KUrl &url, QIcon icon, QString name, \
QString genericName, bool emitSignal) +LauncherItem *GroupManager::addLauncher(const \
KUrl &url, QIcon icon, QString name, QString genericName) {
LauncherItem *launcher = findLauncher(name); // Do not insert launchers twice
if (!launcher) {
launcher = new LauncherItem(d->currentRootGroup(), url);
+
if (!icon.isNull()) {
launcher->setIcon(icon);
}
+
if (!name.isEmpty()) {
launcher->setName(name);
}
+
if (!genericName.isEmpty()) {
launcher->setGenericName(genericName);
}
+
updateLauncher(launcher);
- if (emitSignal) {
emit launcherAdded(launcher);
}
- }
+
return launcher;
}
-void GroupManager::removeLauncher(LauncherItem *launcher, bool emitSignal)
+void GroupManager::removeLauncher(LauncherItem *launcher)
{
typedef QHash<int,TaskGroup*> Metagroup;
foreach (Metagroup metagroup, d->rootGroups) {
@@ -598,26 +601,29 @@
rootGroup->remove(launcher);
}
}
+
d->launcherAssociations.remove(launcher->name().toLower());
- if (emitSignal) {
emit launcherRemoved(launcher);
}
-}
void GroupManager::updateLauncher(AbstractGroupableItem* item)
{
if (item->itemType() == LauncherItemType) {
- LauncherItem *launcher = qobject_cast< LauncherItem* >(item);
+ LauncherItem *launcher = static_cast<LauncherItem *>(item);
QString name = launcher->name().toLower();
if (d->launcherAssociations.contains(name)) {
- if (d->currentRootGroup()->members().contains(launcher) && \
d->launcherAssociations.values(name).length() > 1) { // Launcher is shown but the \
task is running + if (d->currentRootGroup()->members().contains(launcher) \
&& + d->launcherAssociations.values(name).length() > 1) {
+ // Launcher is shown but the task is running
typedef QHash<int,TaskGroup*> Metagroup;
foreach (Metagroup metagroup, d->rootGroups) {
foreach (TaskGroup *rootGroup, metagroup) {
rootGroup->remove(launcher);
}
}
- } else if (!d->currentRootGroup()->members().contains(launcher) && \
d->launcherAssociations.values(name).length() == 1) { // Launcher isn't shown but the \
task isn't running + } else if \
(!d->currentRootGroup()->members().contains(launcher) && + \
d->launcherAssociations.values(name).length() == 1) { + // Launcher \
isn't shown but the task isn't running typedef QHash<int,TaskGroup*> Metagroup;
foreach (Metagroup metagroup, d->rootGroups) {
foreach (TaskGroup *rootGroup, metagroup) {
@@ -625,7 +631,8 @@
}
}
}
- } else { //launcher was just created
+ } else {
+ //launcher was just created
d->launcherAssociations.insert(name, launcher);
QString memberName;
//check every item if it's matching to the launcher and add association \
for the fitting items @@ -655,14 +662,19 @@
} else {
name = item->name().toLower();
}
- if (d->currentRootGroup()->hasMember(item) && \
d->launcherAssociations.contains(name) && \
!d->launcherAssociations.values(name).contains(item) ) { //Item was just created and \
has set a launcher +
+ if (d->currentRootGroup()->hasMember(item) && \
d->launcherAssociations.contains(name) && \
!d->launcherAssociations.values(name).contains(item) ) { + //Item was just \
created and has set a launcher d->launcherAssociations.insertMulti(name, item);
- } else if (!d->currentRootGroup()->hasMember(item) && \
!d->launcherAssociations.key(item).isEmpty()) { //Item was just removed and has set a \
launcher
- if (name.isEmpty()) { // Happens if the window has already been removed
+ } else if (!d->currentRootGroup()->hasMember(item) && \
!d->launcherAssociations.key(item).isEmpty()) { + //Item was just removed \
and has set a launcher + if (name.isEmpty()) {
+ // Happens if the window has already been removed
name = d->launcherAssociations.key(item);
}
d->launcherAssociations.remove(name, item);
}
+
if (d->launcherAssociations.contains(name)) {
updateLauncher(d->launcherAssociations.values(name).last());
}
--- trunk/KDE/kdebase/workspace/libs/taskmanager/groupmanager.h #1214696:1214697
@@ -129,9 +129,9 @@
void reconnect();
/** Adds a Launcher for the executable/.desktop-file at url and returns a \
reference to the launcher*/
- LauncherItem *addLauncher(const KUrl &url, QIcon icon=QIcon(), QString \
name=QString(), QString genericName=QString(), bool emitSignal = true); + \
LauncherItem *addLauncher(const KUrl &url, QIcon icon=QIcon(), QString \
name=QString(), QString genericName=QString()); /** Removes the given launcher*/
- void removeLauncher( LauncherItem* launcher, bool emitSignal = true);
+ void removeLauncher(LauncherItem* launcher);
/** If there is a matching launcher, it returns a reference to it, else it \
returns NULL*/ LauncherItem *findLauncher(const QString &name);
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic