Revision: 6269
          http://sourceforge.net/p/jump-pilot/code/6269
Author:   ma15569
Date:     2020-05-31 06:40:03 +0000 (Sun, 31 May 2020)
Log Message:
-----------
Added new souce code tree. Removed obsolete files/folder. 

Added Paths:
-----------
    plug-ins/CadPlan_VertexSymbols/trunk/src/FileChooser.java
    plug-ins/CadPlan_VertexSymbols/trunk/src/GridBagDesigner.java
    plug-ins/CadPlan_VertexSymbols/trunk/src/HTMLTextComponent.java
    plug-ins/CadPlan_VertexSymbols/trunk/src/HTMLTextSegment.java
    plug-ins/CadPlan_VertexSymbols/trunk/src/MyFileFilter.java
    plug-ins/CadPlan_VertexSymbols/trunk/src/TextFile.java
    plug-ins/CadPlan_VertexSymbols/trunk/src/VertexSymbolsExtension.java
    plug-ins/CadPlan_VertexSymbols/trunk/src/designer/
    plug-ins/CadPlan_VertexSymbols/trunk/src/fileio/
    plug-ins/CadPlan_VertexSymbols/trunk/src/icon/
    plug-ins/CadPlan_VertexSymbols/trunk/src/icon/IconLoader.java
    plug-ins/CadPlan_VertexSymbols/trunk/src/icon/Line.png
    plug-ins/CadPlan_VertexSymbols/trunk/src/icon/Palette.png
    plug-ins/CadPlan_VertexSymbols/trunk/src/icon/Vertex.png
    plug-ins/CadPlan_VertexSymbols/trunk/src/icon/application_view.png
    plug-ins/CadPlan_VertexSymbols/trunk/src/icon/default_icon.png
    plug-ins/CadPlan_VertexSymbols/trunk/src/icon/noteicon.gif
    plug-ins/CadPlan_VertexSymbols/trunk/src/icon/vsicon.gif
    plug-ins/CadPlan_VertexSymbols/trunk/src/jump/
    plug-ins/CadPlan_VertexSymbols/trunk/src/language/
    plug-ins/CadPlan_VertexSymbols/trunk/src/language/I18NPlug.java
    
plug-ins/CadPlan_VertexSymbols/trunk/src/language/VertexSymbolsPlugin.properties
    
plug-ins/CadPlan_VertexSymbols/trunk/src/language/VertexSymbolsPlugin_de.properties
    
plug-ins/CadPlan_VertexSymbols/trunk/src/language/VertexSymbolsPlugin_en.properties
    
plug-ins/CadPlan_VertexSymbols/trunk/src/language/VertexSymbolsPlugin_fi.properties
    
plug-ins/CadPlan_VertexSymbols/trunk/src/language/VertexSymbolsPlugin_fr.properties
    
plug-ins/CadPlan_VertexSymbols/trunk/src/language/VertexSymbolsPlugin_it.properties
    plug-ins/CadPlan_VertexSymbols/trunk/src/plugins/
    plug-ins/CadPlan_VertexSymbols/trunk/src/plugins/StylerMenuPlugIn.java
    plug-ins/CadPlan_VertexSymbols/trunk/src/plugins/VertexNoteDialog.java
    plug-ins/CadPlan_VertexSymbols/trunk/src/plugins/VertexNotePlugin.java
    
plug-ins/CadPlan_VertexSymbols/trunk/src/plugins/VertexSymbolsClassificationDialog.java
    plug-ins/CadPlan_VertexSymbols/trunk/src/plugins/VertexSymbolsDialog.java
    plug-ins/CadPlan_VertexSymbols/trunk/src/plugins/VertexSymbolsPlugIn.java
    plug-ins/CadPlan_VertexSymbols/trunk/src/plugins/panel/
    plug-ins/CadPlan_VertexSymbols/trunk/src/plugins/panel/ColorPanel.java
    plug-ins/CadPlan_VertexSymbols/trunk/src/plugins/panel/TextLabelPanel.java
    plug-ins/CadPlan_VertexSymbols/trunk/src/plugins/panel/TransparPanel.java
    
plug-ins/CadPlan_VertexSymbols/trunk/src/plugins/panel/VertexColorThemingPanel.java
    
plug-ins/CadPlan_VertexSymbols/trunk/src/plugins/panel/VertexParametersPanel.java
    
plug-ins/CadPlan_VertexSymbols/trunk/src/plugins/panel/VertexSymbologyPanel.java
    plug-ins/CadPlan_VertexSymbols/trunk/src/renderer/
    plug-ins/CadPlan_VertexSymbols/trunk/src/renderer/style/
    
plug-ins/CadPlan_VertexSymbols/trunk/src/renderer/style/AdvancedStyle.java2xml
    
plug-ins/CadPlan_VertexSymbols/trunk/src/renderer/style/AnyShapeVertexStyle.java
    
plug-ins/CadPlan_VertexSymbols/trunk/src/renderer/style/AnyShapeVertexStyle.java2xml
    
plug-ins/CadPlan_VertexSymbols/trunk/src/renderer/style/ExternalSymbolsImplType.java
    
plug-ins/CadPlan_VertexSymbols/trunk/src/renderer/style/ExternalSymbolsImplType.java2xml
    
plug-ins/CadPlan_VertexSymbols/trunk/src/renderer/style/ExternalSymbolsRenderer.java
    
plug-ins/CadPlan_VertexSymbols/trunk/src/renderer/style/ExternalSymbolsType.java
    
plug-ins/CadPlan_VertexSymbols/trunk/src/renderer/style/ImageVertexStyle.java
    
plug-ins/CadPlan_VertexSymbols/trunk/src/renderer/style/ImageVertexStyle.java2xml
    
plug-ins/CadPlan_VertexSymbols/trunk/src/renderer/style/PolygonVertexStyle.java
    
plug-ins/CadPlan_VertexSymbols/trunk/src/renderer/style/PolygonVertexStyle.java2xml
    plug-ins/CadPlan_VertexSymbols/trunk/src/renderer/style/StarVertexStyle.java
    
plug-ins/CadPlan_VertexSymbols/trunk/src/renderer/style/StarVertexStyle.java2xml
    plug-ins/CadPlan_VertexSymbols/trunk/src/renderer/style/WKTVertexStyle.java
    
plug-ins/CadPlan_VertexSymbols/trunk/src/renderer/style/WKTVertexStyle.java2xml
    plug-ins/CadPlan_VertexSymbols/trunk/src/ui/
    plug-ins/CadPlan_VertexSymbols/trunk/src/ui/ImagePanel.java
    plug-ins/CadPlan_VertexSymbols/trunk/src/ui/ImageVertexPanel.java
    plug-ins/CadPlan_VertexSymbols/trunk/src/ui/LabelCallout.java
    plug-ins/CadPlan_VertexSymbols/trunk/src/ui/PreviewPanel.java
    plug-ins/CadPlan_VertexSymbols/trunk/src/ui/SVGRasterizer.java
    plug-ins/CadPlan_VertexSymbols/trunk/src/ui/SymbolPanel.java
    plug-ins/CadPlan_VertexSymbols/trunk/src/ui/TextAreaEditor.java
    plug-ins/CadPlan_VertexSymbols/trunk/src/ui/TransparencyFilter.java
    plug-ins/CadPlan_VertexSymbols/trunk/src/ui/VectorPanel.java
    plug-ins/CadPlan_VertexSymbols/trunk/src/ui/VertexColorButton.java
    plug-ins/CadPlan_VertexSymbols/trunk/src/ui/VertexPanel.java
    plug-ins/CadPlan_VertexSymbols/trunk/src/ui/WKTPanel.java
    plug-ins/CadPlan_VertexSymbols/trunk/src/ui/WKTVertexPanel.java
    plug-ins/CadPlan_VertexSymbols/trunk/src/ui/WKTshape.java
    plug-ins/CadPlan_VertexSymbols/trunk/src/utils/
    plug-ins/CadPlan_VertexSymbols/trunk/src/utils/AttributeManagerUtils.java
    plug-ins/CadPlan_VertexSymbols/trunk/src/utils/DataWrapper.java
    plug-ins/CadPlan_VertexSymbols/trunk/src/utils/DataWrapper.java2xml
    plug-ins/CadPlan_VertexSymbols/trunk/src/utils/LoadSymbolFiles.java
    plug-ins/CadPlan_VertexSymbols/trunk/src/utils/StyleUtils.java
    plug-ins/CadPlan_VertexSymbols/trunk/src/utils/VertexParams.java
    plug-ins/CadPlan_VertexSymbols/trunk/src/utils/VertexStyler.java

Removed Paths:
-------------
    plug-ins/CadPlan_VertexSymbols/trunk/Resources/
    plug-ins/CadPlan_VertexSymbols/trunk/language/
    plug-ins/CadPlan_VertexSymbols/trunk/src/com/

Added: plug-ins/CadPlan_VertexSymbols/trunk/src/FileChooser.java
===================================================================
--- plug-ins/CadPlan_VertexSymbols/trunk/src/FileChooser.java                   
        (rev 0)
+++ plug-ins/CadPlan_VertexSymbols/trunk/src/FileChooser.java   2020-05-31 
06:40:03 UTC (rev 6269)
@@ -0,0 +1,75 @@
+package com.cadplan.fileio;
+
+import java.awt.Component;
+import java.io.File;
+import java.util.Properties;
+import javax.swing.JFileChooser;
+
+public class FileChooser {
+   JFileChooser chooser;
+   public String fileName;
+   public String dirName;
+
+   public FileChooser(Component paramComponent, String paramString1, String 
paramString2, String[] paramArrayOfString, String paramString3, int paramInt) {
+      Properties properties = System.getProperties();
+      File file;
+      if (paramString1 == null) {
+         file = new File(properties.getProperty("user.dir"));
+      } else {
+         file = new File(String.valueOf(paramString1) + File.separator);
+      }
+
+      this.chooser = new JFileChooser();
+      this.chooser.setDialogType(paramInt);
+      MyFileFilter myFileFilter = new MyFileFilter(paramString3, 
paramArrayOfString);
+      this.chooser.setFileFilter(myFileFilter);
+      this.chooser.setCurrentDirectory(file);
+      if (paramString2 != null) {
+         this.chooser.setSelectedFile(new File(paramString2));
+      }
+
+      int i;
+      if (paramInt == 0) {
+         i = this.chooser.showOpenDialog(paramComponent);
+      } else {
+         i = this.chooser.showSaveDialog(paramComponent);
+      }
+
+      if (i == 0) {
+         this.fileName = this.chooser.getSelectedFile().getName();
+         if (paramInt == 1) {
+            this.fileName = this.addExtension(this.fileName, 
paramArrayOfString);
+         }
+
+         this.dirName = this.chooser.getCurrentDirectory().getPath();
+      } else {
+         this.fileName = null;
+      }
+
+   }
+
+   public String getFile() {
+      return this.fileName;
+   }
+
+   public String getDir() {
+      return this.dirName;
+   }
+
+   private String addExtension(String paramString, String[] 
paramArrayOfString) {
+      boolean bool = false;
+
+      for(byte b = 0; b < paramArrayOfString.length; ++b) {
+         String str = paramArrayOfString[b];
+         if (paramString.toLowerCase().endsWith("." + str)) {
+            bool = true;
+         }
+      }
+
+      if (!bool) {
+         paramString = String.valueOf(paramString) + "." + 
paramArrayOfString[0];
+      }
+
+      return paramString;
+   }
+}


Property changes on: plug-ins/CadPlan_VertexSymbols/trunk/src/FileChooser.java
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Added: plug-ins/CadPlan_VertexSymbols/trunk/src/GridBagDesigner.java
===================================================================
--- plug-ins/CadPlan_VertexSymbols/trunk/src/GridBagDesigner.java               
                (rev 0)
+++ plug-ins/CadPlan_VertexSymbols/trunk/src/GridBagDesigner.java       
2020-05-31 06:40:03 UTC (rev 6269)
@@ -0,0 +1,94 @@
+package com.cadplan.designer;
+
+import java.awt.Component;
+import java.awt.Container;
+import java.awt.Dimension;
+import java.awt.GridBagConstraints;
+import java.awt.GridBagLayout;
+import java.awt.Insets;
+import javax.swing.JComponent;
+
+public class GridBagDesigner {
+   private GridBagLayout layout = new GridBagLayout();
+   private GridBagConstraints constraints = new GridBagConstraints();
+   private Container container;
+
+   public GridBagDesigner(Container paramContainer) {
+      paramContainer.setLayout(this.layout);
+      this.container = paramContainer;
+      this.setDefaults();
+   }
+
+   public void addComponent(Component paramComponent) {
+      this.layout.setConstraints(paramComponent, this.constraints);
+      this.container.add(paramComponent);
+      this.setDefaults();
+   }
+
+   public void addComponentRetain(Component paramComponent) {
+      this.layout.setConstraints(paramComponent, this.constraints);
+      this.container.add(paramComponent);
+   }
+
+   public void addComponent(JComponent paramJComponent, int width, int height) 
{
+      Dimension dimension = new Dimension(width, height);
+      paramJComponent.setMinimumSize(dimension);
+      paramJComponent.setMaximumSize(dimension);
+      paramJComponent.setPreferredSize(dimension);
+      this.layout.setConstraints(paramJComponent, this.constraints);
+      this.container.add(paramJComponent);
+      this.setDefaults();
+   }
+
+   public void addComponentRetain(JComponent paramJComponent, int width, int 
height) {
+      Dimension dimension = new Dimension(width, height);
+      paramJComponent.setMinimumSize(dimension);
+      paramJComponent.setMaximumSize(dimension);
+      paramJComponent.setPreferredSize(dimension);
+      this.layout.setConstraints(paramJComponent, this.constraints);
+      this.container.add(paramJComponent);
+   }
+
+   public void resetLayout() {
+      this.setDefaults();
+   }
+
+   public void setPosition(int column, int row) {
+      this.constraints.gridx = column;
+      this.constraints.gridy = row;
+   }
+
+   public void setSpan(int column, int row) {
+      this.constraints.gridwidth = column;
+      this.constraints.gridheight = row;
+   }
+
+   public void setWeight(double x, double y) {
+      this.constraints.weightx = x;
+      this.constraints.weighty = y;
+   }
+
+   public void setFill(int space) {
+      this.constraints.fill = space;
+   }
+
+   public void setAnchor(int position) {
+      this.constraints.anchor = position;
+   }
+
+   public void setInsets(int top, int left, int bottom, int right) {
+      this.constraints.insets = new Insets(top, left, bottom, right);
+   }
+
+   private void setDefaults() {
+      this.constraints.gridx = 0;
+      this.constraints.gridy = 0;
+      this.constraints.gridwidth = 1;
+      this.constraints.gridheight = 1;
+      this.constraints.fill = 0;
+      this.constraints.anchor = 10;
+      this.constraints.weightx = 0.0D;
+      this.constraints.weighty = 0.0D;
+      this.constraints.insets = new Insets(0, 0, 0, 0);
+   }
+}


Property changes on: 
plug-ins/CadPlan_VertexSymbols/trunk/src/GridBagDesigner.java
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Added: plug-ins/CadPlan_VertexSymbols/trunk/src/HTMLTextComponent.java
===================================================================
--- plug-ins/CadPlan_VertexSymbols/trunk/src/HTMLTextComponent.java             
                (rev 0)
