I also have an IFrame.js class I call in the index.template.html file
and here's the code for the ExternalInterface:

<?xml version="1.0" encoding="utf-8"?>
<mx:Canvas xmlns:mx="http://www.adobe.com/2006/mxml";
                       resize="callLater(moveIFrame)"
move="callLater(moveIFrame)">
                       
    <mx:Script>
    <![CDATA[

        import flash.external.ExternalInterface;
        import flash.geom.Point;
        import flash.net.navigateToURL;

        private var __source: String;

        private function moveIFrame(): void {

            var localPt:Point = new Point(10, 10);
            var globalPt:Point = this.localToGlobal(localPt);
            ExternalInterface.call("moveIFrame", globalPt.x,
globalPt.y, this.width, this.height);
        }

        public function set source(source: String): void {
            if (source) {

           //     if (! ExternalInterface.available)
           //     {
           //           // TODO: determine if this Error is actually
needed.  The debugger 
           //           // build gives the error below.  Assuming that this
error will not show
           //           // up in the release build but haven't checked.
           //         throw new Error("The ExternalInterface is not
available in this container. Internet Explorer ActiveX, Firefox,
Mozilla 1.7.5 and greater, or other browsers that support NPRuntime
are required.");
           //     }
                __source = source;
                ExternalInterface.call("loadIFrame", source);
                 
            }
        }

        public function get source(): String {
            return __source;
        }

        override public function set visible(visible: Boolean): void {
            super.visible=visible;
            if (visible)
            {
                ExternalInterface.call("showIFrame");
            }
            else
            {
                ExternalInterface.call("hideIFrame");
            }
        }

    ]]>
    </mx:Script>

</mx:Canvas>


--- In flexcoders@yahoogroups.com, "Brendan Meutzner" <[EMAIL PROTECTED]>
wrote:
>
> Lynn,
> Do you have the proper hooks setup in the external browser window to
update
> the iFrame position via JavaScript when you move the MDIWindow instance?
> 
> I haven't setup an IFrame within MDI, but have in the past used
Panel popups
> to do this (which is basically the same thing), and the tricky part was
> using ExternalInterface to update the IFrame content position
getting loaded
> by the browser.
> 
> 
> Brendan
> 
> 
> 
> On Mon, Nov 3, 2008 at 3:35 PM, lynnkuh <[EMAIL PROTECTED]> wrote:
> 
> >   Has anyone gotten this work? If so, how did you do it? It doesn't
> > position the IFrame in the correct place and when I move the IFrame,
> > the window doesn't move with it. I also tried using URLRequest but
> > that pops up a browser window only - it will not add it to the stage
> > or addChild() for either IFrame or URLRequest. Am thinking maybe I
> > should modify the updateDisplayList method in
MDIWindowControlsContainer?
> >
> > Thanks,
> > Lynn
> >
> >  
> >
> 
> 
> 
> -- 
> Brendan Meutzner
> http://www.meutzner.com/blog/
>


Reply via email to