changeset 803:8555ac1bcbcd

Attempt at implementing column click events. Doesn't seem to work yet but needed to commit before switching to laptop.
author bsmith@81767d24-ef19-dc11-ae90-00e081727c95
date Wed, 23 Mar 2011 20:45:34 +0000
parents 676d46b31a11
children 5b4a831af8fa
files mac/dw.m
diffstat 1 files changed, 16 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/mac/dw.m	Wed Mar 23 20:05:11 2011 +0000
+++ b/mac/dw.m	Wed Mar 23 20:45:34 2011 +0000
@@ -116,7 +116,7 @@
 } SignalList;
 
 /* List of signals */
-#define SIGNALMAX 16
+#define SIGNALMAX 17
 
 SignalList SignalTranslate[SIGNALMAX] = {
     { 1,    DW_SIGNAL_CONFIGURE },
@@ -134,7 +134,8 @@
     { 13,   DW_SIGNAL_SET_FOCUS },
     { 14,   DW_SIGNAL_VALUE_CHANGED },
     { 15,   DW_SIGNAL_SWITCH_PAGE },
-    { 16,   DW_SIGNAL_TREE_EXPAND }
+    { 16,   DW_SIGNAL_TREE_EXPAND },
+    { 17,   DW_SIGNAL_COLUMN_CLICK }
 };
 
 int _event_handler(id object, NSEvent *event, int message)
@@ -319,6 +320,13 @@
 
                 return treeexpandfunc(handler->window, (HTREEITEM)event, handler->data);
             }
+            case 17:
+            {
+                int (*clickcolumnfunc)(HWND, int, void *) = handler->signalfunction;
+                int column_num = (int)event;
+                
+                return clickcolumnfunc(handler->window, column_num, handler->data);
+            }
         }
     }
     return -1;
@@ -1022,6 +1030,7 @@
 -(void)clear;
 -(void)setup;
 -(void)doubleClicked:(id)sender;
+-(void)tableView:(NSTableView*)tableView mouseDownInHeaderOfTableColumn:(NSTableColumn *)tableColumn;
 -(void)selectionChanged:(id)sender;
 -(NSMenu *)menuForEvent:(NSEvent *)event;
 @end
@@ -1169,6 +1178,11 @@
     /* Handler for container class */
     _event_handler(self, (NSEvent *)[self getRowTitle:(int)[self selectedRow]], 9);
 }
+-(void)tableView:(NSTableView*)tableView mouseDownInHeaderOfTableColumn:(NSTableColumn *)tableColumn
+{
+    /* Handler for column click class */
+    _event_handler(self, (NSEvent *)[tvcols indexOfObject:tableColumn], 17);
+}
 -(void)selectionChanged:(id)sender
 {
     /* Handler for container class */