Class SingleImageControl

java.lang.Object
org.eclipse.swt.widgets.Widget
org.eclipse.swt.widgets.Control
org.eclipse.swt.widgets.Scrollable
org.eclipse.swt.widgets.Composite
com.iizigo.image.SingleImageControl
All Implemented Interfaces:
IImageInfoChanged, IZoomCapable, EventListener, org.eclipse.swt.events.DisposeListener, org.eclipse.swt.events.PaintListener, org.eclipse.swt.graphics.Drawable, org.eclipse.swt.internal.SWTEventListener

public class SingleImageControl extends org.eclipse.swt.widgets.Composite implements org.eclipse.swt.events.DisposeListener, IImageInfoChanged, org.eclipse.swt.events.PaintListener, IZoomCapable
The image control that can show the zoom level.
Author:
Christopher Mindus
  • Field Summary

    Fields inherited from class org.eclipse.swt.widgets.Control

    handle
  • Constructor Summary

    Constructors
    Constructor
    Description
    SingleImageControl(org.eclipse.swt.widgets.Composite parent, int style, int zoom, AssetReference ref, ILayoutListener layout)
    Creates the image control with a zoom level.
    SingleImageControl(org.eclipse.swt.widgets.Composite parent, int style, int zoom, AssetReference ref, ILayoutListener layout, org.eclipse.swt.graphics.Rectangle rect)
    Creates the image control with a zoom level.
    SingleImageControl(org.eclipse.swt.widgets.Composite parent, int style, ImageInfo imageInfo, org.eclipse.swt.graphics.Rectangle rect)
    Creates the image control from a file with zoom 1.
    SingleImageControl(org.eclipse.swt.widgets.Composite parent, int style, org.eclipse.core.resources.IFile file, org.eclipse.swt.graphics.Rectangle rect)
    Creates the image control from a file with zoom 1.
  • Method Summary

    Modifier and Type
    Method
    Description
    org.eclipse.swt.graphics.Point
    computeSize(int wHint, int hHint, boolean changed)
    Computes the size.
    void
    Called to inform that new data is available in the instance of ImageInfo.
    void
    paintControl(org.eclipse.swt.events.PaintEvent e)
    Paints the canvas foreground.
    void
    scaleToMax(int mcx, int mcy)
    Scales down the image to a maximum size.
    void
    setZoom(double zoom)
    Sets the zoom level (1-10).
    void
    widgetDisposed(org.eclipse.swt.events.DisposeEvent e)
    Widget is disposed.

    Methods inherited from class org.eclipse.swt.widgets.Composite

    changed, checkSubclass, drawBackground, getBackgroundMode, getChildren, getLayout, getLayoutDeferred, getTabList, isLayoutDeferred, layout, layout, layout, layout, layout, setBackgroundMode, setFocus, setLayout, setLayoutDeferred, setTabList, toString

    Methods inherited from class org.eclipse.swt.widgets.Scrollable

    computeTrim, getClientArea, getHorizontalBar, getScrollbarsMode, getVerticalBar

    Methods inherited from class org.eclipse.swt.widgets.Control

    addControlListener, addDragDetectListener, addFocusListener, addGestureListener, addHelpListener, addKeyListener, addMenuDetectListener, addMouseListener, addMouseMoveListener, addMouseTrackListener, addMouseWheelListener, addPaintListener, addTouchListener, addTraverseListener, computeSize, dragDetect, dragDetect, forceFocus, getAccessible, getBackground, getBackgroundImage, getBorderWidth, getBounds, getCursor, getDragDetect, getEnabled, getFont, getForeground, getLayoutData, getLocation, getMenu, getMonitor, getOrientation, getParent, getRegion, getShell, getSize, getTextDirection, getToolTipText, getTouchEnabled, getVisible, internal_dispose_GC, internal_new_GC, isEnabled, isFocusControl, isReparentable, isVisible, moveAbove, moveBelow, pack, pack, print, redraw, redraw, removeControlListener, removeDragDetectListener, removeFocusListener, removeGestureListener, removeHelpListener, removeKeyListener, removeMenuDetectListener, removeMouseListener, removeMouseMoveListener, removeMouseTrackListener, removeMouseWheelListener, removePaintListener, removeTouchListener, removeTraverseListener, requestLayout, setBackground, setBackgroundImage, setBounds, setBounds, setCapture, setCursor, setDragDetect, setEnabled, setFont, setForeground, setLayoutData, setLocation, setLocation, setMenu, setOrientation, setParent, setRedraw, setRegion, setSize, setSize, setTextDirection, setToolTipText, setTouchEnabled, setVisible, toControl, toControl, toDisplay, toDisplay, traverse, traverse, traverse, update

    Methods inherited from class org.eclipse.swt.widgets.Widget

    addDisposeListener, addListener, checkWidget, dispose, getData, getData, getDisplay, getListeners, getStyle, isAutoDirection, isDisposed, isListening, notifyListeners, removeDisposeListener, removeListener, removeListener, reskin, setData, setData

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

    Methods inherited from interface org.eclipse.swt.graphics.Drawable

    isAutoScalable
  • Constructor Details

    • SingleImageControl

      public SingleImageControl(org.eclipse.swt.widgets.Composite parent, int style, org.eclipse.core.resources.IFile file, org.eclipse.swt.graphics.Rectangle rect)
      Creates the image control from a file with zoom 1.
      Parameters:
      parent - Parent composite.
      style - The control style SWT.*.
      file - File.
      rect - Partial rectangle when not null.
    • SingleImageControl

      public SingleImageControl(org.eclipse.swt.widgets.Composite parent, int style, ImageInfo imageInfo, org.eclipse.swt.graphics.Rectangle rect)
      Creates the image control from a file with zoom 1.
      Parameters:
      parent - Parent composite.
      style - The control style SWT.*.
      imageInfo - ImageInfo for image, will be released when control is disposed of.
      rect - Partial rectangle when not null.
    • SingleImageControl

      public SingleImageControl(org.eclipse.swt.widgets.Composite parent, int style, int zoom, AssetReference ref, ILayoutListener layout)
      Creates the image control with a zoom level.
    • SingleImageControl

      public SingleImageControl(org.eclipse.swt.widgets.Composite parent, int style, int zoom, AssetReference ref, ILayoutListener layout, org.eclipse.swt.graphics.Rectangle rect)
      Creates the image control with a zoom level.
  • Method Details

    • onChanged

      public void onChanged(ImageInfo info)
      Called to inform that new data is available in the instance of ImageInfo.
      Specified by:
      onChanged in interface IImageInfoChanged
    • setZoom

      public void setZoom(double zoom)
      Sets the zoom level (1-10).
      Specified by:
      setZoom in interface IZoomCapable
    • scaleToMax

      public void scaleToMax(int mcx, int mcy)
      Scales down the image to a maximum size. An appropriate zoom factor is calculated.
    • widgetDisposed

      public void widgetDisposed(org.eclipse.swt.events.DisposeEvent e)
      Widget is disposed.
      Specified by:
      widgetDisposed in interface org.eclipse.swt.events.DisposeListener
    • computeSize

      public org.eclipse.swt.graphics.Point computeSize(int wHint, int hHint, boolean changed)
      Computes the size.
      Overrides:
      computeSize in class org.eclipse.swt.widgets.Control
    • paintControl

      public void paintControl(org.eclipse.swt.events.PaintEvent e)
      Paints the canvas foreground.
      Specified by:
      paintControl in interface org.eclipse.swt.events.PaintListener