View Javadoc

1   package es.inteco.eni.swing;
2   
3   import java.awt.event.MouseEvent;
4   import java.awt.event.MouseListener;
5   
6   import javax.swing.tree.DefaultMutableTreeNode;
7   
8   import es.inteco.eni.commons.EniConstants;
9   import es.inteco.eni.swing.TreeViewPane.TreeViewNode;
10  
11  /**
12   * Clase que controla los eventos de ratón sobre la vista en arbol del XML
13   * 
14   *  
15   * 
16   *
17   */
18  public class TreeViewMouseListener implements MouseListener{
19  
20  	/**
21  	 * Panel para la vista en árbol
22  	 */
23  	private TreeViewPane treeViewPane;
24  	/**
25  	 * Ventana del validador
26  	 */
27  	private ENIValidator eniValidator;
28  
29  	/**
30  	 * Constructor
31  	 * @param treeViewPane
32  	 */
33  	public TreeViewMouseListener(ENIValidator eniValidator, TreeViewPane treeViewPane){
34  		this.eniValidator = eniValidator;
35  		this.treeViewPane = treeViewPane;
36  	}
37  
38  	/**
39  	 * 
40  	 * @see java.awt.event.MouseListener#mouseClicked(java.awt.event.MouseEvent)
41  	 */
42  	@Override
43  	public void mouseClicked(MouseEvent e) {
44  
45  	}
46  
47  	/**
48  	 * @return Devuelve el valor del campo treeViewPane
49  	 */
50  	public TreeViewPane gettreeViewPane() {
51  		return treeViewPane;
52  	}
53  
54  	/**
55  	 * @param Asigna al campo treeViewPane el valor del parámetro treeViewPane
56  	 */
57  	public void settreeViewPane(TreeViewPane treeViewPane) {
58  		this.treeViewPane = treeViewPane;
59  	}
60  
61  
62  	/**
63  	 * @return Devuelve el valor del campo eniValidator
64  	 */
65  	public ENIValidator getEniValidator() {
66  		return eniValidator;
67  	}
68  
69  	/**
70  	 * @param Asigna al campo eniValidator el valor del parámetro eniValidator
71  	 */
72  	public void setEniValidator(ENIValidator eniValidator) {
73  		this.eniValidator = eniValidator;
74  	}
75  
76  	/**
77  	 * 
78  	 * @see java.awt.event.MouseListener#mouseEntered(java.awt.event.MouseEvent)
79  	 */
80  	@Override
81  	public void mouseEntered(MouseEvent e) {
82  
83  	}
84  
85  	/**
86  	 * 
87  	 * @see java.awt.event.MouseListener#mouseExited(java.awt.event.MouseEvent)
88  	 */
89  	@Override
90  	public void mouseExited(MouseEvent e) {
91  	}
92  
93  	/**
94  	 * 
95  	 * @see java.awt.event.MouseListener#mousePressed(java.awt.event.MouseEvent)
96  	 */
97  	@Override
98  	public void mousePressed(MouseEvent e) {
99  		//Doble click
100 		if(e.getClickCount()==2){
101 			DefaultMutableTreeNode node = (DefaultMutableTreeNode)gettreeViewPane().getTree().getLastSelectedPathComponent();
102 			if (node == null){
103 				return;
104 			}
105 			
106 			Object nodeInfo = node.getUserObject();
107 			TreeViewNode treeViewNode = (TreeViewNode)nodeInfo;
108 			//Si es un fichero lo abrimos
109 			if(treeViewNode!=null && FileOpener.isFile(treeViewNode.getXmlNode())){
110 				DefaultMutableTreeNode parentNode = (DefaultMutableTreeNode)node.getParent();
111 				if(parentNode!=null){
112 					Object parentNodeInfo = parentNode.getUserObject();
113 					TreeViewNode parentTreeViewNode = (TreeViewNode)parentNodeInfo;
114 					FileOpener fileOpener = new FileOpener();
115 					fileOpener.openFile(getEniValidator(), treeViewNode.getXmlNode(), parentTreeViewNode.getXmlNode());
116 				}
117 			}
118 		}
119 	}
120 
121 
122 
123 	/**
124 	 * 
125 	 * @see java.awt.event.MouseListener#mouseReleased(java.awt.event.MouseEvent)
126 	 */
127 	@Override
128 	public void mouseReleased(MouseEvent e) {
129 	}
130 
131 }