From ef11c931a7ef0819641926b30cacf50f21f138c0 Mon Sep 17 00:00:00 2001 From: bancika Date: Sun, 4 Mar 2012 16:28:54 +0000 Subject: [PATCH] --- .../diylc/components/connectivity/Line.java | 105 ++++++++++++++++++ .../diylc-swing/library/main.jar | Bin 133540 -> 135320 bytes .../diylc-swing/update.xml | 4 + 3 files changed, 109 insertions(+) create mode 100644 diy-layout-creator --username bancika@gmail.com/diylc-library/src/org/diylc/components/connectivity/Line.java diff --git a/ diy-layout-creator --username bancika@gmail.com/diylc-library/src/org/diylc/components/connectivity/Line.java b/ diy-layout-creator --username bancika@gmail.com/diylc-library/src/org/diylc/components/connectivity/Line.java new file mode 100644 index 00000000..ffea9126 --- /dev/null +++ b/ diy-layout-creator --username bancika@gmail.com/diylc-library/src/org/diylc/components/connectivity/Line.java @@ -0,0 +1,105 @@ +package org.diylc.components.connectivity; + +import java.awt.Color; +import java.awt.Graphics2D; +import java.awt.Shape; + +import org.diylc.common.ObjectCache; +import org.diylc.components.AbstractLeadedComponent; +import org.diylc.core.ComponentState; +import org.diylc.core.CreationMethod; +import org.diylc.core.IDIYComponent; +import org.diylc.core.IDrawingObserver; +import org.diylc.core.Project; +import org.diylc.core.annotations.ComponentDescriptor; +import org.diylc.core.annotations.EditableProperty; +import org.diylc.core.measures.Size; + +@ComponentDescriptor(name = "Line", author = "Branislav Stojkovic", category = "Connectivity", creationMethod = CreationMethod.POINT_BY_POINT, instanceNamePrefix = "LN", description = "", zOrder = IDIYComponent.COMPONENT) +public class Line extends AbstractLeadedComponent { + + private static final long serialVersionUID = 1L; + + public static Color COLOR = Color.black; + + private Color color = COLOR; + + @Override + public void drawIcon(Graphics2D g2d, int width, int height) { + g2d.setStroke(ObjectCache.getInstance().fetchBasicStroke(1)); + g2d.setColor(COLOR); + g2d.drawLine(1, height - 2, width - 2, 1); + } + + @Override + public void draw(Graphics2D g2d, ComponentState componentState, boolean outlineMode, + Project project, IDrawingObserver drawingObserver) { + g2d.setStroke(ObjectCache.getInstance().fetchBasicStroke(1)); + g2d.setColor(color); + g2d.drawLine(getControlPoint(0).x, getControlPoint(0).y, getControlPoint(1).x, + getControlPoint(1).y); + } + + @Override + public Color getLeadColor(ComponentState componentState) { + return componentState == ComponentState.SELECTED + || componentState == ComponentState.DRAGGING ? SELECTION_COLOR : color; + } + + @EditableProperty + public Color getColor() { + return color; + } + + public void setColor(Color color) { + this.color = color; + } + + public Color getBodyColor() { + return super.getBodyColor(); + } + + @Override + public Color getBorderColor() { + return super.getBorderColor(); + } + + @Override + public Byte getAlpha() { + return super.getAlpha(); + } + + @Override + public Size getLength() { + return super.getLength(); + } + + @Override + public Size getWidth() { + return super.getWidth(); + } + + @Override + public Void getValue() { + return null; + } + + @Override + public void setValue(Void value) { + } + + @Override + protected Shape getBodyShape() { + return null; + } + + @Override + protected Size getDefaultWidth() { + return null; + } + + @Override + protected Size getDefaultLength() { + return null; + } +} diff --git a/ diy-layout-creator --username bancika@gmail.com/diylc-swing/library/main.jar b/ diy-layout-creator --username bancika@gmail.com/diylc-swing/library/main.jar index 44db0fe7c53dcc63facc74eb851ab4e02cd32533..012f97c2387ef43f502e05590f8350e5cd3ba17c 100644 GIT binary patch delta 3860 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 S=Cws^ky3F4>G_T?dgMQqk-`=L delta 2191 zcmZ8iX-rgC6u##UGYqr588%T_M6`&2EH$!82h<=?6|qg!x}#`XMZ}nxYSrow)1i$9 zoXAyaDYa@N7MEBvrmbyIDODO8Q)`Wa*rK*>l=?#!9qc*x(Q#f)eBZn0`_6aIIrq+E z-)F`{E~BM*hR)B#=wC@uwPieCR#cttq-Rq!J-cG@=`uqqFDY_4AcNpta1fk@X#^ff zBbdZ92`YH58XPBVcCL5b;wD_5e!ve}33uBKI>MUZ>Hxy=kzGbYC3db{uS&is^@&*# zeiVP*amt_2lef-5SU&T()J4tRCD)CM3=+>QpCo-Bt(+k9!z+5E&bqmlQ(nWCgLcBA zU71o>Sv5_ebz5DH)UP^fmbl?`zX=;YZEyZw`d(?R(vxn*l_U$HtK){Ocip{m>EHQx zh4i2EBt8&%_f{ReMFID9JzSJ8bw;Qm3wN3Vho~2KdnnYBnR`7OD2Q9|lJUFqRy`*sB_KQzxoNx$5qP zibUg(I>kSERwQSvO2=5bMxA=!Rq`a&72RVLZGN1txoG#p>OOyn@pPql2JjFaeQ%8T zy%9Njq<(&mRHCTV^DtS;-Nqx?+t7T2A7k+v^Y|C294!J2U>1+`s`~(0^njRR<6)vc z28^Op&-EhPz=LS>Vgu4ne=n_wH42QBeG~l+(MdLy?lJI03P$;3ur=J9Gy3J2=KkWC z__mp`ABQuRpsDTDSXFN~a=U2pS9iZjPRmogOdQ!~88H}}=?&V&`$ir{%syhuCwn(G ziWyU})!R6BqPvOicKFZ<0X$C5tR(7*qZAKgvp-|gGQ)$CuOYL=P!7+FZwlGfx;@V@TGA!!e< zda+k(6PHZtfI7%z;|i6bPm)-$8WfRiR`+<#jPxHXedr&`u!C@~vIT1{-|fRFRz8xLcq=lMbv{hFb?9gA%&zK=!9Dik8BW#|=KR8|4;Q~$)r-U=t|<8| NpUoSAx2^}!{a>~1atQzc diff --git a/ diy-layout-creator --username bancika@gmail.com/diylc-swing/update.xml b/ diy-layout-creator --username bancika@gmail.com/diylc-swing/update.xml index b4eee20f..6866456b 100644 --- a/ diy-layout-creator --username bancika@gmail.com/diylc-swing/update.xml +++ b/ diy-layout-creator --username bancika@gmail.com/diylc-swing/update.xml @@ -486,6 +486,10 @@ NEW_FEATURE IC Symbol + + NEW_FEATURE + Line connector + IMPROVEMENT IC component can display name or value