Author: eallen
Date: 2008-12-03 17:10:29 -0500 (Wed, 03 Dec 2008)
New Revision: 2921
Modified:
mgmt/trunk/cumin/python/cumin/stat.py
Log:
Don't display slot vis when there are no slots
Modified: mgmt/trunk/cumin/python/cumin/stat.py
===================================================================
--- mgmt/trunk/cumin/python/cumin/stat.py 2008-12-03 21:55:29 UTC (rev 2920)
+++ mgmt/trunk/cumin/python/cumin/stat.py 2008-12-03 22:10:29 UTC (rev 2921)
@@ -154,7 +154,7 @@
self.add_child(ajax)
self.max_px = 480.0
- self.max_item_em = 28.0
+ self.max_item_px = 28.0
self.max_columns = 20.0
self.max_background_cols = 15 # max columns with background image
@@ -177,9 +177,8 @@
def get_grid_width(self, session):
count = len(self.cells.get_items(session))
columns = self.cells.calculate_columns(count)
- # we have approx 15em to work with
- # we'd like each column to be between 1em and 2em
- width = float(columns) * self.max_item_em
+ # we have approx 480px to work with
+ width = float(columns) * self.max_item_px
if width > self.max_px:
width = self.max_px
extra = 3.0 * columns # left right border plus 1 right margin
@@ -188,7 +187,7 @@
return int(width + extra)
def render_grid_width(self, session):
- width = self.get_grid_width(session)
+ width = self.get_grid_width(session) or self.max_px
return "%ipx" % int(width)
class GridCells(ItemSet):
@@ -201,12 +200,19 @@
self.sticky = self.Sticky(app, "sticky_info")
self.add_child(self.sticky)
+ def render(self, session, *args):
+ count = len(self.get_items(session))
+ if count == 0:
+ return "0 slots found"
+ else:
+ return super(StatUtilizationGrid.GridCells, self).render(session, *args)
+
def do_get_items(self, session):
cells = self.parent.get_cells(session)
self.items.set(session, cells)
self.width.set(session,
self.calculate_cell_width(len(cells)))
- return cells
+ return cells
def render_cell_id(self, session, cell):
return cell["id"]
@@ -226,10 +232,10 @@
def calculate_cell_width(self, count):
columns = self.calculate_columns(count)
- width = self.parent.max_item_em
+ width = self.parent.max_item_px
if columns:
min = self.parent.max_px / float(columns)
- width = min > self.parent.max_item_em and self.parent.max_item_em or
min
+ width = min > self.parent.max_item_px and self.parent.max_item_px or
min
return "%ipx" % int(width)
def render_href(self, session, cell):
@@ -296,6 +302,10 @@
return self.name
class Legend(ItemSet):
+ def render(self, session, *args):
+ if len(self.parent.cells.get_items(session)) > 0:
+ return super(StatUtilizationGrid.Legend, self).render(session, *args)
+
def do_get_items(self, session, *args):
return self.parent.get_colors(session)
Show replies by date