Browse Source

Merge branch 'BP_master' of git@git.tk.informatik.tu-darmstadt.de:carlos.garcia/praktikum-holons.git into BP_master

Andreas T. Meyer-Berg 7 years ago
parent
commit
423ac65178
5 changed files with 38 additions and 19 deletions
  1. 2 6
      license.md
  2. 9 9
      res/Texts/DE.lang
  3. 15 4
      src/ui/view/AbstractCanvas.java
  4. 5 0
      src/ui/view/GUI.java
  5. 7 0
      src/ui/view/MyCanvas.java

+ 2 - 6
license.md

@@ -1,4 +1,4 @@
-# Copyright (c) 2017 <copyright holders>
+# Copyright (c) 2017 Carlos Garcia Cordero, Rolf Egert
 	
 	Permission is hereby granted, free of charge, to any person obtaining a copy of this 
 	software and associated documentation files (the "Software"), to deal in the Software 
@@ -13,8 +13,4 @@
 	PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE 
 	FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR 
 	OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER 
-	DEALINGS IN THE SOFTWARE.
-	
-	Except as contained in this notice, the name of the <copyright holders> shall not be used in 
-	advertising or otherwise to promote the sale, use or other dealings in this Software without
-	prior written authorization from the <copyright holders>.
+	DEALINGS IN THE SOFTWARE.

+ 9 - 9
res/Texts/DE.lang

@@ -108,12 +108,12 @@ Zeitschieber
 # Image Size Slider (94)
 Bildgröße
 #Menu - right click on HolonObjt (95-102)
-Cut
-Copy
-Paste
-Delete
-Group
-Ungroup
-Track
-Untrack
-Categories
+Ausschneiden
+Kopieren
+Einfügen
+Löschen
+Gruppieren
+Degruppieren
+Verfolgen
+NichtVerfolgen
+Kategorien

+ 15 - 4
src/ui/view/AbstractCanvas.java

@@ -8,6 +8,7 @@ import ui.model.Model;
 import javax.swing.*;
 import java.awt.*;
 import java.awt.event.MouseEvent;
+import java.awt.geom.Line2D;
 import java.io.File;
 import java.util.ArrayList;
 import java.util.TimerTask;
@@ -261,7 +262,9 @@ public abstract class AbstractCanvas extends JPanel {
 
     void setRightClickMenu(MouseEvent e) {
         if (e.getButton() == MouseEvent.BUTTON3) {
+        	itemPaste.setEnabled(true);
             if (tempCps != null) {
+            	itemPaste.setEnabled(true);
                 itemDelete.setEnabled(true);
                 itemCut.setEnabled(true);
                 itemCopy.setEnabled(true);
@@ -277,21 +280,29 @@ public abstract class AbstractCanvas extends JPanel {
                 if (model.getSelectedCpsObjects().size() == 0) {
                     controller.addSelectedObject(tempCps);
                 }
-            } else {
+            }else{
                 itemCut.setEnabled(false);
                 itemCopy.setEnabled(false);
-                itemDelete.setEnabled(false);
                 itemGroup.setEnabled(false);
                 itemUngroup.setEnabled(false);
                 itemTrack.setEnabled(false);
                 itemUntrack.setEnabled(false);
+        		if(edgeHighlight != null)
+        		{
+                    itemDelete.setEnabled(true);
+                    itemPaste.setEnabled(false);
+        		}
+        		else
+        		{
+        			itemDelete.setEnabled(false);
+                    itemPaste.setEnabled(true);
+        		}
             }
             mousePosition = this.getMousePosition();
             popmenu.show(e.getComponent(), e.getX(), e.getY());
         }
     }
-
-
+    
     void markObjects() {
         if (doMark) {
             doMark = false;

+ 5 - 0
src/ui/view/GUI.java

@@ -424,6 +424,11 @@ public class GUI implements CategoryListener {
                     // or Canvas?
                 } else if (canvasOrUpperNodeCanvas instanceof MyCanvas) {
                     boolean save = false;
+                    CpsEdge edgeHighlight= model.getSelectedEdge();
+                    if(edgeHighlight != null){
+                    	controller.removeEdgesOnCanvas(edgeHighlight);
+                    	((MyCanvas) canvasOrUpperNodeCanvas).edgeHighlight = null;
+                    }
                     for (int j = 0; j < model.getSelectedCpsObjects().size(); j++) {
                         AbstractCpsObject cps = model.getSelectedCpsObjects().get(j);
 

+ 7 - 0
src/ui/view/MyCanvas.java

@@ -227,6 +227,11 @@ public class MyCanvas extends AbstractCanvas implements MouseListener, MouseMoti
 
         itemDelete.addActionListener(actionEvent -> {
             // Remove the selected Object objects
+        	if(tempCps == null && edgeHighlight != null)
+        	{
+        		controller.removeEdgesOnCanvas(edgeHighlight);
+        		edgeHighlight = null;
+        	}
             boolean save = false;
             for (int j = 0; j < model.getSelectedCpsObjects().size(); j++) {
                 AbstractCpsObject cps = model.getSelectedCpsObjects().get(j);
@@ -517,6 +522,7 @@ public class MyCanvas extends AbstractCanvas implements MouseListener, MouseMoti
             try {
                 controller.autoSave();
             } catch (IOException ex) {
+            	System.err.println("AutoSave error by dragging");
                 ex.printStackTrace();
             }
         }
@@ -773,6 +779,7 @@ public class MyCanvas extends AbstractCanvas implements MouseListener, MouseMoti
         }
         return null;
     }
+    
 
     void updateLanguages() {
         itemCut.setText(Languages.getLanguage()[95]);