+++ plug-ins/CadPlan_VertexSymbols/trunk/src/HTMLTextComponent.java     
2020-05-31 06:40:03 UTC (rev 6269)
@@ -0,0 +1,130 @@
+package com.cadplan.jump;
+
+import com.cadplan.jump.ui.LabelCallout;
+import com.cadplan.jump.ui.TransparencyFilter;
+import java.awt.Color;
+import java.awt.Component;
+import java.awt.Dimension;
+import java.awt.Font;
+import java.awt.Graphics;
+import java.awt.Graphics2D;
+import java.awt.Image;
+import java.awt.MediaTracker;
+import java.awt.Rectangle;
+import java.awt.Toolkit;
+import java.awt.image.BufferedImage;
+import java.awt.image.FilteredImageSource;
+import java.awt.image.ImageObserver;
+import java.awt.image.ImageProducer;
+import javax.swing.JEditorPane;
+import javax.swing.JWindow;
+
+public class HTMLTextComponent extends Component {
+   private static final long serialVersionUID = 1L;
+   boolean debug = false;
+   String text;
+   double offset;
+   float x0;
+   float y0;
+   Color backgroundColor;
+   Color foregroundColor;
+   double alpha;
+   Image timage;
+   public int imageWidth;
+   public int imageHeight;
+   int border;
+   int position;
+   boolean fillText;
+   String fontName;
+   int fontSize;
+   double scaleFactor = 4.0D;
+   MediaTracker mediaTracker = new MediaTracker(this);
+
+   public HTMLTextComponent(String text, double offset, float x0, float y0, 
Color backgroundColor, Color foregroundColor, double alpha, int border, int 
position, boolean fillText, String fontName, int fontSize) {
+      this.text = text;
+      this.offset = offset;
+      this.x0 = x0;
+      this.y0 = y0;
+      this.backgroundColor = backgroundColor;
+      this.foregroundColor = foregroundColor;
+      this.alpha = alpha;
+      this.border = border;
+      this.position = position;
+      this.fillText = fillText;
+      this.fontName = fontName;
+      this.fontSize = fontSize;
+      this.timage = this.createTextImage();
+   }
+
+   private Image createTextImage() {
+      JWindow frame = new JWindow();
+      JEditorPane editorPane = new JEditorPane();
+      editorPane.setForeground(this.foregroundColor);
+      Font font = new Font(this.fontName, 0, (int)((double)this.fontSize * 
this.scaleFactor));
+      editorPane.setFont(font);
+      editorPane.putClientProperty("JEditorPane.honorDisplayProperties", true);
+      editorPane.setBackground(Color.WHITE);
+      editorPane.setDoubleBuffered(false);
+      editorPane.setEditable(false);
+      editorPane.setContentType("text/html");
+      editorPane.setText(this.text);
+      Rectangle bounds = editorPane.getBounds();
+      if (this.debug) {
+         System.out.println("Painting text: " + this.text);
+      }
+
+      frame.setContentPane(editorPane);
+      frame.pack();
+      Dimension size = editorPane.getSize();
+      BufferedImage image = new BufferedImage(size.width, size.height, 1);
+      Graphics2D graphics = image.createGraphics();
+      editorPane.paint(graphics);
+      this.mediaTracker.addImage(image, 0);
+
+      try {
+         this.mediaTracker.waitForID(0);
+      } catch (InterruptedException var9) {
+         return null;
+      }
+
+      if (image == null) {
+         if (this.debug) {
+            System.out.println("Image is null");
+         }
+
+         return null;
+      } else {
+         this.alpha = 0.0D;
+         Image timage = this.makeTransparent(image, Color.WHITE, this.alpha);
+         if (this.debug) {
+            System.out.println("TImage size: " + 
timage.getWidth((ImageObserver)null) + "," + 
timage.getHeight((ImageObserver)null));
+         }
+
+         this.imageWidth = (int)((double)timage.getWidth((ImageObserver)null) 
/ this.scaleFactor);
+         this.imageHeight = 
(int)((double)timage.getHeight((ImageObserver)null) / this.scaleFactor);
+         return timage;
+      }
+   }
+
+   public void paint(Graphics g, float x, float y, double drawFactor) {
+      int width = this.imageWidth;
+      int height = this.imageHeight;
+      new LabelCallout(g, this.border, this.position, (int)this.x0, 
(int)this.y0, (int)x, (int)y, width - 1, height - 1, this.foregroundColor, 
this.backgroundColor, this.fillText);
+      Graphics2D g2 = (Graphics2D)g;
+      g2.drawImage(this.timage, (int)x, (int)y, width, height, 
(ImageObserver)null);
+   }
+
+   private Image makeTransparent(Image image, Color color, double alpha) {
+      TransparencyFilter filter = new TransparencyFilter(color, alpha);
+      ImageProducer ip = new FilteredImageSource(image.getSource(), filter);
+      Image timage = Toolkit.getDefaultToolkit().createImage(ip);
+      this.mediaTracker.addImage(timage, 2);
+
+      try {
+         this.mediaTracker.waitForID(2);
+         return timage;
+      } catch (InterruptedException var9) {
+         return null;
+      }
+   }
+}


Property changes on: 
plug-ins/CadPlan_VertexSymbols/trunk/src/HTMLTextComponent.java
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Added: plug-ins/CadPlan_VertexSymbols/trunk/src/HTMLTextSegment.java
===================================================================
--- plug-ins/CadPlan_VertexSymbols/trunk/src/HTMLTextSegment.java               
                (rev 0)
+++ plug-ins/CadPlan_VertexSymbols/trunk/src/HTMLTextSegment.java       
2020-05-31 06:40:03 UTC (rev 6269)
@@ -0,0 +1,45 @@
+package com.cadplan.jump;
+
+import java.awt.Font;
+import java.awt.Graphics2D;
+import java.awt.font.FontRenderContext;
+import java.awt.font.TextLayout;
+import java.awt.geom.Rectangle2D;
+
+public class HTMLTextSegment {
+   private boolean debug = false;
+   private String line;
+   private int size;
+   private int style;
+   private double height;
+   private double width;
+   private double lineSpace;
+   private String fontName;
+   private Font font;
+
+   public HTMLTextSegment(Graphics2D g, String line, String fontName, int 
size, int style) {
+      this.fontName = fontName;
+      this.line = line;
+      this.size = size;
+      this.style = style;
+      this.font = new Font(fontName, style, size);
+      FontRenderContext frc = g.getFontRenderContext();
+      TextLayout layout = new TextLayout(line, this.font, frc);
+      this.lineSpace = (double)(layout.getAscent() + layout.getDescent());
+      Rectangle2D bounds = layout.getBounds();
+      this.width = bounds.getWidth();
+      this.height = bounds.getHeight();
+   }
+
+   public double getHeight() {
+      return this.height;
+   }
+
+   public double getWidth() {
+      return this.width;
+   }
+
+   public Font getFont() {
+      return this.font;
+   }
+}


Property changes on: 
plug-ins/CadPlan_VertexSymbols/trunk/src/HTMLTextSegment.java
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Added: plug-ins/CadPlan_VertexSymbols/trunk/src/MyFileFilter.java
===================================================================
--- plug-ins/CadPlan_VertexSymbols/trunk/src/MyFileFilter.java                  
        (rev 0)
+++ plug-ins/CadPlan_VertexSymbols/trunk/src/MyFileFilter.java  2020-05-31 
06:40:03 UTC (rev 6269)
@@ -0,0 +1,65 @@
+package com.cadplan.fileio;
+
+import java.io.File;
+import javax.swing.filechooser.FileFilter;
+
+class MyFileFilter extends FileFilter {
+   String description;
+   String[] extensions;
+   boolean acceptAll;
+
+   public MyFileFilter(String paramString1, String paramString2) {
+      this(paramString1, new String[]{paramString2});
+   }
+
+   public MyFileFilter(String paramString, String[] paramArrayOfString) {
+      this.acceptAll = false;
+      if (paramString == null) {
+         this.description = "Files like: " + paramArrayOfString[0];
+      } else {
+         this.description = paramString;
+      }
+
+      this.extensions = (String[])paramArrayOfString.clone();
+      this.toLower(this.extensions);
+
+      for(byte b = 0; b < this.extensions.length; ++b) {
+         if (this.extensions[b].equals("*")) {
+            this.acceptAll = true;
+         }
+      }
+
+   }
+
+   private void toLower(String[] paramArrayOfString) {
+      byte b = 0;
+
+      for(int i = paramArrayOfString.length; b < i; ++b) {
+         paramArrayOfString[b] = paramArrayOfString[b].toLowerCase();
+      }
+
+   }
+
+   public String getDescription() {
+      return this.description;
+   }
+
+   public boolean accept(File paramFile) {
+      if (paramFile.isDirectory()) {
+         return true;
+      } else if (this.acceptAll) {
+         return true;
+      } else {
+         String str = paramFile.getAbsolutePath().toLowerCase();
+
+         for(byte b = 0; b < this.extensions.length; ++b) {
+            String str1 = this.extensions[b];
+            if (str.endsWith(str1) && str.charAt(str.length() - str1.length() 
- 1) == '.') {
+               return true;
+            }
+         }
+
+         return false;
+      }
+   }
+}


Property changes on: plug-ins/CadPlan_VertexSymbols/trunk/src/MyFileFilter.java
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Added: plug-ins/CadPlan_VertexSymbols/trunk/src/TextFile.java
===================================================================
--- plug-ins/CadPlan_VertexSymbols/trunk/src/TextFile.java                      
        (rev 0)
+++ plug-ins/CadPlan_VertexSymbols/trunk/src/TextFile.java      2020-05-31 
06:40:03 UTC (rev 6269)
@@ -0,0 +1,101 @@
+package com.cadplan.fileio;
+
+import java.io.BufferedReader;
+import java.io.File;
+import java.io.FileNotFoundException;
+import java.io.FileReader;
+import java.io.FileWriter;
+import java.io.IOException;
+import java.util.Properties;
+
+public class TextFile {
+   String fileName;
+   String dirName;
+   BufferedReader reader = null;
+   FileWriter writer = null;
+
+   public TextFile(String paramString1, String paramString2) {
+      this.dirName = paramString1;
+      Properties properties = System.getProperties();
+      if (paramString1 == null) {
+         this.dirName = properties.getProperty("user.dir");
+      }
+
+      this.fileName = paramString2;
+   }
+
+   public boolean exists() {
+      File file = new File(String.valueOf(this.dirName) + File.separator + 
this.fileName);
+      return file.exists();
+   }
+
+   public boolean openRead() {
+      File file = new File(String.valueOf(this.dirName) + File.separator + 
this.fileName);
+
+      try {
+         this.reader = new BufferedReader(new FileReader(file));
+         return true;
+      } catch (FileNotFoundException var3) {
+         return false;
+      }
+   }
+
+   public boolean openWrite() {
+      File file = new File(String.valueOf(this.dirName) + File.separator + 
this.fileName);
+
+      try {
+         this.writer = new FileWriter(file);
+         return true;
+      } catch (IOException var3) {
+         return false;
+      }
+   }
+
+   public String readLine() {
+      try {
+         return this.reader.readLine();
+      } catch (IOException var2) {
+         return null;
+      }
+   }
+
+   public String readAll() {
+      String str = "";
+      StringBuffer stringBuffer = new StringBuffer();
+
+      try {
+         while(str != null) {
+            str = this.reader.readLine();
+            if (str != null) {
+               stringBuffer.append(String.valueOf(str) + "\n");
+            }
+         }
+      } catch (IOException var4) {
+         return stringBuffer.toString();
+      }
+
+      return stringBuffer.toString();
+   }
+
+   public boolean write(String paramString) {
+      try {
+         this.writer.write(paramString);
+         return true;
+      } catch (IOException var3) {
+         return false;
+      }
+   }
+
+   public void close() {
+      try {
+         if (this.reader != null) {
+            this.reader.close();
+         } else if (this.writer != null) {
+            this.writer.flush();
+            this.writer.close();
+         }
+      } catch (IOException var2) {
+      }
+
+   }
+}


Property changes on: plug-ins/CadPlan_VertexSymbols/trunk/src/TextFile.java
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Added: plug-ins/CadPlan_VertexSymbols/trunk/src/VertexSymbolsExtension.java
===================================================================
--- plug-ins/CadPlan_VertexSymbols/trunk/src/VertexSymbolsExtension.java        
                        (rev 0)
+++ plug-ins/CadPlan_VertexSymbols/trunk/src/VertexSymbolsExtension.java        
2020-05-31 06:40:03 UTC (rev 6269)
@@ -0,0 +1,21 @@
+package com.cadplan.jump;
+
+import com.cadplan.jump.plugins.StylerMenuPlugIn;
+import com.vividsolutions.jump.workbench.plugin.Extension;
+import com.vividsolutions.jump.workbench.plugin.PlugInContext;
+
+public class VertexSymbolsExtension extends Extension {
+       @Override
+       public void configure(PlugInContext context) throws Exception {
+               //      new VertexSymbolsPlugIn().initialize(context);
+               //      new VertexNotePlugin().initialize(context);
+               new StylerMenuPlugIn().initialize(context);
+
+
+       }
+
+       @Override
+       public String getVersion() {
+               return "0.20 (2020-05-30)";
+       }
+}


Property changes on: 
plug-ins/CadPlan_VertexSymbols/trunk/src/VertexSymbolsExtension.java
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Added: plug-ins/CadPlan_VertexSymbols/trunk/src/icon/IconLoader.java
===================================================================
--- plug-ins/CadPlan_VertexSymbols/trunk/src/icon/IconLoader.java               
                (rev 0)
+++ plug-ins/CadPlan_VertexSymbols/trunk/src/icon/IconLoader.java       
2020-05-31 06:40:03 UTC (rev 6269)
@@ -0,0 +1,66 @@
+package com.cadplan.jump.icon;
+
+import java.awt.Graphics2D;
+import java.awt.Image;
+import java.awt.image.BufferedImage;
+import java.awt.image.ImageObserver;
+import java.net.URL;
+import javax.swing.ImageIcon;
+import org.apache.log4j.Logger;
+import org.saig.jump.lang.I18N;
+
+public class IconLoader {
+   public static final ImageIcon DEFAULT_UNKNOW_ICON = new 
ImageIcon(IconLoader.class.getResource("default_icon.png"));
+   public static final Logger LOGGER = Logger.getLogger(IconLoader.class);
+
+   public static ImageIcon icon(String filename) {
+      return icon(filename, true);
+   }
+
+   public static ImageIcon icon(String filename, boolean useDefaultForNull) {
+      URL urlIcon = IconLoader.class.getResource(filename);
+      if (urlIcon == null) {
+         if (useDefaultForNull) {
+            
LOGGER.warn(I18N.getMessage("com.vividsolutions.jump.workbench.ui.images.IconLoader.The-icon-{0}-has-not-been-found-default-icon-will-be-used",
 new Object[]{filename}));
+            return DEFAULT_UNKNOW_ICON;
+         } else {
+            return null;
+         }
+      } else {
+         return new ImageIcon(urlIcon);
+      }
+   }
+
+   public static ImageIcon icon(URL url) {
+      if (url == null) {
+         
LOGGER.warn(I18N.getMessage("com.vividsolutions.jump.workbench.ui.images.IconLoader.The-icon-{0}-has-not-been-found-default-icon-will-be-used",
 new Object[]{url}));
+         return DEFAULT_UNKNOW_ICON;
+      } else {
+         return new ImageIcon(url);
+      }
+   }
+
+   public static BufferedImage image(String filename) {
+      ImageIcon icon = 
icon(IconLoader.class.getResource(resolveFile(filename)));
+      Image image = icon.getImage();
+      BufferedImage bufImg = new 
BufferedImage(image.getWidth((ImageObserver)null), 
image.getHeight((ImageObserver)null), 2);
+      Graphics2D bGr = bufImg.createGraphics();
+      bGr.drawImage(image, 0, 0, (ImageObserver)null);
+      bGr.dispose();
+      return bufImg;
+   }
+
+   protected static String resolveFile(String filename) {
+      String[] var4;
+      int var3 = (var4 = new String[]{"", "famfam/", "fugue/"}).length;
+
+      for(int var2 = 0; var2 < var3; ++var2) {
+         String path = var4[var2];
+         if (IconLoader.class.getResource(path + filename) != null) {
+            return path + filename;
+         }
+      }
+
+      return filename;
+   }
+}


Property changes on: 
plug-ins/CadPlan_VertexSymbols/trunk/src/icon/IconLoader.java
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Added: plug-ins/CadPlan_VertexSymbols/trunk/src/icon/Line.png
===================================================================
(Binary files differ)

Index: plug-ins/CadPlan_VertexSymbols/trunk/src/icon/Line.png
===================================================================
--- plug-ins/CadPlan_VertexSymbols/trunk/src/icon/Line.png      2020-05-31 
06:37:23 UTC (rev 6268)
+++ plug-ins/CadPlan_VertexSymbols/trunk/src/icon/Line.png      2020-05-31 
06:40:03 UTC (rev 6269)

Property changes on: plug-ins/CadPlan_VertexSymbols/trunk/src/icon/Line.png
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Added: plug-ins/CadPlan_VertexSymbols/trunk/src/icon/Palette.png
===================================================================
(Binary files differ)

