All Downloads are FREE. Search and download functionalities are using the official Maven repository.

eu.hansolo.steelseries.tools.DesignSet Maven / Gradle / Ivy

package eu.hansolo.steelseries.tools;

import java.awt.Color;
import java.awt.Paint;


/**
 * 

* @author Gerrit Grunwald */ public class DesignSet { private final FrameDesign FRAME_DESIGN; private final FrameEffect FRAME_EFFECT; private final Paint OUTER_FRAME_COLOR; private final Paint INNER_FRAME_COLOR; private final BackgroundColor BACKGROUND_COLOR; private final Color TEXTURE_COLOR; private final ColorDef COLOR; private final LedColor LED_COLOR; private final LedColor USER_LED_COLOR; private final LcdColor LCD_COLOR; private final Color GLOW_COLOR; private final KnobStyle KNOB_STYLE; private DesignSet(Builder builder) { // private Constructor can only be called from Builder FRAME_DESIGN = builder.frameDesign; FRAME_EFFECT = builder.frameEffect; OUTER_FRAME_COLOR = builder.outerFrameColor; INNER_FRAME_COLOR = builder.innerFrameColor; BACKGROUND_COLOR = builder.backgroundColor; TEXTURE_COLOR = builder.textureColor; COLOR = builder.color; LED_COLOR = builder.ledColor; USER_LED_COLOR = builder.userLedColor; LCD_COLOR = builder.lcdColor; GLOW_COLOR = builder.glowColor; KNOB_STYLE = builder.knobStyle; } public FrameDesign getFrameDesign() { return FRAME_DESIGN; } public FrameEffect getFrameEffect() { return FRAME_EFFECT; } public Paint getOuterFrameColor() { return OUTER_FRAME_COLOR; } public Paint getInnerFrameColor() { return INNER_FRAME_COLOR; } public BackgroundColor getBackgroundColor() { return BACKGROUND_COLOR; } public Color getTextureColor() { return TEXTURE_COLOR; } public ColorDef getColor() { return COLOR; } public LedColor getLedColor() { return LED_COLOR; } public LedColor getUserLedColor() { return USER_LED_COLOR; } public LcdColor getLcdColor() { return LCD_COLOR; } public Color getGlowColor() { return GLOW_COLOR; } public KnobStyle getKnobStyle() { return KNOB_STYLE; } public static class Builder { // mandatory parameter private FrameDesign frameDesign = null; private FrameEffect frameEffect = null; private Paint outerFrameColor = null; private Paint innerFrameColor = null; private BackgroundColor backgroundColor = null; private Color textureColor = null; private ColorDef color = null; private LedColor ledColor = null; private LedColor userLedColor = null; private LcdColor lcdColor = null; private Color glowColor = null; private KnobStyle knobStyle = null; public Builder() { } public Builder frameDesign(FrameDesign frameDesign) { this.frameDesign = frameDesign; return this; } public Builder frameEffect(FrameEffect frameEffect) { this.frameEffect = frameEffect; return this; } public Builder outerFrameColor(Paint outerFrameColor) { this.outerFrameColor = outerFrameColor; return this; } public Builder innerFrameColor(Paint innerFrameColor) { this.innerFrameColor = innerFrameColor; return this; } public Builder backgroundColor(BackgroundColor backgroundColor) { this.backgroundColor = backgroundColor; return this; } public Builder textureColor(Color textureColor) { this.textureColor = textureColor; return this; } public Builder color(ColorDef color) { this.color = color; return this; } public Builder ledColor(LedColor ledColor) { this.ledColor = ledColor; return this; } public Builder userLedColor(LedColor userLedColor) { this.userLedColor = userLedColor; return this; } public Builder lcdColor(LcdColor lcdColor) { this.lcdColor = lcdColor; return this; } public Builder glowColor(Color glowColor) { this.glowColor = glowColor; return this; } public Builder knobStyle(KnobStyle knobStyle) { this.knobStyle = knobStyle; return this; } public DesignSet build() { return new DesignSet(this); } } }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy