[Checkins] SVN: z3c.table/trunk/ be smart to not IPhysicallyLocatable objects if we lookup the __name__ value
Roger Ineichen
roger at projekt01.ch
Fri Dec 19 08:42:06 EST 2008
Log message for revision 94192:
be smart to not IPhysicallyLocatable objects if we lookup the __name__ value
Changed:
U z3c.table/trunk/CHANGES.txt
U z3c.table/trunk/src/z3c/table/column.py
-=-
Modified: z3c.table/trunk/CHANGES.txt
===================================================================
--- z3c.table/trunk/CHANGES.txt 2008-12-19 12:31:09 UTC (rev 94191)
+++ z3c.table/trunk/CHANGES.txt 2008-12-19 13:42:05 UTC (rev 94192)
@@ -5,7 +5,7 @@
Version 0.6.1dev (unreleased)
-----------------------------
-- ...
+- be smart to not IPhysicallyLocatable objects if we lookup the __name__ value
Version 0.6.0 (2008-11-12)
--------------------------
Modified: z3c.table/trunk/src/z3c/table/column.py
===================================================================
--- z3c.table/trunk/src/z3c/table/column.py 2008-12-19 12:31:09 UTC (rev 94191)
+++ z3c.table/trunk/src/z3c/table/column.py 2008-12-19 13:42:05 UTC (rev 94192)
@@ -57,6 +57,14 @@
return column
+def getName(item):
+ # probably not IPhysicallyLocatable but still could have a __name__
+ try:
+ return api.getName(item)
+ except TypeError, e:
+ return item.__name__
+
+
def safeGetAttr(obj, attr, default):
try:
return getattr(obj, attr, default)
@@ -134,7 +142,7 @@
header = _('Name')
def renderCell(self, item):
- return api.getName(item)
+ return getName(item)
class RadioColumn(Column):
@@ -153,13 +161,13 @@
return property(get, set)
def getSortKey(self, item):
- return api.getName(item)
+ return getName(item)
def getItemKey(self, item):
return '%s-selectedItem' % self.id
def getItemValue(self, item):
- return api.getName(item)
+ return getName(item)
def update(self):
items = [item for item in self.table.values
@@ -193,13 +201,13 @@
return property(get, set)
def getSortKey(self, item):
- return api.getName(item)
+ return getName(item)
def getItemKey(self, item):
return '%s-selectedItems' % self.id
def getItemValue(self, item):
- return api.getName(item)
+ return getName(item)
def isSelected(self, item):
v = self.request.get(self.getItemKey(item), [])
@@ -326,7 +334,7 @@
def getLinkContent(self, item):
"""Setup link content."""
- return self.linkContent or api.getName(item)
+ return self.linkContent or getName(item)
def renderCell(self, item):
# setup a tag
@@ -349,7 +357,7 @@
return '%s-selectedItems' % self.id
def getItemValue(self, item):
- return api.getName(item)
+ return getName(item)
def getSortKey(self, item):
"""Returns the sort key used for column sorting."""
@@ -357,7 +365,7 @@
def getLinkContent(self, item):
"""Setup link content."""
- return self.linkContent or api.getName(item)
+ return self.linkContent or getName(item)
def getLinkURL(self, item):
"""Setup link url."""
More information about the Checkins
mailing list