Index: plug-ins/CadPlan_VertexSymbols/trunk/src/icon/Palette.png
===================================================================
--- plug-ins/CadPlan_VertexSymbols/trunk/src/icon/Palette.png   2020-05-31 
06:37:23 UTC (rev 6268)
+++ plug-ins/CadPlan_VertexSymbols/trunk/src/icon/Palette.png   2020-05-31 
06:40:03 UTC (rev 6269)

Property changes on: plug-ins/CadPlan_VertexSymbols/trunk/src/icon/Palette.png
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Added: plug-ins/CadPlan_VertexSymbols/trunk/src/icon/Vertex.png
===================================================================
(Binary files differ)

Index: plug-ins/CadPlan_VertexSymbols/trunk/src/icon/Vertex.png
===================================================================
--- plug-ins/CadPlan_VertexSymbols/trunk/src/icon/Vertex.png    2020-05-31 
06:37:23 UTC (rev 6268)
+++ plug-ins/CadPlan_VertexSymbols/trunk/src/icon/Vertex.png    2020-05-31 
06:40:03 UTC (rev 6269)

Property changes on: plug-ins/CadPlan_VertexSymbols/trunk/src/icon/Vertex.png
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Added: plug-ins/CadPlan_VertexSymbols/trunk/src/icon/application_view.png
===================================================================
(Binary files differ)

Index: plug-ins/CadPlan_VertexSymbols/trunk/src/icon/application_view.png
===================================================================
--- plug-ins/CadPlan_VertexSymbols/trunk/src/icon/application_view.png  
2020-05-31 06:37:23 UTC (rev 6268)
+++ plug-ins/CadPlan_VertexSymbols/trunk/src/icon/application_view.png  
2020-05-31 06:40:03 UTC (rev 6269)

Property changes on: 
plug-ins/CadPlan_VertexSymbols/trunk/src/icon/application_view.png
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Added: plug-ins/CadPlan_VertexSymbols/trunk/src/icon/default_icon.png
===================================================================
(Binary files differ)

Index: plug-ins/CadPlan_VertexSymbols/trunk/src/icon/default_icon.png
===================================================================
--- plug-ins/CadPlan_VertexSymbols/trunk/src/icon/default_icon.png      
2020-05-31 06:37:23 UTC (rev 6268)
+++ plug-ins/CadPlan_VertexSymbols/trunk/src/icon/default_icon.png      
2020-05-31 06:40:03 UTC (rev 6269)

Property changes on: 
plug-ins/CadPlan_VertexSymbols/trunk/src/icon/default_icon.png
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Added: plug-ins/CadPlan_VertexSymbols/trunk/src/icon/noteicon.gif
===================================================================
(Binary files differ)

Index: plug-ins/CadPlan_VertexSymbols/trunk/src/icon/noteicon.gif
===================================================================
--- plug-ins/CadPlan_VertexSymbols/trunk/src/icon/noteicon.gif  2020-05-31 
06:37:23 UTC (rev 6268)
+++ plug-ins/CadPlan_VertexSymbols/trunk/src/icon/noteicon.gif  2020-05-31 
06:40:03 UTC (rev 6269)

Property changes on: plug-ins/CadPlan_VertexSymbols/trunk/src/icon/noteicon.gif
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Added: plug-ins/CadPlan_VertexSymbols/trunk/src/icon/vsicon.gif
===================================================================
(Binary files differ)

Index: plug-ins/CadPlan_VertexSymbols/trunk/src/icon/vsicon.gif
===================================================================
--- plug-ins/CadPlan_VertexSymbols/trunk/src/icon/vsicon.gif    2020-05-31 
06:37:23 UTC (rev 6268)
+++ plug-ins/CadPlan_VertexSymbols/trunk/src/icon/vsicon.gif    2020-05-31 
06:40:03 UTC (rev 6269)

Property changes on: plug-ins/CadPlan_VertexSymbols/trunk/src/icon/vsicon.gif
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Added: plug-ins/CadPlan_VertexSymbols/trunk/src/language/I18NPlug.java
===================================================================
--- plug-ins/CadPlan_VertexSymbols/trunk/src/language/I18NPlug.java             
                (rev 0)
+++ plug-ins/CadPlan_VertexSymbols/trunk/src/language/I18NPlug.java     
2020-05-31 06:40:03 UTC (rev 6269)
@@ -0,0 +1,16 @@
+package com.cadplan.jump.language;
+
+import com.vividsolutions.jump.I18N;
+import java.io.File;
+
+public class I18NPlug {
+   private static File path = new 
File("com/cadplan/jump/language/VertexSymbolsPlugin");
+
+   public static String getI18N(String key) {
+      return getMessage(key);
+   }
+
+   public static String getMessage(String label, Object... objects) {
+      return I18N.getMessage(path, label, objects);
+   }
+}


Property changes on: 
plug-ins/CadPlan_VertexSymbols/trunk/src/language/I18NPlug.java
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Added: 
plug-ins/CadPlan_VertexSymbols/trunk/src/language/VertexSymbolsPlugin.properties
===================================================================
--- 
plug-ins/CadPlan_VertexSymbols/trunk/src/language/VertexSymbolsPlugin.properties
                            (rev 0)
+++ 
plug-ins/CadPlan_VertexSymbols/trunk/src/language/VertexSymbolsPlugin.properties
    2020-05-31 06:40:03 UTC (rev 6269)
@@ -0,0 +1,89 @@
+# Properties file for the VertexSymbols Plugins - default language if none 
specified
+VertexSymbols.MenuName=Extension
+VertexSymbols.MenuItem=Vertex Symbols
+VertexSymbols.SymbolName = Symbol: 
+VertexSymbols.Dialog=Vertex Symbol Dialog
+VertexSymbols.Dialog.Size=Size
+VertexSymbols.Dialog.Orientation=Orientation
+VertexSymbols.Dialog.ShowLine=Show line
+VertexSymbols.Dialog.ShowFill=Show fill
+VertexSymbols.Dialog.Dotted=Dotted
+VertexSymbols.Dialog.BaseScale=Base Scale
+VertexSymbols.Dialog.SizeByScale=Size by Scale
+VertexSymbols.Dialog.Cancel=Cancel
+VertexSymbols.Dialog.About=About
+VertexSymbols.Dialog.Accept=Accept
+VertexSymbols.Dialog.Reset=Reset
+VertexSymbols.Dialog.Clear=Clear
+VertexSymbols.Dialog.Warning1=Error in Size field
+VertexSymbols.Dialog.Warning2=Error in Orientation field
+VertexSymbols.Dialog.Warning3=Error in Base Scale field
+VertexSymbols.Dialog.Warning4=You must choose a vertex type
+VertexSymbols.Dialog.Warning5=You are about to remove the special symbols from 
this layer.\nPlease confirm.
+VertexSymbols.Dialog.Warning6=Attribute and Value boxes are empty
+VertexSymbols.Dialog.ByValue=By Value
+VertexSymbols.Dialog.ByAttribute=By Attribute
+VertexSymbols.Dialog.Vector=Vector
+VertexSymbols.Dialog.Image=Image
+VertexSymbols.Dialog.WKTshapes=WKT Shapes
+VertexSymbols.Dialog.Enabled=Enabled
+VertexSymbols.Dialog.Attribute=Attribute
+VertexSymbols.Dialog.Font=Font
+VertexSymbols.Dialog.Position=Position
+VertexSymbols.Dialog.BackColor=Back Color
+VertexSymbols.Dialog.ForeColor=Fore Color
+VertexSymbols.Dialog.Border=Border
+VertexSymbols.Dialog.FillBackground=Fill Background
+VertexSymbols.Dialog.Scope=Scope
+VertexSymbols.Dialog.Points=Points
+VertexSymbols.Dialog.Lines=Lines
+VertexSymbols.Dialog.Polygons=Polygons
+VertexSymbols.Dialog.Plain=Plain
+VertexSymbols.Dialog.Bold=Bold
+VertexSymbols.Dialog.PlainItalic=Plain+Italic
+VertexSymbols.Dialog.BoldItalic=Bold+Italic
+VertexSymbols.Dialog.Left=Left
+VertexSymbols.Dialog.Centre=Centre
+VertexSymbols.Dialog.Right=Right
+VertexSymbols.Dialog.North=North
+VertexSymbols.Dialog.NorthEast=North-East
+VertexSymbols.Dialog.East=East
+VertexSymbols.Dialog.SouthEast=South-East
+VertexSymbols.Dialog.South=South
+VertexSymbols.Dialog.SouthWest=South-West
+VertexSymbols.Dialog.West=West
+VertexSymbols.Dialog.NorthWest=North-West
+VertexSymbols.Dialog.None=None
+VertexSymbols.Dialog.Auto=Auto
+VertexSymbols.Dialog.Value=Value ->
+VertexSymbols.Dialog.Boxed=Boxed
+VertexSymbols.Dialog.Callout= Callout
+VertexSymbols.Dialog.Labels=Labels
+VertexNote.Dialog.Editor=Vertex Note Editor
+VertexNote.Dialog.Message1=You must first select a feature
+VertexNote.Dialog.ShowLabel=Show Label
+VertexNote.Dialog.Message2=You must have a layer selected.
+VertexNote.Dialog.Message3=Layer containing selected feature must be editable.
+VertexNote.Dialog.Message4=The selected feature must be in a layer with a 
defined External symbol.
+VertexNote.Dialog.Message8=Vertex Note doesn't work if colour theming is 
enabled. Please deactivate it.
+VertexNote.Dialog.SelectSymbol=Select Symbol
+VertexNote.MenuItem=Vertex notes
+VertexSymbols.Dialog.ActivateLabels=Show also JUMP labels
+VertexSymbols.Dialog.ActivateLabels.tooltip=Show also the label set with 
preset Style PlugIn.\nIn this case 2 labels will be shown
+VertexSymbols.Dialog.Warning7=No colour theming is activated
+VertexSymbols.Dialog.Warning8=Warning. Vertex attribute theming doen't match 
the Feature Schema of the layer
+VertexSymbols.VertexColorThemingDualog.manual = Double click on a symbol to 
change it
+VertexSymbols.Dialog.activate-line-decoration = Activate line decoration
+VertexSymbols.Dialog.activate-line-decoration-tooltip = Put symbols along a 
line in a regular distance.User can define distance, offset and rotation of the 
symbols. Vertex simbology will be deactivated
+VertexSymbols.Dialog.line-distance=Distance
+VertexSymbols.Dialog.line-offset=Offset
+VertexSymbols.Dialog.line-rotate=Rotate
+VertexSymbols.Dialog.line-distance-tooltip=define the distance between each 
symbol along the line
+VertexSymbols.Dialog.line-offset-tooltip=define the perpendicular distance 
(offset) of the symbol to the axis of line
+VertexSymbols.Dialog.line-rotate-tooltip=Enable: the vertical axis of simbols 
wis aligned along the direction of the line. Disable: the axis will be aligned 
along the vertical direction
+VertexSymbols.Dialog.vertex-decoration-tooltip = Vertex symbology. User can 
define size, rotation by fix value or by attribute values and scale of symbols 
+VertexSymbols.Dialog.line-decoration=Line decoration
+VertexSymbols.Dialog.vertex-decoration=Vertex decoration
+VertexSymbols.Dialog.save-panel-as-result-view=Save panel as result view
+VertexSymbols.Dialog.legend=Legend
+VertexSymbols.Dialog.panel-saved=Legend panel saved as result view (see 
OpenJUMP Toolbar>Windows>Resul views)
\ No newline at end of file


Property changes on: 
plug-ins/CadPlan_VertexSymbols/trunk/src/language/VertexSymbolsPlugin.properties
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Added: 
plug-ins/CadPlan_VertexSymbols/trunk/src/language/VertexSymbolsPlugin_de.properties
===================================================================
--- 
plug-ins/CadPlan_VertexSymbols/trunk/src/language/VertexSymbolsPlugin_de.properties
                         (rev 0)
+++ 
plug-ins/CadPlan_VertexSymbols/trunk/src/language/VertexSymbolsPlugin_de.properties
 2020-05-31 06:40:03 UTC (rev 6269)
@@ -0,0 +1,66 @@
+# Properties file for the VertexSymbols Plugins - default language if none 
specified
+VertexSymbols.MenuName=Extension
+VertexSymbols.MenuItem=Vertex Symbols
+VertexSymbols.Dialog=Vertex Symbol Dialog
+VertexSymbols.Dialog.Size=Size
+VertexSymbols.Dialog.Orientation=Orientation
+VertexSymbols.Dialog.ShowLine=Show line
+VertexSymbols.Dialog.ShowFill=Show fill
+VertexSymbols.Dialog.Dotted=Dotted
+VertexSymbols.Dialog.Cancel=Cancel
+VertexSymbols.Dialog.BaseScale=Base Scale
+VertexSymbols.Dialog.SizeByScale=Size by Scale
+VertexSymbols.Dialog.About=About
+VertexSymbols.Dialog.Accept=Accept
+VertexSymbols.Dialog.Clear=Clear
+VertexSymbols.Dialog.Reset=Reset
+VertexSymbols.Dialog.Warning1=Error in Size field
+VertexSymbols.Dialog.Warning2=Error in Orientation field
+VertexSymbols.Dialog.Warning3=Error in Base Scale field
+VertexSymbols.Dialog.Warning4=You must choose a vertex type
+VertexSymbols.Dialog.Warning5=You are about to remove the special symbols from 
this layer.\nPlease confirm.
+VertexSymbols.Dialog.ByValue=By Value
+VertexSymbols.Dialog.ByAttribute=By Attribute
+VertexSymbols.Dialog.Vector=Vector
+VertexSymbols.Dialog.Image=Image
+VertexSymbols.Dialog.WKTshapes=WKT Shapes
+VertexSymbols.Dialog.Enabled=Enabled
+VertexSymbols.Dialog.Attribute=Atribute
+VertexSymbols.Dialog.Font=Font
+VertexSymbols.Dialog.Position=Position
+VertexSymbols.Dialog.BackColor=Back Color
+VertexSymbols.Dialog.ForeColor=Fore Color
+VertexSymbols.Dialog.Border=Border
+VertexSymbols.Dialog.FillBackground=Fill Background
+VertexSymbols.Dialog.Scope=Scope
+VertexSymbols.Dialog.Points=Points
+VertexSymbols.Dialog.Lines=Lines
+VertexSymbols.Dialog.Polygons=Polygons
+VertexSymbols.Dialog.Plain=Plain
+VertexSymbols.Dialog.Bold=Bold
+VertexSymbols.Dialog.PlainItalic=Plain+Italic
+VertexSymbols.Dialog.BoldItalic=Bold+Italic
+VertexSymbols.Dialog.Left=Left
+VertexSymbols.Dialog.Centre=Centre
+VertexSymbols.Dialog.Right=Right
+VertexSymbols.Dialog.North=North
+VertexSymbols.Dialog.NorthEast=North-East
+VertexSymbols.Dialog.East=East
+VertexSymbols.Dialog.SouthEast=South-East
+VertexSymbols.Dialog.South=South
+VertexSymbols.Dialog.SouthWest=South-West
+VertexSymbols.Dialog.West=West
+VertexSymbols.Dialog.NorthWest=North-West
+VertexSymbols.Dialog.None=None
+VertexSymbols.Dialog.Auto=Auto
+VertexSymbols.Dialog.Value=Value ->
+VertexSymbols.Dialog.Boxed=Boxed
+VertexSymbols.Dialog.Callout=Callout
+VertexSymbols.Dialog.Labels=Labels
+VertexNote.Dialog.Editor=Vertex Note Editor
+VertexNote.Dialog.Message1=You must first select a feature
+VertexNote.Dialog.ShowLabel=Show Label
+VertexNote.Dialog.Message2=You must have a layer selected
+VertexNote.Dialog.Message3=Layer containing selected feature must be editable.
+VertexNote.Dialog.Message4=The selected feature must be in a layer with a 
defined External symbol.
+VertexNote.Dialog.SelectSymbol=Select Symbol.


Property changes on: 
plug-ins/CadPlan_VertexSymbols/trunk/src/language/VertexSymbolsPlugin_de.properties
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Added: 
plug-ins/CadPlan_VertexSymbols/trunk/src/language/VertexSymbolsPlugin_en.properties
===================================================================
--- 
plug-ins/CadPlan_VertexSymbols/trunk/src/language/VertexSymbolsPlugin_en.properties
                         (rev 0)
