From 830f65e9b5c27e315fcc14e8b818110801229370 Mon Sep 17 00:00:00 2001 From: Mitchell Livingston Date: Mon, 10 Sep 2007 19:11:30 +0000 Subject: [PATCH] add tooltips and general cleanup to Message Viewer --- Transmission.xcodeproj/project.pbxproj | 2 +- .../MessageWindow.nib/keyedobjects.nib | Bin 10606 -> 10680 bytes macosx/InfoWindowController.m | 3 +- macosx/MessageWindowController.m | 30 ++++++++++++------ 4 files changed, 23 insertions(+), 12 deletions(-) diff --git a/Transmission.xcodeproj/project.pbxproj b/Transmission.xcodeproj/project.pbxproj index 36be8b617..2c1a6f796 100644 --- a/Transmission.xcodeproj/project.pbxproj +++ b/Transmission.xcodeproj/project.pbxproj @@ -340,7 +340,7 @@ 4DFBC2DD09C0970D00D5C571 /* Torrent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Torrent.h; path = macosx/Torrent.h; sourceTree = ""; }; 4DFBC2DE09C0970D00D5C571 /* Torrent.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = Torrent.m; path = macosx/Torrent.m; sourceTree = ""; }; 8D1107310486CEB800E47090 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist; name = Info.plist; path = macosx/Info.plist; sourceTree = ""; }; - 8D1107320486CEB800E47090 /* Transmission.app */ = {isa = PBXFileReference; includeInIndex = 0; lastKnownFileType = wrapper.application; path = Transmission.app; sourceTree = BUILT_PRODUCTS_DIR; }; + 8D1107320486CEB800E47090 /* Transmission.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Transmission.app; sourceTree = BUILT_PRODUCTS_DIR; }; A200B8390A2263BA007BBB1E /* InfoWindowController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = InfoWindowController.h; path = macosx/InfoWindowController.h; sourceTree = ""; }; A200B83A0A2263BA007BBB1E /* InfoWindowController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = InfoWindowController.m; path = macosx/InfoWindowController.m; sourceTree = ""; }; A200B9630A227FD0007BBB1E /* English */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = English; path = macosx/English.lproj/InfoWindow.nib; sourceTree = ""; }; diff --git a/macosx/English.lproj/MessageWindow.nib/keyedobjects.nib b/macosx/English.lproj/MessageWindow.nib/keyedobjects.nib index f1eaed5b3f21e7712ff3c3e76b806809a3ad56f2..2ba8b0633286720a1b04061a0de4642157c3429c 100644 GIT binary patch delta 6320 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 delta 6271 zcma)933yCb`#;N_nLGQPeZ9*_38fk|h#-h9NQj7tAQA~uk@zC2warnK##XMD(pnOs z6rrJ!rgp0Kt*Sn?R7+KB*Vx+npP5P8^!xff&wuW7=Wge`@9+J+%X!cCq}zSp8R@?V zv_J=%fk@C2v<2-zN6-cI1p`4L7zbVhr~uo+ZmFbU_~aU_BTH>%)eyDQrdWTf>g@zZ2{VyTe|vH|!5nU^*NM zGyO0Rj)$+qH{b*~5l(`W;S~5b6*U(wfQ#S<@I&|!Tn9J7?XVJl26w{U@BsV*9)d^V zN%$kY1Aj*liAX{XQ8UyWMWSfb7R8`0s2@tEXBrxcGEf%EL9e3GXdIe=CZZ|mZB#_h z1!xia0Qpy=GPD_OL7$+NXe-)=D$(cY0Q!QSN6~3?4t;|zpl{J-bOn8nenGd;ZFCPk zrPpWZIR+SF1}m@%vsjHaSc?tVh%MNOUD%6#xE>D24e?93DQ#p7u*&1 z#J%uPoQYo>j%VT}_zi}*vl9Qp7HG#MPnD`5g&g;(RX_zQduU&lY<8~7)D z6O6z=gEIUJzJ+h&JNPcXhwtMD_#yrkS0fAf6+gm{;WqpPKLwldGyDew8KyiD#TwKBmV;D!dGA23x=ObpM2;uK9U|eNKabar?o9T5G-phf2XAa2Ol` zi{vY8gzgwPUJ8zb6W}B`C41E`dj1>kSqk?Y_y(MpGt`Z`t)SpaD9mrcMGEo~1#72J zFH`u-sTo(O3EzRM;Cl-B2XGBsr*Ln8pTJG2!zPk0ITh(#zr8q1YC!WVG~l1yiA&t$bZ)$ z{|DSKq7LeoB#cCm`ou*<(ug!6&HBaV4bQJLTli12VVgSBJIG6QUN#nXE`gn47kQ^n z6uN
  • Y#omqss)gFV*595p2}ynO$0U#GG_J5PKkpwR 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 P5DHxxRp?s#@9Xe?Dt|i= diff --git a/macosx/InfoWindowController.m b/macosx/InfoWindowController.m index 818a24cc3..d9bb459c8 100644 --- a/macosx/InfoWindowController.m +++ b/macosx/InfoWindowController.m @@ -820,8 +820,7 @@ return nil; } -- (void) tableView: (NSTableView *) tableView willDisplayCell: (id) cell - forTableColumn: (NSTableColumn *) tableColumn row: (int) row +- (void) tableView: (NSTableView *) tableView willDisplayCell: (id) cell forTableColumn: (NSTableColumn *) tableColumn row: (int) row { if (tableView == fPeerTable) { diff --git a/macosx/MessageWindowController.m b/macosx/MessageWindowController.m index 631ff49a8..75975f233 100644 --- a/macosx/MessageWindowController.m +++ b/macosx/MessageWindowController.m @@ -34,6 +34,7 @@ @interface MessageWindowController (Private) +- (NSString *) stringForMessage: (NSDictionary *) message; - (void) setDebugWarningHidden: (BOOL) hide; @end @@ -113,11 +114,11 @@ { int level = currentMessage->level; if (level == TR_MSG_ERR) - levelString = @"ERR"; + levelString = @"Error"; else if (level == TR_MSG_INF) - levelString = @"INF"; + levelString = @"Info"; else if (level == TR_MSG_DBG) - levelString = @"DBG"; + levelString = @"Debug"; else levelString = @"???"; @@ -127,12 +128,7 @@ unsigned int loc = [[fTextView string] rangeOfString: @"\n"].location; if (loc != NSNotFound) [[fTextView textStorage] deleteCharactersInRange: NSMakeRange(0, loc + 1)]; - } - else - fLines++; - - [[fTextView textStorage] appendAttributedString: [[[NSAttributedString alloc] initWithString: - messageString attributes: fAttributes] autorelease]];*/ + }*/ #warning remove old messages? @@ -168,6 +164,12 @@ return [message objectForKey: @"Message"]; } +- (NSString *) tableView: (NSTableView *) tableView toolTipForCell: (NSCell *) cell rect: (NSRectPointer) rect + tableColumn: (NSTableColumn *) column row: (int) row mouseLocation: (NSPoint) mouseLocation +{ + return [self stringForMessage: [fMessages objectAtIndex: row]]; +} + - (void) changeLevel: (id) sender { [self updateLog: nil]; @@ -228,6 +230,16 @@ [string release];*/ } +@end + +@implementation MessageWindowController (Private) + +- (NSString *) stringForMessage: (NSDictionary *) message +{ + return [NSString stringWithFormat: @"%@\n%@\n\n%@", [message objectForKey: @"Date"], + [message objectForKey: @"Level"], [message objectForKey: @"Message"]]; +} + - (void) setDebugWarningHidden: (BOOL) hide { [fDebugWarningField setHidden: hide];