summaryrefslogtreecommitdiffstatshomepage
path: root/src/osd/modules/debugger/osx/debugconsole.mm
diff options
context:
space:
mode:
Diffstat (limited to 'src/osd/modules/debugger/osx/debugconsole.mm')
-rw-r--r--src/osd/modules/debugger/osx/debugconsole.mm21
1 files changed, 20 insertions, 1 deletions
diff --git a/src/osd/modules/debugger/osx/debugconsole.mm b/src/osd/modules/debugger/osx/debugconsole.mm
index ac17b10bdac..417ca12ce2f 100644
--- a/src/osd/modules/debugger/osx/debugconsole.mm
+++ b/src/osd/modules/debugger/osx/debugconsole.mm
@@ -31,7 +31,6 @@
@implementation MAMEDebugConsole
- (id)initWithMachine:(running_machine &)m {
- NSSplitView *regSplit, *dasmSplit;
NSScrollView *regScroll, *dasmScroll, *consoleScroll;
NSView *consoleContainer;
NSPopUpButton *actionButton;
@@ -426,12 +425,32 @@
- (void)saveConfigurationToNode:(util::xml::data_node *)node {
[super saveConfigurationToNode:node];
node->set_attribute_int("type", MAME_DEBUGGER_WINDOW_TYPE_CONSOLE);
+ util::xml::data_node *const splits = node->add_child("splits", nullptr);
+ if (splits)
+ {
+ splits->set_attribute_float("state",
+ [regSplit isSubviewCollapsed:[[regSplit subviews] objectAtIndex:0]]
+ ? 0.0
+ : NSMaxX([[[regSplit subviews] objectAtIndex:0] frame]));
+ splits->set_attribute_float("disassembly",
+ [dasmSplit isSubviewCollapsed:[[dasmSplit subviews] objectAtIndex:0]]
+ ? 0.0
+ : NSMaxY([[[dasmSplit subviews] objectAtIndex:0] frame]));
+ }
[dasmView saveConfigurationToNode:node];
}
- (void)restoreConfigurationFromNode:(util::xml::data_node const *)node {
[super restoreConfigurationFromNode:node];
+ util::xml::data_node const *const splits = node->get_child("splits");
+ if (splits)
+ {
+ [regSplit setPosition:splits->get_attribute_float("state", NSMaxX([[[regSplit subviews] objectAtIndex:0] frame]))
+ ofDividerAtIndex:0];
+ [dasmSplit setPosition:splits->get_attribute_float("disassembly", NSMaxY([[[dasmSplit subviews] objectAtIndex:0] frame]))
+ ofDividerAtIndex:0];
+ }
[dasmView restoreConfigurationFromNode:node];
}