01: /*
02: * $Header: /cvs/j3dfly/J3dFly/src/org/jdesktop/j3dfly/utils/developmenttools/SceneGraphChangeListener.java,v 1.1 2005/04/20 21:04:51 paulby Exp $
03: *
04: * Sun Public License Notice
05: *
06: * The contents of this file are subject to the Sun Public License Version
07: * 1.0 (the "License"). You may not use this file except in compliance with
08: * the License. A copy of the License is available at http://www.sun.com/
09: *
10: * The Original Code is Java 3D(tm) Fly Through.
11: * The Initial Developer of the Original Code is Paul Byrne.
12: * Portions created by Paul Byrne are Copyright (C) 2002.
13: * All Rights Reserved.
14: *
15: * Contributor(s): Paul Byrne.
16: *
17: **/
18: package org.jdesktop.j3dfly.utils.developmenttools;
19:
20: import javax.media.j3d.BranchGroup;
21:
22: /**
23: * Interface for listening to scene graph changes from the Locale.
24: *
25: * @author Paul Byrne
26: * @version $Id: SceneGraphChangeListener.java,v 1.1 2005/04/20 21:04:51 paulby Exp $
27: */
28: public interface SceneGraphChangeListener {
29:
30: /**
31: * A new Branch graph is about to be added to the Locale
32: */
33: public void graphAdded(DevelopmentLocale locale,
34: BranchGroup newGraph);
35:
36: /**
37: * A Branch graph has been removed, the remove has taken place
38: * when this method is called
39: */
40: public void graphRemoved(DevelopmentLocale locale, BranchGroup graph);
41:
42: /**
43: * A branch graph is about to be replaced in the Locale
44: */
45: public void graphReplaced(DevelopmentLocale locale,
46: BranchGroup oldGraph, BranchGroup newGraph);
47:
48: /**
49: * Called when the Locale is notified of SceneGraph Structure changes
50: * by a call to notifyGraphChanged
51: *
52: */
53: public void graphChanged(DevelopmentLocale locale,
54: BranchGroup graph, javax.media.j3d.Node node);
55:
56: /**
57: *
58: * Called when a BranchGroup is added to a group within a live scene graph
59: *
60: * @param parent The live parent
61: * @param child The child about to be attached to the parent, the child has
62: * not been attached at this stage
63: */
64: public void groupAddChild(DevelopmentLocale locale,
65: javax.media.j3d.Group parent,
66: javax.media.j3d.BranchGroup child);
67:
68: /**
69: *
70: * Called when a BranchGroup is set in a group within a live scene graph
71: *
72: * @param parent The live parent
73: * @param child The child about to be set to the parent, the child has
74: * not been attached at this stage
75: */
76: public void groupSetChild(DevelopmentLocale locale,
77: javax.media.j3d.Group parent,
78: javax.media.j3d.BranchGroup child, int index);
79:
80: public void groupRemoveAllChildren(DevelopmentLocale locale,
81: javax.media.j3d.Group parent);
82:
83: /**
84: * Called when a BranchGroup is removed from a group within a live scene graph
85: *
86: * @param parent The live parent
87: * @param child The live child which is about to be removed
88: */
89: public void groupRemoveChild(DevelopmentLocale locale,
90: javax.media.j3d.Group parent,
91: javax.media.j3d.BranchGroup child);
92:
93: }
|