diff mde/font/font.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 61ea26abe4dd
children e0f1ec7fe73a
line wrap: on
line diff
--- a/mde/font/font.d	Thu Aug 07 11:25:27 2008 +0100
+++ b/mde/font/font.d	Fri Aug 29 11:59:43 2008 +0100
@@ -21,15 +21,14 @@
 import mde.font.FontTexture;
 import mde.font.exception;
 
-import mde.mergetag.Reader;
-import mde.mergetag.DataSet;
-import mde.mergetag.exception;
+import mde.file.mergetag.Reader;
+import mde.file.mergetag.DataSet;
 import mde.setup.paths;
 
 import derelict.freetype.ft;
 import derelict.opengl.gl;
 
-import mde.mergetag.deserialize;
+import mde.file.deserialize;
 import tango.stdc.stringz;
 import Util = tango.text.Util;
 import tango.util.log.Log : Log, Logger;
@@ -59,9 +58,6 @@
         /** Load the freetype library from the file fileName. */
         private const fileName = "fonts";
         void initialize () {
-            if (!confDir.exists (fileName))
-                throw new fontException ("No font settings file (fonts.[mtt|mtb])");
-            
             if (FT_Init_FreeType (&library))
                 throw new fontException ("error initialising the FreeType library");
             
@@ -110,9 +106,10 @@
                 if (p is null)
                     throw new fontException ("No fallback font style specified");
                 fallbackName = *p;
-            }
-            catch (MTException e) {
-                throw new fontException ("Mergetag exception: "~e.msg);
+            } catch (NoFileException) {
+                throw new fontException ("No font settings file (fonts.[mtt|mtb])");
+            } catch (Exception e) {
+                throw new fontException ("Reading font settings failed: "~e.msg);
             }
             
             // Find the fallback