OSDN Git Service

Auto-save
[dvibrowser/dvi2epub.git] / src / jp / sourceforge / dvibrowser / dvicore / gui / swing / ViewSpec.java
diff --git a/src/jp/sourceforge/dvibrowser/dvicore/gui/swing/ViewSpec.java b/src/jp/sourceforge/dvibrowser/dvicore/gui/swing/ViewSpec.java
deleted file mode 100644 (file)
index 3772fe8..0000000
+++ /dev/null
@@ -1,254 +0,0 @@
-/*
- * Copyright (c) 2009, Takeyuki Nagao
- * All rights reserved.
- * 
- * Redistribution and use in source and binary forms, with or
- * without modification, are permitted provided that the
- * following conditions are met:
- * 
- *  * Redistributions of source code must retain the above
- *    copyright notice, this list of conditions and the
- *    following disclaimer.
- *  * Redistributions in binary form must reproduce the above
- *    copyright notice, this list of conditions and the
- *    following disclaimer in the documentation and/or other
- *    materials provided with the distribution.
- *    
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
- * CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
- * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
- * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
- * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
- * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE
- * USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
- * OF SUCH DAMAGE.
- */
-
-package jp.sourceforge.dvibrowser.dvicore.gui.swing;
-
-// mutable.
-// TODO: make this class independent of Swing and move it to another package.
-import java.util.logging.Level;
-import java.util.logging.Logger;
-
-import javax.swing.event.ChangeEvent;
-import javax.swing.event.ChangeListener;
-import javax.swing.event.EventListenerList;
-
-import jp.sourceforge.dvibrowser.dvicore.DviColor;
-import jp.sourceforge.dvibrowser.dvicore.DviException;
-import jp.sourceforge.dvibrowser.dvicore.DviObject;
-import jp.sourceforge.dvibrowser.dvicore.DviPaperSize;
-import jp.sourceforge.dvibrowser.dvicore.DviResolution;
-import jp.sourceforge.dvibrowser.dvicore.api.DviContextSupport;
-import jp.sourceforge.dvibrowser.dvicore.api.GammaCorrector;
-import jp.sourceforge.dvibrowser.dvicore.render.DefaultGammaCorrector;
-import jp.sourceforge.dvibrowser.dvicore.util.DviUtils;
-
-
-public class ViewSpec
-extends DviObject
-implements Cloneable
-{
-  private static final Logger LOGGER = Logger.getLogger(ViewSpec.class.getName());
-  
-  protected EventListenerList listenerList = new EventListenerList();
-  
-  public void addChangeListener(ChangeListener l)
-  {
-      listenerList.add(ChangeListener.class, l);
-  }
-
-  public void removeChangeListener(ChangeListener l)
-  {
-      listenerList.remove(ChangeListener.class, l);
-  }
-
-  protected void fireChangeEvent()
-  {
-    ChangeEvent event = null;
-    
-    Object[] listeners = listenerList.getListenerList();
-    for (int i = listeners.length-2; i>=0; i-=2) {
-      if (listeners[i] == ChangeListener.class) {
-        if (event == null)
-          event = new ChangeEvent(this);
-        ((ChangeListener)listeners[i+1]).stateChanged(event);
-      }
-    }
-  }
-  
-  // TODO: outsource configurations to a config file.
-  private DviColor backgroundColor = new DviColor(255, 255, 255);
-  private int epsResolutionDpi = 200;
-  private String epsImageFileExtension = ".jpg";
-  private String epsImageDeviceName = "jpeg"; // passed to Ghostscript
-  
-  private DviColor foregroundColor = new DviColor(0, 0, 0);
-  private static final GammaCorrector defaultGammaCorrector = new DefaultGammaCorrector(1.4, 1.2);
-  private GammaCorrector gammaCorrector = defaultGammaCorrector;
-
-  private DviPaperSize paperSize;
-  
-  private boolean postScriptEnabled = true;
-  
-  private DviResolution res;
-  
-  public ViewSpec(DviContextSupport dcs) {
-    super(dcs);
-    try {
-      res = getDviContext().getDefaultResolution();
-    } catch (DviException e) {
-      DviUtils.logStackTrace(LOGGER, Level.WARNING, e);
-    }
-    if (res == null) {
-      res = new DviResolution(2400, 20);
-    }
-  }
-
-  // Note that we don't copy the listeners.
-  public Object clone()
- {
-    try {
-      ViewSpec vs = (ViewSpec) super.clone();
-      vs.backgroundColor = this.backgroundColor;
-      vs.epsResolutionDpi = this.epsResolutionDpi;
-      vs.foregroundColor = this.foregroundColor;
-      vs.gammaCorrector = this.gammaCorrector;
-      vs.paperSize = this.paperSize;
-      vs.postScriptEnabled = this.postScriptEnabled;
-      vs.res = this.res;
-      vs.epsImageDeviceName = this.epsImageDeviceName;
-      vs.epsImageFileExtension = this.epsImageFileExtension;
-      vs.epsResolutionDpi = this.epsResolutionDpi;
-      return vs;
-    } catch (CloneNotSupportedException e) {
-      throw new InternalError();
-    }
-  }
-
-  public DviColor getBackgroundColor()
-  {
-    return backgroundColor;
-  }
-
-  public int getEpsResolutionDpi()
-  {
-    return epsResolutionDpi;
-  }
-  
-  public DviColor getForegroundColor()
-  {
-    return foregroundColor;
-  }
-
-  public GammaCorrector getGammaCorrector()
-  {
-    return gammaCorrector;
-  }
-  public DviPaperSize getPaperSize()
-  {
-    return paperSize;
-  }
-  public DviResolution getResolution()
-  {
-    return res;
-  }
-
-  public boolean isPostScriptEnabled()
-  {
-    return postScriptEnabled;
-  }
-  public void setPostScriptEnabled(boolean postScriptEnabled)
-  {
-    this.postScriptEnabled = postScriptEnabled;
-    fireChangeEvent();
-  }
-  
-  public void setBackgroundColor(DviColor c)
-  {
-    backgroundColor = c;
-    fireChangeEvent();
-  }
-  
-  public void setEpsResolutionDpi(int epsResolutionDpi)
-  {
-    this.epsResolutionDpi = epsResolutionDpi;
-    fireChangeEvent();
-  }
-  
-  public void setForegroundColor(DviColor c)
-  {
-    foregroundColor = c;
-    fireChangeEvent();
-  }
-
-  public void setGammaCorrector(GammaCorrector gc)
-  {
-    this.gammaCorrector = gc;
-    fireChangeEvent();
-  }
-
-  public void setPaperSize(DviPaperSize paperSize)
-  {
-    this.paperSize = paperSize;
-    fireChangeEvent();
-  }
-
-  public void setResolution(DviResolution res)
-  {
-    this.res = res;
-    LOGGER.finer("res=" + res);
-    fireChangeEvent();
-  }
-
-  public void setEpsImageFileExtension(String epsImageFileExtension)
-  {
-    this.epsImageFileExtension = epsImageFileExtension;
-    fireChangeEvent();
-  }
-
-  public String getEpsImageFileExtension()
-  {
-    return epsImageFileExtension;
-  }
-
-  public void setEpsImageDeviceName(String epsImageDevice)
-  {
-    this.epsImageDeviceName = epsImageDevice;
-    fireChangeEvent();
-  }
-
-  public String getEpsImageDeviceName()
-  {
-    return epsImageDeviceName;
-  }
-  
-  public String toString()
-  {
-    return getClass().getName()
-      + "[backgroundColor=" + this.backgroundColor
-      + ",epsResolutionDpi=" + this.epsResolutionDpi
-      + ",foregroundColor=" + this.foregroundColor
-      + ",gammaCorrector=" + this.gammaCorrector
-      + ",paperSize=" + this.paperSize
-      + ",postScriptEnabled=" + this.postScriptEnabled
-      + ",resolution=" + this.res
-      + "]"
-      ;
-  }
-
-  public void setApproximateDpi(double dpi) {
-    setResolution(res.approximate(dpi));
-  }
-
-  public static GammaCorrector getDefaultGammaCorrector() {
-    return defaultGammaCorrector;
-  }
-}