~mdw
/
sgt
/
puzzles
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
GNUstep compatibility: spell null selectors "NULL", not "nil".
[sgt/puzzles]
/
osx.m
diff --git
a/osx.m
b/osx.m
index
c59ff56
..
afbf6b2
100644
(file)
--- a/
osx.m
+++ b/
osx.m
@@
-125,7
+125,7
@@
void fatal(char *fmt, ...)
} else {
alert = [[alert init] autorelease];
[alert addButtonWithTitle:@"Oh dear"];
} else {
alert = [[alert init] autorelease];
[alert addButtonWithTitle:@"Oh dear"];
- [alert setInformativeText:[NSString stringWith
C
String:errorbuf]];
+ [alert setInformativeText:[NSString stringWith
UTF8
String:errorbuf]];
[alert runModal];
}
exit(1);
[alert runModal];
}
exit(1);
@@
-211,7
+211,7
@@
void document_add_puzzle(document *doc, const game *game, game_params *par,
NSMenu *newmenu(const char *title)
{
return [[[NSMenu allocWithZone:[NSMenu menuZone]]
NSMenu *newmenu(const char *title)
{
return [[[NSMenu allocWithZone:[NSMenu menuZone]]
- initWithTitle:[NSString stringWith
C
String:title]]
+ initWithTitle:[NSString stringWith
UTF8
String:title]]
autorelease];
}
autorelease];
}
@@
-221,7
+221,7
@@
NSMenu *newsubmenu(NSMenu *parent, const char *title)
NSMenu *child;
item = [[[NSMenuItem allocWithZone:[NSMenu menuZone]]
NSMenu *child;
item = [[[NSMenuItem allocWithZone:[NSMenu menuZone]]
- initWithTitle:[NSString stringWith
C
String:title]
+ initWithTitle:[NSString stringWith
UTF8
String:title]
action:NULL
keyEquivalent:@""]
autorelease];
action:NULL
keyEquivalent:@""]
autorelease];
@@
-251,9
+251,9
@@
id initnewitem(NSMenuItem *item, NSMenu *parent, const char *title,
key++;
}
key++;
}
- item = [[item initWithTitle:[NSString stringWith
C
String:title]
+ item = [[item initWithTitle:[NSString stringWith
UTF8
String:title]
action:NULL
action:NULL
- keyEquivalent:[NSString stringWith
C
String:key]]
+ keyEquivalent:[NSString stringWith
UTF8
String:key]]
autorelease];
if (*key)
autorelease];
if (*key)
@@
-327,7
+327,7
@@
NSMenuItem *newitem(NSMenu *parent, char *title, char *key,
[tf setBordered:NO];
[tf setDrawsBackground:NO];
[tf setFont:font1];
[tf setBordered:NO];
[tf setDrawsBackground:NO];
[tf setFont:font1];
- [tf setStringValue:[NSString stringWith
C
String:ver]];
+ [tf setStringValue:[NSString stringWith
UTF8
String:ver]];
[tf sizeToFit];
views[nviews++] = tf;
[tf sizeToFit];
views[nviews++] = tf;
@@
-578,7
+578,7
@@
struct frontend {
NSClosableWindowMask)
backing:NSBackingStoreBuffered
defer:YES];
NSClosableWindowMask)
backing:NSBackingStoreBuffered
defer:YES];
- [self setTitle:[NSString stringWith
C
String:ourgame->name]];
+ [self setTitle:[NSString stringWith
UTF8
String:ourgame->name]];
{
float *colours;
{
float *colours;
@@
-710,9
+710,9
@@
struct frontend {
alert = [[[NSAlert alloc] init] autorelease];
[alert addButtonWithTitle:@"Bah"];
alert = [[[NSAlert alloc] init] autorelease];
[alert addButtonWithTitle:@"Bah"];
- [alert setInformativeText:[NSString stringWith
C
String:message]];
+ [alert setInformativeText:[NSString stringWith
UTF8
String:message]];
[alert beginSheetModalForWindow:self modalDelegate:nil
[alert beginSheetModalForWindow:self modalDelegate:nil
- didEndSelector:
nil
contextInfo:nil];
+ didEndSelector:
NULL
contextInfo:nil];
}
- (void)newGame:(id)sender
}
- (void)newGame:(id)sender
@@
-789,7
+789,7
@@
struct frontend {
NSPasteboard *pb = [NSPasteboard generalPasteboard];
NSArray *a = [NSArray arrayWithObject:NSStringPboardType];
[pb declareTypes:a owner:nil];
NSPasteboard *pb = [NSPasteboard generalPasteboard];
NSArray *a = [NSArray arrayWithObject:NSStringPboardType];
[pb declareTypes:a owner:nil];
- [pb setString:[NSString stringWith
C
String:text]
+ [pb setString:[NSString stringWith
UTF8
String:text]
forType:NSStringPboardType];
} else
NSBeep();
forType:NSStringPboardType];
} else
NSBeep();
@@
-855,7
+855,7
@@
struct frontend {
midend_fetch_preset(me, n, &name, ¶ms);
item = [[[DataMenuItem alloc]
midend_fetch_preset(me, n, &name, ¶ms);
item = [[[DataMenuItem alloc]
- initWithTitle:[NSString stringWith
C
String:name]
+ initWithTitle:[NSString stringWith
UTF8
String:name]
action:NULL keyEquivalent:@""]
autorelease];
action:NULL keyEquivalent:@""]
autorelease];
@@
-1002,7
+1002,7
@@
struct frontend {
[tf setSelectable:NO];
[tf setBordered:NO];
[tf setDrawsBackground:NO];
[tf setSelectable:NO];
[tf setBordered:NO];
[tf setDrawsBackground:NO];
- [[tf cell] setTitle:[NSString stringWith
C
String:i->name]];
+ [[tf cell] setTitle:[NSString stringWith
UTF8
String:i->name]];
[tf sizeToFit];
rect = [tf frame];
if (thish < rect.size.height + 1) thish = rect.size.height + 1;
[tf sizeToFit];
rect = [tf frame];
if (thish < rect.size.height + 1) thish = rect.size.height + 1;
@@
-1013,7
+1013,7
@@
struct frontend {
[tf setEditable:YES];
[tf setSelectable:YES];
[tf setBordered:YES];
[tf setEditable:YES];
[tf setSelectable:YES];
[tf setBordered:YES];
- [[tf cell] setTitle:[NSString stringWith
C
String:i->sval]];
+ [[tf cell] setTitle:[NSString stringWith
UTF8
String:i->sval]];
[tf sizeToFit];
rect = [tf frame];
/*
[tf sizeToFit];
rect = [tf frame];
/*
@@
-1040,7
+1040,7
@@
struct frontend {
b = [[NSButton alloc] initWithFrame:tmprect];
[b setBezelStyle:NSRoundedBezelStyle];
[b setButtonType:NSSwitchButton];
b = [[NSButton alloc] initWithFrame:tmprect];
[b setBezelStyle:NSRoundedBezelStyle];
[b setButtonType:NSSwitchButton];
- [b setTitle:[NSString stringWith
C
String:i->name]];
+ [b setTitle:[NSString stringWith
UTF8
String:i->name]];
[b sizeToFit];
[b setState:(i->ival ? NSOnState : NSOffState)];
rect = [b frame];
[b sizeToFit];
[b setState:(i->ival ? NSOnState : NSOffState)];
rect = [b frame];
@@
-1061,7
+1061,7
@@
struct frontend {
[tf setSelectable:NO];
[tf setBordered:NO];
[tf setDrawsBackground:NO];
[tf setSelectable:NO];
[tf setBordered:NO];
[tf setDrawsBackground:NO];
- [[tf cell] setTitle:[NSString stringWith
C
String:i->name]];
+ [[tf cell] setTitle:[NSString stringWith
UTF8
String:i->name]];
[tf sizeToFit];
rect = [tf frame];
if (thish < rect.size.height + 1) thish = rect.size.height + 1;
[tf sizeToFit];
rect = [tf frame];
if (thish < rect.size.height + 1) thish = rect.size.height + 1;
@@
-1076,13
+1076,15
@@
struct frontend {
p = i->sval;
c = *p++;
while (*p) {
p = i->sval;
c = *p++;
while (*p) {
- char *q;
+ char
cc,
*q;
q = p;
while (*p && *p != c) p++;
q = p;
while (*p && *p != c) p++;
- [pb addItemWithTitle:[NSString stringWithCString:q
- length:p-q]];
+ cc = *p;
+ *p = '\0';
+ [pb addItemWithTitle:[NSString stringWithUTF8String:q]];
+ *p = cc;
if (*p) p++;
}
if (*p) p++;
}
@@
-1177,7
+1179,7
@@
struct frontend {
[[sheet contentView] addSubview:cfg_controls[k]];
[NSApp beginSheet:sheet modalForWindow:self
[[sheet contentView] addSubview:cfg_controls[k]];
[NSApp beginSheet:sheet modalForWindow:self
- modalDelegate:nil didEndSelector:
nil
contextInfo:nil];
+ modalDelegate:nil didEndSelector:
NULL
contextInfo:nil];
}
- (void)specificGame:(id)sender
}
- (void)specificGame:(id)sender
@@
-1230,9
+1232,9
@@
struct frontend {
if (error) {
NSAlert *alert = [[[NSAlert alloc] init] autorelease];
[alert addButtonWithTitle:@"Bah"];
if (error) {
NSAlert *alert = [[[NSAlert alloc] init] autorelease];
[alert addButtonWithTitle:@"Bah"];
- [alert setInformativeText:[NSString stringWith
C
String:error]];
+ [alert setInformativeText:[NSString stringWith
UTF8
String:error]];
[alert beginSheetModalForWindow:self modalDelegate:nil
[alert beginSheetModalForWindow:self modalDelegate:nil
- didEndSelector:
nil
contextInfo:nil];
+ didEndSelector:
NULL
contextInfo:nil];
} else {
midend_new_game(me);
[self resizeForNewGameParams];
} else {
midend_new_game(me);
[self resizeForNewGameParams];
@@
-1253,7
+1255,7
@@
struct frontend {
- (void)setStatusLine:(char *)text
{
- (void)setStatusLine:(char *)text
{
- [[status cell] setTitle:[NSString stringWith
C
String:text]];
+ [[status cell] setTitle:[NSString stringWith
UTF8
String:text]];
}
@end
}
@end
@@
-1344,7
+1346,7
@@
static void osx_draw_text(void *handle, int x, int y, int fonttype,
int fontsize, int align, int colour, char *text)
{
frontend *fe = (frontend *)handle;
int fontsize, int align, int colour, char *text)
{
frontend *fe = (frontend *)handle;
- NSString *string = [NSString stringWith
C
String:text];
+ NSString *string = [NSString stringWith
UTF8
String:text];
NSDictionary *attr;
NSFont *font;
NSSize size;
NSDictionary *attr;
NSFont *font;
NSSize size;
@@
-1378,6
+1380,15
@@
static void osx_draw_text(void *handle, int x, int y, int fonttype,
[string drawAtPoint:point withAttributes:attr];
}
[string drawAtPoint:point withAttributes:attr];
}
+static char *osx_text_fallback(void *handle, const char *const *strings,
+ int nstrings)
+{
+ /*
+ * We assume OS X can cope with any UTF-8 likely to be emitted
+ * by a puzzle.
+ */
+ return dupstr(strings[0]);
+}
struct blitter {
int w, h;
int x, y;
struct blitter {
int w, h;
int x, y;
@@
-1478,7
+1489,8
@@
const struct drawing_api osx_drawing = {
osx_blitter_save,
osx_blitter_load,
NULL, NULL, NULL, NULL, NULL, NULL, /* {begin,end}_{doc,page,puzzle} */
osx_blitter_save,
osx_blitter_load,
NULL, NULL, NULL, NULL, NULL, NULL, /* {begin,end}_{doc,page,puzzle} */
- NULL, /* line_width */
+ NULL, NULL, /* line_width, line_dotted */
+ osx_text_fallback,
};
void deactivate_timer(frontend *fe)
};
void deactivate_timer(frontend *fe)