From d8a438f2dba8a36948348ccfa138cb893119b503 Mon Sep 17 00:00:00 2001
From: ansgar <ansgar@5a81b35b-ba03-0410-adc8-b2c5c5119f08>
Date: Wed, 28 Apr 2010 02:30:39 +0000
Subject: [PATCH] added fast spheres support to cpk options widget

git-svn-id: https://dng.biozentrum.unibas.ch/svn/openstructure/trunk@2122 5a81b35b-ba03-0410-adc8-b2c5c5119f08
---
 modules/gui/pymod/scene/cpk_widget.py | 27 ++++++++++++++++++++++-----
 1 file changed, 22 insertions(+), 5 deletions(-)

diff --git a/modules/gui/pymod/scene/cpk_widget.py b/modules/gui/pymod/scene/cpk_widget.py
index 5f6c7de3c..7df408743 100644
--- a/modules/gui/pymod/scene/cpk_widget.py
+++ b/modules/gui/pymod/scene/cpk_widget.py
@@ -42,28 +42,45 @@ class CPKWidget(RenderModeWidget):
     
     self.sphere_spinbox_ = QtGui.QSpinBox()
     self.sphere_spinbox_.setRange(min_sphere_detail, max_sphere_detail)
-    
+
+    cpk_mode_label = QtGui.QLabel("Rendering Mode")
+    self.cpk_mode_ = QtGui.QComboBox()
+    self.cpk_mode_.addItem("Triangles")
+    self.cpk_mode_.addItem("Fast Spheres (exp")
+    self.cpk_mode_.addItem("Fast Spheres ++ (exp)")
+
     cpk_label = QtGui.QLabel(self.text_)
     font = cpk_label.font()
     font.setBold(True)
     
     sphere_label = QtGui.QLabel("Sphere Detail")
     grid = QtGui.QGridLayout()
-    grid.addWidget(cpk_label,0,0,1,1)
-    grid.addWidget(sphere_label, 1, 0, 1, 3)
-    grid.addWidget(self.sphere_spinbox_, 1, 2, 1, 1)
-    grid.setRowStretch(2,1)
+    row=0
+    grid.addWidget(cpk_label,row,0,1,1)
+    row+=1
+    grid.addWidget(sphere_label, row, 0, 1, 3)
+    grid.addWidget(self.sphere_spinbox_, row, 2, 1, 1)
+    row+=1
+    grid.addWidget(cpk_mode_label,row,0,1,1)
+    grid.addWidget(self.cpk_mode_,row,3,1,2)
+    row+=1
+    grid.setRowStretch(row,1)
     self.setLayout(grid)
   
     QtCore.QObject.connect(self.sphere_spinbox_, QtCore.SIGNAL("valueChanged(int)"), self.UpdateSphereDetail)
+    QtCore.QObject.connect(self.cpk_mode_, QtCore.SIGNAL("currentIndexChanged(int)"), self.UpdateCPKMode)
     
     self.setMinimumSize(250,60)
     
   def UpdateSphereDetail(self, value):
     self.GetOptions().SetSphereDetail(value)
+
+  def UpdateCPKMode(self, value):
+    self.GetOptions().SetCPKMode(value)
     
   def UpdateGui(self,options):
     self.sphere_spinbox_.setValue(options.GetSphereDetail())
+    self.cpk_mode_.setCurrentIndex(options.GetCPKMode())
 
   def GetText(self):
     return self.text_
-- 
GitLab