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

List:       kde-commits
Subject:    KDE/kdebase/workspace/plasma/applets/pager
From:       Davide Bettio <davbet () aliceposta ! it>
Date:       2008-10-11 20:29:20
Message-ID: 1223756960.662361.26495.nullmailer () svn ! kde ! org
[Download RAW message or body]

SVN commit 870126 by bettio:

Improved pager's config dialog.
I replaced the QComboBox with 3 radio buttons because it's a good rule to use radio \
buttons when the number of options is <= 3. Feel free to improve it if you want :)


 M  +29 -8     pager.cpp  
 M  +177 -47   pagerConfig.ui  


--- trunk/KDE/kdebase/workspace/plasma/applets/pager/pager.cpp #870125:870126
@@ -187,13 +187,22 @@
     parent->addPage(widget, parent->windowTitle(), icon());
     connect(parent, SIGNAL(applyClicked()), this, SLOT(configAccepted()));
     connect(parent, SIGNAL(okClicked()), this, SLOT(configAccepted()));
+    connect(ui.configureDesktopsButton, SIGNAL(clicked()), \
SLOT(slotConfigureDesktop()));  
-    ui.displayedTextComboBox->clear();
-    ui.displayedTextComboBox->addItem(i18n("Desktop Number"));
-    ui.displayedTextComboBox->addItem(i18n("Desktop Name"));
-    ui.displayedTextComboBox->addItem(i18n("None"));
-    ui.displayedTextComboBox->setCurrentIndex((int)m_displayedText);
-    ui.displayedTextComboBox->setToolTip(i18n("What will appear when the mouse is \
over a desktop miniature")); +    switch (m_displayedText){
+        case Number:
+            ui. desktopNumberRadioButton->setChecked(true);
+            break;
+
+        case Name:
+            ui.desktopNameRadioButton->setChecked(true);
+            break;
+
+        case None:
+            ui.displayNoneRadioButton->setChecked(true);
+            break;
+    }
+
     ui.showWindowIconsCheckBox->setChecked(m_showWindowIcons);
     ui.spinRows->setValue(m_rows);
     ui.spinRows->setMaximum(m_desktopCount);
@@ -386,8 +395,20 @@
     KConfigGroup cg = config();
     bool changed = false;
 
