Do not process mouse down events if the slider is disabled

git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@12128 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
Nicola Pero 2002-01-17 00:20:05 +00:00
parent 8d667a446e
commit 1d5f879ad2

View file

@ -417,31 +417,33 @@ static Class cellClass;
- (void) mouseDown: (NSEvent *)theEvent
{
NSPoint location = [self convertPoint: [theEvent locationInWindow]
fromView: nil];
NSRect rect;
rect = [_cell knobRectFlipped: _rFlags.flipped_view];
if (![self mouse: location inRect: rect])
if ([_cell isEnabled])
{
// Mouse is not on the knob, move the knob to the mouse position
float floatValue;
floatValue = _floatValueForMousePoint (location, rect,
[_cell trackRect],
[_cell isVertical],
[_cell minValue],
[_cell maxValue], _cell,
_rFlags.flipped_view);
[_cell setFloatValue: floatValue];
if ([_cell isContinuous])
NSPoint location = [self convertPoint: [theEvent locationInWindow]
fromView: nil];
NSRect rect;
rect = [_cell knobRectFlipped: _rFlags.flipped_view];
if (![self mouse: location inRect: rect])
{
[self sendAction: [_cell action] to: [_cell target]];
// Mouse is not on the knob, move the knob to the mouse position
float floatValue;
floatValue = _floatValueForMousePoint (location, rect,
[_cell trackRect],
[_cell isVertical],
[_cell minValue],
[_cell maxValue], _cell,
_rFlags.flipped_view);
[_cell setFloatValue: floatValue];
if ([_cell isContinuous])
{
[self sendAction: [_cell action] to: [_cell target]];
}
[_cell drawWithFrame: _bounds inView: self];
[_window flushWindow];
}
[_cell drawWithFrame: _bounds inView: self];
[_window flushWindow];
[self trackKnob: theEvent knobRect: rect];
}
[self trackKnob: theEvent knobRect: rect];
}
@end