changeset 722:5a8d5161651d

Implemented tree expand event.
author bsmith@81767d24-ef19-dc11-ae90-00e081727c95
date Sun, 13 Mar 2011 23:06:09 +0000
parents 56053f1af9ee
children 37c8d2b4cec5
files mac/dw.m
diffstat 1 files changed, 17 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/mac/dw.m	Sun Mar 13 16:50:40 2011 +0000
+++ b/mac/dw.m	Sun Mar 13 23:06:09 2011 +0000
@@ -293,6 +293,12 @@
                 
                 return switchpagefunc(handler->window, pageid, handler->data);
             }
+            case 16:
+            {
+                int (* API treeexpandfunc)(HWND, HTREEITEM, void *) = (int (* API)(HWND, HTREEITEM, void *))handler->signalfunction;
+                
+                return treeexpandfunc(handler->window, (HTREEITEM)event, handler->data);
+            }
 		}
 	}
 	return -1;
@@ -1095,6 +1101,7 @@
 -(void *)userdata;
 -(void)setUserdata:(void *)input;
 -(void)treeSelectionChanged:(id)sender;
+-(void)treeItemExpanded:(NSNotification *)notification;
 -(NSScrollView *)scrollview;
 -(void)setScrollview:(NSScrollView *)input;
 -(void)deleteNode:(NSPointerArray *)item;
@@ -1118,6 +1125,7 @@
         [self addTableColumn:textcol];
         [self setOutlineTableColumn:textcol];
         [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(treeSelectionChanged:) name:NSOutlineViewSelectionDidChangeNotification object:[self window]];
+        [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(treeItemExpanded:) name:NSOutlineViewItemDidExpandNotification object:[self window]];
     }
     return self;
 }
@@ -1210,6 +1218,15 @@
         _event_handler(self, (void *)item, 12);
     }
 }
+-(void)treeItemExpanded:(NSNotification *)notification 
+{ 
+    id item = [[notification userInfo ] objectForKey: @"NSObject"];
+    
+    if(item)
+    {
+        _event_handler(self, (void *)item, 16);
+    }
+}
 -(NSMenu *)menuForEvent:(NSEvent *)event 
 {
     int row;