blob: 77196a8b37c8776d1bc65d83e4c2f061ab475b3b [file] [log] [blame]
/*
* Copyright (C) 2014 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.android.tools.idea.npw;
import com.android.assetstudiolib.GraphicGenerator;
import com.android.tools.idea.npw.AssetStudioAssetGenerator;
import com.android.tools.idea.wizard.dynamic.ScopedStateStore;
import org.jetbrains.annotations.Nullable;
import java.awt.*;
import static com.android.tools.idea.npw.IconStep.*;
/**
* Adapter for asset studio asset generator to use data from {@link ScopedStateStore}.
*/
public class ScopedStateStoreAdapter implements AssetStudioAssetGenerator.AssetStudioContext {
private final ScopedStateStore myState;
public ScopedStateStoreAdapter(ScopedStateStore state) {
myState = state;
}
@Override
public int getPadding() {
Integer value = myState.get(ATTR_PADDING);
assert value != null;
return value;
}
@Override
public void setPadding(int padding) {
myState.put(ATTR_PADDING, padding);
}
@Override
@Nullable
public AssetStudioAssetGenerator.SourceType getSourceType() {
return myState.get(ATTR_SOURCE_TYPE);
}
@Override
public void setSourceType(AssetStudioAssetGenerator.SourceType sourceType) {
myState.put(ATTR_SOURCE_TYPE, sourceType);
}
@Nullable
@Override
public AssetStudioAssetGenerator.AssetType getAssetType() {
return myState.get(ATTR_ASSET_TYPE);
}
@Override
public boolean isTrim() {
Boolean trim = myState.get(ATTR_TRIM);
assert trim != null;
return trim;
}
@Override
public void setTrim(boolean trim) {
myState.put(ATTR_TRIM, trim);
}
@Override
public boolean isDogear() {
Boolean dogEar = myState.get(ATTR_DOGEAR);
assert dogEar != null;
return dogEar;
}
@Override
public void setDogear(boolean dogEar) {
myState.put(ATTR_DOGEAR, dogEar);
}
@Nullable
@Override
public String getImagePath() {
return myState.get(ATTR_IMAGE_PATH);
}
@Nullable
@Override
public String getText() {
return myState.get(ATTR_TEXT);
}
@Override
public void setText(String text) {
myState.put(ATTR_TEXT, text);
}
@Nullable
@Override
public String getClipartName() {
return myState.get(ATTR_CLIPART_NAME);
}
@Override
public void setClipartName(String name) {
myState.put(ATTR_CLIPART_NAME, name);
}
@Nullable
@Override
public String getVectorLibIconPath() {
return myState.get(ATTR_VECTOR_LIB_ICON_PATH);
}
@Override
public void setVectorLibIconPath(String name) {
myState.put(ATTR_VECTOR_LIB_ICON_PATH, name);
}
@Override
public Color getForegroundColor() {
Color color = myState.get(ATTR_FOREGROUND_COLOR);
assert color != null;
return color;
}
@Override
public void setForegroundColor(Color fg) {
myState.put(ATTR_FOREGROUND_COLOR, fg);
}
@Nullable
@Override
public String getFont() {
return myState.get(ATTR_FONT);
}
@Override
public void setFont(String fontName) {
myState.put(ATTR_FONT, fontName);
}
@Override
public int getFontSize() {
Integer fontSize = myState.get(ATTR_FONT_SIZE);
assert fontSize != null;
return fontSize;
}
@Override
public void setFontSize(int fontSize) {
myState.put(ATTR_FONT_SIZE, fontSize);
}
@Override
public AssetStudioAssetGenerator.Scaling getScaling() {
AssetStudioAssetGenerator.Scaling scaling = myState.get(ATTR_SCALING);
assert scaling != null;
return scaling;
}
@Override
public void setScaling(AssetStudioAssetGenerator.Scaling scaling) {
myState.put(ATTR_SCALING, scaling);
}
@Nullable
@Override
public String getAssetName() {
return myState.get(ATTR_ASSET_NAME);
}
@Override
public GraphicGenerator.Shape getShape() {
GraphicGenerator.Shape shape = myState.get(ATTR_SHAPE);
assert shape != null;
return shape;
}
@Override
public void setShape(GraphicGenerator.Shape shape) {
myState.put(ATTR_SHAPE, shape);
}
@Override
public Color getBackgroundColor() {
Color color = myState.get(ATTR_BACKGROUND_COLOR);
assert color != null;
return color;
}
@Override
public void setBackgroundColor(Color bg) {
myState.put(ATTR_BACKGROUND_COLOR, bg);
}
@Nullable
@Override
public String getAssetTheme() {
return myState.get(ATTR_ASSET_THEME);
}
@Override
public void setErrorLog(String log) {
myState.put(ATTR_ERROR_LOG, log);
}
@Override
public String getVectorWidth() {
return myState.get(ATTR_VECTOR_DRAWBLE_WIDTH);
}
@Override
public String getVectorHeight() {
return myState.get(ATTR_VECTOR_DRAWBLE_HEIGHT);
}
@Override
public void setOriginalWidth(int width) {
myState.put(ATTR_ORIGINAL_WIDTH, width);
}
@Override
public void setOriginalHeight(int height) {
myState.put(ATTR_ORIGINAL_HEIGHT, height);
}
@Override
public int getVectorOpacity() {
return myState.get(ATTR_VECTOR_DRAWBLE_OPACTITY);
}
@Override
public boolean getVectorAutoMirrored() {
return myState.get(ATTR_VECTOR_DRAWBLE_AUTO_MIRRORED);
}
}