Changeset 3031
- Timestamp:
- Sep 10, 2007, 6:39:54 PM (15 years ago)
- Location:
- trunk/macosx
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/macosx/English.lproj/MessageWindow.nib/classes.nib
r842 r3031 10 10 fDebugWarningIcon = NSImageView; 11 11 fLevelButton = NSPopUpButton; 12 fMessageView = NSTableView; 12 13 fScrollView = NSScrollView; 13 fTextView = NSTextView;14 14 }; 15 15 SUPERCLASS = NSWindowController; -
trunk/macosx/English.lproj/MessageWindow.nib/info.nib
r1846 r3031 4 4 <dict> 5 5 <key>IBDocumentLocation</key> 6 <string> 25 72 356 240 0 0 1152 842</string>6 <string>42 94 356 240 0 0 1680 1028 </string> 7 7 <key>IBFramework Version</key> 8 8 <string>446.1</string> … … 12 12 </array> 13 13 <key>IBSystem Version</key> 14 <string>8 P135</string>14 <string>8R4031</string> 15 15 </dict> 16 16 </plist> -
trunk/macosx/MessageWindowController.h
r1645 r3031 27 27 @interface MessageWindowController : NSWindowController 28 28 { 29 IBOutlet NSTextView * fTextView; 29 //IBOutlet NSTextView * fTextView; 30 IBOutlet NSTableView * fMessageView; 30 31 IBOutlet NSScrollView * fScrollView; 31 32 32 33 IBOutlet NSPopUpButton * fLevelButton; 33 34 35 NSMutableArray * fMessages; 36 34 37 NSTimer * fTimer; 35 NSDictionary * fAttributes;36 37 int fLines;38 38 39 39 IBOutlet NSTextField * fDebugWarningField; -
trunk/macosx/MessageWindowController.m
r1645 r3031 31 31 32 32 #define UPDATE_SECONDS 0.6 33 #define MAX_LINES 250033 //#define MAX_LINES 2500 34 34 35 35 @interface MessageWindowController (Private) … … 45 45 if ((self = [super initWithWindowNibName: name])) 46 46 { 47 NSMutableParagraphStyle * paragraph = [[NSParagraphStyle defaultParagraphStyle] mutableCopy]; 48 [paragraph setHeadIndent: 20.0]; 49 50 fAttributes = [[NSDictionary alloc] initWithObjectsAndKeys: 51 [NSFont fontWithName: @"Monaco" size: 10], NSFontAttributeName, 52 paragraph, NSParagraphStyleAttributeName, nil]; 53 [paragraph release]; 54 55 fLines = 0; 47 fMessages = [[NSMutableArray alloc] init]; 56 48 57 49 fTimer = [NSTimer scheduledTimerWithTimeInterval: UPDATE_SECONDS target: self 58 50 selector: @selector(updateLog:) userInfo: nil repeats: YES]; 59 51 60 [[self window] update]; //make sure nib is loaded right away 52 int level = [[NSUserDefaults standardUserDefaults] integerForKey: @"MessageLevel"]; 53 if (level == TR_MSG_ERR) 54 [fLevelButton selectItemAtIndex: LEVEL_ERROR]; 55 else if (level == TR_MSG_INF) 56 [fLevelButton selectItemAtIndex: LEVEL_INFO]; 57 else if (level == TR_MSG_DBG) 58 [fLevelButton selectItemAtIndex: LEVEL_DEBUG]; 59 else 60 { 61 level = TR_MSG_ERR; 62 [fLevelButton selectItemAtIndex: LEVEL_ERROR]; 63 [[NSUserDefaults standardUserDefaults] setInteger: level forKey: @"MessageLevel"]; 64 } 65 66 tr_setMessageLevel(level); 67 tr_setMessageQueuing(1); 61 68 } 62 69 return self; … … 66 73 { 67 74 [fTimer invalidate]; 68 [f Attributes release];75 [fMessages release]; 69 76 70 77 [super dealloc]; … … 75 82 [[self window] center]; 76 83 77 int level = [[NSUserDefaults standardUserDefaults] integerForKey: @"MessageLevel"];84 int level = tr_getMessageLevel(); 78 85 if (level == TR_MSG_ERR) 79 86 [fLevelButton selectItemAtIndex: LEVEL_ERROR]; … … 90 97 91 98 [self setDebugWarningHidden: level != TR_MSG_DBG]; 92 93 tr_setMessageLevel(level);94 tr_setMessageQueuing(1);95 99 } 96 100 … … 118 122 levelString = @"???"; 119 123 120 dateString = [[NSDate dateWithTimeIntervalSince1970: currentMessage->when]121 descriptionWithCalendarFormat: @"%1m/%d %H:%M:%S" timeZone: nil locale: nil];122 messageString = [NSString stringWithFormat: @"%s%@ %@ %s",123 fLines > 0 ? "\n" : "", dateString, levelString, currentMessage->message];124 125 124 //remove the first line if at max number of lines 126 if (fLines == MAX_LINES)125 /*if (fLines == MAX_LINES) 127 126 { 128 127 unsigned int loc = [[fTextView string] rangeOfString: @"\n"].location; … … 134 133 135 134 [[fTextView textStorage] appendAttributedString: [[[NSAttributedString alloc] initWithString: 136 messageString attributes: fAttributes] autorelease]]; 137 } 135 messageString attributes: fAttributes] autorelease]];*/ 136 137 #warning remove old messages? 138 139 [fMessages addObject: [NSDictionary dictionaryWithObjectsAndKeys: 140 [NSString stringWithUTF8String: currentMessage->message], @"Message", 141 [NSDate dateWithTimeIntervalSince1970: currentMessage->when], @"Date", 142 levelString, @"Level", nil]]; 143 } 144 145 [fMessageView reloadData]; 138 146 139 147 tr_freeMessageList(messages); 140 148 141 if (shouldScroll) 142 [fTextView scrollRangeToVisible: NSMakeRange([[fTextView string] length], 0)]; 149 /*if (shouldScroll) 150 [fTextView scrollRangeToVisible: NSMakeRange([[fTextView string] length], 0)];*/ 151 } 152 153 - (int) numberOfRowsInTableView: (NSTableView *) tableView 154 { 155 return [fMessages count]; 156 } 157 158 - (id) tableView: (NSTableView *) tableView objectValueForTableColumn: (NSTableColumn *) column row: (int) row 159 { 160 NSString * ident = [column identifier]; 161 NSDictionary * message = [fMessages objectAtIndex: row]; 162 163 if ([ident isEqualToString: @"Date"]) 164 return [message objectForKey: @"Date"]; 165 else if ([ident isEqualToString: @"Level"]) 166 return [message objectForKey: @"Level"]; 167 else 168 return [message objectForKey: @"Message"]; 143 169 } 144 170 … … 163 189 - (void) clearLog: (id) sender 164 190 { 165 [f TextView setString: @""];166 fLines = 0;191 [fMessages removeAllObjects]; 192 [fMessageView reloadData]; 167 193 } 168 194 169 195 - (void) writeToFile: (id) sender 170 196 { 171 NSString * string = [[fTextView string] retain];197 /*NSString * string = [[fTextView string] retain]; 172 198 173 199 NSSavePanel * panel = [NSSavePanel savePanel]; … … 177 203 [panel beginSheetForDirectory: nil file: NSLocalizedString(@"untitled", "Save log panel -> default file name") 178 204 modalForWindow: [self window] modalDelegate: self 179 didEndSelector: @selector(writeToFileSheetClosed:returnCode:contextInfo:) contextInfo: string]; 205 didEndSelector: @selector(writeToFileSheetClosed:returnCode:contextInfo:) contextInfo: string];*/ 180 206 } 181 207 182 208 - (void) writeToFileSheetClosed: (NSSavePanel *) panel returnCode: (int) code contextInfo: (NSString *) string 183 209 { 184 if (code == NSOKButton)210 /*if (code == NSOKButton) 185 211 { 186 212 if (![string writeToFile: [panel filename] atomically: YES encoding: NSUTF8StringEncoding error: nil]) … … 200 226 } 201 227 202 [string release]; 228 [string release];*/ 203 229 } 204 230
Note: See TracChangeset
for help on using the changeset viewer.