*/
- (IBAction)showOutputPanel:(id)sender
{
- [self.outputPanel showOutputPanel:sender];
+ [self.outputPanel showWindow:sender];
}
- (IBAction)showPicturePanel:(id)sender
*/
@interface HBOutputPanelController : NSWindowController
-- (IBAction)showOutputPanel:(id)sender;
- (IBAction)clearOutput:(id)sender;
- (IBAction)copyAllOutputToPasteboard:(id)sender;
- (IBAction)openActivityLogFile:(id)sender;
/**
* Loads output panel from OutputPanel.nib and shows it.
*/
-- (IBAction)showOutputPanel:(id)sender
+- (IBAction)showWindow:(id)sender
{
if ([[self window] isVisible])
{
}
else
{
- [textView scrollRangeToVisible:NSMakeRange([outputTextStorage length], 0)];
- [self showWindow:sender];
+ [textView scrollToEndOfDocument:self];
+ [super showWindow:sender];
- [[NSUserDefaults standardUserDefaults] setBool:YES forKey:@"OutputPanelIsOpen"];
+ [[NSUserDefaults standardUserDefaults] setBool:YES forKey:@"OutputPanelIsOpen"];
}
}
if (outputTextStorage.length > TextStorageUpperSizeLimit)
[outputTextStorage deleteCharactersInRange:NSMakeRange(0, [outputTextStorage length] - TextStorageLowerSizeLimit)];
- [textView scrollRangeToVisible:NSMakeRange([outputTextStorage length], 0)];
+ if (self.window.isVisible)
+ {
+ [textView scrollToEndOfDocument:self];
+ }
FILE *f = fopen(_outputLogFile.fileSystemRepresentation, "a");
fprintf(f, "%s", text.UTF8String);