If you want to add the reference to your fusion index page, add the following
to your aspx (task pane) page
function GetParent()
{
if (parent.Fusion) {
return parent;
} else if (parent.parent.Fusion) {
return parent.parent;
}
}
Then you can call functions in the same way as before but substitute
GetParent().DigitizePoint(OnPointDigitized);
Brian Berdel
McMahon Associates, Inc.
p: 215.283.9444 x 260
www.mcmtrans.com<http://www.mcmtrans.com>
From: [email protected]
[mailto:[email protected]] On Behalf Of Chris Claydon
Sent: Tuesday, September 15, 2009 4:43 PM
To: MapGuide Users Mail List
Subject: [mapguide-users] RE: parent.parent.parent.mapFrame - AJAX vs FUSION
I think you should be able to reference the MapGuideViewerAPI.js script from
your aspx page, and then just call DigitizePoint directly without any
window.top or parent references.
It should also be possible to add a reference to MapGuideViewerAPI.js to the
index.html file in the Fusion template you're using, and reference it using
window.top...
It's been a while since I've played around with this stuff, so someone else may
be able to provide specifics...
From: [email protected]
[mailto:[email protected]] On Behalf Of Fraser Burgess
Sent: Tuesday, September 15, 2009 1:40 PM
To: MapGuide Users Mail List
Subject: [mapguide-users] parent.parent.parent.mapFrame - AJAX vs FUSION
Hi List,
I'm making steady progress with my project and learning many things about
MapGuide along the way thanks largely to the help from those on this list -
many thanks to those who have helped so far
>From what I can tell parent.parent.parent.mapFrame is how the map frame is
>referenced from the task pane in the AJAX viewer. I have been reading posts
>about how this is referenced in Fusion and it seems the MapGuideViewerAPI.js
>file has a bit of info. Unfortunately I'm having a bit if trouble putting the
>pieces together and was hoping that someone here may steer me in the right
>direction.
In both AJAX and FUSION I'm working from the taskpane and using the markup
scripts that are part of the AJAX demo's and tutorials.
I assume I need to substitute either 'Fusion' or 'window.top.Fusion' somehow
for 'parent.parent.parent.mapFrame.DigitizePoint(OnPointDigitized);'. in my
script however I have yet to do this in such a way that it works. I keep
getting 'Object doesn't support this property or method'.
So for example in my editmarkup.aspx code for example, I have the following
function which should be activated when I click the digitize point button
function AddPoint()
{
SetDigitizeInfo(EDIT_POINT_HELP);
parent.parent.parent.mapFrame.DigitizePoint(OnPointDigitized);
}
In Fusion this code gives an error 'parent.parent,parent.mapFrame' is null or
not an object
I see that in MapGuideViewerAPI.js
function DigitizePoint(handler) {
if (handler) {
var Fusion = window.top.Fusion;
var mapWidget = Fusion.getWidgetById(mapWidgetId);
var digitizer = new Fusion.Tool.Canvas.Point(mapWidget);
digitizer.mouseUp = PointHandlers.prototype.mouseUp;
Object.inheritFrom(digitizer, Fusion.Tool.Canvas.prototype, []);
digitizer.initializeCanvas();
var activeWidget = mapWidget.buttonSet.activeButton;
mapWidget.buttonSet.setActiveButton(null);
digitizer.handler = function() {
handler.apply(null, arguments);
activeWidget.setActive(true);
}
digitizer.activateCanvas();
//add a listener to update the position of the features
var mapWidget = Fusion.getWidgetById(mapWidgetId);
mapWidget.registerForEvent(Fusion.Event.MAP_EXTENTS_CHANGED,
function(){
digitizer.updatePx();
digitizer.clearContext();
digitizer.draw(digitizer.context);
}
);
}
}
Thanks
Fraser
________________________________
Important notice to recipients:
Copies of documents that may be relied upon by you are limited to the printed
copies (also known as 'hard copies') that are signed and sealed by the Engineer
and/or Land Surveyor. Files in electronic formats, or other types of
information furnished by the Engineer and/or Land Surveyor to you such as text,
data or graphics are for your convenience only. Any conclusions or information
obtained or derived from such electronic files will be at the user's sole risk.
When transferring documents in electronic formats, the Engineer and/or Land
Surveyor makes no representation as to long-term compatibility, usability, or
readability of the documents resulting from the use of software application
packages, operating systems or computer hardware differing from those used by
McMahon Associates, Inc. at the beginning of the project.
_______________________________________________
mapguide-users mailing list
[email protected]
http://lists.osgeo.org/mailman/listinfo/mapguide-users