mirror of
https://github.com/cappuccino/cappuccino.git
synced 2026-08-25 04:57:03 +00:00
Merge branch 'master' of https://github.com/cappuccino/cappuccino
This commit is contained in:
@@ -199,7 +199,20 @@ CPSegmentSwitchTrackingMomentary = 2;
|
||||
- (void)setSelectedSegment:(unsigned)aSegment
|
||||
{
|
||||
// setSelected:forSegment throws the exception for us (if necessary)
|
||||
[self setSelected:YES forSegment:aSegment];
|
||||
if (_selectedSegment == aSegment)
|
||||
return;
|
||||
|
||||
if (aSegment == -1)
|
||||
{
|
||||
var count = [self segmentCount];
|
||||
|
||||
while (count--)
|
||||
[self setSelected:NO forSegment:count];
|
||||
|
||||
_selectedSegment = -1;
|
||||
}
|
||||
else
|
||||
[self setSelected:YES forSegment:aSegment];
|
||||
}
|
||||
|
||||
/*!
|
||||
|
||||
@@ -61,5 +61,36 @@
|
||||
[self assert:[_segmentedControl selectedSegment] equals:-1];
|
||||
}
|
||||
|
||||
- (void)testDeselectAll
|
||||
{
|
||||
[_segmentedControl setTrackingMode:CPSegmentSwitchTrackingSelectAny];
|
||||
[_segmentedControl setSegmentCount:2];
|
||||
[_segmentedControl setSelected:YES forSegment:0];
|
||||
[_segmentedControl setSelected:YES forSegment:1];
|
||||
[self assert:[_segmentedControl selectedSegment] equals:1];
|
||||
|
||||
[self assertNoThrow:function()
|
||||
{
|
||||
[_segmentedControl setSelectedSegment:-1];
|
||||
}];
|
||||
|
||||
[self assert:[_segmentedControl selectedSegment] equals:-1];
|
||||
[self assertFalse:[_segmentedControl isSelectedForSegment:0]];
|
||||
[self assertFalse:[_segmentedControl isSelectedForSegment:1]];
|
||||
}
|
||||
|
||||
- (void)testSetSelectedSegmentDoesNotDeselect
|
||||
{
|
||||
[_segmentedControl setTrackingMode:CPSegmentSwitchTrackingSelectAny];
|
||||
[_segmentedControl setSelected:YES forSegment:0];
|
||||
[_segmentedControl setSelected:YES forSegment:1];
|
||||
[self assert:[_segmentedControl selectedSegment] equals:1];
|
||||
|
||||
[_segmentedControl setSelectedSegment:1];
|
||||
|
||||
[self assertTrue:[_segmentedControl isSelectedForSegment:0]];
|
||||
[self assertTrue:[_segmentedControl isSelectedForSegment:1]];
|
||||
}
|
||||
|
||||
@end
|
||||
|
||||
|
||||
Reference in New Issue
Block a user