changeset 148:8944c1d87c63

Fixes #33
author Jacob Carlborg <doob@me.com>
date Sun, 07 Jun 2009 15:21:18 +0200
parents 64712e72cb16
children 36ae710173d9
files dwt/custom/ControlEditor.d dwt/custom/TableCursor.d
diffstat 2 files changed, 66 insertions(+), 24 deletions(-) [+]
line wrap: on
line diff
--- a/dwt/custom/ControlEditor.d	Sun Jun 07 00:04:52 2009 +0200
+++ b/dwt/custom/ControlEditor.d	Sun Jun 07 15:21:18 2009 +0200
@@ -127,18 +127,30 @@
 public this (Composite parent) {
     this.parent = parent;
 
-    controlListener = new class() Listener {
+    controlListener = new class(this) Listener {
+        ControlEditor ce;
+        
+        this (ControlEditor ce) {
+            this.ce = ce;
+        }
+        
         public void handleEvent(Event e) {
-            layout ();
+            ce.layout ();
         }
     };
     for (int i=0; i<EVENTS.length; i++) {
         parent.addListener (EVENTS [i], controlListener);
     }
 
-    scrollbarListener = new class() Listener {
+    scrollbarListener = new class(this) Listener {
+        ControlEditor ce;
+        
+        this (ControlEditor ce) {
+            this.ce = ce;
+        }
+        
         public void handleEvent(Event e) {
-            scroll (e);
+            ce.scroll (e);
         }
     };
     ScrollBar hBar = parent.getHorizontalBar ();
--- a/dwt/custom/TableCursor.d	Sun Jun 07 00:04:52 2009 +0200
+++ b/dwt/custom/TableCursor.d	Sun Jun 07 15:21:18 2009 +0200
@@ -204,21 +204,27 @@
     setBackground(null);
     setForeground(null);
 
-    Listener listener = new class() Listener {
+    Listener listener = new class(this) Listener {
+        TableCursor tc;
+        
+        this (TableCursor tc) {
+            this.tc = tc;
+        }
+        
         public void handleEvent(Event event) {
             switch (event.type) {
                 case DWT.Dispose :
-                    dispose(event);
+                    tc.dispose(event);
                     break;
                 case DWT.FocusIn :
                 case DWT.FocusOut :
-                    redraw();
+                    tc.redraw();
                     break;
                 case DWT.KeyDown :
-                    keyDown(event);
+                    tc.keyDown(event);
                     break;
                 case DWT.Paint :
-                    paint(event);
+                    tc.paint(event);
                     break;
                 case DWT.Traverse : {
                     event.doit = true;
@@ -241,14 +247,20 @@
         addListener(events[i], listener);
     }
 
-    tableListener = new class() Listener {
+    tableListener = new class(this) Listener {
+        TableCursor tc;
+        
+        this (TableCursor tc) {
+            this.tc = tc;
+        }
+        
         public void handleEvent(Event event) {
             switch (event.type) {
                 case DWT.MouseDown :
-                    tableMouseDown(event);
+                    tc.tableMouseDown(event);
                     break;
                 case DWT.FocusIn :
-                    tableFocusIn(event);
+                    tc.tableFocusIn(event);
                     break;
                 default:
             }
@@ -257,25 +269,43 @@
     table.addListener(DWT.FocusIn, tableListener);
     table.addListener(DWT.MouseDown, tableListener);
 
-    disposeItemListener = new class() Listener {
+    disposeItemListener = new class(this) Listener {
+        TableCursor tc;
+        
+        this (TableCursor tc) {
+            this.tc = tc;
+        }
+        
         public void handleEvent(Event event) {
-            unhookRowColumnListeners();
-            row = null;
-            column = null;
-            _resize();
+            tc.unhookRowColumnListeners();
+            tc.row = null;
+            tc.column = null;
+            tc._resize();
         }
     };
-    disposeColumnListener = new class() Listener {
+    disposeColumnListener = new class(this) Listener {
+        TableCursor tc;
+        
+        this (TableCursor tc) {
+            this.tc = tc;
+        }
+        
         public void handleEvent(Event event) {
-            unhookRowColumnListeners();
-            row = null;
-            column = null;
-            _resize();
+            tc.unhookRowColumnListeners();
+            tc.row = null;
+            tc.column = null;
+            tc._resize();
         }
     };
-    resizeListener = new class() Listener {
+    resizeListener = new class(this) Listener {
+        TableCursor tc;
+        
+        this (TableCursor tc) {
+            this.tc = tc;
+        }
+        
         public void handleEvent(Event event) {
-            _resize();
+            tc._resize();
         }
     };
     ScrollBar hBar = table.getHorizontalBar();