changeset 150:1ec7c20355bd

Fixes #38
author Jacob Carlborg <doob@me.com>
date Wed, 10 Jun 2009 20:51:17 +0200
parents 36ae710173d9
children 0ba75290f8ce
files dsss.conf dwt/custom/TreeEditor.d dwt/widgets/Tree.d
diffstat 3 files changed, 17 insertions(+), 10 deletions(-) [+]
line wrap: on
line diff
--- a/dsss.conf	Tue Jun 09 21:05:40 2009 +0200
+++ b/dsss.conf	Wed Jun 10 20:51:17 2009 +0200
@@ -1,4 +1,6 @@
 [dwt]
+dylib
+buildflags+=-dc=gdc-posix-tango
 
 version (GNU){
     buildflags += -Jres -framework Cocoa -framework Carbon
--- a/dwt/custom/TreeEditor.d	Tue Jun 09 21:05:40 2009 +0200
+++ b/dwt/custom/TreeEditor.d	Wed Jun 10 20:51:17 2009 +0200
@@ -116,26 +116,30 @@
             layout ();
         }
     };
-    treeListener = new class() TreeListener {
+    treeListener = new class(this) TreeListener {
+        TreeEditor td;
         Runnable runnable;
-        this(){
+        
+        this (TreeEditor td) {
+            this.td = td;
+            
             runnable = new class() Runnable {
                 public void run() {
-                    if (this.outer.outer.editor is null || this.outer.outer.editor.isDisposed()) return;
-                    if (this.outer.outer.tree.isDisposed()) return;
-                    this.outer.outer.layout();
-                    this.outer.outer.editor.setVisible(true);
+                    if (td.editor is null || td.editor.isDisposed()) return;
+                    if (td.tree.isDisposed()) return;
+                    td.layout();
+                    td.editor.setVisible(true);
                 }
             };
         }
         public void treeCollapsed(TreeEvent e) {
-            if (this.outer.editor is null || this.outer.editor.isDisposed ()) return;
-            this.outer.editor.setVisible(false);
+            if (td.editor is null || td.editor.isDisposed ()) return;
+            td.editor.setVisible(false);
             e.display.asyncExec(runnable);
         }
         public void treeExpanded(TreeEvent e) {
-            if (this.outer.editor is null || this.outer.editor.isDisposed ()) return;
-            this.outer.editor.setVisible(false);
+            if (td.editor is null || td.editor.isDisposed ()) return;
+            td.editor.setVisible(false);
             e.display.asyncExec(runnable);
         }
     };
--- a/dwt/widgets/Tree.d	Tue Jun 09 21:05:40 2009 +0200
+++ b/dwt/widgets/Tree.d	Wed Jun 10 20:51:17 2009 +0200
@@ -2053,6 +2053,7 @@
             postEvent (DWT.DefaultSelection);
             break;
         }
+        default:
     }
     return result;
 }