[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: KDE/kdelibs/plasma/extenders
From: Marco Martin <notmart () gmail ! com>
Date: 2010-10-11 15:46:24
Message-ID: 20101011154624.1ABD8AC7E4 () svn ! kde ! org
[Download RAW message or body]
SVN commit 1184857 by mart:
FEATURE: new feature in the theme: use a "grouped" prefix for items in a group and \
"root" prefix for non grouped ones. still fallsback to the old one if either those \
prefixes don't exist or the root one doesn't have a "stacked" appearance
M +27 -0 extenderitem.cpp
--- trunk/KDE/kdelibs/plasma/extenders/extenderitem.cpp #1184856:1184857
@@ -97,6 +97,19 @@
m_iconSize = qMax(size.height(), (qreal) fm.height());
}
+ void setBackgroundPrefix(const QString &string)
+ {
+ if (string.isEmpty() || m_background->hasElementPrefix(string)) {
+ m_background->setElementPrefix(string);
+ update();
+ }
+ }
+
+ const QString backgroundPrefix() const
+ {
+ return m_background->prefix();
+ }
+
protected:
void resizeEvent(QGraphicsSceneResizeEvent *)
{
@@ -108,6 +121,7 @@
private:
FrameSvg *m_background;
+ QString m_prefix;
qreal m_iconSize;
};
@@ -329,6 +343,12 @@
{
Q_ASSERT(extender);
+ if (extender->appearance() != Extender::NoBorders) {
+ d->toolbox->setBackgroundPrefix("root");
+ } else {
+ d->toolbox->setBackgroundPrefix(QString());
+ }
+
//themeChanged() has to now that by now, we're no longer dragging, even though \
the QDrag has not //been entirely finished.
d->dragStarted = false;
@@ -429,6 +449,7 @@
d->group = group;
if (group) {
+ d->toolbox->setBackgroundPrefix("grouped");
config().writeEntry("group", group->name());
//TODO: move to another extender if the group we set is actually detached.
if (group->extender() != extender()) {
@@ -437,6 +458,12 @@
}
group->d->addItemToGroup(this, pos);
} else {
+ if (d->extender->appearance() != Extender::NoBorders) {
+ d->toolbox->setBackgroundPrefix("root");
+ } else {
+ d->toolbox->setBackgroundPrefix(QString());
+ }
+ d->toolbox->setBackgroundPrefix(QString());
if (oldGroup) {
oldGroup->d->removeItemFromGroup(this);
}
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic