diff options
author | 2015-04-09 22:01:16 +1000 | |
---|---|---|
committer | 2015-04-09 22:01:16 +1000 | |
commit | 768fbd1b646d4b3a9596d4bc705a4bc72b417463 (patch) | |
tree | 66e59046ffa9a694367f8fbefb975255eb3312c1 /src/osd | |
parent | e973a403a097c6374ac90912e07ab4f0f4b57732 (diff) |
Honour -debugger_font and -debugger_font_size in Cocoa debugger.
Not perfect yet - text fields and popup menus aren't sized to fit
Diffstat (limited to 'src/osd')
-rw-r--r-- | src/osd/modules/debugger/osx/debugconsole.m | 2 | ||||
-rw-r--r-- | src/osd/modules/debugger/osx/debugview.h | 2 | ||||
-rw-r--r-- | src/osd/modules/debugger/osx/debugview.m | 18 | ||||
-rw-r--r-- | src/osd/modules/debugger/osx/disassemblyviewer.m | 5 | ||||
-rw-r--r-- | src/osd/modules/debugger/osx/memoryviewer.m | 11 | ||||
-rw-r--r-- | src/osd/modules/debugger/osx/pointsviewer.m | 2 |
6 files changed, 27 insertions, 13 deletions
diff --git a/src/osd/modules/debugger/osx/debugconsole.m b/src/osd/modules/debugger/osx/debugconsole.m index a0410fcedfa..2f5f7746e5f 100644 --- a/src/osd/modules/debugger/osx/debugconsole.m +++ b/src/osd/modules/debugger/osx/debugconsole.m @@ -77,7 +77,7 @@ // create the command field commandField = [[NSTextField alloc] initWithFrame:NSMakeRect(0, 0, 100, 19)]; [commandField setAutoresizingMask:(NSViewWidthSizable | NSViewMaxYMargin)]; - [commandField setFont:[[MAMEDebugView class] defaultFont]]; + [commandField setFont:[[MAMEDebugView class] defaultFontForMachine:m]]; [commandField setFocusRingType:NSFocusRingTypeNone]; [commandField setTarget:self]; [commandField setAction:@selector(doCommand:)]; diff --git a/src/osd/modules/debugger/osx/debugview.h b/src/osd/modules/debugger/osx/debugview.h index d45d6a6e045..260bb580ac9 100644 --- a/src/osd/modules/debugger/osx/debugview.h +++ b/src/osd/modules/debugger/osx/debugview.h @@ -34,7 +34,7 @@ NSLayoutManager *layoutManager; } -+ (NSFont *)defaultFont; ++ (NSFont *)defaultFontForMachine:(running_machine &)m; - (id)initWithFrame:(NSRect)f type:(debug_view_type)t machine:(running_machine &)m wholeLineScroll:(BOOL)w; diff --git a/src/osd/modules/debugger/osx/debugview.m b/src/osd/modules/debugger/osx/debugview.m index e46e814da4f..7e53ee7d803 100644 --- a/src/osd/modules/debugger/osx/debugview.m +++ b/src/osd/modules/debugger/osx/debugview.m @@ -13,6 +13,10 @@ #include "debug/debugcpu.h" +#include "modules/lib/osdobj_common.h" + +#include <string.h> + static NSColor *DefaultForeground; static NSColor *ChangedForeground; @@ -209,8 +213,16 @@ static void debugwin_view_update(debug_view &view, void *osdprivate) } -+ (NSFont *)defaultFont { - return [NSFont userFixedPitchFontOfSize:0]; ++ (NSFont *)defaultFontForMachine:(running_machine &)m { + osd_options const &options = downcast<osd_options const &>(m.options()); + char const *const face = options.debugger_font(); + float const size = options.debugger_font_size(); + + NSFont *const result = (('\0' != *face) && (0 != strcmp(OSDOPTVAL_AUTO, face))) + ? [NSFont fontWithName:[NSString stringWithUTF8String:face] size:MAX(0, size)] + : nil; + + return (nil != result) ? result : [NSFont userFixedPitchFontOfSize:MAX(0, size)]; } @@ -238,7 +250,7 @@ static void debugwin_view_update(debug_view &view, void *osdprivate) [text addLayoutManager:layoutManager]; [layoutManager release]; - [self setFont:[[self class] defaultFont]]; + [self setFont:[[self class] defaultFontForMachine:m]]; NSMenu *contextMenu = [[NSMenu allocWithZone:[NSMenu menuZone]] initWithTitle:@"Context"]; [self addContextMenuItemsToMenu:contextMenu]; diff --git a/src/osd/modules/debugger/osx/disassemblyviewer.m b/src/osd/modules/debugger/osx/disassemblyviewer.m index 7653b322d32..61846d2e879 100644 --- a/src/osd/modules/debugger/osx/disassemblyviewer.m +++ b/src/osd/modules/debugger/osx/disassemblyviewer.m @@ -31,11 +31,12 @@ if (!(self = [super initWithMachine:m title:@"Disassembly" console:c])) return nil; NSRect const contentBounds = [[window contentView] bounds]; + NSFont *const defaultFont = [[MAMEDebugView class] defaultFontForMachine:m]; // create the expression field expressionField = [[NSTextField alloc] initWithFrame:NSMakeRect(0, 0, 100, 19)]; [expressionField setAutoresizingMask:(NSViewWidthSizable | NSViewMaxXMargin | NSViewMinYMargin)]; - [expressionField setFont:[[MAMEDebugView class] defaultFont]]; + [expressionField setFont:defaultFont]; [expressionField setFocusRingType:NSFocusRingTypeNone]; [expressionField setTarget:self]; [expressionField setAction:@selector(doExpression:)]; @@ -51,7 +52,7 @@ [subviewButton setAutoresizingMask:(NSViewWidthSizable | NSViewMinXMargin | NSViewMinYMargin)]; [subviewButton setBezelStyle:NSShadowlessSquareBezelStyle]; [subviewButton setFocusRingType:NSFocusRingTypeNone]; - [subviewButton setFont:[[MAMEDebugView class] defaultFont]]; + [subviewButton setFont:defaultFont]; [subviewButton setTarget:self]; [subviewButton setAction:@selector(changeSubview:)]; [[subviewButton cell] setArrowPosition:NSPopUpArrowAtBottom]; diff --git a/src/osd/modules/debugger/osx/memoryviewer.m b/src/osd/modules/debugger/osx/memoryviewer.m index 18aa0b380da..5812aec65b0 100644 --- a/src/osd/modules/debugger/osx/memoryviewer.m +++ b/src/osd/modules/debugger/osx/memoryviewer.m @@ -25,16 +25,17 @@ NSScrollView *memoryScroll; NSView *expressionContainer; NSPopUpButton *actionButton; - NSRect contentBounds, expressionFrame; + NSRect expressionFrame; if (!(self = [super initWithMachine:m title:@"Memory" console:c])) return nil; - contentBounds = [[window contentView] bounds]; + NSRect const contentBounds = [[window contentView] bounds]; + NSFont *const defaultFont = [[MAMEDebugView class] defaultFontForMachine:m]; // create the expression field expressionField = [[NSTextField alloc] initWithFrame:NSMakeRect(0, 0, 100, 19)]; [expressionField setAutoresizingMask:(NSViewWidthSizable | NSViewMaxXMargin | NSViewMinYMargin)]; - [expressionField setFont:[[MAMEDebugView class] defaultFont]]; + [expressionField setFont:defaultFont]; [expressionField setFocusRingType:NSFocusRingTypeNone]; [expressionField setTarget:self]; [expressionField setAction:@selector(doExpression:)]; @@ -50,7 +51,7 @@ [subviewButton setAutoresizingMask:(NSViewWidthSizable | NSViewMinXMargin | NSViewMinYMargin)]; [subviewButton setBezelStyle:NSShadowlessSquareBezelStyle]; [subviewButton setFocusRingType:NSFocusRingTypeNone]; - [subviewButton setFont:[[MAMEDebugView class] defaultFont]]; + [subviewButton setFont:defaultFont]; [subviewButton setTarget:self]; [subviewButton setAction:@selector(changeSubview:)]; [[subviewButton cell] setArrowPosition:NSPopUpArrowAtBottom]; @@ -144,7 +145,7 @@ } -- (BOOL)selectSubviewForDevice:(device_t *)device { +- (BOOL)selectSubviewForDevice:(device_t *)device { BOOL const result = [memoryView selectSubviewForDevice:device]; [subviewButton selectItemAtIndex:[subviewButton indexOfItemWithTag:[memoryView selectedSubviewIndex]]]; [window setTitle:[NSString stringWithFormat:@"Memory: %@", [memoryView selectedSubviewName]]]; diff --git a/src/osd/modules/debugger/osx/pointsviewer.m b/src/osd/modules/debugger/osx/pointsviewer.m index dca14527b92..81cc4ee5f8e 100644 --- a/src/osd/modules/debugger/osx/pointsviewer.m +++ b/src/osd/modules/debugger/osx/pointsviewer.m @@ -36,7 +36,7 @@ [subviewButton setAutoresizingMask:(NSViewWidthSizable | NSViewMinYMargin)]; [subviewButton setBezelStyle:NSShadowlessSquareBezelStyle]; [subviewButton setFocusRingType:NSFocusRingTypeNone]; - [subviewButton setFont:[[MAMEDebugView class] defaultFont]]; + [subviewButton setFont:[[MAMEDebugView class] defaultFontForMachine:m]]; [subviewButton setTarget:self]; [subviewButton setAction:@selector(changeSubview:)]; [[subviewButton cell] setArrowPosition:NSPopUpArrowAtBottom]; |