00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 from ost import gui
00022 from ost import gfx
00023 from PyQt4 import QtCore, QtGui
00024 from render_mode_widget import RenderModeWidget
00025
00026
00027 class CPKWidget(RenderModeWidget):
00028 def __init__(self, parent=None):
00029 RenderModeWidget.__init__(self, parent)
00030
00031
00032 self.text_ = "Spheres"
00033
00034
00035 min_sphere_detail = 1
00036 max_sphere_detail = 20
00037
00038
00039 self.mode_ = gfx.RenderMode.CPK
00040
00041
00042
00043 self.sphere_spinbox_ = QtGui.QSpinBox()
00044 self.sphere_spinbox_.setRange(min_sphere_detail, max_sphere_detail)
00045
00046 cpk_label = QtGui.QLabel(self.text_)
00047 font = cpk_label.font()
00048 font.setBold(True)
00049
00050 sphere_label = QtGui.QLabel("Sphere Detail")
00051 grid = QtGui.QGridLayout()
00052 grid.addWidget(cpk_label,0,0,1,1)
00053 grid.addWidget(sphere_label, 1, 0, 1, 3)
00054 grid.addWidget(self.sphere_spinbox_, 1, 2, 1, 1)
00055 grid.setRowStretch(2,1)
00056 self.setLayout(grid)
00057
00058 QtCore.QObject.connect(self.sphere_spinbox_, QtCore.SIGNAL("valueChanged(int)"), self.UpdateSphereDetail)
00059
00060 self.setMinimumSize(250,60)
00061
00062 def UpdateSphereDetail(self, value):
00063 self.GetOptions().SetSphereDetail(value)
00064
00065 def UpdateGui(self,options):
00066 self.sphere_spinbox_.setValue(options.GetSphereDetail())
00067
00068 def GetText(self):
00069 return self.text_
00070
00071 def GetRenderMode(self):
00072 return self.mode_