-    if ((int)m_displayedText != ui.displayedTextComboBox->currentIndex()) {
-        m_displayedText = (DisplayedText)ui.displayedTextComboBox->currentIndex();
+    DisplayedText displayedText;
+
+    if (ui.desktopNumberRadioButton->isChecked()){
+        displayedText = Number;
+
+    }else if (ui.desktopNameRadioButton->isChecked()){
+        displayedText = Name;
+
+    }else{
+        displayedText = None;
+    }
+
+    if ((int)m_displayedText != (int)displayedText) {
+        m_displayedText = displayedText;
         cg.writeEntry("displayedText", (int)m_displayedText);
         changed = true;
     }
--- trunk/KDE/kdebase/workspace/plasma/applets/pager/pagerConfig.ui #870125:870126
@@ -5,8 +5,8 @@
    <rect>
     <x>0</x>
     <y>0</y>
-    <width>250</width>
-    <height>52</height>
+    <width>538</width>
+    <height>258</height>
    </rect>
   </property>
   <property name="windowTitle" >
@@ -15,62 +15,192 @@
   <property name="accessibleName" >
    <string>Configure Pager</string>
   </property>
-  <layout class="QGridLayout" >
-   <property name="margin" >
-    <number>0</number>
-   </property>
-   <item row="0" column="0" >
-    <widget class="QLabel" name="labelText" >
-     <property name="text" >
-      <string>Displayed text:</string>
+  <layout class="QVBoxLayout" name="verticalLayout" >
+   <item>
+    <widget class="QGroupBox" name="appearenceGroupBox" >
+     <property name="title" >
+      <string>Appearence</string>
      </property>
-    </widget>
-   </item>
-   <item row="0" column="1" colspan="2" >
-    <widget class="QComboBox" name="displayedTextComboBox" />
-   </item>
-   <item row="1" column="0" colspan="3" >
-    <widget class="QCheckBox" name="showWindowIconsCheckBox" >
-     <property name="text" >
-      <string>Display window &amp;icons</string>
+     <property name="checkable" >
+      <bool>false</bool>
      </property>
+     <layout class="QGridLayout" name="gridLayout" >
+      <item row="4" column="1" >
+       <layout class="QHBoxLayout" name="horizontalLayout_2" >
+        <item>
+         <widget class="QSpinBox" name="spinRows" >
+          <property name="toolTip" >
+           <string>Change the number of rows</string>
+          </property>
+          <property name="whatsThis" >
+           <string>Change the number of rows</string>
+          </property>
+          <property name="minimum" >
+           <number>1</number>
+          </property>
+          <property name="maximum" >
+           <number>20</number>
+          </property>
+         </widget>
+        </item>
+        <item>
+         <spacer name="horizontalSpacer" >
+          <property name="orientation" >
+           <enum>Qt::Horizontal</enum>
+          </property>
+          <property name="sizeHint" stdset="0" >
+           <size>
+            <width>17</width>
+            <height>20</height>
+           </size>
+          </property>
+         </spacer>
+        </item>
+       </layout>
+      </item>
+      <item row="0" column="1" >
+       <widget class="QRadioButton" name="desktopNumberRadioButton" >
+        <property name="text" >
+         <string>Desktop number</string>
+        </property>
+       </widget>
+      </item>
+      <item row="2" column="1" >
+       <widget class="QRadioButton" name="displayNoneRadioButton" >
+        <property name="text" >
+         <string>None</string>
+        </property>
+       </widget>
+      </item>
+      <item row="0" column="0" >
+       <widget class="QLabel" name="displayLabel" >
+        <property name="text" >
+         <string>Display:</string>
+        </property>
+        <property name="alignment" >
+         <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
+        </property>
+       </widget>
+      </item>
+      <item row="4" column="0" >
+       <widget class="QLabel" name="labelRows" >
+        <property name="text" >
+         <string>Number of rows:</string>
+        </property>
+        <property name="alignment" >
+         <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
+        </property>
+        <property name="buddy" >
+         <cstring>spinRows</cstring>
+        </property>
+       </widget>
+      </item>
+      <item row="1" column="1" >
+       <widget class="QRadioButton" name="desktopNameRadioButton" >
+        <property name="text" >
+         <string>Desktop name</string>
+        </property>
+       </widget>
+      </item>
+      <item row="3" column="1" >
+       <spacer name="verticalSpacer_2" >
+        <property name="orientation" >
+         <enum>Qt::Vertical</enum>
+        </property>
+        <property name="sizeType" >
+         <enum>QSizePolicy::Fixed</enum>
+        </property>
+        <property name="sizeHint" stdset="0" >
+         <size>
+          <width>393</width>
+          <height>5</height>
+         </size>
+        </property>
+       </spacer>
+      </item>
+      <item row="5" column="1" >
+       <spacer name="verticalSpacer_3" >
+        <property name="orientation" >
+         <enum>Qt::Vertical</enum>
+        </property>
+        <property name="sizeType" >
+         <enum>QSizePolicy::Fixed</enum>
+        </property>
+        <property name="sizeHint" stdset="0" >
+         <size>
+          <width>393</width>
+          <height>5</height>
+         </size>
+        </property>
+       </spacer>
+      </item>
+      <item row="6" column="0" colspan="2" >
+       <widget class="QCheckBox" name="showWindowIconsCheckBox" >
+        <property name="text" >
+         <string>Display window &amp;icons</string>
+        </property>
+       </widget>
+      </item>
+     </layout>
+     <zorder>desktopNumberRadioButton</zorder>
+     <zorder>displayNoneRadioButton</zorder>
+     <zorder>displayLabel</zorder>
+     <zorder>labelRows</zorder>
+     <zorder>desktopNameRadioButton</zorder>
+     <zorder>verticalSpacer_2</zorder>
+     <zorder>verticalSpacer_3</zorder>
+     <zorder>showWindowIconsCheckBox</zorder>
     </widget>
    </item>
-   <item row="2" column="0" >
-    <widget class="QLabel" name="labelRows" >
-     <property name="text" >
-      <string>Number of rows:</string>
+   <item>
+    <spacer name="verticalSpacer" >
+     <property name="orientation" >
+      <enum>Qt::Vertical</enum>
      </property>
-     <property name="buddy" >
-      <cstring>spinRows</cstring>
+     <property name="sizeType" >
+      <enum>QSizePolicy::Fixed</enum>
      </property>
-    </widget>
-   </item>
-   <item row="2" column="1" >
-    <widget class="QSpinBox" name="spinRows" >
-     <property name="toolTip" >
-      <string>Change the number of rows</string>
+     <property name="sizeHint" stdset="0" >
+      <size>
+       <width>20</width>
+       <height>15</height>
+      </size>
      </property>
-     <property name="whatsThis" >
-      <string>Change the number of rows</string>
-     </property>
-     <property name="minimum" >
-      <number>1</number>
-     </property>
-     <property name="maximum" >
-      <number>20</number>
-     </property>
-    </widget>
+    </spacer>
    </item>
-   <item row="2" column="2" >
-    <spacer>
+   <item>
+    <layout class="QHBoxLayout" name="horizontalLayout" >
+     <item>
+      <widget class="QPushButton" name="configureDesktopsButton" >
+       <property name="text" >
+        <string>Configure Desktops...</string>
+       </property>
+      </widget>
+     </item>
+     <item>
+      <spacer name="horizontalSpacer_2" >
+       <property name="orientation" >
+        <enum>Qt::Horizontal</enum>
+       </property>
+       <property name="sizeHint" stdset="0" >
+        <size>
+         <width>333</width>
+         <height>20</height>
+        </size>
+       </property>
+      </spacer>
+     </item>
+    </layout>
+   </item>
+   <item>
+    <spacer name="verticalSpacer_4" >
      <property name="orientation" >
-      <enum>Qt::Horizontal</enum>
+      <enum>Qt::Vertical</enum>
      </property>
-     <property name="sizeHint" >
+     <property name="sizeHint" stdset="0" >
       <size>
-       <width>40</width>
-       <height>20</height>
+       <width>20</width>
+       <height>47</height>
       </size>
      </property>
     </spacer>


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

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