001package org.openstreetmap.gui.jmapviewer; 002 003import java.awt.AlphaComposite; 004import java.awt.Color; 005import java.awt.Font; 006import java.awt.Stroke; 007 008public class Style { 009 private Color color; 010 private Color backColor; 011 private Stroke stroke; 012 private Font font; 013 014 private static final AlphaComposite TRANSPARENCY = AlphaComposite.getInstance(AlphaComposite.SRC_OVER); 015 private static final AlphaComposite OPAQUE = AlphaComposite.getInstance(AlphaComposite.SRC); 016 017 public Style(){ 018 super(); 019 } 020 public Style(Color color, Color backColor, Stroke stroke, Font font) { 021 super(); 022 this.color = color; 023 this.backColor = backColor; 024 this.stroke = stroke; 025 this.font = font; 026 } 027 028 public Color getColor() { 029 return color; 030 } 031 public void setColor(Color color) { 032 this.color = color; 033 } 034 public Color getBackColor() { 035 return backColor; 036 } 037 public void setBackColor(Color backColor) { 038 this.backColor = backColor; 039 } 040 public Stroke getStroke() { 041 return stroke; 042 } 043 public void setStroke(Stroke stroke) { 044 this.stroke = stroke; 045 } 046 public Font getFont() { 047 return font; 048 } 049 public void setFont(Font font) { 050 this.font = font; 051 } 052 private AlphaComposite getAlphaComposite(Color color){ 053 return color.getAlpha()==255?OPAQUE:TRANSPARENCY; 054 } 055 public AlphaComposite getAlphaComposite(){ 056 return getAlphaComposite(color); 057 } 058 public AlphaComposite getBackAlphaComposite(){ 059 return getAlphaComposite(backColor); 060 } 061}