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

List:       kde-commits
Subject:    [kde-workspace/amourphious/porting5] kcontrol/keyboard: fixed crashing setTristate needs to be imple
From:       shivam makkar <amourphious1992 () gmail ! com>
Date:       2014-02-23 22:48:32
Message-ID: E1WHhqa-0003RS-KD () scm ! kde ! org
[Download RAW message or body]

Git commit 7c7c55c6c38a2619868b8a772983746b900194c5 by shivam makkar.
Committed on 23/02/2014 at 22:48.
Pushed by makkar into branch 'amourphious/porting5'.

fixed crashing setTristate needs to be implemented

M  +11   -20   kcontrol/keyboard/kcmmisc.cpp
M  +3    -4    kcontrol/keyboard/kcmmisc.h
M  +99   -97   kcontrol/keyboard/kcmmiscwidget.ui

http://commits.kde.org/kde-workspace/7c7c55c6c38a2619868b8a772983746b900194c5

diff --git a/kcontrol/keyboard/kcmmisc.cpp b/kcontrol/keyboard/kcmmisc.cpp
index 9c14e24..5a7211e 100644
--- a/kcontrol/keyboard/kcmmisc.cpp
+++ b/kcontrol/keyboard/kcmmisc.cpp
@@ -63,23 +63,15 @@ KCMiscKeyboardWidget::KCMiscKeyboardWidget(QWidget *parent)
   ui.rateSlider->setPageStep(500);
   ui.rateSlider->setTickInterval(498);
 
-  numlockButtons.addButton(ui.RadioButton1, 0);
-  numlockButtons.addButton(ui.RadioButton1_2, 1);
-  numlockButtons.addButton(ui.RadioButton1_3, 2);
-
-  keyboardRepButtons.addButton(ui.keyboardRepeatOffRadioButton, 1);
-  keyboardRepButtons.addButton(ui.keyboardRepeatOnRadioButton, 2);
-  keyboardRepButtons.addButton(ui.keyboardRepeatUnchangedRadioButton, 3);
-
-  connect(ui.keyboardRepeatButtonGroup, SIGNAL(clicked()), this, SLOT(changed()));
-  connect(ui.keyboardRepeatButtonGroup, SIGNAL(clicked()), this, SLOT(keyboardRepeatStateChanged()));
+  connect(ui.kbRepButtonGroup, SIGNAL(buttonClicked(int)), this, SLOT(changed()));
+  connect(ui.kbRepButtonGroup, SIGNAL(buttonClicked(int)), this, SLOT(keyboardRepeatStateChanged(int)));
   connect(ui.delay, SIGNAL(valueChanged(int)), this, SLOT(delaySpinboxChanged(int)));
   connect(ui.delaySlider, SIGNAL(valueChanged(int)), this, SLOT(delaySliderChanged(int)));
   connect(ui.rate, SIGNAL(valueChanged(double)), this, SLOT(rateSpinboxChanged(double)));
   connect(ui.rateSlider, SIGNAL(valueChanged(int)), this, SLOT(rateSliderChanged(int)));
 
   connect(ui.click, SIGNAL(valueChanged(int)), this, SLOT(changed()));
-  connect(ui.numlockButtonGroup, SIGNAL(clicked()), this, SLOT(changed()));
+  connect(ui.numButtonGroup, SIGNAL(buttonReleased(int)), this, SLOT(changed()));
 
 // Not sure why we need this - if XKB is not found the whole keyboard module won't be compiled
 //#if !defined(HAVE_XTEST) && !defined(HAVE_XKB)
