~tapaal-contributor/tapaal/disappearing-tokens-1940098

« back to all changes in this revision

Viewing changes to src/pipe/gui/handler/TimedArcHandler.java

  • Committer: Kenneth Yrke Jørgensen
  • Date: 2011-04-12 09:50:16 UTC
  • mfrom: (329.1.188 tapaal-1.5)
  • Revision ID: mail@yrke.dk-20110412095016-e4hqdgab5596ja09
Merged with branch addning support for new 1.5 features

Show diffs side-by-side

added added

removed removed

Lines of Context:
11
11
 
12
12
import pipe.dataLayer.Arc;
13
13
import pipe.dataLayer.NetType;
14
 
import pipe.dataLayer.TimedArc;
15
 
import pipe.dataLayer.TransportArc;
 
14
import pipe.dataLayer.TimedInhibitorArcComponent;
 
15
import pipe.dataLayer.TimedInputArcComponent;
 
16
import pipe.dataLayer.TransportArcComponent;
16
17
import pipe.gui.CreateGui;
17
18
import pipe.gui.action.SplitArcAction;
18
19
 
19
 
public class TimedArcHandler extends ArcHandler{
 
20
public class TimedArcHandler extends ArcHandler {
20
21
 
21
22
        public TimedArcHandler(Container contentpane, Arc obj) {
22
23
                super(contentpane, obj);
23
24
                enablePopup = true;
24
25
        }
 
26
 
25
27
        @Override
26
28
        public JPopupMenu getPopup(MouseEvent e) {
27
29
                int popupIndex = 0;
28
30
                JMenuItem menuItem;
29
31
                JPopupMenu popup = super.getPopup(e);
30
32
 
31
 
                if (myObject instanceof TimedArc && ! (myObject instanceof TransportArc) ){
32
 
                        if(!CreateGui.getModel().netType().equals(NetType.UNTIMED)){
33
 
                                menuItem = new JMenuItem("Properties");      
34
 
                                menuItem.addActionListener(new ActionListener(){
 
33
                if (myObject instanceof TimedInputArcComponent
 
34
                                && !(myObject instanceof TransportArcComponent)) {
 
35
                        if (!CreateGui.getModel().netType().equals(NetType.UNTIMED) && !(myObject instanceof TimedInhibitorArcComponent)) {
 
36
                                menuItem = new JMenuItem("Properties");
 
37
                                menuItem.addActionListener(new ActionListener() {
35
38
                                        public void actionPerformed(ActionEvent e) {
36
 
                                                ((TimedArc)myObject).showTimeIntervalEditor();
 
39
                                                ((TimedInputArcComponent) myObject).showTimeIntervalEditor();
37
40
                                        }
38
 
                                }); 
 
41
                                });
39
42
                                popup.insert(menuItem, popupIndex++);
40
 
                        } 
 
43
                        }
41
44
                        /*
42
 
                        menuItem = new JMenuItem(new EditTimeIntervalAction(contentPane, (Arc)myObject));
43
 
                        menuItem.setText("Edit Time Interval");
44
 
                        popup.insert(menuItem, popupIndex++);
 
45
                         * menuItem = new JMenuItem(new EditTimeIntervalAction(contentPane,
 
46
                         * (Arc)myObject)); menuItem.setText("Edit Time Interval");
 
47
                         * popup.insert(menuItem, popupIndex++);
45
48
                         */
46
 
                        menuItem = new JMenuItem(new SplitArcAction((Arc)myObject, e.getPoint()));            
 
49
                        menuItem = new JMenuItem(new SplitArcAction((Arc) myObject, e
 
50
                                        .getPoint()));
47
51
                        menuItem.setText("Insert Point");
48
52
                        popup.insert(menuItem, popupIndex++);
49
53
 
50
 
                        if (((TimedArc)myObject).hasInverse()){
51
 
                                menuItem = new JMenuItem(
52
 
                                                new SplitArcsAction((TimedArc)myObject, false));
53
 
 
54
 
                                menuItem.setText("Join Arcs (PT / TP)");
55
 
                                popup.insert(menuItem, popupIndex++);            
56
 
                        }
57
54
                        popup.insert(new JPopupMenu.Separator(), popupIndex);
58
55
                }
59
56
                return popup;
60
57
        }
 
58
 
61
59
        @Override
62
60
        public void mousePressed(MouseEvent e) {
63
 
                if (CreateGui.getApp().isEditionAllowed()){
64
 
                        if (e.getClickCount()==2){
65
 
                                Arc arc = (Arc)myObject;
66
 
                                if (e.isControlDown()){
 
61
                if (CreateGui.getApp().isEditionAllowed()) {
 
62
                        if (e.getClickCount() == 2) {
 
63
                                Arc arc = (Arc) myObject;
 
64
                                if (e.isControlDown()) {
67
65
                                        CreateGui.getView().getUndoManager().addNewEdit(
68
66
                                                        arc.getArcPath().insertPoint(
69
 
                                                                        new Point2D.Float(arc.getX() + e.getX(), 
70
 
                                                                                        arc.getY() + e.getY()), e.isAltDown()));
71
 
                                }else if(!CreateGui.getModel().netType().equals(NetType.UNTIMED)){
72
 
                                        ((TimedArc)myObject).showTimeIntervalEditor();
 
67
                                                                        new Point2D.Float(arc.getX() + e.getX(),
 
68
                                                                                        arc.getY() + e.getY()),
 
69
                                                                        e.isAltDown()));
 
70
                                } else if (!CreateGui.getModel().netType().equals(NetType.UNTIMED)) {
 
71
                                        if(!(myObject instanceof TimedInhibitorArcComponent))
 
72
                                                ((TimedInputArcComponent) myObject).showTimeIntervalEditor();
73
73
                                }
74
 
                        }else{
 
74
                        } else {
75
75
                                getPopup(e);
76
 
                                super.mousePressed(e);  
 
76
                                super.mousePressed(e);
77
77
                        }
78
78
                }
79
79
        }