~tapaal-contributor/tapaal/rollercoaster-example-loading-fail-1850713

« back to all changes in this revision

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

  • Committer: Jiri Srba
  • Date: 2019-08-23 08:51:28 UTC
  • mfrom: (1012.1.2 tapaal)
  • Revision ID: srba.jiri@gmail.com-20190823085128-ge1pisaokuw2jtuq
GUI label  undo merged lp:~tapaal-contributor/tapaal/undo-namelabel-movement-1834783

Show diffs side-by-side

added added

removed removed

Lines of Context:
4
4
import java.awt.event.MouseEvent;
5
5
import java.awt.event.MouseWheelEvent;
6
6
import javax.swing.SwingUtilities;
 
7
 
 
8
import dk.aau.cs.gui.undo.Command;
 
9
import dk.aau.cs.gui.undo.UpdateNameLabelOffsetCommand;
7
10
import pipe.dataLayer.NetType;
8
11
import pipe.gui.CreateGui;
9
12
import pipe.gui.graphicElements.Arc;
19
22
        private NameLabel nl;
20
23
 
21
24
        protected Point dragInit = new Point();
22
 
 
 
25
        
 
26
        private double originalOffsetX, originalOffsetY;
 
27
        
23
28
        public LabelHandler(NameLabel _nl, PetriNetObject _obj) {
24
29
                obj = _obj;
25
30
                nl = _nl;
32
37
 
33
38
        @Override
34
39
        public void mousePressed(MouseEvent e) {
 
40
                
35
41
                if(obj instanceof Arc) {
36
42
                        if (((Arc) obj).isPrototype()) {
37
43
                                return;
49
55
                dragInit = e.getPoint(); //
50
56
                // dragInit = e.getLocationOnScreen(); //causes exception in Windows!
51
57
                dragInit = javax.swing.SwingUtilities.convertPoint(nl, dragInit, obj);
 
58
                originalOffsetX = obj.getNameOffsetXObject();
 
59
                originalOffsetY = obj.getNameOffsetYObject();
52
60
        }
53
61
 
54
62
        @Override
65
73
                // obj.setNameOffsetY((e.getYOnScreen() - dragInit.y)); //causes
66
74
                // exception in Windows!
67
75
                // dragInit = e.getLocationOnScreen(); //causes exception in Windows!
 
76
                
 
77
                
68
78
                obj.updateNameOffsetX((p.x - dragInit.x));
69
79
                obj.updateNameOffsetY((p.y - dragInit.y));
70
80
                dragInit = p;
71
81
                obj.updateOnMoveOrZoom();
72
82
        }
 
83
        
 
84
        @Override
 
85
        public void mouseReleased(MouseEvent e) {
 
86
                Point p = javax.swing.SwingUtilities
 
87
                                .convertPoint(nl, e.getPoint(), obj);
 
88
                
 
89
                CreateGui.getDrawingSurface().getUndoManager().addNewEdit(new UpdateNameLabelOffsetCommand(obj.getNameOffsetXObject(), obj.getNameOffsetYObject(), originalOffsetX, originalOffsetY, obj));
 
90
                
 
91
        }
73
92
 
74
93
        @Override
75
94
        public void mouseWheelMoved(MouseWheelEvent e) {