[Avida-SVN] r2708 - branches/developers/avida-edward/source/python/AvidaGui2

kaben at myxo.css.msu.edu kaben at myxo.css.msu.edu
Fri Jul 4 00:47:10 PDT 2008


Author: kaben
Date: 2008-07-04 03:47:09 -0400 (Fri, 04 Jul 2008)
New Revision: 2708

Added:
   branches/developers/avida-edward/source/python/AvidaGui2/DefaultExportDir.py
Modified:
   branches/developers/avida-edward/source/python/AvidaGui2/pyEduWorkspaceCtrl.py
   branches/developers/avida-edward/source/python/AvidaGui2/pyRightClickDialogCtrl.py
Log:
Slight Avida-ED refactor of code for choosing export directory. Removes some code duplication.


Added: branches/developers/avida-edward/source/python/AvidaGui2/DefaultExportDir.py
===================================================================
--- branches/developers/avida-edward/source/python/AvidaGui2/DefaultExportDir.py	                        (rev 0)
+++ branches/developers/avida-edward/source/python/AvidaGui2/DefaultExportDir.py	2008-07-04 07:47:09 UTC (rev 2708)
@@ -0,0 +1,17 @@
+import os, os.path
+def DefaultExportDir(export_dir = None, file_name = None):
+  if export_dir is not None and os.path.exists(export_dir):
+    directory = export_dir
+  else:
+    user_dir = os.path.expanduser("~")
+    if os.path.exists(os.path.join(user_dir,"Desktop")):
+      directory = os.path.join(user_dir,"Desktop")
+    elif os.path.exists(os.path.join(user_dir,"Documents")):
+      directory = os.path.join(user_dir,"Documents")
+    elif os.path.exists(os.path.join(user_dir,"My Documents")):
+      directory = os.path.join(user_dir,"My Documents")
+    elif file_name is not None and os.path.exists(os.path.abspath(os.path.dirname(file_name))):
+      directory = os.path.abspath(os.path.dirname(file_name));
+    else:
+      directory = os.path.abspath(os.curdir)
+  return directory

Modified: branches/developers/avida-edward/source/python/AvidaGui2/pyEduWorkspaceCtrl.py
===================================================================
--- branches/developers/avida-edward/source/python/AvidaGui2/pyEduWorkspaceCtrl.py	2008-07-04 07:16:42 UTC (rev 2707)
+++ branches/developers/avida-edward/source/python/AvidaGui2/pyEduWorkspaceCtrl.py	2008-07-04 07:47:09 UTC (rev 2708)
@@ -3,6 +3,7 @@
 from descr import *
 
 # from Get_Avida_ED_version import avida_ed_version_string
+from DefaultExportDir import DefaultExportDir
 from pyEduWorkspaceView import pyEduWorkspaceView
 from pyMdtr import pyMdtr
 from pyOneAnalyzeCtrl import pyOneAnalyzeCtrl
@@ -561,19 +562,8 @@
   def fileExportItemSlot(self):
     files2process = self.curr_sel_files.split("\t")
     file_name = files2process[1]
-    user_dir = os.path.expanduser("~")
-    abs_dir = os.path.abspath(os.path.dirname(file_name));
-    if self.m_session_mdl.export_directory is not None and os.path.exists(self.m_session_mdl.export_directory):
-      initial_dir = self.m_session_mdl.export_directory
-    else:
-      if os.path.exists(os.path.join(user_dir,"Desktop")):
-        initial_dir = os.path.join(user_dir,"Desktop")
-      elif os.path.exists(os.path.join(user_dir,"Documents")):
-        initial_dir = os.path.join(user_dir,"Documents")
-      elif os.path.exists(os.path.join(user_dir,"My Documents")):
-        initial_dir = os.path.join(user_dir,"My Documents")
-      else:
-        initial_dir = abs_dir
+
+    initial_dir = DefaultExportDir(self.m_session_mdl.export_directory, os.path.dirname(file_name))
     no_ext_name, file_ext = os.path.splitext(os.path.basename(file_name))
     initial_file_name = os.path.join(initial_dir,no_ext_name + ".aex")
   
@@ -585,7 +575,6 @@
       "Export dish or organism")
 
     self.m_session_mdl.export_directory = os.path.dirname(str(export_file_name))
-    #descr("self.m_session_mdl.export_directory:", self.m_session_mdl.export_directory)
     export_file = open(str(export_file_name), "w")
     if (file_ext == '.full'):
       files_in_full = os.listdir(file_name)

Modified: branches/developers/avida-edward/source/python/AvidaGui2/pyRightClickDialogCtrl.py
===================================================================
--- branches/developers/avida-edward/source/python/AvidaGui2/pyRightClickDialogCtrl.py	2008-07-04 07:16:42 UTC (rev 2707)
+++ branches/developers/avida-edward/source/python/AvidaGui2/pyRightClickDialogCtrl.py	2008-07-04 07:47:09 UTC (rev 2708)
@@ -3,6 +3,7 @@
 from descr import *
 
 from qt import *
+from DefaultExportDir import DefaultExportDir
 from pyRightClickDialogView import pyRightClickDialogView
 from pyWarnAboutTrashCtrl import pyWarnAboutTrashCtrl
 import shutil, os, os.path
@@ -111,19 +112,8 @@
       # correct (at least on the Mac).  It is a relative path where
       # QFileDialog.getSaveFileName seems to require an absolute path
 
-      abs_dir = os.path.abspath(self.file_dir);
       user_dir = os.path.expanduser("~")
-      if self.session_mdl.export_directory is not None and os.path.exists(self.session_mdl.export_directory):
-        initial_dir = self.session_mdl.export_directory
-      else:
-        if os.path.exists(os.path.join(user_dir,"Desktop")):
-          initial_dir = os.path.join(user_dir,"Desktop")
-        elif os.path.exists(os.path.join(user_dir,"Documents")):
-          initial_dir = os.path.join(user_dir,"Documents")
-        elif os.path.exists(os.path.join(user_dir,"My Documents")):
-          initial_dir = os.path.join(user_dir,"My Documents")
-        else:
-          initial_dir = abs_dir
+      initial_dir = DefaultExportDir(self.session_mdl.export_directory, os.path.dirname)
       no_ext_name, ext = os.path.splitext(self.file_core_name)
       initial_file_name = os.path.join(initial_dir,no_ext_name + ".aex")
 
@@ -135,7 +125,6 @@
         "Export dish or organism")
 
       self.session_mdl.export_directory = os.path.dirname(str(export_file_name))
-      #descr("self.session_mdl.export_directory:", self.session_mdl.export_directory)
       export_file = open(str(export_file_name), "w")
       if (self.file_ext == '.full'):
         files_in_full = os.listdir(self.file_name)




More information about the Avida-cvs mailing list