summaryrefslogtreecommitdiffstats
path: root/src/fringlib/fringui.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/fringlib/fringui.py')
-rw-r--r--src/fringlib/fringui.py25
1 files changed, 15 insertions, 10 deletions
diff --git a/src/fringlib/fringui.py b/src/fringlib/fringui.py
index 71b2d67..5236af6 100644
--- a/src/fringlib/fringui.py
+++ b/src/fringlib/fringui.py
@@ -3,7 +3,7 @@ import cairo
import sys
import os
-from fringwalker import FringWalker, print_tree
+from fringwalker import FringWalker
from fringrenderer import FringRenderer
from fringutil import *
@@ -155,7 +155,7 @@ class UI( gtk.Window ):
self.eventbox.connect("size-allocate",self.__on_resize)
self.connect("delete_event", self.close)
- self.__show_busy_cursor(1)
+
def open_folder(self,path):
print "open",path
@@ -235,6 +235,7 @@ class UI( gtk.Window ):
self.walker.stop()
if path is None: return
self.walker.walk(path);
+ self.__show_busy_cursor(1)
def __selectfolder(self,widget):
""" Open a dialog to select a folder """
@@ -250,19 +251,19 @@ class UI( gtk.Window ):
self.__set_path(self.path)
def __move_event(self, widget, event):
-
- if self.busy_cursor > 0:
- return
f = self.renderer.get_hotspot_at(event.x, event.y)
if f is None:
self.label.set_text("Ready.")
else:
self.label.set_markup("Path <b>%s</b>, %s, %0.1f%%" % (f.path, pretty_size(f.size), f.value*100))
-
+
if f is None or not f.is_dir:
- self.eventbox.window.set_cursor(None)
+ if self.busy_cursor > 0: cursor = gtk.gdk.Cursor(gtk.gdk.WATCH)
+ else: cursor = None
+ self.eventbox.window.set_cursor(cursor)
else:
+ # always display a hand when hovering a link
self.eventbox.window.set_cursor(gtk.gdk.Cursor(gtk.gdk.HAND1))
def __click_event(self, widget, event):
@@ -285,11 +286,14 @@ class UI( gtk.Window ):
self.image.set_from_pixmap(self.pixmap,None)
self.ctx = self.pixmap.cairo_create()
self.renderer.prepare_layouts(self.ctx)
+ self.ctx.rectangle(0,0,self.width,self.height)
+ self.ctx.set_source_rgb(*self.backgroundColour)
+ self.ctx.fill()
def __list_changed(self,widget,data):
- #print_tree(data)
self.data = data
self.redraw()
+ #print data.name
def __walker_finished(self, widget, data):
self.__list_changed(widget, data)
@@ -303,13 +307,14 @@ class UI( gtk.Window ):
def __show_busy_cursor(self, value):
if self.busy_cursor <= 0 and self.busy_cursor+value >= 0:
- self.window.set_cursor(gtk.gdk.Cursor(gtk.gdk.WATCH))
+ if self.window: self.window.set_cursor(gtk.gdk.Cursor(gtk.gdk.WATCH))
self.label.set_markup("Busy...")
elif self.busy_cursor > 0 and self.busy_cursor+value <= 0:
- self.window.set_cursor(None)
+ if self.window: self.window.set_cursor(None)
self.label.set_text("Ready.")
self.busy_cursor += value
+ #print "busy state:",self.busy_cursor