@@ -104,7 +96,7 @@ int  KCMiscKeyboardWidget::getClick()
 // set the slider and LCD values
 void KCMiscKeyboardWidget::setRepeat(TriState keyboardRepeat, int delay_, double rate_)
 {
-    TriStateHelper::setTriState( &keyboardRepButtons, keyboardRepeat );
+    TriStateHelper::setTriState( ui.kbRepButtonGroup, keyboardRepeat );
 //    ui.repeatBox->setChecked(r == AutoRepeatModeOn);
     ui.delay->setValue(delay_);
     ui.rate->setValue(rate_);
@@ -125,8 +117,7 @@ TriState TriStateHelper::getTriState(const QButtonGroup* group)
 
 void TriStateHelper::setTriState(QButtonGroup* group, TriState state)
 {
-    QAbstractButton *buttonSelect  = group->button(getInt(state));
-    buttonSelect->setChecked(true);
+    /*needs to be done*/
 }
 
 void KCMiscKeyboardWidget::load()
@@ -162,7 +153,7 @@ void KCMiscKeyboardWidget::load()
   //  setRepeat(kbd.global_auto_repeat, ui.delay->value(), ui.rate->value());
 
   numlockState = TriStateHelper::getTriState(config.readEntry( "NumLock", \
                TriStateHelper::getInt(STATE_UNCHANGED) ));
-  TriStateHelper::setTriState( &numlockButtons, numlockState );
+  TriStateHelper::setTriState( ui.numButtonGroup, numlockState );
 
   ui.delay->blockSignals(false);
   ui.rate->blockSignals(false);
@@ -174,8 +165,8 @@ void KCMiscKeyboardWidget::save()
   KConfigGroup config(KSharedConfig::openConfig("kcminputrc", KConfig::NoGlobals), "Keyboard");
 
   clickVolume = getClick();
-  keyboardRepeat = TriStateHelper::getTriState(&numlockButtons);
-  numlockState = TriStateHelper::getTriState(&keyboardRepButtons);
+  keyboardRepeat = TriStateHelper::getTriState(ui.kbRepButtonGroup);
+  numlockState = TriStateHelper::getTriState(ui.numButtonGroup);
 
   config.writeEntry("ClickVolume",clickVolume);
   config.writeEntry("KeyboardRepeating", TriStateHelper::getInt(keyboardRepeat));
@@ -189,7 +180,7 @@ void KCMiscKeyboardWidget::defaults()
 {
     setClickVolume(50);
     setRepeat(STATE_ON, 660, 25);
-    TriStateHelper::setTriState( &numlockButtons, STATE_UNCHANGED );
+    TriStateHelper::setTriState( ui.numButtonGroup, STATE_UNCHANGED );
     emit changed(true);
 }
 
@@ -240,9 +231,9 @@ void KCMiscKeyboardWidget::changed()
   emit changed(true);
 }
 
-void KCMiscKeyboardWidget::keyboardRepeatStateChanged()
+void KCMiscKeyboardWidget::keyboardRepeatStateChanged(int selection)
 {
-    bool enabled = TriStateHelper::getInt(TriStateHelper::getTriState(&keyboardRepButtons)) == \
TriStateHelper::getInt(STATE_ON); +	bool enabled = selection == TriStateHelper::getInt(STATE_ON);
 	ui.keyboardRepeatParamsGroupBox->setEnabled(enabled);
 	changed();
 }
diff --git a/kcontrol/keyboard/kcmmisc.h b/kcontrol/keyboard/kcmmisc.h
index aa07261..1183fb1 100644
--- a/kcontrol/keyboard/kcmmisc.h
+++ b/kcontrol/keyboard/kcmmisc.h
@@ -24,9 +24,9 @@
 #ifndef __KCMMISC_H__
 #define __KCMMISC_H__
 
-#include <QButtonGroup>
 #include <QString>
 #include <QWidget>
+#include <QButtonGroup>
 
 class Ui_KeyboardConfigWidget;
 
@@ -34,6 +34,7 @@ enum TriState {
 	STATE_ON = 0,  STATE_OFF = 1, STATE_UNCHANGED = 2
 };
 
+
 class TriStateHelper {
 public:
     static void setTriState(QButtonGroup* group, TriState state);
@@ -66,7 +67,7 @@ private Q_SLOTS:
   void delaySpinboxChanged (int value);
   void rateSliderChanged (int value);
   void rateSpinboxChanged (double value);
-  void keyboardRepeatStateChanged();
+  void keyboardRepeatStateChanged(int selection);
 
 Q_SIGNALS:
 	void changed(bool state);
@@ -85,8 +86,6 @@ private:
   enum TriState numlockState;
 
   Ui_KeyboardConfigWidget& ui;
-  QButtonGroup numlockButtons, keyboardRepButtons;
-
 };
 
 #endif
