package com.project.website.canvas.client.worksheet; import java.util.HashMap; import com.project.website.canvas.client.shared.ImageOptionTypes; import com.project.website.canvas.client.shared.ImageOptionsProvider; import com.project.website.canvas.shared.data.ImageOptions; public class WorksheetImageOptionsProvider implements ImageOptionsProvider { private static HashMap<ImageOptionTypes, ImageOptions> _optionMap = createOptionMap(); private static HashMap<ImageOptionTypes, ImageOptions> createOptionMap() { HashMap<ImageOptionTypes, ImageOptions> optionMap = new HashMap<ImageOptionTypes, ImageOptions>(); optionMap.put(ImageOptionTypes.Stretch, createStretchOption()); optionMap.put(ImageOptionTypes.Repeat, createRepeatOption()); optionMap.put(ImageOptionTypes.OriginalSize, createOriginalSizeOption()); return optionMap; } private static ImageOptions createStretchOption() { ImageOptions options = new ImageOptions(); options.stretchHeight = true; options.stretchWidth = true; options.centerX = false; options.centerY = false; options.repeat = false; options.useOriginalSize = false; return options; } private static ImageOptions createRepeatOption() { ImageOptions options = new ImageOptions(); options.stretchHeight = false; options.stretchWidth = false; options.centerX = false; options.centerY = false; options.repeat = true; options.useOriginalSize = false; return options; } private static ImageOptions createOriginalSizeOption() { ImageOptions options = new ImageOptions(); options.stretchHeight = false; options.stretchWidth = false; options.centerX = true; options.centerY = false; options.repeat = false; options.useOriginalSize = true; return options; } @Override public HashMap<ImageOptionTypes, ImageOptions> getImageOptionMap() { return WorksheetImageOptionsProvider._optionMap; } @Override public ImageOptions getDefaultOptions() { return WorksheetImageOptionsProvider._optionMap.get(ImageOptionTypes.OriginalSize); } }