|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object com.esri.arcgis.controls.ARPageLayout
public class ARPageLayout
The ARPageLayout container for the display of a page.
The ARPageLayout Class provides properties and methods for navigating around the page, setting page properties and accessing any map's contained within the page.
Constructor Summary | |
---|---|
ARPageLayout(Object obj)
Construct a ARPageLayout using a reference to such an object returned from ArcGIS Engine or Server. |
Method Summary | |
---|---|
void |
centerAt(double xCoord,
double yCoord)
Moves the center of the page layout to the specified point. |
boolean |
equals(Object o)
Compare this object with another |
IARMap |
getARMap(int index)
The map at the specified index. |
int |
getARMapCount()
The number of maps in the page layout's map collection. |
Object |
getCustomProperty()
A property to associate data with an object. |
void |
getExtent(double[] xMin,
double[] yMin,
double[] xMax,
double[] yMax)
The visible extent of the page layout. |
IARMap |
getFocusARMap()
The current focus map that the current tool acts upon. |
double |
getHeight()
The height of the page. |
Object |
getInternalObject()
The internal ArcObjects IPageLayout object. |
int |
getMapExtentType(IARMap pMap)
The extent type of the specified map. |
int |
getPageUnits()
The units of the page and all associated coordinates. |
String |
getTitle()
The title in the page layout. |
double |
getWidth()
The width of the page. |
double |
getZoomPercent()
The zoom percent (100 means 1:1, 200 means twice the normal size). |
int |
hashCode()
the hashcode for this object |
IARMap |
hitTestMap(int x,
int y)
Returns the first map present in the page layout at the specified coordinates. |
boolean |
isCanRedoExtent()
Indicates if there is a page layout extent that can be redone. |
boolean |
isCanUndoExtent()
Indicates if there is a page layout extent that can be undone. |
boolean |
isHasTitle()
Indicates if the page layout has a title that can be changed. |
void |
pan(int direction,
double screenPercentage)
Pans the page layout by a factor in a specified direction. |
void |
redoExtent()
Redo the next page layout extent in the stack. |
void |
refresh(boolean refreshNow)
Redraws the page layout display area. |
void |
setCustomProperty(Object pVal)
A property to associate data with an object. |
void |
setExtent(double xMin,
double yMin,
double xMax,
double yMax)
Sets the visible extent of the page layout. |
void |
setFocusARMapByRef(IARMap ppARMap)
The current focus map that the current tool acts upon. |
void |
setPageUnits(int units)
The units of the page and all associated coordinates. |
void |
setTitle(String currentTitle)
The title in the page layout. |
void |
toPagePoint(int x,
int y,
double[] xCoord,
double[] yCoord)
Converts a point in device coordinates (typically pixels) to coordinates in page units. |
void |
undoExtent()
Undo to the previous page layout extent in the stack. |
void |
zoomIn(double factor)
Zooms in on the page layout by a factor. |
void |
zoomOut(double factor)
Zooms out on the page layout by a factor. |
void |
zoomToPercent(int percent)
Magnifies the page by a percentage (100 means actual size, 200 means twice the normal size). |
void |
zoomToWholePage()
Zooms to the whole page. |
void |
zoomToWidth()
Fits the width of the page into the page layout display area. |
Methods inherited from class java.lang.Object |
---|
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface com.esri.arcgis.interop.RemoteObjRef |
---|
getJintegraDispatch, release |
Constructor Detail |
---|
public ARPageLayout(Object obj) throws IOException
obj
to ARPageLayout
. *
ARPageLayout o = (ARPageLayout)obj; // will not work
ARPageLayout o = new ARPageLayout(obj); // Use this constructor instead
* @param obj an object returned from ArcGIS Engine or Server
IOException
- if there are interop problems
ARPageLayout theARPageLayout = (ARPageLayout) obj;
Method Detail |
---|
public boolean equals(Object o)
equals
in class Object
public int hashCode()
hashCode
in class Object
public void setExtent(double xMin, double yMin, double xMax, double yMax) throws IOException, AutomationException
Sets the xmin, ymin, xmax and ymax coordinates of the ARPageLayout's current visible extent in PageUnits. The SetExtent method automatically refreshes the ARPageLayout's display area.
setExtent
in interface IARPageLayout
xMin
- The xMin (in)yMin
- The yMin (in)xMax
- The xMax (in)yMax
- The yMax (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void getExtent(double[] xMin, double[] yMin, double[] xMax, double[] yMax) throws IOException, AutomationException
Returns the xmin, ymin, xmax and ymax coordinates of the ARPageLayout's current visible extent in PageUnits.
getExtent
in interface IARPageLayout
xMin
- The xMin (in/out: use single element array)yMin
- The yMin (in/out: use single element array)xMax
- The xMax (in/out: use single element array)yMax
- The yMax (in/out: use single element array)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setFocusARMapByRef(IARMap ppARMap) throws IOException, AutomationException
setFocusARMapByRef
in interface IARPageLayout
ppARMap
- A reference to a com.esri.arcgis.controls.IARMap (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IARMap getFocusARMap() throws IOException, AutomationException
An ARPageLayout may contain one or more ARMap objects. The FocusARMap is the ARMap that has focus and is visible when CurrentView is in 'Data View'. Changing the FocusARMap triggers the IARControlEvents::OnFocusARMapChanged event.
The FocusARMap property will return an error if it is set to Nothing.
getFocusARMap
in interface IARPageLayout
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public int getARMapCount() throws IOException, AutomationException
The ARMapCount property returns the number of ARMap's within the ARPageLayout.
getARMapCount
in interface IARPageLayout
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IARMap getARMap(int index) throws IOException, AutomationException
getARMap
in interface IARPageLayout
index
- The index (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setPageUnits(int units) throws IOException, AutomationException
setPageUnits
in interface IARPageLayout
units
- A com.esri.arcgis.controls.esriARUnits constant (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public int getPageUnits() throws IOException, AutomationException
The ARPageLayout's page units. Any coordinates returned from the GetExtent and ToPagePoint methods will be in PageUnits. Likewise the coordinates passed into the SetExtent and CenterAt methods need to be in PageUnits.
getPageUnits
in interface IARPageLayout
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public double getZoomPercent() throws IOException, AutomationException
The ZoomPercent property indicates the current zoom factor used to view the ARPageLayout'. A ZoomPercent of 100 means viewing the ARPageLayout at a scale of 1:1, whilst a ZoomPercent of 200 means viewing the ARPageLayout at twice the normal size. To view the ARPageLayout at a specific percentage use the ZoomToPercent method.
getZoomPercent
in interface IARPageLayout
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void zoomToPercent(int percent) throws IOException, AutomationException
Zoom the ARPageLayout's page to the specified percentage. A percent of 100 will display the page at 1:1 and a percent of 200 will display the page at twice the normal size. The ZoomToPercent method automatically refreshes the ARPageLayout display area.
Use the ZoomPercent property to check the current zoom factor.
zoomToPercent
in interface IARPageLayout
percent
- The percent (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.com.esri.arcgis.publishercontrols.IARPageLayout#zoomToWidth()
,
com.esri.arcgis.publishercontrols.IARPageLayout#zoomToWholePage()
public void zoomToWholePage() throws IOException, AutomationException
Changes the ARPageLayout's viewing extent to show the whole page, causing the ZoomPercent property to change. The ZoomToWholePage method automatically refreshes the ARPageLayout display area.
zoomToWholePage
in interface IARPageLayout
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.com.esri.arcgis.publishercontrols.IARPageLayout#zoomToWidth()
,
com.esri.arcgis.publishercontrols.IARPageLayout#zoomToPercent(int)
public void zoomToWidth() throws IOException, AutomationException
Changes the ARPageLayout's viewing extent to show the full width of the page, causing the ZoomPercent property to change. The ZoomToWidth method automatically refreshes the ARPageLayout display area.
zoomToWidth
in interface IARPageLayout
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.com.esri.arcgis.publishercontrols.IARPageLayout#zoomToWholePage()
,
com.esri.arcgis.publishercontrols.IARPageLayout#zoomToPercent(int)
public void refresh(boolean refreshNow) throws IOException, AutomationException
The Refresh method causes screen display area of the ARPageLayout to be completely redrawn by sending a windows paint event. Use the Refresh method to ensure the ARPageLayout is displaying the current state of the data. For example, if data is in an SDE server with many users editing the data, refreshing the ARPageLayout ensures the user of a ArcReaderControl application sees any new edits.
Specify whether to immediately redraw the ARPageLayout or whether to queue up the redraw to happen at some point in the immediate future. For example, if there are many extent changes, but only the last extent needs displaying to the user pass False to the Refresh method. The paint event will be queued and the ARPageLayout will be redrawn once after the last extent change. However, if every extent change needs displaying to the user, pass True to the Refresh method. The ARPageLayout will be redrawn after every extent change.
The Refresh method triggers the following events:
OnBeforeScreenDraw
OnAfterScreenDraw
refresh
in interface IARPageLayout
refreshNow
- The refreshNow (in, optional, pass false if not required)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public int getMapExtentType(IARMap pMap) throws IOException, AutomationException
getMapExtentType
in interface IARPageLayout
pMap
- A reference to a com.esri.arcgis.controls.IARMap (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IARMap hitTestMap(int x, int y) throws IOException, AutomationException
The HitTestMap method takes x and y screen coordinates supplied in pixels and returns the first ARMap it finds at the given location. The method returns nothing of no ARMap is found.
hitTestMap
in interface IARPageLayout
x
- The x (in)y
- The y (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void zoomIn(double factor) throws IOException, AutomationException
Zooms in on the ARPageLayout from the center of its current visible extent by a specified factor. This factor represents the ratio between the new visible extent and the previous visible extent and will cause the ZoomPercent property to change. For example, zooming in by a factor of 2, is the same as zooming out by a factor of 0.5 and vice versa.
zoomIn
in interface IARPageLayout
factor
- The factor (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.com.esri.arcgis.publishercontrols.IARPageLayout#centerAt(double, double)
,
com.esri.arcgis.publishercontrols.IARPageLayout#zoomOut(double)
,
com.esri.arcgis.publishercontrols.IARPageLayout#pan(int, double)
public void zoomOut(double factor) throws IOException, AutomationException
Zooms out on the ARPageLayout from the center of its current visible extent by a specified factor. This factor represents the ratio between the new visible extent and the previous visible extent and will cause the ZoomPercent property to change. For example, zooming in by a factor of 2, is the same as zooming out by a factor of 0.5 and vice versa.
zoomOut
in interface IARPageLayout
factor
- The factor (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.com.esri.arcgis.publishercontrols.IARPageLayout#zoomIn(double)
,
com.esri.arcgis.publishercontrols.IARPageLayout#centerAt(double, double)
,
com.esri.arcgis.publishercontrols.IARPageLayout#pan(int, double)
public void pan(int direction, double screenPercentage) throws IOException, AutomationException
Pans the ARPageLayout display area in the specified direction, by a specified screen percentage. The extent of the ARPageLayout will change, but the ZoomPercent will remain the same.
A percentage of 0 will not actually offset the APPageLayout in the display area, a percentage of 25 will pan the current visible extent by a quarter of its width, and a percentage of 100 will offset the ARPageLayout in the display area completely, so that any of the ARPageLayout visible before the Pan will no longer be visible.
pan
in interface IARPageLayout
direction
- A com.esri.arcgis.controls.esriARDirection constant (in)screenPercentage
- The screenPercentage (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.com.esri.arcgis.publishercontrols.IARPageLayout#zoomIn(double)
,
com.esri.arcgis.publishercontrols.IARPageLayout#centerAt(double, double)
,
com.esri.arcgis.publishercontrols.IARPageLayout#zoomOut(double)
public void centerAt(double xCoord, double yCoord) throws IOException, AutomationException
The CenterAt method positions the supplied x and y page coordinates in the center of the ARPageLayout display area. The extent of the ARPageLayout will change, but the ZoomPercent will remain the same.
centerAt
in interface IARPageLayout
xCoord
- The xCoord (in)yCoord
- The yCoord (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.com.esri.arcgis.publishercontrols.IARPageLayout#zoomIn(double)
,
com.esri.arcgis.publishercontrols.IARPageLayout#zoomOut(double)
,
com.esri.arcgis.publishercontrols.IARPageLayout#pan(int, double)
public double getWidth() throws IOException, AutomationException
The width of the ARPageLayout's page in PageUnits.
getWidth
in interface IARPageLayout
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public double getHeight() throws IOException, AutomationException
The height of the ARPageLayout's page in PageUnits.
getHeight
in interface IARPageLayout
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void toPagePoint(int x, int y, double[] xCoord, double[] yCoord) throws IOException, AutomationException
Converts the x and y screen coordinates supplied in pixels to x and y map coordinates. The screen coordinates are relative to the top left of the ARPageLayout display area. To obtain the offset of the display area from the top left of the ReaderControl use the IARControl::ViewTop and IARControl::ViewLeft properties. The returned page coordinates will be in PageUnits.
toPagePoint
in interface IARPageLayout
x
- The x (in)y
- The y (in)xCoord
- The xCoord (in/out: use single element array)yCoord
- The yCoord (in/out: use single element array)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public boolean isCanUndoExtent() throws IOException, AutomationException
Whenever the extent of the page layout changes the previous extent is placed onto an extent stack. It is possible to navigate backwards and forwards through any extents in the extent stack.
CanUndoExtent indicates if there is an ARPageLayout extent that can be undone. Use the property before using the UndoExtent method.
isCanUndoExtent
in interface IARPageLayout
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.com.esri.arcgis.publishercontrols.IARPageLayout#undoExtent()
,
com.esri.arcgis.publishercontrols.IARPageLayout#redoExtent()
public void undoExtent() throws IOException, AutomationException
Undo the ARPageLayout extent to the previous extent in the extent stack. Use the CanUndoExtent property to determine whether the extent can be undone.
undoExtent
in interface IARPageLayout
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.com.esri.arcgis.publishercontrols.IARPageLayout
,
com.esri.arcgis.publishercontrols.IARPageLayout#redoExtent()
public boolean isCanRedoExtent() throws IOException, AutomationException
Whenever the extent of the page layout changes the previous extent is placed onto an extent stack. It is possible to navigate backwards and forwards through any extents in the extent stack.
CanRedoExtent indicates if there is an ARPageLayout extent that can be redone. Use the property before using the RedoExtent method.
isCanRedoExtent
in interface IARPageLayout
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.com.esri.arcgis.publishercontrols.IARPageLayout#undoExtent()
,
com.esri.arcgis.publishercontrols.IARPageLayout#redoExtent()
public void redoExtent() throws IOException, AutomationException
Redo the ARPageLayout extent to the next extent in the extent stack. Use the CanRedoExtent property to determine whether the extent can be redone.
redoExtent
in interface IARPageLayout
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.com.esri.arcgis.publishercontrols.IARPageLayout
,
com.esri.arcgis.publishercontrols.IARPageLayout#undoExtent()
public Object getInternalObject() throws IOException, AutomationException
Use the InternalObject property to access the underlying IPageLayout object. This property is always inaccessible.
Getting the InternalObject property will return an error if no license is available and if the currently loaded document was not published with permission to access InternalObjects. Use the IARControl::HasDocumentPermission method to determine this.
getInternalObject
in interface IARPageLayout
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public Object getCustomProperty() throws IOException, AutomationException
Use the CustomProperty to associate any useful data with the ARPageLayout. This is similar to a 'Tag' property, and can be use to store strings, numbers and objects.
getCustomProperty
in interface IARPageLayout
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setCustomProperty(Object pVal) throws IOException, AutomationException
setCustomProperty
in interface IARPageLayout
pVal
- A Variant (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setTitle(String currentTitle) throws IOException, AutomationException
setTitle
in interface IARPageLayout
currentTitle
- The currentTitle (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public String getTitle() throws IOException, AutomationException
This property can be used to get and set the ARPageLayout title, provided a PMF has been Published with a Published Map Title. A Published Map Title can be added to a PMF prior to publication via the Publisher Settings menu on the Publisher extension toolbar in ArcMap. If a the PMF doesn't have a Published Map title, attempting to access the title using this property will return a custom error.
getTitle
in interface IARPageLayout
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public boolean isHasTitle() throws IOException, AutomationException
This property determines whether the currently loaded document has been published with a Published Map title. Use this property before using ARPageLayout::Title property. The ability to publish a PMF with a Published Map title was added as new functionality for the 9.2 release.
isHasTitle
in interface IARPageLayout
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |