1
0
Fork 0
mirror of https://github.com/transmission/transmission synced 2025-01-30 19:03:04 +00:00

Merge pull request #1587 from nevack/nevack/move-ivars-to-impl

Move ivars to @implementation.
This commit is contained in:
Mitch Livingston 2021-01-20 07:35:19 -05:00 committed by GitHub
commit 7e3068d87a
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
11 changed files with 114 additions and 162 deletions

View file

@ -51,34 +51,12 @@ typedef enum
@interface Controller : NSObject <NSURLDownloadDelegate, NSUserNotificationCenterDelegate, NSPopoverDelegate, NSSharingServiceDelegate, NSSharingServicePickerDelegate, NSSoundDelegate, NSToolbarDelegate, NSWindowDelegate, QLPreviewPanelDataSource, QLPreviewPanelDelegate, VDKQueueDelegate> @interface Controller : NSObject <NSURLDownloadDelegate, NSUserNotificationCenterDelegate, NSPopoverDelegate, NSSharingServiceDelegate, NSSharingServicePickerDelegate, NSSoundDelegate, NSToolbarDelegate, NSWindowDelegate, QLPreviewPanelDataSource, QLPreviewPanelDelegate, VDKQueueDelegate>
{ {
tr_session * fLib;
NSMutableArray * fTorrents, * fDisplayedTorrents;
PrefsController * fPrefsController;
InfoWindowController * fInfoController;
MessageWindowController * fMessageController;
NSUserDefaults * fDefaults;
NSString * fConfigDirectory;
IBOutlet NSWindow * fWindow; IBOutlet NSWindow * fWindow;
DragOverlayWindow * fOverlayWindow;
IBOutlet TorrentTableView * fTableView; IBOutlet TorrentTableView * fTableView;
io_connect_t fRootPort;
NSTimer * fTimer;
VDKQueue * fFileWatcherQueue;
IBOutlet NSMenuItem * fOpenIgnoreDownloadFolder; IBOutlet NSMenuItem * fOpenIgnoreDownloadFolder;
IBOutlet NSButton * fActionButton, * fSpeedLimitButton, * fClearCompletedButton; IBOutlet NSButton * fActionButton, * fSpeedLimitButton, * fClearCompletedButton;
IBOutlet NSTextField * fTotalTorrentsField; IBOutlet NSTextField * fTotalTorrentsField;
StatusBarController * fStatusBar;
FilterBarController * fFilterBar;
IBOutlet NSMenuItem * fNextFilterItem; IBOutlet NSMenuItem * fNextFilterItem;
IBOutlet NSMenuItem * fNextInfoTabItem, * fPrevInfoTabItem; IBOutlet NSMenuItem * fNextInfoTabItem, * fPrevInfoTabItem;
@ -89,26 +67,6 @@ typedef enum
IBOutlet NSMenu * fShareMenu, * fShareContextMenu; IBOutlet NSMenu * fShareMenu, * fShareContextMenu;
IBOutlet NSMenuItem * fShareMenuItem, * fShareContextMenuItem; // remove when dropping 10.6 IBOutlet NSMenuItem * fShareMenuItem, * fShareContextMenuItem; // remove when dropping 10.6
QLPreviewPanel * fPreviewPanel;
BOOL fQuitting;
BOOL fQuitRequested;
BOOL fPauseOnLaunch;
Badger * fBadger;
NSMutableArray * fAutoImportedNames;
NSTimer * fAutoImportTimer;
NSMutableDictionary * fPendingTorrentDownloads;
NSMutableSet * fAddingTransfers;
NSMutableSet * fAddWindows;
URLSheetWindowController * fUrlSheetController;
BOOL fGlobalPopoverShown;
BOOL fSoundPlaying;
} }
- (void) openFiles: (NSArray *) filenames addType: (addType) type forcePath: (NSString *) path; - (void) openFiles: (NSArray *) filenames addType: (addType) type forcePath: (NSString *) path;

View file

