[Avida-SVN] r1070 - branches/developers/avida-edward/source/python/AvidaGui2
avidaedward at myxo.css.msu.edu
avidaedward at myxo.css.msu.edu
Thu Nov 2 13:54:33 PST 2006
Author: avidaedward
Date: 2006-11-02 16:54:33 -0500 (Thu, 02 Nov 2006)
New Revision: 1070
Modified:
branches/developers/avida-edward/source/python/AvidaGui2/pyOneOrganismCtrl.py
branches/developers/avida-edward/source/python/AvidaGui2/pyOrganismConfigureCtrl.py
branches/developers/avida-edward/source/python/AvidaGui2/pyOrganismScopeCtrl.py
Log:
Organism viewer: after change in configuration, re-analyze organism upon
"flip to viewer".
Modified: branches/developers/avida-edward/source/python/AvidaGui2/pyOneOrganismCtrl.py
===================================================================
--- branches/developers/avida-edward/source/python/AvidaGui2/pyOneOrganismCtrl.py 2006-11-02 18:54:41 UTC (rev 1069)
+++ branches/developers/avida-edward/source/python/AvidaGui2/pyOneOrganismCtrl.py 2006-11-02 21:54:33 UTC (rev 1070)
@@ -22,6 +22,8 @@
self.ToggleScopeSlot)
self.m_organism_configure_ctrl.SetRandomGeneratedRadioButton(True);
+ self.m_organism_configure_ctrl.ChangeMutationSliderSlot();
+ self.m_organism_configure_ctrl.setAnalysisNeeded(False)
def aboutToBeLowered(self):
"""does nothing yet."""
@@ -46,4 +48,7 @@
self.m_flip_button_text_label.setText("<p align=\"right\">Flip to<br>Settings</p>")
QToolTip.remove(self.m_organism_scope_toggle)
QToolTip.add(self.m_organism_scope_toggle,"Flip to see <b><i>Organism Viewer Settings</i></b>")
+ if self.m_organism_configure_ctrl.isAnalysisNeeded():
+ self.m_one_org_scope_ctrl.m_organism_scope_ctrl.analyzeLoadedOrganism()
+ self.m_organism_configure_ctrl.setAnalysisNeeded(False)
Modified: branches/developers/avida-edward/source/python/AvidaGui2/pyOrganismConfigureCtrl.py
===================================================================
--- branches/developers/avida-edward/source/python/AvidaGui2/pyOrganismConfigureCtrl.py 2006-11-02 18:54:41 UTC (rev 1069)
+++ branches/developers/avida-edward/source/python/AvidaGui2/pyOrganismConfigureCtrl.py 2006-11-02 21:54:33 UTC (rev 1070)
@@ -8,6 +8,14 @@
def __init__(self, parent = None, name = None, fl = 0):
pyOrganismConfigureView.__init__(self, parent, name, fl)
+ self.setAnalysisNeeded(False)
+
+ def setAnalysisNeeded(self, is_analysis_needed):
+ self.m_is_analysis_needed = is_analysis_needed
+
+ def isAnalysisNeeded(self):
+ return self.m_is_analysis_needed
+
def construct(self, session_mdl):
self.m_session_mdl = session_mdl
@@ -77,6 +85,9 @@
self.m_mutation_rate_lineedit.setText(slide_value_txt)
self.m_session_mdl.m_session_mdtr.emit(PYSIGNAL("ScopeConfig_MutationSliderValueChangedSig"),(slide_value,))
+ self.setAnalysisNeeded(True)
+
+
# When the user changes the mutation slider (which has a log scale) change the
# text next to it (which is liner). Must check if the text entered is a
# valid real number
@@ -116,9 +127,11 @@
self.m_mutation_slider.setValue(-30000)
self.m_session_mdl.m_session_mdtr.emit(PYSIGNAL("ScopeConfig_MutationSliderValueChangedSig"),(mutValue,))
+ self.setAnalysisNeeded(True)
def SetRandomGeneratedRadioButton(self, is_down):
self.RandomGeneratedRadioButton.setDown(is_down);
def ChangeRandomGeneratedRadioButtonSlot(self, value):
+ self.setAnalysisNeeded(True)
self.m_session_mdl.m_session_mdtr.emit(PYSIGNAL("ScopeConfig_RandomSeedSig"),(value,))
Modified: branches/developers/avida-edward/source/python/AvidaGui2/pyOrganismScopeCtrl.py
===================================================================
--- branches/developers/avida-edward/source/python/AvidaGui2/pyOrganismScopeCtrl.py 2006-11-02 18:54:41 UTC (rev 1069)
+++ branches/developers/avida-edward/source/python/AvidaGui2/pyOrganismScopeCtrl.py 2006-11-02 21:54:33 UTC (rev 1070)
@@ -25,6 +25,7 @@
self.m_test_cpu_mutation_rate = 0.0
self.m_seed_based_on_time = True
+ self.m_debug_organism_file = None
def construct(self, session_mdl):
print "pyOrganismScopeCtrl.construct()."
@@ -33,7 +34,7 @@
self.setAcceptDrops(1)
self.connect(self.m_session_mdl.m_session_mdtr, PYSIGNAL("setAvidaSig"), self.setAvidaSlot)
- self.connect(self.m_session_mdl.m_session_mdtr, PYSIGNAL("setDebugOrganismFileSig"), self.setDebugOrganismFileSlot)
+ #self.connect(self.m_session_mdl.m_session_mdtr, PYSIGNAL("setDebugOrganismFileSig"), self.setDebugOrganismFileSlot)
self.connect(self.m_session_mdl.m_session_mdtr, PYSIGNAL("ScopeConfig_MutationSliderValueChangedSig"),
self.MutationSliderValueChangedSlot)
@@ -105,7 +106,9 @@
else:
if freezer_item_name.endswith('.organism'):
e.accept()
- self.m_session_mdl.m_session_mdtr.emit(PYSIGNAL("setDebugOrganismFileSig"), (freezer_item_name,))
+ #self.m_session_mdl.m_session_mdtr.emit(PYSIGNAL("setDebugOrganismFileSig"), (freezer_item_name,))
+ self.setDebugOrganismFile(freezer_item_name)
+ self.analyzeLoadedOrganism()
else:
info("Only organisms can be dragged here")
@@ -117,8 +120,18 @@
print "pyOrganismScopeCtrl.setAvidaSlot() deleting old_avida ..."
del old_avida
- def setDebugOrganismFileSlot(self, organism_filename):
- print "pyOrganismScopeCtrl.setDebugOrganismFileSlot"
+ def setDebugOrganismFile(self, organism_filename):
+ self.m_debug_organism_file = organism_filename
+
+
+ def analyzeLoadedOrganism(self):
+ organism_filename = self.m_debug_organism_file
+ descr(organism_filename)
+
+ # early exit if there's not organism to analyze
+ if organism_filename is None:
+ return
+
if self.m_avida:
self.setFrames()
More information about the Avida-cvs
mailing list