[Avida-cvs] [avida-svn] r569 - in branches/developers/avida-edward/source/python/AvidaGui2: . AvidaEd.xcode

baerb@myxo.css.msu.edu baerb at myxo.css.msu.edu
Tue Apr 4 14:01:24 PDT 2006


Author: baerb
Date: 2006-04-04 17:01:18 -0400 (Tue, 04 Apr 2006)
New Revision: 569

Modified:
   branches/developers/avida-edward/source/python/AvidaGui2/AvidaEd.xcode/project.pbxproj
   branches/developers/avida-edward/source/python/AvidaGui2/Avida_ED_startup_utils.py
   branches/developers/avida-edward/source/python/AvidaGui2/pyBeforeStartingCtrl.py
   branches/developers/avida-edward/source/python/AvidaGui2/pyEduWorkspaceCtrl.py
   branches/developers/avida-edward/source/python/AvidaGui2/pyOnePop_PetriDishCtrl.py
   branches/developers/avida-edward/source/python/AvidaGui2/pySessionCtrl.py
   branches/developers/avida-edward/source/python/AvidaGui2/svn_revision.sh
Log:

Deleted some commented codes

Change Open file to prevent users from opening folders that don't end in 
.workspace

Finished initial pop-up that requires users to either open an existing 
workspace or create a new one

Changed svn_revision to explicitly look at current directory

Added some missing file so t xcode project



Modified: branches/developers/avida-edward/source/python/AvidaGui2/AvidaEd.xcode/project.pbxproj
===================================================================
--- branches/developers/avida-edward/source/python/AvidaGui2/AvidaEd.xcode/project.pbxproj	2006-04-04 20:30:55 UTC (rev 568)
+++ branches/developers/avida-edward/source/python/AvidaGui2/AvidaEd.xcode/project.pbxproj	2006-04-04 21:01:18 UTC (rev 569)
@@ -27,6 +27,30 @@
 			settings = {
 			};
 		};
