Do not allow negative values for properties indicating a size

This commit is contained in:
Branislav Stojkovic
2019-01-12 10:21:55 +01:00
parent afadc5e171
commit facf816458
18 changed files with 51 additions and 34 deletions
@@ -41,6 +41,7 @@ import org.diylc.core.Project;
import org.diylc.core.Theme; import org.diylc.core.Theme;
import org.diylc.core.VisibilityPolicy; import org.diylc.core.VisibilityPolicy;
import org.diylc.core.annotations.EditableProperty; import org.diylc.core.annotations.EditableProperty;
import org.diylc.core.annotations.PositiveMeasureValidator;
import org.diylc.core.measures.Size; import org.diylc.core.measures.Size;
import org.diylc.core.measures.SizeUnit; import org.diylc.core.measures.SizeUnit;
import org.diylc.utils.Constants; import org.diylc.utils.Constants;
@@ -439,7 +440,7 @@ public abstract class AbstractLeadedComponent<T> extends AbstractTransparentComp
this.borderColor = borderColor; this.borderColor = borderColor;
} }
@EditableProperty(name = "Length", defaultable = true) @EditableProperty(name = "Length", defaultable = true, validatorClass = PositiveMeasureValidator.class)
public Size getLength() { public Size getLength() {
return length; return length;
} }
@@ -448,7 +449,7 @@ public abstract class AbstractLeadedComponent<T> extends AbstractTransparentComp
this.length = length; this.length = length;
} }
@EditableProperty(name = "Width", defaultable = true) @EditableProperty(name = "Width", defaultable = true, validatorClass = PositiveMeasureValidator.class)
public Size getWidth() { public Size getWidth() {
return width; return width;
} }
Binary file not shown.
@@ -36,6 +36,7 @@ import org.diylc.core.annotations.BomPolicy;
import org.diylc.core.annotations.ComponentDescriptor; import org.diylc.core.annotations.ComponentDescriptor;
import org.diylc.core.annotations.EditableProperty; import org.diylc.core.annotations.EditableProperty;
import org.diylc.core.annotations.KeywordPolicy; import org.diylc.core.annotations.KeywordPolicy;
import org.diylc.core.annotations.PositiveMeasureValidator;
import org.diylc.core.measures.Size; import org.diylc.core.measures.Size;
import org.diylc.core.measures.SizeUnit; import org.diylc.core.measures.SizeUnit;
import org.diylc.utils.Constants; import org.diylc.utils.Constants;
@@ -95,7 +96,7 @@ public class MarshallPerfBoard extends AbstractBoard {
} }
} }
@EditableProperty @EditableProperty(validatorClass = PositiveMeasureValidator.class)
public Size getSpacing() { public Size getSpacing() {
return spacing; return spacing;
} }
@@ -36,6 +36,7 @@ import org.diylc.core.annotations.BomPolicy;
import org.diylc.core.annotations.ComponentDescriptor; import org.diylc.core.annotations.ComponentDescriptor;
import org.diylc.core.annotations.EditableProperty; import org.diylc.core.annotations.EditableProperty;
import org.diylc.core.annotations.KeywordPolicy; import org.diylc.core.annotations.KeywordPolicy;
import org.diylc.core.annotations.PositiveMeasureValidator;
import org.diylc.core.measures.Size; import org.diylc.core.measures.Size;
import org.diylc.core.measures.SizeUnit; import org.diylc.core.measures.SizeUnit;
import org.diylc.utils.Constants; import org.diylc.utils.Constants;
@@ -104,7 +105,7 @@ public class PerfBoard extends AbstractBoard {
this.padColor = padColor; this.padColor = padColor;
} }
@EditableProperty @EditableProperty(validatorClass = PositiveMeasureValidator.class)
public Size getSpacing() { public Size getSpacing() {
return spacing; return spacing;
} }
@@ -45,6 +45,7 @@ import org.diylc.core.VisibilityPolicy;
import org.diylc.core.annotations.ComponentDescriptor; import org.diylc.core.annotations.ComponentDescriptor;
import org.diylc.core.annotations.EditableProperty; import org.diylc.core.annotations.EditableProperty;
import org.diylc.core.annotations.KeywordPolicy; import org.diylc.core.annotations.KeywordPolicy;
import org.diylc.core.annotations.PositiveMeasureValidator;
import org.diylc.core.measures.Size; import org.diylc.core.measures.Size;
import org.diylc.core.measures.SizeUnit; import org.diylc.core.measures.SizeUnit;
import org.diylc.utils.Constants; import org.diylc.utils.Constants;
@@ -115,7 +116,7 @@ public class TerminalStrip extends AbstractTransparentComponent<String> {
body = null; body = null;
} }
@EditableProperty(name = "Terminal spacing") @EditableProperty(name = "Terminal Spacing", validatorClass = PositiveMeasureValidator.class)
public Size getTerminalSpacing() { public Size getTerminalSpacing() {
return terminalSpacing; return terminalSpacing;
} }
@@ -127,7 +128,7 @@ public class TerminalStrip extends AbstractTransparentComponent<String> {
body = null; body = null;
} }
@EditableProperty(name = "Hole spacing") @EditableProperty(name = "Hole Spacing", validatorClass = PositiveMeasureValidator.class)
public Size getHoleSpacing() { public Size getHoleSpacing() {
return holeSpacing; return holeSpacing;
} }
@@ -139,7 +140,7 @@ public class TerminalStrip extends AbstractTransparentComponent<String> {
body = null; body = null;
} }
@EditableProperty(name = "Center terminal") @EditableProperty(name = "Center Terminal")
public boolean getCenterHole() { public boolean getCenterHole() {
return centerHole; return centerHole;
} }
@@ -151,7 +152,7 @@ public class TerminalStrip extends AbstractTransparentComponent<String> {
body = null; body = null;
} }
@EditableProperty(name = "Board width") @EditableProperty(name = "Board Width", validatorClass = PositiveMeasureValidator.class)
public Size getBoardWidth() { public Size getBoardWidth() {
return boardWidth; return boardWidth;
} }
@@ -37,6 +37,7 @@ import org.diylc.core.Project;
import org.diylc.core.annotations.ComponentDescriptor; import org.diylc.core.annotations.ComponentDescriptor;
import org.diylc.core.annotations.EditableProperty; import org.diylc.core.annotations.EditableProperty;
import org.diylc.core.annotations.KeywordPolicy; import org.diylc.core.annotations.KeywordPolicy;
import org.diylc.core.annotations.PositiveMeasureValidator;
import org.diylc.core.measures.Size; import org.diylc.core.measures.Size;
import org.diylc.core.measures.SizeUnit; import org.diylc.core.measures.SizeUnit;
import org.diylc.utils.Constants; import org.diylc.utils.Constants;
@@ -162,7 +163,7 @@ public class TriPadBoard extends AbstractBoard {
} }
} }
@EditableProperty(name = "Strip color") @EditableProperty(name = "Strip Color")
public Color getStripColor() { public Color getStripColor() {
return stripColor; return stripColor;
} }
@@ -171,7 +172,7 @@ public class TriPadBoard extends AbstractBoard {
this.stripColor = padColor; this.stripColor = padColor;
} }
@EditableProperty @EditableProperty(validatorClass = PositiveMeasureValidator.class)
public Size getSpacing() { public Size getSpacing() {
return spacing; return spacing;
} }
@@ -38,6 +38,7 @@ import org.diylc.core.annotations.BomPolicy;
import org.diylc.core.annotations.ComponentDescriptor; import org.diylc.core.annotations.ComponentDescriptor;
import org.diylc.core.annotations.EditableProperty; import org.diylc.core.annotations.EditableProperty;
import org.diylc.core.annotations.KeywordPolicy; import org.diylc.core.annotations.KeywordPolicy;
import org.diylc.core.annotations.PositiveMeasureValidator;
import org.diylc.core.measures.Size; import org.diylc.core.measures.Size;
import org.diylc.core.measures.SizeUnit; import org.diylc.core.measures.SizeUnit;
import org.diylc.utils.Constants; import org.diylc.utils.Constants;
@@ -122,7 +123,7 @@ public class VeroBoard extends AbstractBoard {
} }
} }
@EditableProperty(name = "Strip color") @EditableProperty(name = "Strip Color")
public Color getStripColor() { public Color getStripColor() {
return stripColor; return stripColor;
} }
@@ -131,7 +132,7 @@ public class VeroBoard extends AbstractBoard {
this.stripColor = padColor; this.stripColor = padColor;
} }
@EditableProperty @EditableProperty(validatorClass = PositiveMeasureValidator.class)
public Size getSpacing() { public Size getSpacing() {
return spacing; return spacing;
} }
@@ -35,6 +35,7 @@ import org.diylc.core.VisibilityPolicy;
import org.diylc.core.annotations.BomPolicy; import org.diylc.core.annotations.BomPolicy;
import org.diylc.core.annotations.ComponentDescriptor; import org.diylc.core.annotations.ComponentDescriptor;
import org.diylc.core.annotations.EditableProperty; import org.diylc.core.annotations.EditableProperty;
import org.diylc.core.annotations.PositiveMeasureValidator;
import org.diylc.core.measures.Size; import org.diylc.core.measures.Size;
import org.diylc.core.measures.SizeUnit; import org.diylc.core.measures.SizeUnit;
@@ -71,7 +72,7 @@ public class Dot extends AbstractComponent<Void> {
g2d.fillOval((width - diameter) / 2, (height - diameter) / 2, diameter, diameter); g2d.fillOval((width - diameter) / 2, (height - diameter) / 2, diameter, diameter);
} }
@EditableProperty @EditableProperty(validatorClass = PositiveMeasureValidator.class)
public Size getSize() { public Size getSize() {
return size; return size;
} }
@@ -36,6 +36,7 @@ import org.diylc.core.annotations.BomPolicy;
import org.diylc.core.annotations.ComponentDescriptor; import org.diylc.core.annotations.ComponentDescriptor;
import org.diylc.core.annotations.EditableProperty; import org.diylc.core.annotations.EditableProperty;
import org.diylc.core.annotations.KeywordPolicy; import org.diylc.core.annotations.KeywordPolicy;
import org.diylc.core.annotations.PositiveMeasureValidator;
import org.diylc.core.measures.Size; import org.diylc.core.measures.Size;
import org.diylc.core.measures.SizeUnit; import org.diylc.core.measures.SizeUnit;
import org.diylc.utils.Constants; import org.diylc.utils.Constants;
@@ -94,7 +95,7 @@ public class Eyelet extends AbstractComponent<String> {
g2d.drawOval((width - holeDiameter) / 2, (height - holeDiameter) / 2, holeDiameter, holeDiameter); g2d.drawOval((width - holeDiameter) / 2, (height - holeDiameter) / 2, holeDiameter, holeDiameter);
} }
@EditableProperty @EditableProperty(validatorClass = PositiveMeasureValidator.class)
public Size getSize() { public Size getSize() {
return size; return size;
} }
@@ -103,7 +104,7 @@ public class Eyelet extends AbstractComponent<String> {
this.size = size; this.size = size;
} }
@EditableProperty(name = "Hole size") @EditableProperty(name = "Hole Size", validatorClass = PositiveMeasureValidator.class)
public Size getHoleSize() { public Size getHoleSize() {
return holeSize; return holeSize;
} }
@@ -105,7 +105,7 @@ public class SolderPad extends AbstractComponent<Void> {
this.size = size; this.size = size;
} }
@EditableProperty(name = "Hole") @EditableProperty(name = "Hole", validatorClass = PositiveMeasureValidator.class)
public Size getHoleSize() { public Size getHoleSize() {
if (holeSize == null) { if (holeSize == null) {
holeSize = HOLE_SIZE; holeSize = HOLE_SIZE;
@@ -44,6 +44,7 @@ import org.diylc.core.Theme;
import org.diylc.core.VisibilityPolicy; import org.diylc.core.VisibilityPolicy;
import org.diylc.core.annotations.ComponentDescriptor; import org.diylc.core.annotations.ComponentDescriptor;
import org.diylc.core.annotations.EditableProperty; import org.diylc.core.annotations.EditableProperty;
import org.diylc.core.annotations.PositiveMeasureValidator;
import org.diylc.core.measures.Size; import org.diylc.core.measures.Size;
import org.diylc.core.measures.SizeUnit; import org.diylc.core.measures.SizeUnit;
import org.diylc.utils.Constants; import org.diylc.utils.Constants;
@@ -225,7 +226,7 @@ public class MiniToggleSwitch extends AbstractTransparentComponent<ToggleSwitchT
body = null; body = null;
} }
@EditableProperty @EditableProperty(validatorClass = PositiveMeasureValidator.class)
public Size getSpacing() { public Size getSpacing() {
if (spacing == null) { if (spacing == null) {
spacing = SPACING; spacing = SPACING;
@@ -41,6 +41,7 @@ import org.diylc.core.VisibilityPolicy;
import org.diylc.core.annotations.ComponentDescriptor; import org.diylc.core.annotations.ComponentDescriptor;
import org.diylc.core.annotations.EditableProperty; import org.diylc.core.annotations.EditableProperty;
import org.diylc.core.annotations.KeywordPolicy; import org.diylc.core.annotations.KeywordPolicy;
import org.diylc.core.annotations.PositiveMeasureValidator;
import org.diylc.core.measures.Size; import org.diylc.core.measures.Size;
import org.diylc.core.measures.SizeUnit; import org.diylc.core.measures.SizeUnit;
import org.diylc.utils.Constants; import org.diylc.utils.Constants;
@@ -158,7 +159,7 @@ public class TransformerCoil extends AbstractComponent<org.diylc.core.measures.V
this.color = color; this.color = color;
} }
@EditableProperty(name = "Size") @EditableProperty(name = "Size", validatorClass = PositiveMeasureValidator.class)
public Size getTapSpacing() { public Size getTapSpacing() {
return tapSpacing; return tapSpacing;
} }
@@ -50,6 +50,7 @@ import org.diylc.core.VisibilityPolicy;
import org.diylc.core.annotations.ComponentDescriptor; import org.diylc.core.annotations.ComponentDescriptor;
import org.diylc.core.annotations.EditableProperty; import org.diylc.core.annotations.EditableProperty;
import org.diylc.core.annotations.KeywordPolicy; import org.diylc.core.annotations.KeywordPolicy;
import org.diylc.core.annotations.PositiveMeasureValidator;
import org.diylc.core.measures.Size; import org.diylc.core.measures.Size;
import org.diylc.core.measures.SizeUnit; import org.diylc.core.measures.SizeUnit;
import org.diylc.utils.Constants; import org.diylc.utils.Constants;
@@ -134,7 +135,7 @@ public class DIL_IC extends AbstractTransparentComponent<String> {
body = null; body = null;
} }
@EditableProperty(name = "Pin Spacing") @EditableProperty(name = "Pin Spacing", validatorClass = PositiveMeasureValidator.class)
public Size getPinSpacing() { public Size getPinSpacing() {
return pinSpacing; return pinSpacing;
} }
@@ -146,7 +147,7 @@ public class DIL_IC extends AbstractTransparentComponent<String> {
body = null; body = null;
} }
@EditableProperty(name = "Row Spacing") @EditableProperty(name = "Row Spacing", validatorClass = PositiveMeasureValidator.class)
public Size getRowSpacing() { public Size getRowSpacing() {
return rowSpacing; return rowSpacing;
} }
@@ -49,6 +49,7 @@ import org.diylc.core.VisibilityPolicy;
import org.diylc.core.annotations.ComponentDescriptor; import org.diylc.core.annotations.ComponentDescriptor;
import org.diylc.core.annotations.EditableProperty; import org.diylc.core.annotations.EditableProperty;
import org.diylc.core.annotations.KeywordPolicy; import org.diylc.core.annotations.KeywordPolicy;
import org.diylc.core.annotations.PositiveMeasureValidator;
import org.diylc.core.measures.Size; import org.diylc.core.measures.Size;
import org.diylc.core.measures.SizeUnit; import org.diylc.core.measures.SizeUnit;
import org.diylc.utils.Constants; import org.diylc.utils.Constants;
@@ -131,7 +132,7 @@ public class SIL_IC extends AbstractTransparentComponent<String> {
body = null; body = null;
} }
@EditableProperty(name = "Pin Spacing") @EditableProperty(name = "Pin Spacing", validatorClass = PositiveMeasureValidator.class)
public Size getPinSpacing() { public Size getPinSpacing() {
return pinSpacing; return pinSpacing;
} }
@@ -27,6 +27,7 @@ import java.awt.Point;
import org.diylc.components.AbstractTransparentComponent; import org.diylc.components.AbstractTransparentComponent;
import org.diylc.core.VisibilityPolicy; import org.diylc.core.VisibilityPolicy;
import org.diylc.core.annotations.EditableProperty; import org.diylc.core.annotations.EditableProperty;
import org.diylc.core.annotations.PositiveMeasureValidator;
import org.diylc.core.measures.Size; import org.diylc.core.measures.Size;
import org.diylc.core.measures.SizeUnit; import org.diylc.core.measures.SizeUnit;
@@ -67,7 +68,7 @@ public abstract class AbstractShape extends AbstractTransparentComponent<Void> {
this.borderColor = borderColor; this.borderColor = borderColor;
} }
@EditableProperty(name = "Border thickness") @EditableProperty(name = "Border thickness", validatorClass = PositiveMeasureValidator.class)
public Size getBorderThickness() { public Size getBorderThickness() {
return borderThickness; return borderThickness;
} }
Binary file not shown.
Binary file not shown.
+4
View File
@@ -2170,6 +2170,10 @@
<changeType>IMPROVEMENT</changeType> <changeType>IMPROVEMENT</changeType>
<description>Render resistor color bands and capacitor polarity markings properly when zommed in</description> <description>Render resistor color bands and capacitor polarity markings properly when zommed in</description>
</org.diylc.appframework.update.Change> </org.diylc.appframework.update.Change>
<org.diylc.appframework.update.Change>
<changeType>IMPROVEMENT</changeType>
<description>Do not allow negative values for properties indicating a size</description>
</org.diylc.appframework.update.Change>
<org.diylc.appframework.update.Change> <org.diylc.appframework.update.Change>
<changeType>BUG_FIX</changeType> <changeType>BUG_FIX</changeType>
<description>Project font gets reverted to "Square721 BT" on Undo</description> <description>Project font gets reverted to "Square721 BT" on Undo</description>