added transparency to pot

This commit is contained in:
bancika
2011-01-23 23:54:24 +00:00
parent 2d6927993e
commit fb5baf9571
3 changed files with 11 additions and 2 deletions
@@ -3,13 +3,14 @@ package org.diylc.components.passive;
import java.awt.Point;
import org.diylc.common.Orientation;
import org.diylc.components.AbstractComponent;
import org.diylc.components.AbstractTransparentComponent;
import org.diylc.core.VisibilityPolicy;
import org.diylc.core.annotations.EditableProperty;
import org.diylc.core.measures.Resistance;
import org.diylc.core.measures.ResistanceUnit;
public abstract class AbstractPotentiometer extends AbstractComponent<PotentiometerValue> {
public abstract class AbstractPotentiometer extends
AbstractTransparentComponent<PotentiometerValue> {
private static final long serialVersionUID = 1L;
@@ -1,6 +1,8 @@
package org.diylc.components.passive;
import java.awt.AlphaComposite;
import java.awt.Color;
import java.awt.Composite;
import java.awt.FontMetrics;
import java.awt.Graphics2D;
import java.awt.Point;
@@ -162,7 +164,13 @@ public class PotentiometerPanel extends AbstractPotentiometer {
for (Area shape : getBody()) {
if (shape != null) {
g2d.setColor(bodyColor);
Composite oldComposite = g2d.getComposite();
if (alpha < MAX_ALPHA) {
g2d.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_OVER, 1f * alpha
/ MAX_ALPHA));
}
g2d.fill(shape);
g2d.setComposite(oldComposite);
g2d.setColor(componentState == ComponentState.SELECTED
|| componentState == ComponentState.DRAGGING ? SELECTION_COLOR
: borderColor);