[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    KDE/kdelibs/kdefx
From:       Sandro Giessl <sgiessl () gmail ! com>
Date:       2006-07-13 20:26:48
Message-ID: 1152822408.117989.10457.nullmailer () svn ! kde ! org
[Download RAW message or body]

SVN commit 561997 by giessl:

some GroupBox love: FrameWidth, TextAlignTop, TitleTextColor


 M  +30 -12    kstyle.cpp  
 M  +13 -3     kstyle.h  


--- trunk/KDE/kdelibs/kdefx/kstyle.cpp #561996:561997
@@ -146,7 +146,7 @@
     setWidgetLayoutProp(WT_TabBar, TabBar::BaseOverlap, 2);
     setWidgetLayoutProp(WT_TabBar, TabBar::ScrollButtonWidth, 10);
 
-    setWidgetLayoutProp(WT_TabWidget, TabWidget::FrameMargin, 2);
+    setWidgetLayoutProp(WT_TabWidget, TabWidget::ContentsMargin, 2);
 
     setWidgetLayoutProp(WT_Tree, Tree::MaxExpanderSize, 9);
 
@@ -171,6 +171,8 @@
     setWidgetLayoutProp(WT_Header, Header::TextToIconSpace, 3);
     setWidgetLayoutProp(WT_Header, Header::MarkSize, 9);
 
+    setWidgetLayoutProp(WT_GroupBox, GroupBox::TitleTextColor, \
ColorMode(QPalette::Text)); +
     setWidgetLayoutProp(WT_ToolBar, ToolBar::HandleExtent, 6);
     setWidgetLayoutProp(WT_ToolBar, ToolBar::SeparatorExtent, 6);
     setWidgetLayoutProp(WT_ToolBar, ToolBar::ExtensionExtent, 10);
@@ -1900,6 +1902,19 @@
         case SH_TitleBar_NoBorder:
             return widgetLayoutProp(WT_Window, Window::NoTitleFrame, option, \
widget);  
+        case SH_GroupBox_TextLabelVerticalAlignment:
+            if (widgetLayoutProp(WT_GroupBox, GroupBox::TextAlignTop, option, \
widget) ) +                return Qt::AlignTop;
+            else
+                return Qt::AlignVCenter;
+
+        case SH_GroupBox_TextLabelColor:
+        {
+            ColorMode cm( widgetLayoutProp(WT_GroupBox, GroupBox::TitleTextColor,
+                          option, widget) );
+            return cm.color(option->palette).rgba();
+        }
+
         default:
             break;
     };
