diff --git a/Transmission.xcodeproj/project.pbxproj b/Transmission.xcodeproj/project.pbxproj index 00f8f1f23..a6add62bb 100644 --- a/Transmission.xcodeproj/project.pbxproj +++ b/Transmission.xcodeproj/project.pbxproj @@ -22,6 +22,8 @@ 3C7A11990D0B2EE300B5701F /* natpmp.c in Sources */ = {isa = PBXBuildFile; fileRef = 3C7A11930D0B2EE300B5701F /* natpmp.c */; }; 3C7A119A0D0B2EE300B5701F /* natpmp.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C7A11940D0B2EE300B5701F /* natpmp.h */; }; 4394AC670C74FB6000F367E8 /* ptrarray.cc in Sources */ = {isa = PBXBuildFile; fileRef = 4394AC640C74FB6000F367E8 /* ptrarray.cc */; }; + 45A7D3292843B54D00F0C32A /* GroupPopUpButtonCell.mm in Sources */ = {isa = PBXBuildFile; fileRef = 45A7D3282843B54D00F0C32A /* GroupPopUpButtonCell.mm */; }; + 45A7D32C2843B55F00F0C32A /* PriorityPopUpButtonCell.mm in Sources */ = {isa = PBXBuildFile; fileRef = 45A7D32B2843B55F00F0C32A /* PriorityPopUpButtonCell.mm */; }; 4D043A7F090AE979009FEDA8 /* TransmissionDocument.icns in Resources */ = {isa = PBXBuildFile; fileRef = 4D043A7E090AE979009FEDA8 /* TransmissionDocument.icns */; }; 4D118E1A08CB46B20033958F /* PrefsController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 4D118E1908CB46B20033958F /* PrefsController.mm */; }; 4D1838DD09DEC0E80047D688 /* libtransmission.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 4D18389709DEC0030047D688 /* libtransmission.a */; }; @@ -616,6 +618,10 @@ 3C7A11930D0B2EE300B5701F /* natpmp.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = natpmp.c; sourceTree = ""; }; 3C7A11940D0B2EE300B5701F /* natpmp.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = natpmp.h; sourceTree = ""; }; 4394AC640C74FB6000F367E8 /* ptrarray.cc */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = ptrarray.cc; sourceTree = ""; }; + 45A7D3272843B54D00F0C32A /* GroupPopUpButtonCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GroupPopUpButtonCell.h; sourceTree = ""; }; + 45A7D3282843B54D00F0C32A /* GroupPopUpButtonCell.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = GroupPopUpButtonCell.mm; sourceTree = ""; }; + 45A7D32A2843B55F00F0C32A /* PriorityPopUpButtonCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PriorityPopUpButtonCell.h; sourceTree = ""; }; + 45A7D32B2843B55F00F0C32A /* PriorityPopUpButtonCell.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = PriorityPopUpButtonCell.mm; sourceTree = ""; }; 4D043A7E090AE979009FEDA8 /* TransmissionDocument.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; name = TransmissionDocument.icns; path = Images/TransmissionDocument.icns; sourceTree = ""; }; 4D118E1808CB46B20033958F /* PrefsController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = PrefsController.h; sourceTree = ""; }; 4D118E1908CB46B20033958F /* PrefsController.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = PrefsController.mm; sourceTree = ""; }; @@ -1457,6 +1463,10 @@ A20BFFB60D091CC700CE5D2B /* ToolbarSegmentedCell.mm */, A22180960D148A71007D09ED /* GroupsPrefsController.h */, A22180970D148A71007D09ED /* GroupsPrefsController.mm */, + 45A7D3272843B54D00F0C32A /* GroupPopUpButtonCell.h */, + 45A7D3282843B54D00F0C32A /* GroupPopUpButtonCell.mm */, + 45A7D32A2843B55F00F0C32A /* PriorityPopUpButtonCell.h */, + 45A7D32B2843B55F00F0C32A /* PriorityPopUpButtonCell.mm */, A2FB701A0D95CAEA0001F331 /* GroupsController.h */, A2FB701B0D95CAEA0001F331 /* GroupsController.mm */, A2451E6616ACE4EB00586E0E /* FileRenameSheetController.h */, @@ -3032,6 +3042,7 @@ A257C1820CAD3003004E121C /* PeerTableView.mm in Sources */, A2A6321B0CD9751700E3DA60 /* BadgeView.mm in Sources */, A2ED7D8F0CEF431B00970975 /* FilterButton.mm in Sources */, + 45A7D32C2843B55F00F0C32A /* PriorityPopUpButtonCell.mm in Sources */, A25892640CF1F7E800CCCDDF /* StatsWindowController.mm in Sources */, A2C89D600CFCBF57004CC2BC /* ButtonToolbarItem.mm in Sources */, A219798B0D07B78400438EA7 /* GroupToolbarItem.mm in Sources */, @@ -3040,6 +3051,7 @@ A26AF21A0D2DA35A00FF7140 /* FileOutlineController.mm in Sources */, A26AF2840D2DC27C00FF7140 /* AddWindowController.mm in Sources */, A2FB701C0D95CAEA0001F331 /* GroupsController.mm in Sources */, + 45A7D3292843B54D00F0C32A /* GroupPopUpButtonCell.mm in Sources */, A2D307A40D9EC6870051FD27 /* BlocklistDownloader.mm in Sources */, A2725B6E0DE5C4F5003445E7 /* FileListNode.mm in Sources */, A2725D5D0DE7507C003445E7 /* TrackerTableView.mm in Sources */, diff --git a/macosx/GroupPopUpButtonCell.h b/macosx/GroupPopUpButtonCell.h new file mode 100644 index 000000000..16c92fb9f --- /dev/null +++ b/macosx/GroupPopUpButtonCell.h @@ -0,0 +1,9 @@ +// This file Copyright © 2007-2022 Transmission authors and contributors. +// It may be used under the MIT (SPDX: MIT) license. +// License text can be found in the licenses/ folder. + +#import + +@interface GroupPopUpButtonCell : NSPopUpButtonCell + +@end diff --git a/macosx/GroupPopUpButtonCell.mm b/macosx/GroupPopUpButtonCell.mm new file mode 100644 index 000000000..b97416a6d --- /dev/null +++ b/macosx/GroupPopUpButtonCell.mm @@ -0,0 +1,27 @@ +// This file Copyright © 2007-2022 Transmission authors and contributors. +// It may be used under the MIT (SPDX: MIT) license. +// License text can be found in the licenses/ folder. + +#import "GroupPopUpButtonCell.h" + +#define FRAME_INSET 2.0 + +@implementation GroupPopUpButtonCell + +- (void)drawImageWithFrame:(NSRect)cellFrame inView:(NSView*)controlView +{ + NSRect imageFrame = cellFrame; + imageFrame.origin.x -= FRAME_INSET; + + [super drawImageWithFrame:imageFrame inView:controlView]; +} + +- (void)drawTitleWithFrame:(NSRect)cellFrame inView:(NSView*)controlView +{ + NSRect textFrame = cellFrame; + textFrame.origin.y += FRAME_INSET / 2; + + [super drawTitleWithFrame:textFrame inView:controlView]; +} + +@end diff --git a/macosx/PriorityPopUpButtonCell.h b/macosx/PriorityPopUpButtonCell.h new file mode 100644 index 000000000..3c99785b2 --- /dev/null +++ b/macosx/PriorityPopUpButtonCell.h @@ -0,0 +1,9 @@ +// This file Copyright © 2007-2022 Transmission authors and contributors. +// It may be used under the MIT (SPDX: MIT) license. +// License text can be found in the licenses/ folder. + +#import + +@interface PriorityPopUpButtonCell : NSPopUpButtonCell + +@end diff --git a/macosx/PriorityPopUpButtonCell.mm b/macosx/PriorityPopUpButtonCell.mm new file mode 100644 index 000000000..20498a3ad --- /dev/null +++ b/macosx/PriorityPopUpButtonCell.mm @@ -0,0 +1,19 @@ +// This file Copyright © 2007-2022 Transmission authors and contributors. +// It may be used under the MIT (SPDX: MIT) license. +// License text can be found in the licenses/ folder. + +#import "PriorityPopUpButtonCell.h" + +#define FRAME_INSET 2.0 + +@implementation PriorityPopUpButtonCell + +- (void)drawTitleWithFrame:(NSRect)cellFrame inView:(NSView*)controlView +{ + NSRect textFrame = cellFrame; + textFrame.origin.x += 2 * FRAME_INSET; + + [super drawTitleWithFrame:textFrame inView:controlView]; +} + +@end diff --git a/macosx/da.lproj/AddMagnetWindow.xib b/macosx/da.lproj/AddMagnetWindow.xib index 3f6692281..647753bb4 100644 --- a/macosx/da.lproj/AddMagnetWindow.xib +++ b/macosx/da.lproj/AddMagnetWindow.xib @@ -1,9 +1,8 @@ - + - - + @@ -28,25 +27,25 @@ - + - - + + - + - - + + @@ -57,14 +56,14 @@ - - + + @@ -98,14 +97,14 @@ Gw - + - + - - + + @@ -117,16 +116,16 @@ Gw - - + + - - + + @@ -134,8 +133,8 @@ Gw - - + + @@ -156,8 +155,8 @@ Gw - - + + @@ -165,13 +164,13 @@ Gw - + - + - - + + @@ -182,7 +181,7 @@ Gw - + @@ -203,7 +202,7 @@ Gw - - + + @@ -98,14 +97,14 @@ Gw - + - + - - + + @@ -117,16 +116,16 @@ Gw - - + + - - + + @@ -134,8 +133,8 @@ Gw - - + + @@ -156,8 +155,8 @@ Gw - - + + @@ -165,13 +164,13 @@ Gw - + - + - - + + @@ -182,7 +181,7 @@ Gw - + @@ -203,7 +202,7 @@ Gw - - + + @@ -98,14 +97,14 @@ Gw - + - + - - + + @@ -117,16 +116,16 @@ Gw - - + + - - + + @@ -134,8 +133,8 @@ Gw - - + + @@ -156,8 +155,8 @@ Gw - - + + @@ -165,13 +164,13 @@ Gw - + - + - - + + @@ -182,7 +181,7 @@ Gw - + @@ -203,7 +202,7 @@ Gw - - + + @@ -98,14 +97,14 @@ Gw - + - + - - + + @@ -117,16 +116,16 @@ Gw - - + + - - + + @@ -134,8 +133,8 @@ Gw - - + + @@ -156,8 +155,8 @@ Gw - - + + @@ -165,13 +164,13 @@ Gw - + - + - - + + @@ -182,7 +181,7 @@ Gw - + @@ -203,7 +202,7 @@ Gw - - + + @@ -98,14 +97,14 @@ Gw - + - + - - + + @@ -117,16 +116,16 @@ Gw - - + + - - + + @@ -134,8 +133,8 @@ Gw - - + + @@ -156,8 +155,8 @@ Gw - - + + @@ -165,13 +164,13 @@ Gw - + - + - - + + @@ -182,7 +181,7 @@ Gw - + @@ -203,7 +202,7 @@ Gw - - + + @@ -98,14 +97,14 @@ Gw - + - + - - + + @@ -117,16 +116,16 @@ Gw - - + + - - + + @@ -134,8 +133,8 @@ Gw - - + + @@ -156,8 +155,8 @@ Gw - - + + @@ -165,13 +164,13 @@ Gw - + - + - - + + @@ -182,7 +181,7 @@ Gw - + @@ -203,7 +202,7 @@ Gw - - + + @@ -98,14 +97,14 @@ Gw - + - + - - + + @@ -117,16 +116,16 @@ Gw - - + + - - + + @@ -134,8 +133,8 @@ Gw - - + + @@ -156,8 +155,8 @@ Gw - - + + @@ -165,13 +164,13 @@ Gw - + - + - - + + @@ -182,7 +181,7 @@ Gw - + @@ -203,7 +202,7 @@ Gw - - + + @@ -98,14 +97,14 @@ Gw - + - + - - + + @@ -117,16 +116,16 @@ Gw - - + + - - + + @@ -134,8 +133,8 @@ Gw - - + + @@ -156,8 +155,8 @@ Gw - - + + @@ -165,13 +164,13 @@ Gw - + - + - - + + @@ -182,7 +181,7 @@ Gw - + @@ -203,7 +202,7 @@ Gw - - + + @@ -98,14 +97,14 @@ Gw - + - + - - + + @@ -117,16 +116,16 @@ Gw - - + + - - + + @@ -134,8 +133,8 @@ Gw - - + + @@ -156,8 +155,8 @@ Gw - - + + @@ -165,13 +164,13 @@ Gw - + - + - - + + @@ -182,7 +181,7 @@ Gw - + @@ -203,7 +202,7 @@ Gw