[Avida-SVN] r1670 - branches/developers/avida-edward/source/python/AvidaGui2
baerb at myxo.css.msu.edu
baerb at myxo.css.msu.edu
Tue Jun 12 08:58:26 PDT 2007
Author: baerb
Date: 2007-06-12 11:58:26 -0400 (Tue, 12 Jun 2007)
New Revision: 1670
Modified:
branches/developers/avida-edward/source/python/AvidaGui2/pyEduWorkspaceCtrl.py
branches/developers/avida-edward/source/python/AvidaGui2/pyFreezerCtrl.py
Log:
Added code to open one full or empty petri dish from the main menu
Modified: branches/developers/avida-edward/source/python/AvidaGui2/pyEduWorkspaceCtrl.py
===================================================================
--- branches/developers/avida-edward/source/python/AvidaGui2/pyEduWorkspaceCtrl.py 2007-06-11 21:56:13 UTC (rev 1669)
+++ branches/developers/avida-edward/source/python/AvidaGui2/pyEduWorkspaceCtrl.py 2007-06-12 15:58:26 UTC (rev 1670)
@@ -599,6 +599,8 @@
individual_file.close()
export_file.close()
+ # allow user to delete one or more freezer items
+
def fileDeleteItemSlot(self):
for freezer_item_name in self.curr_sel_files.split("\t")[1:]:
delete_item = False
@@ -615,10 +617,17 @@
self.m_session_mdl.m_session_mdtr.emit(
PYSIGNAL("DeleteFromFreezerSig"), (freezer_item_name, ))
+ # allow user to open up the first freezer item in the currently selected
+ # file list
+
def fileOpenItemSlot(self):
- info("pyEduWorkspaceView.fileOpenItemSlot(): Not implemented yet")
+ file_name = self.curr_sel_files.split("\t")[1]
+ if (file_name.endswith(".full")) or (file_name.endswith(".empty")):
+ self.m_session_mdl.m_session_mdtr.emit(
+ PYSIGNAL("openFreezerItemSig"), (file_name,))
+ else:
+ info("Can not open an organism by using the menu")
-
# public slot
def fileExit(self):
Modified: branches/developers/avida-edward/source/python/AvidaGui2/pyFreezerCtrl.py
===================================================================
--- branches/developers/avida-edward/source/python/AvidaGui2/pyFreezerCtrl.py 2007-06-11 21:56:13 UTC (rev 1669)
+++ branches/developers/avida-edward/source/python/AvidaGui2/pyFreezerCtrl.py 2007-06-12 15:58:26 UTC (rev 1670)
@@ -187,6 +187,12 @@
self.connect(self.m_session_mdl.m_session_mdtr,
PYSIGNAL("DeleteFromFreezerSig"), self.deleteFreezerItemSlot)
+ # If User opens an item somewhere else in the program act as if it was
+ # "double-clicked" here
+
+ self.connect(self.m_session_mdl.m_session_mdtr,
+ PYSIGNAL("openFreezerItemSig"), self.freezerItemExtSelSlot)
+
self.createFreezerIndexSlot()
self.m_list_view.setAcceptDrops(True)
self.m_empty_item.setDropEnabled(True)
@@ -341,9 +347,28 @@
thawed_item = pyReadFreezer(file_name)
self.m_session_mdl.m_session_mdtr.emit(PYSIGNAL("doDefrostDishSig"),
(item.text(0), thawed_item,))
+ descr("BDB -- item.text(0) = " + str(item.text(0)))
self.m_session_mdl.m_session_mdtr.emit(PYSIGNAL("freezerItemDoubleClicked"),
(file_name,))
+ # if the user has selected to open an item from an external widget
+
+ def freezerItemExtSelSlot(self, in_file_name):
+ descr("BDB --file name = " + str(in_file_name))
+ if (in_file_name.endswith(".full")) or (in_file_name.endswith(".empty")):
+ short_name = os.path.basename(in_file_name)
+ if (short_name.endswith("empty")):
+ short_name = short_name[:-6]
+ elif (short_name.endswith("full")):
+ short_name = short_name[:-5]
+ in_file_name = os.path.join(in_file_name, "petri_dish")
+ thawed_item = pyReadFreezer(in_file_name)
+ self.m_session_mdl.m_session_mdtr.emit(PYSIGNAL("doDefrostDishSig"),
+ (short_name, thawed_item,))
+ self.m_session_mdl.m_session_mdtr.emit(PYSIGNAL("freezerItemDoubleClicked"),
+ (in_file_name,))
+
+
# if item is right clicked pull up services menu
def right_clicked_itemSlot(self, item):
More information about the Avida-cvs
mailing list