6 |
|
# ----------- |
7 |
|
# new(name) : The name is just a plain string |
8 |
|
# setparent(parentnode) : Set the parent node |
9 |
< |
# getparent() : return the parent node |
9 |
> |
# parent() : return the parent node |
10 |
|
# grow(node) : grow a new node extending from this node |
11 |
|
# nodeList() : return a list of attatched nodes |
12 |
|
# setassociate(Object) : Associate node with an object reference |
15 |
|
# within the current tree |
16 |
|
# name() : return the name of the object |
17 |
|
|
18 |
< |
package TreeNode; |
18 |
> |
package ActiveDoc::TreeNode; |
19 |
> |
require 5.001; |
20 |
> |
use ActiveDoc::TreeMonkey; |
21 |
> |
use Utilities::List; |
22 |
|
|
23 |
|
sub new { |
24 |
|
my $class=shift; |
26 |
|
$self={}; |
27 |
|
bless $self, $class; |
28 |
|
$self->{name}=$name; |
29 |
< |
$self->{nodelist}=List->(new); |
30 |
< |
$self->{monkey}=TreeMonkey->new(); |
31 |
< |
$self->{parent}=""; |
29 |
> |
$self->{nodelist}=Utilities::List->new(); |
30 |
> |
$self->{monkey}=ActiveDoc::TreeMonkey->new(); |
31 |
> |
$self->{parent}="/"; |
32 |
|
return $self; |
33 |
|
} |
34 |
|
|
37 |
|
$self->{parent}=shift; |
38 |
|
} |
39 |
|
|
40 |
< |
sub getparent() { |
40 |
> |
sub parent() { |
41 |
|
my $self=shift; |
42 |
|
return $self->{parent}; |
43 |
|
} |
51 |
|
|
52 |
|
sub nodeList { |
53 |
|
my $self=shift; |
54 |
< |
return $self->{nodelist} |
54 |
> |
return $self->{nodelist}; |
55 |
|
} |
56 |
|
|
57 |
|
sub associate { |
64 |
|
$self->{associate}=shift; |
65 |
|
} |
66 |
|
|
67 |
+ |
sub name { |
68 |
+ |
my $self=shift; |
69 |
+ |
return $self->{name}; |
70 |
+ |
} |
71 |
+ |
|
72 |
|
# |
73 |
|
# find - |
74 |
|
# |
77 |
|
my $string=shift; |
78 |
|
|
79 |
|
# get our tree monkey to do the job |
80 |
< |
$self-{monkey}->goto($self); #start at this node |
81 |
< |
$self->{monkey>->find{$string}; |
80 |
> |
$self->{monkey}->goto($self); #start at this node |
81 |
> |
$self->{monkey}->find($string); |
82 |
|
} |