# HG changeset patch # User bsmith@81767d24-ef19-dc11-ae90-00e081727c95 # Date 1299880381 0 # Node ID 79b38b1f33468eca6d9a5c7350ee8e4d6ec5d79a # Parent 7087f3a294e5e18491b8d8591f9b564184afa33d Scrollbar event fixes... scale was wrong... not sure it is correct but it is better. Don't send resize events when size is negative which happens with hidden notebook pages. diff -r 7087f3a294e5 -r 79b38b1f3346 mac/dw.m --- a/mac/dw.m Fri Mar 11 20:30:59 2011 +0000 +++ b/mac/dw.m Fri Mar 11 21:53:01 2011 +0000 @@ -134,7 +134,7 @@ int _event_handler(id object, NSEvent *event, int message) { SignalHandler *handler = _get_handler(object, message); - NSLog(@"Event handler - type %d\n", message); + /* NSLog(@"Event handler - type %d\n", message); */ if(handler) { @@ -166,7 +166,11 @@ size = [view frame].size; } - return sizefunc(object, size.width, size.height, handler->data); + if(size.width > 0 && size.height > 0) + { + return sizefunc(object, size.width, size.height, handler->data); + } + return 0; } /* Button press and release event */ case 3: @@ -695,7 +699,7 @@ -(float)range { return range; } -(float)visible { return visible; } -(void)setRange:(float)input1 andVisible:(float)input2 { range = input1; visible = input2; } --(void)scrollerChanged:(id)sender { NSNumber *num = [NSNumber numberWithDouble:[self floatValue]]; _event_handler(self, (void *)[num integerValue], 14); } +-(void)scrollerChanged:(id)sender { int result = (int)([self doubleValue] * [self range]); _event_handler(self, (void *)result, 14); } -(void)dealloc { UserData *root = userdata; _remove_userdata(&root, NULL, TRUE); [super dealloc]; } @end