diff --git a/diylc/diylc-core/src/org/diylc/components/AbstractLeadedComponent.java b/diylc/diylc-core/src/org/diylc/components/AbstractLeadedComponent.java index f30fd32f..5e97d146 100644 --- a/diylc/diylc-core/src/org/diylc/components/AbstractLeadedComponent.java +++ b/diylc/diylc-core/src/org/diylc/components/AbstractLeadedComponent.java @@ -230,7 +230,7 @@ public abstract class AbstractLeadedComponent extends AbstractTransparentComp // } // Draw label. - g2d.setFont(LABEL_FONT); + g2d.setFont(project.getFont()); if (useShapeRectAsPosition()) { g2d.translate(shapeRect.x, shapeRect.y); } diff --git a/diylc/diylc-core/src/org/diylc/core/Project.java b/diylc/diylc-core/src/org/diylc/core/Project.java index 0d5f32c1..4678e239 100644 --- a/diylc/diylc-core/src/org/diylc/core/Project.java +++ b/diylc/diylc-core/src/org/diylc/core/Project.java @@ -1,5 +1,6 @@ package org.diylc.core; +import java.awt.Font; import java.io.Serializable; import java.util.ArrayList; import java.util.HashMap; @@ -31,6 +32,7 @@ public class Project implements Serializable { public static Size DEFAULT_WIDTH = new Size(29d, SizeUnit.cm); public static Size DEFAULT_HEIGHT = new Size(21d, SizeUnit.cm); public static Size DEFAULT_GRID_SPACING = new Size(0.1d, SizeUnit.in); + public static Font DEFAULT_FONT = new Font("Tahoma", Font.PLAIN, 14); private VersionNumber fileVersion; @@ -43,6 +45,7 @@ public class Project implements Serializable { private List> components; private Set>> groups; private Set lockedLayers; + private Font font = DEFAULT_FONT; public Project() { components = new ArrayList>(); @@ -139,6 +142,28 @@ public class Project implements Serializable { public void setFileVersion(VersionNumber fileVersion) { this.fileVersion = fileVersion; } + + @EditableProperty(name = "Default Font") + public Font getFont() { + if (font == null) + font = DEFAULT_FONT; + return font; + } + + public void setFont(Font font) { + this.font = font; + } + + @EditableProperty(name = "Default Font Size") + public int getFontSize() { + if (font == null) + font = DEFAULT_FONT; + return font.getSize(); + } + + public void setFontSize(int size) { + font = font.deriveFont((float) size); + } @Override public int hashCode() { diff --git a/diylc/diylc-library/lib/diylc-core.jar b/diylc/diylc-library/lib/diylc-core.jar index 06e9aba4..b365e415 100644 Binary files a/diylc/diylc-library/lib/diylc-core.jar and b/diylc/diylc-library/lib/diylc-core.jar differ diff --git a/diylc/diylc-library/src/org/diylc/components/Abstract3LegSymbol.java b/diylc/diylc-library/src/org/diylc/components/Abstract3LegSymbol.java index bdbbb12c..b4f1e3e6 100644 --- a/diylc/diylc-library/src/org/diylc/components/Abstract3LegSymbol.java +++ b/diylc/diylc-library/src/org/diylc/components/Abstract3LegSymbol.java @@ -93,7 +93,7 @@ public abstract class Abstract3LegSymbol extends AbstractComponent { g2d.setTransform(old); // Draw label - g2d.setFont(LABEL_FONT); + g2d.setFont(project.getFont()); Color finalLabelColor; if (outlineMode) { Theme theme = diff --git a/diylc/diylc-library/src/org/diylc/components/boards/AbstractBoard.java b/diylc/diylc-library/src/org/diylc/components/boards/AbstractBoard.java index e2651a25..da82c0a7 100644 --- a/diylc/diylc-library/src/org/diylc/components/boards/AbstractBoard.java +++ b/diylc/diylc-library/src/org/diylc/components/boards/AbstractBoard.java @@ -61,12 +61,12 @@ public abstract class AbstractBoard extends AbstractTransparentComponent g2d.drawRect(firstPoint.x, firstPoint.y, secondPoint.x - firstPoint.x, secondPoint.y - firstPoint.y); } - protected void drawCoordinates(Graphics2D g2d, int spacing) { + protected void drawCoordinates(Graphics2D g2d, int spacing, Project project) { if (!getDrawCoordinates()) return; Point p = new Point(firstPoint); g2d.setColor(coordinateColor); - g2d.setFont(LABEL_FONT.deriveFont(COORDINATE_FONT_SIZE)); + g2d.setFont(project.getFont().deriveFont(COORDINATE_FONT_SIZE)); int t = 1; while (p.y < secondPoint.y - spacing) { diff --git a/diylc/diylc-library/src/org/diylc/components/boards/EyeletBoard.java b/diylc/diylc-library/src/org/diylc/components/boards/EyeletBoard.java index 74d45652..37c0f624 100644 --- a/diylc/diylc-library/src/org/diylc/components/boards/EyeletBoard.java +++ b/diylc/diylc-library/src/org/diylc/components/boards/EyeletBoard.java @@ -78,7 +78,7 @@ public class EyeletBoard extends AbstractBoard { g2d.drawOval(p.x - holeDiameter / 2, p.y - holeDiameter / 2, holeDiameter, holeDiameter); } } - super.drawCoordinates(g2d, spacing); + super.drawCoordinates(g2d, spacing, project); } } diff --git a/diylc/diylc-library/src/org/diylc/components/boards/MarshallPerfBoard.java b/diylc/diylc-library/src/org/diylc/components/boards/MarshallPerfBoard.java index 64ec7188..63050874 100644 --- a/diylc/diylc-library/src/org/diylc/components/boards/MarshallPerfBoard.java +++ b/diylc/diylc-library/src/org/diylc/components/boards/MarshallPerfBoard.java @@ -70,7 +70,7 @@ public class MarshallPerfBoard extends AbstractBoard { g2d.drawOval(p.x - holeDiameter / 2, p.y - holeDiameter / 2, holeDiameter, holeDiameter); } } - super.drawCoordinates(g2d, spacing); + super.drawCoordinates(g2d, spacing, project); } } diff --git a/diylc/diylc-library/src/org/diylc/components/boards/PerfBoard.java b/diylc/diylc-library/src/org/diylc/components/boards/PerfBoard.java index c42efc46..2bef97fe 100644 --- a/diylc/diylc-library/src/org/diylc/components/boards/PerfBoard.java +++ b/diylc/diylc-library/src/org/diylc/components/boards/PerfBoard.java @@ -70,7 +70,7 @@ public class PerfBoard extends AbstractBoard { g2d.drawOval(p.x - holeDiameter / 2, p.y - holeDiameter / 2, holeDiameter, holeDiameter); } } - super.drawCoordinates(g2d, spacing); + super.drawCoordinates(g2d, spacing, project); } } diff --git a/diylc/diylc-library/src/org/diylc/components/boards/TriPadBoard.java b/diylc/diylc-library/src/org/diylc/components/boards/TriPadBoard.java index e0e0dcc3..f34704f9 100644 --- a/diylc/diylc-library/src/org/diylc/components/boards/TriPadBoard.java +++ b/diylc/diylc-library/src/org/diylc/components/boards/TriPadBoard.java @@ -133,7 +133,7 @@ public class TriPadBoard extends AbstractBoard { } g2d.setComposite(oldComposite); - super.drawCoordinates(g2d, spacing); + super.drawCoordinates(g2d, spacing, project); } } diff --git a/diylc/diylc-library/src/org/diylc/components/boards/VeroBoard.java b/diylc/diylc-library/src/org/diylc/components/boards/VeroBoard.java index 1fc8e07a..4034c710 100644 --- a/diylc/diylc-library/src/org/diylc/components/boards/VeroBoard.java +++ b/diylc/diylc-library/src/org/diylc/components/boards/VeroBoard.java @@ -93,7 +93,7 @@ public class VeroBoard extends AbstractBoard { } } g2d.setComposite(oldComposite); - super.drawCoordinates(g2d, spacing); + super.drawCoordinates(g2d, spacing, project); } } diff --git a/diylc/diylc-library/src/org/diylc/components/electromechanical/CliffJack1_4.java b/diylc/diylc-library/src/org/diylc/components/electromechanical/CliffJack1_4.java index dddc82d1..e4c6e4b5 100644 --- a/diylc/diylc-library/src/org/diylc/components/electromechanical/CliffJack1_4.java +++ b/diylc/diylc-library/src/org/diylc/components/electromechanical/CliffJack1_4.java @@ -228,7 +228,7 @@ public class CliffJack1_4 extends AbstractTransparentComponent { : LABEL_COLOR; } g2d.setColor(finalLabelColor); - g2d.setFont(LABEL_FONT); + g2d.setFont(project.getFont()); int centerX = (controlPoints[0].x + controlPoints[3].x) / 2; int centerY = (controlPoints[0].y + controlPoints[3].y) / 2; drawCenteredText(g2d, name, centerX, centerY, HorizontalAlignment.CENTER, VerticalAlignment.CENTER); diff --git a/diylc/diylc-library/src/org/diylc/components/electromechanical/ClosedJack1_4.java b/diylc/diylc-library/src/org/diylc/components/electromechanical/ClosedJack1_4.java index bccb4878..b826b042 100644 --- a/diylc/diylc-library/src/org/diylc/components/electromechanical/ClosedJack1_4.java +++ b/diylc/diylc-library/src/org/diylc/components/electromechanical/ClosedJack1_4.java @@ -248,7 +248,7 @@ public class ClosedJack1_4 extends AbstractTransparentComponent { : LABEL_COLOR; } g2d.setColor(finalLabelColor); - g2d.setFont(LABEL_FONT); + g2d.setFont(project.getFont()); Rectangle bounds = body[0].getBounds(); int centerX = bounds.x + bounds.width / 2; int centerY = bounds.y + bounds.height / 2; diff --git a/diylc/diylc-library/src/org/diylc/components/electromechanical/MiniRelay.java b/diylc/diylc-library/src/org/diylc/components/electromechanical/MiniRelay.java index ece59c94..62eb3d28 100644 --- a/diylc/diylc-library/src/org/diylc/components/electromechanical/MiniRelay.java +++ b/diylc/diylc-library/src/org/diylc/components/electromechanical/MiniRelay.java @@ -318,7 +318,7 @@ public class MiniRelay extends AbstractTransparentComponent { } } // Draw label. - g2d.setFont(LABEL_FONT); + g2d.setFont(project.getFont()); Color finalLabelColor; if (outlineMode) { finalLabelColor = diff --git a/diylc/diylc-library/src/org/diylc/components/electromechanical/OpenJack1_4.java b/diylc/diylc-library/src/org/diylc/components/electromechanical/OpenJack1_4.java index 8f689c28..c7a5838a 100644 --- a/diylc/diylc-library/src/org/diylc/components/electromechanical/OpenJack1_4.java +++ b/diylc/diylc-library/src/org/diylc/components/electromechanical/OpenJack1_4.java @@ -130,7 +130,7 @@ public class OpenJack1_4 extends AbstractTransparentComponent { // draw labels if (showLabels) { g2d.setColor(BASE_COLOR.darker()); - g2d.setFont(LABEL_FONT.deriveFont(LABEL_FONT.getSize2D() * 0.8f)); + g2d.setFont(project.getFont().deriveFont(project.getFont().getSize2D() * 0.8f)); int springLength = (int) SPRING_LENGTH.convertToPixels(); int holeToEdge = (int) HOLE_TO_EDGE.convertToPixels(); int centerY = controlPoints[0].y + springLength - holeToEdge; diff --git a/diylc/diylc-library/src/org/diylc/components/electromechanical/PlasticDCJack.java b/diylc/diylc-library/src/org/diylc/components/electromechanical/PlasticDCJack.java index 4b237f72..84116873 100644 --- a/diylc/diylc-library/src/org/diylc/components/electromechanical/PlasticDCJack.java +++ b/diylc/diylc-library/src/org/diylc/components/electromechanical/PlasticDCJack.java @@ -159,7 +159,7 @@ public class PlasticDCJack extends AbstractTransparentComponent { if (!outlineMode && getPolarity() != DCPolarity.NONE) { int spacing = (int) SPACING.convertToPixels(); g2d.setColor(MARKING_COLOR); - g2d.setFont(LABEL_FONT.deriveFont(12f)); + g2d.setFont(project.getFont().deriveFont(12f)); drawCenteredText(g2d, getPolarity() == DCPolarity.CENTER_NEGATIVE ? "+" : "-", controlPoints[0].x, controlPoints[0].y - spacing * 7 / 16, HorizontalAlignment.CENTER, VerticalAlignment.CENTER); drawCenteredText(g2d, getPolarity() == DCPolarity.CENTER_NEGATIVE ? "_" : "+", controlPoints[2].x, diff --git a/diylc/diylc-library/src/org/diylc/components/guitar/HumbuckerPickup.java b/diylc/diylc-library/src/org/diylc/components/guitar/HumbuckerPickup.java index 158adb86..03463ed0 100644 --- a/diylc/diylc-library/src/org/diylc/components/guitar/HumbuckerPickup.java +++ b/diylc/diylc-library/src/org/diylc/components/guitar/HumbuckerPickup.java @@ -145,7 +145,7 @@ public class HumbuckerPickup extends AbstractTransparentComponent { : LABEL_COLOR; } g2d.setColor(finalLabelColor); - g2d.setFont(LABEL_FONT); + g2d.setFont(project.getFont()); Rectangle bounds = body[0].getBounds(); drawCenteredText(g2d, value, bounds.x + bounds.width / 2, bounds.y + bounds.height / 2, HorizontalAlignment.CENTER, VerticalAlignment.CENTER); diff --git a/diylc/diylc-library/src/org/diylc/components/guitar/P90Pickup.java b/diylc/diylc-library/src/org/diylc/components/guitar/P90Pickup.java index d9511305..bfb085ad 100644 --- a/diylc/diylc-library/src/org/diylc/components/guitar/P90Pickup.java +++ b/diylc/diylc-library/src/org/diylc/components/guitar/P90Pickup.java @@ -128,7 +128,7 @@ public class P90Pickup extends AbstractTransparentComponent { : LABEL_COLOR; } g2d.setColor(finalLabelColor); - g2d.setFont(LABEL_FONT); + g2d.setFont(project.getFont()); Rectangle bounds = body[0].getBounds(); drawCenteredText(g2d, value, bounds.x + bounds.width / 2, bounds.y + bounds.height / 2, HorizontalAlignment.CENTER, VerticalAlignment.CENTER); diff --git a/diylc/diylc-library/src/org/diylc/components/guitar/SingleCoilPickup.java b/diylc/diylc-library/src/org/diylc/components/guitar/SingleCoilPickup.java index 884b2df5..c72891e3 100644 --- a/diylc/diylc-library/src/org/diylc/components/guitar/SingleCoilPickup.java +++ b/diylc/diylc-library/src/org/diylc/components/guitar/SingleCoilPickup.java @@ -160,7 +160,7 @@ public class SingleCoilPickup extends AbstractTransparentComponent { : LABEL_COLOR; } g2d.setColor(finalLabelColor); - g2d.setFont(LABEL_FONT); + g2d.setFont(project.getFont()); Rectangle bounds = body[3].getBounds(); drawCenteredText(g2d, value, bounds.x + bounds.width / 2, bounds.y + bounds.height / 2, HorizontalAlignment.CENTER, VerticalAlignment.CENTER); diff --git a/diylc/diylc-library/src/org/diylc/components/misc/BOM.java b/diylc/diylc-library/src/org/diylc/components/misc/BOM.java index 81ba0fbe..aaca4e67 100644 --- a/diylc/diylc-library/src/org/diylc/components/misc/BOM.java +++ b/diylc/diylc-library/src/org/diylc/components/misc/BOM.java @@ -51,7 +51,7 @@ public class BOM extends AbstractComponent { iterator.remove(); } } - g2d.setFont(LABEL_FONT); + g2d.setFont(project.getFont()); g2d.setColor(componentState == ComponentState.DRAGGING || componentState == ComponentState.SELECTED ? SELECTION_COLOR : getColor()); // Determine maximum name length and maximum value length to calculate diff --git a/diylc/diylc-library/src/org/diylc/components/passive/PotentiometerPanel.java b/diylc/diylc-library/src/org/diylc/components/passive/PotentiometerPanel.java index 33bcd9c9..ad625924 100644 --- a/diylc/diylc-library/src/org/diylc/components/passive/PotentiometerPanel.java +++ b/diylc/diylc-library/src/org/diylc/components/passive/PotentiometerPanel.java @@ -196,7 +196,7 @@ public class PotentiometerPanel extends AbstractPotentiometer { } } // Draw caption. - g2d.setFont(LABEL_FONT); + g2d.setFont(project.getFont()); Color finalLabelColor; if (outlineMode) { finalLabelColor = diff --git a/diylc/diylc-library/src/org/diylc/components/passive/TrimmerPotentiometer.java b/diylc/diylc-library/src/org/diylc/components/passive/TrimmerPotentiometer.java index a3df8243..3b178334 100644 --- a/diylc/diylc-library/src/org/diylc/components/passive/TrimmerPotentiometer.java +++ b/diylc/diylc-library/src/org/diylc/components/passive/TrimmerPotentiometer.java @@ -327,7 +327,7 @@ public class TrimmerPotentiometer extends AbstractPotentiometer { } // Draw label. - g2d.setFont(LABEL_FONT); + g2d.setFont(project.getFont()); Color finalLabelColor; if (outlineMode) { finalLabelColor = diff --git a/diylc/diylc-library/src/org/diylc/components/semiconductors/DIL_IC.java b/diylc/diylc-library/src/org/diylc/components/semiconductors/DIL_IC.java index 6c817fbb..411452d1 100644 --- a/diylc/diylc-library/src/org/diylc/components/semiconductors/DIL_IC.java +++ b/diylc/diylc-library/src/org/diylc/components/semiconductors/DIL_IC.java @@ -331,7 +331,7 @@ public class DIL_IC extends AbstractTransparentComponent { } } // Draw label. - g2d.setFont(LABEL_FONT); + g2d.setFont(project.getFont()); Color finalLabelColor; if (outlineMode) { Theme theme = @@ -393,7 +393,7 @@ public class DIL_IC extends AbstractTransparentComponent { textY2 = textY2 - pinSize; } - g2d.setFont(LABEL_FONT.deriveFont((float) (Label.LABEL_FONT.getSize2D() * 0.66))); + g2d.setFont(project.getFont().deriveFont((float) (project.getFont().getSize2D() * 0.66))); if (displayNumbers == DisplayNumbers.DIP) { if (pinNo > pinCount.getValue() / 2) { g2d.drawString(Integer.toString(pinCount.getValue() - j), textX1, textY1); diff --git a/diylc/diylc-library/src/org/diylc/components/semiconductors/ICSymbol.java b/diylc/diylc-library/src/org/diylc/components/semiconductors/ICSymbol.java index 4763758f..8574792c 100644 --- a/diylc/diylc-library/src/org/diylc/components/semiconductors/ICSymbol.java +++ b/diylc/diylc-library/src/org/diylc/components/semiconductors/ICSymbol.java @@ -89,7 +89,7 @@ public class ICSymbol extends AbstractTransparentComponent { g2d.setStroke(ObjectCache.getInstance().fetchBasicStroke(2)); g2d.draw(body[0]); // Draw label - g2d.setFont(LABEL_FONT); + g2d.setFont(project.getFont()); Color finalLabelColor; if (outlineMode) { Theme theme = diff --git a/diylc/diylc-library/src/org/diylc/components/semiconductors/SIL_IC.java b/diylc/diylc-library/src/org/diylc/components/semiconductors/SIL_IC.java index 0d0371ff..96aa7ee2 100644 --- a/diylc/diylc-library/src/org/diylc/components/semiconductors/SIL_IC.java +++ b/diylc/diylc-library/src/org/diylc/components/semiconductors/SIL_IC.java @@ -304,7 +304,7 @@ public class SIL_IC extends AbstractTransparentComponent { } } // Draw label. - g2d.setFont(LABEL_FONT); + g2d.setFont(project.getFont()); Color finalLabelColor; if (outlineMode) { Theme theme = diff --git a/diylc/diylc-library/src/org/diylc/components/semiconductors/TransistorTO1.java b/diylc/diylc-library/src/org/diylc/components/semiconductors/TransistorTO1.java index 32507478..d11fe142 100644 --- a/diylc/diylc-library/src/org/diylc/components/semiconductors/TransistorTO1.java +++ b/diylc/diylc-library/src/org/diylc/components/semiconductors/TransistorTO1.java @@ -227,7 +227,7 @@ public class TransistorTO1 extends AbstractTransparentComponent { } // Draw label. - g2d.setFont(LABEL_FONT); + g2d.setFont(project.getFont()); Color finalLabelColor; if (outlineMode) { finalLabelColor = diff --git a/diylc/diylc-library/src/org/diylc/components/semiconductors/TransistorTO220.java b/diylc/diylc-library/src/org/diylc/components/semiconductors/TransistorTO220.java index f2d9bc58..735d7988 100644 --- a/diylc/diylc-library/src/org/diylc/components/semiconductors/TransistorTO220.java +++ b/diylc/diylc-library/src/org/diylc/components/semiconductors/TransistorTO220.java @@ -349,7 +349,7 @@ public class TransistorTO220 extends AbstractTransparentComponent { } // Draw label. - g2d.setFont(LABEL_FONT); + g2d.setFont(project.getFont()); Color finalLabelColor; if (outlineMode) { finalLabelColor = diff --git a/diylc/diylc-library/src/org/diylc/components/semiconductors/TransistorTO3.java b/diylc/diylc-library/src/org/diylc/components/semiconductors/TransistorTO3.java index fa2f0cfe..c6b93d71 100644 --- a/diylc/diylc-library/src/org/diylc/components/semiconductors/TransistorTO3.java +++ b/diylc/diylc-library/src/org/diylc/components/semiconductors/TransistorTO3.java @@ -264,7 +264,7 @@ public class TransistorTO3 extends AbstractTransparentComponent { } // Draw label. - g2d.setFont(LABEL_FONT); + g2d.setFont(project.getFont()); Color finalLabelColor; if (outlineMode) { finalLabelColor = diff --git a/diylc/diylc-library/src/org/diylc/components/semiconductors/TransistorTO92.java b/diylc/diylc-library/src/org/diylc/components/semiconductors/TransistorTO92.java index e496b06b..893eb75c 100644 --- a/diylc/diylc-library/src/org/diylc/components/semiconductors/TransistorTO92.java +++ b/diylc/diylc-library/src/org/diylc/components/semiconductors/TransistorTO92.java @@ -262,7 +262,7 @@ public class TransistorTO92 extends AbstractTransparentComponent { } // Draw label. - g2d.setFont(LABEL_FONT); + g2d.setFont(project.getFont()); Color finalLabelColor; if (outlineMode) { Theme theme = diff --git a/diylc/diylc-library/src/org/diylc/components/smd/PassiveSMDComponent.java b/diylc/diylc-library/src/org/diylc/components/smd/PassiveSMDComponent.java index 70fb0e65..afa5765d 100644 --- a/diylc/diylc-library/src/org/diylc/components/smd/PassiveSMDComponent.java +++ b/diylc/diylc-library/src/org/diylc/components/smd/PassiveSMDComponent.java @@ -269,7 +269,7 @@ public abstract class PassiveSMDComponent extends AbstractTransparentComponen g2d.draw(contactArea); // Draw label. - g2d.setFont(LABEL_FONT); + g2d.setFont(project.getFont()); Color finalLabelColor; if (outlineMode) { Theme theme = diff --git a/diylc/diylc-library/src/org/diylc/components/tube/AbstractTubeSymbol.java b/diylc/diylc-library/src/org/diylc/components/tube/AbstractTubeSymbol.java index 3b7d3388..36caf2cb 100644 --- a/diylc/diylc-library/src/org/diylc/components/tube/AbstractTubeSymbol.java +++ b/diylc/diylc-library/src/org/diylc/components/tube/AbstractTubeSymbol.java @@ -75,7 +75,7 @@ public abstract class AbstractTubeSymbol extends AbstractComponent { } // Draw label - g2d.setFont(LABEL_FONT); + g2d.setFont(project.getFont()); Color finalLabelColor; if (outlineMode) { Theme theme = diff --git a/diylc/diylc-swing/lib/diylc-core.jar b/diylc/diylc-swing/lib/diylc-core.jar index 06e9aba4..b365e415 100644 Binary files a/diylc/diylc-swing/lib/diylc-core.jar and b/diylc/diylc-swing/lib/diylc-core.jar differ diff --git a/diylc/diylc-swing/library/main.jar b/diylc/diylc-swing/library/main.jar index 6d94c3ce..b6b3b674 100644 Binary files a/diylc/diylc-swing/library/main.jar and b/diylc/diylc-swing/library/main.jar differ diff --git a/diylc/diylc-swing/update.xml b/diylc/diylc-swing/update.xml index 92f0301a..702603f6 100644 --- a/diylc/diylc-swing/update.xml +++ b/diylc/diylc-swing/update.xml @@ -1650,6 +1650,10 @@ NEW_FEATURE Hold Control key to zoom with mouse wheel. Zooming tracks mouse cursor position. + + NEW_FEATURE + Ability to set project-wide default font through 'Edit Project Settings' dialog. + IMPROVEMENT Hookup wire can be sent to back behind boards