KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > memoire > vainstall > builder > util > AbstractVAIProductNode


1 /*
2  * $RCSfile: AbstractVAIProductNode.java,v $
3  * @modification $Date: 2001/09/28 19:41:42 $
4  * @version $Id: AbstractVAIProductNode.java,v 1.1 2001/09/28 19:41:42 hfalk Exp $
5  *
6  */

7
8 package com.memoire.vainstall.builder.util;
9
10 import com.memoire.vainstall.builder.action.AbstractVAIProductAction;
11 import com.memoire.vainstall.builder.VAIProductController;
12 import com.memoire.vainstall.builder.VAIProductModel;
13
14 import javax.swing.JPopupMenu JavaDoc;
15 import javax.swing.tree.*;
16
17 /**
18  * This is a abstract node in a tree which is able to perform methods on
19  * a product which is edited.
20  * The class is a kind of base support class for generating tree like
21  * views on the datamodel
22  *
23  * @see com.memoire.vainstall.builder.VAIBuilderController
24  * @see com.memoire.vainstall.builder.VAIBuilderModel
25  * @see com.memoire.vainstall.builder.util.VAINodeInterface
26  * @see javax.swing.tree.DefaultMutableTreeNode
27  *
28  * @author Henrik Falk
29  * @version $Id: AbstractVAIProductNode.java,v 1.1 2001/09/28 19:41:42 hfalk Exp $
30  */

31 public abstract class AbstractVAIProductNode extends DefaultMutableTreeNode implements VAINodeInterface {
32
33     /**
34      * Keep reference to product controller
35      */

36     VAIProductController controller;
37
38     /**
39      * Keep reference to product data model
40      */

41     VAIProductModel model;
42
43     /**
44      * Default constructor
45      */

46     public AbstractVAIProductNode() {
47         super();
48
49         // we are the user object due implementation of VAINodeInterface
50
setUserObject(this);
51     }
52
53     public String JavaDoc toString() {
54         return "";
55     }
56
57     /**
58      * initialize the node
59      * @param controller VAIProductController
60      */

61     public void initialize(VAIProductController controller) {
62         this.controller = controller;
63         this.model = controller.getModel();
64     }
65
66     /**
67      * return the product controller
68      * @return the product controller
69      */

70     protected VAIProductController getController() {
71         return controller;
72     }
73  
74     /**
75      * return the product data model
76      * @return the product data model
77      */

78     protected VAIProductModel getModel() {
79         return model;
80     }
81
82     public abstract JPopupMenu JavaDoc getPopupMenu();
83
84     protected AbstractVAIProductAction getActionFor(String JavaDoc actionName) {
85         if (controller == null) {
86             return null;
87         }
88         return (AbstractVAIProductAction)getController().getActionList().get(actionName);
89     }
90
91 }
92
Popular Tags