com.esri.arcgis.display
Interface IScreenDisplay2

All Superinterfaces:
IDisplay, java.io.Serializable
All Known Implementing Classes:
IScreenDisplay2Proxy, ScreenDisplay

public interface IScreenDisplay2
extends IDisplay, java.io.Serializable

Provides access to additional members that control the Screen Display.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux


Method Summary
 short addCache()
          Creates a new cache and return its ID.
 void doScroll(int xDelta, int yDelta, boolean updateScreen)
          Scrolls the screen by the specified amount.
 void drawCache(int hDC, short index, tagRECT deviceRect, tagRECT cacheRect)
          Draws the specified screen cache to the specified window device context.
 void finishFeedback()
          Ends feedback drawing.
 void frameScrolled(int x, int y)
          Call on frame display when container is scrolled.
 short getActiveCache()
          Screen cache where drawing occurs.
 int getBackgroundRGB()
          The RGB value of the background color.
 short getCacheCount()
          Number of screen caches.
 int getCacheMemDC(short index)
          Memory device context for the specified screen cache.
 ITrackCancel getCancelTracker()
          Cancel tracker that is associated with the display.
 void getDrawingOffset(int[] x, int[] y)
          The offset between the device origin and the active cache origin.
 int getHWnd()
          Associated window handle.
 int getWindowDC()
          Device context for the associated window.
 void invalidate(IEnvelope rect, boolean erase, short cacheIndex)
          Cause the specified area of the specified cache to redraw.
 boolean isCacheDirty(short cacheIndex)
          Indicates if the specified cache needs refreshing.
 boolean isFirstCacheTransparent()
          Indicates if the bottom cache is transparent.
 boolean isFramed()
          Indicates if drawing occurs in a frame rather than on the whole window.
 boolean isScaleContents()
          Indicates if the contents of the screen scale when a resize occurs.
 boolean isSuppressResize()
          Indicates if display resizing is suppressed.
 boolean isUseScrollbars()
          Indicates if scrollbars should appear.
 void panMoveTo(IPoint mouseLocation)
          Pans to a new point.
 void panStart(IPoint mouseLocation)
          Prepares display for panning.
 IEnvelope panStop()
          Stops panning and returns new visible bounds.
 void removeAllCaches()
          Removes all caches.
 void removeCache(short cacheID)
          Removes the specified cache.
 void rotateMoveTo(IPoint pPoint)
          Rotates to new point.
 void rotateStart(IPoint mousePt, IPoint centerPt)
          Prepares display for rotating.
 double rotateStop()
          Stops rotating and returns new angle.
 void rotateTimer()
          Draws the rotated display.
 void setActiveCache(short index)
          Screen cache where drawing occurs.
 void setBackgroundRGB(int rGB)
          The RGB value of the background color.
 void setCancelTrackerByRef(ITrackCancel cancelTracker)
          Cancel tracker that is associated with the display.
 void setHWnd(int hWnd)
          Associated window handle.
 void setIsFirstCacheTransparent(boolean flag)
          Indicates if the bottom cache is transparent.
 void setIsFramed(boolean flag)
          Indicates if drawing occurs in a frame rather than on the whole window.
 void setScaleContents(boolean flag)
          Indicates if the contents of the screen scale when a resize occurs.
 void setScrollbarHandles(int hWndHorzScrollbar, int hWndVertScrollbar)
          Optionally specify application supplied scrollbars.
 void setSuppressResize(boolean suppressResize)
          Indicates if display resizing is suppressed.
 void setUseScrollbars(boolean flag)
          Indicates if scrollbars should appear.
 void startFeedback()
          Prepare the display for drawing selection/rubberbanding.
 void startRecording()
          Starts recording all output to the recording cache.
 void stopRecording()
          Stops recording to the recording cache.
 void trackPan()
          Interactively pans the screen.
 void trackRotate()
          Interactively rotates the screen.
 void updateWindow()
          Forces a redraw.
 void validate(short cacheIndex)
          Clear dirty flag for specified cache.
 
Methods inherited from interface com.esri.arcgis.display.IDisplay
drawMultipoint, drawPoint, drawPolygon, drawPolyline, drawRectangle, drawText, finishDrawing, getClipEnvelope, getClipEnvelopes, getClipGeometry, getDisplayTransformation, getFilter, getHDC, getHPalette, getIlluminationProps, isSuppressEvents, progress, setClipGeometry, setDisplayTransformation, setFilterByRef, setHPalette, setIlluminationProps, setSuppressEvents, setSymbol, startDrawing
 