@@ -1912,7 +1927,10 @@
     switch (metric)
     {
         case PM_DefaultFrameWidth:
-            return widgetLayoutProp(WT_Generic, Generic::DefaultFrameWidth, option, \
widget); +            if (qstyleoption_cast<const QStyleOptionGroupBox *>(option) )
+                return widgetLayoutProp(WT_GroupBox, GroupBox::FrameWidth, option, \
widget); +            else
+                return widgetLayoutProp(WT_Generic, Generic::DefaultFrameWidth, \
option, widget);  
         case PM_ButtonMargin:
             return 0; //Better not return anything here since we already
@@ -2339,14 +2357,14 @@
             // use QCommonStyle's SE_TabWidgetTabPane, and adjust the result
             // according to the custom frame width.
             QRect pane = QCommonStyle::subElementRect(SE_TabWidgetTabPane, option, \
                widget);
-            int m   = widgetLayoutProp(WT_TabWidget, TabWidget::FrameMargin, option, \
                widget);
-            int top = m+widgetLayoutProp(WT_TabWidget, TabWidget::FrameMargin+Top,
+            int m   = widgetLayoutProp(WT_TabWidget, TabWidget::ContentsMargin, \
option, widget); +            int top = m+widgetLayoutProp(WT_TabWidget, \
TabWidget::ContentsMargin+Top,  option, widget);
-            int bot = m+widgetLayoutProp(WT_TabWidget, TabWidget::FrameMargin+Bot,
+            int bot = m+widgetLayoutProp(WT_TabWidget, \
TabWidget::ContentsMargin+Bot,  option, widget);
-            int left = m+widgetLayoutProp(WT_TabWidget, TabWidget::FrameMargin+Left,
+            int left = m+widgetLayoutProp(WT_TabWidget, \
TabWidget::ContentsMargin+Left,  option, widget);
-            int right = m+widgetLayoutProp(WT_TabWidget, \
TabWidget::FrameMargin+Right, +            int right = \
m+widgetLayoutProp(WT_TabWidget, TabWidget::ContentsMargin+Right,  option, widget);
 
             switch (tabOpt->shape) {
@@ -3469,13 +3487,13 @@
             const QStyleOptionTabWidgetFrame* tabOpt = qstyleoption_cast<const \
QStyleOptionTabWidgetFrame*>(option);  if (!tabOpt) break;
 
-            int m = widgetLayoutProp(WT_TabWidget, TabWidget::FrameMargin, option, \
widget); +            int m = widgetLayoutProp(WT_TabWidget, \
TabWidget::ContentsMargin, option, widget);  int vert = 2*m +
-                    widgetLayoutProp(WT_TabWidget, TabWidget::FrameMargin+Top, \
                option, widget) +
-                    widgetLayoutProp(WT_TabWidget, TabWidget::FrameMargin+Bot, \
option, widget); +                    widgetLayoutProp(WT_TabWidget, \
TabWidget::ContentsMargin+Top, option, widget) + +                    \
widgetLayoutProp(WT_TabWidget, TabWidget::ContentsMargin+Bot, option, widget);  int \
                hor = 2*m +
-                    widgetLayoutProp(WT_TabWidget, TabWidget::FrameMargin+Left, \
                option, widget) +
-                    widgetLayoutProp(WT_TabWidget, TabWidget::FrameMargin+Right, \
option, widget); +                    widgetLayoutProp(WT_TabWidget, \
TabWidget::ContentsMargin+Left, option, widget) + +                    \
widgetLayoutProp(WT_TabWidget, TabWidget::ContentsMargin+Right, option, widget);  
             switch (tabOpt->shape) {
                 case QTabBar::RoundedNorth:
--- trunk/KDE/kdelibs/kdefx/kstyle.h #561996:561997
@@ -963,14 +963,14 @@
          */
         enum LayoutProp
         {
-            FrameMargin,      /**< (\b 2) Width of the frame around a tab widget.
+            ContentsMargin,      /**< (\b 2) Width of the frame around a tab widget.
                                * Margins for a tabwidget with tab position 'North' \
                are
                                * specified as expected. For other positions, the
                                * sides are rotated accordingly, e.g. the left margin
                                * of a 'West' tabwidget is the same as top for a \
                'North'
                                * tabwidget.
                                * [sets QStyle::SE_TabWidgetTabContents] */
-            DummyProp = FrameMargin+MarginInc
+            DummyProp = ContentsMargin+MarginInc
         };
     };
 
@@ -1212,7 +1212,6 @@
      *
      * [the Frames implement QStyle::PE_FrameGroupBox]
      *
-     * No LayoutProps for now.
      * @sa Generic::DefaultFrameWidth
      *
      * @todo What about frame width etc.? CT_GroupBox, CC_GroupBox \
sizeFromContents(), subControlRect() @@ -1222,6 +1221,17 @@
     struct GroupBox
     {
         /**
+         * @sa setWidgetLayoutProp()
+         */
+        enum LayoutProps
+        {
+            FrameWidth, /**< (\b 2) width of a groupbox frame */
+            TextAlignTop, /**< (\b 0) set to non-zero, the title will be aligned
+                          * above the groupbox frame, not vertically centered
+                          * [sets QStyle::SH_GroupBox_TextLabelVerticalAlignment] */
+            TitleTextColor
+        };
+        /**
          * @sa drawKStylePrimitive()
          */
         enum Primitive


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic