mirror of
https://github.com/bancika/diy-layout-creator
synced 2026-11-11 01:32:08 +10:00
Standardize how folded transistors are displayed - updated TO-92 and
TO-1 packages
This commit is contained in:
+18
-5
@@ -27,7 +27,6 @@ import java.awt.Graphics2D;
|
|||||||
import java.awt.Point;
|
import java.awt.Point;
|
||||||
import java.awt.geom.Area;
|
import java.awt.geom.Area;
|
||||||
import java.awt.geom.Rectangle2D;
|
import java.awt.geom.Rectangle2D;
|
||||||
import java.awt.geom.Rectangle2D.Double;
|
|
||||||
|
|
||||||
import org.diylc.awt.StringUtils;
|
import org.diylc.awt.StringUtils;
|
||||||
import org.diylc.common.HorizontalAlignment;
|
import org.diylc.common.HorizontalAlignment;
|
||||||
@@ -53,6 +52,8 @@ public abstract class AbstractTransistorPackage extends AbstractTransparentCompo
|
|||||||
protected Color labelColor = LABEL_COLOR;
|
protected Color labelColor = LABEL_COLOR;
|
||||||
protected TransistorDisplay display = TransistorDisplay.NAME;
|
protected TransistorDisplay display = TransistorDisplay.NAME;
|
||||||
|
|
||||||
|
protected boolean folded = false;
|
||||||
|
|
||||||
public AbstractTransistorPackage() {
|
public AbstractTransistorPackage() {
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -205,6 +206,18 @@ public abstract class AbstractTransistorPackage extends AbstractTransparentCompo
|
|||||||
this.pinout = pinout;
|
this.pinout = pinout;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@EditableProperty
|
||||||
|
public boolean getFolded() {
|
||||||
|
return folded;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setFolded(boolean folded) {
|
||||||
|
this.folded = folded;
|
||||||
|
updateControlPoints();
|
||||||
|
// Reset body shape;
|
||||||
|
body = null;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean canPointMoveFreely(int pointIndex) {
|
public boolean canPointMoveFreely(int pointIndex) {
|
||||||
return false;
|
return false;
|
||||||
@@ -229,21 +242,21 @@ public abstract class AbstractTransistorPackage extends AbstractTransparentCompo
|
|||||||
Rectangle2D b = a.getBounds2D();
|
Rectangle2D b = a.getBounds2D();
|
||||||
if (b.getMinX() < minX)
|
if (b.getMinX() < minX)
|
||||||
minX = b.getMinX();
|
minX = b.getMinX();
|
||||||
if (b.getMaxX() > minX)
|
if (b.getMaxX() > maxX)
|
||||||
maxX = b.getMaxX();
|
maxX = b.getMaxX();
|
||||||
if (b.getMinY() < minY)
|
if (b.getMinY() < minY)
|
||||||
minY = b.getMinY();
|
minY = b.getMinY();
|
||||||
if (b.getMaxY() > minY)
|
if (b.getMaxY() > maxY)
|
||||||
maxY = b.getMaxY();
|
maxY = b.getMaxY();
|
||||||
}
|
}
|
||||||
for (Point p : controlPoints) {
|
for (Point p : controlPoints) {
|
||||||
if (p.getX() < minX)
|
if (p.getX() < minX)
|
||||||
minX = p.getX();
|
minX = p.getX();
|
||||||
if (p.getX() > minX)
|
if (p.getX() > maxX)
|
||||||
maxX = p.getX();
|
maxX = p.getX();
|
||||||
if (p.getY() < minY)
|
if (p.getY() < minY)
|
||||||
minY = p.getY() ;
|
minY = p.getY() ;
|
||||||
if (p.getY() > minY)
|
if (p.getY() > maxY)
|
||||||
maxY = p.getY();
|
maxY = p.getY();
|
||||||
}
|
}
|
||||||
return new Rectangle2D.Double(minX - margin, minY - margin, maxX - minX + 2 * margin, maxY - minY + 2 * margin);
|
return new Rectangle2D.Double(minX - margin, minY - margin, maxX - minX + 2 * margin, maxY - minY + 2 * margin);
|
||||||
|
|||||||
Reference in New Issue
Block a user