diff options
author | Frederic Back <fredericback@gmail.com> | 2006-10-06 09:57:24 +0000 |
---|---|---|
committer | Frederic Back <fredericback@gmail.com> | 2006-10-06 09:57:24 +0000 |
commit | 6318dc2b0a054bc428265cf771e6e5dbc040308c (patch) | |
tree | 5c8ef0902d8e6cda1c32ec655ed25575f7572aec /src/fringlib/fringrenderer.py | |
parent | 5df72aab9a1064a1b008c58d5adaf11abe85fcbb (diff) |
* Display state every 250ms
* Changed parent button size to SMALL_TOOLBAR
* Added progress bar
* The progress signal now also emits the path getting parsed
* Path in status bar is now relative to current path (shorter)
git-svn-id: file:///home/lennart/svn/public/fring/trunk@66 d0d2c35f-0a1e-0410-abeb-dabff30a67ee
Diffstat (limited to 'src/fringlib/fringrenderer.py')
-rw-r--r-- | src/fringlib/fringrenderer.py | 22 |
1 files changed, 14 insertions, 8 deletions
diff --git a/src/fringlib/fringrenderer.py b/src/fringlib/fringrenderer.py index 63b719b..2c6825b 100644 --- a/src/fringlib/fringrenderer.py +++ b/src/fringlib/fringrenderer.py @@ -75,12 +75,12 @@ class FringRenderer: ctx.move_to(CENTERX, CENTERY) n = len(data.children) - i = 0 accumulated = 0 last = start_angle - for entry in data.children: + for i in range(len(data.children)): + entry = data.children[i] hasContents = entry.has_children() @@ -88,14 +88,16 @@ class FringRenderer: accumulated += entry.size if data.size == 0: continue - end = start_angle+(end_angle - start_angle)*1.0*accumulated/data.size - + end = start_angle+(end_angle - start_angle)*1.0*accumulated/data.size + if end-start >= .005: p = previouspath+os.sep+entry.name self.lookup_data[ring].append( Segment(hasContents , p, entry, start, end) ) - color = self._choose_color(start_hue + (end_hue-start_hue)*1.0*i/n, ring) + #c = start_hue + (end_hue-start_hue)*1.0*i/n # old implementation + c = start_hue + (end_hue-start_hue)*start + color = self._choose_color(c, ring) r = self.INNER_RADIUS + ring * (self.RING_RADIUS + self.RING_SPACE) ctx.move_to(CENTERX+r*cos(start*2*pi), CENTERY+r*sin(start*2*pi)) @@ -112,8 +114,12 @@ class FringRenderer: if hasContents and ring+1 < self.RINGS_MAX: self.draw_segment(ctx, ring+1, start, end, - start_hue + (end_hue-start_hue)*1.0*i/n, - start_hue + (end_hue-start_hue)*1.0*(i+1)/n, entry, + #start_hue + (end_hue-start_hue)*1.0*i/n, + #start_hue + (end_hue-start_hue)*1.0*(i+1)/n, entry, + + start_hue + (end_hue-start_hue)*start, + start_hue + (end_hue-start_hue)*end, + entry, previouspath+os.sep+entry.name) r += self.RING_RADIUS/2 @@ -192,7 +198,7 @@ class FringRenderer: self._draw_centered_text(ctx, "%.0f%%" %percent) last = end - i += 1 + if ring == 0: ctx.set_source_rgb(.3,.3,.3) |