aboutsummaryrefslogtreecommitdiff
path: root/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/assetstudio/CreateAssetSetWizardState.java
diff options
context:
space:
mode:
Diffstat (limited to 'eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/assetstudio/CreateAssetSetWizardState.java')
-rw-r--r--eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/assetstudio/CreateAssetSetWizardState.java258
1 files changed, 0 insertions, 258 deletions
diff --git a/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/assetstudio/CreateAssetSetWizardState.java b/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/assetstudio/CreateAssetSetWizardState.java
deleted file mode 100644
index d3a0f42e9..000000000
--- a/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/assetstudio/CreateAssetSetWizardState.java
+++ /dev/null
@@ -1,258 +0,0 @@
-/*
- * Copyright (C) 2012 The Android Open Source Project
- *
- * Licensed under the Eclipse Public License, Version 1.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.eclipse.org/org/documents/epl-v10.php
- *
- * 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.ide.eclipse.adt.internal.assetstudio;
-
-import static com.android.ide.eclipse.adt.internal.wizards.templates.NewProjectWizard.DEFAULT_LAUNCHER_ICON;
-
-import com.android.annotations.NonNull;
-import com.android.assetstudiolib.GraphicGenerator;
-import com.android.assetstudiolib.GraphicGenerator.Shape;
-import com.android.assetstudiolib.GraphicGeneratorContext;
-import com.android.ide.eclipse.adt.AdtPlugin;
-import com.android.ide.eclipse.adt.internal.wizards.templates.TemplateManager;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.swt.graphics.RGB;
-
-import java.awt.Font;
-import java.awt.GraphicsEnvironment;
-import java.awt.image.BufferedImage;
-import java.io.File;
-import java.io.IOException;
-import java.util.HashMap;
-import java.util.Map;
-
-import javax.imageio.ImageIO;
-
-/**
- * Value object for the AssetStudio wizard. These values are both set by the
- * wizard as well as read by the wizard initially, so passing in a configured
- * {@link CreateAssetSetWizardState} to the icon generator is possible.
- */
-public class CreateAssetSetWizardState implements GraphicGeneratorContext {
- /**
- * The type of asset being created. This field is static such that when you
- * bring up the wizard repeatedly (for example to create multiple
- * notification icons) you don't have to keep selecting the same type over
- * and over.
- */
- public static AssetType sLastType = AssetType.LAUNCHER;
-
- /** The type of asset to be created */
- public AssetType type = sLastType;
-
- /** The base name to use for the created icons */
- public String outputName;
-
- /** The minimum SDK being targeted */
- public int minSdk = -1;
-
- /** The project to create the icons into */
- public IProject project;
-
- /** Whether empty space around the source image should be trimmed */
- public boolean trim = true;
-
- /** The type of source the icon is being created from */
- public SourceType sourceType = SourceType.TEXT;
-
- /** If {@link #sourceType} is a {@link SourceType#CLIPART}, the name of the clipart image */
- public String clipartName;
-
- /** If {@link #sourceType} is a {@link SourceType#IMAGE}, the path to the input image */
- public File imagePath;
-
- /** If {@link #sourceType} is a {@link SourceType#TEXT}, the text to render */
- public String text = "aA";
-
- /** The amount of padding to add around the source image */
- public int padding = 15;
-
- /** The background shape */
- public Shape shape = Shape.SQUARE;
-
- /** Whether the image should be cropped */
- public boolean crop;
-
- /** Whether to use Holo Dark for action bar icons */
- public boolean holoDark;
-
- /** The background color to use for the shape (unless the shape is {@link Shape#NONE} */
- public RGB background = new RGB(0xff, 0x00, 0x00);
-
- /** The background color to use for the text or clipart (unless shape is {@link Shape#NONE} */
- public RGB foreground = new RGB(0x00, 0x00, 0x00);
-
- /** If {@link #sourceType} is a {@link SourceType#TEXT}, the font of the text to render */
- private Font mTextFont;
-
- private Map<String, BufferedImage> mImageCache = null;
-
- /**
- * Gets the text font to be used for text rendering if the
- * {@link #sourceType} is a {@link SourceType#TEXT}
- *
- * @return the text font
- */
- @NonNull
- public Font getTextFont() {
- if (mTextFont == null) {
- GraphicsEnvironment env = GraphicsEnvironment.getLocalGraphicsEnvironment();
- String[] fontNames = env.getAvailableFontFamilyNames();
- for (String familyName : fontNames) {
- if (familyName.equals("Helvetica")) {
- mTextFont = new java.awt.Font(familyName, java.awt.Font.BOLD, 512);
- break;
- }
- }
- if (mTextFont == null) {
- for (String familyName : fontNames) {
- if (familyName.equals("Arial")) {
- mTextFont = new java.awt.Font(familyName, java.awt.Font.BOLD, 512);
- break;
- }
- }
-
- if (mTextFont == null) {
- mTextFont = new java.awt.Font("SansSerif", java.awt.Font.BOLD, 512);
- }
- }
- }
-
- return mTextFont;
- }
-
- /**
- * Sets the text font to be used for text rendering if the
- * {@link #sourceType} is a {@link SourceType#TEXT}
- *
- * @param textFont the font to use
- */
- public void setTextFont(@NonNull Font textFont) {
- mTextFont = textFont;
- }
-
- /** Types of sources that the asset studio can use to generate icons from */
- public enum SourceType {
- /** Generate the icon using the image pointed to by {@link #imagePath} */
- IMAGE,
-
- /** Generate the icon using the clipart named by {@link #clipartName} */
- CLIPART,
-
- /** Generate the icon using the text in {@link #text} */
- TEXT
- }
-
- // ---- Implements GraphicGeneratorContext ----
-
- @Override
- public BufferedImage loadImageResource(String relativeName) {
- try {
- return getCachedImage(relativeName, true);
- } catch (IOException e) {
- AdtPlugin.log(e, null);
- return null;
- }
- }
-
- BufferedImage getCachedImage(String path, boolean isPluginRelative)
- throws IOException {
- BufferedImage image = mImageCache != null ? mImageCache.get(path) : null;
- if (image == null) {
- image = getImage(path, isPluginRelative);
- if (mImageCache == null) {
- mImageCache = new HashMap<String, BufferedImage>();
- }
- mImageCache.put(path, image);
- }
-
- return image;
- }
-
- @NonNull
- static BufferedImage getImage(@NonNull String path, boolean isPluginRelative)
- throws IOException {
- BufferedImage image = null;
- if (isPluginRelative) {
- image = GraphicGenerator.getStencilImage(path);
- } else {
- if (path.equals(DEFAULT_LAUNCHER_ICON)) {
- File file = TemplateManager.getTemplateLocation(
- "projects/NewAndroidApplication/root/res/drawable-xhdpi/ic_launcher.png"); //$NON-NLS-1$
- if (file != null) {
- path = file.getPath();
- } else {
- image = GraphicGenerator.getStencilImage("user.png");
- }
- }
-
- File file = new File(path);
-
- // Requires Batik
- //if (file.getName().endsWith(DOT_SVG)) {
- // image = loadSvgImage(file);
- //}
-
- if (image == null) {
- image = ImageIO.read(file);
- }
- }
-
- if (image == null) {
- image = new BufferedImage(1,1, BufferedImage.TYPE_INT_ARGB);
- }
-
- return image;
- }
-
- // This requires Batik for SVG rendering
- //
- //public static BufferedImage loadSvgImage(File file) {
- // BufferedImageTranscoder transcoder = new BufferedImageTranscoder();
- //
- // String svgURI = file.toURI().toString();
- // TranscoderInput input = new TranscoderInput(svgURI);
- //
- // try {
- // transcoder.transcode(input, null);
- // } catch (TranscoderException e) {
- // e.printStackTrace();
- // return null;
- // }
- //
- // return transcoder.decodedImage;
- //}
- //
- ///**
- // * A dummy implementation of an {@link ImageTranscoder} that simply stores the {@link
- // * BufferedImage} generated by the SVG library.
- // */
- //private static class BufferedImageTranscoder extends ImageTranscoder {
- // public BufferedImage decodedImage;
- //
- // @Override
- // public BufferedImage createImage(int w, int h) {
- // return new BufferedImage(w, h, BufferedImage.TYPE_INT_ARGB);
- // }
- //
- // @Override
- // public void writeImage(BufferedImage image, TranscoderOutput output)
- // throws TranscoderException {
- // this.decodedImage = image;
- // }
- //}
-}