Handling Busy State and Map Refresh
|
45
Controlling Map Refresh Operations
You can ensure that Autodesk MapGuide Viewer will not enter a busy state
by controlling when display refreshes occur. The first step is to remember
that display refreshes
always
occur in the following instances:
■
When the
autoRefresh
flag is set to
True
with
MGMap.setAutoRefresh
,
and
the application calls an API method that requires an automatic refresh
such as
MGMap.zoomSelected
. Methods requiring an automatic refresh
are noted in the
Autodesk MapGuide Viewer API Help
.
■
Your application calls
zoomGotoDlg
,
zoomGotoLocation
,
setUrl
, or
refresh
. These methods
always
invoke a display refresh, even if the
autoRefresh
flag is set to false. The only exception is if you call one of
these methods from
onViewChanging
or
onMapLoaded
event handling
code. Under these circumstances, the methods will fail and will set error
code to
-14 (refresh disabled)
because the
onViewChanging
and
onMapLoaded
events always disable the
autoRefresh
flag.
Using the autoRefresh Flag
To develop an application that executes smoothly, you need to prevent busy
states while the application calls methods in the API that do not work during
the busy state. To do this, you need to disable the
autoRefresh
flag.
To disable the autoRefresh Flag
1
Set the
autoRefresh
flag to
False
immediately before calling the first
method.
2
Reset the
autoRefresh
flag to
True
.
3
Call the
refresh
method immediately after your application calls the
other methods that do not work during the busy state. Simply setting the
autoRefresh
flag back to
True
with
MGMap.setAutoRefresh
does not
refresh the map. For example:
function selectAndZoomToPointObject(mgObj)
{
var map = getMap();
var sel = map.getSelection();
map.setAutoRefresh(false); // Prevent busy state from happening
// when zoomSelected is called
sel.clear();
sel.addObject(mgObj);
map.zoomSelected();
map.setWidth(5, "KM");
map.setAutoRefresh(true);
// Reset the autoRefresh flag
map.refresh();
// Update the display
}
Содержание 15606-011408-9300 - MAP R6.3 UPG
Страница 1: ...15306 010000 5060 October 2001 Autodesk MapGuide Release 6 Developer s Guide ...
Страница 6: ...vi ...
Страница 16: ...16 ...
Страница 30: ...30 ...
Страница 84: ...84 ...
Страница 134: ...134 ...
Страница 202: ...202 ...