[Checkins] SVN: Sandbox/ulif/grokui.zodbbrowser/src/grokui/zodbbrowser/pages.py * Add title to appear in general menu bar.

Uli Fouquet uli at gnufix.de
Sat Feb 27 12:18:38 EST 2010


Log message for revision 109485:
  * Add title to appear in general menu bar.
  
  * Add support for setting output format.
  
  * Remove 'name' parameter from links.
  

Changed:
  U   Sandbox/ulif/grokui.zodbbrowser/src/grokui/zodbbrowser/pages.py

-=-
Modified: Sandbox/ulif/grokui.zodbbrowser/src/grokui/zodbbrowser/pages.py
===================================================================
--- Sandbox/ulif/grokui.zodbbrowser/src/grokui/zodbbrowser/pages.py	2010-02-27 17:16:57 UTC (rev 109484)
+++ Sandbox/ulif/grokui.zodbbrowser/src/grokui/zodbbrowser/pages.py	2010-02-27 17:18:37 UTC (rev 109485)
@@ -4,6 +4,7 @@
 from persistent import Persistent
 from zope.component import getMultiAdapter
 from zope.security.proxy import removeSecurityProxy
+from zope.session.interfaces import ISession
 from ZODB.utils import p64, u64, tid_repr
 from grokui.base import IGrokUIRealm, GrokUIView
 from grokui.zodbbrowser.interfaces import IObjectInfo
@@ -11,6 +12,8 @@
 grok.context(IGrokUIRealm)
 grok.templatedir('templates')
 
+marker = object()
+
 class ManageApplications(grok.Permission):
     grok.name('grok.ManageApplications')
 
@@ -18,8 +21,10 @@
     grok.name('zodbbrowser')
     grok.template('zodbbrowser')
     grok.require('grok.ManageApplications')
+    grok.title('ZODB browser')
 
-    def update(self, oid=None, name=None):
+    def update(self, oid=None, name=None, show_all=False, show_docs=False,
+               update=None):
         self.obj = None
         if oid is None:
             self.obj = self.context.root
@@ -29,9 +34,17 @@
             jar = self.jar()
             self.obj = jar.get(oid)
         self.info = IObjectInfo(self.obj)
-        self.info._name = name
-        self.getBreadCrumbs()
+        session = ISession(self.request)['grokui.zodbbrowser']
 
+        self.show_all = show_all
+        self.show_docs = show_docs
+        if update is None:
+            self.show_all = session.get('show_all', False)
+            self.show_docs = session.get('show_docs', False)
+        session['show_all'] = self.show_all
+        session['show_docs'] = self.show_docs
+        return
+        
     def findClosestPersistent(self):
         obj = removeSecurityProxy(self.context)
         while not isinstance(obj, Persistent):
@@ -101,7 +114,7 @@
                     self.getMemberLink(IObjectInfo(self.context.root)),
                     '<root>'))
         link_list.reverse()
-        result = ' > '.join(link_list)
+        result = ' / '.join(link_list)
         return result
     
 class MemberInfoView(grok.View):
@@ -112,8 +125,13 @@
     grok.context(IObjectInfo)
     grok.require('grok.ManageApplications')
 
+    def update(self):
+        session = ISession(self.request)['grokui.zodbbrowser']
+        self.show_all = session.get('show_all', False)
+        self.show_docs = session.get('show_docs', False)
+    
     def getMemberLink(self):
         return self.url(
             self.parent_context, '@@zodbbrowser',
-            data=dict(oid=self.context.oid, name=self.context.name)
+            data=dict(oid=self.context.oid)
             )



More information about the checkins mailing list