diff --git a/kcontrol/keyboard/kcmmiscwidget.ui b/kcontrol/keyboard/kcmmiscwidget.ui
index 38691fe..25052e4 100644
--- a/kcontrol/keyboard/kcmmiscwidget.ui
+++ b/kcontrol/keyboard/kcmmiscwidget.ui
@@ -7,88 +7,16 @@
     <x>0</x>
     <y>0</y>
     <width>577</width>
-    <height>361</height>
+    <height>452</height>
    </rect>
   </property>
   <layout class="QGridLayout" name="gridLayout">
-   <item row="0" column="0">
-    <widget class="QGroupBox" name="numlockGroupBox">
-     <property name="whatsThis">
-      <string>If supported, this option allows you to setup the state of NumLock after KDE \
startup.&lt;p&gt;You can configure NumLock to be turned on or off, or configure KDE not to set NumLock \
                state.</string>
-     </property>
-     <property name="title">
-      <string>NumLock on KDE Startup</string>
-     </property>
-     <layout class="QGridLayout" name="gridLayout_7">
-      <item row="0" column="0">
-       <widget class="QGroupBox" name="numlockButtonGroup">
-        <property name="flat">
-         <bool>true</bool>
-        </property>
-        <layout class="QGridLayout" name="gridLayout_6">
-         <item row="0" column="0">
-          <widget class="QRadioButton" name="RadioButton1">
-           <property name="text">
-            <string>T&amp;urn on</string>
-           </property>
-          </widget>
-         </item>
-         <item row="1" column="0">
-          <widget class="QRadioButton" name="RadioButton1_2">
-           <property name="text">
-            <string>Turn o&amp;ff</string>
-           </property>
-          </widget>
-         </item>
-         <item row="2" column="0">
-          <widget class="QRadioButton" name="RadioButton1_3">
-           <property name="text">
-            <string>Leave unchan&amp;ged</string>
-           </property>
-          </widget>
-         </item>
-        </layout>
-       </widget>
-      </item>
-     </layout>
-    </widget>
-   </item>
    <item row="1" column="0">
     <widget class="QGroupBox" name="keyboardRepeatGroupBox">
      <property name="title">
       <string>Keyboard Repeat</string>
      </property>
      <layout class="QGridLayout" name="gridLayout_4">
-      <item row="0" column="0">
-       <widget class="QGroupBox" name="keyboardRepeatButtonGroup">
-        <property name="flat">
-         <bool>true</bool>
-        </property>
-        <layout class="QGridLayout" name="gridLayout_3">
-         <item row="0" column="0">
-          <widget class="QRadioButton" name="keyboardRepeatOnRadioButton">
-           <property name="text">
-            <string>T&amp;urn on</string>
-           </property>
-          </widget>
-         </item>
-         <item row="1" column="0">
-          <widget class="QRadioButton" name="keyboardRepeatOffRadioButton">
-           <property name="text">
-            <string>Turn o&amp;ff</string>
-           </property>
-          </widget>
-         </item>
-         <item row="2" column="0">
-          <widget class="QRadioButton" name="keyboardRepeatUnchangedRadioButton">
-           <property name="text">
-            <string>Leave unchan&amp;ged</string>
-           </property>
-          </widget>
-         </item>
-        </layout>
-       </widget>
-      </item>
       <item row="0" column="1">
        <spacer name="horizontalSpacer_2">
         <property name="orientation">
@@ -156,11 +84,11 @@
           </widget>
          </item>
          <item row="0" column="2">
-          <widget class="QSpinBox" name="delay">
+          <widget class="QSpinBox" name="delay" native="true">
            <property name="whatsThis">
             <string>If supported, this option allows you to set the delay after which a pressed key will \
start generating keycodes. The 'Repeat rate' option controls the frequency of these keycodes.</string>  \
                </property>
-           <property name="suffix">
+           <property name="suffix" stdset="0">
             <string> ms</string>
            </property>
           </widget>
@@ -210,11 +138,11 @@
           </widget>
          </item>
          <item row="1" column="2">
-          <widget class="QDoubleSpinBox" name="rate">
+          <widget class="QDoubleSpinBox" name="rate" native="true">
            <property name="whatsThis">
             <string>If supported, this option allows you to set the rate at which keycodes are generated \
while a key is pressed.</string>  </property>
-           <property name="suffix">
+           <property name="suffix" stdset="0">
             <string> repeats/s</string>
            </property>
           </widget>