+++ 
plug-ins/CadPlan_VertexSymbols/trunk/src/language/VertexSymbolsPlugin_en.properties
 2020-05-31 06:40:03 UTC (rev 6269)
@@ -0,0 +1,66 @@
+# Properties file for the VertexSymbols Plugins - default language if none 
specified
+VertexSymbols.MenuName=Extension
+VertexSymbols.MenuItem=Vertex Symbols
+VertexSymbols.Dialog=Vertex Symbol Dialog
+VertexSymbols.Dialog.Size=Size
+VertexSymbols.Dialog.Orientation=Orientation
+VertexSymbols.Dialog.ShowLine=Show line
+VertexSymbols.Dialog.ShowFill=Show fill
+VertexSymbols.Dialog.Dotted=Dotted
+VertexSymbols.Dialog.BaseScale=Base Scale
+VertexSymbols.Dialog.SizeByScale=Size by Scale
+VertexSymbols.Dialog.Cancel=Cancel
+VertexSymbols.Dialog.About=About
+VertexSymbols.Dialog.Accept=Accept
+VertexSymbols.Dialog.Clear=Clear
+VertexSymbols.Dialog.Reset=Reset
+VertexSymbols.Dialog.Warning1=Error in Size field
+VertexSymbols.Dialog.Warning2=Error in Orientation field
+VertexSymbols.Dialog.Warning3=Error in Base Scale field
+VertexSymbols.Dialog.Warning4=You must choose a vertex type
+VertexSymbols.Dialog.Warning5=You are about to remove the special symbols from 
this layer.\nPlease confirm.
+VertexSymbols.Dialog.ByValue=By Value
+VertexSymbols.Dialog.ByAttribute=By Attribute
+VertexSymbols.Dialog.Vector=Vector
+VertexSymbols.Dialog.Image=Image
+VertexSymbols.Dialog.WKTshapes=WKT Shapes
+VertexSymbols.Dialog.Enabled=Enabled
+VertexSymbols.Dialog.Attribute=Attribute
+VertexSymbols.Dialog.Font=Font
+VertexSymbols.Dialog.Position=Position
+VertexSymbols.Dialog.BackColor=Back Color
+VertexSymbols.Dialog.ForeColor=Fore Color
+VertexSymbols.Dialog.Border=Border
+VertexSymbols.Dialog.FillBackground=Fill Background
+VertexSymbols.Dialog.Scope=Scope
+VertexSymbols.Dialog.Points=Points
+VertexSymbols.Dialog.Lines=Lines
+VertexSymbols.Dialog.Polygons=Polygons
+VertexSymbols.Dialog.Plain=Plain
+VertexSymbols.Dialog.Bold=Bold
+VertexSymbols.Dialog.PlainItalic=Plain+Italic
+VertexSymbols.Dialog.BoldItalic=Bold+Italic
+VertexSymbols.Dialog.Left=Left
+VertexSymbols.Dialog.Centre=Centre
+VertexSymbols.Dialog.Right=Right
+VertexSymbols.Dialog.North=North
+VertexSymbols.Dialog.NorthEast=North-East
+VertexSymbols.Dialog.East=East
+VertexSymbols.Dialog.SouthEast=South-East
+VertexSymbols.Dialog.South=South
+VertexSymbols.Dialog.SouthWest=South-West
+VertexSymbols.Dialog.West=West
+VertexSymbols.Dialog.NorthWest=North-West
+VertexSymbols.Dialog.Auto=Auto
+VertexSymbols.Dialog.Value=Value ->
+VertexSymbols.Dialog.None=None
+VertexSymbols.Dialog.Boxed=Boxed
+VertexSymbols.Dialog.Callout= Callout
+VertexSymbols.Dialog.Labels=Labels
+VertexNote.Dialog.Editor=Vertex Note Editor
+VertexNote.Dialog.Message1=You must first select a feature
+VertexNote.Dialog.ShowLabel=Show Label
+VertexNote.Dialog.Message2=You must have a layer selected.
+VertexNote.Dialog.Message3=Layer containing selected feature must be editable.
+VertexNote.Dialog.Message4=The selected feature must be in a layer with a 
defined External symbol.
+VertexNote.Dialog.SelectSymbol=Select Symbol


Property changes on: 
plug-ins/CadPlan_VertexSymbols/trunk/src/language/VertexSymbolsPlugin_en.properties
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Added: 
plug-ins/CadPlan_VertexSymbols/trunk/src/language/VertexSymbolsPlugin_fi.properties
===================================================================
--- 
plug-ins/CadPlan_VertexSymbols/trunk/src/language/VertexSymbolsPlugin_fi.properties
                         (rev 0)
+++ 
plug-ins/CadPlan_VertexSymbols/trunk/src/language/VertexSymbolsPlugin_fi.properties
 2020-05-31 06:40:03 UTC (rev 6269)
@@ -0,0 +1,65 @@
+#VertexSymbolsPlugin_fi.properties
+VertexNote.Dialog.Editor=Taitepisteiden tekstien muokkaus
+VertexNote.Dialog.Message1=Valitse ensin tasan yksi kohde
+VertexNote.Dialog.Message2=Taso t\u00E4ytyy olla valittuna.
+VertexNote.Dialog.Message3=Tason, jolla on valittu kohde, t\u00E4ytyy olla 
muokattavissa.
+VertexNote.Dialog.Message4=Valitun kohteen on oltava tasolla, jolle on 
m\u00E4\u00E4ritelty ulkoinen symboli.
+VertexNote.Dialog.SelectSymbol=Valitse symboli
+VertexNote.Dialog.ShowLabel=N\u00E4yt\u00E4 tunnus
+VertexSymbols.Dialog.About=Tietoja
+VertexSymbols.Dialog.Accept=Hyv\u00E4ksy
+VertexSymbols.Dialog.Attribute=Ominaisuustieto
+VertexSymbols.Dialog.Auto=Automaattinen
+VertexSymbols.Dialog.BackColor=Taustav\u00E4ri
+VertexSymbols.Dialog.BaseScale=Perusmittakaava
+VertexSymbols.Dialog.Bold=Lihavoitu
+VertexSymbols.Dialog.BoldItalic=Lihavoitu kursiivi
+VertexSymbols.Dialog.Border=Kehys
+VertexSymbols.Dialog.Boxed=Laatikko
+VertexSymbols.Dialog.ByAttribute=Ominaisuustiedon mukaan
+VertexSymbols.Dialog.ByValue=Kiinte\u00E4 kulma (asteina)
+VertexSymbols.Dialog.Callout=Puhekupla
+VertexSymbols.Dialog.Cancel=Peru
+VertexSymbols.Dialog.Centre=Keskitetty
+VertexSymbols.Dialog.Clear=Tyhjenn\u00E4
+VertexSymbols.Dialog.Dotted=N\u00E4yt\u00E4 keskipiste
+VertexSymbols.Dialog.East=It\u00E4
+VertexSymbols.Dialog.Enabled=K\u00E4yt\u00F6ss\u00E4
+VertexSymbols.Dialog.FillBackground=T\u00E4yt\u00E4 taustav\u00E4rill\u00E4
+VertexSymbols.Dialog.Font=Kirjaintyyppi
+VertexSymbols.Dialog.ForeColor=Kirjaimen v\u00E4ri
+VertexSymbols.Dialog.Image=Kuva
+VertexSymbols.Dialog.Labels=Tunnukset
+VertexSymbols.Dialog.Left=Vasen
+VertexSymbols.Dialog.Lines=Viivat
+VertexSymbols.Dialog.None=Ei mit\u00E4\u00E4n
+VertexSymbols.Dialog.North=Pohjoinen
+VertexSymbols.Dialog.NorthEast=Koillinen
+VertexSymbols.Dialog.NorthWest=Luode
+VertexSymbols.Dialog.Orientation=Suunta
+VertexSymbols.Dialog.Plain=Tavallinen
+VertexSymbols.Dialog.PlainItalic=Tavallinen kursiivi
+VertexSymbols.Dialog.Points=Pisteet
+VertexSymbols.Dialog.Polygons=Polygonit
+VertexSymbols.Dialog.Position=Sijainti + siirto
+VertexSymbols.Dialog.Reset=Oletukset
+VertexSymbols.Dialog.Right=Oikea
+VertexSymbols.Dialog.Scope=Merkit\u00E4\u00E4n\:
+VertexSymbols.Dialog.ShowFill=N\u00E4yt\u00E4 t\u00E4ytt\u00F6
+VertexSymbols.Dialog.ShowLine=N\u00E4yt\u00E4 viiva
+VertexSymbols.Dialog.Size=Koko
+VertexSymbols.Dialog.SizeByScale=Mittakaavan mukaan muuttuva koko
+VertexSymbols.Dialog.South=Etel\u00E4
+VertexSymbols.Dialog.SouthEast=Kaakko
+VertexSymbols.Dialog.SouthWest=Lounas
+VertexSymbols.Dialog.Value=Arvo ->
+VertexSymbols.Dialog.Warning1=Virhe kokokent\u00E4ss\u00E4
+VertexSymbols.Dialog.Warning2=Virhe suuntakent\u00E4ss\u00E4
+VertexSymbols.Dialog.Warning3=Virhe perusmittakaavakent\u00E4ss\u00E4
+VertexSymbols.Dialog.Warning4=Taitepisteen laji on valittava
+VertexSymbols.Dialog.Warning5=T\u00E4m\u00E4n tason erikoissymbolit 
poistetaan. Ole hyv\u00E4, ja vahvista.
+VertexSymbols.Dialog.Vector=Vektori
+VertexSymbols.Dialog.West=L\u00E4nsi
+VertexSymbols.Dialog.WKTshapes=WKT-kuviot
+VertexSymbols.MenuItem=Taitepisteiden symbolit
+VertexSymbols.MenuName=Laajennus


Property changes on: 
plug-ins/CadPlan_VertexSymbols/trunk/src/language/VertexSymbolsPlugin_fi.properties
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Added: 
plug-ins/CadPlan_VertexSymbols/trunk/src/language/VertexSymbolsPlugin_fr.properties
===================================================================
--- 
plug-ins/CadPlan_VertexSymbols/trunk/src/language/VertexSymbolsPlugin_fr.properties
                         (rev 0)
+++ 
plug-ins/CadPlan_VertexSymbols/trunk/src/language/VertexSymbolsPlugin_fr.properties
 2020-05-31 06:40:03 UTC (rev 6269)
@@ -0,0 +1,68 @@
+# Properties file for the VertexSymbols Plugins - default language if none 
specified
+VertexSymbols.MenuName=Extension
+VertexSymbols.MenuItem=Symboles
+VertexSymbols.Dialog=Choix de symboles
+VertexSymbols.Dialog.Size=Taille
+VertexSymbols.Dialog.Orientation=Orientation
+VertexSymbols.Dialog.ShowLine=Contour
+VertexSymbols.Dialog.ShowFill=Remplissage
+VertexSymbols.Dialog.Dotted=Point centr\u00E9
+VertexSymbols.Dialog.BaseScale=Echelle de base
+VertexSymbols.Dialog.SizeByScale=Taille variant avec l'\u00E9chelle
+VertexSymbols.Dialog.Cancel=Annuler
+VertexSymbols.Dialog.About=A propos
+VertexSymbols.Dialog.Accept=Valider
+VertexSymbols.Dialog.Clear=Supprimer tout
+VertexSymbols.Dialog.Reset=R\u00E9initialiser
+VertexSymbols.Dialog.Warning1=Erreur dans le champ 'Taille'
+VertexSymbols.Dialog.Warning2=Erreur dans le champ 'Orientation'
+VertexSymbols.Dialog.Warning3=Erreur dans le champ 'Echelle de base'
+VertexSymbols.Dialog.Warning4=Vous devez choisir un type de Point
+VertexSymbols.Dialog.Warning5=Vous allez enlever les symboles particuliers 
associ\u00E9s \u00E0 cette couche.\nVeuillez confirmer.
+VertexSymbols.Dialog.ByValue=Valeur (degr\u00E9s, sens horaire)
+VertexSymbols.Dialog.ByAttribute=Attribut
+VertexSymbols.Dialog.Vector=Vecteur
+VertexSymbols.Dialog.Image=Image
+VertexSymbols.Dialog.WKTshapes=Symbole WKT
+VertexSymbols.Dialog.Enabled=Activer
+VertexSymbols.Dialog.Attribute=Attribut
+VertexSymbols.Dialog.Font=Police
+VertexSymbols.Dialog.Position=Position
+VertexSymbols.Dialog.BackColor=Couleur de fond
+VertexSymbols.Dialog.ForeColor=Couleur de police
+VertexSymbols.Dialog.Border=Bordure
+VertexSymbols.Dialog.FillBackground=Remplissage
+VertexSymbols.Dialog.Scope=Appliquer aux
+VertexSymbols.Dialog.Points=Points
+VertexSymbols.Dialog.Lines=Lignes
+VertexSymbols.Dialog.Polygons=Polygones
+VertexSymbols.Dialog.Plain=Normal
+VertexSymbols.Dialog.Bold=Gras
+VertexSymbols.Dialog.PlainItalic=Italique
+VertexSymbols.Dialog.BoldItalic=Gras+Italique
+VertexSymbols.Dialog.Left=Gauche
+VertexSymbols.Dialog.Centre=Centre
+VertexSymbols.Dialog.Right=Droite
+VertexSymbols.Dialog.North=Nord
+VertexSymbols.Dialog.NorthEast=Nord-Est
+VertexSymbols.Dialog.East=Est
+VertexSymbols.Dialog.SouthEast=Sud-Est
+VertexSymbols.Dialog.South=Sud
+VertexSymbols.Dialog.SouthWest=Sud-Ouest
+VertexSymbols.Dialog.West=Ouest
+VertexSymbols.Dialog.NorthWest=Nord-Ouest
+VertexSymbols.Dialog.None=Aucun
+VertexSymbols.Dialog.Auto=Auto
+VertexSymbols.Dialog.Value=Valeur ->
+VertexSymbols.Dialog.None=Aucun
+VertexSymbols.Dialog.Boxed=Encadr\u00E9
+VertexSymbols.Dialog.Callout=Bulle
+VertexSymbols.Dialog.Labels=\xC9tiquettes
+VertexNote.Dialog.Editor=Editeur de notes
+VertexNote.Dialog.Message1=Vous devez d'abord s\u00E9lectionner un objet
+VertexNote.Dialog.ShowLabel=Montrer les \u00E9tiquettes
+VertexNote.Dialog.Message2=Une couche doit \u00EAtre s\u00E9lectionn\u00E9e.
+VertexNote.Dialog.Message3=La couche contenant des objets 
s\u00E9lectionn\u00E9s doit \u00EAtre \u00E9ditable.
+VertexNote.Dialog.Message4=L'objet s\u00E9lectionn\u00E9 doit \u00EAtre dans 
une couche avec un symbole externe.
+VertexNote.Dialog.SelectSymbol=S\u00E9lectionner un symbole
+


Property changes on: 
plug-ins/CadPlan_VertexSymbols/trunk/src/language/VertexSymbolsPlugin_fr.properties
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Added: 
plug-ins/CadPlan_VertexSymbols/trunk/src/language/VertexSymbolsPlugin_it.properties
===================================================================
--- 
plug-ins/CadPlan_VertexSymbols/trunk/src/language/VertexSymbolsPlugin_it.properties
                         (rev 0)
+++ 
plug-ins/CadPlan_VertexSymbols/trunk/src/language/VertexSymbolsPlugin_it.properties
 2020-05-31 06:40:03 UTC (rev 6269)