Method Detail

setHWnd

public void setHWnd(int hWnd)
             throws java.io.IOException,
                    AutomationException
Associated window handle.

Supported Platforms

Windows, Solaris, Linux

Parameters:
hWnd - The hWnd (A COM typedef) (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getHWnd

public int getHWnd()
            throws java.io.IOException,
                   AutomationException
Associated window handle.

Supported Platforms

Windows, Solaris, Linux

Returns:
The hWnd (A COM typedef)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getWindowDC

public int getWindowDC()
                throws java.io.IOException,
                       AutomationException
Device context for the associated window. Only use this between calls to StartDrawing and FinishDrawing.

Supported Platforms

Windows, Solaris, Linux

Remarks

This property is a Windows operating environment device context handle. The Windows operating environment manages the system display by assigning a device context for each window in the application. You can use the WindowDC property to refer to the handle for an object's device context.

This property does not provide a value to pass to IDisplay::StartDrawing. Instead, call IDisplay::StartDrawing with a value of 0 for the hDC as this will automatically use the Windows API function GetDC to populate IScreenDisplay2::WindowDC with the hDC of the main display and drawing will occur there.

The value of the WindowDC property can change while an application runs, so do not store the value in a variable; instead, use the WindowDC property each time you need it.

Returns:
The hDC (A COM typedef)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

addCache

public short addCache()
               throws java.io.IOException,
                      AutomationException
Creates a new cache and return its ID. The ID can be specified to StartDrawing to direct output to the cache. It can also be used with a number of other methods such as DrawCache and Invalidate.

Supported Platforms

Windows, Solaris, Linux

Returns:
The cacheID
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

removeCache

public void removeCache(short cacheID)
                 throws java.io.IOException,
                        AutomationException
Removes the specified cache.

Supported Platforms

Windows, Solaris, Linux

Parameters:
cacheID - The cacheID (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getCacheCount

public short getCacheCount()
                    throws java.io.IOException,
                           AutomationException
Number of screen caches.

Supported Platforms

Windows, Solaris, Linux

Returns:
The count
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

removeAllCaches

public void removeAllCaches()
                     throws java.io.IOException,
                            AutomationException
Removes all caches.

Supported Platforms

Windows, Solaris, Linux

Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getCacheMemDC

public int getCacheMemDC(short index)
                  throws java.io.IOException,
                         AutomationException
Memory device context for the specified screen cache.

Supported Platforms

Windows, Solaris, Linux

Parameters:
index - The index (in)
Returns:
The hDC (A COM typedef)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setActiveCache

public void setActiveCache(short index)
                    throws java.io.IOException,
                           AutomationException
Screen cache where drawing occurs. Use rarely. Change cache inside StartDrawing/FinishDrawing sequence.

Supported Platforms

Windows, Solaris, Linux

Parameters:
index - The index (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getActiveCache

public short getActiveCache()
                     throws java.io.IOException,
                            AutomationException
Screen cache where drawing occurs. Use rarely. Change cache inside StartDrawing/FinishDrawing sequence.

Supported Platforms

Windows, Solaris, Linux

Returns:
The index
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setIsFirstCacheTransparent

public void setIsFirstCacheTransparent(boolean flag)
                                throws java.io.IOException,
                                       AutomationException
Indicates if the bottom cache is transparent.

Supported Platforms

Windows, Solaris, Linux

Parameters:
flag - The flag (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isFirstCacheTransparent

public boolean isFirstCacheTransparent()
                                throws java.io.IOException,
                                       AutomationException
Indicates if the bottom cache is transparent.

Returns:
The flag
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

startRecording

public void startRecording()
                    throws java.io.IOException,
                           AutomationException
Starts recording all output to the recording cache.

Supported Platforms

Windows, Solaris, Linux

Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

stopRecording

public void stopRecording()
                   throws java.io.IOException,
                          AutomationException
Stops recording to the recording cache.

Supported Platforms

Windows, Solaris, Linux

Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setUseScrollbars

public void setUseScrollbars(boolean flag)
                      throws java.io.IOException,
                             AutomationException
Indicates if scrollbars should appear.

Supported Platforms

Windows, Solaris, Linux

Parameters:
flag - The flag (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isUseScrollbars

public boolean isUseScrollbars()
                        throws java.io.IOException,
                               AutomationException
Indicates if scrollbars should appear.

Supported Platforms

Windows, Solaris, Linux

Returns:
The flag
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setScrollbarHandles

public void setScrollbarHandles(int hWndHorzScrollbar,
                                int hWndVertScrollbar)
                         throws java.io.IOException,
                                AutomationException
Optionally specify application supplied scrollbars.

Parameters:
hWndHorzScrollbar - The hWndHorzScrollbar (A COM typedef) (in)
hWndVertScrollbar - The hWndVertScrollbar (A COM typedef) (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setScaleContents

public void setScaleContents(boolean flag)
                      throws java.io.IOException,
                             AutomationException
Indicates if the contents of the screen scale when a resize occurs. True means scale contents to fit new window size. False means contents stays the same with more or less of it showing.

Supported Platforms

Windows, Solaris, Linux

Parameters:
flag - The flag (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isScaleContents

public boolean isScaleContents()
                        throws java.io.IOException,
                               AutomationException
Indicates if the contents of the screen scale when a resize occurs. True means scale contents to fit new window size. False means contents stays the same with more or less of it showing.

Supported Platforms

Windows, Solaris, Linux

Returns:
The flag
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setSuppressResize

public void setSuppressResize(boolean suppressResize)
                       throws java.io.IOException,
                              AutomationException
Indicates if display resizing is suppressed. True means the display doesn't resize with the window. False ensures that the display is the same size as the window.

Supported Platforms

Windows, Solaris, Linux

Parameters:
suppressResize - The suppressResize (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isSuppressResize

public boolean isSuppressResize()
                         throws java.io.IOException,
                                AutomationException
Indicates if display resizing is suppressed. True means the display doesn't resize with the window. False ensures that the display is the same size as the window.

Supported Platforms

Windows, Solaris, Linux

Returns:
The suppressResize
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isFramed

public boolean isFramed()
                 throws java.io.IOException,
                        AutomationException
Indicates if drawing occurs in a frame rather than on the whole window.

Returns:
The flag
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setIsFramed

public void setIsFramed(boolean flag)
                 throws java.io.IOException,
                        AutomationException
Indicates if drawing occurs in a frame rather than on the whole window.

Supported Platforms

Windows, Solaris, Linux

Parameters:
flag - The flag (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getCancelTracker

public ITrackCancel getCancelTracker()
                              throws java.io.IOException,
                                     AutomationException
Cancel tracker that is associated with the display.

Supported Platforms

Windows, Solaris, Linux

Returns:
A reference to a com.esri.arcgis.system.ITrackCancel
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setCancelTrackerByRef

public void setCancelTrackerByRef(ITrackCancel cancelTracker)
                           throws java.io.IOException,
                                  AutomationException
Cancel tracker that is associated with the display.

Parameters:
cancelTracker - A reference to a com.esri.arcgis.system.ITrackCancel (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

invalidate

public void invalidate(IEnvelope rect,
                       boolean erase,
                       short cacheIndex)
                throws java.io.IOException,
                       AutomationException
Cause the specified area of the specified cache to redraw.

Supported Platforms

Windows, Solaris, Linux

Parameters:
rect - A reference to a com.esri.arcgis.geometry.IEnvelope (in)
erase - The erase (in)
cacheIndex - The cacheIndex (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isCacheDirty

public boolean isCacheDirty(short cacheIndex)
                     throws java.io.IOException,
                            AutomationException
Indicates if the specified cache needs refreshing.

Parameters:
cacheIndex - The cacheIndex (in)
Returns:
The flag
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

drawCache

public void drawCache(int hDC,
                      short index,
                      tagRECT deviceRect,
                      tagRECT cacheRect)
               throws java.io.IOException,
                      AutomationException
Draws the specified screen cache to the specified window device context. Pass an empty rectangle to copy the full bitmap to the DC origin.

Supported Platforms

Windows, Solaris, Linux

Parameters:
hDC - The hDC (A COM typedef) (in)
index - The index (in)
deviceRect - A Structure: com.esri.arcgis.display.tagRECT (in)
cacheRect - A Structure: com.esri.arcgis.display.tagRECT (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

doScroll

public void doScroll(int xDelta,
                     int yDelta,
                     boolean updateScreen)
              throws java.io.IOException,
                     AutomationException
Scrolls the screen by the specified amount.

Supported Platforms

Windows, Solaris, Linux

Parameters:
xDelta - The xDelta (in)
yDelta - The yDelta (in)
updateScreen - The updateScreen (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

trackPan

public void trackPan()
              throws java.io.IOException,
                     AutomationException
Interactively pans the screen.

Supported Platforms

Windows, Solaris, Linux

Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

panStart

public void panStart(IPoint mouseLocation)
              throws java.io.IOException,
                     AutomationException
Prepares display for panning.

Supported Platforms

Windows, Solaris, Linux

Parameters:
mouseLocation - A reference to a com.esri.arcgis.geometry.IPoint (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

panMoveTo

public void panMoveTo(IPoint mouseLocation)
               throws java.io.IOException,
                      AutomationException
Pans to a new point.

Supported Platforms

Windows, Solaris, Linux

Parameters:
mouseLocation - A reference to a com.esri.arcgis.geometry.IPoint (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

panStop

public IEnvelope panStop()
                  throws java.io.IOException,
                         AutomationException
Stops panning and returns new visible bounds.

Supported Platforms

Windows, Solaris, Linux

Returns:
A reference to a com.esri.arcgis.geometry.IEnvelope
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

trackRotate

public void trackRotate()
                 throws java.io.IOException,
                        AutomationException
Interactively rotates the screen.

Supported Platforms

Windows, Solaris, Linux

Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

rotateStart

public void rotateStart(IPoint mousePt,
                        IPoint centerPt)
                 throws java.io.IOException,
                        AutomationException
Prepares display for rotating. If centerPt is NULL, the center of the visible bounds is used.

Supported Platforms

Windows, Solaris, Linux

Parameters:
mousePt - A reference to a com.esri.arcgis.geometry.IPoint (in)
centerPt - A reference to a com.esri.arcgis.geometry.IPoint (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

rotateMoveTo

public void rotateMoveTo(IPoint pPoint)
                  throws java.io.IOException,
                         AutomationException
Rotates to new point.

Supported Platforms

Windows, Solaris, Linux

Parameters:
pPoint - A reference to a com.esri.arcgis.geometry.IPoint (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

rotateTimer

public void rotateTimer()
                 throws java.io.IOException,
                        AutomationException
Draws the rotated display. Call in response to WM_TIMER.

Supported Platforms

Windows, Solaris, Linux

Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

rotateStop

public double rotateStop()
                  throws java.io.IOException,
                         AutomationException
Stops rotating and returns new angle.

Supported Platforms

Windows, Solaris, Linux

Returns:
The degrees
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

updateWindow

public void updateWindow()
                  throws java.io.IOException,
                         AutomationException
Forces a redraw.

Supported Platforms

Windows, Solaris, Linux

Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setBackgroundRGB

public void setBackgroundRGB(int rGB)
                      throws java.io.IOException,
                             AutomationException
The RGB value of the background color. This color only appears on the screen, not on output.

Supported Platforms

Windows, Solaris, Linux

Parameters:
rGB - The rGB (A COM typedef) (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getBackgroundRGB

public int getBackgroundRGB()
                     throws java.io.IOException,
                            AutomationException
The RGB value of the background color. This color only appears on the screen, not on output.

Supported Platforms

Windows, Solaris, Linux

Returns:
The rGB (A COM typedef)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getDrawingOffset

public void getDrawingOffset(int[] x,
                             int[] y)
                      throws java.io.IOException,
                             AutomationException
The offset between the device origin and the active cache origin.

Supported Platforms

Windows, Solaris, Linux

Parameters:
x - The x (out: use single element array)
y - The y (out: use single element array)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

validate

public void validate(short cacheIndex)
              throws java.io.IOException,
                     AutomationException
Clear dirty flag for specified cache.

Supported Platforms

Windows, Solaris, Linux

Parameters:
cacheIndex - The cacheIndex (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

startFeedback

public void startFeedback()
                   throws java.io.IOException,
                          AutomationException
Prepare the display for drawing selection/rubberbanding. Drawing isn't clipped or zoomed with page. Must match with a call to FinishFeedback.

Supported Platforms

Windows, Solaris, Linux

Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

finishFeedback

public void finishFeedback()
                    throws java.io.IOException,
                           AutomationException
Ends feedback drawing.

Supported Platforms

Windows, Solaris, Linux

Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

frameScrolled

public void frameScrolled(int x,
                          int y)
                   throws java.io.IOException,
                          AutomationException
Call on frame display when container is scrolled.

Supported Platforms

Windows, Solaris, Linux

Parameters:
x - The x (in)
y - The y (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.