1 package org.opensync.engine.admin.gui;
2
3 import javax.swing.*;
4 import java.awt.event.*;
5 import org.opensync.engine.server.Task;
6 import org.opensync.engine.server.OpenSync;
7 import org.opensync.engine.util.I18n;
8
9 /***
10 *
11 * @version 1.0
12 * @author SOFTMED
13 *
14 */
15
16 public class TaskTreeNode extends OpenSyncTreeNode {
17 /****/
18 protected static ImageIcon icon;
19
20 /***
21 * @param task
22 */
23 public TaskTreeNode(Task task) {
24 super(task);
25 icon = new ImageIcon(AgendaTreeNode.class.getResource("/images/task.gif"));
26 popup = new JPopupMenu();
27 JMenuItem menuItem = new JMenuItem(I18n.getInstance().get("gui.popup-menu.properties"));
28 menuItem.addActionListener(new ActionListener(){
29 public void actionPerformed(ActionEvent e){
30 try {
31 TaskIFrm frm = new TaskIFrm(getTask(),OpenSync.getInstance().getLog());
32 AppPnl.getInstance().addIFrame(frm);
33 }
34 catch (Exception ex) {
35 ex.printStackTrace();
36 }
37 }
38 }
39 );
40 popup.add(menuItem);
41 menuItem = new JMenuItem(I18n.getInstance().get("gui.popup-menu.execute"));
42 menuItem.addActionListener(new ActionListener(){
43 public void actionPerformed(ActionEvent e){
44 int res = JOptionPane.showOptionDialog(AppPnl.getInstance(),
45 I18n.getInstance().format(
46 "gui.confirm.execute",new Object[]{getTask().getName()}
47 ),I18n.getInstance().get("gui.product"),
48 JOptionPane.YES_NO_OPTION,JOptionPane.QUESTION_MESSAGE,null,
49 new String[]{I18n.getInstance().get("common.yes"),I18n.getInstance().get("common.no")},
50 I18n.getInstance().get("common.no")
51 );
52 if(res == JOptionPane.YES_OPTION){
53 new Thread(getTask()).start();
54 }
55 }
56 }
57 );
58 popup.add(menuItem);
59 }
60 /****/
61 public String toString() {
62 return getTask().getName();
63 }
64 /****/
65 public Task getTask(){
66 return (Task)userObject;
67 }
68 /****/
69 public ImageIcon getIcon(){
70 return icon;
71 }
72 }