[Avida-cvs] [Avida2-svn] r66 - trunk/source/python/AvidaGui2
baerb at myxo.css.msu.edu
baerb at myxo.css.msu.edu
Mon Mar 21 14:38:26 PST 2005
Author: baerb
Date: 2005-03-21 17:38:26 -0500 (Mon, 21 Mar 2005)
New Revision: 66
Modified:
trunk/source/python/AvidaGui2/pyEduWorkspaceCtrl.py
trunk/source/python/AvidaGui2/pyFreezerCtrl.py
trunk/source/python/AvidaGui2/pyPetriConfigureCtrl.py
trunk/source/python/AvidaGui2/pySessionCtrl.py
trunk/source/python/AvidaGui2/pySessionDumbCtrl.py
Log:
Fixed problems with listing the Freezer inventory when changing directory or
freezing a petri dish
Program now uses the unique temporary directory to save input/output files.
Modified: trunk/source/python/AvidaGui2/pyEduWorkspaceCtrl.py
===================================================================
--- trunk/source/python/AvidaGui2/pyEduWorkspaceCtrl.py 2005-03-21 17:22:48 UTC (rev 65)
+++ trunk/source/python/AvidaGui2/pyEduWorkspaceCtrl.py 2005-03-21 22:38:26 UTC (rev 66)
@@ -109,13 +109,12 @@
def freezerOpen(self):
freezer_dir = QFileDialog.getExistingDirectory(
- self.m_session_mdl.current_freezer,
+ self.m_session_mdl.m_current_freezer,
None,
"get existing directory",
"Choose a directory",
True);
- print freezer_dir;
- self.m_session_mdl.current_freezer = str(freezer_dir) + "/"
+ self.m_session_mdl.m_current_freezer = str(freezer_dir) + "/"
self.m_session_mdl.m_session_mdtr.emit(
PYSIGNAL("doRefreshFreezerInventory"), ())
Modified: trunk/source/python/AvidaGui2/pyFreezerCtrl.py
===================================================================
--- trunk/source/python/AvidaGui2/pyFreezerCtrl.py 2005-03-21 17:22:48 UTC (rev 65)
+++ trunk/source/python/AvidaGui2/pyFreezerCtrl.py 2005-03-21 22:38:26 UTC (rev 66)
@@ -27,13 +27,23 @@
def createFreezerIndexSlot(self):
empty_item = self.m_list_view.firstChild()
-# if empty_item.firstChild():
-# print empty_item.firstChild().text(0)
+ while empty_item.firstChild():
+ tmp_child = empty_item.firstChild()
+ empty_item.takeItem(tmp_child)
+ del (tmp_child)
full_item = empty_item.nextSibling()
+ while full_item.firstChild():
+ tmp_child = full_item.firstChild()
+ full_item.takeItem(tmp_child)
+ del (tmp_child)
organism_item = full_item.nextSibling()
- if os.path.exists(self.m_session_mdl.current_freezer) == False:
- os.mkdir(self.m_session_mdl.current_freezer)
- freezer_dir = os.listdir(self.m_session_mdl.current_freezer)
+ while organism_item.firstChild():
+ tmp_child = organism_item.firstChild()
+ organism_item.takeItem(tmp_child)
+ del (tmp_child)
+ if os.path.exists(self.m_session_mdl.m_current_freezer) == False:
+ os.mkdir(self.m_session_mdl.m_current_freezer)
+ freezer_dir = os.listdir(self.m_session_mdl.m_current_freezer)
for file in freezer_dir:
if file.endswith(".empty"):
dish_name = file[:-6]
@@ -67,7 +77,7 @@
file_name = str(item.text(0)) + ".full/petri_dish"
elif str(top_level.text(0)).startswith(" Organism"):
file_name = str(item.text(0)) + ".organism"
- file_name = self.m_session_mdl.current_freezer + file_name
+ file_name = self.m_session_mdl.m_current_freezer + file_name
thawed_item = pyReadFreezer(file_name)
self.m_session_mdl.m_session_mdtr.emit(PYSIGNAL("doDefrostDishSig"),
(thawed_item,))
Modified: trunk/source/python/AvidaGui2/pyPetriConfigureCtrl.py
===================================================================
--- trunk/source/python/AvidaGui2/pyPetriConfigureCtrl.py 2005-03-21 17:22:48 UTC (rev 65)
+++ trunk/source/python/AvidaGui2/pyPetriConfigureCtrl.py 2005-03-21 22:38:26 UTC (rev 66)
@@ -91,7 +91,6 @@
def FillDishSlot(self, petri_dict):
self.full_petri_dict = petri_dict.dictionary
- print "in FillDishSlot keys = " + str(self.full_petri_dict.keys())
settings_dict = petri_dict.dictionary["SETTINGS"]
self.AncestorComboBox.removeItem (0)
start_creature = settings_dict["START_CREATURE"]
@@ -167,10 +166,10 @@
def CreateFilesFromPetriSlot(self, out_dir = None):
self.full_petri_dict["SETTINGS"] = self.Form2Dictionary()
- print "in CreateFilesFromPetriSlot keys = " + str(self.full_petri_dict.keys())
- write_object = pyWriteGenesis(self.full_petri_dict, self.m_session_mdl.current_freezer, "test/")
+ write_object = pyWriteGenesis(self.full_petri_dict,
+ self.m_session_mdl.m_current_freezer, self.m_session_mdl.m_tempdir)
self.m_session_mdl.m_session_mdtr.emit(
- PYSIGNAL("doInitializeAvidaPhaseIISig"), ("test/genesis.avida",))
+ PYSIGNAL("doInitializeAvidaPhaseIISig"), (self.m_session_mdl.m_tempdir + "genesis.avida",))
def Form2Dictionary(self):
settings_dict = {}
@@ -203,13 +202,17 @@
return settings_dict
def FreezePetriSlot(self, freeze_dir = None, population_dict = None):
+ tmp_dict = {}
tmp_dict["SETTINGS"] = self.Form2Dictionary()
m_pop_up_freezer_file_name = pyFreezeDialogCtrl()
- file_name = m_pop_up_freezer_file_name.showDialog(self.m_session_mdl.current_freezer)
+ file_name = m_pop_up_freezer_file_name.showDialog(self.m_session_mdl.m_current_freezer)
if (m_pop_up_freezer_file_name.isEmpty() == False):
os.mkdir(file_name)
file_name = file_name + "/petri_dish"
tmp_dict["POPULATION"] = population_dict
is_empty_dish = m_pop_up_freezer_file_name.EmptyRadioButton.isChecked()
freezer_file = pyWriteToFreezer(tmp_dict, is_empty_dish, file_name)
+ self.m_session_mdl.m_session_mdtr.emit(
+ PYSIGNAL("doRefreshFreezerInventory"), ())
+
\ No newline at end of file
Modified: trunk/source/python/AvidaGui2/pySessionCtrl.py
===================================================================
--- trunk/source/python/AvidaGui2/pySessionCtrl.py 2005-03-21 17:22:48 UTC (rev 65)
+++ trunk/source/python/AvidaGui2/pySessionCtrl.py 2005-03-21 22:38:26 UTC (rev 66)
@@ -40,10 +40,10 @@
# Create "model" for storing state data.
class pyMdl: pass
self.m_session_mdl = pyMdl()
- self.m_session_mdl.current_freezer = "freezer/"
+ self.m_session_mdl.m_current_freezer = "freezer/"
# Create a temporary subdirectory for general use in this session.
- self.m_session_mdl.m_tempdir = tempfile.mkdtemp('-pid%d'%os.getpid(),'AvidaEd-')
+ self.m_session_mdl.m_tempdir = tempfile.mkdtemp('-pid%d'%os.getpid(),'AvidaEd-') + "/"
# Create session mediator.
self.m_session_mdl.m_session_mdtr = pyMdtr()
Modified: trunk/source/python/AvidaGui2/pySessionDumbCtrl.py
===================================================================
--- trunk/source/python/AvidaGui2/pySessionDumbCtrl.py 2005-03-21 17:22:48 UTC (rev 65)
+++ trunk/source/python/AvidaGui2/pySessionDumbCtrl.py 2005-03-21 22:38:26 UTC (rev 66)
@@ -157,7 +157,8 @@
def doStart(self):
if self.sessionInitialized == False:
self.m_session_mdl.m_session_mdtr.emit(
- PYSIGNAL("doInitializeAvidaPhaseISig"), ("test/",))
+ PYSIGNAL("doInitializeAvidaPhaseISig"),
+ (self.m_session_mdl.m_tempdir,))
self.sessionInitialized = True
self.m_should_update = True
self.m_startpause_avida_pb.setText(self.m_pause_pb_text)
More information about the Avida-cvs
mailing list