View Javadoc

1   package com.melloware.jukes.gui.view.node;
2   
3   import java.awt.Color;
4   import java.awt.Font;
5   
6   import javax.swing.Icon;
7   import javax.swing.tree.TreeNode;
8   
9   import com.melloware.jukes.db.orm.AbstractJukesObject;
10  
11  /**
12   * This interface describes tree nodes in the Jukes navigation tree.
13   * <p>
14   * Copyright (c) 1999-2007 Melloware, Inc. <http://www.melloware.com>
15   * @author Emil A. Lefkof III <info@melloware.com>
16   * @version 4.0
17   * 
18   * @see javax.swing.tree.TreeNode
19   */
20  public interface NavigationNode
21      extends TreeNode {
22  
23      /**
24       * Returns this node's icon with any overlays added.
25       *
26       * @return this node's icon with any overlays added.
27       */
28      Icon getNodeIcon(boolean selected);
29      
30      /**
31       * Returns this node's icon for the given selection state.
32       *
33       * @return this node's icon for the given selection state
34       */
35      Icon getIcon(boolean selected);
36      
37      /**
38       * Returns this node's Font for the given selection state.
39       *
40       * @return this node's Font for the given selection state
41       */
42      Font getFont();
43      
44      /**
45       * Returns this node's Font color for the given selection state.
46       *
47       * @return this node's Font color for the given selection state
48       */
49      Color getFontColor();
50  
51      /**
52       * Returns this node's model.
53       *
54       * @return this node's model
55       */
56      AbstractJukesObject getModel();
57  
58      /**
59       * Returns this node's name.
60       *
61       * @return this node's name
62       */
63      String getName();
64  
65  }