diff dwtx/text/undo/DocumentUndoManagerRegistry.d @ 161:f8d52b926852

...
author Frank Benoit <benoit@tionex.de>
date Wed, 27 Aug 2008 14:49:30 +0200
parents f70d9508c95c
children
line wrap: on
line diff
--- a/dwtx/text/undo/DocumentUndoManagerRegistry.d	Wed Aug 27 02:07:22 2008 +0200
+++ b/dwtx/text/undo/DocumentUndoManagerRegistry.d	Wed Aug 27 14:49:30 2008 +0200
@@ -54,7 +54,11 @@
         private IDocumentUndoManager undoManager;
     }
 
-    private static Map fgFactory= new HashMap();
+    private static Map fgFactory_;
+    private static Map fgFactory(){
+        if( fgFactory_ is null ) fgFactory_ = new HashMap();
+        return fgFactory_;
+    }
 
     private this() {
         //  Do not instantiate
@@ -71,11 +75,11 @@
      * @param document the document to be connected
      */
     public static synchronized void connect(IDocument document) {
-        Assert.isNotNull(document);
-        Record record= cast(Record)fgFactory.get(document);
+        Assert.isNotNull(cast(Object)document);
+        Record record= cast(Record)fgFactory.get(cast(Object)document);
         if (record is null) {
             record= new Record(document);
-            fgFactory.put(document, record);
+            fgFactory.put(cast(Object)document, record);
         }
         record.count++;
     }
@@ -86,11 +90,11 @@
      * @param document the document to be disconnected
      */
     public static synchronized void disconnect(IDocument document) {
-        Assert.isNotNull(document);
-        Record record= cast(Record)fgFactory.get(document);
+        Assert.isNotNull(cast(Object)document);
+        Record record= cast(Record)fgFactory.get(cast(Object)document);
         record.count--;
         if (record.count is 0)
-            fgFactory.remove(document);
+            fgFactory.remove(cast(Object)document);
 
     }
 
@@ -108,8 +112,8 @@
      * @return the document undo manager or <code>null</code>
      */
     public static synchronized IDocumentUndoManager getDocumentUndoManager(IDocument document) {
-        Assert.isNotNull(document);
-        Record record= cast(Record)fgFactory.get(document);
+        Assert.isNotNull(cast(Object)document);
+        Record record= cast(Record)fgFactory.get(cast(Object)document);
         if (record is null)
             return null;
         return record.undoManager;