[Avida-cvs] [Avida2-svn] r65 - trunk/source/python/AvidaGui2
baerb at myxo.css.msu.edu
baerb at myxo.css.msu.edu
Mon Mar 21 09:22:48 PST 2005
Author: baerb
Date: 2005-03-21 12:22:48 -0500 (Mon, 21 Mar 2005)
New Revision: 65
Modified:
trunk/source/python/AvidaGui2/pyEduWorkspaceCtrl.py
trunk/source/python/AvidaGui2/pyEduWorkspaceView.ui
trunk/source/python/AvidaGui2/pyFreezerCtrl.py
trunk/source/python/AvidaGui2/pyPetriConfigureCtrl.py
trunk/source/python/AvidaGui2/pySessionCtrl.py
Log:
Allow user to chose a new freezer from the file menu. Does not correctly clean
old freezer intem names from the freezer list.
Modified: trunk/source/python/AvidaGui2/pyEduWorkspaceCtrl.py
===================================================================
--- trunk/source/python/AvidaGui2/pyEduWorkspaceCtrl.py 2005-03-21 16:25:51 UTC (rev 64)
+++ trunk/source/python/AvidaGui2/pyEduWorkspaceCtrl.py 2005-03-21 17:22:48 UTC (rev 65)
@@ -52,6 +52,7 @@
self.connect(self.m_nav_bar_ctrl.m_list_view, SIGNAL("clicked(QListViewItem *)"), self.navBarItemClickedSlot)
self.connect(self.m_widget_stack, SIGNAL("aboutToShow(QWidget *)"), self.ctrlAboutToShowSlot)
+ self.connect(self.fileOpenFreezerAction,SIGNAL("activated()"),self.freezerOpen)
self.m_nav_bar_ctrl.m_one_population_cli.setState(QCheckListItem.On)
self.m_widget_stack.raiseWidget(self.m_one_population_ctrl)
@@ -65,7 +66,11 @@
del self.m_ctrl_to_cli_dict[key]
def navBarItemClickedSlot(self, item):
+ print "called navBarItemClickedSlot"
if item:
+ print "item true"
+ print item
+ dir (item)
if self.m_cli_to_ctrl_dict.has_key(item):
self.m_widget_stack.raiseWidget(self.m_cli_to_ctrl_dict[item])
@@ -102,6 +107,20 @@
# public slot
+ def freezerOpen(self):
+ freezer_dir = QFileDialog.getExistingDirectory(
+ self.m_session_mdl.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_session_mdtr.emit(
+ PYSIGNAL("doRefreshFreezerInventory"), ())
+
+ # public slot
+
def fileSave(self):
print "pyEduWorkspaceCtrl.fileSave(): Not implemented yet"
Modified: trunk/source/python/AvidaGui2/pyEduWorkspaceView.ui
===================================================================
--- trunk/source/python/AvidaGui2/pyEduWorkspaceView.ui 2005-03-21 16:25:51 UTC (rev 64)
+++ trunk/source/python/AvidaGui2/pyEduWorkspaceView.ui 2005-03-21 17:22:48 UTC (rev 65)
@@ -90,6 +90,7 @@
<action name="fileNewAction"/>
<action name="fileOpenAction"/>
<action name="fileClose_WorkspaceAction"/>
+ <action name="fileOpenFreezerAction"/>
<separator/>
<action name="fileSaveAction"/>
<action name="fileSaveAsAction"/>
@@ -125,6 +126,10 @@
<separator/>
<action name="helpAboutAction"/>
</item>
+ <item text="new menu" name="new_menu">
+ </item>
+ <item text="new menu" name="new_menu_2">
+ </item>
</menubar>
<toolbars>
</toolbars>
@@ -533,6 +538,14 @@
<string>Minimize Window</string>
</property>
</action>
+ <action>
+ <property name="name">
+ <cstring>fileOpenFreezerAction</cstring>
+ </property>
+ <property name="text">
+ <string>Open Freezer</string>
+ </property>
+ </action>
</actions>
<images>
<image name="image0">
Modified: trunk/source/python/AvidaGui2/pyFreezerCtrl.py
===================================================================
--- trunk/source/python/AvidaGui2/pyFreezerCtrl.py 2005-03-21 16:25:51 UTC (rev 64)
+++ trunk/source/python/AvidaGui2/pyFreezerCtrl.py 2005-03-21 17:22:48 UTC (rev 65)
@@ -20,12 +20,20 @@
def construct(self, session_mdl):
self.m_session_mdl = session_mdl
+ self.connect(self.m_session_mdl.m_session_mdtr,
+ PYSIGNAL("doRefreshFreezerInventory"),
+ self.createFreezerIndexSlot)
+ self.createFreezerIndexSlot()
+
+ def createFreezerIndexSlot(self):
empty_item = self.m_list_view.firstChild()
+# if empty_item.firstChild():
+# print empty_item.firstChild().text(0)
full_item = empty_item.nextSibling()
organism_item = full_item.nextSibling()
- if os.path.exists("freezer") == False:
- os.mkdir("freezer")
- freezer_dir = os.listdir("freezer")
+ 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)
for file in freezer_dir:
if file.endswith(".empty"):
dish_name = file[:-6]
@@ -59,7 +67,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 = "freezer/" + file_name
+ file_name = self.m_session_mdl.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 16:25:51 UTC (rev 64)
+++ trunk/source/python/AvidaGui2/pyPetriConfigureCtrl.py 2005-03-21 17:22:48 UTC (rev 65)
@@ -168,7 +168,7 @@
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, "freezer/", "test/")
+ write_object = pyWriteGenesis(self.full_petri_dict, self.m_session_mdl.current_freezer, "test/")
self.m_session_mdl.m_session_mdtr.emit(
PYSIGNAL("doInitializeAvidaPhaseIISig"), ("test/genesis.avida",))
@@ -205,7 +205,7 @@
def FreezePetriSlot(self, freeze_dir = None, population_dict = None):
tmp_dict["SETTINGS"] = self.Form2Dictionary()
m_pop_up_freezer_file_name = pyFreezeDialogCtrl()
- file_name = m_pop_up_freezer_file_name.showDialog("freezer/")
+ file_name = m_pop_up_freezer_file_name.showDialog(self.m_session_mdl.current_freezer)
if (m_pop_up_freezer_file_name.isEmpty() == False):
os.mkdir(file_name)
file_name = file_name + "/petri_dish"
Modified: trunk/source/python/AvidaGui2/pySessionCtrl.py
===================================================================
--- trunk/source/python/AvidaGui2/pySessionCtrl.py 2005-03-21 16:25:51 UTC (rev 64)
+++ trunk/source/python/AvidaGui2/pySessionCtrl.py 2005-03-21 17:22:48 UTC (rev 65)
@@ -40,6 +40,7 @@
# Create "model" for storing state data.
class pyMdl: pass
self.m_session_mdl = pyMdl()
+ self.m_session_mdl.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-')
More information about the Avida-cvs
mailing list