davemds pushed a commit to branch master.

http://git.enlightenment.org/apps/espionage.git/commit/?id=80c9d41b8ee3927679aa787e9489998cc4e7e71a

commit 80c9d41b8ee3927679aa787e9489998cc4e7e71a
Author: davemds <d...@gurumeditation.it>
Date:   Tue Dec 10 21:34:06 2013 +0100

    Espionage: color fun!
---
 espionage/espionage.py | 51 +++++++++++++++++++++++++++++++++++++-------------
 1 file changed, 38 insertions(+), 13 deletions(-)

diff --git a/espionage/espionage.py b/espionage/espionage.py
index ce552f0..e9b162e 100644
--- a/espionage/espionage.py
+++ b/espionage/espionage.py
@@ -54,6 +54,14 @@ class Options(object):
         self.pretty_output = True
         self.scroll_on_signal = True
 
+        self.stl_name = "font_weight=Bold color=#FFF  font_size=11"
+        self.stl_value = "color=#FF99FF"
+        self.stl_iface = "font_weight=Bold color=#999 font_size=11"
+        self.stl_brackets = "color=#FFCC00"
+        self.stl_arrow = "color=#AAAAAA"
+        self.stl_ptype = "color=#6699FF"
+        self.stl_pname = "color=#AAFFAA"
+
 
 def prettify_if_needed(data):
     if options.pretty_output:
@@ -394,26 +402,42 @@ class ObjectItemClass(GenlistItemClass):
         return '[OBJ] ' + obj.name
 
 class NodeItemClass(GenlistItemClass):
+
+
     def __init__(self):
-        GenlistItemClass.__init__(self, item_style="default")
+        GenlistItemClass.__init__(self, item_style="default_style")
+
+    def _colored_params(self, plist):
+        p = ["<font %s>%s</> <font %s>%s</>" % (options.stl_ptype, ty,
+                                                options.stl_pname, name)
+                for name, ty in plist]
+        return '<font %s>(</>%s<font %s>)</>' % \
+                (options.stl_brackets, ', '.join(p), options.stl_brackets)
+
     def text_get(self, gl, part, obj):
         if isinstance(obj, DBusInterface):
-            return '[IFACE] ' + obj.name
+            return '<font %s>[IFACE] %s</>' % (options.stl_iface, obj.name)
         if isinstance(obj, DBusProperty):
             if obj.value is not None:
-                return '[PROP] %s %s (%s) = %s' % \
-                        (obj.type, obj.name, obj.access, obj.value)
+                return '<font %s>[PROP] %s</> <font %s>%s</> %s <font %s>→</> 
<font %s>%s</>' % \
+                    (options.stl_name, obj.name, options.stl_ptype, obj.type,
+                     obj.access, options.stl_arrow, options.stl_value, 
str(obj.value))
+                     
             else:
-                return '[PROP] %s %s (%s)' % (obj.type, obj.name, obj.access)
+                return '<font %s>[PROP] %s</> <font %s>%s</> %s <font %s>→</>' 
% \
+                        (options.stl_name, obj.name, options.stl_ptype, 
obj.type,
+                         obj.access, options.stl_arrow)
         if isinstance(obj, DBusMethod):
-            params = obj.params_str
-            rets = obj.returns_str
-            if rets:
-                return '𝆑   %s(%s) → (%s)' % (obj.name, params, rets)
+            params = self._colored_params(obj.params)
+            if obj.returns:
+                rets = self._colored_params(obj.returns)
+                return '<font %s>[METH] %s</> %s <font %s>→</> %s' % \
+                       (options.stl_name, obj.name, params, options.stl_arrow, 
rets)
             else:
-                return '𝆑   %s(%s)' % (obj.name, params)
+                return '<font %s>[METH] %s</> %s' % (options.stl_name, 
obj.name, params)
         if isinstance(obj, DBusSignal):
-            return '[SIG] %s(%s)' % (obj.name, obj.params_str)
+            params = self._colored_params(obj.params)
+            return '<font %s>[SIGN] %s</> %s' % (options.stl_name, obj.name, 
params)
 
 class DetailList(Genlist):
     def __init__(self, parent):
@@ -612,8 +636,9 @@ class SignalItemClass(GenlistItemClass):
     def __init__(self):
         GenlistItemClass.__init__(self, item_style='default_style')
     def text_get(self, gl, part, data):
-        return '<b>%s</>  iface: <i>%s</> path: <i>%s</> sender: <i>%s</>' % \
-               (data['signal'], data['iface'], data['path'], data['sender'])
+        return '<font %s>%s</>  <font %s>iface: %s</> <font %s>path: %s</> 
<font %s>sender: %s</>' % \
+               (options.stl_name, data['signal'], options.stl_ptype, 
data['iface'],
+                options.stl_pname, data['path'], options.stl_value, 
data['sender'])
 
 class SignalReceiver(Frame):
     def __init__(self, parent):

-- 


Reply via email to