annotate ZTUtils/SimpleTree.py @ 1042:adcfdeac4e76

not sure how useful this is...
author Richard Jones <richard@users.sourceforge.net>
date Wed, 04 Sep 2002 04:47:28 +0000
parents 7fe79c67aaa9
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
983
7fe79c67aaa9 Adding ZTUtils to the dist
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
1 ##############################################################################
7fe79c67aaa9 Adding ZTUtils to the dist
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
2 #
7fe79c67aaa9 Adding ZTUtils to the dist
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
3 # Copyright (c) 2001 Zope Corporation and Contributors. All Rights Reserved.
7fe79c67aaa9 Adding ZTUtils to the dist
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
4 #
7fe79c67aaa9 Adding ZTUtils to the dist
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
5 # This software is subject to the provisions of the Zope Public License,
7fe79c67aaa9 Adding ZTUtils to the dist
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
6 # Version 2.0 (ZPL). A copy of the ZPL should accompany this distribution.
7fe79c67aaa9 Adding ZTUtils to the dist
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
7 # THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED
7fe79c67aaa9 Adding ZTUtils to the dist
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
8 # WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
7fe79c67aaa9 Adding ZTUtils to the dist
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
9 # WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
7fe79c67aaa9 Adding ZTUtils to the dist
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
10 # FOR A PARTICULAR PURPOSE
7fe79c67aaa9 Adding ZTUtils to the dist
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
11 #
7fe79c67aaa9 Adding ZTUtils to the dist
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
12 ##############################################################################
7fe79c67aaa9 Adding ZTUtils to the dist
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
13 __doc__='''Simple Tree classes
7fe79c67aaa9 Adding ZTUtils to the dist
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
14
7fe79c67aaa9 Adding ZTUtils to the dist
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
15 $Id: SimpleTree.py,v 1.1 2002-08-30 08:25:34 richard Exp $'''
7fe79c67aaa9 Adding ZTUtils to the dist
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
16 __version__='$Revision: 1.1 $'[11:-2]
7fe79c67aaa9 Adding ZTUtils to the dist
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
17
7fe79c67aaa9 Adding ZTUtils to the dist
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
18 from Tree import TreeMaker, TreeNode, b2a
7fe79c67aaa9 Adding ZTUtils to the dist
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
19
7fe79c67aaa9 Adding ZTUtils to the dist
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
20 class SimpleTreeNode(TreeNode):
7fe79c67aaa9 Adding ZTUtils to the dist
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
21 def branch(self):
7fe79c67aaa9 Adding ZTUtils to the dist
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
22 if self.state == 0:
7fe79c67aaa9 Adding ZTUtils to the dist
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
23 return {'link': None, 'img': '&nbsp;&nbsp;'}
7fe79c67aaa9 Adding ZTUtils to the dist
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
24
7fe79c67aaa9 Adding ZTUtils to the dist
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
25 if self.state < 0:
7fe79c67aaa9 Adding ZTUtils to the dist
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
26 setst = 'expand'
7fe79c67aaa9 Adding ZTUtils to the dist
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
27 exnum = self.aq_parent.expansion_number
7fe79c67aaa9 Adding ZTUtils to the dist
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
28 img = 'pl'
7fe79c67aaa9 Adding ZTUtils to the dist
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
29 else:
7fe79c67aaa9 Adding ZTUtils to the dist
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
30 setst = 'collapse'
7fe79c67aaa9 Adding ZTUtils to the dist
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
31 exnum = self.expansion_number
7fe79c67aaa9 Adding ZTUtils to the dist
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
32 img = 'mi'
7fe79c67aaa9 Adding ZTUtils to the dist
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
33
7fe79c67aaa9 Adding ZTUtils to the dist
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
34 base = self.aq_acquire('baseURL')
7fe79c67aaa9 Adding ZTUtils to the dist
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
35 obid = self.id
7fe79c67aaa9 Adding ZTUtils to the dist
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
36 pre = self.aq_acquire('tree_pre')
7fe79c67aaa9 Adding ZTUtils to the dist
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
37
7fe79c67aaa9 Adding ZTUtils to the dist
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
38 return {'link': '?%s-setstate=%s,%s,%s#%s' % (pre, setst[0],
7fe79c67aaa9 Adding ZTUtils to the dist
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
39 exnum, obid, obid),
7fe79c67aaa9 Adding ZTUtils to the dist
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
40 'img': '<img src="%s/p_/%s" alt="%s" border="0">' % (base, img, setst)}
7fe79c67aaa9 Adding ZTUtils to the dist
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
41
7fe79c67aaa9 Adding ZTUtils to the dist
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
42
7fe79c67aaa9 Adding ZTUtils to the dist
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
43 class SimpleTreeMaker(TreeMaker):
7fe79c67aaa9 Adding ZTUtils to the dist
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
44 '''Generate Simple Trees'''
7fe79c67aaa9 Adding ZTUtils to the dist
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
45
7fe79c67aaa9 Adding ZTUtils to the dist
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
46 def __init__(self, tree_pre="tree"):
7fe79c67aaa9 Adding ZTUtils to the dist
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
47 self.tree_pre = tree_pre
7fe79c67aaa9 Adding ZTUtils to the dist
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
48
7fe79c67aaa9 Adding ZTUtils to the dist
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
49 def node(self, object):
7fe79c67aaa9 Adding ZTUtils to the dist
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
50 node = SimpleTreeNode()
7fe79c67aaa9 Adding ZTUtils to the dist
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
51 node.object = object
7fe79c67aaa9 Adding ZTUtils to the dist
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
52 node.id = b2a(self.getId(object))
7fe79c67aaa9 Adding ZTUtils to the dist
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
53 return node
7fe79c67aaa9 Adding ZTUtils to the dist
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
54
7fe79c67aaa9 Adding ZTUtils to the dist
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
55 def markRoot(self, node):
7fe79c67aaa9 Adding ZTUtils to the dist
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
56 node.tree_pre = self.tree_pre
7fe79c67aaa9 Adding ZTUtils to the dist
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
57 node.baseURL = node.object.REQUEST['BASEPATH1']

Roundup Issue Tracker: http://roundup-tracker.org/