comparison mac/dw.m @ 1061:d91e09dc3865

Fix for the item data field of the context event always being NULL even for tree items on Mac.
author bsmith@81767d24-ef19-dc11-ae90-00e081727c95
date Sun, 05 Jun 2011 01:57:38 +0000
parents 6919854298fd
children 2ebaea72ac95
comparison
equal deleted inserted replaced
1060:efa7d527adea 1061:d91e09dc3865
332 { 332 {
333 int (* API containercontextfunc)(HWND, char *, int, int, void *, void *) = (int (* API)(HWND, char *, int, int, void *, void *))handler->signalfunction; 333 int (* API containercontextfunc)(HWND, char *, int, int, void *, void *) = (int (* API)(HWND, char *, int, int, void *, void *))handler->signalfunction;
334 char *text = (char *)event; 334 char *text = (char *)event;
335 void *user = NULL; 335 void *user = NULL;
336 LONG x,y; 336 LONG x,y;
337
338 /* Fill in both items for the tree */
339 if([object isKindOfClass:[NSOutlineView class]])
340 {
341 id item = event;
342 NSString *nstr = [item pointerAtIndex:1];
343 text = (char *)[nstr UTF8String];
344 user = [item pointerAtIndex:2];
345 }
337 346
338 dw_pointer_query_pos(&x, &y); 347 dw_pointer_query_pos(&x, &y);
339 348
340 return containercontextfunc(handler->window, text, (int)x, (int)y, handler->data, user); 349 return containercontextfunc(handler->window, text, (int)x, (int)y, handler->data, user);
341 } 350 }
1790 { 1799 {
1791 int row; 1800 int row;
1792 NSPoint where = [self convertPoint:[event locationInWindow] fromView:nil]; 1801 NSPoint where = [self convertPoint:[event locationInWindow] fromView:nil];
1793 row = (int)[self rowAtPoint:where]; 1802 row = (int)[self rowAtPoint:where];
1794 id item = [self itemAtRow:row]; 1803 id item = [self itemAtRow:row];
1795 NSString *nstr = [item pointerAtIndex:1]; 1804 _event_handler(self, (NSEvent *)item, 10);
1796 _event_handler(self, (NSEvent *)[nstr UTF8String], 10);
1797 return nil; 1805 return nil;
1798 } 1806 }
1799 -(NSScrollView *)scrollview { return scrollview; } 1807 -(NSScrollView *)scrollview { return scrollview; }
1800 -(void)setScrollview:(NSScrollView *)input { scrollview = input; } 1808 -(void)setScrollview:(NSScrollView *)input { scrollview = input; }
1801 -(void)deleteNode:(NSPointerArray *)item { _free_tree_recurse(data, item); } 1809 -(void)deleteNode:(NSPointerArray *)item { _free_tree_recurse(data, item); }