@ -234,11 +234,47 @@ static void removeKeRangerRansomware()
} }
@implementation Controller @implementation Controller
{
tr_session * fLib;
#warning remove ivars in header when 64-bit only (or it compiles in 32-bit mode) NSMutableArray * fTorrents, * fDisplayedTorrents;
@synthesize prefsController = fPrefsController;
@synthesize messageWindowController = fMessageController; InfoWindowController * fInfoController;
@synthesize fileWatcherQueue = fFileWatcherQueue; MessageWindowController * fMessageController;
NSUserDefaults * fDefaults;
NSString * fConfigDirectory;
DragOverlayWindow * fOverlayWindow;
io_connect_t fRootPort;
NSTimer * fTimer;
StatusBarController * fStatusBar;
FilterBarController * fFilterBar;
QLPreviewPanel * fPreviewPanel;
BOOL fQuitting;
BOOL fQuitRequested;
BOOL fPauseOnLaunch;
Badger * fBadger;
NSMutableArray * fAutoImportedNames;
NSTimer * fAutoImportTimer;
NSMutableDictionary * fPendingTorrentDownloads;
NSMutableSet * fAddingTransfers;
NSMutableSet * fAddWindows;
URLSheetWindowController * fUrlSheetController;
BOOL fGlobalPopoverShown;
BOOL fSoundPlaying;
}
+ (void) initialize + (void) initialize
{ {
@ -442,10 +478,10 @@ static void removeKeRangerRansomware()
fInfoController = [[InfoWindowController alloc] init]; fInfoController = [[InfoWindowController alloc] init];
//needs to be done before init-ing the prefs controller //needs to be done before init-ing the prefs controller
fFileWatcherQueue = [[VDKQueue alloc] init]; _fileWatcherQueue = [[VDKQueue alloc] init];
[fFileWatcherQueue setDelegate: self]; [_fileWatcherQueue setDelegate: self];
fPrefsController = [[PrefsController alloc] initWithHandle: fLib]; _prefsController = [[PrefsController alloc] initWithHandle: fLib];
fQuitting = NO; fQuitting = NO;
fGlobalPopoverShown = NO; fGlobalPopoverShown = NO;
@ -817,7 +853,7 @@ static void removeKeRangerRansomware()
[self updateTorrentHistory]; [self updateTorrentHistory];
[fTableView saveCollapsedGroups]; [fTableView saveCollapsedGroups];
fFileWatcherQueue = nil; _fileWatcherQueue = nil;
//complete cleanup //complete cleanup
tr_sessionClose(fLib); tr_sessionClose(fLib);
@ -1799,7 +1835,7 @@ static void removeKeRangerRansomware()
- (void) showPreferenceWindow: (id) sender - (void) showPreferenceWindow: (id) sender
{ {
NSWindow * window = [fPrefsController window]; NSWindow * window = [_prefsController window];
if (![window isVisible]) if (![window isVisible])
[window center]; [window center];
@ -4632,7 +4668,7 @@ static void removeKeRangerRansomware()
break; break;
case TR_RPC_SESSION_CHANGED: case TR_RPC_SESSION_CHANGED:
[fPrefsController rpcUpdatePrefs]; [_prefsController rpcUpdatePrefs];
break; break;
case TR_RPC_SESSION_CLOSE: case TR_RPC_SESSION_CLOSE:

View file

@ -25,17 +25,6 @@
@class Torrent; @class Torrent;
@interface FileListNode : NSObject <NSCopying> @interface FileListNode : NSObject <NSCopying>
{
NSMutableIndexSet * fIndexes;
NSString * fName;
NSString * fPath;
Torrent * __weak fTorrent;
uint64_t fSize;
NSImage * fIcon;
BOOL fIsFolder;
NSMutableArray * fChildren;
}
@property (nonatomic, copy, readonly) NSString * name; @property (nonatomic, copy, readonly) NSString * name;
@property (nonatomic, copy, readonly) NSString * path; @property (nonatomic, copy, readonly) NSString * path;

View file

@ -29,23 +29,18 @@
@end @end
@implementation FileListNode @implementation FileListNode
{
#warning remove ivars in header when 64-bit only (or it compiles in 32-bit mode) NSMutableIndexSet * _indexes;
@synthesize name = fName; NSImage * _icon;
@synthesize path = fPath; NSMutableArray * _children;
@synthesize torrent = fTorrent; }
@synthesize size = fSize;
@synthesize icon = fIcon;
@synthesize isFolder = fIsFolder;
@synthesize indexes = fIndexes;
@synthesize children = fChildren;
- (id) initWithFolderName: (NSString *) name path: (NSString *) path torrent: (Torrent *) torrent - (id) initWithFolderName: (NSString *) name path: (NSString *) path torrent: (Torrent *) torrent
{ {
if ((self = [self initWithFolder: YES name: name path: path torrent: torrent])) if ((self = [self initWithFolder: YES name: name path: path torrent: torrent]))
{ {
fChildren = [[NSMutableArray alloc] init]; _children = [[NSMutableArray alloc] init];
fSize = 0; _size = 0;
} }
return self; return self;
@ -55,8 +50,8 @@
{ {
if ((self = [self initWithFolder: NO name: name path: path torrent: torrent])) if ((self = [self initWithFolder: NO name: name path: path torrent: torrent]))
{ {
fSize = size; _size = size;
[fIndexes addIndex: index]; [_indexes addIndex: index];
} }
return self; return self;
@ -64,17 +59,17 @@
- (void) insertChild: (FileListNode *) child - (void) insertChild: (FileListNode *) child
{ {
NSAssert(fIsFolder, @"method can only be invoked on folders"); NSAssert(_isFolder, @"method can only be invoked on folders");
[fChildren addObject: child]; [_children addObject: child];
} }
- (void) insertIndex: (NSUInteger) index withSize: (uint64_t) size - (void) insertIndex: (NSUInteger) index withSize: (uint64_t) size
{ {
NSAssert(fIsFolder, @"method can only be invoked on folders"); NSAssert(_isFolder, @"method can only be invoked on folders");
[fIndexes addIndex: index]; [_indexes addIndex: index];
fSize += size; _size += size;
} }
- (id) copyWithZone: (NSZone *) zone - (id) copyWithZone: (NSZone *) zone
@ -86,25 +81,30 @@
- (NSString *) description - (NSString *) description
{ {
if (!fIsFolder) if (!_isFolder)
return [NSString stringWithFormat: @"%@ (%ld)", fName, [fIndexes firstIndex]]; return [NSString stringWithFormat: @"%@ (%ld)", _name, [_indexes firstIndex]];
else else
return [NSString stringWithFormat: @"%@ (folder: %@)", fName, fIndexes]; return [NSString stringWithFormat: @"%@ (folder: %@)", _name, _indexes];
} }
- (NSImage *) icon - (NSImage *) icon
{ {
if (!fIcon) if (!_icon)
fIcon = [[NSWorkspace sharedWorkspace] iconForFileType: fIsFolder ? NSFileTypeForHFSTypeCode(kGenericFolderIcon) _icon = [[NSWorkspace sharedWorkspace] iconForFileType: _isFolder ? NSFileTypeForHFSTypeCode(kGenericFolderIcon)
: [fName pathExtension]]; : [_name pathExtension]];
return fIcon; return _icon;
} }
- (NSMutableArray *) children - (NSMutableArray *) children
{ {
NSAssert(fIsFolder, @"method can only be invoked on folders"); NSAssert(_isFolder, @"method can only be invoked on folders");
return fChildren; return _children;
}
- (NSIndexSet *) indexes
{
return _indexes;
} }
- (BOOL) updateFromOldName: (NSString *) oldName toNewName: (NSString *) newName inPath: (NSString *) path - (BOOL) updateFromOldName: (NSString *) oldName toNewName: (NSString *) newName inPath: (NSString *) path
@ -120,8 +120,8 @@
{ {
if ([oldName isEqualToString: self.name]) if ([oldName isEqualToString: self.name])
{ {
fName = [newName copy]; _name = [newName copy];
fIcon = nil; _icon = nil;
return YES; return YES;
} }
} }
@ -137,7 +137,7 @@
NSString * oldPathPrefix = [path stringByAppendingPathComponent: oldName]; NSString * oldPathPrefix = [path stringByAppendingPathComponent: oldName];
NSString * newPathPrefix = [path stringByAppendingPathComponent: newName]; NSString * newPathPrefix = [path stringByAppendingPathComponent: newName];
fPath = [fPath stringByReplacingCharactersInRange: NSMakeRange(0, [oldPathPrefix length]) withString: newPathPrefix]; _path = [_path stringByReplacingCharactersInRange: NSMakeRange(0, [oldPathPrefix length]) withString: newPathPrefix];
return YES; return YES;
} }
} }
@ -153,13 +153,13 @@
{ {
if ((self = [super init])) if ((self = [super init]))
{ {
fIsFolder = isFolder; _isFolder = isFolder;
fName = [name copy]; _name = [name copy];
fPath = [path copy]; _path = [path copy];
fIndexes = [[NSMutableIndexSet alloc] init]; _indexes = [[NSMutableIndexSet alloc] init];
fTorrent = torrent; _torrent = torrent;
} }
return self; return self;

View file

@ -12,17 +12,6 @@
@class Torrent; @class Torrent;
@interface FileRenameSheetController : NSWindowController @interface FileRenameSheetController : NSWindowController
{
Torrent * _torrent;
FileListNode * _node;
void (^_completionHandler)(BOOL);
NSString * _originalName;
IBOutlet NSTextField * __weak _labelField;
IBOutlet NSTextField * __weak _inputField;
IBOutlet NSButton * __weak _renameButton;
IBOutlet NSButton * __weak _cancelButton;
}
+ (void) presentSheetForTorrent: (Torrent *) torrent modalForWindow: (NSWindow *) window completionHandler: (void (^)(BOOL didRename)) completionHandler; + (void) presentSheetForTorrent: (Torrent *) torrent modalForWindow: (NSWindow *) window completionHandler: (void (^)(BOOL didRename)) completionHandler;
+ (void) presentSheetForFileListNode: (FileListNode *) node modalForWindow: (NSWindow *) window completionHandler: (void (^)(BOOL didRename)) completionHandler; + (void) presentSheetForFileListNode: (FileListNode *) node modalForWindow: (NSWindow *) window completionHandler: (void (^)(BOOL didRename)) completionHandler;

View file

@ -24,16 +24,6 @@ typedef void (^CompletionBlock)(BOOL);
@implementation FileRenameSheetController @implementation FileRenameSheetController
#warning remove ivars in header when 64-bit only (or it compiles in 32-bit mode)
@synthesize torrent = _torrent;
@synthesize node = _node;
@synthesize completionHandler = _completionHandler;
@synthesize originalName = _originalName;
@synthesize labelField = _labelField;
@synthesize inputField = _inputField;
@synthesize renameButton = _renameButton;
@synthesize cancelButton = _cancelButton;
+ (void) presentSheetForTorrent: (Torrent *) torrent modalForWindow: (NSWindow *) window completionHandler: (void (^)(BOOL didRename)) completionHandler + (void) presentSheetForTorrent: (Torrent *) torrent modalForWindow: (NSWindow *) window completionHandler: (void (^)(BOOL didRename)) completionHandler
{ {
NSParameterAssert(torrent != nil); NSParameterAssert(torrent != nil);

View file

@ -105,6 +105,7 @@
//set auto import //set auto import
NSString * autoPath; NSString * autoPath;
VDKQueue* x = [(Controller *)[NSApp delegate] fileWatcherQueue];
if ([fDefaults boolForKey: @"AutoImport"] && (autoPath = [fDefaults stringForKey: @"AutoImportDirectory"])) if ([fDefaults boolForKey: @"AutoImport"] && (autoPath = [fDefaults stringForKey: @"AutoImportDirectory"]))
[[(Controller *)[NSApp delegate] fileWatcherQueue] addPath: [autoPath stringByExpandingTildeInPath] notifyingAbout: VDKQueueNotifyAboutWrite]; [[(Controller *)[NSApp delegate] fileWatcherQueue] addPath: [autoPath stringByExpandingTildeInPath] notifyingAbout: VDKQueueNotifyAboutWrite];

View file

@ -35,35 +35,6 @@ typedef enum {
#define kTorrentDidChangeGroupNotification @"TorrentDidChangeGroup" #define kTorrentDidChangeGroupNotification @"TorrentDidChangeGroup"
@interface Torrent : NSObject <NSCopying, QLPreviewItem> @interface Torrent : NSObject <NSCopying, QLPreviewItem>
{
tr_torrent * fHandle;
const tr_info * fInfo;
const tr_stat * fStat;
NSUserDefaults * fDefaults;
NSImage * fIcon;
NSString * fHashString;
tr_file_stat * fFileStat;
NSArray * fFileList, * fFlatFileList;
NSIndexSet * fPreviousFinishedIndexes;
NSDate * fPreviousFinishedIndexesDate;
BOOL fRemoveWhenFinishSeeding;
NSInteger fGroupValue;
TorrentDeterminationType fGroupValueDetermination;
TorrentDeterminationType fDownloadFolderDetermination;
BOOL fResumeOnWake;
BOOL fTimeMachineExcludeInitialized;
}
- (id) initWithPath: (NSString *) path location: (NSString *) location deleteTorrentFile: (BOOL) torrentDelete - (id) initWithPath: (NSString *) path location: (NSString *) location deleteTorrentFile: (BOOL) torrentDelete
lib: (tr_session *) lib; lib: (tr_session *) lib;
- (id) initWithTorrentStruct: (tr_torrent *) torrentStruct location: (NSString *) location lib: (tr_session *) lib; - (id) initWithTorrentStruct: (tr_torrent *) torrentStruct location: (NSString *) location lib: (tr_session *) lib;

View file

@ -130,9 +130,32 @@ bool trashDataFile(const char * filename, tr_error ** error)
} }
@implementation Torrent @implementation Torrent
{
tr_torrent * fHandle;
const tr_info * fInfo;
const tr_stat * fStat;
#warning remove ivars in header when 64-bit only (or it compiles in 32-bit mode) NSUserDefaults * fDefaults;
@synthesize removeWhenFinishSeeding = fRemoveWhenFinishSeeding;
NSImage * fIcon;
NSString * fHashString;
tr_file_stat * fFileStat;
NSArray * fFileList, * fFlatFileList;
NSIndexSet * fPreviousFinishedIndexes;
NSDate * fPreviousFinishedIndexesDate;
NSInteger fGroupValue;
TorrentDeterminationType fGroupValueDetermination;
TorrentDeterminationType fDownloadFolderDetermination;
BOOL fResumeOnWake;
BOOL fTimeMachineExcludeInitialized;
}
- (id) initWithPath: (NSString *) path location: (NSString *) location deleteTorrentFile: (BOOL) torrentDelete - (id) initWithPath: (NSString *) path location: (NSString *) location deleteTorrentFile: (BOOL) torrentDelete
lib: (tr_session *) lib lib: (tr_session *) lib
@ -230,7 +253,7 @@ bool trashDataFile(const char * filename, tr_error ** error)
@"Active": @([self isActive]), @"Active": @([self isActive]),
@"WaitToStart": @([self waitingToStart]), @"WaitToStart": @([self waitingToStart]),
@"GroupValue": @(fGroupValue), @"GroupValue": @(fGroupValue),
@"RemoveWhenFinishSeeding": @(fRemoveWhenFinishSeeding)}; @"RemoveWhenFinishSeeding": @(_removeWhenFinishSeeding)};
} }
- (void) dealloc - (void) dealloc
@ -1717,7 +1740,7 @@ bool trashDataFile(const char * filename, tr_error ** error)
fGroupValue = [[GroupsController groups] groupIndexForTorrent: self]; fGroupValue = [[GroupsController groups] groupIndexForTorrent: self];
} }
fRemoveWhenFinishSeeding = removeWhenFinishSeeding ? [removeWhenFinishSeeding boolValue] : [fDefaults boolForKey: @"RemoveWhenFinishSeeding"]; _removeWhenFinishSeeding = removeWhenFinishSeeding ? [removeWhenFinishSeeding boolValue] : [fDefaults boolForKey: @"RemoveWhenFinishSeeding"];
[[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(checkGroupValueForRemoval:) [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(checkGroupValueForRemoval:)
name: @"GroupValueRemoved" object: nil]; name: @"GroupValueRemoved" object: nil];

View file

@ -27,11 +27,6 @@
@class Torrent; @class Torrent;
@interface TrackerNode : NSObject @interface TrackerNode : NSObject
{
tr_tracker_stat fStat;
Torrent * __weak fTorrent;
}
@property (nonatomic, weak, readonly) Torrent * torrent; @property (nonatomic, weak, readonly) Torrent * torrent;

View file

@ -25,16 +25,16 @@
#import "NSStringAdditions.h" #import "NSStringAdditions.h"
@implementation TrackerNode @implementation TrackerNode
{
#warning remove ivars in header when 64-bit only (or it compiles in 32-bit mode) tr_tracker_stat fStat;
@synthesize torrent = fTorrent; }
- (id) initWithTrackerStat: (tr_tracker_stat *) stat torrent: (Torrent *) torrent - (id) initWithTrackerStat: (tr_tracker_stat *) stat torrent: (Torrent *) torrent
{ {
if ((self = [super init])) if ((self = [super init]))
{ {
fStat = *stat; fStat = *stat;
fTorrent = torrent; //weak reference _torrent = torrent; //weak reference
} }
return self; return self;