@@ -0,0 +1,81 @@
+#VertexSymbolsPlugin_it.properties
+VertexNote.Dialog.Editor=Editore Note Vertici
+VertexNote.Dialog.Message1=Devi prima selezionare un elemento.
+VertexNote.Dialog.Message2=Devi avere un livello selezionato.
+VertexNote.Dialog.Message3=Il livello contenente gli elementi selezionati deve 
essere modificabile.
+VertexNote.Dialog.Message4=Gli elementi selezionati devono essere in un 
livello con una simbologia esterna definita.
+VertexNote.Dialog.SelectSymbol=Seleziona Simbolo
+VertexNote.Dialog.ShowLabel=Mostra Etichetta
+VertexNote.MenuItem=Simbologia vertici - modifica/annotazione
+VertexNote.MenuName=Estensioni
+VertexSymbols.SymbolName = Simbolo:
+VertexSymbols.Dialog=Dialogo Simbologia Vertici
+VertexSymbols.Dialog.About=Info
+VertexSymbols.Dialog.Accept=OK
+VertexSymbols.Dialog.Attribute=Attributo
+VertexSymbols.Dialog.Auto=Auto
+VertexSymbols.Dialog.BackColor=Colore Interno
+VertexSymbols.Dialog.Bold=Neretto
+VertexSymbols.Dialog.BoldItalic=Neretto+Corsivo
+VertexSymbols.Dialog.Border=Bordo
+VertexSymbols.Dialog.Boxed=Riquadro
+VertexSymbols.Dialog.ByAttribute=Per Attributo
+VertexSymbols.Dialog.ByValue=Per Valore
+VertexSymbols.Dialog.Callout=Callout
+VertexSymbols.Dialog.BaseScale=Base Scale
+VertexSymbols.Dialog.SizeByScale=Size by Scale
+VertexSymbols.Dialog.Cancel=Annulla
+VertexSymbols.Dialog.Centre=Centro
+VertexSymbols.Dialog.Clear=Elimina
+VertexSymbols.Dialog.Dotted=Puntinato
+VertexSymbols.Dialog.East=Est
+VertexSymbols.Dialog.Enabled=Abilita
+VertexSymbols.Dialog.FillBackground=Riempimento
+VertexSymbols.Dialog.Font=Carattere
+VertexSymbols.Dialog.ForeColor=Colore Esterno
+VertexSymbols.Dialog.Image=Immagine
+VertexSymbols.Dialog.Left=Sinistra
+VertexSymbols.Dialog.Lines=Linee
+VertexSymbols.Dialog.None=Nessuno
+VertexSymbols.Dialog.North=Nord
+VertexSymbols.Dialog.NorthEast=Nord-Est
+VertexSymbols.Dialog.NorthWest=Nord-Ovest
+VertexSymbols.Dialog.Orientation=Orientazione
+VertexSymbols.Dialog.Plain=Chiaro
+VertexSymbols.Dialog.PlainItalic=Chiaro+Corsivo
+VertexSymbols.Dialog.Points=Punti
+VertexSymbols.Dialog.Polygons=Poligoni
+VertexSymbols.Dialog.Position=Posizione
+VertexSymbols.Dialog.Reset=Ripristina
+VertexSymbols.Dialog.Right=Destra
+VertexSymbols.Dialog.Scope=Campo
+VertexSymbols.Dialog.ShowFill=Mostra Riempimento
+VertexSymbols.Dialog.ShowLine=Mostra Linea
+VertexSymbols.Dialog.Size=Dimensione
+VertexSymbols.Dialog.South=Sud
+VertexSymbols.Dialog.SouthEast=Sud-Est
+VertexSymbols.Dialog.SouthWest=Sud-Ovest
+VertexSymbols.Dialog.Value=Valore ->
+VertexSymbols.Dialog.Vector=Vettore
+VertexSymbols.Dialog.Warning1=Errore nel campo Dimensione
+VertexSymbols.Dialog.Warning2=Errore nel campo Orientazione
+VertexSymbols.Dialog.Warning3=Errore nel campo basso della scala
+VertexSymbols.Dialog.Warning4=Dovete scegliere un tipo di vertice
+VertexSymbols.Dialog.Warning5=State circa per rimuovere i simboli speciali da 
questo strato.\nConfermi prego.
+VertexSymbols.Dialog.Warning6=I campi attributo e valori sono vuoti
+VertexSymbols.Dialog.West=Ovest
+VertexSymbols.Dialog.WKTshapes=WKT 
+VertexSymbols.MenuItem=Simboli
+VertexSymbols.MenuName=Estensione
+VertexSymbols.Dialog.Labels=Etichette
+VertexSymbols.Dialog.ActivateLabels=Mostra anche le etichette JUMP
+VertexSymbols.Dialog.ActivateLabels.tooltip=Mostra anche le etichette definite 
dal plugin di stile predefinito.\nIn questo caso verranno mostrate due 
etichettature
+
+VertexSymbols.Dialog.Warning7=Nessuna stile per attributo \xE8 stato attivato
+VertexSymbols.Dialog.Warning8=Attenzione. L'attibuto per la stilizzazione non 
esiste nello schema attributi del livello
+VertexSymbols.VertexColorThemingDualog.manual = Doppio click sul simbolo per 
cambiarlo
+VertexSymbols.Dialog.activate-line-decoration = Attiva la decorazione sulle 
linee
+VertexSymbols.Dialog.activate-line-decoration-tooltip = Inserisci simbolo 
lungo le linee a distanza regolare. Puoi definire la distanza lungo la linea, 
lo scostamento dalla linea e la rotazione dei simboli. La simbologia dei 
vertici verr\xE0 disattivata
+VertexSymbols.Dialog.line-distance=Distanza
+VertexSymbols.Dialog.line-distance=Scostamento
+VertexSymbols.Dialog.line-rotate=Ruota
\ No newline at end of file


Property changes on: 
plug-ins/CadPlan_VertexSymbols/trunk/src/language/VertexSymbolsPlugin_it.properties
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Added: plug-ins/CadPlan_VertexSymbols/trunk/src/plugins/StylerMenuPlugIn.java
===================================================================
--- plug-ins/CadPlan_VertexSymbols/trunk/src/plugins/StylerMenuPlugIn.java      
                        (rev 0)
+++ plug-ins/CadPlan_VertexSymbols/trunk/src/plugins/StylerMenuPlugIn.java      
2020-05-31 06:40:03 UTC (rev 6269)
@@ -0,0 +1,123 @@
+package com.cadplan.jump.plugins;
+
+import java.awt.GridLayout;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+
+import javax.swing.JMenuItem;
+import javax.swing.JPopupMenu;
+import javax.swing.JToggleButton;
+
+import org.openide.awt.DropDownButtonFactory;
+
+import com.cadplan.jump.icon.IconLoader;
+import com.cadplan.jump.language.I18NPlug;
+import com.cadplan.jump.utils.LoadSymbolFiles;
+import com.cadplan.jump.utils.VertexParams;
+import com.vividsolutions.jump.workbench.WorkbenchContext;
+import com.vividsolutions.jump.workbench.plugin.AbstractPlugIn;
+import com.vividsolutions.jump.workbench.plugin.EnableCheck;
+import com.vividsolutions.jump.workbench.plugin.EnableCheckFactory;
+import com.vividsolutions.jump.workbench.plugin.MultiEnableCheck;
+import com.vividsolutions.jump.workbench.plugin.PlugInContext;
+import com.vividsolutions.jump.workbench.ui.GUIUtil;
+import com.vividsolutions.jump.workbench.ui.renderer.style.BasicStyle;
+import com.vividsolutions.jump.workbench.ui.task.TaskMonitorManager;
+
+
+
+public class StylerMenuPlugIn extends AbstractPlugIn {
+
+
+       private PlugInContext context;
+
+       // the JToggleButton in the WorkbenchToolBar
+       private JToggleButton toolbarButton = null;
+
+       public static JMenuItem mi;
+       public static final String COLOR = "COLOR";
+       public static final String R_G_B = BasicStyle.RGB_ATTRIBUTE_NAME;
+       private TaskMonitorManager taskMonitorManager;
+       @Override
+       public void initialize(final PlugInContext context) throws Exception {
+               this.context = context;
+
+               toolbarButton = 
DropDownButtonFactory.createDropDownToggleButton(
+                               
GUIUtil.toSmallIcon(IconLoader.icon("Palette.png"), 20), 
+                               initPopupLazily());
+
+               // init popup takes a long time, defer it after workbench is 
shown
+               /*      SwingUtilities.invokeLater(new Runnable() {
+                       @Override
+                       public void run() {
+                               colorPickerPopup = initPopupLazily();
+                       }
+               });*/
+
+               LoadSymbolFiles loadSymbols = new LoadSymbolFiles(context);
+               loadSymbols.start();
+               VertexParams.context = context.getWorkbenchContext();
+
+
+               
context.getWorkbenchContext().getWorkbench().getFrame().getToolBar().add(toolbarButton);
+
+       }
+       final JPopupMenu popup = new JPopupMenu();
+       private JPopupMenu initPopupLazily() {
+
+               popup.setLayout(new GridLayout(0, 1));
+
+               mi = new JMenuItem(I18NPlug.getI18N("VertexSymbols.MenuItem"), 
+                               
GUIUtil.toSmallIcon(IconLoader.icon("vsicon.gif"), 20));
+               final VertexSymbolsPlugIn vertexSymbolsPlugIn = new 
VertexSymbolsPlugIn();
+               mi.setToolTipText(I18NPlug.getI18N("VertexSymbols.MenuItem"));
+               final ActionListener listener = 
AbstractPlugIn.toActionListener(vertexSymbolsPlugIn,
+                               context.getWorkbenchContext(), 
taskMonitorManager);
+               mi.addActionListener(new ActionListener() {
+                       @Override
+                       public void actionPerformed(ActionEvent e) {
+                               listener.actionPerformed(e);
+                       }
+               });
+               popup.add(mi);
+
+
+               mi = new JMenuItem(I18NPlug.getI18N("VertexNote.MenuItem"), 
+                               
GUIUtil.toSmallIcon(IconLoader.icon("noteicon.gif"), 20));
+               final VertexNotePlugin vertexnotePlugIn = new 
VertexNotePlugin();
+               mi.setToolTipText(I18NPlug.getI18N("VertexNote.MenuItem"));
+               final ActionListener listener2 = 
AbstractPlugIn.toActionListener(vertexnotePlugIn,
+                               context.getWorkbenchContext(), 
taskMonitorManager);
+               mi.addActionListener(new ActionListener() {
+                       @Override
+                       public void actionPerformed(ActionEvent e) {
+                               listener2.actionPerformed(e);
+                       }
+               });
+               popup.add(mi);
+               // the Button for the ToolBar
+
+               return popup;
+       }
+
+
+
+       @Override
+       public boolean execute(PlugInContext context) throws Exception {
+               return true;
+       }
+
+       public static EnableCheck createEnableCheck(
+                       WorkbenchContext workbenchContext, boolean b) {
+               final EnableCheckFactory checkFactory = new EnableCheckFactory(
+                               workbenchContext);
+
+               return new MultiEnableCheck().add(
+                               
checkFactory.createWindowWithLayerViewPanelMustBeActiveCheck())
+                               
.add(checkFactory.createAtLeastNLayersMustBeEditableCheck(1));
+       }
+
+
+
+
+}
\ No newline at end of file


Property changes on: 
plug-ins/CadPlan_VertexSymbols/trunk/src/plugins/StylerMenuPlugIn.java
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Added: plug-ins/CadPlan_VertexSymbols/trunk/src/plugins/VertexNoteDialog.java
===================================================================
--- plug-ins/CadPlan_VertexSymbols/trunk/src/plugins/VertexNoteDialog.java      
                        (rev 0)
