diff --git a/Modules/Debuggers/ProjectCenter/PCDebugger.h b/Modules/Debuggers/ProjectCenter/PCDebugger.h index bf50d6e..36ced58 100644 --- a/Modules/Debuggers/ProjectCenter/PCDebugger.h +++ b/Modules/Debuggers/ProjectCenter/PCDebugger.h @@ -3,10 +3,13 @@ #include #include -@interface PCDebugger : NSObject +#include + +@interface PCDebugger : NSObject { - id consoleView; - id consoleWindow; + id debuggerView; + id debuggerWindow; + NSString *path; NSTask *debuggerTask; id standardInput; id standardOutput; diff --git a/Modules/Debuggers/ProjectCenter/PCDebugger.m b/Modules/Debuggers/ProjectCenter/PCDebugger.m index 68dfdca..6010fe1 100644 --- a/Modules/Debuggers/ProjectCenter/PCDebugger.m +++ b/Modules/Debuggers/ProjectCenter/PCDebugger.m @@ -4,26 +4,70 @@ #include "PCDebugger.h" @implementation PCDebugger -- (id) init +- (id) initWithPath: (NSString *)filePath { - if((self == [super init]) != nil) + if((self = [super init]) != nil) { // initialization here... + if([NSBundle loadNibNamed: @"PCDebugger" owner: self] == NO) + { + return nil; + } } return self; } ++(id) debugExecutableAtPath: (NSString *)filePath +{ + return [[self alloc] initWithPath: filePath]; +} + +- (void) show +{ + [debuggerWindow makeKeyAndOrderFront: self]; + [self startDebugger]; +} + - (void) startDebugger { debuggerTask = [NSTask launchedTaskWithLaunchPath: @"/usr/bin/gdb" - arguments: @""]; + arguments: NULL]; standardInput = [debuggerTask standardInput]; standardOutput = [debuggerTask standardOutput]; } - (void) awakeFromNib { - [consoleView setFont: [NSFont userFixedPitchFontOfSize: 0]]; - [self startDebugger]; + [debuggerView setFont: [NSFont userFixedPitchFontOfSize: 0]]; +} + +- (NSWindow *)debuggerWindow +{ + return debuggerWindow; +} + +- (void)setDebuggerWindow: (NSWindow *)window +{ + ASSIGN(debuggerWindow,window); +} + +- (NSView *)debuggerView +{ + return debuggerView; +} + +- (void)setDebuggerView: (id)view +{ + ASSIGN(debuggerView,view); +} + +- (NSString *)path +{ + return path; +} + +- (void)setPath:(NSString *)p +{ + ASSIGN(path,p); } @end diff --git a/Modules/Debuggers/ProjectCenter/PCDebuggerView.m b/Modules/Debuggers/ProjectCenter/PCDebuggerView.m index 4c1c3bf..9c9d94e 100644 --- a/Modules/Debuggers/ProjectCenter/PCDebuggerView.m +++ b/Modules/Debuggers/ProjectCenter/PCDebuggerView.m @@ -4,5 +4,4 @@ #include "PCDebuggerView.h" @implementation PCDebuggerView - @end diff --git a/Modules/Debuggers/ProjectCenter/Resources/PCDebugger.gorm/data.classes b/Modules/Debuggers/ProjectCenter/Resources/PCDebugger.gorm/data.classes index 10fbef2..4bf6774 100644 --- a/Modules/Debuggers/ProjectCenter/Resources/PCDebugger.gorm/data.classes +++ b/Modules/Debuggers/ProjectCenter/Resources/PCDebugger.gorm/data.classes @@ -4,7 +4,8 @@ Actions = ( ); Outlets = ( - consoleView + debuggerView, + debuggerWindow ); Super = NSObject; }; diff --git a/Modules/Debuggers/ProjectCenter/Resources/PCDebugger.gorm/data.info b/Modules/Debuggers/ProjectCenter/Resources/PCDebugger.gorm/data.info index cc6bdca..3bc8f05 100644 Binary files a/Modules/Debuggers/ProjectCenter/Resources/PCDebugger.gorm/data.info and b/Modules/Debuggers/ProjectCenter/Resources/PCDebugger.gorm/data.info differ diff --git a/Modules/Debuggers/ProjectCenter/Resources/PCDebugger.gorm/objects.gorm b/Modules/Debuggers/ProjectCenter/Resources/PCDebugger.gorm/objects.gorm index 9d261ca..c7aa81d 100644 Binary files a/Modules/Debuggers/ProjectCenter/Resources/PCDebugger.gorm/objects.gorm and b/Modules/Debuggers/ProjectCenter/Resources/PCDebugger.gorm/objects.gorm differ diff --git a/Modules/Editors/ProjectCenter/PCEditor.m b/Modules/Editors/ProjectCenter/PCEditor.m index b8945f2..5de5840 100644 --- a/Modules/Editors/ProjectCenter/PCEditor.m +++ b/Modules/Editors/ProjectCenter/PCEditor.m @@ -25,8 +25,6 @@ #import "PCEditor.h" #import "PCEditorView.h" -//#import "CommandQueryPanel.h" -//#import "LineQueryPanel.h" @implementation PCEditor (UInterface) diff --git a/Modules/GNUmakefile b/Modules/GNUmakefile index 594f28b..00659ea 100644 --- a/Modules/GNUmakefile +++ b/Modules/GNUmakefile @@ -32,7 +32,8 @@ SUBPROJECTS = \ Projects/ResourceSet \ Projects/Tool \ Editors/ProjectCenter \ - Parsers/ProjectCenter + Parsers/ProjectCenter \ + Debuggers/ProjectCenter include $(GNUSTEP_MAKEFILES)/aggregate.make