[kupfer: 24/38] Make kupfer-object-multiple the default fallback for Source
- From: Ulrik Sverdrup <usverdrup src gnome org>
- To: svn-commits-list gnome org
- Cc:
- Subject: [kupfer: 24/38] Make kupfer-object-multiple the default fallback for Source
- Date: Sat, 16 Jan 2010 17:13:48 +0000 (UTC)
commit 0651e0bfc3961f3383f7239465ee4e515972a329
Author: Ulrik Sverdrup <ulrik sverdrup gmail com>
Date: Fri Jan 15 22:13:53 2010 +0100
Make kupfer-object-multiple the default fallback for Source
kupfer/obj/base.py | 17 +++++++++--------
1 files changed, 9 insertions(+), 8 deletions(-)
---
diff --git a/kupfer/obj/base.py b/kupfer/obj/base.py
index 9616172..5f659b6 100644
--- a/kupfer/obj/base.py
+++ b/kupfer/obj/base.py
@@ -45,9 +45,13 @@ class KupferObject (object):
@rank_adjust should be used _very_ sparingly:
Default actions should have +5 or +1
Destructive (dangerous) actions should have -5 or -10
+
+ @fallback_icon_name is a class attribute for the last fallback
+ icon; it must always be accessible.
"""
__metaclass__ = _BuiltinObject
rank_adjust = 0
+ fallback_icon_name = "kupfer-object"
def __init__(self, name=None):
""" Init kupfer object with, where
@name *should* be a unicode object but *may* be
@@ -112,8 +116,7 @@ class KupferObject (object):
icon = icon_name and icons.get_icon_for_name(icon_name, icon_size)
if icon:
return icon
- fallback_class = Action if isinstance(self, Action) else KupferObject
- return icons.get_icon_for_name(fallback_class.get_icon_name(self), icon_size)
+ return icons.get_icon_for_name(self.fallback_icon_name, icon_size)
def get_icon(self):
"""
@@ -129,8 +132,7 @@ class KupferObject (object):
icon_name = self.get_icon_name()
if icon_name and icons.get_good_name_for_icon_names((icon_name, )):
return icons.get_gicon_for_names(icon_name)
- fallback_class = Action if isinstance(self, Action) else KupferObject
- return icons.get_gicon_for_names(fallback_class.get_icon_name(self))
+ return icons.get_gicon_for_names(self.fallback_icon_name)
def get_gicon(self):
"""Return GIcon, if there is one"""
@@ -140,7 +142,7 @@ class KupferObject (object):
"""Return icon name. All items should have at least
a generic icon name to return.
"""
- return "kupfer-object"
+ return self.fallback_icon_name
def aslist(seq):
"""Return a list out of @seq, or seq if it is a list"""
@@ -209,6 +211,7 @@ class Action (KupferObject):
"""
return True
'''
+ fallback_icon_name = "gtk-execute"
def __hash__(self):
return hash(repr(self))
@@ -273,9 +276,6 @@ class Action (KupferObject):
"""
return ()
- def get_icon_name(self):
- return "gtk-execute"
-
class Source (KupferObject, pretty.OutputMixin):
"""
Source: Data provider for a kupfer browser
@@ -284,6 +284,7 @@ class Source (KupferObject, pretty.OutputMixin):
their @repr are equal!
"""
+ fallback_icon_name = "kupfer-object-multiple"
def __init__(self, name):
KupferObject.__init__(self, name)
self.cached_items = None
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]