File: tree.py

package info (click to toggle)
albatross 1.36-5
  • links: PTS
  • area: main
  • in suites: lenny
  • size: 2,472 kB
  • ctags: 1,822
  • sloc: python: 7,437; makefile: 146; sh: 132
file content (50 lines) | stat: -rw-r--r-- 1,356 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
#!/usr/bin/python
from albatross.cgiapp import Request
from albatross import SimpleSessionApp

node_num = 0


class Node:

    def __init__(self, name, children = None):
        self.name = name
        if children is not None:
            self.children = children
        self.selected = 0
        global node_num
        self.node_num = node_num
        node_num = node_num + 1

    def albatross_alias(self):
        return 'node%d' % self.node_num


class TreePage:

    def page_enter(self, ctx):
        ctx.locals.tree \
            = Node('a', [Node('a', [Node('a'),
                                    Node('b')]),
                         Node('b', [Node('a', [Node('a', [Node('a'),
                                                          Node('b')])]),
                                    Node('b'),
                                    Node('c', [Node('a'),
                                               Node('b')])])])
        ctx.add_session_vars('tree')

    def page_display(self, ctx):
        ctx.run_template('tree.html')


app = SimpleSessionApp(base_url='tree.py',
                       template_path='.',
                       start_page='start',
                       secret='-=-secret-=-',
                       session_appid='tree')

app.register_page('start', TreePage())


if __name__ == '__main__':
    app.run(Request())