+++ plug-ins/CadPlan_VertexSymbols/trunk/src/plugins/VertexNoteDialog.java      
2020-05-31 06:40:03 UTC (rev 6269)
@@ -0,0 +1,461 @@
+package com.cadplan.jump.plugins;
+
+import java.awt.Color;
+import java.awt.Component;
+import java.awt.Dimension;
+import java.awt.TextArea;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+import java.util.Collection;
+import java.util.Iterator;
+
+import javax.swing.ButtonGroup;
+import javax.swing.JButton;
+import javax.swing.JCheckBox;
+import javax.swing.JComboBox;
+import javax.swing.JDialog;
+import javax.swing.JFrame;
+import javax.swing.JLabel;
+import javax.swing.JOptionPane;
+import javax.swing.JPanel;
+import javax.swing.JPopupMenu;
+import javax.swing.JRadioButton;
+import javax.swing.JScrollPane;
+import javax.swing.JTabbedPane;
+import javax.swing.ToolTipManager;
+import javax.swing.event.ChangeEvent;
+import javax.swing.event.ChangeListener;
+
+import com.cadplan.designer.GridBagDesigner;
+import com.cadplan.jump.language.I18NPlug;
+import com.cadplan.jump.plugins.panel.TextLabelPanel;
+import com.cadplan.jump.ui.ImagePanel;
+import com.cadplan.jump.ui.VectorPanel;
+import com.cadplan.jump.ui.WKTPanel;
+import com.cadplan.jump.utils.AttributeManagerUtils;
+import com.cadplan.jump.utils.VertexParams;
+import com.cadplan.vertices.renderer.style.ExternalSymbolsImplType;
+import com.cadplan.vertices.renderer.style.ExternalSymbolsType;
+import com.vividsolutions.jts.geom.Geometry;
+import com.vividsolutions.jump.I18N;
+import com.vividsolutions.jump.feature.AttributeType;
+import com.vividsolutions.jump.feature.Feature;
+import com.vividsolutions.jump.feature.FeatureDataset;
+import com.vividsolutions.jump.feature.FeatureSchema;
+import com.vividsolutions.jump.workbench.model.Layer;
+import com.vividsolutions.jump.workbench.plugin.PlugInContext;
+import com.vividsolutions.jump.workbench.ui.renderer.style.ColorThemingStyle;
+import com.vividsolutions.jump.workbench.ui.renderer.style.VertexStyle;
+
+public class VertexNoteDialog extends JDialog implements ActionListener, 
ChangeListener {
+       private static final long serialVersionUID = 1L;
+       boolean debug = false;
+       PlugInContext context;
+       JCheckBox showLabelCB;
+       TextArea textArea;
+       JButton cancelButton;
+       JButton clearButton;
+       JButton acceptButton;
+       JButton resetButton;
+       Layer[] layers;
+       String textValue;
+       boolean showLabel;
+       VertexStyle vertexStyle;
+       Feature selectedFeature;
+       int textAttributeIndex;
+       FeatureDataset dataset;
+       boolean allowEdit = true;
+       JTabbedPane tabbedPane;
+       VectorPanel vectorPanel;
+       ImagePanel imagePanel;
+       WKTPanel wktPanel;
+       TextLabelPanel labelPanel;
+       ButtonGroup group;
+       ButtonGroup rotateGroup;
+       JRadioButton absValueRB;
+       JRadioButton byAttributeRB;
+       JComboBox attributeCB;
+       JScrollPane scrollPane;
+       JScrollPane scrollPane2;
+       String symbolName = "";
+       int symbolType;
+       int symbolNumber;
+       AttributeManagerUtils manager = new AttributeManagerUtils();
+
+       public VertexNoteDialog(PlugInContext context) {
+               super(new JFrame(), 
I18NPlug.getI18N("VertexNote.Dialog.Editor"), true);
+               this.context = context;
+               this.layers = context.getSelectedLayers();
+               if (this.layers.length <= 1) {
+                       if (this.layers != null && this.layers.length != 0) {
+                               if 
(ColorThemingStyle.get(this.layers[0]).isEnabled()) {
+                                       
JOptionPane.showMessageDialog((Component)null, 
I18NPlug.getI18N("VertexNote.Dialog.Message8"), 
+                                                       
I18N.get("ui.WorkbenchFrame.warning"), 2);      
+                                       return;
+                               }
+
+                               boolean isEditable = 
this.layers[0].isEditable();
+                               if (!isEditable) {
+                                       
JOptionPane.showMessageDialog((Component)null, 
I18NPlug.getI18N("VertexNote.Dialog.Message3"), 
+                                                       
I18N.get("ui.WorkbenchFrame.warning"), 2);
+                                       return;
+                               } else {
+                                       this.vertexStyle = 
this.layers[0].getVertexStyle();
+                                       VertexParams.selectedLayer = 
this.layers[0];
+
+                                       try {
+                                               String textAttributeName = null;
+
+                                               try {
+                                                       textAttributeName = 
((ExternalSymbolsType)this.vertexStyle).getTextAttributeName();
+                                               } catch (ClassCastException 
var9) {
+                                                       
JOptionPane.showMessageDialog((Component)null, 
I18NPlug.getI18N("VertexNote.Dialog.Message4"), 
+                                                                       
I18N.get("ui.WorkbenchFrame.warning"), 2);
+                                                       return;
+                                               }
+
+                                               this.selectedFeature = 
this.getSelectedPoint();
+                                               if (this.selectedFeature == 
null) {
+                                                       
JOptionPane.showMessageDialog((Component)null, 
I18NPlug.getI18N("VertexNote.Dialog.Message1"), 
+                                                                       
I18N.get("ui.WorkbenchFrame.warning"), 2);
+                                                       return;
+                                               }
+
+                                               if (this.debug) {
+                                                       
System.out.println("Feature=" + this.selectedFeature);
+                                               }
+
+                                               FeatureSchema featureSchema = 
this.selectedFeature.getSchema();
+                                               if (this.debug) {
+                                                       
System.out.println("Initial feature size: " + 
featureSchema.getAttributeCount());
+                                               }
+
+                                               int i;
+                                               try {
+                                                       i = 
featureSchema.getAttributeIndex("ShowLabel");
+                                                       if (this.debug) {
+                                                               
System.out.println("ShowLabel found at i=" + i);
+                                                       }
+                                               } catch (Exception var8) {
+                                                       
this.manager.addAttribute(this.layers[0], "ShowLabel", AttributeType.INTEGER);
+                                               }
+
+                                               try {
+                                                       i = 
featureSchema.getAttributeIndex("SymbolName");
+                                                       if (this.debug) {
+                                                               
System.out.println("SymbolName found at i=" + i);
+                                                       }
+                                               } catch (Exception var7) {
+                                                       
this.manager.addAttribute(this.layers[0], "SymbolName", AttributeType.STRING);
+                                               }
+
+                                               if 
(textAttributeName.equals("$FID")) {
+                                                       this.textAttributeIndex 
= -1;
+                                               } else if 
(textAttributeName.equals("$POINT")) {
+                                                       this.textAttributeIndex 
= -2;
+                                               } else {
+                                                       try {
+                                                               
this.textAttributeIndex = featureSchema.getAttributeIndex(textAttributeName);
+                                                       } catch 
(IllegalArgumentException var6) {
+                                                               
this.textAttributeIndex = -1;
+                                                       }
+                                               }
+
+                                               if (this.textAttributeIndex < 
0) {
+                                                       this.allowEdit = false;
+                                               }
+
+                                               
((ExternalSymbolsType)this.vertexStyle).setTextAttributeValue(this.selectedFeature);
+                                               this.textValue = 
((ExternalSymbolsType)this.vertexStyle).getTextAttributeValue();
+                                               this.showLabel = 
((ExternalSymbolsType)this.vertexStyle).getShowNote();
+                                               if (this.vertexStyle instanceof 
ExternalSymbolsImplType) {
+                                                       this.symbolName = 
((ExternalSymbolsImplType)this.vertexStyle).getActualSymbolName();
+                                                       this.symbolType = 
((ExternalSymbolsImplType)this.vertexStyle).getSymbolType();
+                                                       this.symbolNumber = 
((ExternalSymbolsImplType)this.vertexStyle).getSymbolNumber();
+                                                       if (this.debug) {
+                                                               
System.out.println("Getting current symbol: name=" + this.symbolName + "  
number=" + this.symbolNumber + "  type=" + this.symbolType);
+                                                       }
+                                               }
+
+                                               this.init();
+                                       } catch (Exception var10) {
+                                               System.out.println("ERROR: " + 
var10);
+                                               var10.printStackTrace();
+                                       }
+
+                               }
+                       } else {
+                               JOptionPane.showMessageDialog((Component)null, 
I18NPlug.getI18N("VertexNote.Dialog.Message2"), "Warning...", 2);
+                       }
+               }
+       }
+
+       public void init() {
+               JPopupMenu.setDefaultLightWeightPopupEnabled(false);
+               ToolTipManager ttm = ToolTipManager.sharedInstance();
+               ttm.setLightWeightPopupEnabled(false);
+               GridBagDesigner gb = new GridBagDesigner(this);
+               this.showLabelCB = new 
JCheckBox(I18NPlug.getI18N("VertexNote.Dialog.ShowLabel"));
+               gb.setPosition(0, 0);
+               gb.setInsets(10, 10, 0, 0);
+               gb.addComponent(this.showLabelCB);
+               this.showLabelCB.setSelected(this.showLabel);
+               this.textArea = new TextArea("", 5, 50, 1);
+               gb.setPosition(1, 0);
+               gb.setInsets(10, 0, 0, 10);
+               gb.setFill(1);
+               gb.setWeight(1.0D, 1.0D);
+               gb.addComponent(this.textArea);
+               this.textArea.setText(this.textValue);
+               this.textArea.setEditable(this.allowEdit);
+               JLabel vertexLabel = new 
JLabel(I18NPlug.getI18N("VertexNote.Dialog.SelectSymbol"));
+               gb.setPosition(0, 1);
+               gb.setInsets(10, 10, 10, 0);
+               gb.setAnchor(11);
+               gb.addComponent(vertexLabel);
+               this.group = new ButtonGroup();
+               this.tabbedPane = new JTabbedPane(1);
+               this.tabbedPane.addChangeListener(this);
+               this.vectorPanel = new VectorPanel(this.group, 
VertexParams.selectedLayer.getBasicStyle().getLineColor(), 
VertexParams.selectedLayer.getBasicStyle().getFillColor());
+               this.vectorPanel.setBackground(Color.WHITE);
+               
this.tabbedPane.addTab(I18NPlug.getI18N("VertexSymbols.Dialog.Vector"), 
this.vectorPanel);
+               this.wktPanel = new WKTPanel(this.group, 
VertexParams.selectedLayer.getBasicStyle().getLineColor(), 
VertexParams.selectedLayer.getBasicStyle().getFillColor());
+               this.wktPanel.setBackground(Color.WHITE);
+               this.scrollPane2 = new JScrollPane(this.wktPanel);
+               this.scrollPane2.setPreferredSize(new Dimension(400, 300));
+               
this.tabbedPane.addTab(I18NPlug.getI18N("VertexSymbols.Dialog.WKTshapes"), 
this.scrollPane2);
+               this.imagePanel = new ImagePanel(this.group);
+               this.imagePanel.setBackground(Color.WHITE);
+               this.scrollPane = new JScrollPane(this.imagePanel);
+               this.scrollPane.setPreferredSize(new Dimension(400, 300));
+               
this.tabbedPane.addTab(I18NPlug.getI18N("VertexSymbols.Dialog.Image"), 
this.scrollPane);
+               gb.setPosition(1, 1);
+               gb.setFill(1);
+               gb.setInsets(10, 0, 10, 10);
+               gb.addComponent(this.tabbedPane);
+               JPanel bottomPanel = new JPanel();
+               GridBagDesigner gbb = new GridBagDesigner(bottomPanel);
+               this.cancelButton = new 
JButton(I18NPlug.getI18N("VertexSymbols.Dialog.Cancel"));
+               gbb.setPosition(0, 0);
+               gbb.setInsets(10, 10, 10, 0);
+               gbb.addComponent(this.cancelButton);
+               this.cancelButton.addActionListener(this);
+               this.clearButton = new 
JButton(I18NPlug.getI18N("VertexSymbols.Dialog.Clear"));
+               gbb.setPosition(1, 0);
+               gbb.setInsets(10, 10, 10, 0);
+               gbb.addComponent(this.clearButton);
+               this.clearButton.addActionListener(this);
+               this.resetButton = new 
JButton(I18NPlug.getI18N("VertexSymbols.Dialog.Reset"));
+               gbb.setPosition(2, 0);
+               gbb.setInsets(10, 10, 10, 10);
+               gbb.addComponent(this.resetButton);
+               this.resetButton.addActionListener(this);
+               this.acceptButton = new 
JButton(I18NPlug.getI18N("VertexSymbols.Dialog.Accept"));
+               gbb.setPosition(3, 0);
+               gbb.setInsets(10, 10, 10, 10);
+               gbb.setAnchor(13);
+               gbb.addComponent(this.acceptButton);
+               this.acceptButton.addActionListener(this);
+               gb.setPosition(0, 2);
+               gb.setSpan(2, 1);
+               gb.addComponent(bottomPanel);
+               this.setValues();
+               this.pack();
+               this.setVisible(true);
+       }
+
+       private void setValues() {
+               this.setCurrentSymbolName();
+       }
+
+       private void getValues() {
+               this.symbolName = this.getSymbolName();
+               this.symbolType = this.getSymbolType();
+       }
+
+       public void setCurrentSymbolName() {
+               if (this.debug) {
+                       System.out.println("Setting current symbol: name=" + 
this.symbolName + "  number=" + this.symbolNumber + "  type=" + 
this.symbolType);
+               }
+
+               int n = 
this.vectorPanel.symbolPanel.getTypeIndex(this.symbolNumber, this.symbolType);
+               if (n >= 0) {
+                       
this.vectorPanel.symbolPanel.vertexRB[n].setSelected(true);
+               } else {
+                       if (this.symbolType == 4) {
+                               n = 
this.vectorPanel.symbolPanel.getImageIndex(this.symbolName);
+                               if (this.debug) {
+                                       System.out.println("Image update: " + 
this.symbolName + "  n=" + n);
+                               }
+
+                               if (n >= 0) {
+                                       
this.imagePanel.getImageRB()[n].setSelected(true);
+                                       return;
+                               }
+                       } else if (this.symbolType == 3) {
+                               n = 
this.vectorPanel.symbolPanel.getWKTIndex(this.symbolName);
+                               if (n >= 0) {
+                                       
this.wktPanel.getImageRB()[n].setSelected(true);
+                               }
+                       }
+
+               }
+       }
+
+       public String getSymbolName() {
+               int i;
+               for(i = 0; i < this.vectorPanel.symbolPanel.vertexRB.length; 
++i) {
+                       if 
(this.vectorPanel.symbolPanel.vertexRB[i].isSelected()) {
+                               if (i < 7) {
+                                       return "@poly" + 
String.valueOf(this.vectorPanel.symbolPanel.getSides()[i]);
+                               }
+
+                               if (i < 14) {
+                                       return "@star" + 
String.valueOf(this.vectorPanel.symbolPanel.getSides()[i]);
+                               }
+
+                               return "@any" + 
String.valueOf(this.vectorPanel.symbolPanel.getSides()[i]);
+                       }
+               }
+
+               for(i = 0; i < this.imagePanel.getImageRB().length; ++i) {
+                       if (this.imagePanel.getImageRB()[i].isSelected()) {
+                               return VertexParams.imageNames[i];
+                       }
+               }
+
+               for(i = 0; i < this.wktPanel.getImageRB().length; ++i) {
+                       if (this.wktPanel.getImageRB()[i].isSelected()) {
+                               return VertexParams.wktNames[i];
+                       }
+               }
+
+               return null;
+       }
+
+       public int getSymbolType() {
+               int i;
+               for(i = 0; i < this.vectorPanel.symbolPanel.vertexRB.length; 
++i) {
+                       if 
(this.vectorPanel.symbolPanel.vertexRB[i].isSelected()) {
+                               if (i < 7) {
+                                       return 0;
+                               }
+
+                               if (i < 14) {
+                                       return 1;
+                               }
+
+                               return 2;
+                       }
+               }
+
+               for(i = 0; i < this.imagePanel.getImageRB().length; ++i) {
+                       if (this.imagePanel.getImageRB()[i].isSelected()) {
+                               return 4;
+                       }
+               }
+
+               for(i = 0; i < this.wktPanel.getImageRB().length; ++i) {
+                       if (this.wktPanel.getImageRB()[i].isSelected()) {
+                               return 3;
+                       }
+               }
+
+               return -1;
+       }
+
+       private Feature getSelectedPoint() {
+               Feature feature = null;
+               Collection selectedItems = 
this.context.getLayerViewPanel().getSelectionManager().getFeaturesWithSelectedItems();
+               if (this.debug) {
+                       System.out.println("Number of selected items: " + 
selectedItems.size());
+               }
+
+               if (selectedItems.size() != 1) {
+                       return null;
+               } else {
+                       Iterator i = selectedItems.iterator();
+                       if (i.hasNext()) {
+                               feature = (Feature)i.next();
+                               Geometry geometry = feature.getGeometry();
+                               if (this.debug) {
+                                       System.out.println("Geometry: " + 
geometry.toString());
+                               }
+
+                               return feature;
+                       } else {
+                               return null;
+                       }
+               }
+       }
+
+       @Override
+       public void stateChanged(ChangeEvent ev) {
+       }
+
+       @Override
+       public void actionPerformed(ActionEvent ev) {
+               if (ev.getSource() == this.cancelButton) {
+                       this.dispose();
+               }
+
+               FeatureSchema featureSchema;
+               if (ev.getSource() == this.acceptButton) {
+                       int show = 0;
+                       this.getValues();
+                       if (this.showLabelCB.isSelected()) {
+                               show = 1;
+                       }
+
+                       featureSchema = 
this.layers[0].getFeatureCollectionWrapper().getFeatureSchema();
+                       if (this.debug) {
+                               System.out.println("Updated schema: num=" + 
featureSchema.getAttributeCount());
+                       }
+
+                       int numAtt = 
this.selectedFeature.getAttributes().length;
+                       if (this.debug) {
+                               System.out.println("Num feature att: " + 
numAtt);
+                       }
+
+                       try {
+                               this.selectedFeature.setAttribute("ShowLabel", 
Integer.valueOf(show));
+                               this.selectedFeature.setAttribute("SymbolName", 
this.symbolName);
+                       } catch (IllegalArgumentException var8) {
+                               JOptionPane.showMessageDialog((Component)null, 
I18NPlug.getI18N("VertexNote.Dialog.Message3"), "Warning...", 2);
+                       }
+
+                       if (this.textAttributeIndex >= 0) {
+                               
this.selectedFeature.setAttribute(this.textAttributeIndex, 
this.textArea.getText());
+                       }
+
+                       this.layers[0].fireAppearanceChanged();
+                       this.dispose();
+               }
+
+               if (ev.getSource() == this.clearButton) {
+                       this.textArea.setText("");
+               }
+
+               if (ev.getSource() == this.resetButton) {
+                       int response = JOptionPane.showConfirmDialog(this, 
I18NPlug.getI18N("VertexSymbols.Dialog.Warning5"), "Warning...", 2);
+                       if (response == 2) {
+                               return;
+                       }
+
+                       featureSchema = this.selectedFeature.getSchema();
+
+                       try {
+                               this.manager.delAttribute(this.layers[0], 
"ShowLabel");
+                       } catch (Exception var7) {
+                       }
+
+                       try {
+                               this.manager.delAttribute(this.layers[0], 
"SymbolName");
+                       } catch (Exception var6) {
+                       }
+
+                       this.dispose();
+               }
+
+       }
+}


Property changes on: 
plug-ins/CadPlan_VertexSymbols/trunk/src/plugins/VertexNoteDialog.java
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Added: plug-ins/CadPlan_VertexSymbols/trunk/src/plugins/VertexNotePlugin.java
===================================================================
--- plug-ins/CadPlan_VertexSymbols/trunk/src/plugins/VertexNotePlugin.java      
                        (rev 0)
+++ plug-ins/CadPlan_VertexSymbols/trunk/src/plugins/VertexNotePlugin.java      
2020-05-31 06:40:03 UTC (rev 6269)
@@ -0,0 +1,41 @@
+package com.cadplan.jump.plugins;
+
+import javax.swing.ImageIcon;
+
+import com.cadplan.jump.icon.IconLoader;
+import com.cadplan.jump.language.I18NPlug;
+import com.vividsolutions.jump.workbench.plugin.AbstractPlugIn;
+import com.vividsolutions.jump.workbench.plugin.EnableCheck;
+import com.vividsolutions.jump.workbench.plugin.EnableCheckFactory;
+import com.vividsolutions.jump.workbench.plugin.MultiEnableCheck;
+import com.vividsolutions.jump.workbench.plugin.PlugInContext;
+import com.vividsolutions.jump.workbench.ui.LayerViewPanel;
+import com.vividsolutions.jump.workbench.ui.MenuNames;
+
+public class VertexNotePlugin extends AbstractPlugIn {
+       public static ImageIcon ICON = IconLoader.icon("noteicon.gif");
+
+       @Override
+       public void initialize(PlugInContext paramPlugInContext) throws 
Exception {
+               EnableCheckFactory check = new 
EnableCheckFactory(paramPlugInContext.getWorkbenchContext());
+               EnableCheck scheck = 
check.createAtLeastNFeaturesMustBeSelectedCheck(1);
+               MultiEnableCheck mcheck = new MultiEnableCheck();
+               mcheck.add(check.createAtLeastNLayersMustExistCheck(1));
+               mcheck.add(check.createAtLeastNLayersMustBeEditableCheck(1));
+               String str = MenuNames.PLUGINS;
+               
paramPlugInContext.getFeatureInstaller().addMainMenuPlugin(this, new 
String[]{str, MenuNames.STYLE}, this.getName(), false, ICON, mcheck);
+               // 
paramPlugInContext.getWorkbenchFrame().getToolBar().addPlugIn(ICON, this, 
mcheck, paramPlugInContext.getWorkbenchContext());
+               
paramPlugInContext.getFeatureInstaller().addPopupMenuPlugin(LayerViewPanel.popupMenu(),
 this, this.getName(), false, ICON, scheck);
+       }
+
+       @Override
+       public String getName() {
+               return I18NPlug.getI18N("VertexNote.MenuItem");
+       }
+
+       @Override
+       public boolean execute(PlugInContext paramPlugInContext) throws 
Exception {
+               new VertexNoteDialog(paramPlugInContext);
+               return true;
+       }
+}


Property changes on: 
plug-ins/CadPlan_VertexSymbols/trunk/src/plugins/VertexNotePlugin.java
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Added: 
plug-ins/CadPlan_VertexSymbols/trunk/src/plugins/VertexSymbolsClassificationDialog.java
===================================================================
--- 
plug-ins/CadPlan_VertexSymbols/trunk/src/plugins/VertexSymbolsClassificationDialog.java
                             (rev 0)
+++ 
plug-ins/CadPlan_VertexSymbols/trunk/src/plugins/VertexSymbolsClassificationDialog.java
     2020-05-31 06:40:03 UTC (rev 6269)
@@ -0,0 +1,356 @@
+package com.cadplan.jump.plugins;
+
+import java.awt.Color;
+import java.awt.Dimension;
+import java.awt.GridBagLayout;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+import java.util.Map;
+
+import javax.swing.JCheckBox;
+import javax.swing.JDialog;
+import javax.swing.JFormattedTextField;
+import javax.swing.JFrame;
+import javax.swing.JLabel;
+import javax.swing.JPanel;
+import javax.swing.JPopupMenu;
+import javax.swing.JTextField;
+import javax.swing.ToolTipManager;
+import javax.swing.event.ChangeEvent;
+import javax.swing.event.ChangeListener;
+
+import org.saig.core.gui.swing.sldeditor.util.FormUtils;
+
+import com.cadplan.designer.GridBagDesigner;
+import com.cadplan.jump.language.I18NPlug;
+import com.cadplan.jump.plugins.panel.ColorPanel;
+import com.cadplan.jump.plugins.panel.VertexSymbologyPanel;
+import com.cadplan.jump.utils.DataWrapper;
+import com.cadplan.jump.utils.VertexParams;
+import com.cadplan.vertices.renderer.style.ExternalSymbolsImplType;
+import com.vividsolutions.jump.I18N;
+import com.vividsolutions.jump.feature.Feature;
+import com.vividsolutions.jump.feature.FeatureDataset;
+import com.vividsolutions.jump.workbench.model.Layer;
+import com.vividsolutions.jump.workbench.ui.GUIUtil;
+import com.vividsolutions.jump.workbench.ui.OKCancelApplyPanel;
+import com.vividsolutions.jump.workbench.ui.renderer.style.BasicStyle;
+
+public class VertexSymbolsClassificationDialog extends JDialog implements 
ActionListener, ChangeListener {
+       private static final long serialVersionUID = 1L;
+       private String value = "";
+       private ExternalSymbolsImplType style;
+       boolean debug = false;
+       OKCancelApplyPanel okCancelApplyPanel = new OKCancelApplyPanel();
+       Layer layer;
+       Feature selectedFeature;
+       FeatureDataset dataset;
+       boolean allowEdit = true;
+       VertexSymbologyPanel symbologyPanel;
+       String symbolName = "";
+       int symbolType;
+       int symbolNumber;
+       Integer dimension;
+       Color line;
+       Color inner;
+       private ColorPanel colorPanel;
+
+       public JFormattedTextField sizeField;
+       public JLabel sizeLabel;
+
+       public String name;
+       private JLabel styleLabel,lineLabel;
+       private JLabel attribLabel;
+       private JTextField styleField;
+       private JTextField attribField;
+       public JLabel distanceLabel;
+       public JLabel offsetLabel;
+       public JCheckBox rotationCB;
+       public JFormattedTextField distanceField;
+       public JFormattedTextField offsetField;
+
+
+       private int distance;
+
+       private double offset ;
+
+       private   boolean rotate ;
+
+       public VertexSymbolsClassificationDialog(String value, 
+                       ExternalSymbolsImplType style, 
+                       Integer dimension, 
+                       Integer distance, 
+                       double offset, 
+                       boolean rotate) {
+               super(new JFrame(), true);
+               this.value = value;
+               this.style = style;
+               this.layer = VertexParams.selectedLayer;
+               this.dimension = dimension;
+               this.distance = distance;
+               this.offset= offset;
+               this.rotate=rotate;
+               this.init();
+       }
+
+       public void init() {
+               JPopupMenu.setDefaultLightWeightPopupEnabled(false);
+               ToolTipManager ttm = ToolTipManager.sharedInstance();
+               ttm.setLightWeightPopupEnabled(false);
+               this.setValues();
+
+               this.symbologyPanel = new VertexSymbologyPanel(this.line, 
this.inner);
+
+               this.styleLabel = new 
JLabel(I18NPlug.getI18N("VertexSymbols.SymbolName"));
+               this.attribLabel = new 
JLabel(I18N.get("ui.renderer.style.ColorThemingTableModel.attribute-value") + 
": ");
+               this.styleField = new JTextField();
+               this.styleField.setMinimumSize(new Dimension(75, 20));
+               //      this.styleField.setPreferredSize(new Dimension(180, 
20));
+               this.styleField.setText(this.name);
+               this.styleField.setEditable(false);
+               this.attribField = new JTextField();
+               this.attribField.setMinimumSize(new Dimension(75, 20));
+               this.attribField.setPreferredSize(new Dimension(90, 20));
+               this.attribField.setText(this.value);
+               this.attribField.setEditable(false);
+
+               this.sizeLabel = new 
JLabel(I18NPlug.getI18N("VertexSymbols.Dialog.Size") + ": ");
+               this.sizeField = new JFormattedTextField();
+               this.sizeField.setColumns(5); 
+               this.sizeField.setValue(dimension);
+
+
+               this.colorPanel = new ColorPanel(this.line, this.inner);
+               //      this.colorPanel.removeDimensionBox();
+
+               GridBagDesigner gb = new GridBagDesigner(this);
+               gb.setPosition(0, 0);
+               gb.setSpan(4, 1);
+               gb.setWeight(1.0D, 1.0D);
+               gb.setFill(1);
+               gb.addComponent(this.symbologyPanel);
+               this.symbologyPanel.addChangeListener(new ChangeListener() {
+                       @Override
+                       public void stateChanged(ChangeEvent e) {
+                               if ( symbologyPanel.getSelectedIndex() == 2) {
+                                       
colorPanel.fillColorButton.setEnabled(false);
+                                       
colorPanel.lineColorButton.setEnabled(false);
+                                       
colorPanel.synchronizeCheckBox.setEnabled(false);
+                                       
colorPanel.fillColorLabel.setEnabled(false);
+                                       
colorPanel.lineColorLabel.setEnabled(false);
+                               } else {
+                                       
colorPanel.fillColorButton.setEnabled(true);
+                                       
colorPanel.lineColorButton.setEnabled(true);
+                                       
colorPanel.synchronizeCheckBox.setEnabled(true);
+                                       
colorPanel.fillColorLabel.setEnabled(true);
+                                       
colorPanel.lineColorLabel.setEnabled(true);
+                               }
+
+                       }
+               });
+               JPanel jPanel = new JPanel(new GridBagLayout());
+               FormUtils.addRowInGBL(jPanel, 0, 0, this.attribLabel, 
this.attribField, false);
+               FormUtils.addRowInGBL(jPanel, 0, 2, this.styleLabel, 
this.styleField, false);
+
+               FormUtils.addRowInGBL(jPanel, 0, 4, this.sizeLabel, 
this.sizeField, false);
+
+
+               String line ="<html><font color=black size=3>"
+                               + "<b>" + 
I18NPlug.getI18N("VertexSymbols.Dialog.line-decoration") + "</b></html>";
+               this.lineLabel = new JLabel(line);
+
+               this.distanceField = new JFormattedTextField();
+               this.offsetField = new JFormattedTextField();
+               this.distanceField.setColumns(5); 
+               this.offsetField.setColumns(5); 
+
+               this.offsetLabel= new 
JLabel(I18NPlug.getI18N("VertexSymbols.Dialog.line-offset") + ": ");
+               this.distanceLabel= new 
JLabel(I18NPlug.getI18N("VertexSymbols.Dialog.line-distance") + ": ");
+               this.rotationCB = new 
JCheckBox(I18NPlug.getI18N("VertexSymbols.Dialog.line-rotate"));
+               
this.rotationCB.setToolTipText(I18NPlug.getI18N("VertexSymbols.Dialog.line-rotate-tooltip"));
+               
this.distanceLabel.setToolTipText(I18NPlug.getI18N("VertexSymbols.Dialog.line-distance-tooltip"));
+               
this.offsetLabel.setToolTipText(I18NPlug.getI18N("VertexSymbols.Dialog.line-offset-tooltip"));
+
+
+               this.distanceField.setValue(this.distance);
+               this.offsetField.setValue(this.offset);
+               this.rotationCB.setSelected(this.rotate);
+
+               this.lineLabel.setEnabled(VertexParams.lineDecoration);
+               this.distanceField.setEnabled(VertexParams.lineDecoration);
+               this.offsetField.setEnabled(VertexParams.lineDecoration);
+               this.distanceLabel.setEnabled(VertexParams.lineDecoration);
+               this.offsetLabel.setEnabled(VertexParams.lineDecoration);
+               this.rotationCB.setEnabled(VertexParams.lineDecoration); 
+
+               JPanel linePanel = new JPanel(new GridBagLayout());
+               FormUtils.addRowInGBL(linePanel, 0, 0, this.distanceLabel, 
this.distanceField, false); 
+               FormUtils.addRowInGBL(linePanel, 0, 2, this.offsetLabel, 
this.offsetField, false); 
+               FormUtils.addRowInGBL(linePanel, 0,4, rotationCB);
+
+               FormUtils.addRowInGBL(jPanel, 1, 0, lineLabel, true, true);
+               FormUtils.addRowInGBL(jPanel, 1, 1, linePanel, true, true);
+
+               FormUtils.addRowInGBL(jPanel, 2, 0, this.colorPanel, true, 
true);
+               gb.setPosition(0, 1);
+               gb.setFill(2);
+               gb.setInsets(10, 0, 0, 0);
+               gb.setSpan(4, 1);
+               gb.addComponent(jPanel);
+               this.okCancelApplyPanel = new OKCancelApplyPanel();
+               this.okCancelApplyPanel.addActionListener(this);
+               gb.setPosition(0, 2);
+               gb.setInsets(0, 10, 5, 5);
+               gb.setSpan(3, 1);
+               gb.addComponent(this.okCancelApplyPanel);
+               this.setJRadioButtonSelection();
+               this.pack();
+       }
+
+       public void setValues() {
+               this.name = this.style.getActualSymbolName();
+
+               try {
+                       Map<Object, BasicStyle> attributeValueToBasicStyleMap = 
VertexParams.classificationStyle.getAttributeValueToBasicStyleMap();
+                       BasicStyle style = 
attributeValueToBasicStyleMap.get(this.value);
+                       this.line = GUIUtil.alphaColor(style.getLineColor(), 
style.getAlpha());
+                       this.inner = GUIUtil.alphaColor(style.getFillColor(), 
style.getAlpha());
+               } catch (Exception var3) {
+                       this.line = 
GUIUtil.alphaColor(this.layer.getBasicStyle().getLineColor(), 
this.layer.getBasicStyle().getAlpha());
+                       this.inner = 
GUIUtil.alphaColor(this.layer.getBasicStyle().getFillColor(), 
this.layer.getBasicStyle().getAlpha());
+               }
+
+       }
+
+       public void setJRadioButtonSelection() {
+               int b;
+               for(b = 0; b < 
this.symbologyPanel.vectorPanel.symbolPanel.vertexRB.length; ++b) {
+                       String side = 
String.valueOf(this.symbologyPanel.vectorPanel.symbolPanel.getSides()[b]);
+                       if (b < 7 & this.name.equals("@poly" + side)) {
+                               
this.symbologyPanel.vectorPanel.symbolPanel.vertexRB[b].setSelected(true);
+                               
this.symbologyPanel.setSelectedComponent(this.symbologyPanel.getComponent(0));
+                       } else if (b < 14 & this.name.equals("@star" + side)) {
+                               
this.symbologyPanel.vectorPanel.symbolPanel.vertexRB[b].setSelected(true);
+                               
this.symbologyPanel.setSelectedComponent(this.symbologyPanel.getComponent(0));
+                       } else if (this.name.equals("@any" + side)) {
+                               
this.symbologyPanel.vectorPanel.symbolPanel.vertexRB[b].setSelected(true);
+                               
this.symbologyPanel.setSelectedComponent(this.symbologyPanel.getComponent(0));
+                       }
+               }
+
+               for(b = 0; b < 
this.symbologyPanel.imagePanel.getImageRB().length; ++b) {
+                       if (this.name.equals(VertexParams.imageNames[b])) {
+                               
this.symbologyPanel.imagePanel.getImageRB()[b].setSelected(true);
+                               
this.symbologyPanel.setSelectedComponent(this.symbologyPanel.getComponent(2));
+                       }
+               }
+
+               for(b = 0; b < 
this.symbologyPanel.wktPanel.getImageRB().length; ++b) {
+                       if (this.name.equals(VertexParams.wktNames[b])) {
+                               
this.symbologyPanel.wktPanel.getImageRB()[b].setSelected(true);
+                               
this.symbologyPanel.setSelectedComponent(this.symbologyPanel.getComponent(1));
+                       }
+               }
+
+       }
+
+       public void setOKEnabled(boolean okEnabled) {
+               this.okCancelApplyPanel.setOKEnabled(okEnabled);
+       }
+
+       public boolean wasOKPressed() {
+               return this.okCancelApplyPanel.wasOKPressed();
+       }
+
+       @Override
+       public void actionPerformed(ActionEvent ev) {
+               Integer dimension =  
((Number)this.sizeField.getValue()).intValue();//this.colorPanel.getDimension();
+               Integer distance = 
((Number)this.distanceField.getValue()).intValue();
+               double offset = ((Number) 
this.offsetField.getValue()).doubleValue();
+               boolean rotate = this.rotationCB.isSelected();
+               if (this.wasOKPressed()) {
+                       VertexParams.getClassificationMap().replace(this.value, 
+                                       new DataWrapper(this.getSymbolName(),
+                                                       dimension, 
+                                                       distance,
+                                                       offset,rotate));
+                       Map<Object, BasicStyle> attributeValueToBasicStyleMap = 
VertexParams.classificationStyle.getAttributeValueToBasicStyleMap();
+                       BasicStyle style = 
attributeValueToBasicStyleMap.get(this.value);
+                       style.setLineColor(this.colorPanel.getLineColor());
+                       style.setFillColor(this.colorPanel.getFillColor());
+                       this.removeJRadioButtonSelection();
+                       this.dispose();
+               } else {
+                       this.removeJRadioButtonSelection();
+                       this.dispose();
+               }
+
+               this.layer.fireAppearanceChanged();
+               this.layer.setFeatureCollectionModified(true);
+       }
+
+       public void removeJRadioButtonSelection() {
+               int b;
+               for(b = 0; b < 
this.symbologyPanel.vectorPanel.symbolPanel.vertexRB.length; ++b) {
+                       
this.symbologyPanel.vectorPanel.symbolPanel.vertexRB[b].setSelected(false);
+               }
+
+               for(b = 0; b < 
this.symbologyPanel.imagePanel.getImageRB().length; ++b) {
+                       
this.symbologyPanel.imagePanel.getImageRB()[b].setSelected(false);
+               }
+
+               for(b = 0; b < 
this.symbologyPanel.wktPanel.getImageRB().length; ++b) {
+                       
this.symbologyPanel.wktPanel.getImageRB()[b].setSelected(false);
+               }
+
+       }
+
+       public ExternalSymbolsImplType getSymbol() {
+               ExternalSymbolsImplType newStyle = new 
ExternalSymbolsImplType();
+               newStyle.setSymbolName(this.getSymbolName());
+               newStyle.setShowFill(true);
+               newStyle.setShowLine(true);
+               
newStyle.setColors(this.colorPanel.lineColorButton.getBackground(), 
this.colorPanel.fillColorButton.getBackground());
+               newStyle.setSize(32);
+               newStyle.setOffset(((Number) 
this.offsetField.getValue()).doubleValue());
+               newStyle.setEnabled(true);
+               return newStyle;
+       }
+
+       public String getSymbolName() {
+               try {
+                       int i;
+                       for(i = 0; i < 
this.symbologyPanel.vectorPanel.symbolPanel.vertexRB.length; ++i) {
+                               if 
(this.symbologyPanel.vectorPanel.symbolPanel.vertexRB[i].isSelected()) {
+                                       if (i < 7) {
+                                               this.symbolName = "@poly" + 
String.valueOf(this.symbologyPanel.vectorPanel.symbolPanel.getSides()[i]);
+                                       } else if (i < 14) {
+                                               this.symbolName = "@star" + 
String.valueOf(this.symbologyPanel.vectorPanel.symbolPanel.getSides()[i]);
+                                       } else {
+                                               this.symbolName = "@any" + 
String.valueOf(this.symbologyPanel.vectorPanel.symbolPanel.getSides()[i]);
+                                       }
+                               }
+                       }
+
+                       for(i = 0; i < 
this.symbologyPanel.imagePanel.getImageRB().length; ++i) {
+                               if 
(this.symbologyPanel.imagePanel.getImageRB()[i].isSelected()) {
+                                       this.symbolName = 
VertexParams.imageNames[i];
+                               }
+                       }
+
+                       for(i = 0; i < 
this.symbologyPanel.wktPanel.getImageRB().length; ++i) {
+                               if 
(this.symbologyPanel.wktPanel.getImageRB()[i].isSelected()) {
+                                       this.symbolName = 
VertexParams.wktNames[i];
+                               }
+                       }
+               } catch (Exception var2) {
+                       this.symbolName = this.style.getActualSymbolName();
+               }
+
+               return this.symbolName;
+       }
+
+       @Override
+       public void stateChanged(ChangeEvent arg0) {
+       }
+}


