From e8d45e1426c6a48de01694c25942263fbb807b0b Mon Sep 17 00:00:00 2001 From: bancika Date: Wed, 26 Jan 2011 21:06:51 +0000 Subject: [PATCH] added image alpha --- .../DIYLC/library/main.jar | Bin 58789 -> 58972 bytes .../src/org/diylc/components/misc/Image.java | 17 +++++++++++++---- 2 files changed, 13 insertions(+), 4 deletions(-) diff --git a/ diy-layout-creator --username bancika@gmail.com/DIYLC/library/main.jar b/ diy-layout-creator --username bancika@gmail.com/DIYLC/library/main.jar index 8c87bfa8820063a5b0db79bf914565c19df2d30a..5b718cc1bcddbcfcaffe730438039b0d569598ec 100644 GIT binary patch delta 2902 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 delta 2831 zcmZve2{fBo8^1_2$1UP@HeG8(a z{-O{#*EQM^78|WJG=6sE&%Hr=V6YN#K%)J7piE#N@Nq_r5n~Ynt@qyE7TQmTG%O0{ z37?vR=3K9#@1XqJn`u3+!Z6qiB+wqDPRVv(b&(2|`#ZdQ;DDSH+2L9&_N>N~#XWc1 z`_>1|;G6ILZx5hlZp}o;cKCk;6vsLLN@n%FbsZ(T1RH)G75`dfSYrHfBi;06YGLcg zji{Z{s6SR-nCu7*rp;cNyd0^NhxINHxw{W{R5u32+7vqa8H+41d-4E0}eeoj*yU#zxv~u5Qj3kcbOeDn}%hZqH zWat-eAe1=V!9d$)jY9@@`hg?`M-^g(4N|{1sgOMrA8#!YaKFN#p-GQC>S{+|RQTCDObRyZsa{)_Ou$jh91j)u zi!6mZ54Xr)7N#pxm87m)yb|eH3AXj9#Efg^sOFzZ&_wi<8x=KIc-(uP3+1G%0Dk#DNfM*At5W2Nr0nx9tj z-99;$!~n_eUW6Oo!H~siJkOGJW#5xpW7&aF`SN3EwYkSTWn|J8O z_~ROD?Ek1|$e7caRTRr>ZlR`X%ernq63E!t6`cg1;kG@V#fbET>n=K78$Aj^6YYh;L-T#yMWCNg_imf8`N}iTt-`K-$ClX;#zaWM`pr+m!TZp|6_uN#JVoQ%bDz&BJ}4)=A}Awk#!Y7rr^NosSM>Mf&;sa_fJ4JC%w< zH{ABv()p4dDYf@?iIRw_-yio&=PHdcwM1$!rap#tx_c(qljT}v-*ASxI=1ehUblX$ zs3ZYbbX;x0f?{VrcB$wwtk%Gbn7?Ww^{)KK)U4+=k)(!%sSE4oU1t|;HH)kU7z(xq z$COtF$bT9WA7`jM!=E*r%`ii|cxvTY9nD#9WVPpw>;!7rW$Llpo9omvLrJI)4WT~t zs=_y~&#rVyx8LpZI$^p;#X^1cfXexRz}2TwRgdh0&c#viB&wd3jLR)@&ya~q_-DZ+ zkBsa|%Yddrj`!phSXf|!7@f>Ge@8pZW-E9`J8R>NplxhsbZE#bn{Rr265Q zi#68X^#VoSteJh1Y%;wzq&4}j^|$`~p@=hIFz()+rSCE5zL4vjH0pc zXWKlKWxv3$y4tGR(`hXb0X%Ln+VmaFH)trZF1#M?cJiK_NC{Gyyl?=p8N3n z{ppV5e{Iw&b?zXlZmd^TR~lax6noq=|7>N@dFX=`rL5z$mC^6aefW+c9e1~gu3W5p zm;TE3?^7~2KUb@9&Hhv{%VKnJstcwd?)XU=6I=^I>3F&Q%ScP!w@2}04Pb_9yosv$v4rhkGw zHL^(#^4zQzG~|sB+q|JUqJ6(Om?t|}48{Y@aRbo%dE=%abSCg10w?r96i=9eA+r;< zAP!GDf{34V0r7Uy8iWkX4un6;2?T@X1!Dh{2Z*y%r$BT~odlsc4Iy?HgVVmCsLh6O zlkEe}KCwMPIL@2~Q9I)eLX;B*B90RZVqq7KvnT%B=&NU~u>bG%gO?ugDNivC2U5_o z0Pg&L4JQWyI7$$_5$*PDqHekCXMWG>`90Ht!gq)Al&WYbDPis~c7)&DJ9pBWF7s~| ziTvNeZvxLHL4i|qXs8SU_xVnBAsCFw--P&0pk^wNl8FVdSJ8muJlIRXdmaO?%iyc} zfY>6Wyx=RGY@mUv|39Vr+r2(HAOM3+!C^4{Zx%Mr10?bdfOswvs^C8#4h%;4CeZH| zKTsPO=SqURuW>PO@&mr20XUV50wxPk1*8QG+>pkvNeR%X!2VNL6JHIhhSbwF^8cuq zMGU;T0a9z|VnEfxZUKHux*taQRn{V4utVPzP}c~gG~s}@-NW|r)4Q9&w|8^tFj$fL z5(d853cXIhB|LPPqSjx5PJVN?lwdIYH*1-{+|85**h|oPc>HYFce~<#z;RFluwLFT J%o_u<{tXj4104VW diff --git a/ diy-layout-creator --username bancika@gmail.com/Library/src/org/diylc/components/misc/Image.java b/ diy-layout-creator --username bancika@gmail.com/Library/src/org/diylc/components/misc/Image.java index 93c503ac..ef1cc0b8 100644 --- a/ diy-layout-creator --username bancika@gmail.com/Library/src/org/diylc/components/misc/Image.java +++ b/ diy-layout-creator --username bancika@gmail.com/Library/src/org/diylc/components/misc/Image.java @@ -1,11 +1,13 @@ package org.diylc.components.misc; +import java.awt.AlphaComposite; +import java.awt.Composite; import java.awt.Graphics2D; import java.awt.Point; import javax.swing.ImageIcon; -import org.diylc.components.AbstractComponent; +import org.diylc.components.AbstractTransparentComponent; import org.diylc.core.ComponentState; import org.diylc.core.IDIYComponent; import org.diylc.core.IDrawingObserver; @@ -15,7 +17,7 @@ import org.diylc.core.annotations.ComponentDescriptor; import org.diylc.core.annotations.EditableProperty; @ComponentDescriptor(name = "Image", author = "Branislav Stojkovic", category = "Misc", description = "User defined image", instanceNamePrefix = "Img", zOrder = IDIYComponent.TEXT, stretchable = false) -public class Image extends AbstractComponent { +public class Image extends AbstractTransparentComponent { private static final long serialVersionUID = 1L; public static String DEFAULT_TEXT = "Double click to edit text"; @@ -37,13 +39,20 @@ public class Image extends AbstractComponent { @Override public void draw(Graphics2D g2d, ComponentState componentState, Project project, IDrawingObserver drawingObserver) { + Composite oldComposite = g2d.getComposite(); + if (alpha < MAX_ALPHA) { + g2d.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_OVER, 1f * alpha + / MAX_ALPHA)); + } double s = 1d * scale / DEFAULT_SCALE; g2d.scale(s, s); g2d.drawImage(image.getImage(), (int) (point.x / s), (int) (point.y / s), null); + g2d.setComposite(oldComposite); + g2d.scale(1 / s, 1 / s); if (componentState == ComponentState.SELECTED) { g2d.setColor(SELECTION_COLOR); - g2d.drawRect((int) (point.x / s), (int) (point.y / s), image.getIconWidth(), image - .getIconHeight()); + g2d.drawRect(point.x, point.y, (int) (image.getIconWidth() * s), (int) (image + .getIconHeight() * s)); } }