diff --git a/ diy-layout-creator --username bancika@gmail.com/DIYLC/lib/bancika-gui-framework.jar b/ diy-layout-creator --username bancika@gmail.com/DIYLC/lib/bancika-gui-framework.jar index ca82e050..663e1b68 100644 Binary files a/ diy-layout-creator --username bancika@gmail.com/DIYLC/lib/bancika-gui-framework.jar and b/ diy-layout-creator --username bancika@gmail.com/DIYLC/lib/bancika-gui-framework.jar differ diff --git a/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/com/diyfever/diylc/DIYLCStarter.java b/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/com/diyfever/diylc/DIYLCStarter.java index a244cc2d..bb452b64 100644 --- a/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/com/diyfever/diylc/DIYLCStarter.java +++ b/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/com/diyfever/diylc/DIYLCStarter.java @@ -9,6 +9,7 @@ import javax.swing.UIManager; import org.apache.log4j.PropertyConfigurator; import com.diyfever.diylc.gui.MainFrame; +import com.diyfever.gui.miscutils.PropertyInjector; /** * @@ -28,6 +29,16 @@ public class DIYLCStarter { } catch (IOException e) { e.printStackTrace(); } + + url = DIYLCStarter.class.getResource("config.properties"); + properties = new Properties(); + try { + properties.load(url.openStream()); + PropertyInjector.injectProperties(properties); + } catch (IOException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } try { UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); diff --git a/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/com/diyfever/diylc/common/PropertyWrapper.java b/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/com/diyfever/diylc/common/PropertyWrapper.java index 3c9b2267..dec8ae85 100644 --- a/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/com/diyfever/diylc/common/PropertyWrapper.java +++ b/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/com/diyfever/diylc/common/PropertyWrapper.java @@ -5,6 +5,12 @@ import java.lang.reflect.Method; import com.diyfever.diylc.model.IComponentInstance; +/** + * Entity class for editable properties extracted from component objects. + * Represents a single editable property together with it's current value. + * + * @author Branislav Stojkovic + */ public class PropertyWrapper implements Cloneable { private String name; diff --git a/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/com/diyfever/diylc/config.properties b/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/com/diyfever/diylc/config.properties new file mode 100644 index 00000000..308224fe --- /dev/null +++ b/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/com/diyfever/diylc/config.properties @@ -0,0 +1 @@ +Test=XYZ \ No newline at end of file diff --git a/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/com/diyfever/diylc/model/annotations/BomName.java b/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/com/diyfever/diylc/model/annotations/BomName.java index fced8813..c831196e 100644 --- a/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/com/diyfever/diylc/model/annotations/BomName.java +++ b/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/com/diyfever/diylc/model/annotations/BomName.java @@ -3,6 +3,12 @@ package com.diyfever.diylc.model.annotations; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; +/** + * Annotates getter for the component name that will be shown in the BOM. Only + * one getter per class may be tagged with this annotation. + * + * @author Branislav Stojkovic + */ @Retention(RetentionPolicy.RUNTIME) public @interface BomName { diff --git a/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/com/diyfever/diylc/model/annotations/BomValue.java b/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/com/diyfever/diylc/model/annotations/BomValue.java index 3a27d30f..a5064dc5 100644 --- a/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/com/diyfever/diylc/model/annotations/BomValue.java +++ b/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/com/diyfever/diylc/model/annotations/BomValue.java @@ -3,6 +3,12 @@ package com.diyfever.diylc.model.annotations; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; +/** + * Annotates getter for the component value that will be shown in the BOM. Only + * one getter per class may be tagged with this annotation. + * + * @author Branislav Stojkovic + */ @Retention(RetentionPolicy.RUNTIME) public @interface BomValue { diff --git a/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/com/diyfever/diylc/model/annotations/ControlPoint.java b/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/com/diyfever/diylc/model/annotations/ControlPoint.java index cff7a706..d4cd711d 100644 --- a/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/com/diyfever/diylc/model/annotations/ControlPoint.java +++ b/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/com/diyfever/diylc/model/annotations/ControlPoint.java @@ -7,9 +7,9 @@ import java.lang.annotation.RetentionPolicy; import com.diyfever.diylc.model.VisibilityPolicy; /** - * Annotation for control points. This annotation may be added to a field XYZ of - * type {@link Point} only when both getters and setters for that property - * exist. Annotation is added always on the getter. + * Annotation for control points. This annotation may be added fields of type + * {@link Point} only when both getters and setters exist. Annotation is added + * always on the getter. * * @author Branislav Stojkovic */ diff --git a/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/com/diyfever/diylc/presenter/G2DWrapper.java b/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/com/diyfever/diylc/presenter/G2DWrapper.java index 082199e7..6ff2b8d9 100644 --- a/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/com/diyfever/diylc/presenter/G2DWrapper.java +++ b/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/com/diyfever/diylc/presenter/G2DWrapper.java @@ -32,7 +32,10 @@ import java.util.Map; /** * {@link Graphics2D} wrapper that keeps track of all drawing actions and - * creates an {@link Area} that corresponds to drawn objects. + * creates an {@link Area} that corresponds to drawn objects. Before each + * component is drawn, {@link #startedDrawingComponent()} should be called. + * After the component is drawn, area may be retrieved using + * {@link #finishedDrawingComponent()}. * * @author Branislav Stojkovic */ @@ -71,7 +74,8 @@ class G2DWrapper extends Graphics2D { } /** - * Resets transformation to identity. + * Resets transformation to identity. Should be called only once before any + * drawing is done. */ public void resetTx() { currentTx = new AffineTransform();