+		992F7F2309E2C40A004AD02D = {
+			fileEncoding = 30;
+			isa = PBXFileReference;
+			lastKnownFileType = text.script.python;
+			path = Avida_ED_startup_utils.py;
+			refType = 4;
+			sourceTree = "<group>";
+		};
+		992F7F2509E2CBB4004AD02D = {
+			fileEncoding = 30;
+			isa = PBXFileReference;
+			lastKnownFileType = text.script.python;
+			path = pyBeforeStartingCtrl.py;
+			refType = 4;
+			sourceTree = "<group>";
+		};
+		992F7F2609E2CBB4004AD02D = {
+			fileEncoding = 30;
+			isa = PBXFileReference;
+			lastKnownFileType = text;
+			path = pyBeforeStartingView.ui;
+			refType = 4;
+			sourceTree = "<group>";
+		};
 		99AC419907DF44CF00594A3D = {
 			fileEncoding = 4;
 			isa = PBXFileReference;
@@ -174,6 +198,8 @@
 		};
 		DC0BFDB007DDB49200AAE422 = {
 			children = (
+				992F7F2509E2CBB4004AD02D,
+				992F7F2609E2CBB4004AD02D,
 				990666F407FDD01F0095D195,
 				990666F507FDD01F0095D195,
 				DC3A63F907DD02DE00A043AD,
@@ -300,6 +326,7 @@
 		};
 		DC0BFDC407DDB79A00AAE422 = {
 			children = (
+				992F7F2309E2C40A004AD02D,
 				DC3A641A07DD02DE00A043AD,
 				DC3A63FB07DD02DE00A043AD,
 				DC3A63E807DD02DE00A043AD,

Modified: branches/developers/avida-edward/source/python/AvidaGui2/Avida_ED_startup_utils.py
===================================================================
--- branches/developers/avida-edward/source/python/AvidaGui2/Avida_ED_startup_utils.py	2006-04-04 20:30:55 UTC (rev 568)
+++ branches/developers/avida-edward/source/python/AvidaGui2/Avida_ED_startup_utils.py	2006-04-04 21:01:18 UTC (rev 569)
@@ -61,10 +61,12 @@
     #
     session_ctrl = edu_main_controller.m_main_controller_factory.m_main_controllers_list[1]
     edu_main_controller.m_edu_workspace_ctrl = session_ctrl.m_session_controller_factory.m_session_controllers_list[1]
+    edu_main_controller.m_prompt_for_workspace_ctrl = session_ctrl.m_session_controller_factory.m_session_controllers_list[2]
 
   finally:
     s_splash.clear()
     s_splash.hide()
+    edu_main_controller.m_prompt_for_workspace_ctrl.showDialog()
     print """
     
     Type 'avida_ed=AvidaEd()' to reload the AvidaEd user interface.

Modified: branches/developers/avida-edward/source/python/AvidaGui2/pyBeforeStartingCtrl.py
===================================================================
--- branches/developers/avida-edward/source/python/AvidaGui2/pyBeforeStartingCtrl.py	2006-04-04 20:30:55 UTC (rev 568)
+++ branches/developers/avida-edward/source/python/AvidaGui2/pyBeforeStartingCtrl.py	2006-04-04 21:01:18 UTC (rev 569)
@@ -8,15 +8,24 @@
 class pyBeforeStartingCtrl (pyBeforeStartingView):
   def __init__(self):
     pyBeforeStartingView.__init__(self)
-    # self.connect(self.OpenExistingPushButton, SIGNAL("clicked()"),
-    #              self.m_session_mdl.m_session_mdtr, 
-    #              PYSIGNAL("workspaceOpenSig"))
-    # self.connect(self.CreateNewPushButton, SIGNAL("clicked()"),
-    #              self.m_session_mdl.m_session_mdtr, 
-    #              PYSIGNAL("workspaceOpenSig"))
 
+  def construct(self, session_mdl):
+    self.m_session_mdl = session_mdl
+    self.connect(self.OpenExistingPushButton, SIGNAL("clicked()"),
+                 self.m_session_mdl.m_session_mdtr, 
+                 PYSIGNAL("workspaceOpenSig"))
+    self.connect(self.OpenExistingPushButton, SIGNAL("clicked()"),
+                self.closeDialog)
+    self.connect(self.CreateNewPushButton, SIGNAL("clicked()"),
+                 self.m_session_mdl.m_session_mdtr, 
+                 PYSIGNAL("workspaceNewSig"))
+    self.connect(self.CreateNewPushButton, SIGNAL("clicked()"),
+                self.closeDialog)
+
   def showDialog(self):
-    self.show()
     self.exec_loop()
     dialog_result = self.result()
     print "BDB pyBeforeStgartingCtrl:showDialog dialog_result = " + str(dialog_result)
+
+  def closeDialog(self):
+    self.done(1)
\ No newline at end of file

Modified: branches/developers/avida-edward/source/python/AvidaGui2/pyEduWorkspaceCtrl.py
===================================================================
--- branches/developers/avida-edward/source/python/AvidaGui2/pyEduWorkspaceCtrl.py	2006-04-04 20:30:55 UTC (rev 568)
+++ branches/developers/avida-edward/source/python/AvidaGui2/pyEduWorkspaceCtrl.py	2006-04-04 21:01:18 UTC (rev 569)
@@ -125,10 +125,6 @@
     self.splitter1.setSizes([100])
 
     self.show()
-    # junk=pyBeforeStartingCtrl()
-    # print "BDB pyEduWorkspaceCtrl -- before junk.showDialog"
-    # junk2 = junk.showDialog()
-    # print "BDB pyEduWorkspaceCtrl -- after junk.showDialog"
 
   def __del__(self):
     for key in self.m_cli_to_ctrl_dict.keys():
@@ -199,30 +195,44 @@
                 pyDefaultFiles(fileName, destName)
             self.m_session_mdl.m_current_workspace = str(new_dir)
             self.m_session_mdl.m_current_freezer = os.path.join(new_dir, "freezer")
-            #self.setCaption(self.m_session_mdl.m_current_workspace)
             self.setCaption('%s - %s' % (avida_ed_version_string, self.m_session_mdl.m_current_workspace) )
             self.m_session_mdl.m_session_mdtr.emit(
               PYSIGNAL("doRefreshFreezerInventorySig"), ())
             created = True
 
   # public slot
-
   def fileOpen(self):
 
+    tmpDialogCap = "Choose a workspace (folder with name ending .workspace)"
+    foundFile = False
+    workspace_dir = ""
+
     # self.m_session_mdl.m_current_workspace does not work correctly in this
     # context (at least on the Mac).  It is a relative path where 
     # getExistingDirectory seems to require an absult path
 
-    workspace_dir = QFileDialog.getExistingDirectory(
+    while (foundFile == False):
+
+      workspace_dir = QFileDialog.getExistingDirectory(
                     # self.m_session_mdl.m_current_workspace,
                     "",
                     None,
                     "get existing workspace",
-                    "Choose a workspace",
+                    tmpDialogCap,
                     True);
-    workspace_dir = str(workspace_dir)              
+      workspace_dir = str(workspace_dir)              
+      workspace_dir = workspace_dir.strip()
 
-    if workspace_dir.strip() != "":
+      # If a valid name is found or the user hit cancel leave the loop
+      # otherwise prompt for the wrong name and continue
+      
+      if (workspace_dir == "") or (workspace_dir.endswith(".workspace")):
+        foundFile = True
+      else:
+        foundFile = False
+        tmpDialogCap = "Name did not end with .workspace, please try again"
+
+    if workspace_dir != "":
       self.m_session_mdl.m_current_workspace = str(workspace_dir)
       self.m_session_mdl.m_current_freezer = os.path.join(self.m_session_mdl.m_current_workspace, "freezer")
       #self.setCaption(self.m_session_mdl.m_current_workspace)

Modified: branches/developers/avida-edward/source/python/AvidaGui2/pyOnePop_PetriDishCtrl.py
===================================================================
--- branches/developers/avida-edward/source/python/AvidaGui2/pyOnePop_PetriDishCtrl.py	2006-04-04 20:30:55 UTC (rev 568)
+++ branches/developers/avida-edward/source/python/AvidaGui2/pyOnePop_PetriDishCtrl.py	2006-04-04 21:01:18 UTC (rev 569)
@@ -165,7 +165,6 @@
       # BDB -- Pause at certain update hack
 
       if int(update) == int(self.m_session_mdl.m_update_to_pause):
-        print "BDB -- send the pause signal here"
         self.m_session_mdl.m_session_mdtr.emit(PYSIGNAL("doPauseAvidaSig"), ())
     
   def RenameDishSlot(self, dishName):

Modified: branches/developers/avida-edward/source/python/AvidaGui2/pySessionCtrl.py
===================================================================
--- branches/developers/avida-edward/source/python/AvidaGui2/pySessionCtrl.py	2006-04-04 20:30:55 UTC (rev 568)
+++ branches/developers/avida-edward/source/python/AvidaGui2/pySessionCtrl.py	2006-04-04 21:01:18 UTC (rev 569)
@@ -3,7 +3,7 @@
 from pyAvidaCoreData import *
 from pyMdtr import *
 from pySessionControllerFactory import *
-# from pySessionDumbCtrl import *
+from pyBeforeStartingCtrl import *
 
 from AvidaCore import cString
 
@@ -68,7 +68,6 @@
 
     # BDB -- hack to overcome problem with program crashing when Core ends
 
-    print "BDB -- pySessionCtrl: about to set .m_session_mdl.m_update_to_pause = -99"
     self.m_session_mdl.m_update_to_pause = -99
 
     # Create a temporary subdirectory for general use in this session. Add a 
@@ -89,18 +88,17 @@
     # Connect various session controller creators to the controller
     # factory.
     self.m_session_controller_factory.addControllerCreator("pyEduSessionMenuBarHdlr", pyEduSessionMenuBarHdlr)
-    # self.m_session_controller_factory.addControllerCreator("pySessionDumbCtrl", pySessionDumbCtrl)
     self.m_session_controller_factory.addControllerCreator("pyEduWorkspaceCtrl", pyEduWorkspaceCtrl)
+    self.m_session_controller_factory.addControllerCreator("pyBeforeStartingCtrl", pyBeforeStartingCtrl)
 
     self.m_session_mdl.m_session_mdtr.emit(
       qt.PYSIGNAL("newSessionControllerSig"), ("pyEduSessionMenuBarHdlr",))
-    
-    ## XXX Temporary. Cause instantiation of a dumb gui for testing. @kgn
-    # self.m_session_mdl.m_session_mdtr.emit(
-    #   qt.PYSIGNAL("newSessionControllerSig"), ("pySessionDumbCtrl",))
 
     self.m_session_mdl.m_session_mdtr.emit(
       qt.PYSIGNAL("newSessionControllerSig"), ("pyEduWorkspaceCtrl",))
+    
+    self.m_session_mdl.m_session_mdtr.emit(
+      qt.PYSIGNAL("newSessionControllerSig"), ("pyBeforeStartingCtrl",))
 
     self.connect(self.m_session_mdl.m_session_mdtr, qt.PYSIGNAL("doOrphanSessionSig"), self.doOrphanSessionSlot)
 

Modified: branches/developers/avida-edward/source/python/AvidaGui2/svn_revision.sh
===================================================================
--- branches/developers/avida-edward/source/python/AvidaGui2/svn_revision.sh	2006-04-04 20:30:55 UTC (rev 568)
+++ branches/developers/avida-edward/source/python/AvidaGui2/svn_revision.sh	2006-04-04 21:01:18 UTC (rev 569)
@@ -2,5 +2,5 @@
 
 SCRIPT_DIR=`dirname "$0"`
 
-revision_string=`svnversion` || (echo "Can't get Avida-ED's svn revision number."; exit 1)
+revision_string=`svnversion "$SCRIPT_DIR"` || (echo "Can't get Avida-ED's svn revision number."; exit 1)
 echo "svn_revision_string = '$revision_string'" > "$SCRIPT_DIR"/Avida_ED_version.py




More information about the Avida-cvs mailing list