blob: e38f7a2dd21878c6b49596cea0b3449f3b89c26a (
plain)
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
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
|
// **********************************************************************
//
// Copyright (c) 2003-2005 ZeroC, Inc. All rights reserved.
//
// This copy of Ice is licensed to you under the terms described in the
// ICE_LICENSE file included in this distribution.
//
// **********************************************************************
package IceGrid.TreeNode;
import javax.swing.tree.TreePath;
import javax.swing.tree.TreeCellRenderer;
import javax.swing.JPopupMenu;
import javax.swing.JPanel;
import IceGrid.SimpleInternalFrame;
import IceGrid.Model;
//
// CommonBase is similar to javax.swing.tree.TreeNode
//
public interface CommonBase extends TreeCellRenderer
{
Object getChildAt(int childIndex);
int getChildCount();
int getIndex(Object child);
boolean isLeaf();
CommonBase findChild(String id);
//
// Unique within the scope of each parent
//
String getId();
Model getModel();
//
// Ephemeral objects are destroyed when you switch selection
// without "apply"ing the changes.
//
boolean isEphemeral();
//
// Destroys this node, returns true when destroyed
//
boolean destroy();
//
// Get this node's parent;
// null when the node is not attached to the root
//
CommonBase getParent();
//
// The path to this node;
// null when the node is not attached to the root
// typically used by children to create TreeModelEvents
//
TreePath getPath();
//
// Get pop-up menu
//
JPopupMenu getPopupMenu();
void displayProperties();
//
// Get properties
//
PropertiesHolder getPropertiesHolder();
//
// The enclosing editable
//
Editable getEditable();
//
// The enclosing Application
//
Application getApplication();
//
// Gets the associated descriptor
//
Object getDescriptor();
//
// Find child whose descriptor == the given descriptor
//
CommonBase findChildWithDescriptor(Object descriptor);
//
// Save & restore the descriptor
// How much needs to be copied depends on how what the corresponding
// editor writes.
//
Object saveDescriptor();
void restoreDescriptor(Object savedDescriptor);
//
// Copy the underlying data (typically descriptor);
// this is a _deep_ copy
// Objects that are not copyable return null
//
Object copy();
//
// Create a new object using this descriptor in this container
// or the parent's container; does nothing if the descriptor
// is not of the proper type
//
void paste(Object descriptor);
//
// Change the sorting order (using no-op)
//
void moveUp();
void moveDown();
//
// Set this child's parent
//
void setParent(CommonBase parent);
void clearParent();
//
// Find all instances of this child (including this child)
//
java.util.List findAllInstances(CommonBase child);
}
|