1 | /****************************************************************************** |
---|
2 | * $Id: InfoWindowController.h 5998 2008-06-02 17:26:02Z livings124 $ |
---|
3 | * |
---|
4 | * Copyright (c) 2006-2008 Transmission authors and contributors |
---|
5 | * |
---|
6 | * Permission is hereby granted, free of charge, to any person obtaining a |
---|
7 | * copy of this software and associated documentation files (the "Software"), |
---|
8 | * to deal in the Software without restriction, including without limitation |
---|
9 | * the rights to use, copy, modify, merge, publish, distribute, sublicense, |
---|
10 | * and/or sell copies of the Software, and to permit persons to whom the |
---|
11 | * Software is furnished to do so, subject to the following conditions: |
---|
12 | * |
---|
13 | * The above copyright notice and this permission notice shall be included in |
---|
14 | * all copies or substantial portions of the Software. |
---|
15 | * |
---|
16 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR |
---|
17 | * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, |
---|
18 | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE |
---|
19 | * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER |
---|
20 | * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING |
---|
21 | * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER |
---|
22 | * DEALINGS IN THE SOFTWARE. |
---|
23 | *****************************************************************************/ |
---|
24 | |
---|
25 | #import <Cocoa/Cocoa.h> |
---|
26 | #import "Torrent.h" |
---|
27 | #import "FileOutlineController.h" |
---|
28 | #import "PiecesView.h" |
---|
29 | #import <transmission.h> |
---|
30 | |
---|
31 | @class TrackerTableView; |
---|
32 | |
---|
33 | @interface InfoWindowController : NSWindowController |
---|
34 | { |
---|
35 | NSArray * fTorrents, * fPeers; |
---|
36 | NSMutableArray * fTrackers; |
---|
37 | |
---|
38 | IBOutlet NSView * fInfoView, * fActivityView, * fTrackerView, * fPeersView, * fFilesView, * fOptionsView; |
---|
39 | int fCurrentTabTag; |
---|
40 | IBOutlet NSMatrix * fTabMatrix; |
---|
41 | |
---|
42 | IBOutlet NSImageView * fImageView; |
---|
43 | IBOutlet NSTextField * fNameField, * fBasicInfoField; |
---|
44 | |
---|
45 | IBOutlet NSTextField * fTrackerField, * fPiecesField, * fHashField, * fSecureField, |
---|
46 | * fTorrentLocationField, * fDataLocationField, |
---|
47 | * fDateAddedField, * fDateCompletedField, * fDateActivityField, |
---|
48 | * fCreatorField, * fDateCreatedField, |
---|
49 | * fStateField, * fProgressField, |
---|
50 | * fHaveField, * fDownloadedTotalField, * fUploadedTotalField, * fFailedHashField, |
---|
51 | * fRatioField, * fSwarmSpeedField; |
---|
52 | IBOutlet NSTextView * fCommentView; |
---|
53 | IBOutlet NSButton * fRevealDataButton, * fRevealTorrentButton; |
---|
54 | |
---|
55 | IBOutlet TrackerTableView * fTrackerTable; |
---|
56 | IBOutlet NSSegmentedControl * fTrackerAddRemoveControl; |
---|
57 | IBOutlet NSTextField * fAnnounceAddressField, * fAnnounceLastField, * fAnnounceResponseField, * fAnnounceNextField, |
---|
58 | * fScrapeAddressField, * fScrapeLastField, * fScrapeResponseField, * fScrapeNextField; |
---|
59 | |
---|
60 | IBOutlet NSTableView * fPeerTable; |
---|
61 | IBOutlet NSTextField * fConnectedPeersField, * fDownloadingFromField, * fUploadingToField, * fKnownField, |
---|
62 | * fSeedersField, * fLeechersField, * fCompletedFromTrackerField; |
---|
63 | IBOutlet NSTextView * fErrorMessageView; |
---|
64 | IBOutlet PiecesView * fPiecesView; |
---|
65 | IBOutlet NSSegmentedControl * fPiecesControl; |
---|
66 | |
---|
67 | IBOutlet FileOutlineController * fFileController; |
---|
68 | |
---|
69 | IBOutlet NSPopUpButton * fRatioPopUp, * fUploadLimitPopUp, * fDownloadLimitPopUp; |
---|
70 | IBOutlet NSTextField * fUploadLimitField, * fDownloadLimitField, * fRatioLimitField, * fPeersConnectField, |
---|
71 | * fUploadLimitLabel, * fDownloadLimitLabel; |
---|
72 | |
---|
73 | NSString * fInitialString; |
---|
74 | } |
---|
75 | |
---|
76 | - (void) setInfoForTorrents: (NSArray *) torrents; |
---|
77 | - (void) updateInfoStats; |
---|
78 | - (void) updateOptions; |
---|
79 | |
---|
80 | - (void) setTab: (id) sender; |
---|
81 | |
---|
82 | - (void) setNextTab; |
---|
83 | - (void) setPreviousTab; |
---|
84 | |
---|
85 | - (void) addRemoveTracker: (id) sender; |
---|
86 | |
---|
87 | - (BOOL) shouldQuickLookFileView; |
---|
88 | - (NSArray *) quickLookURLs; |
---|
89 | - (BOOL) canQuickLook; |
---|
90 | - (NSRect) quickLookFrameWithURL: (NSURL*) url; |
---|
91 | |
---|
92 | - (void) setPiecesView: (id) sender; |
---|
93 | - (void) setPiecesViewForAvailable: (BOOL) available; |
---|
94 | |
---|
95 | - (void) revealTorrentFile: (id) sender; |
---|
96 | - (void) revealDataFile: (id) sender; |
---|
97 | |
---|
98 | - (void) setSpeedMode: (id) sender; |
---|
99 | - (void) setSpeedLimit: (id) sender; |
---|
100 | |
---|
101 | - (void) setRatioSetting: (id) sender; |
---|
102 | - (void) setRatioLimit: (id) sender; |
---|
103 | |
---|
104 | - (void) setPeersConnectLimit: (id) sender; |
---|
105 | |
---|
106 | @end |
---|