summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMark Sims <mark@nanorex.com>2008-06-04 23:42:29 +0000
committerMark Sims <mark@nanorex.com>2008-06-04 23:42:29 +0000
commit7e73b939c5df3e3b81441986291ccea307034701 (patch)
tree8c204364c016964563786f659024b816806fa794
parent7dbd4c40f56cdf2d88974491a0076dc1686e305d (diff)
downloadnanoengineer-7e73b939c5df3e3b81441986291ccea307034701.tar.gz
nanoengineer-7e73b939c5df3e3b81441986291ccea307034701.zip
Re-organized layout/widgets in the Minimize Energy dialog.
-rwxr-xr-xcad/src/commands/MinimizeEnergy/MinimizeEnergyProp.py293
-rwxr-xr-xcad/src/commands/MinimizeEnergy/MinimizeEnergyPropDialog.py647
-rwxr-xr-xcad/src/commands/MinimizeEnergy/MinimizeEnergyPropDialog.ui1242
-rw-r--r--cad/src/commands/MinimizeEnergy/WhatsThisText_for_MinimizeEnergyDialog.py143
4 files changed, 990 insertions, 1335 deletions
diff --git a/cad/src/commands/MinimizeEnergy/MinimizeEnergyProp.py b/cad/src/commands/MinimizeEnergy/MinimizeEnergyProp.py
index 5ff8bb0cf..d71c4dfa1 100755
--- a/cad/src/commands/MinimizeEnergy/MinimizeEnergyProp.py
+++ b/cad/src/commands/MinimizeEnergy/MinimizeEnergyProp.py
@@ -10,6 +10,9 @@ methods needed by the Minimize Energy dialog.
History:
mark 060705 - Created for Alpha 8 NFR: "Simulator > Minimize Energy".
+
+To do:
+- implement/enforce constrains between all convergence values.
"""
from PyQt4.Qt import QDialog
@@ -17,7 +20,7 @@ from PyQt4.Qt import QButtonGroup
from PyQt4.Qt import QAbstractButton
from PyQt4.Qt import SIGNAL
from PyQt4.Qt import QWhatsThis
-from PyQt4.Qt import QDoubleValidator
+from PyQt4.Qt import QSize
from utilities.Log import greenmsg, redmsg, orangemsg, _graymsg, quote_html
from commands.MinimizeEnergy.MinimizeEnergyPropDialog import Ui_MinimizeEnergyPropDialog
@@ -53,23 +56,27 @@ class MinimizeEnergyProp(QDialog, SponsorableMixin, GroupButtonMixin, Ui_Minimiz
def __init__(self, win):
QDialog.__init__(self, win) # win is parent.
self.setupUi(self)
- self.update_btngrp_group = QButtonGroup()
- self.update_btngrp_group.setExclusive(True)
- for obj in self.update_btngrp.children():
+ self.watch_minimize_buttongroup = QButtonGroup()
+ self.watch_minimize_buttongroup.setExclusive(True)
+ for obj in self.watch_minimize_groupbox.children():
if isinstance(obj, QAbstractButton):
- self.update_btngrp_group.addButton(obj)
+ self.watch_minimize_buttongroup.addButton(obj)
#fix some icon problems
self.setWindowIcon(
geticon('ui/border/MinimizeEnergy.png'))
self.done_btn.setIcon(
geticon('ui/actions/Properties Manager/Done.png'))
+ self.abort_btn.setIconSize(QSize(22, 22))
self.abort_btn.setIcon(
geticon('ui/actions/Properties Manager/Abort.png'))
+ self.restore_btn.setIconSize(QSize(22, 22))
self.restore_btn.setIcon(
geticon('ui/actions/Properties Manager/Restore.png'))
+ self.done_btn.setIconSize(QSize(22, 22))
self.whatsthis_btn.setIcon(
geticon('ui/actions/Properties Manager/WhatsThis.png'))
+ self.whatsthis_btn.setIconSize(QSize(22, 22))
self.connect(self.cancel_btn,
SIGNAL("clicked()"),
@@ -92,18 +99,6 @@ class MinimizeEnergyProp(QDialog, SponsorableMixin, GroupButtonMixin, Ui_Minimiz
self.connect(self.abort_btn,
SIGNAL("clicked()"),
self.cancel_btn_clicked)
- self.connect(self.grpbtn_1,
- SIGNAL("clicked()"),
- self.toggle_grpbtn_1)
- self.connect(self.grpbtn_2,
- SIGNAL("clicked()"),
- self.toggle_grpbtn_2)
- self.connect(self.grpbtn_3,
- SIGNAL("clicked()"),
- self.toggle_grpbtn_3)
- self.connect(self.grpbtn_4,
- SIGNAL("clicked()"),
- self.toggle_grpbtn_4)
connect_checkbox_with_boolean_pref(
self.electrostaticsForDnaDuringMinimize_checkBox,
@@ -112,65 +107,31 @@ class MinimizeEnergyProp(QDialog, SponsorableMixin, GroupButtonMixin, Ui_Minimiz
connect_checkbox_with_boolean_pref(
self.enableNeighborSearching_check_box,
neighborSearchingInGromacs_prefs_key)
+
+ self.connect(self.minimize_engine_combobox, SIGNAL("activated(int)"), self.update_minimize_engine)
self.minimize_engine_combobox.setCurrentIndex(
env.prefs[Minimize_minimizationEngine_prefs_key])
+
+ self.connect(self.endRmsDoubleSpinBox, SIGNAL("valueChanged(double)"), self.changeEndRms)
+ self.connect(self.endMaxDoubleSpinBox, SIGNAL("valueChanged(double)"), self.changeEndMax)
+ self.connect(self.cutoverRmsDoubleSpinBox, SIGNAL("valueChanged(double)"), self.changeCutoverRms)
+ self.connect(self.cutoverMaxDoubleSpinBox, SIGNAL("valueChanged(double)"), self.changeCutoverMax)
+
+ self.endRmsDoubleSpinBox.setSpecialValueText("Automatic")
+ self.endMaxDoubleSpinBox.setSpecialValueText("Automatic")
+ self.cutoverRmsDoubleSpinBox.setSpecialValueText("Automatic")
+ self.cutoverMaxDoubleSpinBox.setSpecialValueText("Automatic")
self.win = win
self.previousParams = None
self.setup_ruc()
- self.setup_validators()
self.seltype = 'All'
self.minimize_selection_enabled = True #bruce 080513
- self.sponsor_btn.setWhatsThis("""<b>NanoEngineer-1 Sponsor</b>
- <p>Click on the logo to learn more
- about this NanoEngineer-1 sponsor.</p>""")
- self.minimize_all_rbtn.setWhatsThis("""<b>Minimize All</b><p>Perform energy minimization on all the
- atoms in the workspace.</p>""")
- self.minimize_sel_rbtn.setWhatsThis("""<b>Minimize Selection</b><p>Perform energy minimization on the
- atoms that are currently selected.</p>""")
- self.watch_minimization_checkbox.setWhatsThis("""<p><b>Watch Motion In Real Time</b></p>Enables real time graphical
- updates during minimization runs.""")
- self.update_asap_rbtn.setWhatsThis("""<b>Update as fast as possible</b>
- <p>
- Update every 2 seconds,
- or faster (up to 20x/sec) if it doesn't slow minimization by more than 20%</p>""")
- self.update_every_rbtn.setWhatsThis("""<b>Update every <i>n units.</u></b>
- <p>Specify how often to update
- the model during the minimization. This allows the user to monitor minimization results while the minimization is running.</p>""")
- self.update_number_spinbox.setWhatsThis("""<b>Update every <i>n units.</u></b>
- <p>Specify how often to update
- the model during the minimization. This allows the user to monitor minimization results while the minimization is running.</p>""")
- self.update_units_combobox.setWhatsThis("""<b>Update every <i>n units.</u></b>
- <p>Specify how often to update
- the model during the minimization. This allows the user to monitor minimization results while the minimization is running.</p>""")
- self.endrms_linedit.setWhatsThis("""<b>EndRMS</b>
- <p>Continue until this RMS force is reached.</p>""")
- self.endmax_linedit.setWhatsThis("""<b>EndMax</b>
- <p>Continue until the total force on each atom
- is less than this value.</p>""")
- self.cutoverrms_linedit.setWhatsThis("""<b>CutoverRMS</b>
- <p>Use steepest descent until this RMS force
- is reached.</p>""")
- self.cutovermax_linedit.setWhatsThis("""<b>CutoverMax</b>
- <p>Use steepest descent until the total force
- on each atom is less than this value.</p>""")
- self.cancel_btn.setWhatsThis("""<b>Cancel</b><p>Dismiss this dialog without taking any action.</p>""")
- self.ok_btn.setWhatsThis("""<b>Minimize Energy</b><p>Using the parameters specified above,
- perform energy minimization on some or all of the atoms.</p>""")
- self.setWhatsThis("""<u><b>Minimize Energy</b></u>
- <p>The potential energy of a chemical
- structure is a function of the relative positions of its atoms. To obtain this energy with complete accuracy involves a lot
- of computer time spent on quantum mechanical calculations, which cannot be practically done on a desktop computer. To get
- an approximate potential energy without all that, we represent the energy as a series of terms involving geometric properties
- of the structure: lengths of chemical bonds, angles between pairs and triples of chemical bonds, etc.
- </p><p>As is generally
- the case with physical systems, the gradient of the potential energy represents the forces acting on various particles. The
- atoms want to move in the direction that most reduces the potential energy. Energy minimization is a process of adjusting
- the atom positions to try to find a global minimum of the potential energy. Each atom contributes three variables (its x,
- y, and z coordinates) so the search space is multi-dimensional. The global minimum is the configuration that the atoms will
- settle into if lowered to zero Kelvin.
- </p>""")
+
+ # Assign "What's This" text for all widgets.
+ from commands.MinimizeEnergy.WhatsThisText_for_MinimizeEnergyDialog import whatsThis_MinimizeEnergyDialog
+ whatsThis_MinimizeEnergyDialog(self)
self.update_widgets() # to make sure self attrs are set
@@ -182,8 +143,8 @@ class MinimizeEnergyProp(QDialog, SponsorableMixin, GroupButtonMixin, Ui_Minimiz
from widgets.widget_controllers import realtime_update_controller
self.ruc = realtime_update_controller(
#( self.update_btngrp, self.update_number_spinbox, self.update_units_combobox ),
- ( self.update_btngrp_group, self.update_number_spinbox, self.update_units_combobox ),
- self.watch_minimization_checkbox,
+ ( self.watch_minimize_buttongroup, self.update_number_spinbox, self.update_units_combobox ),
+ self.watch_minimize_groupbox,
Minimize_watchRealtimeMinimization_prefs_key
)
## can't do this yet: self.ruc.set_widgets_from_update_data( self.previous_movie._update_data ) # includes checkbox
@@ -217,10 +178,6 @@ class MinimizeEnergyProp(QDialog, SponsorableMixin, GroupButtonMixin, Ui_Minimiz
Returns a tuple with the current parameter values from the widgets. Also sets those in env.prefs.
Doesn't do anything about self.seltype, since that is a choice of command, not a parameter for a command.
"""
- self.change_endrms('notused')
- self.change_endmax('notused')
- self.change_cutoverrms('notused')
- self.change_cutovermax('notused')
return tuple([env.prefs[key] for key in (endRMS_prefs_key, endMax_prefs_key, cutoverRMS_prefs_key, cutoverMax_prefs_key)])
def update_widgets(self, update_seltype = True):
@@ -236,19 +193,22 @@ class MinimizeEnergyProp(QDialog, SponsorableMixin, GroupButtonMixin, Ui_Minimiz
self.minimize_sel_rbtn.setChecked(1)
self.minimize_sel_rbtn.setEnabled( self.minimize_selection_enabled)
pass
-
- # WARNING: some of the following code is mostly duplicated by UserPrefs code
- self.endrms = get_pref_or_optval(endRMS_prefs_key, -1.0, '')
- self.endrms_linedit.setText(str(self.endrms))
- self.endmax = get_pref_or_optval(endMax_prefs_key, -1.0, '')
- self.endmax_linedit.setText(str(self.endmax))
-
- self.cutoverrms = get_pref_or_optval(cutoverRMS_prefs_key, -1.0, '')
- self.cutoverrms_linedit.setText(str(self.cutoverrms))
+ # Convergence Criteria groupbox
+ # WARNING: some of the following code is mostly duplicated by Preferences code
+ self.endrms = get_pref_or_optval(endRMS_prefs_key, -1.0, 0.0)
+ self.endRmsDoubleSpinBox.setValue(self.endrms)
+
+ self.endmax = get_pref_or_optval(endMax_prefs_key, -1.0, 0.0)
+ self.endMaxDoubleSpinBox.setValue(self.endmax)
+
+ self.cutoverrms = get_pref_or_optval(cutoverRMS_prefs_key, -1.0, 0.0)
+ self.cutoverRmsDoubleSpinBox.setValue(self.cutoverrms)
+
+ self.cutovermax = get_pref_or_optval(cutoverMax_prefs_key, -1.0, 0.0)
+ self.cutoverMaxDoubleSpinBox.setValue(self.cutovermax)
- self.cutovermax = get_pref_or_optval(cutoverMax_prefs_key, -1.0, '')
- self.cutovermax_linedit.setText(str(self.cutovermax))
+ self.update_minimize_engine()
###e also watch in realtime prefs for this -- no, thats in another method for now
return
@@ -309,6 +269,7 @@ class MinimizeEnergyProp(QDialog, SponsorableMixin, GroupButtonMixin, Ui_Minimiz
Slot for Restore Defaults button
"""
# restore factory defaults # for A8, only for conv crit, not for watch motion settings
+ self.minimize_engine_combobox.setCurrentIndex(0) # ND1
env.prefs.restore_defaults([endRMS_prefs_key, endMax_prefs_key, cutoverRMS_prefs_key, cutoverMax_prefs_key])
self.update_widgets(update_seltype = False)
@@ -318,109 +279,79 @@ class MinimizeEnergyProp(QDialog, SponsorableMixin, GroupButtonMixin, Ui_Minimiz
"""
QWhatsThis.enterWhatsThisMode()
- # Property Manager groupbox button slots
-
- def toggle_grpbtn_1(self):
- """
- Slot for first groupbox toggle button
- """
- self.toggle_groupbox_in_dialogs(self.grpbtn_1, self.line1,
- self.minimize_all_rbtn, self.minimize_sel_rbtn)
-
- def toggle_grpbtn_2(self):
- """
- Slot for second groupbox toggle button
+ # Dialog slots
+
+ def update_minimize_engine(self, ignoredIndex = 0):
"""
- self.toggle_groupbox_in_dialogs(self.grpbtn_2, self.line2,
- self.watch_minimization_checkbox, self.update_btngrp)
+ Slot for the Minimize Engine comobox.
+ """
- def toggle_grpbtn_3(self):
- """
- Slot for third groupbox toggle button
- """
- self.toggle_groupbox_in_dialogs(self.grpbtn_3, self.line3,
- self.endrms_lbl, self.endrms_linedit,
- self.endmax_lbl, self.endmax_linedit,
- self.cutoverrms_lbl, self.cutoverrms_linedit,
- self.cutovermax_lbl, self.cutovermax_linedit,
- ##self.spacer_3 - had to be set to 1 pixel in ui file, since it's a local var, not a self attr
- )
-
- def toggle_grpbtn_4(self):
- """
- Slot for fourth groupbox toggle button
- """
- self.toggle_groupbox_in_dialogs(self.grpbtn_4, self.line4,
- self.minimize_engine_combobox)
-
- # WARNING: some of the following code is mostly duplicated by UserPrefs code;
- # the docstrings are wrong in this context, since these methods have no signal connections
-
- def setup_validators(self):
- # Validator for the linedit widgets.
- self.endrms_validator = QDoubleValidator(self)
- self.endrms_validator.setRange(0.0, 100.0, 2) # Range for linedits: 0.0 to 100, 2 decimal places
- self.endrms_linedit.setValidator(self.endrms_validator)
-
- self.endmax_validator = QDoubleValidator(self)
- self.endmax_validator.setRange(0.0, 100.0, 2) # Range for linedits: 0 to 100, 2 decimal places
- self.endmax_linedit.setValidator(self.endmax_validator)
+ engineIndex = self.minimize_engine_combobox.currentIndex()
- self.cutoverrms_validator = QDoubleValidator(self)
- self.cutoverrms_validator.setRange(0.0, 100.0, 2) # Range for linedits: 0 to 100, 2 decimal places
- self.cutoverrms_linedit.setValidator(self.cutoverrms_validator)
+ if engineIndex == 0: # NanoDynamics-1
+
+ # Minimize options widgets.
+ self.electrostaticsForDnaDuringMinimize_checkBox.setEnabled(False)
+ self.enableNeighborSearching_check_box.setEnabled(False)
+
+ # Watch minimize in real time widgets.
+ self.watch_minimize_groupbox.setEnabled(True)
+
+ # Converence criteria widgets
+ self.endMaxDoubleSpinBox.setEnabled(True)
+ self.cutoverRmsDoubleSpinBox.setEnabled(True)
+ self.cutoverMaxDoubleSpinBox.setEnabled(True)
+ else: # GROMACS
+
+ # Minimize options widgets.
+ self.electrostaticsForDnaDuringMinimize_checkBox.setEnabled(True)
+ self.enableNeighborSearching_check_box.setEnabled(True)
+
+ # Watch minimize in real time widgets.
+ self.watch_minimize_groupbox.setEnabled(False)
+
+ # Converence criteria widgets
+ self.endMaxDoubleSpinBox.setEnabled(False)
+ self.cutoverRmsDoubleSpinBox.setEnabled(False)
+ self.cutoverMaxDoubleSpinBox.setEnabled(False)
+ return
- self.cutovermax_validator = QDoubleValidator(self)
- self.cutovermax_validator.setRange(0.0, 100.0, 2) # Range for linedits: 0 to 100, 2 decimal places
- self.cutovermax_linedit.setValidator(self.cutovermax_validator)
-
- def change_endrms(self, text):
- try:
- endrms_str = double_fixup(self.endrms_validator, self.endrms_linedit.text(), self.endrms)
- self.endrms_linedit.setText(endrms_str)
- if endrms_str:
- env.prefs[endRMS_prefs_key] = float(str(endrms_str))
- else:
- env.prefs[endRMS_prefs_key] = -1.0
- self.endrms = endrms_str
- except:
- print_compact_traceback("bug in change_endrms ignored: ")
+ def changeEndRms(self, endRms):
+ """
+ Slot for EndRMS.
+ """
+ if endRms:
+ env.prefs[endRMS_prefs_key] = endRms
+ else:
+ env.prefs[endRMS_prefs_key] = -1.0
- def change_endmax(self, text):
- try:
- endmax_str = double_fixup(self.endmax_validator, self.endmax_linedit.text(), self.endmax)
- self.endmax_linedit.setText(endmax_str)
- if endmax_str:
- env.prefs[endMax_prefs_key] = float(str(endmax_str))
- else:
- env.prefs[endMax_prefs_key] = -1.0
- self.endmax = endmax_str
- except:
- print_compact_traceback("bug in change_endmax ignored: ")
-
- def change_cutoverrms(self, text):
- try:
- cutoverrms_str = double_fixup(self.cutoverrms_validator, self.cutoverrms_linedit.text(), self.cutoverrms)
- self.cutoverrms_linedit.setText(cutoverrms_str)
- if cutoverrms_str:
- env.prefs[cutoverRMS_prefs_key] = float(str(cutoverrms_str))
- else:
- env.prefs[cutoverRMS_prefs_key] = -1.0
- self.cutoverrms = cutoverrms_str
- except:
- print_compact_traceback("bug in change_cutoverrms ignored: ")
+ def changeEndMax(self, endMax):
+ """
+ Slot for EndMax.
+ """
+ if endMax:
+ env.prefs[endMax_prefs_key] = endMax
+ else:
+ env.prefs[endMax_prefs_key] = -1.0
+ return
+
+ def changeCutoverRms(self, cutoverRms):
+ """
+ Slot for CutoverRMS.
+ """
+ if cutoverRms:
+ env.prefs[cutoverRMS_prefs_key] = cutoverRms
+ else:
+ env.prefs[cutoverRMS_prefs_key] = -1.0
- def change_cutovermax(self, text):
- try:
- cutovermax_str = double_fixup(self.cutovermax_validator, self.cutovermax_linedit.text(), self.cutovermax)
- self.cutovermax_linedit.setText(cutovermax_str)
- if cutovermax_str:
- env.prefs[cutoverMax_prefs_key] = float(str(cutovermax_str))
- else:
- env.prefs[cutoverMax_prefs_key] = -1.0
- self.cutovermax = cutovermax_str
- except:
- print_compact_traceback("bug in change_cutovermax ignored: ")
+ def changeCutoverMax(self, cutoverMax):
+ """
+ Slot for CutoverMax.
+ """
+ if cutoverMax:
+ env.prefs[cutoverMax_prefs_key] = cutoverMax
+ else:
+ env.prefs[cutoverMax_prefs_key] = -1.0
pass # end of class MinimizeEnergyProp
diff --git a/cad/src/commands/MinimizeEnergy/MinimizeEnergyPropDialog.py b/cad/src/commands/MinimizeEnergy/MinimizeEnergyPropDialog.py
index a8a6cba97..5736f96d3 100755
--- a/cad/src/commands/MinimizeEnergy/MinimizeEnergyPropDialog.py
+++ b/cad/src/commands/MinimizeEnergy/MinimizeEnergyPropDialog.py
@@ -2,7 +2,7 @@
# Form implementation generated from reading ui file 'MinimizeEnergyPropDialog.ui'
#
-# Created: Mon May 19 16:50:51 2008
+# Created: Wed Jun 04 18:56:48 2008
# by: PyQt4 UI code generator 4.2
#
# WARNING! All changes made in this file will be lost!
@@ -12,141 +12,187 @@ from PyQt4 import QtCore, QtGui
class Ui_MinimizeEnergyPropDialog(object):
def setupUi(self, MinimizeEnergyPropDialog):
MinimizeEnergyPropDialog.setObjectName("MinimizeEnergyPropDialog")
- MinimizeEnergyPropDialog.resize(QtCore.QSize(QtCore.QRect(0,0,270,609).size()).expandedTo(MinimizeEnergyPropDialog.minimumSizeHint()))
+ MinimizeEnergyPropDialog.resize(QtCore.QSize(QtCore.QRect(0,0,300,500).size()).expandedTo(MinimizeEnergyPropDialog.minimumSizeHint()))
- self.vboxlayout = QtGui.QVBoxLayout(MinimizeEnergyPropDialog)
- self.vboxlayout.setMargin(0)
- self.vboxlayout.setSpacing(2)
- self.vboxlayout.setObjectName("vboxlayout")
-
- self.heading_frame = QtGui.QFrame(MinimizeEnergyPropDialog)
- self.heading_frame.setFrameShape(QtGui.QFrame.NoFrame)
- self.heading_frame.setFrameShadow(QtGui.QFrame.Plain)
- self.heading_frame.setObjectName("heading_frame")
-
- self.hboxlayout = QtGui.QHBoxLayout(self.heading_frame)
- self.hboxlayout.setMargin(0)
- self.hboxlayout.setSpacing(3)
- self.hboxlayout.setObjectName("hboxlayout")
-
- self.heading_pixmap = QtGui.QLabel(self.heading_frame)
-
- sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Policy(0),QtGui.QSizePolicy.Policy(0))
+ sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Policy(3),QtGui.QSizePolicy.Policy(3))
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
- sizePolicy.setHeightForWidth(self.heading_pixmap.sizePolicy().hasHeightForWidth())
- self.heading_pixmap.setSizePolicy(sizePolicy)
- self.heading_pixmap.setScaledContents(True)
- self.heading_pixmap.setAlignment(QtCore.Qt.AlignVCenter)
- self.heading_pixmap.setObjectName("heading_pixmap")
- self.hboxlayout.addWidget(self.heading_pixmap)
+ sizePolicy.setHeightForWidth(MinimizeEnergyPropDialog.sizePolicy().hasHeightForWidth())
+ MinimizeEnergyPropDialog.setSizePolicy(sizePolicy)
+ MinimizeEnergyPropDialog.setMinimumSize(QtCore.QSize(300,500))
- self.heading_label = QtGui.QLabel(self.heading_frame)
+ self.gridlayout = QtGui.QGridLayout(MinimizeEnergyPropDialog)
+ self.gridlayout.setMargin(2)
+ self.gridlayout.setSpacing(4)
+ self.gridlayout.setObjectName("gridlayout")
- font = QtGui.QFont()
- font.setFamily("Sans Serif")
- font.setPointSize(12)
- font.setWeight(75)
- font.setItalic(False)
- font.setUnderline(False)
- font.setStrikeOut(False)
- font.setBold(True)
- self.heading_label.setFont(font)
- self.heading_label.setObjectName("heading_label")
- self.hboxlayout.addWidget(self.heading_label)
- self.vboxlayout.addWidget(self.heading_frame)
+ spacerItem = QtGui.QSpacerItem(270,5,QtGui.QSizePolicy.Minimum,QtGui.QSizePolicy.Expanding)
+ self.gridlayout.addItem(spacerItem,2,0,1,1)
self.body_frame = QtGui.QFrame(MinimizeEnergyPropDialog)
+
+ sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Policy(3),QtGui.QSizePolicy.Policy(3))
+ sizePolicy.setHorizontalStretch(0)
+ sizePolicy.setVerticalStretch(0)
+ sizePolicy.setHeightForWidth(self.body_frame.sizePolicy().hasHeightForWidth())
+ self.body_frame.setSizePolicy(sizePolicy)
self.body_frame.setFrameShape(QtGui.QFrame.StyledPanel)
self.body_frame.setFrameShadow(QtGui.QFrame.Raised)
self.body_frame.setObjectName("body_frame")
- self.vboxlayout1 = QtGui.QVBoxLayout(self.body_frame)
- self.vboxlayout1.setMargin(9)
- self.vboxlayout1.setSpacing(6)
- self.vboxlayout1.setObjectName("vboxlayout1")
+ self.gridlayout1 = QtGui.QGridLayout(self.body_frame)
+ self.gridlayout1.setMargin(4)
+ self.gridlayout1.setSpacing(4)
+ self.gridlayout1.setObjectName("gridlayout1")
- self.sponsor_btn = QtGui.QPushButton(self.body_frame)
- self.sponsor_btn.setAutoDefault(False)
- self.sponsor_btn.setFlat(True)
- self.sponsor_btn.setObjectName("sponsor_btn")
- self.vboxlayout1.addWidget(self.sponsor_btn)
+ self.watch_minimize_groupbox = QtGui.QGroupBox(self.body_frame)
+ self.watch_minimize_groupbox.setCheckable(True)
+ self.watch_minimize_groupbox.setObjectName("watch_minimize_groupbox")
+
+ self.gridlayout2 = QtGui.QGridLayout(self.watch_minimize_groupbox)
+ self.gridlayout2.setMargin(4)
+ self.gridlayout2.setSpacing(2)
+ self.gridlayout2.setObjectName("gridlayout2")
+
+ self.update_asap_rbtn = QtGui.QRadioButton(self.watch_minimize_groupbox)
+ self.update_asap_rbtn.setChecked(True)
+ self.update_asap_rbtn.setObjectName("update_asap_rbtn")
+ self.gridlayout2.addWidget(self.update_asap_rbtn,0,0,1,1)
+
+ self.hboxlayout = QtGui.QHBoxLayout()
+ self.hboxlayout.setMargin(0)
+ self.hboxlayout.setSpacing(2)
+ self.hboxlayout.setObjectName("hboxlayout")
+
+ self.update_every_rbtn = QtGui.QRadioButton(self.watch_minimize_groupbox)
+ self.update_every_rbtn.setObjectName("update_every_rbtn")
+ self.hboxlayout.addWidget(self.update_every_rbtn)
+
+ self.update_number_spinbox = QtGui.QSpinBox(self.watch_minimize_groupbox)
+ self.update_number_spinbox.setMaximum(9999)
+ self.update_number_spinbox.setMinimum(1)
+ self.update_number_spinbox.setProperty("value",QtCore.QVariant(1))
+ self.update_number_spinbox.setObjectName("update_number_spinbox")
+ self.hboxlayout.addWidget(self.update_number_spinbox)
+
+ self.update_units_combobox = QtGui.QComboBox(self.watch_minimize_groupbox)
+ self.update_units_combobox.setObjectName("update_units_combobox")
+ self.hboxlayout.addWidget(self.update_units_combobox)
- self.hboxlayout1 = QtGui.QHBoxLayout()
- self.hboxlayout1.setMargin(0)
- self.hboxlayout1.setSpacing(6)
+ spacerItem1 = QtGui.QSpacerItem(40,20,QtGui.QSizePolicy.Expanding,QtGui.QSizePolicy.Minimum)
+ self.hboxlayout.addItem(spacerItem1)
+ self.gridlayout2.addLayout(self.hboxlayout,1,0,1,1)
+ self.gridlayout1.addWidget(self.watch_minimize_groupbox,4,0,1,1)
+
+ self.groupBox20 = QtGui.QGroupBox(self.body_frame)
+
+ sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Policy(5),QtGui.QSizePolicy.Policy(5))
+ sizePolicy.setHorizontalStretch(0)
+ sizePolicy.setVerticalStretch(0)
+ sizePolicy.setHeightForWidth(self.groupBox20.sizePolicy().hasHeightForWidth())
+ self.groupBox20.setSizePolicy(sizePolicy)
+ self.groupBox20.setObjectName("groupBox20")
+
+ self.hboxlayout1 = QtGui.QHBoxLayout(self.groupBox20)
+ self.hboxlayout1.setMargin(4)
+ self.hboxlayout1.setSpacing(4)
self.hboxlayout1.setObjectName("hboxlayout1")
- spacerItem = QtGui.QSpacerItem(35,20,QtGui.QSizePolicy.Expanding,QtGui.QSizePolicy.Minimum)
- self.hboxlayout1.addItem(spacerItem)
+ self.vboxlayout = QtGui.QVBoxLayout()
+ self.vboxlayout.setMargin(0)
+ self.vboxlayout.setSpacing(2)
+ self.vboxlayout.setObjectName("vboxlayout")
- self.done_btn = QtGui.QToolButton(self.body_frame)
- self.done_btn.setIcon(QtGui.QIcon("../../../../:icons/MinimizeEnergyPropDialog_image2"))
- self.done_btn.setObjectName("done_btn")
- self.hboxlayout1.addWidget(self.done_btn)
+ self.endrms_lbl = QtGui.QLabel(self.groupBox20)
+ self.endrms_lbl.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
+ self.endrms_lbl.setObjectName("endrms_lbl")
+ self.vboxlayout.addWidget(self.endrms_lbl)
- self.abort_btn = QtGui.QToolButton(self.body_frame)
- self.abort_btn.setIcon(QtGui.QIcon("../../../../:icons/MinimizeEnergyPropDialog_image3"))
- self.abort_btn.setObjectName("abort_btn")
- self.hboxlayout1.addWidget(self.abort_btn)
+ self.endmax_lbl = QtGui.QLabel(self.groupBox20)
+ self.endmax_lbl.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
+ self.endmax_lbl.setObjectName("endmax_lbl")
+ self.vboxlayout.addWidget(self.endmax_lbl)
- self.restore_btn = QtGui.QToolButton(self.body_frame)
- self.restore_btn.setIcon(QtGui.QIcon("../../../../:icons/MinimizeEnergyPropDialog_image4"))
- self.restore_btn.setObjectName("restore_btn")
- self.hboxlayout1.addWidget(self.restore_btn)
+ self.cutoverrms_lbl = QtGui.QLabel(self.groupBox20)
+ self.cutoverrms_lbl.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
+ self.cutoverrms_lbl.setObjectName("cutoverrms_lbl")
+ self.vboxlayout.addWidget(self.cutoverrms_lbl)
- self.whatsthis_btn = QtGui.QToolButton(self.body_frame)
- self.whatsthis_btn.setIcon(QtGui.QIcon("../../../../:icons/MinimizeEnergyPropDialog_image5"))
- self.whatsthis_btn.setObjectName("whatsthis_btn")
- self.hboxlayout1.addWidget(self.whatsthis_btn)
+ self.cutovermax_lbl = QtGui.QLabel(self.groupBox20)
+ self.cutovermax_lbl.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
+ self.cutovermax_lbl.setObjectName("cutovermax_lbl")
+ self.vboxlayout.addWidget(self.cutovermax_lbl)
+ self.hboxlayout1.addLayout(self.vboxlayout)
- spacerItem1 = QtGui.QSpacerItem(35,20,QtGui.QSizePolicy.Expanding,QtGui.QSizePolicy.Minimum)
- self.hboxlayout1.addItem(spacerItem1)
- self.vboxlayout1.addLayout(self.hboxlayout1)
+ self.vboxlayout1 = QtGui.QVBoxLayout()
+ self.vboxlayout1.setMargin(0)
+ self.vboxlayout1.setSpacing(2)
+ self.vboxlayout1.setObjectName("vboxlayout1")
- self.buttonGroup8 = QtGui.QGroupBox(self.body_frame)
- self.buttonGroup8.setObjectName("buttonGroup8")
+ self.endRmsDoubleSpinBox = QtGui.QDoubleSpinBox(self.groupBox20)
- self.vboxlayout2 = QtGui.QVBoxLayout(self.buttonGroup8)
- self.vboxlayout2.setMargin(9)
- self.vboxlayout2.setSpacing(6)
- self.vboxlayout2.setObjectName("vboxlayout2")
+ sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Policy(3),QtGui.QSizePolicy.Policy(0))
+ sizePolicy.setHorizontalStretch(0)
+ sizePolicy.setVerticalStretch(0)
+ sizePolicy.setHeightForWidth(self.endRmsDoubleSpinBox.sizePolicy().hasHeightForWidth())
+ self.endRmsDoubleSpinBox.setSizePolicy(sizePolicy)
+ self.endRmsDoubleSpinBox.setDecimals(3)
+ self.endRmsDoubleSpinBox.setMaximum(501.0)
+ self.endRmsDoubleSpinBox.setProperty("value",QtCore.QVariant(1.0))
+ self.endRmsDoubleSpinBox.setObjectName("endRmsDoubleSpinBox")
+ self.vboxlayout1.addWidget(self.endRmsDoubleSpinBox)
- self.hboxlayout2 = QtGui.QHBoxLayout()
- self.hboxlayout2.setMargin(0)
- self.hboxlayout2.setSpacing(6)
- self.hboxlayout2.setObjectName("hboxlayout2")
+ self.endMaxDoubleSpinBox = QtGui.QDoubleSpinBox(self.groupBox20)
- self.min_options_label = QtGui.QLabel(self.buttonGroup8)
- self.min_options_label.setObjectName("min_options_label")
- self.hboxlayout2.addWidget(self.min_options_label)
+ sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Policy(3),QtGui.QSizePolicy.Policy(0))
+ sizePolicy.setHorizontalStretch(0)
+ sizePolicy.setVerticalStretch(0)
+ sizePolicy.setHeightForWidth(self.endMaxDoubleSpinBox.sizePolicy().hasHeightForWidth())
+ self.endMaxDoubleSpinBox.setSizePolicy(sizePolicy)
+ self.endMaxDoubleSpinBox.setDecimals(2)
+ self.endMaxDoubleSpinBox.setMaximum(2501.0)
+ self.endMaxDoubleSpinBox.setProperty("value",QtCore.QVariant(0.0))
+ self.endMaxDoubleSpinBox.setObjectName("endMaxDoubleSpinBox")
+ self.vboxlayout1.addWidget(self.endMaxDoubleSpinBox)
- spacerItem2 = QtGui.QSpacerItem(21,16,QtGui.QSizePolicy.Expanding,QtGui.QSizePolicy.Minimum)
- self.hboxlayout2.addItem(spacerItem2)
+ self.cutoverRmsDoubleSpinBox = QtGui.QDoubleSpinBox(self.groupBox20)
- self.grpbtn_1 = QtGui.QPushButton(self.buttonGroup8)
+ sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Policy(3),QtGui.QSizePolicy.Policy(0))
+ sizePolicy.setHorizontalStretch(0)
+ sizePolicy.setVerticalStretch(0)
+ sizePolicy.setHeightForWidth(self.cutoverRmsDoubleSpinBox.sizePolicy().hasHeightForWidth())
+ self.cutoverRmsDoubleSpinBox.setSizePolicy(sizePolicy)
+ self.cutoverRmsDoubleSpinBox.setDecimals(2)
+ self.cutoverRmsDoubleSpinBox.setMaximum(12500.0)
+ self.cutoverRmsDoubleSpinBox.setProperty("value",QtCore.QVariant(0.0))
+ self.cutoverRmsDoubleSpinBox.setObjectName("cutoverRmsDoubleSpinBox")
+ self.vboxlayout1.addWidget(self.cutoverRmsDoubleSpinBox)
- sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Policy(0),QtGui.QSizePolicy.Policy(0))
+ self.cutoverMaxDoubleSpinBox = QtGui.QDoubleSpinBox(self.groupBox20)
+
+ sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Policy(3),QtGui.QSizePolicy.Policy(0))
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
- sizePolicy.setHeightForWidth(self.grpbtn_1.sizePolicy().hasHeightForWidth())
- self.grpbtn_1.setSizePolicy(sizePolicy)
- self.grpbtn_1.setMaximumSize(QtCore.QSize(16,16))
- self.grpbtn_1.setIcon(QtGui.QIcon("../../../../:icons/MinimizeEnergyPropDialog_image6"))
- self.grpbtn_1.setAutoDefault(False)
- self.grpbtn_1.setFlat(True)
- self.grpbtn_1.setObjectName("grpbtn_1")
- self.hboxlayout2.addWidget(self.grpbtn_1)
- self.vboxlayout2.addLayout(self.hboxlayout2)
-
- self.line1 = QtGui.QFrame(self.buttonGroup8)
- self.line1.setFrameShape(QtGui.QFrame.HLine)
- self.line1.setFrameShadow(QtGui.QFrame.Sunken)
- self.line1.setMidLineWidth(0)
- self.line1.setFrameShape(QtGui.QFrame.HLine)
- self.line1.setFrameShadow(QtGui.QFrame.Sunken)
- self.line1.setObjectName("line1")
- self.vboxlayout2.addWidget(self.line1)
+ sizePolicy.setHeightForWidth(self.cutoverMaxDoubleSpinBox.sizePolicy().hasHeightForWidth())
+ self.cutoverMaxDoubleSpinBox.setSizePolicy(sizePolicy)
+ self.cutoverMaxDoubleSpinBox.setDecimals(2)
+ self.cutoverMaxDoubleSpinBox.setMaximum(60001.0)
+ self.cutoverMaxDoubleSpinBox.setProperty("value",QtCore.QVariant(0.0))
+ self.cutoverMaxDoubleSpinBox.setObjectName("cutoverMaxDoubleSpinBox")
+ self.vboxlayout1.addWidget(self.cutoverMaxDoubleSpinBox)
+ self.hboxlayout1.addLayout(self.vboxlayout1)
+
+ spacerItem2 = QtGui.QSpacerItem(80,20,QtGui.QSizePolicy.MinimumExpanding,QtGui.QSizePolicy.Minimum)
+ self.hboxlayout1.addItem(spacerItem2)
+ self.gridlayout1.addWidget(self.groupBox20,5,0,1,1)
+
+ self.buttonGroup8 = QtGui.QGroupBox(self.body_frame)
+ self.buttonGroup8.setObjectName("buttonGroup8")
+
+ self.vboxlayout2 = QtGui.QVBoxLayout(self.buttonGroup8)
+ self.vboxlayout2.setMargin(4)
+ self.vboxlayout2.setSpacing(2)
+ self.vboxlayout2.setObjectName("vboxlayout2")
self.minimize_all_rbtn = QtGui.QRadioButton(self.buttonGroup8)
self.minimize_all_rbtn.setChecked(True)
@@ -166,331 +212,158 @@ class Ui_MinimizeEnergyPropDialog(object):
self.enableNeighborSearching_check_box.setChecked(True)
self.enableNeighborSearching_check_box.setObjectName("enableNeighborSearching_check_box")
self.vboxlayout2.addWidget(self.enableNeighborSearching_check_box)
- self.vboxlayout1.addWidget(self.buttonGroup8)
+ self.gridlayout1.addWidget(self.buttonGroup8,3,0,1,1)
- self.groupBox2 = QtGui.QGroupBox(self.body_frame)
- self.groupBox2.setObjectName("groupBox2")
+ self.buttonGroup8_2 = QtGui.QGroupBox(self.body_frame)
+ self.buttonGroup8_2.setObjectName("buttonGroup8_2")
- self.vboxlayout3 = QtGui.QVBoxLayout(self.groupBox2)
+ self.vboxlayout3 = QtGui.QVBoxLayout(self.buttonGroup8_2)
self.vboxlayout3.setMargin(4)
- self.vboxlayout3.setSpacing(1)
+ self.vboxlayout3.setSpacing(4)
self.vboxlayout3.setObjectName("vboxlayout3")
- self.hboxlayout3 = QtGui.QHBoxLayout()
- self.hboxlayout3.setMargin(0)
- self.hboxlayout3.setSpacing(6)
- self.hboxlayout3.setObjectName("hboxlayout3")
-
- self.watch_min_options_label = QtGui.QLabel(self.groupBox2)
- self.watch_min_options_label.setObjectName("watch_min_options_label")
- self.hboxlayout3.addWidget(self.watch_min_options_label)
-
- spacerItem3 = QtGui.QSpacerItem(20,20,QtGui.QSizePolicy.Expanding,QtGui.QSizePolicy.Minimum)
- self.hboxlayout3.addItem(spacerItem3)
-
- self.grpbtn_2 = QtGui.QPushButton(self.groupBox2)
-
- sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Policy(0),QtGui.QSizePolicy.Policy(0))
- sizePolicy.setHorizontalStretch(0)
- sizePolicy.setVerticalStretch(0)
- sizePolicy.setHeightForWidth(self.grpbtn_2.sizePolicy().hasHeightForWidth())
- self.grpbtn_2.setSizePolicy(sizePolicy)
- self.grpbtn_2.setMaximumSize(QtCore.QSize(16,16))
- self.grpbtn_2.setIcon(QtGui.QIcon("../../../../:icons/MinimizeEnergyPropDialog_image6"))
- self.grpbtn_2.setAutoDefault(False)
- self.grpbtn_2.setFlat(True)
- self.grpbtn_2.setObjectName("grpbtn_2")
- self.hboxlayout3.addWidget(self.grpbtn_2)
- self.vboxlayout3.addLayout(self.hboxlayout3)
-
- self.line2 = QtGui.QFrame(self.groupBox2)
- self.line2.setFrameShape(QtGui.QFrame.HLine)
- self.line2.setFrameShadow(QtGui.QFrame.Sunken)
- self.line2.setMidLineWidth(0)
- self.line2.setFrameShape(QtGui.QFrame.HLine)
- self.line2.setFrameShadow(QtGui.QFrame.Sunken)
- self.line2.setObjectName("line2")
- self.vboxlayout3.addWidget(self.line2)
-
- self.watch_minimization_checkbox = QtGui.QCheckBox(self.groupBox2)
- self.watch_minimization_checkbox.setChecked(True)
- self.watch_minimization_checkbox.setObjectName("watch_minimization_checkbox")
- self.vboxlayout3.addWidget(self.watch_minimization_checkbox)
-
- self.update_btngrp = QtGui.QGroupBox(self.groupBox2)
- self.update_btngrp.setObjectName("update_btngrp")
-
- self.vboxlayout4 = QtGui.QVBoxLayout(self.update_btngrp)
- self.vboxlayout4.setMargin(3)
- self.vboxlayout4.setSpacing(1)
- self.vboxlayout4.setObjectName("vboxlayout4")
-
- self.watch_min_options_label_2 = QtGui.QLabel(self.update_btngrp)
- self.watch_min_options_label_2.setObjectName("watch_min_options_label_2")
- self.vboxlayout4.addWidget(self.watch_min_options_label_2)
-
- self.line2_1 = QtGui.QFrame(self.update_btngrp)
- self.line2_1.setFrameShape(QtGui.QFrame.HLine)
- self.line2_1.setFrameShadow(QtGui.QFrame.Sunken)
- self.line2_1.setMidLineWidth(0)
- self.line2_1.setFrameShape(QtGui.QFrame.HLine)
- self.line2_1.setFrameShadow(QtGui.QFrame.Sunken)
- self.line2_1.setObjectName("line2_1")
- self.vboxlayout4.addWidget(self.line2_1)
-
- self.update_asap_rbtn = QtGui.QRadioButton(self.update_btngrp)
- self.update_asap_rbtn.setChecked(True)
- self.update_asap_rbtn.setObjectName("update_asap_rbtn")
- self.vboxlayout4.addWidget(self.update_asap_rbtn)
-
- self.hboxlayout4 = QtGui.QHBoxLayout()
- self.hboxlayout4.setMargin(0)
- self.hboxlayout4.setSpacing(0)
- self.hboxlayout4.setObjectName("hboxlayout4")
-
- self.update_every_rbtn = QtGui.QRadioButton(self.update_btngrp)
- self.update_every_rbtn.setObjectName("update_every_rbtn")
- self.hboxlayout4.addWidget(self.update_every_rbtn)
-
- self.update_number_spinbox = QtGui.QSpinBox(self.update_btngrp)
- self.update_number_spinbox.setMaximum(9999)
- self.update_number_spinbox.setMinimum(1)
- self.update_number_spinbox.setProperty("value",QtCore.QVariant(1))
- self.update_number_spinbox.setObjectName("update_number_spinbox")
- self.hboxlayout4.addWidget(self.update_number_spinbox)
-
- self.update_units_combobox = QtGui.QComboBox(self.update_btngrp)
- self.update_units_combobox.setObjectName("update_units_combobox")
- self.hboxlayout4.addWidget(self.update_units_combobox)
-
- spacerItem4 = QtGui.QSpacerItem(16,20,QtGui.QSizePolicy.Expanding,QtGui.QSizePolicy.Minimum)
- self.hboxlayout4.addItem(spacerItem4)
- self.vboxlayout4.addLayout(self.hboxlayout4)
- self.vboxlayout3.addWidget(self.update_btngrp)
- self.vboxlayout1.addWidget(self.groupBox2)
-
- self.parms_grpbox = QtGui.QGroupBox(self.body_frame)
- self.parms_grpbox.setObjectName("parms_grpbox")
-
- self.vboxlayout5 = QtGui.QVBoxLayout(self.parms_grpbox)
- self.vboxlayout5.setMargin(4)
- self.vboxlayout5.setSpacing(1)
- self.vboxlayout5.setObjectName("vboxlayout5")
-
- self.hboxlayout5 = QtGui.QHBoxLayout()
- self.hboxlayout5.setMargin(0)
- self.hboxlayout5.setSpacing(6)
- self.hboxlayout5.setObjectName("hboxlayout5")
-
- self.parameters_label = QtGui.QLabel(self.parms_grpbox)
- self.parameters_label.setObjectName("parameters_label")
- self.hboxlayout5.addWidget(self.parameters_label)
-
- spacerItem5 = QtGui.QSpacerItem(21,16,QtGui.QSizePolicy.Expanding,QtGui.QSizePolicy.Minimum)
- self.hboxlayout5.addItem(spacerItem5)
-
- self.grpbtn_3 = QtGui.QPushButton(self.parms_grpbox)
-
- sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Policy(0),QtGui.QSizePolicy.Policy(0))
- sizePolicy.setHorizontalStretch(0)
- sizePolicy.setVerticalStretch(0)
- sizePolicy.setHeightForWidth(self.grpbtn_3.sizePolicy().hasHeightForWidth())
- self.grpbtn_3.setSizePolicy(sizePolicy)
- self.grpbtn_3.setMaximumSize(QtCore.QSize(16,16))
- self.grpbtn_3.setIcon(QtGui.QIcon("../../../../:icons/MinimizeEnergyPropDialog_image6"))
- self.grpbtn_3.setAutoDefault(False)
- self.grpbtn_3.setFlat(True)
- self.grpbtn_3.setObjectName("grpbtn_3")
- self.hboxlayout5.addWidget(self.grpbtn_3)
- self.vboxlayout5.addLayout(self.hboxlayout5)
-
- self.line3 = QtGui.QFrame(self.parms_grpbox)
- self.line3.setFrameShape(QtGui.QFrame.HLine)
- self.line3.setFrameShadow(QtGui.QFrame.Sunken)
- self.line3.setMidLineWidth(0)
- self.line3.setFrameShape(QtGui.QFrame.HLine)
- self.line3.setFrameShadow(QtGui.QFrame.Sunken)
- self.line3.setObjectName("line3")
- self.vboxlayout5.addWidget(self.line3)
-
- self.hboxlayout6 = QtGui.QHBoxLayout()
- self.hboxlayout6.setMargin(0)
- self.hboxlayout6.setSpacing(6)
- self.hboxlayout6.setObjectName("hboxlayout6")
-
- self.vboxlayout6 = QtGui.QVBoxLayout()
- self.vboxlayout6.setMargin(0)
- self.vboxlayout6.setSpacing(6)
- self.vboxlayout6.setObjectName("vboxlayout6")
-
- self.endrms_lbl = QtGui.QLabel(self.parms_grpbox)
- self.endrms_lbl.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
- self.endrms_lbl.setObjectName("endrms_lbl")
- self.vboxlayout6.addWidget(self.endrms_lbl)
-
- self.endmax_lbl = QtGui.QLabel(self.parms_grpbox)
- self.endmax_lbl.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
- self.endmax_lbl.setObjectName("endmax_lbl")
- self.vboxlayout6.addWidget(self.endmax_lbl)
-
- self.cutoverrms_lbl = QtGui.QLabel(self.parms_grpbox)
- self.cutoverrms_lbl.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
- self.cutoverrms_lbl.setObjectName("cutoverrms_lbl")
- self.vboxlayout6.addWidget(self.cutoverrms_lbl)
-
- self.cutovermax_lbl = QtGui.QLabel(self.parms_grpbox)
- self.cutovermax_lbl.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
- self.cutovermax_lbl.setObjectName("cutovermax_lbl")
- self.vboxlayout6.addWidget(self.cutovermax_lbl)
- self.hboxlayout6.addLayout(self.vboxlayout6)
-
- self.vboxlayout7 = QtGui.QVBoxLayout()
- self.vboxlayout7.setMargin(0)
- self.vboxlayout7.setSpacing(6)
- self.vboxlayout7.setObjectName("vboxlayout7")
-
- self.endrms_linedit = QtGui.QLineEdit(self.parms_grpbox)
- self.endrms_linedit.setObjectName("endrms_linedit")
- self.vboxlayout7.addWidget(self.endrms_linedit)
+ self.minimize_engine_combobox = QtGui.QComboBox(self.buttonGroup8_2)
+ self.minimize_engine_combobox.setObjectName("minimize_engine_combobox")
+ self.vboxlayout3.addWidget(self.minimize_engine_combobox)
+ self.gridlayout1.addWidget(self.buttonGroup8_2,2,0,1,1)
- self.endmax_linedit = QtGui.QLineEdit(self.parms_grpbox)
- self.endmax_linedit.setObjectName("endmax_linedit")
- self.vboxlayout7.addWidget(self.endmax_linedit)
+ self.hboxlayout2 = QtGui.QHBoxLayout()
+ self.hboxlayout2.setMargin(0)
+ self.hboxlayout2.setSpacing(6)
+ self.hboxlayout2.setObjectName("hboxlayout2")
- self.cutoverrms_linedit = QtGui.QLineEdit(self.parms_grpbox)
- self.cutoverrms_linedit.setObjectName("cutoverrms_linedit")
- self.vboxlayout7.addWidget(self.cutoverrms_linedit)
+ spacerItem3 = QtGui.QSpacerItem(35,20,QtGui.QSizePolicy.Expanding,QtGui.QSizePolicy.Minimum)
+ self.hboxlayout2.addItem(spacerItem3)
- self.cutovermax_linedit = QtGui.QLineEdit(self.parms_grpbox)
- self.cutovermax_linedit.setObjectName("cutovermax_linedit")
- self.vboxlayout7.addWidget(self.cutovermax_linedit)
- self.hboxlayout6.addLayout(self.vboxlayout7)
+ self.done_btn = QtGui.QToolButton(self.body_frame)
+ self.done_btn.setIcon(QtGui.QIcon("../../../../:icons/MinimizeEnergyPropDialog_image2"))
+ self.done_btn.setObjectName("done_btn")
+ self.hboxlayout2.addWidget(self.done_btn)
- spacerItem6 = QtGui.QSpacerItem(40,1,QtGui.QSizePolicy.Expanding,QtGui.QSizePolicy.Minimum)
- self.hboxlayout6.addItem(spacerItem6)
- self.vboxlayout5.addLayout(self.hboxlayout6)
- self.vboxlayout1.addWidget(self.parms_grpbox)
+ self.abort_btn = QtGui.QToolButton(self.body_frame)
+ self.abort_btn.setIcon(QtGui.QIcon("../../../../:icons/MinimizeEnergyPropDialog_image3"))
+ self.abort_btn.setObjectName("abort_btn")
+ self.hboxlayout2.addWidget(self.abort_btn)
- self.buttonGroup8_2 = QtGui.QGroupBox(self.body_frame)
- self.buttonGroup8_2.setObjectName("buttonGroup8_2")
+ self.restore_btn = QtGui.QToolButton(self.body_frame)
+ self.restore_btn.setIcon(QtGui.QIcon("../../../../:icons/MinimizeEnergyPropDialog_image4"))
+ self.restore_btn.setObjectName("restore_btn")
+ self.hboxlayout2.addWidget(self.restore_btn)
- self.vboxlayout8 = QtGui.QVBoxLayout(self.buttonGroup8_2)
- self.vboxlayout8.setMargin(4)
- self.vboxlayout8.setSpacing(1)
- self.vboxlayout8.setObjectName("vboxlayout8")
+ self.whatsthis_btn = QtGui.QToolButton(self.body_frame)
+ self.whatsthis_btn.setIcon(QtGui.QIcon("../../../../:icons/MinimizeEnergyPropDialog_image5"))
+ self.whatsthis_btn.setObjectName("whatsthis_btn")
+ self.hboxlayout2.addWidget(self.whatsthis_btn)
- self.hboxlayout7 = QtGui.QHBoxLayout()
- self.hboxlayout7.setMargin(0)
- self.hboxlayout7.setSpacing(6)
- self.hboxlayout7.setObjectName("hboxlayout7")
+ spacerItem4 = QtGui.QSpacerItem(35,20,QtGui.QSizePolicy.Expanding,QtGui.QSizePolicy.Minimum)
+ self.hboxlayout2.addItem(spacerItem4)
+ self.gridlayout1.addLayout(self.hboxlayout2,1,0,1,1)
- self.min_options_label_4 = QtGui.QLabel(self.buttonGroup8_2)
- self.min_options_label_4.setObjectName("min_options_label_4")
- self.hboxlayout7.addWidget(self.min_options_label_4)
+ self.sponsor_btn = QtGui.QPushButton(self.body_frame)
+ self.sponsor_btn.setAutoDefault(False)
+ self.sponsor_btn.setFlat(True)
+ self.sponsor_btn.setObjectName("sponsor_btn")
+ self.gridlayout1.addWidget(self.sponsor_btn,0,0,1,1)
+ self.gridlayout.addWidget(self.body_frame,1,0,1,1)
- spacerItem7 = QtGui.QSpacerItem(21,16,QtGui.QSizePolicy.Expanding,QtGui.QSizePolicy.Minimum)
- self.hboxlayout7.addItem(spacerItem7)
+ self.heading_frame = QtGui.QFrame(MinimizeEnergyPropDialog)
+ self.heading_frame.setFrameShape(QtGui.QFrame.NoFrame)
+ self.heading_frame.setFrameShadow(QtGui.QFrame.Plain)
+ self.heading_frame.setObjectName("heading_frame")
- self.grpbtn_4 = QtGui.QPushButton(self.buttonGroup8_2)
+ self.heading_pixmap = QtGui.QLabel(self.heading_frame)
+ self.heading_pixmap.setGeometry(QtCore.QRect(0,8,16,16))
sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Policy(0),QtGui.QSizePolicy.Policy(0))
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
- sizePolicy.setHeightForWidth(self.grpbtn_4.sizePolicy().hasHeightForWidth())
- self.grpbtn_4.setSizePolicy(sizePolicy)
- self.grpbtn_4.setMaximumSize(QtCore.QSize(16,16))
- self.grpbtn_4.setIcon(QtGui.QIcon("../../../../:icons/MinimizeEnergyPropDialog_image6"))
- self.grpbtn_4.setAutoDefault(False)
- self.grpbtn_4.setDefault(False)
- self.grpbtn_4.setFlat(True)
- self.grpbtn_4.setObjectName("grpbtn_4")
- self.hboxlayout7.addWidget(self.grpbtn_4)
- self.vboxlayout8.addLayout(self.hboxlayout7)
-
- self.line4 = QtGui.QFrame(self.buttonGroup8_2)
- self.line4.setFrameShape(QtGui.QFrame.HLine)
- self.line4.setFrameShadow(QtGui.QFrame.Sunken)
- self.line4.setMidLineWidth(0)
- self.line4.setFrameShape(QtGui.QFrame.HLine)
- self.line4.setFrameShadow(QtGui.QFrame.Sunken)
- self.line4.setObjectName("line4")
- self.vboxlayout8.addWidget(self.line4)
+ sizePolicy.setHeightForWidth(self.heading_pixmap.sizePolicy().hasHeightForWidth())
+ self.heading_pixmap.setSizePolicy(sizePolicy)
+ self.heading_pixmap.setScaledContents(True)
+ self.heading_pixmap.setAlignment(QtCore.Qt.AlignVCenter)
+ self.heading_pixmap.setObjectName("heading_pixmap")
- self.minimize_engine_combobox = QtGui.QComboBox(self.buttonGroup8_2)
- self.minimize_engine_combobox.setObjectName("minimize_engine_combobox")
- self.vboxlayout8.addWidget(self.minimize_engine_combobox)
- self.vboxlayout1.addWidget(self.buttonGroup8_2)
- self.vboxlayout.addWidget(self.body_frame)
+ self.heading_label = QtGui.QLabel(self.heading_frame)
+ self.heading_label.setGeometry(QtCore.QRect(3,0,267,21))
- spacerItem8 = QtGui.QSpacerItem(245,16,QtGui.QSizePolicy.Minimum,QtGui.QSizePolicy.Expanding)
- self.vboxlayout.addItem(spacerItem8)
+ font = QtGui.QFont()
+ font.setFamily("Sans Serif")
+ font.setPointSize(12)
+ font.setWeight(75)
+ font.setItalic(False)
+ font.setUnderline(False)
+ font.setStrikeOut(False)
+ font.setBold(True)
+ self.heading_label.setFont(font)
+ self.heading_label.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignTop)
+ self.heading_label.setObjectName("heading_label")
+ self.gridlayout.addWidget(self.heading_frame,0,0,1,1)
- self.hboxlayout8 = QtGui.QHBoxLayout()
- self.hboxlayout8.setMargin(4)
- self.hboxlayout8.setSpacing(6)
- self.hboxlayout8.setObjectName("hboxlayout8")
+ self.hboxlayout3 = QtGui.QHBoxLayout()
+ self.hboxlayout3.setMargin(4)
+ self.hboxlayout3.setSpacing(6)
+ self.hboxlayout3.setObjectName("hboxlayout3")
- spacerItem9 = QtGui.QSpacerItem(59,20,QtGui.QSizePolicy.Expanding,QtGui.QSizePolicy.Minimum)
- self.hboxlayout8.addItem(spacerItem9)
+ spacerItem5 = QtGui.QSpacerItem(59,20,QtGui.QSizePolicy.Expanding,QtGui.QSizePolicy.Minimum)
+ self.hboxlayout3.addItem(spacerItem5)
self.cancel_btn = QtGui.QPushButton(MinimizeEnergyPropDialog)
self.cancel_btn.setAutoDefault(False)
self.cancel_btn.setObjectName("cancel_btn")
- self.hboxlayout8.addWidget(self.cancel_btn)
+ self.hboxlayout3.addWidget(self.cancel_btn)
self.ok_btn = QtGui.QPushButton(MinimizeEnergyPropDialog)
self.ok_btn.setAutoDefault(False)
self.ok_btn.setObjectName("ok_btn")
- self.hboxlayout8.addWidget(self.ok_btn)
- self.vboxlayout.addLayout(self.hboxlayout8)
+ self.hboxlayout3.addWidget(self.ok_btn)
+ self.gridlayout.addLayout(self.hboxlayout3,3,0,1,1)
self.retranslateUi(MinimizeEnergyPropDialog)
- QtCore.QObject.connect(self.watch_minimization_checkbox,QtCore.SIGNAL("toggled(bool)"),self.update_btngrp.setEnabled)
QtCore.QMetaObject.connectSlotsByName(MinimizeEnergyPropDialog)
def retranslateUi(self, MinimizeEnergyPropDialog):
MinimizeEnergyPropDialog.setWindowTitle(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "Minimize Energy", None, QtGui.QApplication.UnicodeUTF8))
- self.heading_label.setText(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "Minimize Energy", None, QtGui.QApplication.UnicodeUTF8))
- self.done_btn.setToolTip(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "OK", None, QtGui.QApplication.UnicodeUTF8))
- self.abort_btn.setToolTip(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "Cancel", None, QtGui.QApplication.UnicodeUTF8))
- self.restore_btn.setToolTip(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "Restore Defaults", None, QtGui.QApplication.UnicodeUTF8))
- self.whatsthis_btn.setToolTip(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "What\'s This Help", None, QtGui.QApplication.UnicodeUTF8))
- self.min_options_label.setText(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "Minimize Options", None, QtGui.QApplication.UnicodeUTF8))
- self.minimize_all_rbtn.setToolTip(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "Perform energy minimization on all the atoms in the workspace", None, QtGui.QApplication.UnicodeUTF8))
- self.minimize_all_rbtn.setText(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "Minimize All", None, QtGui.QApplication.UnicodeUTF8))
- self.minimize_sel_rbtn.setToolTip(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "Perform energy minimization on only the atoms that have been selected", None, QtGui.QApplication.UnicodeUTF8))
- self.minimize_sel_rbtn.setText(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "Minimize Selection", None, QtGui.QApplication.UnicodeUTF8))
- self.electrostaticsForDnaDuringMinimize_checkBox.setText(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "Electrostatics for DNA Reduced Model", None, QtGui.QApplication.UnicodeUTF8))
- self.enableNeighborSearching_check_box.setText(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "Enable Neighbor Searching (slow but accurate)", None, QtGui.QApplication.UnicodeUTF8))
- self.watch_min_options_label.setText(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "Watch Minimization Options", None, QtGui.QApplication.UnicodeUTF8))
- self.watch_minimization_checkbox.setToolTip(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "Enables real time graphical updates during minimization runs", None, QtGui.QApplication.UnicodeUTF8))
- self.watch_minimization_checkbox.setText(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "Watch minimization in real time", None, QtGui.QApplication.UnicodeUTF8))
- self.watch_min_options_label_2.setText(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "Update Options", None, QtGui.QApplication.UnicodeUTF8))
- self.update_asap_rbtn.setToolTip(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "Update every 2 seconds, or faster if it doesn\'t slow minimization by more than 20%", None, QtGui.QApplication.UnicodeUTF8))
- self.update_asap_rbtn.setText(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "As fast as possible", None, QtGui.QApplication.UnicodeUTF8))
- self.update_every_rbtn.setToolTip(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "Specify how often to update the screen during the minimization.", None, QtGui.QApplication.UnicodeUTF8))
- self.update_every_rbtn.setText(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "Every", None, QtGui.QApplication.UnicodeUTF8))
- self.update_number_spinbox.setToolTip(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "Specify how often to update the screen during the minimization.", None, QtGui.QApplication.UnicodeUTF8))
- self.update_units_combobox.setToolTip(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "Specify how often to update the screen during the minimization.", None, QtGui.QApplication.UnicodeUTF8))
+ self.watch_minimize_groupbox.setTitle(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "Watch minimize in real time", None, QtGui.QApplication.UnicodeUTF8))
+ self.update_asap_rbtn.setToolTip(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "Update every 2 seconds, or faster if it doesn\'t slow adjustments by more than 20%", None, QtGui.QApplication.UnicodeUTF8))
+ self.update_asap_rbtn.setText(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "Update as fast as possible", None, QtGui.QApplication.UnicodeUTF8))
+ self.update_every_rbtn.setToolTip(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "Specify how often to update the screen during adjustments", None, QtGui.QApplication.UnicodeUTF8))
+ self.update_every_rbtn.setText(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "Update every", None, QtGui.QApplication.UnicodeUTF8))
+ self.update_number_spinbox.setToolTip(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "Specify how often to update the screen during adjustments", None, QtGui.QApplication.UnicodeUTF8))
+ self.update_units_combobox.setToolTip(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "Specify how often to update the screen during adjustments", None, QtGui.QApplication.UnicodeUTF8))
self.update_units_combobox.addItem(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "frames", None, QtGui.QApplication.UnicodeUTF8))
self.update_units_combobox.addItem(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "seconds", None, QtGui.QApplication.UnicodeUTF8))
self.update_units_combobox.addItem(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "minutes", None, QtGui.QApplication.UnicodeUTF8))
self.update_units_combobox.addItem(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "hours", None, QtGui.QApplication.UnicodeUTF8))
- self.parameters_label.setText(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "Convergence Criteria", None, QtGui.QApplication.UnicodeUTF8))
- self.endrms_lbl.setText(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "EndRMS (pN) :", None, QtGui.QApplication.UnicodeUTF8))
- self.endmax_lbl.setText(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "EndMax (pN) :", None, QtGui.QApplication.UnicodeUTF8))
- self.cutoverrms_lbl.setText(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "CutoverRMS (pN) :", None, QtGui.QApplication.UnicodeUTF8))
- self.cutovermax_lbl.setText(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "CutoverMax (pN) :", None, QtGui.QApplication.UnicodeUTF8))
- self.endrms_linedit.setToolTip(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "Target RMS force (pN)", None, QtGui.QApplication.UnicodeUTF8))
- self.endrms_linedit.setText(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "1.0", None, QtGui.QApplication.UnicodeUTF8))
- self.endmax_linedit.setToolTip(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "Target max force (pN)", None, QtGui.QApplication.UnicodeUTF8))
- self.cutoverrms_linedit.setToolTip(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "Cutover RMS foce (pN)", None, QtGui.QApplication.UnicodeUTF8))
- self.cutovermax_linedit.setToolTip(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "Cutover max force (pN)", None, QtGui.QApplication.UnicodeUTF8))
- self.min_options_label_4.setText(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "Minimize Engine", None, QtGui.QApplication.UnicodeUTF8))
+ self.groupBox20.setTitle(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "Convergence criteria", None, QtGui.QApplication.UnicodeUTF8))
+ self.endrms_lbl.setToolTip(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "Target RMS force (pN)", None, QtGui.QApplication.UnicodeUTF8))
+ self.endrms_lbl.setText(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "EndRMS:", None, QtGui.QApplication.UnicodeUTF8))
+ self.endmax_lbl.setToolTip(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "Target max force (pN)", None, QtGui.QApplication.UnicodeUTF8))
+ self.endmax_lbl.setText(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "EndMax:", None, QtGui.QApplication.UnicodeUTF8))
+ self.cutoverrms_lbl.setToolTip(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "Cutover RMS force (pN)", None, QtGui.QApplication.UnicodeUTF8))
+ self.cutoverrms_lbl.setText(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "CutoverRMS:", None, QtGui.QApplication.UnicodeUTF8))
+ self.cutovermax_lbl.setToolTip(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "Cutover max force (pN)", None, QtGui.QApplication.UnicodeUTF8))
+ self.cutovermax_lbl.setText(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "CutoverMax:", None, QtGui.QApplication.UnicodeUTF8))
+ self.endRmsDoubleSpinBox.setSuffix(QtGui.QApplication.translate("MinimizeEnergyPropDialog", " pN", None, QtGui.QApplication.UnicodeUTF8))
+ self.endMaxDoubleSpinBox.setSuffix(QtGui.QApplication.translate("MinimizeEnergyPropDialog", " pN", None, QtGui.QApplication.UnicodeUTF8))
+ self.cutoverRmsDoubleSpinBox.setSuffix(QtGui.QApplication.translate("MinimizeEnergyPropDialog", " pN", None, QtGui.QApplication.UnicodeUTF8))
+ self.cutoverMaxDoubleSpinBox.setSuffix(QtGui.QApplication.translate("MinimizeEnergyPropDialog", " pN", None, QtGui.QApplication.UnicodeUTF8))
+ self.buttonGroup8.setTitle(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "Minimize Options", None, QtGui.QApplication.UnicodeUTF8))
+ self.minimize_all_rbtn.setToolTip(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "Perform energy minimization on all the atoms in the workspace", None, QtGui.QApplication.UnicodeUTF8))
+ self.minimize_all_rbtn.setText(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "Minimize all", None, QtGui.QApplication.UnicodeUTF8))
+ self.minimize_sel_rbtn.setToolTip(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "Perform energy minimization on only the atoms that have been selected", None, QtGui.QApplication.UnicodeUTF8))
+ self.minimize_sel_rbtn.setText(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "Minimize selection", None, QtGui.QApplication.UnicodeUTF8))
+ self.electrostaticsForDnaDuringMinimize_checkBox.setText(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "Electrostatics for DNA reduced model", None, QtGui.QApplication.UnicodeUTF8))
+ self.enableNeighborSearching_check_box.setText(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "Enable neighbor searching (slow but accurate)", None, QtGui.QApplication.UnicodeUTF8))
+ self.buttonGroup8_2.setTitle(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "Minimize physics engine", None, QtGui.QApplication.UnicodeUTF8))
self.minimize_engine_combobox.setToolTip(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "Choose the simulation engine with which to minimize energy.", None, QtGui.QApplication.UnicodeUTF8))
self.minimize_engine_combobox.addItem(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "NanoDynamics-1 (Default)", None, QtGui.QApplication.UnicodeUTF8))
self.minimize_engine_combobox.addItem(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "GROMACS with ND1 Force Field", None, QtGui.QApplication.UnicodeUTF8))
self.minimize_engine_combobox.addItem(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "Background GROMACS with ND1 Force Field", None, QtGui.QApplication.UnicodeUTF8))
+ self.done_btn.setToolTip(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "OK", None, QtGui.QApplication.UnicodeUTF8))
+ self.abort_btn.setToolTip(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "Cancel", None, QtGui.QApplication.UnicodeUTF8))
+ self.restore_btn.setToolTip(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "Restore Defaults", None, QtGui.QApplication.UnicodeUTF8))
+ self.whatsthis_btn.setToolTip(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "What\'s This Help", None, QtGui.QApplication.UnicodeUTF8))
+ self.heading_label.setText(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "Minimize Energy", None, QtGui.QApplication.UnicodeUTF8))
self.cancel_btn.setToolTip(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "Cancel", None, QtGui.QApplication.UnicodeUTF8))
self.cancel_btn.setText(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "Cancel", None, QtGui.QApplication.UnicodeUTF8))
self.ok_btn.setToolTip(QtGui.QApplication.translate("MinimizeEnergyPropDialog", "OK", None, QtGui.QApplication.UnicodeUTF8))
diff --git a/cad/src/commands/MinimizeEnergy/MinimizeEnergyPropDialog.ui b/cad/src/commands/MinimizeEnergy/MinimizeEnergyPropDialog.ui
index 0c49ac99d..ffbccb7d4 100755
--- a/cad/src/commands/MinimizeEnergy/MinimizeEnergyPropDialog.ui
+++ b/cad/src/commands/MinimizeEnergy/MinimizeEnergyPropDialog.ui
@@ -5,897 +5,461 @@
<rect>
<x>0</x>
<y>0</y>
- <width>270</width>
- <height>609</height>
+ <width>300</width>
+ <height>500</height>
</rect>
</property>
+ <property name="sizePolicy" >
+ <sizepolicy>
+ <hsizetype>3</hsizetype>
+ <vsizetype>3</vsizetype>
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="minimumSize" >
+ <size>
+ <width>300</width>
+ <height>500</height>
+ </size>
+ </property>
<property name="windowTitle" >
<string>Minimize Energy</string>
</property>
<property name="windowIcon" >
<iconset/>
</property>
- <layout class="QVBoxLayout" >
+ <layout class="QGridLayout" >
<property name="margin" >
- <number>0</number>
+ <number>2</number>
</property>
<property name="spacing" >
- <number>2</number>
+ <number>4</number>
</property>
- <item>
- <widget class="QFrame" name="heading_frame" >
- <property name="frameShape" >
- <enum>QFrame::NoFrame</enum>
+ <item row="2" column="0" >
+ <spacer>
+ <property name="orientation" >
+ <enum>Qt::Vertical</enum>
</property>
- <property name="frameShadow" >
- <enum>QFrame::Plain</enum>
+ <property name="sizeType" >
+ <enum>QSizePolicy::Expanding</enum>
</property>
- <layout class="QHBoxLayout" >
- <property name="margin" >
- <number>0</number>
- </property>
- <property name="spacing" >
- <number>3</number>
- </property>
- <item>
- <widget class="QLabel" name="heading_pixmap" >
- <property name="sizePolicy" >
- <sizepolicy>
- <hsizetype>0</hsizetype>
- <vsizetype>0</vsizetype>
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <property name="text" >
- <string/>
- </property>
- <property name="pixmap" >
- <pixmap/>
- </property>
- <property name="scaledContents" >
- <bool>true</bool>
- </property>
- <property name="alignment" >
- <set>Qt::AlignVCenter</set>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QLabel" name="heading_label" >
- <property name="font" >
- <font>
- <family>Sans Serif</family>
- <pointsize>12</pointsize>
- <weight>75</weight>
- <italic>false</italic>
- <bold>true</bold>
- <underline>false</underline>
- <strikeout>false</strikeout>
- </font>
- </property>
- <property name="text" >
- <string>Minimize Energy</string>
- </property>
- </widget>
- </item>
- </layout>
- </widget>
+ <property name="sizeHint" >
+ <size>
+ <width>270</width>
+ <height>5</height>
+ </size>
+ </property>
+ </spacer>
</item>
- <item>
+ <item row="1" column="0" >
<widget class="QFrame" name="body_frame" >
+ <property name="sizePolicy" >
+ <sizepolicy>
+ <hsizetype>3</hsizetype>
+ <vsizetype>3</vsizetype>
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
<property name="frameShape" >
<enum>QFrame::StyledPanel</enum>
</property>
<property name="frameShadow" >
<enum>QFrame::Raised</enum>
</property>
- <layout class="QVBoxLayout" >
+ <layout class="QGridLayout" >
<property name="margin" >
- <number>9</number>
+ <number>4</number>
</property>
<property name="spacing" >
- <number>6</number>
+ <number>4</number>
</property>
- <item>
- <widget class="QPushButton" name="sponsor_btn" >
- <property name="text" >
- <string/>
- </property>
- <property name="icon" >
- <iconset/>
- </property>
- <property name="autoDefault" >
- <bool>false</bool>
+ <item row="4" column="0" >
+ <widget class="QGroupBox" name="watch_minimize_groupbox" >
+ <property name="title" >
+ <string>Watch minimize in real time</string>
</property>
- <property name="flat" >
+ <property name="checkable" >
<bool>true</bool>
</property>
- </widget>
- </item>
- <item>
- <layout class="QHBoxLayout" >
- <property name="margin" >
- <number>0</number>
- </property>
- <property name="spacing" >
- <number>6</number>
- </property>
- <item>
- <spacer>
- <property name="orientation" >
- <enum>Qt::Horizontal</enum>
- </property>
- <property name="sizeType" >
- <enum>QSizePolicy::Expanding</enum>
- </property>
- <property name="sizeHint" >
- <size>
- <width>35</width>
- <height>20</height>
- </size>
- </property>
- </spacer>
- </item>
- <item>
- <widget class="QToolButton" name="done_btn" >
- <property name="toolTip" >
- <string>OK</string>
- </property>
- <property name="text" >
- <string/>
- </property>
- <property name="icon" >
- <iconset>../../../../:icons/MinimizeEnergyPropDialog_image2</iconset>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QToolButton" name="abort_btn" >
- <property name="toolTip" >
- <string>Cancel</string>
- </property>
- <property name="text" >
- <string/>
- </property>
- <property name="icon" >
- <iconset>../../../../:icons/MinimizeEnergyPropDialog_image3</iconset>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QToolButton" name="restore_btn" >
- <property name="toolTip" >
- <string>Restore Defaults</string>
- </property>
- <property name="text" >
- <string/>
- </property>
- <property name="icon" >
- <iconset>../../../../:icons/MinimizeEnergyPropDialog_image4</iconset>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QToolButton" name="whatsthis_btn" >
- <property name="toolTip" >
- <string>What's This Help</string>
- </property>
- <property name="text" >
- <string/>
- </property>
- <property name="icon" >
- <iconset>../../../../:icons/MinimizeEnergyPropDialog_image5</iconset>
- </property>
- </widget>
- </item>
- <item>
- <spacer>
- <property name="orientation" >
- <enum>Qt::Horizontal</enum>
- </property>
- <property name="sizeType" >
- <enum>QSizePolicy::Expanding</enum>
- </property>
- <property name="sizeHint" >
- <size>
- <width>35</width>
- <height>20</height>
- </size>
- </property>
- </spacer>
- </item>
- </layout>
- </item>
- <item>
- <widget class="QGroupBox" name="buttonGroup8" >
- <property name="title" >
- <string/>
- </property>
- <layout class="QVBoxLayout" >
+ <layout class="QGridLayout" >
<property name="margin" >
- <number>9</number>
+ <number>4</number>
</property>
<property name="spacing" >
- <number>6</number>
+ <number>2</number>
</property>
- <item>
+ <item row="0" column="0" >
+ <widget class="QRadioButton" name="update_asap_rbtn" >
+ <property name="toolTip" >
+ <string>Update every 2 seconds, or faster if it doesn't slow adjustments by more than 20%</string>
+ </property>
+ <property name="text" >
+ <string>Update as fast as possible</string>
+ </property>
+ <property name="checked" >
+ <bool>true</bool>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="0" >
<layout class="QHBoxLayout" >
<property name="margin" >
<number>0</number>
</property>
<property name="spacing" >
- <number>6</number>
+ <number>2</number>
</property>
<item>
- <widget class="QLabel" name="min_options_label" >
+ <widget class="QRadioButton" name="update_every_rbtn" >
+ <property name="toolTip" >
+ <string>Specify how often to update the screen during adjustments</string>
+ </property>
<property name="text" >
- <string>Minimize Options</string>
+ <string>Update every</string>
</property>
</widget>
</item>
<item>
- <spacer>
- <property name="orientation" >
- <enum>Qt::Horizontal</enum>
+ <widget class="QSpinBox" name="update_number_spinbox" >
+ <property name="toolTip" >
+ <string>Specify how often to update the screen during adjustments</string>
</property>
- <property name="sizeType" >
- <enum>QSizePolicy::Expanding</enum>
+ <property name="maximum" >
+ <number>9999</number>
</property>
- <property name="sizeHint" >
- <size>
- <width>21</width>
- <height>16</height>
- </size>
+ <property name="minimum" >
+ <number>1</number>
</property>
- </spacer>
+ <property name="value" >
+ <number>1</number>
+ </property>
+ </widget>
</item>
<item>
- <widget class="QPushButton" name="grpbtn_1" >
- <property name="sizePolicy" >
- <sizepolicy>
- <hsizetype>0</hsizetype>
- <vsizetype>0</vsizetype>
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
+ <widget class="QComboBox" name="update_units_combobox" >
+ <property name="toolTip" >
+ <string>Specify how often to update the screen during adjustments</string>
+ </property>
+ <item>
+ <property name="text" >
+ <string>frames</string>
+ </property>
+ </item>
+ <item>
+ <property name="text" >
+ <string>seconds</string>
+ </property>
+ </item>
+ <item>
+ <property name="text" >
+ <string>minutes</string>
+ </property>
+ </item>
+ <item>
+ <property name="text" >
+ <string>hours</string>
+ </property>
+ </item>
+ </widget>
+ </item>
+ <item>
+ <spacer>
+ <property name="orientation" >
+ <enum>Qt::Horizontal</enum>
</property>
- <property name="maximumSize" >
+ <property name="sizeHint" >
<size>
- <width>16</width>
- <height>16</height>
+ <width>40</width>
+ <height>20</height>
</size>
</property>
- <property name="text" >
- <string/>
- </property>
- <property name="icon" >
- <iconset>../../../../:icons/MinimizeEnergyPropDialog_image6</iconset>
- </property>
- <property name="autoDefault" >
- <bool>false</bool>
- </property>
- <property name="flat" >
- <bool>true</bool>
- </property>
- </widget>
+ </spacer>
</item>
</layout>
</item>
- <item>
- <widget class="Line" name="line1" >
- <property name="frameShape" >
- <enum>QFrame::HLine</enum>
- </property>
- <property name="frameShadow" >
- <enum>QFrame::Sunken</enum>
- </property>
- <property name="midLineWidth" >
- <number>0</number>
- </property>
- <property name="orientation" >
- <enum>Qt::Horizontal</enum>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QRadioButton" name="minimize_all_rbtn" >
- <property name="toolTip" >
- <string>Perform energy minimization on all the atoms in the workspace</string>
- </property>
- <property name="text" >
- <string>Minimize All</string>
- </property>
- <property name="checked" >
- <bool>true</bool>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QRadioButton" name="minimize_sel_rbtn" >
- <property name="toolTip" >
- <string>Perform energy minimization on only the atoms that have been selected</string>
- </property>
- <property name="text" >
- <string>Minimize Selection</string>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QCheckBox" name="electrostaticsForDnaDuringMinimize_checkBox" >
- <property name="text" >
- <string>Electrostatics for DNA Reduced Model</string>
- </property>
- <property name="checked" >
- <bool>true</bool>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QCheckBox" name="enableNeighborSearching_check_box" >
- <property name="text" >
- <string>Enable Neighbor Searching (slow but accurate)</string>
- </property>
- <property name="checked" >
- <bool>true</bool>
- </property>
- </widget>
- </item>
</layout>
</widget>
</item>
- <item>
- <widget class="QGroupBox" name="groupBox2" >
+ <item row="5" column="0" >
+ <widget class="QGroupBox" name="groupBox20" >
+ <property name="sizePolicy" >
+ <sizepolicy>
+ <hsizetype>5</hsizetype>
+ <vsizetype>5</vsizetype>
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
<property name="title" >
- <string/>
+ <string>Convergence criteria</string>
</property>
- <layout class="QVBoxLayout" >
+ <layout class="QHBoxLayout" >
<property name="margin" >
<number>4</number>
</property>
<property name="spacing" >
- <number>1</number>
+ <number>4</number>
</property>
<item>
- <layout class="QHBoxLayout" >
+ <layout class="QVBoxLayout" >
<property name="margin" >
<number>0</number>
</property>
<property name="spacing" >
- <number>6</number>
+ <number>2</number>
</property>
<item>
- <widget class="QLabel" name="watch_min_options_label" >
+ <widget class="QLabel" name="endrms_lbl" >
+ <property name="toolTip" >
+ <string>Target RMS force (pN)</string>
+ </property>
<property name="text" >
- <string>Watch Minimization Options</string>
+ <string>EndRMS:</string>
+ </property>
+ <property name="alignment" >
+ <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
</item>
<item>
- <spacer>
- <property name="orientation" >
- <enum>Qt::Horizontal</enum>
+ <widget class="QLabel" name="endmax_lbl" >
+ <property name="toolTip" >
+ <string>Target max force (pN)</string>
</property>
- <property name="sizeType" >
- <enum>QSizePolicy::Expanding</enum>
+ <property name="text" >
+ <string>EndMax:</string>
</property>
- <property name="sizeHint" >
- <size>
- <width>20</width>
- <height>20</height>
- </size>
+ <property name="alignment" >
+ <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
- </spacer>
+ </widget>
</item>
<item>
- <widget class="QPushButton" name="grpbtn_2" >
- <property name="sizePolicy" >
- <sizepolicy>
- <hsizetype>0</hsizetype>
- <vsizetype>0</vsizetype>
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <property name="maximumSize" >
- <size>
- <width>16</width>
- <height>16</height>
- </size>
+ <widget class="QLabel" name="cutoverrms_lbl" >
+ <property name="toolTip" >
+ <string>Cutover RMS force (pN)</string>
</property>
<property name="text" >
- <string/>
+ <string>CutoverRMS:</string>
</property>
- <property name="icon" >
- <iconset>../../../../:icons/MinimizeEnergyPropDialog_image6</iconset>
+ <property name="alignment" >
+ <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
- <property name="autoDefault" >
- <bool>false</bool>
+ </widget>
+ </item>
+ <item>
+ <widget class="QLabel" name="cutovermax_lbl" >
+ <property name="toolTip" >
+ <string>Cutover max force (pN)</string>
+ </property>
+ <property name="text" >
+ <string>CutoverMax:</string>
</property>
- <property name="flat" >
- <bool>true</bool>
+ <property name="alignment" >
+ <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
</item>
</layout>
</item>
<item>
- <widget class="Line" name="line2" >
- <property name="frameShape" >
- <enum>QFrame::HLine</enum>
- </property>
- <property name="frameShadow" >
- <enum>QFrame::Sunken</enum>
- </property>
- <property name="midLineWidth" >
- <number>0</number>
- </property>
- <property name="orientation" >
- <enum>Qt::Horizontal</enum>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QCheckBox" name="watch_minimization_checkbox" >
- <property name="toolTip" >
- <string>Enables real time graphical updates during minimization runs</string>
- </property>
- <property name="text" >
- <string>Watch minimization in real time</string>
- </property>
- <property name="checked" >
- <bool>true</bool>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QGroupBox" name="update_btngrp" >
- <property name="title" >
- <string/>
- </property>
- <layout class="QVBoxLayout" >
- <property name="margin" >
- <number>3</number>
- </property>
- <property name="spacing" >
- <number>1</number>
- </property>
- <item>
- <widget class="QLabel" name="watch_min_options_label_2" >
- <property name="text" >
- <string>Update Options</string>
- </property>
- </widget>
- </item>
- <item>
- <widget class="Line" name="line2_1" >
- <property name="frameShape" >
- <enum>QFrame::HLine</enum>
- </property>
- <property name="frameShadow" >
- <enum>QFrame::Sunken</enum>
- </property>
- <property name="midLineWidth" >
- <number>0</number>
- </property>
- <property name="orientation" >
- <enum>Qt::Horizontal</enum>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QRadioButton" name="update_asap_rbtn" >
- <property name="toolTip" >
- <string>Update every 2 seconds, or faster if it doesn't slow minimization by more than 20%</string>
- </property>
- <property name="text" >
- <string>As fast as possible</string>
- </property>
- <property name="checked" >
- <bool>true</bool>
- </property>
- </widget>
- </item>
- <item>
- <layout class="QHBoxLayout" >
- <property name="margin" >
- <number>0</number>
- </property>
- <property name="spacing" >
- <number>0</number>
- </property>
- <item>
- <widget class="QRadioButton" name="update_every_rbtn" >
- <property name="toolTip" >
- <string>Specify how often to update the screen during the minimization.</string>
- </property>
- <property name="text" >
- <string>Every</string>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QSpinBox" name="update_number_spinbox" >
- <property name="toolTip" >
- <string>Specify how often to update the screen during the minimization.</string>
- </property>
- <property name="maximum" >
- <number>9999</number>
- </property>
- <property name="minimum" >
- <number>1</number>
- </property>
- <property name="value" >
- <number>1</number>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QComboBox" name="update_units_combobox" >
- <property name="toolTip" >
- <string>Specify how often to update the screen during the minimization.</string>
- </property>
- <item>
- <property name="text" >
- <string>frames</string>
- </property>
- </item>
- <item>
- <property name="text" >
- <string>seconds</string>
- </property>
- </item>
- <item>
- <property name="text" >
- <string>minutes</string>
- </property>
- </item>
- <item>
- <property name="text" >
- <string>hours</string>
- </property>
- </item>
- </widget>
- </item>
- <item>
- <spacer>
- <property name="orientation" >
- <enum>Qt::Horizontal</enum>
- </property>
- <property name="sizeType" >
- <enum>QSizePolicy::Expanding</enum>
- </property>
- <property name="sizeHint" >
- <size>
- <width>16</width>
- <height>20</height>
- </size>
- </property>
- </spacer>
- </item>
- </layout>
- </item>
- </layout>
- </widget>
- </item>
- </layout>
- </widget>
- </item>
- <item>
- <widget class="QGroupBox" name="parms_grpbox" >
- <property name="title" >
- <string/>
- </property>
- <layout class="QVBoxLayout" >
- <property name="margin" >
- <number>4</number>
- </property>
- <property name="spacing" >
- <number>1</number>
- </property>
- <item>
- <layout class="QHBoxLayout" >
+ <layout class="QVBoxLayout" >
<property name="margin" >
<number>0</number>
</property>
<property name="spacing" >
- <number>6</number>
+ <number>2</number>
</property>
<item>
- <widget class="QLabel" name="parameters_label" >
- <property name="text" >
- <string>Convergence Criteria</string>
+ <widget class="QDoubleSpinBox" name="endRmsDoubleSpinBox" >
+ <property name="sizePolicy" >
+ <sizepolicy>
+ <hsizetype>3</hsizetype>
+ <vsizetype>0</vsizetype>
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
</property>
- </widget>
- </item>
- <item>
- <spacer>
- <property name="orientation" >
- <enum>Qt::Horizontal</enum>
+ <property name="suffix" >
+ <string> pN</string>
</property>
- <property name="sizeType" >
- <enum>QSizePolicy::Expanding</enum>
+ <property name="decimals" >
+ <number>3</number>
</property>
- <property name="sizeHint" >
- <size>
- <width>21</width>
- <height>16</height>
- </size>
+ <property name="maximum" >
+ <double>501.000000000000000</double>
</property>
- </spacer>
+ <property name="value" >
+ <double>1.000000000000000</double>
+ </property>
+ </widget>
</item>
<item>
- <widget class="QPushButton" name="grpbtn_3" >
+ <widget class="QDoubleSpinBox" name="endMaxDoubleSpinBox" >
<property name="sizePolicy" >
<sizepolicy>
- <hsizetype>0</hsizetype>
+ <hsizetype>3</hsizetype>
<vsizetype>0</vsizetype>
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
- <property name="maximumSize" >
- <size>
- <width>16</width>
- <height>16</height>
- </size>
- </property>
- <property name="text" >
- <string/>
+ <property name="suffix" >
+ <string> pN</string>
</property>
- <property name="icon" >
- <iconset>../../../../:icons/MinimizeEnergyPropDialog_image6</iconset>
+ <property name="decimals" >
+ <number>2</number>
</property>
- <property name="autoDefault" >
- <bool>false</bool>
+ <property name="maximum" >
+ <double>2501.000000000000000</double>
</property>
- <property name="flat" >
- <bool>true</bool>
+ <property name="value" >
+ <double>0.000000000000000</double>
</property>
</widget>
</item>
- </layout>
- </item>
- <item>
- <widget class="Line" name="line3" >
- <property name="frameShape" >
- <enum>QFrame::HLine</enum>
- </property>
- <property name="frameShadow" >
- <enum>QFrame::Sunken</enum>
- </property>
- <property name="midLineWidth" >
- <number>0</number>
- </property>
- <property name="orientation" >
- <enum>Qt::Horizontal</enum>
- </property>
- </widget>
- </item>
- <item>
- <layout class="QHBoxLayout" >
- <property name="margin" >
- <number>0</number>
- </property>
- <property name="spacing" >
- <number>6</number>
- </property>
<item>
- <layout class="QVBoxLayout" >
- <property name="margin" >
- <number>0</number>
+ <widget class="QDoubleSpinBox" name="cutoverRmsDoubleSpinBox" >
+ <property name="sizePolicy" >
+ <sizepolicy>
+ <hsizetype>3</hsizetype>
+ <vsizetype>0</vsizetype>
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
</property>
- <property name="spacing" >
- <number>6</number>
+ <property name="suffix" >
+ <string> pN</string>
</property>
- <item>
- <widget class="QLabel" name="endrms_lbl" >
- <property name="text" >
- <string>EndRMS (pN) :</string>
- </property>
- <property name="alignment" >
- <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QLabel" name="endmax_lbl" >
- <property name="text" >
- <string>EndMax (pN) :</string>
- </property>
- <property name="alignment" >
- <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QLabel" name="cutoverrms_lbl" >
- <property name="text" >
- <string>CutoverRMS (pN) :</string>
- </property>
- <property name="alignment" >
- <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QLabel" name="cutovermax_lbl" >
- <property name="text" >
- <string>CutoverMax (pN) :</string>
- </property>
- <property name="alignment" >
- <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
- </property>
- </widget>
- </item>
- </layout>
- </item>
- <item>
- <layout class="QVBoxLayout" >
- <property name="margin" >
- <number>0</number>
+ <property name="decimals" >
+ <number>2</number>
</property>
- <property name="spacing" >
- <number>6</number>
+ <property name="maximum" >
+ <double>12500.000000000000000</double>
</property>
- <item>
- <widget class="QLineEdit" name="endrms_linedit" >
- <property name="toolTip" >
- <string>Target RMS force (pN)</string>
- </property>
- <property name="text" >
- <string>1.0</string>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QLineEdit" name="endmax_linedit" >
- <property name="toolTip" >
- <string>Target max force (pN)</string>
- </property>
- <property name="text" >
- <string/>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QLineEdit" name="cutoverrms_linedit" >
- <property name="toolTip" >
- <string>Cutover RMS foce (pN)</string>
- </property>
- <property name="text" >
- <string/>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QLineEdit" name="cutovermax_linedit" >
- <property name="toolTip" >
- <string>Cutover max force (pN)</string>
- </property>
- <property name="text" >
- <string/>
- </property>
- </widget>
- </item>
- </layout>
+ <property name="value" >
+ <double>0.000000000000000</double>
+ </property>
+ </widget>
</item>
<item>
- <spacer>
- <property name="orientation" >
- <enum>Qt::Horizontal</enum>
+ <widget class="QDoubleSpinBox" name="cutoverMaxDoubleSpinBox" >
+ <property name="sizePolicy" >
+ <sizepolicy>
+ <hsizetype>3</hsizetype>
+ <vsizetype>0</vsizetype>
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
</property>
- <property name="sizeType" >
- <enum>QSizePolicy::Expanding</enum>
+ <property name="suffix" >
+ <string> pN</string>
</property>
- <property name="sizeHint" >
- <size>
- <width>40</width>
- <height>1</height>
- </size>
+ <property name="decimals" >
+ <number>2</number>
</property>
- </spacer>
+ <property name="maximum" >
+ <double>60001.000000000000000</double>
+ </property>
+ <property name="value" >
+ <double>0.000000000000000</double>
+ </property>
+ </widget>
</item>
</layout>
</item>
+ <item>
+ <spacer>
+ <property name="orientation" >
+ <enum>Qt::Horizontal</enum>
+ </property>
+ <property name="sizeType" >
+ <enum>QSizePolicy::MinimumExpanding</enum>
+ </property>
+ <property name="sizeHint" >
+ <size>
+ <width>80</width>
+ <height>20</height>
+ </size>
+ </property>
+ </spacer>
+ </item>
</layout>
</widget>
</item>
- <item>
- <widget class="QGroupBox" name="buttonGroup8_2" >
+ <item row="3" column="0" >
+ <widget class="QGroupBox" name="buttonGroup8" >
<property name="title" >
- <string/>
+ <string>Minimize Options</string>
</property>
<layout class="QVBoxLayout" >
<property name="margin" >
<number>4</number>
</property>
<property name="spacing" >
- <number>1</number>
+ <number>2</number>
</property>
<item>
- <layout class="QHBoxLayout" >
- <property name="margin" >
- <number>0</number>
+ <widget class="QRadioButton" name="minimize_all_rbtn" >
+ <property name="toolTip" >
+ <string>Perform energy minimization on all the atoms in the workspace</string>
</property>
- <property name="spacing" >
- <number>6</number>
+ <property name="text" >
+ <string>Minimize all</string>
</property>
- <item>
- <widget class="QLabel" name="min_options_label_4" >
- <property name="text" >
- <string>Minimize Engine</string>
- </property>
- </widget>
- </item>
- <item>
- <spacer>
- <property name="orientation" >
- <enum>Qt::Horizontal</enum>
- </property>
- <property name="sizeType" >
- <enum>QSizePolicy::Expanding</enum>
- </property>
- <property name="sizeHint" >
- <size>
- <width>21</width>
- <height>16</height>
- </size>
- </property>
- </spacer>
- </item>
- <item>
- <widget class="QPushButton" name="grpbtn_4" >
- <property name="sizePolicy" >
- <sizepolicy>
- <hsizetype>0</hsizetype>
- <vsizetype>0</vsizetype>
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <property name="maximumSize" >
- <size>
- <width>16</width>
- <height>16</height>
- </size>
- </property>
- <property name="text" >
- <string/>
- </property>
- <property name="icon" >
- <iconset>../../../../:icons/MinimizeEnergyPropDialog_image6</iconset>
- </property>
- <property name="autoDefault" >
- <bool>false</bool>
- </property>
- <property name="default" >
- <bool>false</bool>
- </property>
- <property name="flat" >
- <bool>true</bool>
- </property>
- </widget>
- </item>
- </layout>
+ <property name="checked" >
+ <bool>true</bool>
+ </property>
+ </widget>
</item>
<item>
- <widget class="Line" name="line4" >
- <property name="frameShape" >
- <enum>QFrame::HLine</enum>
+ <widget class="QRadioButton" name="minimize_sel_rbtn" >
+ <property name="toolTip" >
+ <string>Perform energy minimization on only the atoms that have been selected</string>
</property>
- <property name="frameShadow" >
- <enum>QFrame::Sunken</enum>
+ <property name="text" >
+ <string>Minimize selection</string>
</property>
- <property name="midLineWidth" >
- <number>0</number>
+ </widget>
+ </item>
+ <item>
+ <widget class="QCheckBox" name="electrostaticsForDnaDuringMinimize_checkBox" >
+ <property name="text" >
+ <string>Electrostatics for DNA reduced model</string>
</property>
- <property name="orientation" >
- <enum>Qt::Horizontal</enum>
+ <property name="checked" >
+ <bool>true</bool>
</property>
</widget>
</item>
<item>
+ <widget class="QCheckBox" name="enableNeighborSearching_check_box" >
+ <property name="text" >
+ <string>Enable neighbor searching (slow but accurate)</string>
+ </property>
+ <property name="checked" >
+ <bool>true</bool>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ </item>
+ <item row="2" column="0" >
+ <widget class="QGroupBox" name="buttonGroup8_2" >
+ <property name="title" >
+ <string>Minimize physics engine</string>
+ </property>
+ <layout class="QVBoxLayout" >
+ <property name="margin" >
+ <number>4</number>
+ </property>
+ <property name="spacing" >
+ <number>4</number>
+ </property>
+ <item>
<widget class="QComboBox" name="minimize_engine_combobox" >
<property name="toolTip" >
<string>Choose the simulation engine with which to minimize energy.</string>
@@ -920,26 +484,187 @@
</layout>
</widget>
</item>
+ <item row="1" column="0" >
+ <layout class="QHBoxLayout" >
+ <property name="margin" >
+ <number>0</number>
+ </property>
+ <property name="spacing" >
+ <number>6</number>
+ </property>
+ <item>
+ <spacer>
+ <property name="orientation" >
+ <enum>Qt::Horizontal</enum>
+ </property>
+ <property name="sizeType" >
+ <enum>QSizePolicy::Expanding</enum>
+ </property>
+ <property name="sizeHint" >
+ <size>
+ <width>35</width>
+ <height>20</height>
+ </size>
+ </property>
+ </spacer>
+ </item>
+ <item>
+ <widget class="QToolButton" name="done_btn" >
+ <property name="toolTip" >
+ <string>OK</string>
+ </property>
+ <property name="text" >
+ <string/>
+ </property>
+ <property name="icon" >
+ <iconset>../../../../:icons/MinimizeEnergyPropDialog_image2</iconset>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QToolButton" name="abort_btn" >
+ <property name="toolTip" >
+ <string>Cancel</string>
+ </property>
+ <property name="text" >
+ <string/>
+ </property>
+ <property name="icon" >
+ <iconset>../../../../:icons/MinimizeEnergyPropDialog_image3</iconset>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QToolButton" name="restore_btn" >
+ <property name="toolTip" >
+ <string>Restore Defaults</string>
+ </property>
+ <property name="text" >
+ <string/>
+ </property>
+ <property name="icon" >
+ <iconset>../../../../:icons/MinimizeEnergyPropDialog_image4</iconset>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QToolButton" name="whatsthis_btn" >
+ <property name="toolTip" >
+ <string>What's This Help</string>
+ </property>
+ <property name="text" >
+ <string/>
+ </property>
+ <property name="icon" >
+ <iconset>../../../../:icons/MinimizeEnergyPropDialog_image5</iconset>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <spacer>
+ <property name="orientation" >
+ <enum>Qt::Horizontal</enum>
+ </property>
+ <property name="sizeType" >
+ <enum>QSizePolicy::Expanding</enum>
+ </property>
+ <property name="sizeHint" >
+ <size>
+ <width>35</width>
+ <height>20</height>
+ </size>
+ </property>
+ </spacer>
+ </item>
+ </layout>
+ </item>
+ <item row="0" column="0" >
+ <widget class="QPushButton" name="sponsor_btn" >
+ <property name="text" >
+ <string/>
+ </property>
+ <property name="icon" >
+ <iconset/>
+ </property>
+ <property name="autoDefault" >
+ <bool>false</bool>
+ </property>
+ <property name="flat" >
+ <bool>true</bool>
+ </property>
+ </widget>
+ </item>
</layout>
</widget>
</item>
- <item>
- <spacer>
- <property name="orientation" >
- <enum>Qt::Vertical</enum>
- </property>
- <property name="sizeType" >
- <enum>QSizePolicy::Expanding</enum>
+ <item row="0" column="0" >
+ <widget class="QFrame" name="heading_frame" >
+ <property name="frameShape" >
+ <enum>QFrame::NoFrame</enum>
</property>
- <property name="sizeHint" >
- <size>
- <width>245</width>
- <height>16</height>
- </size>
+ <property name="frameShadow" >
+ <enum>QFrame::Plain</enum>
</property>
- </spacer>
+ <widget class="QLabel" name="heading_pixmap" >
+ <property name="geometry" >
+ <rect>
+ <x>0</x>
+ <y>8</y>
+ <width>16</width>
+ <height>16</height>
+ </rect>
+ </property>
+ <property name="sizePolicy" >
+ <sizepolicy>
+ <hsizetype>0</hsizetype>
+ <vsizetype>0</vsizetype>
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="text" >
+ <string/>
+ </property>
+ <property name="pixmap" >
+ <pixmap/>
+ </property>
+ <property name="scaledContents" >
+ <bool>true</bool>
+ </property>
+ <property name="alignment" >
+ <set>Qt::AlignVCenter</set>
+ </property>
+ </widget>
+ <widget class="QLabel" name="heading_label" >
+ <property name="geometry" >
+ <rect>
+ <x>3</x>
+ <y>0</y>
+ <width>267</width>
+ <height>21</height>
+ </rect>
+ </property>
+ <property name="font" >
+ <font>
+ <family>Sans Serif</family>
+ <pointsize>12</pointsize>
+ <weight>75</weight>
+ <italic>false</italic>
+ <bold>true</bold>
+ <underline>false</underline>
+ <strikeout>false</strikeout>
+ </font>
+ </property>
+ <property name="text" >
+ <string>Minimize Energy</string>
+ </property>
+ <property name="alignment" >
+ <set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop</set>
+ </property>
+ </widget>
+ </widget>
</item>
- <item>
+ <item row="3" column="0" >
<layout class="QHBoxLayout" >
<property name="margin" >
<number>4</number>
@@ -995,22 +720,5 @@
</widget>
<layoutdefault spacing="6" margin="11" />
<resources/>
- <connections>
- <connection>
- <sender>watch_minimization_checkbox</sender>
- <signal>toggled(bool)</signal>
- <receiver>update_btngrp</receiver>
- <slot>setEnabled(bool)</slot>
- <hints>
- <hint type="sourcelabel" >
- <x>20</x>
- <y>20</y>
- </hint>
- <hint type="destinationlabel" >
- <x>20</x>
- <y>20</y>
- </hint>
- </hints>
- </connection>
- </connections>
+ <connections/>
</ui>
diff --git a/cad/src/commands/MinimizeEnergy/WhatsThisText_for_MinimizeEnergyDialog.py b/cad/src/commands/MinimizeEnergy/WhatsThisText_for_MinimizeEnergyDialog.py
new file mode 100644
index 000000000..7a8c4dcbf
--- /dev/null
+++ b/cad/src/commands/MinimizeEnergy/WhatsThisText_for_MinimizeEnergyDialog.py
@@ -0,0 +1,143 @@
+# Copyright 2007 Nanorex, Inc. See LICENSE file for details.
+"""
+whatsThis_for_MinimizeEnergyDialog.py
+
+This file provides functions for setting the "What's This" and tooltip text
+for widgets in the NE1 Minimize Energy dialog only.
+
+Edit WhatsThisText_for_MainWindow.py to set "What's This" and tooltip text
+for widgets in the Main Window.
+
+@version: $Id$
+@copyright: 2008 Nanorex, Inc. See LICENSE file for details.
+
+"""
+
+def whatsThis_MinimizeEnergyDialog(minimizeEnergyDialog):
+ """
+ Assigning the I{What's This} text for the Minimize Energy dialog.
+ """
+
+ _med = minimizeEnergyDialog
+
+ _med.update_every_rbtn.setWhatsThis(
+ """<b>Update every <i>n units.</u></b>
+ <p>
+ Specify how often to update the model during the adjustment.
+ This allows the user to monitor results during adjustments.
+ </p>""")
+ _med.update_asap_rbtn.setWhatsThis(
+ """<b>Update as fast as possible</b>
+ <p>
+ Update every 2 seconds, or faster (up to 20x/sec) if it doesn't
+ slow adjustments by more than 20%
+ </p>""")
+ _text = \
+ """<b>EndRMS</b>
+ <p>
+ Continue until this RMS force is reached.
+ </p>"""
+ _med.endrms_lbl.setWhatsThis(_text)
+ _med.endRmsDoubleSpinBox.setWhatsThis(_text)
+ _text = \
+ """<b>EndMax</b>
+ <p>
+ Continue until no interaction exceeds this force.
+ </p>"""
+ _med.endmax_lbl.setWhatsThis(_text)
+ _med.endMaxDoubleSpinBox.setWhatsThis(_text)
+
+ _text = \
+ """<b>CutoverMax</b>
+ <p>Use steepest descent until no interaction exceeds this force.
+ </p>"""
+ _med.cutovermax_lbl.setWhatsThis(_text)
+ _med.cutoverMaxDoubleSpinBox.setWhatsThis(_text)
+
+ _text = \
+ """<b>CutoverRMS</b>
+ <p>
+ Use steepest descent until this RMS force is reached.
+ </p>"""
+ _med.cutoverRmsDoubleSpinBox.setWhatsThis(_text)
+ _med.cutoverrms_lbl.setWhatsThis(_text)
+
+ _med.sponsor_btn.setWhatsThis(
+ """<b>NanoEngineer-1 Sponsor</b>
+ <p>
+ Click on the logo to learn more
+ about this NanoEngineer-1 sponsor.
+ </p>""")
+ _med.minimize_all_rbtn.setWhatsThis(
+ """<b>Minimize All</b>
+ <p>Perform energy minimization on all the atoms in the workspace.
+ </p>""")
+ _med.minimize_sel_rbtn.setWhatsThis(
+ """<b>Minimize Selection</b>
+ <p>
+ Perform energy minimization on the atoms that are currently selected.
+ </p>""")
+ _med.watch_minimize_groupbox.setWhatsThis(
+ """<b>Watch Motion In Real Time</b>
+ <p>
+ Enables real time graphical updates during minimization runs.
+ """)
+ _med.update_asap_rbtn.setWhatsThis(
+ """<b>Update as fast as possible</b>
+ <p>
+ Update every 2 seconds, or faster (up to 20x/sec) if it doesn't slow
+ minimization by more than 20%.
+ </p>""")
+ _med.update_every_rbtn.setWhatsThis(
+ """<b>Update every <i>n units.</u></b>
+ <p>
+ Specify how often to update the model during the minimization.
+ This allows the user to monitor minimization results while the
+ minimization is running.
+ </p>""")
+ _med.update_number_spinbox.setWhatsThis(
+ """<b>Update every <i>n units.</u></b>
+ <p>
+ Specify how often to update the model during the minimization.
+ This allows the user to monitor minimization results while the
+ minimization is running.
+ </p>""")
+ _med.update_units_combobox.setWhatsThis(
+ """<b>Update every <i>n units.</u></b>
+ <p>
+ Specify how often to update the model during the minimization.
+ This allows the user to monitor minimization results while the
+ minimization is running.</p>""")
+ _med.cancel_btn.setWhatsThis(
+ """<b>Cancel</b>
+ <p>
+ Dismiss this dialog without taking any action.
+ </p>""")
+ _med.ok_btn.setWhatsThis(
+ """<b>Minimize Energy</b>
+ <p>
+ Using the parameters specified above perform energy minimization on
+ some or all of the atoms.
+ </p>""")
+ _med.setWhatsThis("""<u><b>Minimize Energy</b></u>
+ <p>
+ The potential energy of a chemical structure is a function of the
+ relative positions of its atoms. To obtain this energy with complete
+ accuracy involves a lot of computer time spent on quantum mechanical
+ calculations, which cannot be practically done on a desktop computer.
+ To get an approximate potential energy without all that, we represent
+ the energy as a series of terms involving geometric properties
+ of the structure: lengths of chemical bonds, angles between pairs and
+ triples of chemical bonds, etc. </p>
+ <p>
+ As is generally the case with physical systems, the gradient of the
+ potential energy represents the forces acting on various particles. The
+ atoms want to move in the direction that most reduces the potential
+ energy. Energy minimization is a process of adjusting the atom
+ positions to try to find a global minimum of the potential energy.
+ Each atom contributes three variables (its x, y, and z coordinates)
+ so the search space is multi-dimensional. The global minimum is the
+ configuration that the atoms will settle into if lowered to zero Kelvin.
+ </p>""")
+
+ return