make toolbar buttons leopard-like; icons are placeholders

This commit is contained in:
Mitchell Livingston 2007-11-29 01:05:11 +00:00
parent 827dc86bb4
commit d3e821e729
5 changed files with 123 additions and 22 deletions

View File

@ -134,11 +134,14 @@
A2BE9C520C1E4AF5002D16E6 /* makemeta.c in Sources */ = {isa = PBXBuildFile; fileRef = A2BE9C4E0C1E4ADA002D16E6 /* makemeta.c */; };
A2BE9C530C1E4AF7002D16E6 /* makemeta.h in Headers */ = {isa = PBXBuildFile; fileRef = A2BE9C4F0C1E4ADA002D16E6 /* makemeta.h */; };
A2BF07910B066E0800757C92 /* SpeedLimitToTurtleIconTransformer.m in Sources */ = {isa = PBXBuildFile; fileRef = A2BF078F0B066E0800757C92 /* SpeedLimitToTurtleIconTransformer.m */; };
A2C89D600CFCBF57004CC2BC /* ButtonToolbarItem.m in Sources */ = {isa = PBXBuildFile; fileRef = A2C89D5F0CFCBF57004CC2BC /* ButtonToolbarItem.m */; };
A2D0E0490A54A97C003C72CF /* Bandwidth.png in Resources */ = {isa = PBXBuildFile; fileRef = A2D0E0480A54A97C003C72CF /* Bandwidth.png */; };
A2DA362A0CBC674900C2ED41 /* InfoActivity.png in Resources */ = {isa = PBXBuildFile; fileRef = A2DA36270CBC674900C2ED41 /* InfoActivity.png */; };
A2DA362B0CBC674900C2ED41 /* InfoFiles.png in Resources */ = {isa = PBXBuildFile; fileRef = A2DA36280CBC674900C2ED41 /* InfoFiles.png */; };
A2DA362C0CBC674900C2ED41 /* InfoPeers.png in Resources */ = {isa = PBXBuildFile; fileRef = A2DA36290CBC674900C2ED41 /* InfoPeers.png */; };
A2DF37070C220D03006523C1 /* CreatorWindowController.m in Sources */ = {isa = PBXBuildFile; fileRef = A2DF37050C220D03006523C1 /* CreatorWindowController.m */; };
A2E165BC0CFE44250047F575 /* QuittingWindowController.m in Sources */ = {isa = PBXBuildFile; fileRef = A2E165BB0CFE44250047F575 /* QuittingWindowController.m */; };
A2E165C80CFE45AF0047F575 /* QuittingWindow.xib in Resources */ = {isa = PBXBuildFile; fileRef = A2E165C70CFE45AF0047F575 /* QuittingWindow.xib */; };
A2E23AC60CB5E1930002BB25 /* InfoTabButtonCell.m in Sources */ = {isa = PBXBuildFile; fileRef = A2E23AC40CB5E1930002BB25 /* InfoTabButtonCell.m */; };
A2E9AA760C249AF400085DCF /* Create.png in Resources */ = {isa = PBXBuildFile; fileRef = A2E9AA750C249AF400085DCF /* Create.png */; };
A2ED7D8F0CEF431B00970975 /* FilterButton.m in Sources */ = {isa = PBXBuildFile; fileRef = A2ED7D8E0CEF431B00970975 /* FilterButton.m */; };
@ -501,6 +504,8 @@
A2BE9C4F0C1E4ADA002D16E6 /* makemeta.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = makemeta.h; path = libtransmission/makemeta.h; sourceTree = "<group>"; };
A2BF078E0B066E0800757C92 /* SpeedLimitToTurtleIconTransformer.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = SpeedLimitToTurtleIconTransformer.h; path = macosx/SpeedLimitToTurtleIconTransformer.h; sourceTree = "<group>"; };
A2BF078F0B066E0800757C92 /* SpeedLimitToTurtleIconTransformer.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; name = SpeedLimitToTurtleIconTransformer.m; path = macosx/SpeedLimitToTurtleIconTransformer.m; sourceTree = "<group>"; };
A2C89D5E0CFCBF57004CC2BC /* ButtonToolbarItem.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ButtonToolbarItem.h; path = macosx/ButtonToolbarItem.h; sourceTree = "<group>"; };
A2C89D5F0CFCBF57004CC2BC /* ButtonToolbarItem.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = ButtonToolbarItem.m; path = macosx/ButtonToolbarItem.m; sourceTree = "<group>"; };
A2D0E0480A54A97C003C72CF /* Bandwidth.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = Bandwidth.png; path = macosx/Images/Bandwidth.png; sourceTree = "<group>"; };
A2D688850CB4984B009BEC3A /* English */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = English; path = macosx/English.lproj/MainMenu.nib; sourceTree = "<group>"; };
A2D688A70CB4986A009BEC3A /* English */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = English; path = macosx/English.lproj/InfoPlist.strings; sourceTree = "<group>"; };
@ -514,6 +519,9 @@
A2DA36290CBC674900C2ED41 /* InfoPeers.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = InfoPeers.png; path = macosx/Images/InfoPeers.png; sourceTree = "<group>"; };
A2DF37040C220D03006523C1 /* CreatorWindowController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CreatorWindowController.h; path = macosx/CreatorWindowController.h; sourceTree = "<group>"; };
A2DF37050C220D03006523C1 /* CreatorWindowController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CreatorWindowController.m; path = macosx/CreatorWindowController.m; sourceTree = "<group>"; };
A2E165BA0CFE44250047F575 /* QuittingWindowController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = QuittingWindowController.h; path = macosx/QuittingWindowController.h; sourceTree = "<group>"; };
A2E165BB0CFE44250047F575 /* QuittingWindowController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = QuittingWindowController.m; path = macosx/QuittingWindowController.m; sourceTree = "<group>"; };
A2E165C70CFE45AF0047F575 /* QuittingWindow.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = QuittingWindow.xib; path = macosx/QuittingWindow.xib; sourceTree = "<group>"; };
A2E23AC30CB5E1930002BB25 /* InfoTabButtonCell.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = InfoTabButtonCell.h; path = macosx/InfoTabButtonCell.h; sourceTree = "<group>"; };
A2E23AC40CB5E1930002BB25 /* InfoTabButtonCell.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; name = InfoTabButtonCell.m; path = macosx/InfoTabButtonCell.m; sourceTree = "<group>"; };
A2E9AA750C249AF400085DCF /* Create.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = Create.png; path = macosx/Images/Create.png; sourceTree = "<group>"; };
@ -750,6 +758,8 @@
A25E74440AF5089E006F11AE /* ExpandedPathToPathTransformer.m */,
A25E74470AF5089E006F11AE /* ExpandedPathToIconTransformer.h */,
A25E74460AF5089E006F11AE /* ExpandedPathToIconTransformer.m */,
A2C89D5E0CFCBF57004CC2BC /* ButtonToolbarItem.h */,
A2C89D5F0CFCBF57004CC2BC /* ButtonToolbarItem.m */,
4DE5CCA50980735700BE280E /* Badger.h */,
4DE5CCA60980735700BE280E /* Badger.m */,
A2A632190CD9751700E3DA60 /* BadgeView.h */,
@ -762,6 +772,8 @@
A25892630CF1F7E800CCCDDF /* StatsWindowController.m */,
A2085DD90C53BC74000BC3B7 /* AboutWindowController.h */,
A2085DDA0C53BC74000BC3B7 /* AboutWindowController.m */,
A2E165BA0CFE44250047F575 /* QuittingWindowController.h */,
A2E165BB0CFE44250047F575 /* QuittingWindowController.m */,
A234D0D40C79FB6000A82373 /* Additions */,
E1B6FBF80C0D719B0015FE4D /* Info Window */,
E1B6FBFD0C0D72430015FE4D /* Prefs Window */,
@ -827,6 +839,7 @@
A2AE68310C628A35008753C9 /* Creator.nib */,
A25892750CF1FCE800CCCDDF /* StatsWindow.xib */,
A2A6E39F0CA7E4C900F10FEF /* AboutWindow.nib */,
A2E165C70CFE45AF0047F575 /* QuittingWindow.xib */,
A20B6FA40C4D97840034AB1D /* PriorityNone.png */,
A20B6F8B0C4D90980034AB1D /* PriorityMixed.png */,
A20B6FAD0C4D9B040034AB1D /* PriorityNormal.png */,
@ -1492,6 +1505,7 @@
A2F151250CD438DE001F3B0E /* InfoTabBack.png in Resources */,
A2F151260CD438DE001F3B0E /* InfoTabBackBlue.png in Resources */,
A25892770CF1FCE800CCCDDF /* StatsWindow.xib in Resources */,
A2E165C80CFE45AF0047F575 /* QuittingWindow.xib in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@ -1625,6 +1639,8 @@
A2A6321B0CD9751700E3DA60 /* BadgeView.m in Sources */,
A2ED7D8F0CEF431B00970975 /* FilterButton.m in Sources */,
A25892640CF1F7E800CCCDDF /* StatsWindowController.m in Sources */,
A2C89D600CFCBF57004CC2BC /* ButtonToolbarItem.m in Sources */,
A2E165BC0CFE44250047F575 /* QuittingWindowController.m in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};

View File

@ -0,0 +1,31 @@
/******************************************************************************
* $Id$
*
* Copyright (c) 2007 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 <Cocoa/Cocoa.h>
@interface ButtonToolbarItem : NSToolbarItem
{
}
@end

View File

@ -0,0 +1,34 @@
/******************************************************************************
* $Id$
*
* Copyright (c) 2007 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 "ButtonToolbarItem.h"
@implementation ButtonToolbarItem
- (void) validate
{
[self setEnabled: [[self target] validateToolbarItem: self]];
}
@end

View File

@ -31,6 +31,7 @@
#import "CreatorWindowController.h"
#import "StatsWindowController.h"
#import "AboutWindowController.h"
#import "ButtonToolbarItem.h"
#import "NSApplicationAdditions.h"
#import "NSStringAdditions.h"
#import "UKKQueue.h"
@ -2564,16 +2565,28 @@ void sleepCallBack(void * controller, io_service_t y, natural_t messageType, voi
- (void) doNothing: (id) sender {}
- (NSToolbarItem *) toolbar: (NSToolbar *) t itemForItemIdentifier: (NSString *) ident willBeInsertedIntoToolbar: (BOOL) flag
- (NSToolbarItem *) toolbar: (NSToolbar *) toolbar itemForItemIdentifier: (NSString *) ident willBeInsertedIntoToolbar: (BOOL) flag
{
NSToolbarItem * item = [[NSToolbarItem alloc] initWithItemIdentifier: ident];
ButtonToolbarItem * item = [[ButtonToolbarItem alloc] initWithItemIdentifier: ident];
NSButton * button = [[NSButton alloc] initWithFrame: NSZeroRect];
[item setView: button];
[button setBezelStyle: NSTexturedRoundedBezelStyle];
[button setStringValue: @""];
NSSize buttonSize = NSMakeSize(35.0, 25.0);
[item setMinSize: buttonSize];
[item setMaxSize: buttonSize];
NSImage * image;
if ([ident isEqualToString: TOOLBAR_CREATE])
{
[item setLabel: NSLocalizedString(@"Create", "Create toolbar item -> label")];
[item setPaletteLabel: NSLocalizedString(@"Create Torrent File", "Create toolbar item -> palette label")];
[item setToolTip: NSLocalizedString(@"Create torrent file", "Create toolbar item -> tooltip")];
[item setImage: [NSImage imageNamed: @"Create.png"]];
image = [NSImage imageNamed: @"Create.png"];
[item setTarget: self];
[item setAction: @selector(createFile:)];
[item setAutovalidates: NO];
@ -2583,7 +2596,7 @@ void sleepCallBack(void * controller, io_service_t y, natural_t messageType, voi
[item setLabel: NSLocalizedString(@"Open", "Open toolbar item -> label")];
[item setPaletteLabel: NSLocalizedString(@"Open Torrent Files", "Open toolbar item -> palette label")];
[item setToolTip: NSLocalizedString(@"Open torrent files", "Open toolbar item -> tooltip")];
[item setImage: [NSImage imageNamed: @"Open.png"]];
image = [NSImage imageNamed: @"Open.png"];
[item setTarget: self];
[item setAction: @selector(openShowSheet:)];
[item setAutovalidates: NO];
@ -2593,7 +2606,7 @@ void sleepCallBack(void * controller, io_service_t y, natural_t messageType, voi
[item setLabel: NSLocalizedString(@"Remove", "Remove toolbar item -> label")];
[item setPaletteLabel: NSLocalizedString(@"Remove Selected", "Remove toolbar item -> palette label")];
[item setToolTip: NSLocalizedString(@"Remove selected transfers", "Remove toolbar item -> tooltip")];
[item setImage: [NSImage imageNamed: @"Remove.png"]];
image = [NSImage imageNamed: @"Remove.png"];
[item setTarget: self];
[item setAction: @selector(removeNoDelete:)];
}
@ -2602,7 +2615,7 @@ void sleepCallBack(void * controller, io_service_t y, natural_t messageType, voi
[item setLabel: NSLocalizedString(@"Inspector", "Inspector toolbar item -> label")];
[item setPaletteLabel: NSLocalizedString(@"Toggle Inspector", "Inspector toolbar item -> palette label")];
[item setToolTip: NSLocalizedString(@"Toggle the torrent inspector", "Inspector toolbar item -> tooltip")];
[item setImage: [NSImage imageNamed: @"Info.png"]];
image = [NSImage imageNamed: @"Info.png"];
[item setTarget: self];
[item setAction: @selector(showInfo:)];
[item setAutovalidates: NO];
@ -2612,7 +2625,7 @@ void sleepCallBack(void * controller, io_service_t y, natural_t messageType, voi
[item setLabel: NSLocalizedString(@"Pause All", "Pause All toolbar item -> label")];
[item setPaletteLabel: [item label]];
[item setToolTip: NSLocalizedString(@"Pause all transfers", "Pause All toolbar item -> tooltip")];
[item setImage: [NSImage imageNamed: @"PauseAll.png"]];
image = [NSImage imageNamed: @"PauseAll.png"];
[item setTarget: self];
[item setAction: @selector(stopAllTorrents:)];
}
@ -2621,7 +2634,7 @@ void sleepCallBack(void * controller, io_service_t y, natural_t messageType, voi
[item setLabel: NSLocalizedString(@"Resume All", "Resume All toolbar item -> label")];
[item setPaletteLabel: [item label]];
[item setToolTip: NSLocalizedString(@"Resume all transfers", "Resume All toolbar item -> tooltip")];
[item setImage: [NSImage imageNamed: @"ResumeAll.png"]];
image = [NSImage imageNamed: @"ResumeAll.png"];
[item setTarget: self];
[item setAction: @selector(resumeAllTorrents:)];
}
@ -2630,7 +2643,7 @@ void sleepCallBack(void * controller, io_service_t y, natural_t messageType, voi
[item setLabel: NSLocalizedString(@"Pause", "Pause toolbar item -> label")];
[item setPaletteLabel: NSLocalizedString(@"Pause Selected", "Pause toolbar item -> palette label")];
[item setToolTip: NSLocalizedString(@"Pause selected transfers", "Pause toolbar item -> tooltip")];
[item setImage: [NSImage imageNamed: @"PauseSelected.png"]];
image = [NSImage imageNamed: @"PauseSelected.png"];
[item setTarget: self];
[item setAction: @selector(stopSelectedTorrents:)];
}
@ -2639,7 +2652,7 @@ void sleepCallBack(void * controller, io_service_t y, natural_t messageType, voi
[item setLabel: NSLocalizedString(@"Resume", "Resume toolbar item -> label")];
[item setPaletteLabel: NSLocalizedString(@"Resume Selected", "Resume toolbar item -> palette label")];
[item setToolTip: NSLocalizedString(@"Resume selected transfers", "Resume toolbar item -> tooltip")];
[item setImage: [NSImage imageNamed: @"ResumeSelected.png"]];
image = [NSImage imageNamed: @"ResumeSelected.png"];
[item setTarget: self];
[item setAction: @selector(resumeSelectedTorrents:)];
}
@ -2648,21 +2661,28 @@ void sleepCallBack(void * controller, io_service_t y, natural_t messageType, voi
[item setLabel: NSLocalizedString(@"Filter", "Filter toolbar item -> label")];
[item setPaletteLabel: NSLocalizedString(@"Toggle Filter", "Filter toolbar item -> palette label")];
[item setToolTip: NSLocalizedString(@"Toggle the filter bar", "Filter toolbar item -> tooltip")];
[item setImage: [NSImage imageNamed: @"Filter.png"]];
image = [NSImage imageNamed: @"Filter.png"];
[item setTarget: self];
[item setAction: @selector(toggleFilterBar:)];
[item setAutovalidates: NO];
}
else
{
[button release];
[item release];
return nil;
}
[image setScalesWhenResized: YES];
[image setSize: NSMakeSize(16.0, 16.0)];
[button setImage: image];
[button release];
return [item autorelease];
}
- (NSArray *) toolbarAllowedItemIdentifiers: (NSToolbar *) t
- (NSArray *) toolbarAllowedItemIdentifiers: (NSToolbar *) toolbar
{
return [NSArray arrayWithObjects:
TOOLBAR_CREATE, TOOLBAR_OPEN, TOOLBAR_REMOVE,
@ -2674,7 +2694,7 @@ void sleepCallBack(void * controller, io_service_t y, natural_t messageType, voi
NSToolbarCustomizeToolbarItemIdentifier, nil];
}
- (NSArray *) toolbarDefaultItemIdentifiers: (NSToolbar *) t
- (NSArray *) toolbarDefaultItemIdentifiers: (NSToolbar *) toolbar
{
return [NSArray arrayWithObjects:
TOOLBAR_CREATE, TOOLBAR_OPEN, TOOLBAR_REMOVE,

View File

@ -864,28 +864,28 @@ typedef enum
int status = [[peer objectForKey: @"Status"] intValue];
if (status & TR_PEER_STATUS_HANDSHAKE)
[components addObject: NSLocalizedString(@"Handshaking", "peer -> status")];
[components addObject: NSLocalizedString(@"Handshaking", "Inspector -> peer -> status")];
else
{
NSString * firstString;
if (status & TR_PEER_STATUS_CLIENT_IS_SENDING)
firstString = NSLocalizedString(@"Uploading to peer", "peer -> status");
firstString = NSLocalizedString(@"Uploading to peer", "Inspector -> peer -> status");
else if (status & TR_PEER_STATUS_PEER_IS_INTERESTED)
firstString = NSLocalizedString(@"Peer wants our data", "peer -> status");
firstString = NSLocalizedString(@"Peer wants our data", "Inspector -> peer -> status");
else if (status & TR_PEER_STATUS_PEER_IS_CHOKED)
firstString = NSLocalizedString(@"Refusing to send data to peer", "peer -> status");
firstString = NSLocalizedString(@"Refusing to send data to peer", "Inspector -> peer -> status");
else
firstString = @"";
NSString * secondString;
if (status & TR_PEER_STATUS_PEER_IS_SENDING)
secondString = NSLocalizedString(@"Downloading from peer", "peer -> status");
secondString = NSLocalizedString(@"Downloading from peer", "Inspector -> peer -> status");
else if (status & TR_PEER_STATUS_CLIENT_SENT_REQUEST)
secondString = NSLocalizedString(@"Requesting data from peer", "peer -> status");
secondString = NSLocalizedString(@"Requesting data from peer", "Inspector -> peer -> status");
else if (status & TR_PEER_STATUS_CLIENT_IS_INTERESTED)
secondString = NSLocalizedString(@"Waiting to request data from peer", "peer -> status");
secondString = NSLocalizedString(@"Waiting to request data from peer", "Inspector -> peer -> status");
else if (status & TR_PEER_STATUS_CLIENT_IS_CHOKED)
secondString = NSLocalizedString(@"Peer will not send us data", "peer -> status");
secondString = NSLocalizedString(@"Peer will not send us data", "Inspector -> peer -> status");
else
secondString = @"";