浏览代码

Fix spinbox alignment of ctkRangeWidget

ctkRangeWidget was not supporting horizontal alignment.
Julien Finet 14 年之前
父节点
当前提交
0d8c280c57
共有 1 个文件被更改,包括 18 次插入6 次删除
  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);
+    }
 }
 
 // --------------------------------------------------------------------------