Property changes on: 
plug-ins/CadPlan_VertexSymbols/trunk/src/plugins/VertexSymbolsClassificationDialog.java
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Added: plug-ins/CadPlan_VertexSymbols/trunk/src/plugins/VertexSymbolsDialog.java
===================================================================
--- plug-ins/CadPlan_VertexSymbols/trunk/src/plugins/VertexSymbolsDialog.java   
                        (rev 0)
+++ plug-ins/CadPlan_VertexSymbols/trunk/src/plugins/VertexSymbolsDialog.java   
2020-05-31 06:40:03 UTC (rev 6269)
@@ -0,0 +1,270 @@
+package com.cadplan.jump.plugins;
+
+import java.awt.Color;
+import java.awt.Component;
+import java.awt.Dimension;
+import java.awt.GridBagLayout;
+import java.awt.Toolkit;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+import java.awt.event.ItemEvent;
+import java.awt.event.ItemListener;
+import java.awt.event.WindowAdapter;
+import java.awt.event.WindowEvent;
+import java.util.List;
+
+import javax.swing.ButtonGroup;
+import javax.swing.ImageIcon;
+import javax.swing.JCheckBox;
+import javax.swing.JFrame;
+import javax.swing.JPanel;
+import javax.swing.JPopupMenu;
+import javax.swing.JTabbedPane;
+import javax.swing.ToolTipManager;
+import javax.swing.event.ChangeEvent;
+import javax.swing.event.ChangeListener;
+
+import org.saig.core.gui.swing.sldeditor.util.FormUtils;
+
+import com.cadplan.jump.icon.IconLoader;
+import com.cadplan.jump.language.I18NPlug;
+import com.cadplan.jump.plugins.panel.ColorPanel;
+import com.cadplan.jump.plugins.panel.TextLabelPanel;
+import com.cadplan.jump.plugins.panel.TransparPanel;
+import com.cadplan.jump.plugins.panel.VertexColorThemingPanel;
+import com.cadplan.jump.plugins.panel.VertexParametersPanel;
+import com.cadplan.jump.plugins.panel.VertexSymbologyPanel;
+import com.cadplan.jump.utils.StyleUtils;
+import com.cadplan.jump.utils.VertexParams;
+import com.vividsolutions.jump.workbench.model.Layer;
+import com.vividsolutions.jump.workbench.ui.GenericNames;
+import com.vividsolutions.jump.workbench.ui.MultiInputDialog;
+import com.vividsolutions.jump.workbench.ui.renderer.style.ColorThemingStyle;
+
+public class VertexSymbolsDialog extends MultiInputDialog implements 
ItemListener, ChangeListener {
+       private static final long serialVersionUID = 1L;
+       public JCheckBox activateLineDecorationCB;
+       private JTabbedPane tabbedPane;
+       ButtonGroup group;
+       TextLabelPanel labelPanel;
+       ColorPanel colorPanel;
+       TransparPanel transparency;
+       VertexSymbologyPanel symbologyPanel;
+       VertexParametersPanel parametersPanel;
+       VertexColorThemingPanel colorThemingPanel;
+       public boolean cancelled = false;
+       public static ImageIcon ICON = IconLoader.icon("vsicon.gif");
+
+       public VertexSymbolsDialog() {
+               super(new JFrame(), I18NPlug.getI18N("VertexSymbols.Dialog") + 
+                               " - "
+                               +GenericNames.LAYER+" :"
+                               + VertexParams.selectedLayer, true);
+               this.setDefaultCloseOperation(0);
+               this.addWindowListener(new WindowAdapter() {
+                       @Override
+                       public void windowClosing(WindowEvent 
param1WindowEvent) {
+                               VertexSymbolsDialog.this.cancelled = true;
+                               VertexSymbolsDialog.this.dispose();
+                       }
+               });
+               this.setIconImage(ICON.getImage());
+               this.setResizable(true);
+               this.init();
+       }
+
+       public Component getTabbedPane() {
+               return this.tabbedPane;
+       }
+
+
+
+
+
+
+       public void init() {
+               JPopupMenu.setDefaultLightWeightPopupEnabled(false);
+               ToolTipManager toolTipManager = ToolTipManager.sharedInstance();
+               toolTipManager.setLightWeightPopupEnabled(false);
+
+               //Main Tabbed panel (Rendered, Classification and Labels)
+               this.tabbedPane = new JTabbedPane(1);
+
+               //TabbedPane 0:  Rendering
+               this.symbologyPanel = new 
VertexSymbologyPanel(VertexParams.selectedLayer.getBasicStyle().getLineColor(), 
+                               
VertexParams.selectedLayer.getBasicStyle().getFillColor());
+               this.parametersPanel = new VertexParametersPanel();
+               this.colorPanel = new 
ColorPanel(VertexParams.selectedLayer.getBasicStyle().getLineColor(), 
+                               
VertexParams.selectedLayer.getBasicStyle().getFillColor());
+               this.transparency = new TransparPanel((Color)null);
+
+               //TabbedPane 1: Classification
+               this.colorThemingPanel = new VertexColorThemingPanel();
+
+               //TabbedPane 2: Labels
+               this.labelPanel = new TextLabelPanel(this.group);
+
+               //      updateSideBarIconAndDescription();
+
+               String lineDecorationString ="<html><font color=black size=3>"
+                               + "<b>" + 
I18NPlug.getI18N("VertexSymbols.Dialog.activate-line-decoration") + 
"</b></html>";
+               activateLineDecorationCB = 
this.addCheckBox(lineDecorationString, false);
+               
activateLineDecorationCB.setSelected(VertexParams.lineDecoration );
+               String lineDecorationTooltip = 
StyleUtils.getName(I18NPlug.getI18N("VertexSymbols.Dialog.activate-line-decoration"),
 I18NPlug.getI18N("VertexSymbols.Dialog.activate-line-decoration-tooltip"));
+               activateLineDecorationCB.setToolTipText(lineDecorationTooltip);
+               activateLineDecorationCB.addChangeListener(new ChangeListener() 
{
+                       @Override
+                       public void stateChanged(ChangeEvent e) {
+                               updateGUI();
+                       }
+               });
+
+
+               JPanel rendererPan = new JPanel(new GridBagLayout());
+               JPanel classPan = new JPanel(new GridBagLayout());
+
+
+               FormUtils.addRowInGBL(rendererPan, 0, 0, this.symbologyPanel);
+               FormUtils.addRowInGBL(rendererPan, 1, 0, this.parametersPanel, 
true, true);
+               FormUtils.addRowInGBL(rendererPan, 2, 0, this.colorPanel, true, 
true);
+               FormUtils.addRowInGBL(rendererPan, 3, 0, transparency, true, 
true); 
+               this.symbologyPanel.addChangeListener(new ChangeListener() {
+                       @Override
+                       public void stateChanged(ChangeEvent e) {
+                               updateColorPanel();
+                       }
+               });
+               FormUtils.addRowInGBL(classPan, 0, 0, this.colorThemingPanel);
+
+               this.tabbedPane.addTab(this.symbologyPanel.getTitle(), 
rendererPan);
+               this.tabbedPane.addTab(this.colorThemingPanel.getTitle(), 
classPan);
+               this.tabbedPane.addTab(this.labelPanel.getTitle(), 
this.labelPanel);
+
+               this.okCancelApplyPanel.addActionListener(new ActionListener() {
+                       @Override
+                       public void actionPerformed(ActionEvent 
param1ActionEvent) {
+                               if 
(VertexSymbolsDialog.this.okCancelApplyPanel.wasOKPressed()) {
+                                       boolean OK = 
StyleUtils.getValues(VertexSymbolsDialog.this, 
VertexSymbolsDialog.this.parametersPanel, 
VertexSymbolsDialog.this.symbologyPanel, VertexSymbolsDialog.this.labelPanel, 
VertexSymbolsDialog.this.colorThemingPanel);
+                                       if (OK) {
+                                               
VertexSymbolsDialog.this.changeStyle();
+                                       }
+                               } else {
+                                       VertexSymbolsDialog.this.cancelled = 
true;
+                               }
+                       }
+               });
+               this.addRow(tabbedPane);
+               this.pack();
+               Dimension screenSize = 
Toolkit.getDefaultToolkit().getScreenSize();
+               Dimension labelSize = this.getPreferredSize();
+               this.setLocation(screenSize.width / 2 - labelSize.width / 2, 
screenSize.height / 2 - labelSize.height / 2);
+               this.setVisible(true);
+       }
+
+
+       //[Giuseppe Aruta 2020-05-28] While embedded shape and WKT file shape 
can be colorized according
+       // to layer/xbasestyle values/color. Image files have their own colors. 
This part deactivate Color
+       //Panel if user select Image files panel
+       public void updateColorPanel() {
+               if ( symbologyPanel.getSelectedIndex() == 2) {
+                       colorPanel.fillColorButton.setEnabled(false);
+                       colorPanel.lineColorButton.setEnabled(false);
+                       colorPanel.synchronizeCheckBox.setEnabled(false);
+                       colorPanel.fillColorLabel.setEnabled(false);
+                       colorPanel.lineColorLabel.setEnabled(false);
+               } else {
+                       colorPanel.fillColorButton.setEnabled(true);
+                       colorPanel.lineColorButton.setEnabled(true);
+                       colorPanel.synchronizeCheckBox.setEnabled(true);
+                       colorPanel.fillColorLabel.setEnabled(true);
+                       colorPanel.lineColorLabel.setEnabled(true);
+               }
+       }
+
+
+       //[Giuseppe Aruta 2020-05-28] not activated as dialog is always too wide
+       public void updateSideBarIconAndDescription() {
+               if (VertexParams.lineDecoration==true) {
+                       
this.setSideBarDescription(I18NPlug.getI18N("VertexSymbols.Dialog.activate-line-decoration-tooltip"));
+                       this.setSideBarImage( IconLoader.icon("Line.png"));
+               } else {
+                       
this.setSideBarDescription(I18NPlug.getI18N("VertexSymbols.Dialog.vertex-decoration-tooltip"));
+                       this.setSideBarImage( IconLoader.icon("Vertex.png"));
+               }
+       }
+
+       //[Giuseppe Aruta 2020-05-28] if Line decoration is activated, only 
line parameters (distance,
+       //offset, and rotate) are activated. Deactivated rotation parameters 
for vertex (fix value or value
+       //by attribute) as it creates confusion for the user
+
+       public void updateGUI() {
+               VertexParams.lineDecoration 
=activateLineDecorationCB.isSelected();
+               //      [Giuseppe Aruta 2020-05-28]  
updateSideBarIconAndDescription();
+               if (VertexParams.lineDecoration) {
+                       parametersPanel.lineLabel.setEnabled(true);
+                       parametersPanel.distanceField.setEnabled(true);
+                       parametersPanel.offsetField.setEnabled(true);
+                       parametersPanel.distanceLabel.setEnabled(true);
+                       parametersPanel.offsetLabel.setEnabled(true);
+                       parametersPanel.rotationCB.setEnabled(true);
+                       parametersPanel.orienLabel.setEnabled(false);
+                       parametersPanel.absValueRB.setEnabled(false);
+                       parametersPanel.byAttributeRB.setEnabled(false);
+                       parametersPanel.orienField.setText(String.valueOf(0.0));
+                       parametersPanel.orienField.setEnabled(false);
+                       parametersPanel.attributeCB.setEnabled(false);
+                       colorThemingPanel.mainPanel.revalidate();
+                       this.revalidate();
+                       this.repaint();
+
+               } else {
+                       parametersPanel.lineLabel.setEnabled(false);
+                       parametersPanel.distanceField.setEnabled(false);
+                       parametersPanel.offsetField.setEnabled(false);
+                       parametersPanel.distanceLabel.setEnabled(false);
+                       parametersPanel.offsetLabel.setEnabled(false);
+                       parametersPanel.rotationCB.setEnabled(false);
+                       parametersPanel.orienLabel.setEnabled(true);
+                       
parametersPanel.orienField.setText(String.valueOf(VertexParams.orientation));
+                       parametersPanel.orienField.setEnabled(true);
+                       parametersPanel.absValueRB.setEnabled(true);
+                       if (VertexParams.byValue) {
+                               parametersPanel.absValueRB.setSelected(true);
+                       } else {
+                               parametersPanel.byAttributeRB.setSelected(true);
+                       }
+                       if (!VertexParams.singleLayer) {
+                               parametersPanel.absValueRB.setSelected(true);
+                       }
+                       
parametersPanel.byAttributeRB.setEnabled(parametersPanel.bool);
+                       
parametersPanel.attributeCB.setEnabled(parametersPanel.bool);
+                       colorThemingPanel.mainPanel.revalidate();
+                       this.revalidate();
+                       this.repaint();
+               }
+       }
+
+
+       public void changeStyle() {
+               Layer layer = VertexParams.selectedLayer;
+               List<String> attributeNameList = 
layer.getFeatureCollectionWrapper().getFeatureSchema().getAttributeNames();
+               
layer.getBasicStyle().setFillColor(this.colorPanel.getFillColor());
+               
layer.getBasicStyle().setLineColor(this.colorPanel.getLineColor());
+               
layer.setSynchronizingLineColor(this.colorPanel.synchronizeCheckBox.isSelected());
+               ColorThemingStyle style = VertexParams.classificationStyle;

@@ Diff output truncated at 100000 characters. @@


_______________________________________________
Jump-pilot-devel mailing list
Jump-pilot-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel

Reply via email to