summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorhut <hut@lavabit.com>2010-02-09 14:14:04 +0100
committerhut <hut@lavabit.com>2010-02-09 14:28:47 +0100
commitaad614556f7f9ed40d9fe60fac0fb382eeeb85fb (patch)
treeeeedf22918b9c275c0ad532c9e90d6e56884649c
parentab1a2682540aff4642886873c225b1f17635ef94 (diff)
downloadranger-aad614556f7f9ed40d9fe60fac0fb382eeeb85fb.tar.gz
implemented #61: show sum of size of marked files
-rw-r--r--TODO4
-rw-r--r--ranger/gui/widgets/statusbar.py16
2 files changed, 14 insertions, 6 deletions
diff --git a/TODO b/TODO
index 55b31290..3366ca4e 100644
--- a/TODO
+++ b/TODO
@@ -42,7 +42,7 @@ General
    ( ) #56  10/01/30  warn before deleting mount points
    ( ) #57  10/01/30  warn before deleting unseen marked files
    (X) #58  10/02/04  change the title of the terminal
-   ( ) #61  10/02/09  show sum of size of marked files
+   (X) #61  10/02/09  show sum of size of marked files
 
 
 Bugs
@@ -78,5 +78,5 @@ Goals for next minor version
 
    (X) #54  10/01/23  max_dirsize_for_autopreview not working
    ( ) #55  10/01/24  allow change of filename when pasting
-   ( ) #61  10/02/09  show sum of size of marked files
+   (X) #61  10/02/09  show sum of size of marked files
 
diff --git a/ranger/gui/widgets/statusbar.py b/ranger/gui/widgets/statusbar.py
index a2b8dbd6..3aab5e2f 100644
--- a/ranger/gui/widgets/statusbar.py
+++ b/ranger/gui/widgets/statusbar.py
@@ -202,10 +202,18 @@ class StatusBar(Widget):
 		max_pos = len(target) - self.column.hei
 		base = 'scroll'
 
-		right.add(human_readable(target.disk_usage, seperator=''))
-		right.add(", ", "space")
-		right.add(human_readable(self.env.get_free_space(target.mount_path),
-			seperator=''))
+		if target.marked_items:
+			if len(target.marked_items) == len(target.files):
+				right.add(human_readable(target.disk_usage, seperator=''))
+			else:
+				right.add(human_readable(sum(f.size \
+					for f in target.marked_items \
+					if f.is_file), seperator=''))
+		else:
+			right.add(human_readable(target.disk_usage, seperator=''))
+			right.add(", ", "space")
+			right.add(human_readable(self.env.get_free_space( \
+					target.mount_path), seperator=''))
 		right.add("  ", "space")
 
 		if target.marked_items:
f='#n4'>4 5 6 7 8 9 10 11 12 13 14 15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145