diff --git a/Modules/Debuggers/ProjectCenter/PCDebugger.m b/Modules/Debuggers/ProjectCenter/PCDebugger.m index 31f9025..f0c9143 100644 --- a/Modules/Debuggers/ProjectCenter/PCDebugger.m +++ b/Modules/Debuggers/ProjectCenter/PCDebugger.m @@ -136,6 +136,7 @@ static NSImage *downImage = nil; viewDelegate = [[PipeDelegate alloc] init]; [debuggerView setDelegate:viewDelegate]; [viewDelegate setTextView:debuggerView]; + [viewDelegate setDebugger:self]; [viewDelegate release]; } return self; diff --git a/Modules/Debuggers/ProjectCenter/PCDebuggerViewDelegateProtocol.h b/Modules/Debuggers/ProjectCenter/PCDebuggerViewDelegateProtocol.h index f5114e1..3cefdab 100644 --- a/Modules/Debuggers/ProjectCenter/PCDebuggerViewDelegateProtocol.h +++ b/Modules/Debuggers/ProjectCenter/PCDebuggerViewDelegateProtocol.h @@ -26,6 +26,7 @@ @class NSTextView; @class NSArray; @class NSString; +@class PCDebugger; @protocol PCDebuggerViewDelegateProtocol @@ -36,6 +37,8 @@ - (NSTextView *)textView; - (void)setTextView: (NSTextView *)tv; +- (PCDebugger *)debugger; +- (void)setDebugger:(PCDebugger *)dbg; - (void) runProgram: (NSString *)path inCurrentDirectory: (NSString *)directory diff --git a/Modules/Debuggers/ProjectCenter/PipeDelegate.h b/Modules/Debuggers/ProjectCenter/PipeDelegate.h index 5efdae5..94e9d9f 100644 --- a/Modules/Debuggers/ProjectCenter/PipeDelegate.h +++ b/Modules/Debuggers/ProjectCenter/PipeDelegate.h @@ -28,6 +28,7 @@ @interface PipeDelegate : NSObject { + PCDebugger *debugger; NSTextView *tView; NSTask *task; NSFileHandle *stdinHandle; diff --git a/Modules/Debuggers/ProjectCenter/PipeDelegate.m b/Modules/Debuggers/ProjectCenter/PipeDelegate.m index f795454..0104983 100644 --- a/Modules/Debuggers/ProjectCenter/PipeDelegate.m +++ b/Modules/Debuggers/ProjectCenter/PipeDelegate.m @@ -36,6 +36,7 @@ #include #import "PipeDelegate.h" +#import "PCDebugger.h" #ifndef NOTIFICATION_CENTER #define NOTIFICATION_CENTER [NSNotificationCenter defaultCenter] @@ -72,6 +73,21 @@ } } +- (PCDebugger *)debugger +{ + return debugger; +} + +- (void)setDebugger:(PCDebugger *)dbg +{ + if (debugger != dbg) + { + [debugger release]; + debugger = dbg; + [debugger retain]; + } +} + - (NSColor *)userInputColor { return userInputColor;