Changeset 9617
- Timestamp:
- Nov 28, 2009, 8:39:31 PM (12 years ago)
- Location:
- trunk/macosx
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/macosx/Controller.m
r9616 r9617 295 295 tr_bencDictAddBool(&settings, TR_PREFS_KEY_INCOMPLETE_DIR_ENABLED, [fDefaults boolForKey: @"UseIncompleteDownloadFolder"]); 296 296 297 tr_bencDictAddInt(&settings, TR_PREFS_KEY_MSGLEVEL, [fDefaults integerForKey: @"MessageLevel"]);297 tr_bencDictAddInt(&settings, TR_PREFS_KEY_MSGLEVEL, TR_MSG_DBG); 298 298 tr_bencDictAddInt(&settings, TR_PREFS_KEY_PEER_LIMIT_GLOBAL, [fDefaults integerForKey: @"PeersTotal"]); 299 299 tr_bencDictAddInt(&settings, TR_PREFS_KEY_PEER_LIMIT_TORRENT, [fDefaults integerForKey: @"PeersTorrent"]); -
trunk/macosx/MessageWindowController.h
r9296 r9617 32 32 IBOutlet NSButton * fSaveButton, * fClearButton; 33 33 34 NSMutableArray * fMessages ;34 NSMutableArray * fMessages, * fDisplayedMessages; 35 35 36 36 NSDictionary * fAttributes; -
trunk/macosx/MessageWindowController.m
r9610 r9617 32 32 #define LEVEL_DEBUG 2 33 33 34 #define UPDATE_SECONDS 0. 634 #define UPDATE_SECONDS 0.75 35 35 36 36 @interface MessageWindowController (Private) … … 52 52 [fTimer invalidate]; 53 53 [fMessages release]; 54 [fDisplayedMessages release]; 54 55 55 56 [fAttributes release]; … … 67 68 name: @"NSTableViewColumnDidResizeNotification" object: fMessageTable]; 68 69 69 [window setContentBorderThickness: [[fMessageTable enclosingScrollView] frame].origin.yforEdge: NSMinYEdge];70 [window setContentBorderThickness: NSMinY([[fMessageTable enclosingScrollView] frame]) forEdge: NSMinYEdge]; 70 71 71 72 //initially sort peer table by date … … 108 109 109 110 //select proper level in popup button 110 switch ( tr_getMessageLevel())111 switch ([[NSUserDefaults standardUserDefaults] integerForKey: @"MessageLevel"]) 111 112 { 112 113 case TR_MSG_ERR: … … 118 119 case TR_MSG_DBG: 119 120 [fLevelButton selectItemAtIndex: LEVEL_DEBUG]; 121 break; 120 122 } 121 123 122 124 fMessages = [[NSMutableArray alloc] init]; 125 fDisplayedMessages = [[NSMutableArray alloc] init]; 123 126 } 124 127 … … 148 151 const BOOL shouldScroll = currentIndex == 0 || [scroller floatValue] == 1.0 || [scroller isHidden] 149 152 || [scroller knobProportion] == 1.0; 153 154 const NSInteger maxLevel = [[NSUserDefaults standardUserDefaults] integerForKey: @"MessageLevel"]; 155 BOOL changed = NO; 150 156 151 157 for (tr_msg_list * currentMessage = messages; currentMessage != NULL; currentMessage = currentMessage->next) … … 166 172 167 173 [fMessages addObject: message]; 174 175 if (currentMessage->level <= maxLevel) 176 { 177 [fDisplayedMessages addObject: message]; 178 changed = YES; 179 } 168 180 } 169 181 170 182 tr_freeMessageList(messages); 171 183 172 [fMessages sortUsingDescriptors: [fMessageTable sortDescriptors]]; 173 174 [fMessageTable reloadData]; 175 if (shouldScroll) 176 [fMessageTable scrollRowToVisible: [fMessages count]-1]; 184 if (changed) 185 { 186 [fDisplayedMessages sortUsingDescriptors: [fMessageTable sortDescriptors]]; 187 188 [fMessageTable reloadData]; 189 if (shouldScroll) 190 [fMessageTable scrollRowToVisible: [fDisplayedMessages count]-1]; 191 } 177 192 } 178 193 179 194 - (NSInteger) numberOfRowsInTableView: (NSTableView *) tableView 180 195 { 181 return [f Messages count];196 return [fDisplayedMessages count]; 182 197 } 183 198 … … 185 200 { 186 201 NSString * ident = [column identifier]; 187 NSDictionary * message = [f Messages objectAtIndex: row];202 NSDictionary * message = [fDisplayedMessages objectAtIndex: row]; 188 203 189 204 if ([ident isEqualToString: @"Date"]) … … 219 234 fAttributes = [[[[column dataCell] attributedStringValue] attributesAtIndex: 0 effectiveRange: NULL] retain]; 220 235 221 const CGFloat count = floorf([[[f Messages objectAtIndex: row] objectForKey: @"Message"] sizeWithAttributes: fAttributes].width236 const CGFloat count = floorf([[[fDisplayedMessages objectAtIndex: row] objectForKey: @"Message"] sizeWithAttributes: fAttributes].width 222 237 / [column width]); 223 238 return [tableView rowHeight] * (count + 1.0); … … 226 241 - (void) tableView: (NSTableView *) tableView sortDescriptorsDidChange: (NSArray *) oldDescriptors 227 242 { 228 [f Messages sortUsingDescriptors: [fMessageTable sortDescriptors]];243 [fDisplayedMessages sortUsingDescriptors: [fMessageTable sortDescriptors]]; 229 244 [fMessageTable reloadData]; 230 245 } … … 233 248 tableColumn: (NSTableColumn *) column row: (NSInteger) row mouseLocation: (NSPoint) mouseLocation 234 249 { 235 NSDictionary * message = [f Messages objectAtIndex: row];250 NSDictionary * message = [fDisplayedMessages objectAtIndex: row]; 236 251 return [message objectForKey: @"File"]; 237 252 } … … 242 257 NSMutableArray * messageStrings = [NSMutableArray arrayWithCapacity: [indexes count]]; 243 258 244 for (NSDictionary * message in [f Messages objectsAtIndexes: indexes])259 for (NSDictionary * message in [fDisplayedMessages objectsAtIndexes: indexes]) 245 260 [messageStrings addObject: [self stringForMessage: message]]; 246 261 … … 272 287 - (void) changeLevel: (id) sender 273 288 { 274 [self updateLog: nil];275 276 289 NSInteger level; 277 290 switch ([fLevelButton indexOfSelectedItem]) … … 288 301 } 289 302 290 tr_setMessageLevel(level); 303 if ([[NSUserDefaults standardUserDefaults] integerForKey: @"MessageLevel"] == level) 304 return; 305 291 306 [[NSUserDefaults standardUserDefaults] setInteger: level forKey: @"MessageLevel"]; 307 308 if (level == TR_MSG_DBG) //all messages at this level 309 [fDisplayedMessages setArray: fMessages]; 310 else 311 { 312 [fDisplayedMessages removeAllObjects]; 313 for (NSDictionary * message in fMessages) 314 if ([[message objectForKey: @"Level"] integerValue] <= level) 315 [fDisplayedMessages addObject: message]; 316 } 317 318 [fDisplayedMessages sortUsingDescriptors: [fMessageTable sortDescriptors]]; 319 320 [fMessageTable deselectAll: nil]; 321 [fMessageTable reloadData]; 292 322 } 293 323 … … 295 325 { 296 326 [fMessages removeAllObjects]; 327 [fDisplayedMessages removeAllObjects]; 297 328 [fMessageTable reloadData]; 298 329 } … … 303 334 NSSortDescriptor * descriptor = [[[NSSortDescriptor alloc] initWithKey: @"Index" ascending: YES] autorelease]; 304 335 NSArray * descriptors = [[NSArray alloc] initWithObjects: descriptor, nil]; 305 NSArray * sortedMessages = [[f Messages sortedArrayUsingDescriptors: descriptors] retain];336 NSArray * sortedMessages = [[fDisplayedMessages sortedArrayUsingDescriptors: descriptors] retain]; 306 337 [descriptors release]; 307 338
Note: See TracChangeset
for help on using the changeset viewer.