mirror of
https://github.com/transmission/transmission
synced 2025-03-03 18:25:35 +00:00
add a "DL" column to the web seed table (not yet functional)
This commit is contained in:
parent
2cbf55351d
commit
c83daab843
3 changed files with 115 additions and 19 deletions
|
@ -8,7 +8,7 @@
|
|||
<string key="IBDocument.HIToolboxVersion">352.00</string>
|
||||
<object class="NSMutableArray" key="IBDocument.EditedObjectIDs">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<integer value="1030"/>
|
||||
<integer value="1766"/>
|
||||
</object>
|
||||
<object class="NSArray" key="IBDocument.PluginDependencies">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
|
@ -2141,6 +2141,7 @@ AAB0ZXh0AAAAAENvcHlyaWdodCBBcHBsZSBDb21wdXRlciwgSW5jLiwgMjAwNQAAAAA</bytes>
|
|||
</object>
|
||||
<string key="NSFrame">{{1, 1}, {360, 143}}</string>
|
||||
<reference key="NSSuperview" ref="754568592"/>
|
||||
<reference key="NSNextKeyView" ref="423972458"/>
|
||||
<reference key="NSDocView" ref="423972458"/>
|
||||
<reference key="NSBGColor" ref="987864771"/>
|
||||
<int key="NScvFlags">2</int>
|
||||
|
@ -2169,6 +2170,7 @@ AAB0ZXh0AAAAAENvcHlyaWdodCBBcHBsZSBDb21wdXRlciwgSW5jLiwgMjAwNQAAAAA</bytes>
|
|||
</object>
|
||||
<string key="NSFrame">{{10, 202}, {362, 145}}</string>
|
||||
<reference key="NSSuperview" ref="296911506"/>
|
||||
<reference key="NSNextKeyView" ref="198254095"/>
|
||||
<int key="NSsFlags">530</int>
|
||||
<reference key="NSVScroller" ref="964808471"/>
|
||||
<reference key="NSHScroller" ref="265048045"/>
|
||||
|
@ -3939,14 +3941,14 @@ zijOSc5pzorOqs66ztvO+88czzzPXc99z57Pvs/fz+/QANAg0EHQYdCC0KLQw9Dj0PPRFNE00VXRddGW
|
|||
<object class="_NSCornerView" key="NSCornerView" id="336297981">
|
||||
<reference key="NSNextResponder" ref="252354812"/>
|
||||
<int key="NSvFlags">-2147483392</int>
|
||||
<string key="NSFrame">{{-22, 0}, {12, 17}}</string>
|
||||
<string key="NSFrame">{{328, 0}, {12, 17}}</string>
|
||||
<reference key="NSSuperview" ref="252354812"/>
|
||||
</object>
|
||||
<object class="NSMutableArray" key="NSTableColumns">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<object class="NSTableColumn" id="459964989">
|
||||
<string key="NSIdentifier">Address</string>
|
||||
<double key="NSWidth">3.350000e+02</double>
|
||||
<double key="NSWidth">2.940000e+02</double>
|
||||
<double key="NSMinWidth">1.000000e+01</double>
|
||||
<double key="NSMaxWidth">1.000000e+04</double>
|
||||
<object class="NSTableHeaderCell" key="NSHeaderCell">
|
||||
|
@ -3966,9 +3968,45 @@ zijOSc5pzorOqs66ztvO+88czzzPXc99z57Pvs/fz+/QANAg0EHQYdCC0KLQw9Dj0PPRFNE00VXRddGW
|
|||
<reference key="NSBackgroundColor" ref="987864771"/>
|
||||
<reference key="NSTextColor" ref="534079857"/>
|
||||
</object>
|
||||
<int key="NSResizingMask">1</int>
|
||||
<int key="NSResizingMask">3</int>
|
||||
<bool key="NSIsResizeable">YES</bool>
|
||||
<reference key="NSTableView" ref="705721384"/>
|
||||
<object class="NSSortDescriptor" key="NSSortDescriptorPrototype">
|
||||
<string key="NSKey">Address</string>
|
||||
<bool key="NSAscending">YES</bool>
|
||||
<string key="NSSelector">caseInsensitiveCompare:</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="NSTableColumn" id="651742019">
|
||||
<string key="NSIdentifier">DL From</string>
|
||||
<double key="NSWidth">3.800000e+01</double>
|
||||
<double key="NSMinWidth">1.800000e+01</double>
|
||||
<double key="NSMaxWidth">6.000000e+01</double>
|
||||
<object class="NSTableHeaderCell" key="NSHeaderCell">
|
||||
<int key="NSCellFlags">75628032</int>
|
||||
<int key="NSCellFlags2">0</int>
|
||||
<string key="NSContents">DL</string>
|
||||
<reference key="NSSupport" ref="26"/>
|
||||
<reference key="NSBackgroundColor" ref="665452585"/>
|
||||
<reference key="NSTextColor" ref="390741217"/>
|
||||
</object>
|
||||
<object class="NSTextFieldCell" key="NSDataCell" id="513647075">
|
||||
<int key="NSCellFlags">337772096</int>
|
||||
<int key="NSCellFlags2">2048</int>
|
||||
<string key="NSContents">Text Cell</string>
|
||||
<reference key="NSSupport" ref="615908458"/>
|
||||
<reference key="NSControlView" ref="705721384"/>
|
||||
<reference key="NSBackgroundColor" ref="987864771"/>
|
||||
<reference key="NSTextColor" ref="534079857"/>
|
||||
</object>
|
||||
<int key="NSResizingMask">2</int>
|
||||
<bool key="NSIsResizeable">YES</bool>
|
||||
<reference key="NSTableView" ref="705721384"/>
|
||||
<object class="NSSortDescriptor" key="NSSortDescriptorPrototype">
|
||||
<string key="NSKey">DL From Rate</string>
|
||||
<bool key="NSAscending">YES</bool>
|
||||
<string key="NSSelector">compare:</string>
|
||||
</object>
|
||||
</object>
|
||||
</object>
|
||||
<double key="NSIntercellSpacingWidth">3.000000e+00</double>
|
||||
|
@ -3976,8 +4014,9 @@ zijOSc5pzorOqs66ztvO+88czzzPXc99z57Pvs/fz+/QANAg0EHQYdCC0KLQw9Dj0PPRFNE00VXRddGW
|
|||
<reference key="NSBackgroundColor" ref="880039277"/>
|
||||
<reference key="NSGridColor" ref="705909853"/>
|
||||
<double key="NSRowHeight">1.400000e+01</double>
|
||||
<int key="NSTvFlags">-759169024</int>
|
||||
<int key="NSColumnAutoresizingStyle">4</int>
|
||||
<int key="NSTvFlags">-742359040</int>
|
||||
<string key="NSAutosaveName">InspectorTableWebSeeds</string>
|
||||
<int key="NSColumnAutoresizingStyle">1</int>
|
||||
<int key="NSDraggingSourceMaskForLocal">15</int>
|
||||
<int key="NSDraggingSourceMaskForNonLocal">0</int>
|
||||
<bool key="NSAllowsTypeSelect">NO</bool>
|
||||
|
@ -3993,22 +4032,22 @@ zijOSc5pzorOqs66ztvO+88czzzPXc99z57Pvs/fz+/QANAg0EHQYdCC0KLQw9Dj0PPRFNE00VXRddGW
|
|||
<object class="NSScroller" id="58257122">
|
||||
<reference key="NSNextResponder" ref="252354812"/>
|
||||
<int key="NSvFlags">-2147483392</int>
|
||||
<string key="NSFrame">{{328, 17}, {11, 96}}</string>
|
||||
<string key="NSFrame">{{328, 17}, {11, 37}}</string>
|
||||
<reference key="NSSuperview" ref="252354812"/>
|
||||
<int key="NSsFlags">256</int>
|
||||
<reference key="NSTarget" ref="252354812"/>
|
||||
<string key="NSAction">_doScroller:</string>
|
||||
<double key="NSPercent">8.658537e-01</double>
|
||||
<double key="NSPercent">7.708333e-01</double>
|
||||
</object>
|
||||
<object class="NSScroller" id="904154524">
|
||||
<reference key="NSNextResponder" ref="252354812"/>
|
||||
<int key="NSvFlags">-2147483392</int>
|
||||
<string key="NSFrame">{{1, 113}, {327, 11}}</string>
|
||||
<string key="NSFrame">{{1, 54}, {327, 11}}</string>
|
||||
<reference key="NSSuperview" ref="252354812"/>
|
||||
<int key="NSsFlags">257</int>
|
||||
<reference key="NSTarget" ref="252354812"/>
|
||||
<string key="NSAction">_doScroller:</string>
|
||||
<double key="NSPercent">8.387097e-01</double>
|
||||
<double key="NSPercent">8.918206e-01</double>
|
||||
</object>
|
||||
<object class="NSClipView" id="238219887">
|
||||
<reference key="NSNextResponder" ref="252354812"/>
|
||||
|
@ -8143,6 +8182,7 @@ zijOSc5pzorOqs66ztvO+88czzzPXc99z57Pvs/fz+/QANAg0EHQYdCC0KLQw9Dj0PPRFNE00VXRddGW
|
|||
<object class="NSMutableArray" key="children">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<reference ref="459964989"/>
|
||||
<reference ref="651742019"/>
|
||||
</object>
|
||||
<reference key="parent" ref="252354812"/>
|
||||
</object>
|
||||
|
@ -8160,6 +8200,20 @@ zijOSc5pzorOqs66ztvO+88czzzPXc99z57Pvs/fz+/QANAg0EHQYdCC0KLQw9Dj0PPRFNE00VXRddGW
|
|||
<reference key="object" ref="305150555"/>
|
||||
<reference key="parent" ref="459964989"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">1786</int>
|
||||
<reference key="object" ref="651742019"/>
|
||||
<object class="NSMutableArray" key="children">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<reference ref="513647075"/>
|
||||
</object>
|
||||
<reference key="parent" ref="705721384"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">1787</int>
|
||||
<reference key="object" ref="513647075"/>
|
||||
<reference key="parent" ref="651742019"/>
|
||||
</object>
|
||||
</object>
|
||||
</object>
|
||||
<object class="NSMutableDictionary" key="flattenedProperties">
|
||||
|
@ -8981,7 +9035,7 @@ zijOSc5pzorOqs66ztvO+88czzzPXc99z57Pvs/fz+/QANAg0EHQYdCC0KLQw9Dj0PPRFNE00VXRddGW
|
|||
</object>
|
||||
</object>
|
||||
<nil key="sourceID"/>
|
||||
<int key="maxID">1785</int>
|
||||
<int key="maxID">1787</int>
|
||||
</object>
|
||||
<object class="IBClassDescriber" key="IBDocument.Classes">
|
||||
<object class="NSMutableArray" key="referencedPartialClassDescriptions">
|
||||
|
|
|
@ -154,6 +154,11 @@ typedef enum
|
|||
[fPeerTable setSortDescriptors: [NSArray arrayWithObject: [[fPeerTable tableColumnWithIdentifier: @"IP"]
|
||||
sortDescriptorPrototype]]];
|
||||
|
||||
//initially sort webseed table by address
|
||||
if ([[fWebSeedTable sortDescriptors] count] == 0)
|
||||
[fWebSeedTable setSortDescriptors: [NSArray arrayWithObject: [[fWebSeedTable tableColumnWithIdentifier: @"Address"]
|
||||
sortDescriptorPrototype]]];
|
||||
|
||||
//set table header tool tips
|
||||
if ([NSApp isOnLeopardOrBetter])
|
||||
{
|
||||
|
@ -165,6 +170,10 @@ typedef enum
|
|||
"inspector -> peer table -> header tool tip")];
|
||||
[[fPeerTable tableColumnWithIdentifier: @"DL From"] setHeaderToolTip: NSLocalizedString(@"Downloading From Peer",
|
||||
"inspector -> peer table -> header tool tip")];
|
||||
|
||||
#warning add tooltip for webseeds?
|
||||
[[fWebSeedTable tableColumnWithIdentifier: @"DL From"] setHeaderToolTip: NSLocalizedString(@"Downloading From Web Seeder",
|
||||
"inspector -> peer table -> header tool tip")];
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -215,6 +224,8 @@ typedef enum
|
|||
[fWebSeeds release];
|
||||
[fTrackers release];
|
||||
|
||||
[fWebSeedTableAnimation release];
|
||||
|
||||
[super dealloc];
|
||||
}
|
||||
|
||||
|
@ -364,9 +375,11 @@ typedef enum
|
|||
|
||||
[fPeers release];
|
||||
fPeers = nil;
|
||||
[fPeerTable reloadData];
|
||||
|
||||
[fWebSeeds release];
|
||||
fWebSeeds = nil;
|
||||
[fWebSeedTable reloadData];
|
||||
[self setWebSeederTableHidden: YES animate: YES];
|
||||
|
||||
[fTrackers release];
|
||||
|
@ -471,12 +484,9 @@ typedef enum
|
|||
[self updateInfoStats];
|
||||
[self updateOptions];
|
||||
|
||||
//reload tables that won't change every update
|
||||
[fTrackerTable setTrackers: fTrackers];
|
||||
[fTrackerTable reloadData];
|
||||
|
||||
[fWebSeedTable reloadData];
|
||||
#warning check if should just be reloaded when not 1 torrent
|
||||
[fPeerTable reloadData];
|
||||
}
|
||||
|
||||
- (void) updateInfoStats
|
||||
|
@ -852,7 +862,16 @@ typedef enum
|
|||
}
|
||||
else if (tableView == fWebSeedTable)
|
||||
{
|
||||
return [fWebSeeds objectAtIndex: row];
|
||||
NSString * ident = [column identifier];
|
||||
NSDictionary * webSeed = [fWebSeeds objectAtIndex: row];
|
||||
|
||||
if ([ident isEqualToString: @"DL From"])
|
||||
{
|
||||
NSNumber * rate;
|
||||
return (rate = [webSeed objectForKey: @"DL From Rate"]) ? [NSString stringForSpeedAbbrev: [rate floatValue]] : @"";
|
||||
}
|
||||
else
|
||||
return [webSeed objectForKey: @"Address"];
|
||||
}
|
||||
else if (tableView == fTrackerTable)
|
||||
{
|
||||
|
@ -883,6 +902,17 @@ typedef enum
|
|||
[tableView reloadData];
|
||||
}
|
||||
}
|
||||
else if (tableView == fWebSeedTable)
|
||||
{
|
||||
if (fWebSeeds)
|
||||
{
|
||||
NSArray * oldWebSeeds = fWebSeeds;
|
||||
fWebSeeds = [[fWebSeeds sortedArrayUsingDescriptors: [fWebSeedTable sortDescriptors]] retain];
|
||||
[oldWebSeeds release];
|
||||
[tableView reloadData];
|
||||
}
|
||||
}
|
||||
else;
|
||||
}
|
||||
|
||||
- (BOOL) tableView: (NSTableView *) tableView shouldSelectRow: (int) row
|
||||
|
@ -1434,8 +1464,11 @@ typedef enum
|
|||
|
||||
[fPeers release];
|
||||
fPeers = [[[torrent peers] sortedArrayUsingDescriptors: [self peerSortDescriptors]] retain];
|
||||
|
||||
[fPeerTable reloadData];
|
||||
|
||||
[fWebSeeds release];
|
||||
fWebSeeds = [[[torrent webSeeders] sortedArrayUsingDescriptors: [fWebSeedTable sortDescriptors]] retain];
|
||||
[fWebSeedTable reloadData];
|
||||
}
|
||||
|
||||
- (void) updateInfoFiles
|
||||
|
@ -1512,7 +1545,7 @@ typedef enum
|
|||
|
||||
fWebSeedTableAnimation = [[NSViewAnimation alloc] initWithViewAnimations:
|
||||
[NSArray arrayWithObjects: webSeedDict, peerDict, nil]];
|
||||
[fWebSeedTableAnimation setDuration: 0.1];
|
||||
[fWebSeedTableAnimation setDuration: 0.125];
|
||||
[fWebSeedTableAnimation setAnimationBlockingMode: NSAnimationNonblocking];
|
||||
[fWebSeedTableAnimation setDelegate: self];
|
||||
|
||||
|
|
|
@ -1022,7 +1022,16 @@ void completenessChangeCallback(tr_torrent * torrent, cp_status_t status, void *
|
|||
NSMutableArray * webSeeders = [NSMutableArray arrayWithCapacity: webSeedCount];
|
||||
|
||||
for (i = 0; i < webSeedCount; i++)
|
||||
[webSeeders addObject: [NSString stringWithUTF8String: fInfo->webseeds[i]]];
|
||||
{
|
||||
NSMutableDictionary * dict = [NSMutableDictionary dictionaryWithCapacity: 2];
|
||||
|
||||
[dict setObject: [NSString stringWithUTF8String: fInfo->webseeds[i]] forKey: @"Address"];
|
||||
|
||||
/*if (webSeeders->isDownloadingFrom)
|
||||
[dict setObject: [NSNumber numberWithFloat: peer->downloadFromRate] forKey: @"DL From Rate"];*/
|
||||
|
||||
[webSeeders addObject: dict];
|
||||
}
|
||||
|
||||
return webSeeders;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue