1
<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"> <style>
3
.COMM {color: #bbb; font-style: italic;}
7
.line {border-right: 1px dotted #666; color: #666; font-style: normal;}
8
</style></head><body><pre><span class='line'> 1</span> <span class="COMM">/*
9
<span class='line'> 2</span> Script: deluge-torrents.js
10
<span class='line'> 3</span> Contains all objects and functions related to the torrent grid.
11
<span class='line'> 4</span>
12
<span class='line'> 5</span> Copyright:
13
<span class='line'> 6</span> (C) Damien Churchill 2009 <damoxc@gmail.com>
14
<span class='line'> 7</span> This program is free software; you can redistribute it and/or modify
15
<span class='line'> 8</span> it under the terms of the GNU General Public License as published by
16
<span class='line'> 9</span> the Free Software Foundation; either version 3, or (at your option)
17
<span class='line'> 10</span> any later version.
18
<span class='line'> 11</span>
19
<span class='line'> 12</span> This program is distributed in the hope that it will be useful,
20
<span class='line'> 13</span> but WITHOUT ANY WARRANTY; without even the implied warranty of
21
<span class='line'> 14</span> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
22
<span class='line'> 15</span> GNU General Public License for more details.
23
<span class='line'> 16</span>
24
<span class='line'> 17</span> You should have received a copy of the GNU General Public License
25
<span class='line'> 18</span> along with this program. If not, write to:
26
<span class='line'> 19</span> The Free Software Foundation, Inc.,
27
<span class='line'> 20</span> 51 Franklin Street, Fifth Floor
28
<span class='line'> 21</span> Boston, MA 02110-1301, USA.
29
<span class='line'> 22</span>
30
<span class='line'> 23</span> In addition, as a special exception, the copyright holders give
31
<span class='line'> 24</span> permission to link the code of portions of this program with the OpenSSL
32
<span class='line'> 25</span> library.
33
<span class='line'> 26</span> You must obey the GNU General Public License in all respects for all of
34
<span class='line'> 27</span> the code used other than OpenSSL. If you modify file(s) with this
35
<span class='line'> 28</span> exception, you may extend this exception to your version of the file(s),
36
<span class='line'> 29</span> but you are not obligated to do so. If you do not wish to do so, delete
37
<span class='line'> 30</span> this exception statement from your version. If you delete this exception
38
<span class='line'> 31</span> statement from all source files in the program, then also delete it here.
39
<span class='line'> 32</span>
40
<span class='line'> 33</span> */</span><span class="WHIT">
41
<span class='line'> 34</span>
42
<span class='line'> 35</span> </span><span class="PUNC">(</span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
43
<span class='line'> 36</span> </span><span class="WHIT"> </span><span class="COMM">/* Renderers for the Torrent Grid */</span><span class="WHIT">
44
<span class='line'> 37</span> </span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="NAME">queueRenderer</span><span class="PUNC">(</span><span class="NAME">value</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
45
<span class='line'> 38</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">value</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="NUMB">1</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="STRN">''</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">value</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NUMB">1</span><span class="PUNC">;</span><span class="WHIT">
46
<span class='line'> 39</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
47
<span class='line'> 40</span> </span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="NAME">torrentNameRenderer</span><span class="PUNC">(</span><span class="NAME">value</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">p</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">r</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
48
<span class='line'> 41</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">String.format</span><span class="PUNC">(</span><span class="STRN">'<div class="torrent-name x-deluge-{0}">{1}</div>'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">r.data</span><span class="PUNC">[</span><span class="STRN">'state'</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">toLowerCase</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">value</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
49
<span class='line'> 42</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
50
<span class='line'> 43</span> </span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="NAME">torrentSpeedRenderer</span><span class="PUNC">(</span><span class="NAME">value</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
51
<span class='line'> 44</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">value</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="PUNC">;</span><span class="WHIT">
52
<span class='line'> 45</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">fspeed</span><span class="PUNC">(</span><span class="NAME">value</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
53
<span class='line'> 46</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
54
<span class='line'> 47</span> </span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="NAME">torrentProgressRenderer</span><span class="PUNC">(</span><span class="NAME">value</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">p</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">r</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
55
<span class='line'> 48</span> </span><span class="WHIT"> </span><span class="NAME">value</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">Number</span><span class="PUNC">(</span><span class="NAME">value</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
56
<span class='line'> 49</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">progress</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">value</span><span class="PUNC">;</span><span class="WHIT">
57
<span class='line'> 50</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">text</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">r.data</span><span class="PUNC">[</span><span class="STRN">'state'</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">' '</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">value.toFixed</span><span class="PUNC">(</span><span class="NUMB">2</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">'%'</span><span class="WHIT">
58
<span class='line'> 51</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">width</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">Number</span><span class="PUNC">(</span><span class="NAME">this.style.match</span><span class="PUNC">(</span><span class="REGX">/\w+:\s*(\d+)\w+/</span><span class="PUNC">)</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NUMB">8</span><span class="PUNC">;</span><span class="WHIT">
59
<span class='line'> 52</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">Deluge.progressBar</span><span class="PUNC">(</span><span class="NAME">value</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">width</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">text</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
60
<span class='line'> 53</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
61
<span class='line'> 54</span> </span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="NAME">seedsRenderer</span><span class="PUNC">(</span><span class="NAME">value</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">p</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">r</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
62
<span class='line'> 55</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">r.data</span><span class="PUNC">[</span><span class="STRN">'total_seeds'</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">></span><span class="WHIT"> </span><span class="PUNC">-</span><span class="NUMB">1</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
63
<span class='line'> 56</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">String.format</span><span class="PUNC">(</span><span class="STRN">'{0} ({1})'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">value</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">r.data</span><span class="PUNC">[</span><span class="STRN">'total_seeds'</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
64
<span class='line'> 57</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
65
<span class='line'> 58</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">value</span><span class="PUNC">;</span><span class="WHIT">
66
<span class='line'> 59</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
67
<span class='line'> 60</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
68
<span class='line'> 61</span> </span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="NAME">peersRenderer</span><span class="PUNC">(</span><span class="NAME">value</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">p</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">r</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
69
<span class='line'> 62</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">r.data</span><span class="PUNC">[</span><span class="STRN">'total_peers'</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">></span><span class="WHIT"> </span><span class="PUNC">-</span><span class="NUMB">1</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
70
<span class='line'> 63</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">String.format</span><span class="PUNC">(</span><span class="STRN">'{0} ({1})'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">value</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">r.data</span><span class="PUNC">[</span><span class="STRN">'total_peers'</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
71
<span class='line'> 64</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
72
<span class='line'> 65</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">value</span><span class="PUNC">;</span><span class="WHIT">
73
<span class='line'> 66</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
74
<span class='line'> 67</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
75
<span class='line'> 68</span> </span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="NAME">availRenderer</span><span class="PUNC">(</span><span class="NAME">value</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">p</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">r</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
76
<span class='line'> 69</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">Number</span><span class="PUNC">(</span><span class="NAME">value</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">toFixed</span><span class="PUNC">(</span><span class="NUMB">3</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
77
<span class='line'> 70</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
78
<span class='line'> 71</span> </span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="NAME">trackerRenderer</span><span class="PUNC">(</span><span class="NAME">value</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">p</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">r</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
79
<span class='line'> 72</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">String.format</span><span class="PUNC">(</span><span class="STRN">'<div style="background: url(/tracker/{0}) no-repeat; padding-left: 20px;">{0}</div>'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">value</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
80
<span class='line'> 73</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
81
<span class='line'> 74</span> </span><span class="WHIT">
82
<span class='line'> 75</span> </span><span class="COMM">/**
83
<span class='line'> 76</span> * Ext.deluge.TorrentGrid Class
84
<span class='line'> 77</span> *
85
<span class='line'> 78</span> * @author Damien Churchill <damoxc@gmail.com>
86
<span class='line'> 79</span> * @version 1.2
87
<span class='line'> 80</span> *
88
<span class='line'> 81</span> * @class Ext.deluge.TorrentGrid
89
<span class='line'> 82</span> * @extends Ext.grid.GridPanel
90
<span class='line'> 83</span> * @constructor
91
<span class='line'> 84</span> * @param {Object} config Configuration options
92
<span class='line'> 85</span> */</span><span class="WHIT">
93
<span class='line'> 86</span> </span><span class="WHIT"> </span><span class="NAME">Ext.deluge.TorrentGrid</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Ext.extend</span><span class="PUNC">(</span><span class="NAME">Ext.grid.GridPanel</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
94
<span class='line'> 87</span> </span><span class="WHIT"> </span><span class="NAME">constructor</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">config</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
95
<span class='line'> 88</span> </span><span class="WHIT"> </span><span class="NAME">config</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Ext.apply</span><span class="PUNC">(</span><span class="PUNC">{</span><span class="WHIT">
96
<span class='line'> 89</span> </span><span class="WHIT"> </span><span class="NAME">id</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'torrentGrid'</span><span class="PUNC">,</span><span class="WHIT">
97
<span class='line'> 90</span> </span><span class="WHIT"> </span><span class="NAME">store</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">Ext.data.SimpleStore</span><span class="PUNC">(</span><span class="PUNC">{</span><span class="WHIT">
98
<span class='line'> 91</span> </span><span class="WHIT"> </span><span class="NAME">fields</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="WHIT">
99
<span class='line'> 92</span> </span><span class="WHIT"> </span><span class="PUNC">{</span><span class="NAME">name</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'queue'</span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
100
<span class='line'> 93</span> </span><span class="WHIT"> </span><span class="PUNC">{</span><span class="NAME">name</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'name'</span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
101
<span class='line'> 94</span> </span><span class="WHIT"> </span><span class="PUNC">{</span><span class="NAME">name</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'size'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">type</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'int'</span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
102
<span class='line'> 95</span> </span><span class="WHIT"> </span><span class="PUNC">{</span><span class="NAME">name</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'state'</span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
103
<span class='line'> 96</span> </span><span class="WHIT"> </span><span class="PUNC">{</span><span class="NAME">name</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'progress'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">type</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'float'</span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
104
<span class='line'> 97</span> </span><span class="WHIT"> </span><span class="PUNC">{</span><span class="NAME">name</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'seeds'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">type</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'int'</span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
105
<span class='line'> 98</span> </span><span class="WHIT"> </span><span class="PUNC">{</span><span class="NAME">name</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'total_seeds'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">type</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'int'</span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
106
<span class='line'> 99</span> </span><span class="WHIT"> </span><span class="PUNC">{</span><span class="NAME">name</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'peers'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">type</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'int'</span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
107
<span class='line'>100</span> </span><span class="WHIT"> </span><span class="PUNC">{</span><span class="NAME">name</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'total_peers'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">type</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'int'</span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
108
<span class='line'>101</span> </span><span class="WHIT"> </span><span class="PUNC">{</span><span class="NAME">name</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'downspeed'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">type</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'int'</span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
109
<span class='line'>102</span> </span><span class="WHIT"> </span><span class="PUNC">{</span><span class="NAME">name</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'upspeed'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">type</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'int'</span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
110
<span class='line'>103</span> </span><span class="WHIT"> </span><span class="PUNC">{</span><span class="NAME">name</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'eta'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">type</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'int'</span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
111
<span class='line'>104</span> </span><span class="WHIT"> </span><span class="PUNC">{</span><span class="NAME">name</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'ratio'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">type</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'float'</span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
112
<span class='line'>105</span> </span><span class="WHIT"> </span><span class="PUNC">{</span><span class="NAME">name</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'avail'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">type</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'float'</span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
113
<span class='line'>106</span> </span><span class="WHIT"> </span><span class="PUNC">{</span><span class="NAME">name</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'added'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">type</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'int'</span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
114
<span class='line'>107</span> </span><span class="WHIT"> </span><span class="PUNC">{</span><span class="NAME">name</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'tracker'</span><span class="PUNC">}</span><span class="WHIT">
115
<span class='line'>108</span> </span><span class="WHIT"> </span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT">
116
<span class='line'>109</span> </span><span class="WHIT"> </span><span class="NAME">id</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NUMB">16</span><span class="WHIT">
117
<span class='line'>110</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT">
118
<span class='line'>111</span> </span><span class="WHIT"> </span><span class="NAME">columns</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="PUNC">{</span><span class="WHIT">
119
<span class='line'>112</span> </span><span class="WHIT"> </span><span class="NAME">id</span><span class="PUNC">:</span><span class="STRN">'queue'</span><span class="PUNC">,</span><span class="WHIT">
120
<span class='line'>113</span> </span><span class="WHIT"> </span><span class="NAME">header</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">_</span><span class="PUNC">(</span><span class="STRN">'#'</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT">
121
<span class='line'>114</span> </span><span class="NAME">width</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NUMB">30</span><span class="PUNC">,</span><span class="WHIT">
122
<span class='line'>115</span> </span><span class="NAME">sortable</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">,</span><span class="WHIT">
123
<span class='line'>116</span> </span><span class="NAME">renderer</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">queueRenderer</span><span class="PUNC">,</span><span class="WHIT">
124
<span class='line'>117</span> </span><span class="WHIT"> </span><span class="NAME">dataIndex</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'queue'</span><span class="WHIT">
125
<span class='line'>118</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
126
<span class='line'>119</span> </span><span class="WHIT"> </span><span class="NAME">id</span><span class="PUNC">:</span><span class="STRN">'name'</span><span class="PUNC">,</span><span class="WHIT">
127
<span class='line'>120</span> </span><span class="WHIT"> </span><span class="NAME">header</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">_</span><span class="PUNC">(</span><span class="STRN">'Name'</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT">
128
<span class='line'>121</span> </span><span class="WHIT"> </span><span class="NAME">width</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NUMB">150</span><span class="PUNC">,</span><span class="WHIT">
129
<span class='line'>122</span> </span><span class="WHIT"> </span><span class="NAME">sortable</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">,</span><span class="WHIT">
130
<span class='line'>123</span> </span><span class="WHIT"> </span><span class="NAME">renderer</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">torrentNameRenderer</span><span class="PUNC">,</span><span class="WHIT">
131
<span class='line'>124</span> </span><span class="WHIT"> </span><span class="NAME">dataIndex</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'name'</span><span class="WHIT">
132
<span class='line'>125</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
133
<span class='line'>126</span> </span><span class="WHIT"> </span><span class="NAME">header</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">_</span><span class="PUNC">(</span><span class="STRN">'Size'</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT">
134
<span class='line'>127</span> </span><span class="WHIT"> </span><span class="NAME">width</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NUMB">75</span><span class="PUNC">,</span><span class="WHIT">
135
<span class='line'>128</span> </span><span class="WHIT"> </span><span class="NAME">sortable</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">,</span><span class="WHIT">
136
<span class='line'>129</span> </span><span class="WHIT"> </span><span class="NAME">renderer</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">fsize</span><span class="PUNC">,</span><span class="WHIT">
137
<span class='line'>130</span> </span><span class="WHIT"> </span><span class="NAME">dataIndex</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'size'</span><span class="WHIT">
138
<span class='line'>131</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
139
<span class='line'>132</span> </span><span class="WHIT"> </span><span class="NAME">header</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">_</span><span class="PUNC">(</span><span class="STRN">'Progress'</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT">
140
<span class='line'>133</span> </span><span class="WHIT"> </span><span class="NAME">width</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NUMB">150</span><span class="PUNC">,</span><span class="WHIT">
141
<span class='line'>134</span> </span><span class="NAME">sortable</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">,</span><span class="WHIT">
142
<span class='line'>135</span> </span><span class="NAME">renderer</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">torrentProgressRenderer</span><span class="PUNC">,</span><span class="WHIT">
143
<span class='line'>136</span> </span><span class="WHIT"> </span><span class="NAME">dataIndex</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'progress'</span><span class="WHIT">
144
<span class='line'>137</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
145
<span class='line'>138</span> </span><span class="WHIT"> </span><span class="NAME">header</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">_</span><span class="PUNC">(</span><span class="STRN">'Seeders'</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT">
146
<span class='line'>139</span> </span><span class="WHIT"> </span><span class="NAME">width</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NUMB">60</span><span class="PUNC">,</span><span class="WHIT">
147
<span class='line'>140</span> </span><span class="WHIT"> </span><span class="NAME">sortable</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">,</span><span class="WHIT">
148
<span class='line'>141</span> </span><span class="WHIT"> </span><span class="NAME">renderer</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">seedsRenderer</span><span class="PUNC">,</span><span class="WHIT">
149
<span class='line'>142</span> </span><span class="WHIT"> </span><span class="NAME">dataIndex</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'seeds'</span><span class="WHIT">
150
<span class='line'>143</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
151
<span class='line'>144</span> </span><span class="WHIT"> </span><span class="NAME">header</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">_</span><span class="PUNC">(</span><span class="STRN">'Peers'</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT">
152
<span class='line'>145</span> </span><span class="WHIT"> </span><span class="NAME">width</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NUMB">60</span><span class="PUNC">,</span><span class="WHIT">
153
<span class='line'>146</span> </span><span class="WHIT"> </span><span class="NAME">sortable</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">,</span><span class="WHIT">
154
<span class='line'>147</span> </span><span class="WHIT"> </span><span class="NAME">renderer</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">peersRenderer</span><span class="PUNC">,</span><span class="WHIT">
155
<span class='line'>148</span> </span><span class="WHIT"> </span><span class="NAME">dataIndex</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'peers'</span><span class="WHIT">
156
<span class='line'>149</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
157
<span class='line'>150</span> </span><span class="WHIT"> </span><span class="NAME">header</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">_</span><span class="PUNC">(</span><span class="STRN">'Down Speed'</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT">
158
<span class='line'>151</span> </span><span class="WHIT"> </span><span class="NAME">width</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NUMB">80</span><span class="PUNC">,</span><span class="WHIT">
159
<span class='line'>152</span> </span><span class="WHIT"> </span><span class="NAME">sortable</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">,</span><span class="WHIT">
160
<span class='line'>153</span> </span><span class="WHIT"> </span><span class="NAME">renderer</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">torrentSpeedRenderer</span><span class="PUNC">,</span><span class="WHIT">
161
<span class='line'>154</span> </span><span class="WHIT"> </span><span class="NAME">dataIndex</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'downspeed'</span><span class="WHIT">
162
<span class='line'>155</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
163
<span class='line'>156</span> </span><span class="WHIT"> </span><span class="NAME">header</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">_</span><span class="PUNC">(</span><span class="STRN">'Up Speed'</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT">
164
<span class='line'>157</span> </span><span class="WHIT"> </span><span class="NAME">width</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NUMB">80</span><span class="PUNC">,</span><span class="WHIT">
165
<span class='line'>158</span> </span><span class="WHIT"> </span><span class="NAME">sortable</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">,</span><span class="WHIT">
166
<span class='line'>159</span> </span><span class="WHIT"> </span><span class="NAME">renderer</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">torrentSpeedRenderer</span><span class="PUNC">,</span><span class="WHIT">
167
<span class='line'>160</span> </span><span class="WHIT"> </span><span class="NAME">dataIndex</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'upspeed'</span><span class="WHIT">
168
<span class='line'>161</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
169
<span class='line'>162</span> </span><span class="WHIT"> </span><span class="NAME">header</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">_</span><span class="PUNC">(</span><span class="STRN">'ETA'</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT">
170
<span class='line'>163</span> </span><span class="WHIT"> </span><span class="NAME">width</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NUMB">60</span><span class="PUNC">,</span><span class="WHIT">
171
<span class='line'>164</span> </span><span class="WHIT"> </span><span class="NAME">sortable</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">,</span><span class="WHIT">
172
<span class='line'>165</span> </span><span class="WHIT"> </span><span class="NAME">renderer</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">ftime</span><span class="PUNC">,</span><span class="WHIT">
173
<span class='line'>166</span> </span><span class="WHIT"> </span><span class="NAME">dataIndex</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'eta'</span><span class="WHIT">
174
<span class='line'>167</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
175
<span class='line'>168</span> </span><span class="WHIT"> </span><span class="NAME">header</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">_</span><span class="PUNC">(</span><span class="STRN">'Ratio'</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT">
176
<span class='line'>169</span> </span><span class="WHIT"> </span><span class="NAME">width</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NUMB">60</span><span class="PUNC">,</span><span class="WHIT">
177
<span class='line'>170</span> </span><span class="WHIT"> </span><span class="NAME">sortable</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">,</span><span class="WHIT">
178
<span class='line'>171</span> </span><span class="WHIT"> </span><span class="NAME">renderer</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">availRenderer</span><span class="PUNC">,</span><span class="WHIT">
179
<span class='line'>172</span> </span><span class="WHIT"> </span><span class="NAME">dataIndex</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'ratio'</span><span class="WHIT">
180
<span class='line'>173</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
181
<span class='line'>174</span> </span><span class="WHIT"> </span><span class="NAME">header</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">_</span><span class="PUNC">(</span><span class="STRN">'Avail'</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT">
182
<span class='line'>175</span> </span><span class="WHIT"> </span><span class="NAME">width</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NUMB">60</span><span class="PUNC">,</span><span class="WHIT">
183
<span class='line'>176</span> </span><span class="WHIT"> </span><span class="NAME">sortable</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">,</span><span class="WHIT">
184
<span class='line'>177</span> </span><span class="WHIT"> </span><span class="NAME">renderer</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">availRenderer</span><span class="PUNC">,</span><span class="WHIT">
185
<span class='line'>178</span> </span><span class="WHIT"> </span><span class="NAME">dataIndex</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'avail'</span><span class="WHIT">
186
<span class='line'>179</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
187
<span class='line'>180</span> </span><span class="WHIT"> </span><span class="NAME">header</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">_</span><span class="PUNC">(</span><span class="STRN">'Added'</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT">
188
<span class='line'>181</span> </span><span class="WHIT"> </span><span class="NAME">width</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NUMB">80</span><span class="PUNC">,</span><span class="WHIT">
189
<span class='line'>182</span> </span><span class="WHIT"> </span><span class="NAME">sortable</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">,</span><span class="WHIT">
190
<span class='line'>183</span> </span><span class="WHIT"> </span><span class="NAME">renderer</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">fdate</span><span class="PUNC">,</span><span class="WHIT">
191
<span class='line'>184</span> </span><span class="WHIT"> </span><span class="NAME">dataIndex</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'added'</span><span class="WHIT">
192
<span class='line'>185</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
193
<span class='line'>186</span> </span><span class="WHIT"> </span><span class="NAME">header</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">_</span><span class="PUNC">(</span><span class="STRN">'Tracker'</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT">
194
<span class='line'>187</span> </span><span class="WHIT"> </span><span class="NAME">width</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NUMB">120</span><span class="PUNC">,</span><span class="WHIT">
195
<span class='line'>188</span> </span><span class="WHIT"> </span><span class="NAME">sortable</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">,</span><span class="WHIT">
196
<span class='line'>189</span> </span><span class="WHIT"> </span><span class="NAME">renderer</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">trackerRenderer</span><span class="PUNC">,</span><span class="WHIT">
197
<span class='line'>190</span> </span><span class="WHIT"> </span><span class="NAME">dataIndex</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'tracker'</span><span class="WHIT">
198
<span class='line'>191</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT">
199
<span class='line'>192</span> </span><span class="WHIT"> </span><span class="NAME">region</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'center'</span><span class="PUNC">,</span><span class="WHIT">
200
<span class='line'>193</span> </span><span class="WHIT"> </span><span class="NAME">cls</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'deluge-torrents'</span><span class="PUNC">,</span><span class="WHIT">
201
<span class='line'>194</span> </span><span class="WHIT"> </span><span class="NAME">stripeRows</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">,</span><span class="WHIT">
202
<span class='line'>195</span> </span><span class="WHIT"> </span><span class="NAME">autoExpandColumn</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'name'</span><span class="PUNC">,</span><span class="WHIT">
203
<span class='line'>196</span> </span><span class="WHIT"> </span><span class="NAME">deferredRender</span><span class="PUNC">:</span><span class="KEYW">false</span><span class="PUNC">,</span><span class="WHIT">
204
<span class='line'>197</span> </span><span class="WHIT"> </span><span class="NAME">autoScroll</span><span class="PUNC">:</span><span class="KEYW">true</span><span class="PUNC">,</span><span class="WHIT">
205
<span class='line'>198</span> </span><span class="WHIT"> </span><span class="NAME">margins</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'5 5 0 0'</span><span class="WHIT">
206
<span class='line'>199</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">config</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
207
<span class='line'>200</span> </span><span class="WHIT"> </span><span class="NAME">Ext.deluge.TorrentGrid.superclass.constructor.call</span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">config</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
208
<span class='line'>201</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
209
<span class='line'>202</span>
210
<span class='line'>203</span> </span><span class="WHIT"> </span><span class="NAME">initComponent</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
211
<span class='line'>204</span> </span><span class="WHIT"> </span><span class="NAME">Ext.deluge.TorrentGrid.superclass.initComponent.call</span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
212
<span class='line'>205</span> </span><span class="WHIT"> </span><span class="NAME">Deluge.Events.on</span><span class="PUNC">(</span><span class="STRN">'torrentRemoved'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">this.onTorrentRemoved</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
213
<span class='line'>206</span> </span><span class="WHIT"> </span><span class="NAME">this.on</span><span class="PUNC">(</span><span class="STRN">'rowcontextmenu'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">grid</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">rowIndex</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">e</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
214
<span class='line'>207</span> </span><span class="WHIT"> </span><span class="NAME">e.stopEvent</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
215
<span class='line'>208</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">selection</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">grid.getSelectionModel</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
216
<span class='line'>209</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">selection.hasSelection</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
217
<span class='line'>210</span> </span><span class="WHIT"> </span><span class="NAME">selection.selectRow</span><span class="PUNC">(</span><span class="NAME">rowIndex</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
218
<span class='line'>211</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
219
<span class='line'>212</span> </span><span class="WHIT"> </span><span class="NAME">Deluge.Menus.Torrent.showAt</span><span class="PUNC">(</span><span class="NAME">e.getPoint</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
220
<span class='line'>213</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
221
<span class='line'>214</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
222
<span class='line'>215</span> </span><span class="WHIT">
223
<span class='line'>216</span> </span><span class="COMM">/**
224
<span class='line'>217</span> * Returns the record representing the torrent at the specified index.
225
<span class='line'>218</span> *
226
<span class='line'>219</span> * @param {int} The row index of the torrent you wish to retrieve.
227
<span class='line'>220</span> * @return {Ext.data.Record} The record representing the torrent.
228
<span class='line'>221</span> */</span><span class="WHIT">
229
<span class='line'>222</span> </span><span class="WHIT"> </span><span class="NAME">getTorrent</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">rowIndex</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
230
<span class='line'>223</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.getStore</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">getAt</span><span class="PUNC">(</span><span class="NAME">rowIndex</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
231
<span class='line'>224</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
232
<span class='line'>225</span> </span><span class="WHIT">
233
<span class='line'>226</span> </span><span class="NAME">getSelected</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
234
<span class='line'>227</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.getSelectionModel</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">getSelected</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
235
<span class='line'>228</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
236
<span class='line'>229</span> </span><span class="WHIT">
237
<span class='line'>230</span> </span><span class="NAME">getSelections</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
238
<span class='line'>231</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.getSelectionModel</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">getSelections</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
239
<span class='line'>232</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
240
<span class='line'>233</span> </span><span class="WHIT">
241
<span class='line'>234</span> </span><span class="NAME">update</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">torrents</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
242
<span class='line'>235</span> </span><span class="WHIT"> </span><span class="COMM">//var torrents = [];</span><span class="WHIT">
243
<span class='line'>236</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">store</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.getStore</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
244
<span class='line'>237</span> </span><span class="WHIT"> </span><span class="KEYW">for</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">torrentId</span><span class="WHIT"> </span><span class="KEYW">in</span><span class="WHIT"> </span><span class="NAME">torrents</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
245
<span class='line'>238</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">record</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">store.getById</span><span class="PUNC">(</span><span class="NAME">torrentId</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
246
<span class='line'>239</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">torrent</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">torrents</span><span class="PUNC">[</span><span class="NAME">torrentId</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
247
<span class='line'>240</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">record</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
248
<span class='line'>241</span> </span><span class="WHIT"> </span><span class="COMM">// We need to create a new record</span><span class="WHIT">
249
<span class='line'>242</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">data</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="WHIT">
250
<span class='line'>243</span> </span><span class="WHIT"> </span><span class="NAME">torrent.queue</span><span class="PUNC">,</span><span class="WHIT">
251
<span class='line'>244</span> </span><span class="WHIT"> </span><span class="NAME">torrent.name</span><span class="PUNC">,</span><span class="WHIT">
252
<span class='line'>245</span> </span><span class="WHIT"> </span><span class="NAME">torrent.total_size</span><span class="PUNC">,</span><span class="WHIT">
253
<span class='line'>246</span> </span><span class="WHIT"> </span><span class="NAME">torrent.state</span><span class="PUNC">,</span><span class="WHIT">
254
<span class='line'>247</span> </span><span class="WHIT"> </span><span class="NAME">torrent.progress</span><span class="PUNC">,</span><span class="WHIT">
255
<span class='line'>248</span> </span><span class="WHIT"> </span><span class="NAME">torrent.num_seeds</span><span class="PUNC">,</span><span class="WHIT">
256
<span class='line'>249</span> </span><span class="WHIT"> </span><span class="NAME">torrent.total_seeds</span><span class="PUNC">,</span><span class="WHIT">
257
<span class='line'>250</span> </span><span class="WHIT"> </span><span class="NAME">torrent.num_peers</span><span class="PUNC">,</span><span class="WHIT">
258
<span class='line'>251</span> </span><span class="WHIT"> </span><span class="NAME">torrent.total_peers</span><span class="PUNC">,</span><span class="WHIT">
259
<span class='line'>252</span> </span><span class="WHIT"> </span><span class="NAME">torrent.download_payload_rate</span><span class="PUNC">,</span><span class="WHIT">
260
<span class='line'>253</span> </span><span class="WHIT"> </span><span class="NAME">torrent.upload_payload_rate</span><span class="PUNC">,</span><span class="WHIT">
261
<span class='line'>254</span> </span><span class="WHIT"> </span><span class="NAME">torrent.eta</span><span class="PUNC">,</span><span class="WHIT">
262
<span class='line'>255</span> </span><span class="WHIT"> </span><span class="NAME">torrent.ratio</span><span class="PUNC">,</span><span class="WHIT">
263
<span class='line'>256</span> </span><span class="WHIT"> </span><span class="NAME">torrent.distributed_copies</span><span class="PUNC">,</span><span class="WHIT">
264
<span class='line'>257</span> </span><span class="WHIT"> </span><span class="NAME">torrent.time_added</span><span class="PUNC">,</span><span class="WHIT">
265
<span class='line'>258</span> </span><span class="WHIT"> </span><span class="NAME">torrent.tracker_host</span><span class="PUNC">,</span><span class="WHIT">
266
<span class='line'>259</span> </span><span class="WHIT"> </span><span class="NAME">torrentId</span><span class="WHIT">
267
<span class='line'>260</span> </span><span class="WHIT"> </span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
268
<span class='line'>261</span> </span><span class="WHIT"> </span><span class="NAME">store.loadData</span><span class="PUNC">(</span><span class="PUNC">[</span><span class="NAME">data</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
269
<span class='line'>262</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
270
<span class='line'>263</span> </span><span class="WHIT"> </span><span class="COMM">// We just need to do an update</span><span class="WHIT">
271
<span class='line'>264</span> </span><span class="WHIT"> </span><span class="NAME">record.set</span><span class="PUNC">(</span><span class="STRN">'queue'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">torrent.queue</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
272
<span class='line'>265</span> </span><span class="WHIT"> </span><span class="NAME">record.set</span><span class="PUNC">(</span><span class="STRN">'name'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">torrent.name</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
273
<span class='line'>266</span> </span><span class="WHIT"> </span><span class="NAME">record.set</span><span class="PUNC">(</span><span class="STRN">'size'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">torrent.total_size</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
274
<span class='line'>267</span> </span><span class="WHIT"> </span><span class="NAME">record.set</span><span class="PUNC">(</span><span class="STRN">'state'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">torrent.state</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
275
<span class='line'>268</span> </span><span class="WHIT"> </span><span class="NAME">record.set</span><span class="PUNC">(</span><span class="STRN">'progress'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">torrent.progress</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
276
<span class='line'>269</span> </span><span class="WHIT"> </span><span class="NAME">record.set</span><span class="PUNC">(</span><span class="STRN">'seeds'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">torrent.num_seeds</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
277
<span class='line'>270</span> </span><span class="WHIT"> </span><span class="NAME">record.set</span><span class="PUNC">(</span><span class="STRN">'total_seeds'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">torrent.total_seeds</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
278
<span class='line'>271</span> </span><span class="WHIT"> </span><span class="NAME">record.set</span><span class="PUNC">(</span><span class="STRN">'peers'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">torrent.num_peers</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
279
<span class='line'>272</span> </span><span class="WHIT"> </span><span class="NAME">record.set</span><span class="PUNC">(</span><span class="STRN">'total_peers'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">torrent.total_peers</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
280
<span class='line'>273</span> </span><span class="WHIT"> </span><span class="NAME">record.set</span><span class="PUNC">(</span><span class="STRN">'downspeed'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">torrent.download_payload_rate</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
281
<span class='line'>274</span> </span><span class="WHIT"> </span><span class="NAME">record.set</span><span class="PUNC">(</span><span class="STRN">'upspeed'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">torrent.upload_payload_rate</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
282
<span class='line'>275</span> </span><span class="WHIT"> </span><span class="NAME">record.set</span><span class="PUNC">(</span><span class="STRN">'eta'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">torrent.eta</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
283
<span class='line'>276</span> </span><span class="WHIT"> </span><span class="NAME">record.set</span><span class="PUNC">(</span><span class="STRN">'ratio'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">torrent.ratio</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
284
<span class='line'>277</span> </span><span class="WHIT"> </span><span class="NAME">record.set</span><span class="PUNC">(</span><span class="STRN">'avail'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">torrent.distributed_copies</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
285
<span class='line'>278</span> </span><span class="WHIT"> </span><span class="NAME">record.set</span><span class="PUNC">(</span><span class="STRN">'added'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">torrent.time_added</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
286
<span class='line'>279</span> </span><span class="WHIT"> </span><span class="NAME">record.set</span><span class="PUNC">(</span><span class="STRN">'tracker'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">torrent.tracker_host</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
287
<span class='line'>280</span> </span><span class="WHIT"> </span><span class="NAME">record.commit</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
288
<span class='line'>281</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
289
<span class='line'>282</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
290
<span class='line'>283</span> </span><span class="WHIT">
291
<span class='line'>284</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">torrentIds</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Ext.keys</span><span class="PUNC">(</span><span class="NAME">torrents</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
292
<span class='line'>285</span> </span><span class="WHIT"> </span><span class="NAME">store.each</span><span class="PUNC">(</span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">record</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
293
<span class='line'>286</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">torrentIds.indexOf</span><span class="PUNC">(</span><span class="NAME">record.id</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="NUMB">1</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
294
<span class='line'>287</span> </span><span class="WHIT"> </span><span class="COMM">// Torrent is no longer in the grid so we must remove it.</span><span class="WHIT">
295
<span class='line'>288</span> </span><span class="WHIT"> </span><span class="NAME">store.remove</span><span class="PUNC">(</span><span class="NAME">record</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
296
<span class='line'>289</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
297
<span class='line'>290</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
298
<span class='line'>291</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
299
<span class='line'>292</span> </span><span class="WHIT">
300
<span class='line'>293</span> </span><span class="COMM">// private</span><span class="WHIT">
301
<span class='line'>294</span> </span><span class="WHIT"> </span><span class="NAME">onTorrentRemoved</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">torrentIds</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
302
<span class='line'>295</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">selModel</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.getSelectionModel</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
303
<span class='line'>296</span> </span><span class="WHIT"> </span><span class="NAME">Ext.each</span><span class="PUNC">(</span><span class="NAME">torrentIds</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">torrentId</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
304
<span class='line'>297</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">record</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.getStore</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">getById</span><span class="PUNC">(</span><span class="NAME">torrentId</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
305
<span class='line'>298</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">selModel.isSelected</span><span class="PUNC">(</span><span class="NAME">record</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
306
<span class='line'>299</span> </span><span class="WHIT"> </span><span class="NAME">selModel.deselectRow</span><span class="PUNC">(</span><span class="NAME">this.getStore</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">indexOf</span><span class="PUNC">(</span><span class="NAME">record</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
307
<span class='line'>300</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
308
<span class='line'>301</span> </span><span class="WHIT"> </span><span class="NAME">this.getStore</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">remove</span><span class="PUNC">(</span><span class="NAME">record</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
309
<span class='line'>302</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
310
<span class='line'>303</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
311
<span class='line'>304</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
312
<span class='line'>305</span> </span><span class="WHIT"> </span><span class="NAME">Deluge.Torrents</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">Ext.deluge.TorrentGrid</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
313
<span class='line'>306</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span></pre></body></html>
b'\\ No newline at end of file'