mirror of
git://git.tartarus.org/simon/puzzles.git
synced 2025-04-21 08:01:30 -07:00
Implement tick marks in the Type menu on OS X.
[originally from svn r7981]
This commit is contained in:
19
osx.m
19
osx.m
@ -426,6 +426,7 @@ struct frontend {
|
|||||||
- (void)deactivateTimer;
|
- (void)deactivateTimer;
|
||||||
- (void)setStatusLine:(char *)text;
|
- (void)setStatusLine:(char *)text;
|
||||||
- (void)resizeForNewGameParams;
|
- (void)resizeForNewGameParams;
|
||||||
|
- (void)updateTypeMenuTick;
|
||||||
@end
|
@end
|
||||||
|
|
||||||
@implementation MyImageView
|
@implementation MyImageView
|
||||||
@ -766,6 +767,7 @@ struct frontend {
|
|||||||
}
|
}
|
||||||
|
|
||||||
[self resizeForNewGameParams];
|
[self resizeForNewGameParams];
|
||||||
|
[self updateTypeMenuTick];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
- (void)undoMove:(id)sender
|
- (void)undoMove:(id)sender
|
||||||
@ -815,6 +817,19 @@ struct frontend {
|
|||||||
{
|
{
|
||||||
while ([typemenu numberOfItems] > 1)
|
while ([typemenu numberOfItems] > 1)
|
||||||
[typemenu removeItemAtIndex:0];
|
[typemenu removeItemAtIndex:0];
|
||||||
|
[[typemenu itemAtIndex:0] setState:NSOffState];
|
||||||
|
}
|
||||||
|
|
||||||
|
- (void)updateTypeMenuTick
|
||||||
|
{
|
||||||
|
int i, total, n;
|
||||||
|
|
||||||
|
total = [typemenu numberOfItems];
|
||||||
|
n = midend_which_preset(me);
|
||||||
|
if (n < 0)
|
||||||
|
n = total - 1; /* that's always where "Custom" lives */
|
||||||
|
for (i = 0; i < total; i++)
|
||||||
|
[[typemenu itemAtIndex:i] setState:(i == n ? NSOnState : NSOffState)];
|
||||||
}
|
}
|
||||||
|
|
||||||
- (void)becomeKeyWindow
|
- (void)becomeKeyWindow
|
||||||
@ -849,6 +864,8 @@ struct frontend {
|
|||||||
[typemenu insertItem:item atIndex:0];
|
[typemenu insertItem:item atIndex:0];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[self updateTypeMenuTick];
|
||||||
}
|
}
|
||||||
|
|
||||||
- (void)resignKeyWindow
|
- (void)resignKeyWindow
|
||||||
@ -894,6 +911,7 @@ struct frontend {
|
|||||||
midend_new_game(me);
|
midend_new_game(me);
|
||||||
|
|
||||||
[self resizeForNewGameParams];
|
[self resizeForNewGameParams];
|
||||||
|
[self updateTypeMenuTick];
|
||||||
}
|
}
|
||||||
|
|
||||||
- (void)startConfigureSheet:(int)which
|
- (void)startConfigureSheet:(int)which
|
||||||
@ -1215,6 +1233,7 @@ struct frontend {
|
|||||||
} else {
|
} else {
|
||||||
midend_new_game(me);
|
midend_new_game(me);
|
||||||
[self resizeForNewGameParams];
|
[self resizeForNewGameParams];
|
||||||
|
[self updateTypeMenuTick];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
sfree(cfg_controls);
|
sfree(cfg_controls);
|
||||||
|
Reference in New Issue
Block a user