@@ -222,6 +150,45 @@
         </layout>
        </widget>
       </item>
+      <item row="0" column="0">
+       <widget class="QGroupBox" name="keyboardRepeatButtonGroup">
+        <property name="flat">
+         <bool>true</bool>
+        </property>
+        <layout class="QGridLayout" name="gridLayout_3">
+         <item row="0" column="0">
+          <widget class="QRadioButton" name="keyboardRepeatOnRadioButton">
+           <property name="text">
+            <string>T&amp;urn on</string>
+           </property>
+           <attribute name="buttonGroup">
+            <string notr="true">kbRepButtonGroup</string>
+           </attribute>
+          </widget>
+         </item>
+         <item row="1" column="0">
+          <widget class="QRadioButton" name="keyboardRepeatOffRadioButton">
+           <property name="text">
+            <string>Turn o&amp;ff</string>
+           </property>
+           <attribute name="buttonGroup">
+            <string notr="true">kbRepButtonGroup</string>
+           </attribute>
+          </widget>
+         </item>
+         <item row="2" column="0">
+          <widget class="QRadioButton" name="keyboardRepeatUnchangedRadioButton">
+           <property name="text">
+            <string>Leave unchan&amp;ged</string>
+           </property>
+           <attribute name="buttonGroup">
+            <string notr="true">kbRepButtonGroup</string>
+           </attribute>
+          </widget>
+         </item>
+        </layout>
+       </widget>
+      </item>
      </layout>
     </widget>
    </item>
@@ -308,28 +275,63 @@
      </property>
     </widget>
    </item>
+   <item row="0" column="0">
+    <widget class="QGroupBox" name="numlockGroupBox">
+     <property name="whatsThis">
+      <string>If supported, this option allows you to setup the state of NumLock after KDE \
startup.&lt;p&gt;You can configure NumLock to be turned on or off, or configure KDE not to set NumLock \
state.</string> +     </property>
+     <property name="title">
+      <string>NumLock on KDE Startup</string>
+     </property>
+     <layout class="QGridLayout" name="gridLayout_7">
+      <item row="0" column="0">
+       <widget class="QGroupBox" name="numlocgroupBox">
+        <property name="flat">
+         <bool>true</bool>
+        </property>
+        <layout class="QGridLayout" name="gridLayout_6">
+         <item row="0" column="0">
+          <widget class="QRadioButton" name="RadioButton1">
+           <property name="text">
+            <string>T&amp;urn on</string>
+           </property>
+           <attribute name="buttonGroup">
+            <string notr="true">numButtonGroup</string>
+           </attribute>
+          </widget>
+         </item>
+         <item row="1" column="0">
+          <widget class="QRadioButton" name="RadioButton1_2">
+           <property name="text">
+            <string>Turn o&amp;ff</string>
+           </property>
+           <attribute name="buttonGroup">
+            <string notr="true">numButtonGroup</string>
+           </attribute>
+          </widget>
+         </item>
+         <item row="2" column="0">
+          <widget class="QRadioButton" name="RadioButton1_3">
+           <property name="text">
+            <string>Leave unchan&amp;ged</string>
+           </property>
+           <attribute name="buttonGroup">
+            <string notr="true">numButtonGroup</string>
+           </attribute>
+          </widget>
+         </item>
+        </layout>
+       </widget>
+      </item>
+     </layout>
+    </widget>
+   </item>
   </layout>
  </widget>
- <customwidgets>
-  <customwidget>
-   <class>KDoubleNumInput</class>
-   <extends>QWidget</extends>
-   <header>knuminput.h</header>
-   <container>1</container>
-  </customwidget>
-  <customwidget>
-   <class>KButtonGroup</class>
-   <extends>QGroupBox</extends>
-   <header>kbuttongroup.h</header>
-   <container>1</container>
-  </customwidget>
-  <customwidget>
-   <class>KIntNumInput</class>
-   <extends>QWidget</extends>
-   <header>knuminput.h</header>
-   <container>1</container>
-  </customwidget>
- </customwidgets>
  <resources/>
  <connections/>
+ <buttongroups>
+  <buttongroup name="kbRepButtonGroup"/>
+  <buttongroup name="numButtonGroup"/>
+ </buttongroups>
 </ui>


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

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