Sfoglia il codice sorgente

Fix spinbox alignment of ctkRangeWidget

ctkRangeWidget was not supporting horizontal alignment.
Julien Finet 14 anni fa
parent
commit
0d8c280c57
1 ha cambiato i file con 18 aggiunte e 6 eliminazioni
  1. 18 6
      Libs/Widgets/ctkRangeWidget.cpp

+ 18 - 6
Libs/Widgets/ctkRangeWidget.cpp

@@ -164,18 +164,30 @@ void ctkRangeWidgetPrivate::relayout()
     this->GridLayout->addWidget(this->MaximumSpinBox,0,2);
     this->GridLayout->addWidget(this->Slider,1,0,1,3);
     }
-  else if (this->SpinBoxAlignment & Qt::AlignVCenter)
-    {
-    this->GridLayout->addWidget(this->MinimumSpinBox,0,0);
-    this->GridLayout->addWidget(this->Slider,0,1);
-    this->GridLayout->addWidget(this->MaximumSpinBox,0,2);
-    }
   else if (this->SpinBoxAlignment & Qt::AlignBottom)
     {
     this->GridLayout->addWidget(this->MinimumSpinBox,1,0);
     this->GridLayout->addWidget(this->MaximumSpinBox,1,2);
     this->GridLayout->addWidget(this->Slider,0, 0, 1, 3);
     }
+  else if (this->SpinBoxAlignment & Qt::AlignRight)
+    {
+    this->GridLayout->addWidget(this->Slider, 0, 0);
+    this->GridLayout->addWidget(this->MinimumSpinBox,0,1);
+    this->GridLayout->addWidget(this->MaximumSpinBox,0,2);
+    }
+  else if (this->SpinBoxAlignment & Qt::AlignLeft)
+    {
+    this->GridLayout->addWidget(this->MinimumSpinBox,0,0);
+    this->GridLayout->addWidget(this->MaximumSpinBox,0,1);
+    this->GridLayout->addWidget(this->Slider, 0, 2);
+    }
+  else // Qt::AlignVCenter (or any other bad alignment)
+    {
+    this->GridLayout->addWidget(this->MinimumSpinBox,0,0);
+    this->GridLayout->addWidget(this->Slider,0,1);
+    this->GridLayout->addWidget(this->MaximumSpinBox,0,2);
+    }
 }
 
 // --------------------------------------------------------------------------