[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: kdebase/kicker/core
From: Aaron J. Seigo <aseigo () kde ! org>
Date: 2005-02-27 5:45:28
Message-ID: 20050227054528.87F03148A2 () office ! kde ! org
[Download RAW message or body]
CVS commit by aseigo:
optimize moving panels around.
M +9 -3 container_extension.cpp 1.114
M +25 -17 containerarea.cpp 1.215
M +0 -1 containerarea.h 1.88
M +0 -1 panelextension.cpp 1.13
--- kdebase/kicker/core/container_extension.cpp #1.113:1.114
@@ -1243,4 +1243,5 @@ int ExtensionContainer::setupBorderSpace
void ExtensionContainer::positionChange(KPanelExtension::Position p)
{
+ setUpdatesEnabled(false);
arrangeHideButtons();
@@ -1250,4 +1251,5 @@ void ExtensionContainer::positionChange(
}
+ setUpdatesEnabled(true);
repaint();
}
@@ -1342,8 +1344,8 @@ void ExtensionContainer::arrange(KPanelE
}
- if (p != m_settings.position())
+ bool positionChanged = p != m_settings.position();
+ if (positionChanged)
{
m_settings.setPosition(p);
- positionChange(p);
}
else if (KickerSettings::transparent())
@@ -1369,5 +1371,9 @@ void ExtensionContainer::arrange(KPanelE
}
- updateLayout();
+ actuallyUpdateLayout();
+ if (positionChanged)
+ {
+ positionChange(p);
+ }
writeConfig();
}
--- kdebase/kicker/core/containerarea.cpp #1.214:1.215
@@ -1212,5 +1212,5 @@ void ContainerArea::setBackgroundTheme()
}
setPaletteBackgroundPixmap(QPixmap(bgImage));
- QTimer::singleShot(500, this, SLOT(updateContainersBackground()));
+ QTimer::singleShot(0, this, SLOT(updateContainersBackground()));
}
}
@@ -1321,30 +1321,39 @@ void ContainerArea::slotSaveContainerCon
}
-void ContainerArea::setOrientation(Orientation o)
+void ContainerArea::setPosition(KPanelExtension::Position p)
{
- Panner::setOrientation(o);
- m_layout->setEnabled(false);
- m_layout->setOrientation(o);
-
-// kdDebug(1210) << "ContainerArea::setOrientation()" << endl;
-
- for (ContainerIterator it(m_containers); it.current(); ++it)
+ if (_pos == p)
{
- (*it)->setOrientation(o);
+ return;
}
- m_layout->setEnabled(true);
-}
-
-void ContainerArea::setPosition(KPanelExtension::Position p)
-{
_pos = p;
+ Qt::Orientation o = (p == KPanelExtension::Top ||
+ p == KPanelExtension::Bottom) ?
+ Qt::Horizontal : Qt::Vertical;
+ bool orientationChanged = (orientation() != o);
+ m_layout->setEnabled(false);
+
+ if (orientationChanged)
+ {
+ setOrientation(o);
+ m_layout->setOrientation(o);
+ setBackgroundTheme();
+ }
for (ContainerIterator it(m_containers) ; it.current(); ++it)
{
+ if (orientationChanged)
+ {
+ (*it)->setOrientation(o);
+ }
+
(*it)->setPopupDirection( popupDirection() );
}
- repaint();
+ m_layout->setEnabled(true);
+
+ // container extension repaints for us!
+ //repaint();
}
@@ -1488,5 +1497,4 @@ int ContainerArea::containerCount(const
void ContainerArea::repaint()
{
- QTimer::singleShot(500, this, SLOT(setBackgroundTheme()));
Panner::repaint();
}
--- kdebase/kicker/core/containerarea.h #1.87:1.88
@@ -90,5 +90,4 @@ public slots:
void removeContainer(BaseContainer* a);
void takeContainer(BaseContainer* a);
- void setOrientation(Orientation o);
void setPosition(KPanelExtension::Position p);
void setAlignment(KPanelExtension::Alignment a);
--- kdebase/kicker/core/panelextension.cpp #1.12:1.13
@@ -121,5 +121,4 @@ QPopupMenu* PanelExtension::opMenu()
void PanelExtension::positionChange(Position p)
{
- _containerArea->setOrientation(orientation());
_containerArea->setPosition(p);
}
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic