diff mde/gui/WidgetManager.d @ 81:d8fccaa45d5f

Moved file IO code from mde/mergetag to mde/file[/mergetag] and changed how some errors are caught.
author Diggory Hardy <diggory.hardy@gmail.com>
date Fri, 29 Aug 2008 11:59:43 +0100
parents ea58f277f487
children e0f1ec7fe73a
line wrap: on
line diff
--- a/mde/gui/WidgetManager.d	Thu Aug 07 11:25:27 2008 +0100
+++ b/mde/gui/WidgetManager.d	Fri Aug 29 11:59:43 2008 +0100
@@ -187,8 +187,8 @@
 import mde.gui.widget.Ifaces;
 import mde.gui.widget.createWidget;
 
-import mde.mergetag.Reader;
-import mde.mergetag.Writer;
+import mde.file.mergetag.Reader;
+import mde.file.mergetag.Writer;
 import mde.setup.paths;
 
 /*************************************************************************************************
@@ -221,11 +221,6 @@
         if (allLoaded || (defaultDesign !is null && allDesigns == false))
             return; // test if already loaded
             
-            if (!confDir.exists (fileName)) {
-                logger.error ("Unable to load GUI: no config file!");
-                return; // not a fatal error (so long as the game can run without a GUI!)
-            }
-            
             // Set up a reader
             scope IReader reader;
         try {
@@ -266,6 +261,9 @@
                 allLoaded = true;
             } else
                 reader.read([defaultDesign]);
+        } catch (NoFileException) {
+            logger.error ("Unable to load GUI: no config file!");
+            // just return: not a fatal error (so long as the game can run without a GUI!)
         } catch (Exception e) {
             logger.error ("Unable to load GUI: errors parsing config file ("~confDir.getFileName(fileName,PRIORITY.HIGH_LOW)~"):");
             logger.error (e.msg);