Class SingleImageControl

  • All Implemented Interfaces:
    IImageInfoChanged, IZoomCapable, java.util.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

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      org.eclipse.swt.graphics.Point computeSize​(int wHint, int hHint, boolean changed)
      Computes the size.
      void onChanged​(ImageInfo info)
      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
      • 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, toString
      • 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 Detail

      • 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 Detail

      • 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