View Javadoc

1   package org.ximtec.igesture.tool.view.admin.panel;
2   
3   import javax.swing.tree.TreePath;
4   
5   import org.sigtec.util.Constant;
6   import org.ximtec.igesture.core.DefaultDescriptor;
7   import org.ximtec.igesture.core.GestureClass;
8   import org.ximtec.igesture.tool.core.Controller;
9   import org.ximtec.igesture.tool.explorer.ExplorerTreeController;
10  import org.ximtec.igesture.tool.util.TitleFactory;
11  import org.ximtec.igesture.tool.view.AbstractPanel;
12  
13  public abstract class DefaultDescriptorPanel<T extends DefaultDescriptor> extends AbstractPanel {
14    
15    private T descriptor;
16  
17    public DefaultDescriptorPanel(Controller controller, T descriptor) {
18      super(controller);
19      this.descriptor = descriptor;
20    }
21  
22    /**
23     * Sets the title of the form
24     */
25    protected void initTitle() {
26    
27      StringBuilder sb = new StringBuilder();
28    
29      if (getController() instanceof ExplorerTreeController) {
30        try {
31          ExplorerTreeController ec = (ExplorerTreeController) getController();
32          sb.append(descriptor.getName());
33          sb.append(Constant.COLON_BLANK);
34    
35          TreePath treePath = ec.getExplorerTree().getSelectionPath();
36          GestureClass gc = (GestureClass) treePath.getParentPath().getLastPathComponent();
37    
38          sb.append(gc.getName());
39        } catch (Exception e) {
40          sb.append(descriptor.getName());
41        }
42      } else {
43        sb.append(descriptor.getName());
44      }
45    
46      setTitle(TitleFactory.createStaticTitle(sb.toString()));
47    }
48    
49    /**
50     * Returns the descriptor
51     * @return
52     */
53    protected T getDescriptor(){
54      return descriptor;
55    }
56  
57  }