From c264f9d366717403c70404f0e916a9d11409c72c Mon Sep 17 00:00:00 2001 From: Mitchell Livingston Date: Sat, 22 Oct 2011 20:45:20 +0000 Subject: [PATCH] experimented with updated priority images --- Transmission.xcodeproj/project.pbxproj | 34 ++- macosx/FileOutlineController.m | 6 +- macosx/FilePriorityCell.m | 18 +- macosx/Images/PriorityHigh.png | Bin 245 -> 0 bytes macosx/Images/PriorityHighTemplate.png | Bin 0 -> 340 bytes macosx/Images/PriorityLow.png | Bin 234 -> 0 bytes macosx/Images/PriorityLowTemplate.png | Bin 0 -> 335 bytes macosx/Images/PriorityNone.png | Bin 183 -> 0 bytes macosx/Images/PriorityNormal.png | Bin 213 -> 0 bytes macosx/Images/PriorityNormalTemplate.png | Bin 0 -> 185 bytes macosx/Makefile.am | 2 + macosx/NSImageAdditions.h | 31 ++ macosx/NSImageAdditions.m | 43 +++ macosx/TorrentCell.m | 12 +- .../TransmissionHelp.helpindex | Bin 40824 -> 40827 bytes .../TransmissionHelp/html/gettingstarted.html | 2 +- macosx/en.lproj/InfoOptionsView.xib | 280 +++++++++++++----- 17 files changed, 324 insertions(+), 104 deletions(-) delete mode 100644 macosx/Images/PriorityHigh.png create mode 100644 macosx/Images/PriorityHighTemplate.png delete mode 100644 macosx/Images/PriorityLow.png create mode 100644 macosx/Images/PriorityLowTemplate.png delete mode 100644 macosx/Images/PriorityNone.png delete mode 100644 macosx/Images/PriorityNormal.png create mode 100644 macosx/Images/PriorityNormalTemplate.png create mode 100644 macosx/NSImageAdditions.h create mode 100644 macosx/NSImageAdditions.m diff --git a/Transmission.xcodeproj/project.pbxproj b/Transmission.xcodeproj/project.pbxproj index d14c89654..68c20ec36 100644 --- a/Transmission.xcodeproj/project.pbxproj +++ b/Transmission.xcodeproj/project.pbxproj @@ -105,10 +105,9 @@ A209ECA2114319C3002B02D1 /* InfoWindow.xib in Resources */ = {isa = PBXBuildFile; fileRef = A209ECA1114319C3002B02D1 /* InfoWindow.xib */; }; A209EE5C1144B51E002B02D1 /* history.c in Sources */ = {isa = PBXBuildFile; fileRef = A209EE5A1144B51E002B02D1 /* history.c */; }; A209EE5D1144B51E002B02D1 /* history.h in Headers */ = {isa = PBXBuildFile; fileRef = A209EE5B1144B51E002B02D1 /* history.h */; }; - A20B6F6B0C4D842B0034AB1D /* PriorityLow.png in Resources */ = {isa = PBXBuildFile; fileRef = A20B6F6A0C4D842B0034AB1D /* PriorityLow.png */; }; - A20B6F830C4D8A610034AB1D /* PriorityHigh.png in Resources */ = {isa = PBXBuildFile; fileRef = A20B6F820C4D8A610034AB1D /* PriorityHigh.png */; }; - A20B6FA50C4D97840034AB1D /* PriorityNone.png in Resources */ = {isa = PBXBuildFile; fileRef = A20B6FA40C4D97840034AB1D /* PriorityNone.png */; }; - A20B6FAE0C4D9B040034AB1D /* PriorityNormal.png in Resources */ = {isa = PBXBuildFile; fileRef = A20B6FAD0C4D9B040034AB1D /* PriorityNormal.png */; }; + A20B6F6B0C4D842B0034AB1D /* PriorityLowTemplate.png in Resources */ = {isa = PBXBuildFile; fileRef = A20B6F6A0C4D842B0034AB1D /* PriorityLowTemplate.png */; }; + A20B6F830C4D8A610034AB1D /* PriorityHighTemplate.png in Resources */ = {isa = PBXBuildFile; fileRef = A20B6F820C4D8A610034AB1D /* PriorityHighTemplate.png */; }; + A20B6FAE0C4D9B040034AB1D /* PriorityNormalTemplate.png in Resources */ = {isa = PBXBuildFile; fileRef = A20B6FAD0C4D9B040034AB1D /* PriorityNormalTemplate.png */; }; A20BFFB70D091CC700CE5D2B /* ToolbarSegmentedCell.m in Sources */ = {isa = PBXBuildFile; fileRef = A20BFFB60D091CC700CE5D2B /* ToolbarSegmentedCell.m */; }; A21282A80CA6C66800EAEE0F /* StatusBarView.m in Sources */ = {isa = PBXBuildFile; fileRef = A21282A60CA6C66800EAEE0F /* StatusBarView.m */; }; A215BF5C0F02EBB800350CDB /* GroupRules.xib in Resources */ = {isa = PBXBuildFile; fileRef = A215BF5B0F02EBB800350CDB /* GroupRules.xib */; }; @@ -155,6 +154,7 @@ A232F07E0EEA034A00041646 /* BonjourController.m in Sources */ = {isa = PBXBuildFile; fileRef = A232F07D0EEA034A00041646 /* BonjourController.m */; }; A233BD330D8C6585007EE7B4 /* MessageWindow.xib in Resources */ = {isa = PBXBuildFile; fileRef = A233BD320D8C6585007EE7B4 /* MessageWindow.xib */; }; A233BD690D8CF2C7007EE7B4 /* StatsWindow.xib in Resources */ = {isa = PBXBuildFile; fileRef = A233BD680D8CF2C7007EE7B4 /* StatsWindow.xib */; }; + A234EA541453563B000F3E97 /* NSImageAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = A234EA531453563B000F3E97 /* NSImageAdditions.m */; }; A23547E211CD0B090046EAE6 /* cache.c in Sources */ = {isa = PBXBuildFile; fileRef = A23547E011CD0B090046EAE6 /* cache.c */; }; A23547E311CD0B090046EAE6 /* cache.h in Headers */ = {isa = PBXBuildFile; fileRef = A23547E111CD0B090046EAE6 /* cache.h */; }; A2385DD40BFE06C800B24EF6 /* DragOverlayWindow.m in Sources */ = {isa = PBXBuildFile; fileRef = A2385DD20BFE06C800B24EF6 /* DragOverlayWindow.m */; }; @@ -580,10 +580,9 @@ A209ECA1114319C3002B02D1 /* InfoWindow.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = InfoWindow.xib; path = macosx/InfoWindow.xib; sourceTree = ""; }; A209EE5A1144B51E002B02D1 /* history.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = history.c; path = libtransmission/history.c; sourceTree = ""; }; A209EE5B1144B51E002B02D1 /* history.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = history.h; path = libtransmission/history.h; sourceTree = ""; }; - A20B6F6A0C4D842B0034AB1D /* PriorityLow.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = PriorityLow.png; path = macosx/Images/PriorityLow.png; sourceTree = ""; }; - A20B6F820C4D8A610034AB1D /* PriorityHigh.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = PriorityHigh.png; path = macosx/Images/PriorityHigh.png; sourceTree = ""; }; - A20B6FA40C4D97840034AB1D /* PriorityNone.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = PriorityNone.png; path = macosx/Images/PriorityNone.png; sourceTree = ""; }; - A20B6FAD0C4D9B040034AB1D /* PriorityNormal.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = PriorityNormal.png; path = macosx/Images/PriorityNormal.png; sourceTree = ""; }; + A20B6F6A0C4D842B0034AB1D /* PriorityLowTemplate.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = PriorityLowTemplate.png; path = macosx/Images/PriorityLowTemplate.png; sourceTree = ""; }; + A20B6F820C4D8A610034AB1D /* PriorityHighTemplate.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = PriorityHighTemplate.png; path = macosx/Images/PriorityHighTemplate.png; sourceTree = ""; }; + A20B6FAD0C4D9B040034AB1D /* PriorityNormalTemplate.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = PriorityNormalTemplate.png; path = macosx/Images/PriorityNormalTemplate.png; sourceTree = ""; }; A20BFFB50D091CC700CE5D2B /* ToolbarSegmentedCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ToolbarSegmentedCell.h; path = macosx/ToolbarSegmentedCell.h; sourceTree = ""; }; A20BFFB60D091CC700CE5D2B /* ToolbarSegmentedCell.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = ToolbarSegmentedCell.m; path = macosx/ToolbarSegmentedCell.m; sourceTree = ""; }; A21282A50CA6C66800EAEE0F /* StatusBarView.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = StatusBarView.h; path = macosx/StatusBarView.h; sourceTree = ""; }; @@ -659,6 +658,8 @@ A232F07D0EEA034A00041646 /* BonjourController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = BonjourController.m; path = macosx/BonjourController.m; sourceTree = ""; }; A233BD320D8C6585007EE7B4 /* MessageWindow.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = MessageWindow.xib; path = macosx/MessageWindow.xib; sourceTree = ""; }; A233BD680D8CF2C7007EE7B4 /* StatsWindow.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = StatsWindow.xib; path = macosx/StatsWindow.xib; sourceTree = ""; }; + A234EA521453563B000F3E97 /* NSImageAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = NSImageAdditions.h; path = macosx/NSImageAdditions.h; sourceTree = ""; }; + A234EA531453563B000F3E97 /* NSImageAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = NSImageAdditions.m; path = macosx/NSImageAdditions.m; sourceTree = ""; }; A23547E011CD0B090046EAE6 /* cache.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = cache.c; path = libtransmission/cache.c; sourceTree = ""; }; A23547E111CD0B090046EAE6 /* cache.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = cache.h; path = libtransmission/cache.h; sourceTree = ""; }; A2385DD20BFE06C800B24EF6 /* DragOverlayWindow.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; name = DragOverlayWindow.m; path = macosx/DragOverlayWindow.m; sourceTree = ""; }; @@ -1252,10 +1253,9 @@ A209EBD81142F52B002B02D1 /* InfoFileView.xib */, A209EC11114301C6002B02D1 /* InfoOptionsView.xib */, A220AF7913D7CC460035C512 /* GlobalOptionsPopover.xib */, - A20B6FA40C4D97840034AB1D /* PriorityNone.png */, - A20B6FAD0C4D9B040034AB1D /* PriorityNormal.png */, - A20B6F6A0C4D842B0034AB1D /* PriorityLow.png */, - A20B6F820C4D8A610034AB1D /* PriorityHigh.png */, + A20B6FAD0C4D9B040034AB1D /* PriorityNormalTemplate.png */, + A20B6F6A0C4D842B0034AB1D /* PriorityLowTemplate.png */, + A20B6F820C4D8A610034AB1D /* PriorityHighTemplate.png */, A2623B2C0D3DC2EF0045D19A /* PriorityControlNormal.png */, A2623B2D0D3DC2EF0045D19A /* PriorityControlLow.png */, A2623B2E0D3DC2EF0045D19A /* PriorityControlHigh.png */, @@ -1504,6 +1504,8 @@ A29D84031049C25600D1987A /* NSApplicationAdditions.m */, A22BAE261388040500FB022F /* NSMutableArrayAdditions.h */, A22BAE271388040500FB022F /* NSMutableArrayAdditions.m */, + A234EA521453563B000F3E97 /* NSImageAdditions.h */, + A234EA531453563B000F3E97 /* NSImageAdditions.m */, ); name = Additions; sourceTree = ""; @@ -2084,10 +2086,9 @@ A241528B0C0261B8007DD3B4 /* Globe.png in Resources */, A2E9AA760C249AF400085DCF /* ToolbarCreateTemplate.png in Resources */, A2F011990C27418800576FC0 /* CreateLarge.png in Resources */, - A20B6F6B0C4D842B0034AB1D /* PriorityLow.png in Resources */, - A20B6F830C4D8A610034AB1D /* PriorityHigh.png in Resources */, - A20B6FA50C4D97840034AB1D /* PriorityNone.png in Resources */, - A20B6FAE0C4D9B040034AB1D /* PriorityNormal.png in Resources */, + A20B6F6B0C4D842B0034AB1D /* PriorityLowTemplate.png in Resources */, + A20B6F830C4D8A610034AB1D /* PriorityHighTemplate.png in Resources */, + A20B6FAE0C4D9B040034AB1D /* PriorityNormalTemplate.png in Resources */, A277DA0B0C693D9C00DA2CD4 /* ActionOn.png in Resources */, A2EF7DEC0C96297400FA9811 /* PurpleDot.png in Resources */, A2BC19850CA9AF5A00DD302A /* CompleteCheck.png in Resources */, @@ -2345,6 +2346,7 @@ A2E57BA713109E6B00A7DAB1 /* FilterBarController.m in Sources */, A22BAE281388040500FB022F /* NSMutableArrayAdditions.m in Sources */, A2966E8713DAF74C007B52DF /* GlobalOptionsPopoverViewController.m in Sources */, + A234EA541453563B000F3E97 /* NSImageAdditions.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; diff --git a/macosx/FileOutlineController.m b/macosx/FileOutlineController.m index 018c61e19..d690adadc 100644 --- a/macosx/FileOutlineController.m +++ b/macosx/FileOutlineController.m @@ -604,7 +604,7 @@ typedef enum action: @selector(setPriority:) keyEquivalent: @""]; [item setTarget: self]; [item setTag: FILE_PRIORITY_HIGH_TAG]; - [item setImage: [NSImage imageNamed: @"PriorityHigh.png"]]; + [item setImage: [NSImage imageNamed: @"PriorityHighTemplate.png"]]; [priorityMenu addItem: item]; [item release]; @@ -612,7 +612,7 @@ typedef enum action: @selector(setPriority:) keyEquivalent: @""]; [item setTarget: self]; [item setTag: FILE_PRIORITY_NORMAL_TAG]; - [item setImage: [NSImage imageNamed: @"PriorityNormal.png"]]; + [item setImage: [NSImage imageNamed: @"PriorityNormalTemplate.png"]]; [priorityMenu addItem: item]; [item release]; @@ -620,7 +620,7 @@ typedef enum action: @selector(setPriority:) keyEquivalent: @""]; [item setTarget: self]; [item setTag: FILE_PRIORITY_LOW_TAG]; - [item setImage: [NSImage imageNamed: @"PriorityLow.png"]]; + [item setImage: [NSImage imageNamed: @"PriorityLowTemplate.png"]]; [priorityMenu addItem: item]; [item release]; diff --git a/macosx/FilePriorityCell.m b/macosx/FilePriorityCell.m index 33a9f6e23..4f199f754 100644 --- a/macosx/FilePriorityCell.m +++ b/macosx/FilePriorityCell.m @@ -25,6 +25,7 @@ #import "FilePriorityCell.h" #import "FileOutlineView.h" #import "FileListNode.h" +#import "NSImageAdditions.h" #import "Torrent.h" #define IMAGE_OVERLAP 3.0 @@ -130,28 +131,33 @@ if (count == 0) { - NSImage * image = [NSImage imageNamed: @"PriorityNone.png"]; - [images addObject: image]; - totalWidth = [image size].width; + //if ([self backgroundStyle] != NSBackgroundStyleDark) + { + NSImage * image = [[NSImage imageNamed: @"PriorityNormalTemplate.png"] imageWithColor: [NSColor lightGrayColor]]; + [images addObject: image]; + totalWidth = [image size].width; + } } else { + NSColor * priorityColor = [self backgroundStyle] == NSBackgroundStyleDark ? [NSColor whiteColor] : [NSColor darkGrayColor]; + totalWidth = 0.0; if ([priorities containsObject: [NSNumber numberWithInteger: TR_PRI_LOW]]) { - NSImage * image = [NSImage imageNamed: @"PriorityLow.png"]; + NSImage * image = [[NSImage imageNamed: @"PriorityLowTemplate.png"] imageWithColor: priorityColor]; [images addObject: image]; totalWidth += [image size].width; } if ([priorities containsObject: [NSNumber numberWithInteger: TR_PRI_NORMAL]]) { - NSImage * image = [NSImage imageNamed: @"PriorityNormal.png"]; + NSImage * image = [[NSImage imageNamed: @"PriorityNormalTemplate.png"] imageWithColor: priorityColor]; [images addObject: image]; totalWidth += [image size].width; } if ([priorities containsObject: [NSNumber numberWithInteger: TR_PRI_HIGH]]) { - NSImage * image = [NSImage imageNamed: @"PriorityHigh.png"]; + NSImage * image = [[NSImage imageNamed: @"PriorityHighTemplate.png"] imageWithColor: priorityColor]; [images addObject: image]; totalWidth += [image size].width; } diff --git a/macosx/Images/PriorityHigh.png b/macosx/Images/PriorityHigh.png deleted file mode 100644 index c10f72dd34892d7273687d153dfb150ace3eefe5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 245 zcmeAS@N?(olHy`uVBq!ia0vp^d?3uh3?wzC-F*zCyaRkfT>t<7AGDOgZ!bf@Y6icZ z4E~!L0#`8jZDj~p%Mh@J!EYaf?|ufK{S0Ym7y=J5#2jZxJ;M-jlp*X0L&#x<)YA-p z2N+ULGlU;u2s*@I{Q8AI&{*!0AirP+kBKcvhgaC$?QP}j-#54O@I+iH{ktGjO1f>Mq++Ge&UMzjipt<7f3}L@cLT$lI)+;{ z3}5OQu2eI;tYx@U!|=P2;eP|e|9Xc1GZ_B&GyLyn_}{|teLtiJ^m_40Ia45^4)d;B_Yg8>h#!}9j$ zCa?Z2PSR#FWcXgbM55_sqvD5Z;lgTe~DWM4fjs;&Q diff --git a/macosx/Images/PriorityLowTemplate.png b/macosx/Images/PriorityLowTemplate.png new file mode 100644 index 0000000000000000000000000000000000000000..c8cc936bb1d89445158e276630fba0e702d1ff02 GIT binary patch literal 335 zcmeAS@N?(olHy`uVBq!ia0vp^JRr=$1|-8uW1a&k#^NA%Cx&(BWL^R}Y)RhkE)4%c zaKYZ?lYt_f1s;*b3=G`DAk4@xYmNj^kiEpy*OmP?mnajjgpJH;Q=rg!PZ!4!jo__4 zwp`5)0 z)~n3h+c=sYJo;_7p1bY#t)&J$U%%MoKi>83W}%GR#^$wi*9$tu1WvAZ@yb-%q;uM3 a|5H}&O~#utEX_c{#o+1c=d#Wzp$PyU5QlsK literal 0 HcmV?d00001 diff --git a/macosx/Images/PriorityNone.png b/macosx/Images/PriorityNone.png deleted file mode 100644 index e63832e3f8cd60c805466e5b5b45e2cf081c6d75..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 183 zcmeAS@N?(olHy`uVBq!ia0vp^d?3ui3?$#C89V|~DgizruK)l4-@R-1hIJb@tlx0z z-`v8aWH3P0H1afZiyUG$H- gz3X{ICJBnMdnj=!?`UCZ1DeF(>FVdQ&MBb@0EeJQhyVZp diff --git a/macosx/Images/PriorityNormal.png b/macosx/Images/PriorityNormal.png deleted file mode 100644 index a138e518c7ec8d5dda551300641a0af4cd5f31dd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 213 zcmeAS@N?(olHy`uVBq!ia0vp^d?3uh3?wzC-F*zCECYN(T>t<7@3-|$;EJn(%dhzD z{q48)t>3=iVMqS^?*E^3>VL@L|33TwhaUMKfAW9$k^jl3{>Pp8pLXVd!pZ;4-}bHq z8p2)@K2hTebVpaOuD4gB%bP0l+XkKZj3b5 literal 0 HcmV?d00001 diff --git a/macosx/Makefile.am b/macosx/Makefile.am index 92788567b..8afe7416f 100644 --- a/macosx/Makefile.am +++ b/macosx/Makefile.am @@ -114,6 +114,8 @@ EXTRA_DIST = \ MessageWindowController.m \ NSApplicationAdditions.h \ NSApplicationAdditions.m \ + NSImageAdditions.h \ + NSImageAdditions.m \ NSMutableArrayAdditions.h \ NSMutableArrayAdditions.m \ NSStringAdditions.h \ diff --git a/macosx/NSImageAdditions.h b/macosx/NSImageAdditions.h new file mode 100644 index 000000000..67a5177c4 --- /dev/null +++ b/macosx/NSImageAdditions.h @@ -0,0 +1,31 @@ +/****************************************************************************** + * $Id$ + * + * Copyright (c) 2011 Transmission authors and contributors + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER + * DEALINGS IN THE SOFTWARE. + *****************************************************************************/ + +#import + +@interface NSImage (NSImageAdditions) + +- (NSImage *) imageWithColor: (NSColor *) color; + +@end diff --git a/macosx/NSImageAdditions.m b/macosx/NSImageAdditions.m new file mode 100644 index 000000000..b9954e9f3 --- /dev/null +++ b/macosx/NSImageAdditions.m @@ -0,0 +1,43 @@ +/****************************************************************************** + * $Id$ + * + * Copyright (c) 2011 Transmission authors and contributors + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER + * DEALINGS IN THE SOFTWARE. + *****************************************************************************/ + +#import "NSImageAdditions.h" + +@implementation NSImage (NSImageAdditions) + +- (NSImage *) imageWithColor: (NSColor *) color +{ + NSImage * coloredImage = [self copy]; + + [coloredImage lockFocus]; + + [color set]; + NSRectFillUsingOperation(NSMakeRect(0.0, 0.0, [coloredImage size].width, [coloredImage size].height), NSCompositeSourceAtop); + + [coloredImage unlockFocus]; + + return [coloredImage autorelease]; +} + +@end diff --git a/macosx/TorrentCell.m b/macosx/TorrentCell.m index 56b5e951d..7c787813b 100644 --- a/macosx/TorrentCell.m +++ b/macosx/TorrentCell.m @@ -24,6 +24,7 @@ #import "TorrentCell.h" #import "GroupsController.h" +#import "NSImageAdditions.h" #import "NSStringAdditions.h" #import "ProgressGradients.h" #import "Torrent.h" @@ -38,8 +39,8 @@ #define NORMAL_BUTTON_WIDTH 14.0 #define ACTION_BUTTON_WIDTH 16.0 -#define PRIORITY_ICON_WIDTH 14.0 -#define PRIORITY_ICON_HEIGHT 14.0 +#define PRIORITY_ICON_WIDTH 12.0 +#define PRIORITY_ICON_HEIGHT 12.0 //ends up being larger than font height #define HEIGHT_TITLE 16.0 @@ -49,7 +50,7 @@ #define PADDING_BETWEEN_BUTTONS 3.0 #define PADDING_BETWEEN_IMAGE_AND_TITLE (PADDING_HORIZONTAL + 1.0) #define PADDING_BETWEEN_IMAGE_AND_BAR PADDING_HORIZONTAL -#define PADDING_BETWEEN_TITLE_AND_PRIORITY 3.0 +#define PADDING_BETWEEN_TITLE_AND_PRIORITY 4.0 #define PADDING_ABOVE_TITLE 4.0 #define PADDING_BETWEEN_TITLE_AND_MIN_STATUS 3.0 #define PADDING_BETWEEN_TITLE_AND_PROGRESS 1.0 @@ -480,13 +481,12 @@ //priority icon if ([torrent priority] != TR_PRI_NORMAL) { - NSImage * priorityImage = [torrent priority] == TR_PRI_HIGH ? [NSImage imageNamed: @"PriorityHigh.png"] - : [NSImage imageNamed: @"PriorityLow.png"]; - const NSRect priorityRect = NSMakeRect(NSMaxX(titleRect) + PADDING_BETWEEN_TITLE_AND_PRIORITY, NSMidY(titleRect) - PRIORITY_ICON_HEIGHT * 0.5, PRIORITY_ICON_WIDTH, PRIORITY_ICON_HEIGHT); + NSColor * priorityColor = [self backgroundStyle] == NSBackgroundStyleDark ? [NSColor whiteColor] : [NSColor darkGrayColor]; + NSImage * priorityImage = [[NSImage imageNamed: ([torrent priority] == TR_PRI_HIGH ? @"PriorityHighTemplate.png" : @"PriorityLowTemplate.png")] imageWithColor: priorityColor]; [priorityImage drawInRect: priorityRect fromRect: NSZeroRect operation: NSCompositeSourceOver fraction: 1.0 respectFlipped: YES hints: nil]; } diff --git a/macosx/TransmissionHelp/TransmissionHelp.helpindex b/macosx/TransmissionHelp/TransmissionHelp.helpindex index b6c113e7a391e0725f04a58338d607561d2ea165..170c4f1f99022659970aa71826ea35aab9d01ff1 100644 GIT binary patch delta 23839 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 C<+J+$ delta 23858 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 diff --git a/macosx/TransmissionHelp/html/gettingstarted.html b/macosx/TransmissionHelp/html/gettingstarted.html index ae0260ff6..3cc1a07dc 100644 --- a/macosx/TransmissionHelp/html/gettingstarted.html +++ b/macosx/TransmissionHelp/html/gettingstarted.html @@ -150,7 +150,7 @@

