aboutsummaryrefslogtreecommitdiff
path: root/osx.m
diff options
context:
space:
mode:
authorSimon Tatham <anakin@pobox.com>2005-05-30 16:15:34 +0000
committerSimon Tatham <anakin@pobox.com>2005-05-30 16:15:34 +0000
commit90560462c4842dccc0288eb408f15539acc0ab83 (patch)
treed32e6a40e8f20409f2fe4709ff85607a217e9d1f /osx.m
parent7ddaa1382f064466f158315198788daf33b05052 (diff)
downloadpuzzles-90560462c4842dccc0288eb408f15539acc0ab83.zip
puzzles-90560462c4842dccc0288eb408f15539acc0ab83.tar.gz
puzzles-90560462c4842dccc0288eb408f15539acc0ab83.tar.bz2
puzzles-90560462c4842dccc0288eb408f15539acc0ab83.tar.xz
First cut at a game timer. Yet another backend function which
indicates whether a particular game state should have the timer going (for Mines the initial indeterminate state does not have this property, and neither does a dead or won state); a midend function that optionally (on request from the game) prepends a timer to the front of the status bar text; some complicated midend timing code. It's not great. It's ugly; it's probably slightly inaccurate; it's got no provision for anyone but the game author decreeing whether a game is timed or not. But Mines can't be taken seriously without a timer, so it's a start. [originally from svn r5866]
Diffstat (limited to 'osx.m')
-rw-r--r--osx.m10
1 files changed, 6 insertions, 4 deletions
diff --git a/osx.m b/osx.m
index ed33bf6..039f081 100644
--- a/osx.m
+++ b/osx.m
@@ -383,7 +383,7 @@ struct frontend {
- (void)keyDown:(NSEvent *)ev;
- (void)activateTimer;
- (void)deactivateTimer;
-- (void)setStatusLine:(NSString *)text;
+- (void)setStatusLine:(char *)text;
@end
@implementation MyImageView
@@ -1131,9 +1131,11 @@ struct frontend {
[self sheetEndWithStatus:NO];
}
-- (void)setStatusLine:(NSString *)text
+- (void)setStatusLine:(char *)text
{
- [[status cell] setTitle:text];
+ char *rewritten = midend_rewrite_statusbar(me, text);
+ [[status cell] setTitle:[NSString stringWithCString:rewritten]];
+ sfree(rewritten);
}
@end
@@ -1267,7 +1269,7 @@ void activate_timer(frontend *fe)
void status_bar(frontend *fe, char *text)
{
- [fe->window setStatusLine:[NSString stringWithCString:text]];
+ [fe->window setStatusLine:text];
}
/* ----------------------------------------------------------------------