GXEMAP class

class geosoft.gx.GXEMAP
The EMAP class provides access to a map as displayed within
Oasis montaj, but (usually) does not change data within the map itself.
It performs functions such as setting the currently displayed area,
or drawing "tracking" lines or boxes on the map (which are not
part of the map itself).

Note:

To obtain access to the map itself, it is recommended practice
to begin with an EMAP object, and use the geosoft.gx.GXEMAP.lock() function to
lock the underlying map to prevent external changes. The returned
MAP object (see MAP.GXH) may then be safely used to make changes to the map itself.

MAP Redraw Rules:

1. Redraws only occur at the end of the proccess (GX or SCRIPT) not during.
You can safely call other GX's and the map will not redraw. If you need the
map to redraw immediately use geosoft.gx.GXEMAP.redraw() instead.

2. If the final GX calls geosoft.gx.GXSYS._cancel(), the map redraw is not done. If you
need to force a redraw when the user hits cancel use the geosoft.gx.GXEMAP.redraw() function.

3. You can set the redraw flag to EMAP_REDRAW_YES or EMAP_REDRAW_NO at any
time using geosoft.gx.GXEMAP.set_redraw_flag(). This flag will only be looked at, when
the last call to geosoft.gx.GXEMAP.un_lock() occurs and is ignored on a geosoft.gx.GXSYS._cancel().

4. geosoft.gx.GXEMAP.redraw() only works if the current map is not locked. It will do nothing
if the map is locked.  Issue an geosoft.gx.GXEMAP.un_lock() before using this function.


VIRTUAL EMAP SUPPORT

These methods are only available when running in an external application.
They allow the GX to open a MAP and then create a Virtual EMAP from that
map. The GX can then call geosoft.gx.GXEMAP.make_current() and set the current EMAP so
that code that follows sees this map as the current MAP.

Supported methods on Virtual EMAPS are:

geosoft.gx.GXEMAP.current()
geosoft.gx.GXEMAP.make_current()
geosoft.gx.GXEMAP.have_current()
geosoft.gx.GXEMAP.current_if_exists()
geosoft.gx.GXMAP.current()

geosoft.gx.GXEMAP.lock()
geosoft.gx.GXEMAP.un_lock()
geosoft.gx.GXEMAP.is_locked()

geosoft.gx.GXEMAP.get_name()
geosoft.gx.GXEMAP.set_redraw_flag()
geosoft.gx.GXEMAP.redraw()

geosoft.gx.GXEMAP.loaded()
geosoft.gx.GXEMAP.load()
geosoft.gx.GXEMAP.un_load_verify()
geosoft.gx.GXEMAP.un_load()

geosoft.gx.GXEMAP.create_virtual()
is_null() → bool

Check if the instance of geosoft.gx.GXEMAP is null (undefined)

Returns:True if this is a null instance of geosoft.gx.GXEMAP, False otherwise.
Return type:bool`
static null() → GXEMAP

A null (undefined) instance of geosoft.gx.GXEMAP

Returns:A null geosoft.gx.GXEMAP
Return type:geosoft.gx.GXEMAP

EMAP_FONT constants

Font Types
gx.EMAP_FONT_TT = 0
gx.EMAP_FONT_GFN = 1

EMAP_PATH constants

Four forms
gx.EMAP_PATH_FULL = 0
d:\directory\file.gdb
gx.EMAP_PATH_DIR = 1
\directory\file.gdb
gx.EMAP_PATH_NAME_EXT = 2
file.gdb
gx.EMAP_PATH_NAME = 3
file

EMAP_REDRAW constants

Redraw Options
gx.EMAP_REDRAW_NO = 0
gx.EMAP_REDRAW_YES = 1

EMAP_REMOVE constants

How to handle pending changes in document
gx.EMAP_REMOVE_SAVE = 0
gx.EMAP_REMOVE_PROMPT = 1
gx.EMAP_REMOVE_DISCARD = 2

EMAP_TRACK constants

Tracking Options
gx.EMAP_TRACK_ERASE = 1
Erase Object after you return?
gx.EMAP_TRACK_RMENU = 2
Allow use of right-menu
gx.EMAP_TRACK_CYCLE = 4
If user holds down left-mouse, will return many times

EMAP_VIEWPORT constants

Tracking Options
gx.EMAP_VIEWPORT_NORMAL = 0
Normal map usage
gx.EMAP_VIEWPORT_BROWSEZOOM = 1
Zoom Mode
gx.EMAP_VIEWPORT_BROWSEAOI = 2
Change Area Of Interest Mode

EMAP_WINDOW_STATE constants

Window State Options
gx.EMAP_WINDOW_RESTORE = 0
gx.EMAP_WINDOW_MINIMIZE = 1
gx.EMAP_WINDOW_MAXIMIZE = 2

LAYOUT_VIEW_UNITS constants

Base dlayout display units
gx.LAYOUT_VIEW_MM = 0
Millimeters
gx.LAYOUT_VIEW_CM = 1
Centimeters
gx.LAYOUT_VIEW_IN = 2
Inches