- fix deps
[packages/rtorrent.git] / rtorrent-colors.patch
1 --- rtorrent-0.6.1/src/display/canvas.cc.orig   2006-08-11 12:45:46.000000000 +0200
2 +++ rtorrent-0.6.1/src/display/canvas.cc        2006-08-20 16:33:39.528724000 +0200
3 @@ -116,6 +116,7 @@ Canvas::initialize() {
4      nodelay(stdscr, TRUE);
5      keypad(stdscr, TRUE);
6      curs_set(0);
7 +    start_color();
8    }
9  }
10  
11 --- rtorrent-0.6.1/src/display/window_download_statusbar.cc.orig        2006-08-04 23:53:27.000000000 +0200
12 +++ rtorrent-0.6.1/src/display/window_download_statusbar.cc     2006-08-20 16:36:24.163013000 +0200
13 @@ -86,6 +86,11 @@
14                    m_download->tracker_list()->is_busy() ? 'C' : ' ',
15                    (int)(m_download->download()->tracker_list().timeout() / 1000000),
16                    buffer);
17 +
18 +  m_canvas->set_attr(0, 0, m_canvas->get_screen_width(), A_REVERSE, 0);
19 +  m_canvas->set_attr(0, 1, m_canvas->get_screen_width(), A_REVERSE, 0);
20 +  m_canvas->set_attr(0, 2, m_canvas->get_screen_width(), A_REVERSE, 0);
21 +
22  }
23  
24  }
25 --- rtorrent-0.6.1/src/display/window_statusbar.cc.orig 2006-07-27 21:44:30.000000000 +0200
26 +++ rtorrent-0.6.1/src/display/window_statusbar.cc      2006-08-20 16:38:24.102508750 +0200
27 @@ -97,6 +97,7 @@
28    if (last > buffer) {
29      position = print_status_extra(buffer, last, control);
30      m_canvas->print(m_canvas->width() - (position - buffer), 0, "%s", buffer);
31 +    m_canvas->set_attr(0, 0, m_canvas->get_screen_width(), A_REVERSE, 0);
32    }
33  
34    m_lastTick = control->tick();
35 --- rtorrent-0.6.1/src/display/window_title.cc.orig     2006-08-04 15:52:16.000000000 +0200
36 +++ rtorrent-0.6.1/src/display/window_title.cc  2006-08-20 16:39:52.604039750 +0200
37 @@ -48,6 +48,7 @@
38  
39    m_canvas->print(std::max(0, ((int)m_canvas->width() - (int)m_title.size()) / 2 - 4), 0,
40                    "*** %s ***", m_title.c_str());
41 +  m_canvas->set_attr(0, 0, m_canvas->get_screen_width(), A_REVERSE, 0);
42  }
43  
44  }
45 --- rtorrent-0.6.1/src/display/window_download_list.cc.orig     2006-08-04 15:38:24.000000000 +0200
46 +++ rtorrent-0.6.1/src/display/window_download_list.cc  2006-08-20 16:48:34.368648000 +0200
47 @@ -38,6 +38,8 @@
48  
49  #include <rak/algorithm.h>
50  
51 +#include <torrent/rate.h>
52 +
53  #include "core/download.h"
54  #include "core/view.h"
55  
56 @@ -89,20 +91,47 @@
57    if (range.second != m_view->end_visible())
58      ++range.second;
59  
60 +  init_pair(1, COLOR_GREEN, COLOR_BLACK);
61 +  init_pair(2, COLOR_YELLOW, COLOR_BLACK);
62 +  init_pair(3, COLOR_RED, COLOR_BLACK);
63 +  init_pair(4, COLOR_BLUE, COLOR_BLACK);
64 +
65    int pos = 1;
66  
67    while (range.first != range.second) {
68      char buffer[m_canvas->width() + 1];
69      char* last = buffer + m_canvas->width() - 2 + 1;
70 +    int col = 0;
71 +    double ratio = 0;
72 +    core::Download* d = *range.first;
73 +
74 +    if (d->download()->bytes_done())
75 +      ratio = (double)d->info()->up_rate()->total() / (double)d->download()->bytes_done();
76 +    if (ratio >= 1.0)
77 +      col = 1;
78 +    else if (ratio >= 0.5)
79 +      col = 2;
80 +    else
81 +      col = 3;
82 +
83 +    print_download_title(buffer, last, *range.first, ratio);
84 +    m_canvas->print(0, pos, "%c %s", range.first == m_view->focus() ? '*' : ' ', buffer);
85 +    if (d->info()->is_open())
86 +      m_canvas->set_attr(0, pos, m_canvas->get_screen_width(), (d->is_done())?0:A_BOLD,
87 +        (d->is_done())?col:4);
88 +    pos++;
89  
90 -    print_download_title(buffer, last, *range.first);
91 -    m_canvas->print(0, pos++, "%c %s", range.first == m_view->focus() ? '*' : ' ', buffer);
92 -    
93      print_download_info(buffer, last, *range.first);
94 -    m_canvas->print(0, pos++, "%c %s", range.first == m_view->focus() ? '*' : ' ', buffer);
95 +    m_canvas->print(0, pos, "%c %s", range.first == m_view->focus() ? '*' : ' ', buffer);
96 +    if (!d->info()->is_active())
97 +      m_canvas->set_attr(0, pos, m_canvas->get_screen_width(), A_BOLD, 8);
98 +    pos++;
99  
100      print_download_status(buffer, last, *range.first);
101 -    m_canvas->print(0, pos++, "%c %s", range.first == m_view->focus() ? '*' : ' ', buffer);
102 +    m_canvas->print(0, pos, "%c %s", range.first == m_view->focus() ? '*' : ' ', buffer);
103 +    if (!d->info()->is_active())
104 +      m_canvas->set_attr(0, pos, m_canvas->get_screen_width(), A_BOLD, 8);
105 +    pos++;
106  
107      ++range.first;
108    }    
109 --- rtorrent-0.7.1/src/display/utils.h.orig     2006-11-16 17:25:50.000000000 +0100
110 +++ rtorrent-0.7.1/src/display/utils.h  2007-01-13 09:34:22.563730786 +0100
111 @@ -64,7 +64,7 @@
112  char*       print_ddhhmm(char* first, char* last, time_t t);
113  char*       print_ddmmyyyy(char* first, char* last, time_t t);
114  
115 -char*       print_download_title(char* first, char* last, core::Download* d);
116 +char*       print_download_title(char* first, char* last, core::Download* d, double ratio);
117  char*       print_download_info(char* first, char* last, core::Download* d);
118  char*       print_download_status(char* first, char* last, core::Download* d);
119  char*       print_download_time_left(char* first, char* last, core::Download* d);
120 --- rtorrent-0.7.2/src/display/utils.cc.orig    2007-01-20 19:42:22.000000000 +0100
121 +++ rtorrent-0.7.2/src/display/utils.cc 2007-01-24 20:56:54.529507176 +0100
122 @@ -123,8 +123,8 @@
123  }
124  
125  char*
126 -print_download_title(char* first, char* last, core::Download* d) {
127 -  return print_buffer(first, last, " %s", d->info()->name().c_str());
128 +print_download_title(char* first, char* last, core::Download* d, double ratio) {
129 +  return print_buffer(first, last, " %-82s  R: %5.2f", d->info()->name().c_str(), ratio);
130  }
131  
132  char*
133 @@ -158,10 +158,9 @@
134      first = print_buffer(first, last, "                ");
135    }
136  
137 -  first = print_buffer(first, last, " [%c%c R: %4.2f",
138 +  first = print_buffer(first, last, " [%c%c",
139                         rpc::call_command_string("d.tied_to_file", rpc::make_target(d)).empty() ? ' ' : 'T',
140 -                       rpc::call_command_value("d.ignore_commands", rpc::make_target(d)) == 0 ? ' ' : 'I',
141 -                       (double)rpc::call_command_value("d.ratio", rpc::make_target(d)) / 1000.0);
142 +                       rpc::call_command_value("d.ignore_commands", rpc::make_target(d)) == 0 ? ' ' : 'I');
143  
144    if (d->priority() != 2)
145      first = print_buffer(first, last, " %s]", rpc::call_command_string("d.get_priority_str", rpc::make_target(d)).c_str());
146 @@ -231,17 +230,18 @@
147  print_client_version(char* first, char* last, const torrent::ClientInfo& clientInfo) {
148    switch (torrent::ClientInfo::version_size(clientInfo.type())) {
149    case 4:
150 -    return print_buffer(first, last, "%s %hhu.%hhu.%hhu.%hhu",
151 +    return print_buffer(first, last, "%-12s %hhu.%hhu.%hhu.%hhu",
152                          clientInfo.short_description(),
153                          clientInfo.version()[0], clientInfo.version()[1],
154                          clientInfo.version()[2], clientInfo.version()[3]);
155    case 3:
156 -    return print_buffer(first, last, "%s %hhu.%hhu.%hhu",
157 +    return print_buffer(first, last, "%-12s %hhu.%hhu.%hhu",
158                          clientInfo.short_description(),
159                          clientInfo.version()[0], clientInfo.version()[1],
160                          clientInfo.version()[2]);
161    default:
162 -    return print_buffer(first, last, "%s", clientInfo.short_description());
163 +    return print_buffer(first, last, "%s",
164 +                        std::strncmp(clientInfo.short_description(), "Unknown", 7) ? clientInfo.short_description() : " ");
165    }
166  }
167  
168 --- rtorrent-0.7.1/src/display/window_peer_list.cc.orig 2006-12-02 09:28:26.000000000 +0100
169 +++ rtorrent-0.7.1/src/display/window_peer_list.cc      2007-01-13 10:03:47.977730506 +0100
170 @@ -77,7 +77,7 @@
171    m_canvas->print(x, y, "DONE");    x += 6;
172    m_canvas->print(x, y, "REQ");     x += 6;
173    m_canvas->print(x, y, "SNUB");    x += 6;
174 -  m_canvas->print(x, y, "FAILED");
175 +  m_canvas->print(x, y, "FAIL");
176  
177    ++y;
178  
179 @@ -137,7 +137,7 @@
180      if (p.failed_counter() != 0)
181        m_canvas->print(x, y, "%u", p.failed_counter());
182  
183 -    x += 7;
184 +    x += 5;
185  
186      char buf[128];
187      print_client_version(buf, buf + 128, p.info()->client_info());