[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: KDE/kdelibs/kate/part
From: Dominik Haumann <dhdev () gmx ! de>
Date: 2007-02-02 11:23:51
Message-ID: 1170415431.878907.24289.nullmailer () svn ! kde ! org
[Download RAW message or body]
SVN commit 629331 by dhaumann:
make minimum size for KateViewBar work. This is done be overwriting
QStackedLayout::sizeHint and QStackedLayout::minimumSize.
M +26 -5 kateviewhelpers.cpp
M +13 -2 kateviewhelpers.h
--- trunk/KDE/kdelibs/kate/part/kateviewhelpers.cpp #629330:629331
@@ -1355,8 +1355,8 @@
}
+//BEGIN Kate Vier Bar related classes
-
KateViewBarWidget::KateViewBarWidget (KateViewBar *viewBar)
: QWidget (), m_viewBar (viewBar)
{
@@ -1398,18 +1398,37 @@
+KateStackedLayout::KateStackedLayout(QWidget* parent)
+ : QStackedLayout(parent)
+{}
+QSize KateStackedLayout::sizeHint() const
+{
+ if (currentWidget())
+ return currentWidget()->sizeHint();
+ return QStackedLayout::sizeHint();
+}
+QSize KateStackedLayout::minimumSize() const
+{
+ if (currentWidget())
+ return currentWidget()->minimumSize();
+ return QStackedLayout::minimumSize();
+}
+
+
+
KateViewBar::KateViewBar (KateView *view)
- : QStackedWidget (view), m_view (view)
+ : QWidget (view), m_view (view)
{
+ m_stack = new KateStackedLayout(this);
hide ();
}
void KateViewBar::addBarWidget (KateViewBarWidget *newBarWidget)
{
// add new widget, invisible...
- addWidget (newBarWidget);
+ m_stack->addWidget (newBarWidget);
kDebug(13025)<<"add barwidget " << newBarWidget <<endl;
}
@@ -1417,7 +1436,7 @@
void KateViewBar::showBarWidget (KateViewBarWidget *barWidget)
{
// raise correct widget
- setCurrentWidget (barWidget);
+ m_stack->setCurrentWidget (barWidget);
kDebug(13025)<<"show barwidget " << barWidget <<endl;
show ();
}
@@ -1434,7 +1453,9 @@
hide();
return;
}
- QStackedWidget::keyPressEvent(event);
+ QWidget::keyPressEvent(event);
}
+//END Kate Vier Bar related classes
+
// kate: space-indent on; indent-width 2; replace-tabs on;
--- trunk/KDE/kdelibs/kate/part/kateviewhelpers.h #629330:629331
@@ -28,7 +28,7 @@
#include <QColor>
#include <QScrollBar>
#include <QHash>
-#include <QStackedWidget>
+#include <QStackedLayout>
#include <QMap>
class KateDocument;
@@ -243,10 +243,20 @@
QWidget *m_centralWidget;
};
-class KateViewBar : public QStackedWidget
+// Helper layout class to always provide minimum size
+class KateStackedLayout : public QStackedLayout
{
Q_OBJECT
+public:
+ KateStackedLayout(QWidget* parent);
+ virtual QSize sizeHint() const;
+ virtual QSize minimumSize() const;
+};
+class KateViewBar : public QWidget
+{
+ Q_OBJECT
+
friend class KateViewBarWidget;
public:
@@ -264,6 +274,7 @@
private:
KateView *m_view;
+ KateStackedLayout *m_stack;
};
#endif
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic