From 72fce3b275550ebe2b3bd223491411f7e63744c9 Mon Sep 17 00:00:00 2001 From: Robert Greene Date: Wed, 10 Dec 2003 04:48:31 +0000 Subject: [PATCH] Changed design to simplify things a bit. --- .../applecommander/ui/swt/ImageManager.java | 292 +++++------------- 1 file changed, 75 insertions(+), 217 deletions(-) diff --git a/src/com/webcodepro/applecommander/ui/swt/ImageManager.java b/src/com/webcodepro/applecommander/ui/swt/ImageManager.java index e4df804..7ec0a44 100644 --- a/src/com/webcodepro/applecommander/ui/swt/ImageManager.java +++ b/src/com/webcodepro/applecommander/ui/swt/ImageManager.java @@ -20,6 +20,8 @@ package com.webcodepro.applecommander.ui.swt; import java.io.InputStream; +import java.util.HashMap; +import java.util.Map; import org.eclipse.swt.graphics.Image; import org.eclipse.swt.widgets.Display; @@ -27,79 +29,88 @@ import org.eclipse.swt.widgets.Display; /** * Manage image for the SWT-base AppleCommander. *

+ * As of Dec 9 2003, the design has changed. Instead of "programming" for + * each image, there will be a series of public-scoped constants available + * to retrieve an image. This will make adding an image as simple as adding + * the constant and adding that constant to the list of images to load, instead + * of writing two methods, adding a private method, and adding code to the + * constructor. + *

* Date created: Nov 17, 2002 6:53:08 PM * @author: Rob Greene */ public class ImageManager { - private Image logoImage; - private Image diskIcon; - private Image standardFileViewIcon; - private Image nativeFileViewIcon; - private Image detailFileViewIcon; - private Image importFileIcon; - private Image exportFileIcon; - private Image saveImageIcon; - private Image deleteFileIcon; - private Image deletedFilesIcon; - private Image exportWizardLogo; - private Image openDiskIcon; - private Image newDiskIcon; - private Image aboutIcon; - private Image diskImageWizardLogo; - private Image importWizardLogo; - private Image compileIcon; - private Image compileWizardLogo; - private Image viewFileIcon; - private Image saveAsIcon; + public static final String ICON_DISK = "diskicon.gif"; + public static final String ICON_STANDARD_FILE_VIEW = "standardfileview.gif"; + public static final String ICON_NATIVE_FILE_VIEW = "nativefileview.gif"; + public static final String ICON_DETAIL_FILE_VIEW = "detailfileview.gif"; + public static final String ICON_IMPORT_FILE = "importfile.gif"; + public static final String ICON_EXPORT_FILE = "exportfile.gif"; + public static final String ICON_SAVE_DISK_IMAGE = "saveimage.gif"; + public static final String ICON_DELETE_FILE = "deletefile.gif"; + public static final String ICON_SHOW_DELETED_FILES = "deletedfiles.gif"; + public static final String ICON_OPEN_DISK_IMAGE = "opendisk.gif"; + public static final String ICON_NEW_DISK_IMAGE = "newdisk.gif"; + public static final String ICON_ABOUT_APPLECOMMANDER = "about.gif"; + public static final String ICON_COMPILE_FILE = "compile.gif"; + public static final String ICON_VIEW_FILE = "viewfile.gif"; + public static final String ICON_SAVE_DISK_IMAGE_AS = "saveas.gif"; + public static final String ICON_VIEW_AS_DATABASE = "database.gif"; + public static final String ICON_VIEW_IN_HEX = "hex.gif"; + public static final String ICON_VIEW_AS_IMAGE = "image.gif"; + public static final String ICON_PRINT_FILE = "print.gif"; + public static final String ICON_VIEW_IN_RAW_HEX = "raw.gif"; + public static final String ICON_VIEW_AS_SPREADSHEET = "spreadsheet.gif"; + public static final String ICON_VIEW_AS_TEXTFILE = "text.gif"; + public static final String ICON_VIEW_AS_WORDPROCESSOR = "wordprocessor.gif"; + public static final String ICON_VIEW_AS_BASIC_PROGRAM = "appleicon.gif"; + + public static final String LOGO_EXPORT_WIZARD = "ExportWizardLogo.gif"; + public static final String LOGO_APPLECOMMANDER = "AppleCommanderLogo.gif"; + public static final String LOGO_DISK_IMAGE_WIZARD = "DiskImageWizardLogo.gif"; + public static final String LOGO_IMPORT_WIZARD = "ImportWizardLogo.gif"; + public static final String LOGO_COMPILE_WIZARD = "CompileWizardLogo.gif"; + + private Map images = new HashMap(); + private String[] imageNames = { + // Icons: + ICON_DISK, ICON_STANDARD_FILE_VIEW, + ICON_NATIVE_FILE_VIEW, ICON_DETAIL_FILE_VIEW, + ICON_IMPORT_FILE, ICON_EXPORT_FILE, + ICON_SAVE_DISK_IMAGE, ICON_DELETE_FILE, + ICON_SHOW_DELETED_FILES, ICON_OPEN_DISK_IMAGE, + ICON_NEW_DISK_IMAGE, ICON_ABOUT_APPLECOMMANDER, + ICON_COMPILE_FILE, ICON_VIEW_FILE, + ICON_SAVE_DISK_IMAGE_AS, ICON_VIEW_AS_DATABASE, + ICON_VIEW_IN_HEX, ICON_VIEW_AS_IMAGE, + ICON_PRINT_FILE, ICON_VIEW_IN_RAW_HEX, + ICON_VIEW_AS_SPREADSHEET, ICON_VIEW_AS_TEXTFILE, + ICON_VIEW_AS_WORDPROCESSOR, ICON_VIEW_AS_BASIC_PROGRAM, + // Logos: + LOGO_EXPORT_WIZARD, LOGO_APPLECOMMANDER, + LOGO_DISK_IMAGE_WIZARD, LOGO_IMPORT_WIZARD, + LOGO_COMPILE_WIZARD + }; /** - * Construct the ImageManager. + * Construct the ImageManager and load all images. */ protected ImageManager(Display display) { - diskIcon = createImage(display, "diskicon.gif"); - standardFileViewIcon = createImage(display, "standardfileview.gif"); - nativeFileViewIcon = createImage(display, "nativefileview.gif"); - detailFileViewIcon = createImage(display, "detailfileview.gif"); - importFileIcon = createImage(display, "importfile.gif"); - exportFileIcon = createImage(display, "exportfile.gif"); - saveImageIcon = createImage(display, "saveimage.gif"); - deleteFileIcon = createImage(display, "deletefile.gif"); - deletedFilesIcon = createImage(display, "deletedfiles.gif"); - exportWizardLogo = createImage(display, "ExportWizardLogo.gif"); - logoImage = createImage(display, "AppleCommanderLogo.gif"); - openDiskIcon = createImage(display, "opendisk.gif"); - newDiskIcon = createImage(display, "newdisk.gif"); - aboutIcon = createImage(display, "about.gif"); - diskImageWizardLogo = createImage(display, "DiskImageWizardLogo.gif"); - importWizardLogo = createImage(display, "ImportWizardLogo.gif"); - compileIcon = createImage(display, "compile.gif"); - compileWizardLogo = createImage(display, "CompileWizardLogo.gif"); - viewFileIcon = createImage(display, "viewfile.gif"); - saveAsIcon = createImage(display, "saveas.gif"); + for (int i=0; i