summary refs log tree commit diff stats
path: root/ranger/gui/displayable.py
diff options
context:
space:
mode:
authorhut <hut@lavabit.com>2009-12-14 13:32:27 +0100
committerhut <hut@lavabit.com>2009-12-14 13:32:27 +0100
commitd621586ed4b11b059d0de42c9af340bc94db9944 (patch)
tree0587936d73fbc02a8f22e53b0b018acd363e1913 /ranger/gui/displayable.py
parent733dbb9dbb608e8a0dec0e836c07b1dd7feb4d17 (diff)
downloadranger-d621586ed4b11b059d0de42c9af340bc94db9944.tar.gz
"poke" widgets, expand last column if there's no preview
Diffstat (limited to 'ranger/gui/displayable.py')
-rw-r--r--ranger/gui/displayable.py17
1 files changed, 13 insertions, 4 deletions
diff --git a/ranger/gui/displayable.py b/ranger/gui/displayable.py
index ef0260dc..495c78c7 100644
--- a/ranger/gui/displayable.py
+++ b/ranger/gui/displayable.py
@@ -77,10 +77,14 @@ Override this!"""
 		"""Called when a key is pressed and self.focused is True.
 Override this!"""
 		pass
+
+	def poke(self):
+		"""Called before drawing, even if invisible"""
 	
 	def draw(self):
-		"""Draw displayable. Called on every main iteration.
-Override this!"""
+		"""Draw displayable.  Called on every main iteration if the object
+is visible.  Override this!
+"""
 		pass
 
 	def finalize(self):
@@ -129,14 +133,19 @@ class DisplayableContainer(Displayable):
 		Displayable.__init__(self, win)
 		self.container = []
 
-	def draw(self):
+	def poke(self):
 		"""Recursively called on objects in container"""
 		for displayable in self.container:
+			displayable.poke()
+
+	def draw(self):
+		"""Recursively called on visible objects in container"""
+		for displayable in self.container:
 			if displayable.visible:
 				displayable.draw()
 
 	def finalize(self):
-		"""Recursively called on objects in container"""
+		"""Recursively called on visible objects in container"""
 		for displayable in self.container:
 			if displayable.visible:
 				displayable.finalize()