Yes, either upon opening a torrent, or once it has started. When you open a multi-file torrent, a detailed Open window will appear, allowing you to select specific files.

For transfers which are already running, double click them to open the Inspector, and then click the 'Files' tab. Simply check the boxes next to the files you want to download (the default is all of them). - You can even set a priority (green/high or orange/low) to each file, if you want some to finish faster than others. To do so, use the selector that appears next to the checkboxes. + You can even set a priority (high, normal, or low) to each file, if you want some to finish faster than others. To do so, use the selector that appears next to the checkboxes.

If the window doesn't appear when opening a torrent, ensure that "Display options window" is checked in Preferences -> Transfers -> Adding. diff --git a/macosx/en.lproj/InfoOptionsView.xib b/macosx/en.lproj/InfoOptionsView.xib index f834ce15b..8b1d0cfde 100644 --- a/macosx/en.lproj/InfoOptionsView.xib +++ b/macosx/en.lproj/InfoOptionsView.xib @@ -2,13 +2,13 @@ 1060 - 11B26 - 1617 - 1138 - 566.00 + 11C74 + 1938 + 1138.23 + 567.00 com.apple.InterfaceBuilder.CocoaPlugin - 1617 + 1938 NSTextField @@ -26,7 +26,10 @@ com.apple.InterfaceBuilder.CocoaPlugin - + + PluginDependencyRecalculationVersion + + InfoOptionsViewController @@ -46,6 +49,7 @@ 268 {{217, 54}, {45, 20}} + YES @@ -121,6 +125,7 @@ 268 {{71, 53}, {138, 22}} + YES @@ -202,6 +207,7 @@ 268 {{10, 57}, {56, 14}} + YES @@ -232,6 +238,7 @@ 268 {{217, 76}, {45, 20}} + YES @@ -287,6 +294,7 @@ 268 {{9, 95}, {88, 17}} + YES @@ -308,6 +316,7 @@ 268 {{9, 181}, {117, 14}} + YES @@ -325,6 +334,7 @@ 268 {{9, 219}, {46, 17}} + YES @@ -342,6 +352,7 @@ 268 {{125, 137}, {45, 20}} + YES @@ -392,6 +403,7 @@ 268 {{175, 140}, {29, 14}} + YES @@ -409,6 +421,7 @@ 268 {{125, 159}, {45, 20}} + YES @@ -459,6 +472,7 @@ 266 {{214, 79}, {90, 14}} + YES @@ -479,6 +493,7 @@ 266 {{214, 57}, {90, 14}} + YES @@ -499,6 +514,7 @@ 268 {{267, 57}, {47, 14}} + YES @@ -516,6 +532,7 @@ 268 {{175, 162}, {29, 14}} + YES @@ -533,6 +550,7 @@ 268 {{71, 75}, {138, 22}} + YES @@ -603,6 +621,7 @@ 268 {{10, 79}, {35, 14}} + YES @@ -620,6 +639,7 @@ 268 {{10, 204}, {95, 14}} + YES @@ -637,6 +657,7 @@ 268 {{9, 29}, {60, 17}} + YES @@ -654,6 +675,7 @@ 268 {{10, 13}, {129, 14}} + YES @@ -671,6 +693,7 @@ 268 {{144, 10}, {45, 20}} + YES @@ -720,6 +743,7 @@ 268 {{194, 13}, {34, 14}} + YES @@ -737,6 +761,7 @@ 268 {{10, 138}, {93, 18}} + YES @@ -765,6 +790,7 @@ 268 {{10, 118}, {230, 18}} + YES @@ -788,6 +814,7 @@ 268 {{10, 160}, {109, 18}} + YES @@ -811,6 +838,7 @@ 268 {{110, 200}, {98, 22}} + YES @@ -825,23 +853,7 @@ 400 75 - - - Normal - - 1048576 - 2147483647 - 1 - - NSImage - PriorityNormal - - - - _popUpItemAction: - 1 - - + YES OtherViews @@ -854,14 +866,29 @@ 2147483647 NSImage - PriorityHigh + PriorityHighTemplate _popUpItemAction: - + + + Normal + + 1048576 + 2147483647 + + NSImage + PriorityNormalTemplate + + + + _popUpItemAction: + 1 + + Low @@ -870,7 +897,7 @@ 2147483647 NSImage - PriorityLow + PriorityLowTemplate @@ -880,7 +907,7 @@ - 1 + -1 1 YES YES @@ -890,6 +917,7 @@ {321, 241} + NSView @@ -899,38 +927,6 @@ - - - delegate - - - - 53 - - - - delegate - - - - 54 - - - - delegate - - - - 55 - - - - delegate - - - - 56 - setPriority: @@ -1107,14 +1103,6 @@ 78 - - - delegate - - - - 90 - fIdleLimitField @@ -1171,6 +1159,46 @@ 112 + + + delegate + + + + 55 + + + + delegate + + + + 56 + + + + delegate + + + + 53 + + + + delegate + + + + 54 + + + + delegate + + + + 90 + @@ -1770,7 +1798,115 @@ 112 - + + + + ColorTextField + NSTextField + + IBProjectSource + ./Classes/ColorTextField.h + + + + InfoOptionsViewController + NSViewController + + NSButton + NSTextField + NSTextField + NSButton + NSTextField + NSTextField + NSTextField + NSPopUpButton + NSTextField + NSTextField + NSPopUpButton + NSTextField + NSTextField + NSPopUpButton + NSButton + NSTextField + NSTextField + + + + fDownloadLimitCheck + NSButton + + + fDownloadLimitField + NSTextField + + + fDownloadLimitLabel + NSTextField + + + fGlobalLimitCheck + NSButton + + + fIdleLimitField + NSTextField + + + fIdleLimitGlobalLabel + NSTextField + + + fIdleLimitLabel + NSTextField + + + fIdlePopUp + NSPopUpButton + + + fPeersConnectField + NSTextField + + + fPeersConnectLabel + NSTextField + + + fPriorityPopUp + NSPopUpButton + + + fRatioLimitField + NSTextField + + + fRatioLimitGlobalLabel + NSTextField + + + fRatioPopUp + NSPopUpButton + + + fUploadLimitCheck + NSButton + + + fUploadLimitField + NSTextField + + + fUploadLimitLabel + NSTextField + + + + IBProjectSource + ./Classes/InfoOptionsViewController.h + + + + 0 IBCocoaFramework @@ -1779,7 +1915,7 @@ com.apple.InterfaceBuilder.CocoaPlugin.macosx - + YES 3 @@ -1787,9 +1923,9 @@ {9, 8} {7, 2} {15, 15} - {14, 14} - {14, 14} - {14, 14} + {128, 128} + {128, 128} + {128, 128}