I'm not sure about tab loops as they relate to modules... 

You might just need to explicitly set the focus on whatever textInput,
etc. that you want when the focus returns to the original view after
the PopUp has closed.

--- In [email protected], "aceoohay" <[EMAIL PROTECTED]> wrote:
>
> Doug:
> 
> What my current problem is;
> 
> When do anything anything that makes the popup close 
> (PopUpManager.removePopUp) when I subsequently press the tab key 
> focus goes to a textInput in another module.
> 
> I assume that tab loops are module specific aren't they?
> 
> Paul
> 
> 
> --- In [email protected], "prljamdm" <doug.sarver@> 
> wrote:
> >
> > What do you mean by "leave my popup"?  Mouse out of it or click on 
> a
> > field outside of it?
> > 
> > -Doug
> > 
> > --- In [email protected], "aceoohay" <pauls@> wrote:
> > >
> > > Alex:
> > > 
> > > Thanks, that seems to have done it.
> > > 
> > > Now on to the next problem, why when I leave my popup, and 
> strike 
> > > the tab key does it go to a field in a different module...
> > > 
> > > Paul
> > > 
> > > --- In [email protected], Alex Harui <aharui@> wrote:
> > > >
> > > > Before you do all of that, try delaying your focus setting 
> > > function using callLater.  It might just be a timing problem.
> > > > 
> > > > From: [email protected] 
> > > [mailto:[EMAIL PROTECTED] On Behalf Of aceoohay
> > > > Sent: Monday, September 15, 2008 1:26 PM
> > > > To: [email protected]
> > > > Subject: [flexcoders] Re: How can I set focus to a field in a 
> > > programatically created popup?
> > > > 
> > > > 
> > > > Kenneth:
> > > > 
> > > > I'm not sure that I know how to do all the things I would need 
> to 
> > > do.
> > > > 
> > > > In the current code I create a titlewindow, add all of the 
> bits and
> > > > pices such as horizontal boxes, textinputs, and datagrids, 
> which 
> > > are
> > > > all dynamic and can change based on content, and then I use the
> > > > popup manager to display it.
> > > > 
> > > > I don't know how to accomplish the same thing starting out 
> with a
> > > > mxml component.
> > > > 
> > > > Paul
> > > > 
> > > > --- In [email protected]<mailto:flexcoders%
> > > 40yahoogroups.com>, "Kenneth Sutherland"
> > > > <kenneth.sutherland@> wrote:
> > > > >
> > > > > Why don't you try
> > > > >
> > > > > ttlwQuery.addEventListener(FlexEvent.SHOW, 
> functionToSetFocus);
> > > > >
> > > > >
> > > > >
> > > > > I'd also recommend not creating the titleWindow inside the
> > > > > loadQueryCanvas, it would be better to create as separate 
> class
> > > > which is
> > > > > a titlewindow that you can then create and show. See
> > > > > http://blog.flexexamples.com/2008/08/16/creating-an-
> undraggable-
> > > > titlewin
> > > > > dow-container-in-flex/ for an example if I'm not making 
> sense J
> > > > >
> > > > >
> > > > >
> > > > >
> > > > >
> > > > > P.S I've know people to use private paste to show there code.
> > > > > http://privatepaste.com/
> > > > >
> > > > > Handy especially as pasting code into an email normally 
> makes it
> > > > > unreadable.
> > > > >
> > > > >
> > > > >
> > > > > HTH,
> > > > >
> > > > > Kenneth.
> > > > >
> > > > >
> > > > >
> > > > > From: [email protected]<mailto:flexcoders%
> > > 40yahoogroups.com>
> > > > [mailto:[email protected]<mailto:flexcoders%
> > > 40yahoogroups.com>] On
> > > > > Behalf Of aceoohay
> > > > > Sent: 15 September 2008 15:36
> > > > > To: [email protected]<mailto:flexcoders%
> > > 40yahoogroups.com>
> > > > > Subject: [flexcoders] Re: How can I set focus to a field in a
> > > > > programatically created popup?
> > > > >
> > > > >
> > > > >
> > > > > Kenneth:
> > > > >
> > > > > Thanks for the response. That is precisely how I have done 
> it in
> > > > the
> > > > > past as well. Unfortunately, I do not know how to create
> > > > > functions "on-the-fly." I am creating the entire object 
> using AS
> > > > > code and then displaying it in a popup. Is there a way of 
> > > creating
> > > > a
> > > > > new function in an object as you create it? If so I could 
> create
> > > > an
> > > > > initApp() function and call it from creationComplete.
> > > > >
> > > > > Also is there a better way of posting code so that it 
> doesn't 
> > > lose
> > > > > its formatting?
> > > > >
> > > > > Paul
> > > > > --- In [email protected]<mailto:flexcoders%
> > > 40yahoogroups.com> <mailto:flexcoders%
> > > > 40yahoogroups.com>
> > > > > , "Kenneth Sutherland"
> > > > > <kenneth.sutherland@> wrote:
> > > > > >
> > > > > > I haven't tried your code but I would normally do what 
> you're
> > > > doing
> > > > > > using the show event.
> > > > > >
> > > > > >
> > > > > >
> > > > > > e.g. show="fieldToGetFocus.setFocus();"
> > > > > >
> > > > > >
> > > > > >
> > > > > > this would go inside of your popup code.
> > > > > >
> > > > > >
> > > > > >
> > > > > > From: [email protected]<mailto:flexcoders%
> > > 40yahoogroups.com> <mailto:flexcoders%
> > > > 40yahoogroups.com>
> > > > >
> > > > > [mailto:[email protected]<mailto:flexcoders%
> > > 40yahoogroups.com> <mailto:flexcoders%
> > > > 40yahoogroups.com>
> > > > > ] On
> > > > > > Behalf Of aceoohay
> > > > > > Sent: 15 September 2008 07:38
> > > > > > To: [email protected]<mailto:flexcoders%
> > > 40yahoogroups.com> <mailto:flexcoders%
> > > > 40yahoogroups.com>
> > > > > > Subject: [flexcoders] How can I set focus to a field in a
> > > > > > programatically created popup?
> > > > > >
> > > > > >
> > > > > >
> > > > > > I am creating a titlewindow with some fields completely in 
> AS3
> > > > > > script. I then display this object using a popup. I want 
> to set
> > > > > focus
> > > > > > to the very first field in the popped up titlewindow.
> > > > > >
> > > > > > I have tried a number of things, the most promising (I 
> thought)
> > > > > was
> > > > > > to add a creation complete event listener. This did not 
> work.
> > > > > >
> > > > > > All ideas welcome, here is the code;
> > > > > >
> > > > > > public function loadQueryCanvas():void
> > > > > > {
> > > > > > _ttlwQuery = new TitleWindow;
> > > > > > _hbQuery = new HBox;
> > > > > > _dgDisplay = new DataGrid;
> > > > > > // _ttlwQuery.width = 200;
> > > > > > // _ttlwQuery.height = 200;
> > > > > > _ttlwQuery.showCloseButton = true;
> > > > > > _ttlwQuery.title = _title;
> > > > > > _ttlwQuery.addEventListener
> > > > > > (CloseEvent.CLOSE,closePopup);
> > > > > > /* var intX:int = _targetTextBox["x"];
> > > > > > var intY:int = _targetTextBox["y"] +
> > > > > > _targetTextBox["height"] + 2;
> > > > > > _ttlwQuery.x = intX;
> > > > > > _ttlwQuery.y = intY;
> > > > > > */
> > > > > > var cvsQuery:Canvas = new Canvas;
> > > > > > _hbQuery.height = 25;
> > > > > > var txtField:ValidatedTextInput;
> > > > > > var lblField:Label;
> > > > > > var dgColumn:DataGridColumn;
> > > > > > var aryColumns:Array = new Array;
> > > > > > var intTabIndex:int = 0;
> > > > > > for each (var objItem:Object in
> > > > > > _searchFields)
> > > > > > {
> > > > > > if (objItem["Input"] == "Y")
> > > > > > {
> > > > > > lblField = new Label
> > > > > > lblField.text =
> > > > > > objItem["Label"] + ":";
> > > > > > lblField.id
> > > > > > = "lbl" + objItem["Field"];
> > > > > > lblField..setStyle
> > > > > > ("fontWeight","bold");
> > > > > > _hbQuery.addChild
> > > > > > (lblField);
> > > > > > txtField = new
> > > > > > ValidatedTextInput;
> > > > > > txtField.name
> > > > > > = "txt" + objItem["Field"];
> > > > > > txtField.width =
> > > > > > objItem["Width"];
> > > > > > txtField.maxChars =
> > > > > > objItem["MaxChars"];
> > > > > > txtField.dataType =
> > > > > > objItem["DataType"];
> > > > > >
> > > > > > txtField.charactersAlsoPermitted = "%_";
> > > > > > txtField.tabIndex =
> > > > > > intTabIndex;
> > > > > > intTabIndex++;
> > > > > > if (!_txtFirstField)
> > > > > > _txtFirstField = txtField;
> > > > > > _hbQuery.addChild
> > > > > > (txtField);
> > > > > > }
> > > > > > dgColumn = new DataGridColumn
> > > > > > ();
> > > > > > dgColumn.dataField = objItem
> > > > > > ["Field"];
> > > > > > dgColumn.width = objItem
> > > > > > ["Width"];
> > > > > > dgColumn.headerText = objItem
> > > > > > ["Label"];
> > > > > > aryColumns.push(dgColumn);
> > > > > > }
> > > > > > var btnSearch:Button = new Button;
> > > > > > btnSearch.id = "btnSearch";
> > > > > > btnSearch.label = "Search"
> > > > > > btnSearch.addEventListener
> > > > > > (MouseEvent.CLICK,doSearch);
> > > > > > _hbQuery.addChild(btnSearch);
> > > > > > _hbQuery.defaultButton = btnSearch;
> > > > > > _dgDisplay.id = "_dgDisplay";
> > > > > > _dgDisplay.columns = aryColumns;
> > > > > > // _dgDisplay.dataProvider =
> > > > > > _acDataTable;
> > > > > > _dgDisplay.x = 0;
> > > > > > _dgDisplay.y = 26;
> > > > > > _dgDisplay.height =
> > > > > > _targetTextBox.parent.height - 100;
> > > > > > _dgDisplay.percentWidth = 100;
> > > > > > _dgDisplay.addEventListener
> > > > > > (ListEvent.ITEM_CLICK,_dgDisplaySelected);
> > > > > > // _dgDisplay.addEventListener
> > > > > > (DataGridEvent.HEADER_RELEASE,headerReleaseHandler);
> > > > > > cvsQuery.addChild(_hbQuery);
> > > > > > cvsQuery.addChild(_dgDisplay);
> > > > > > _ttlwQuery.addChild(cvsQuery);
> > > > > >
> > > > > > _ttlwQuery.visible = true;
> > > > > > _ttlwQuery.addEventListener
> > > > > > (FlexEvent.CREATION_COMPLETE,setPopupFocus);
> > > > > > PopUpManager.addPopUp(_ttlwQuery,
> > > > > > _targetTextBox.parent, true);
> > > > > > PopUpManager.centerPopUp(_ttlwQuery);
> > > > > >
> > > > > > // var event:Event;
> > > > > > // doSearch(event);
> > > > > > // _targetTextBox.parent.addChild
> > > > > > (_ttlwQuery);
> > > > > >
> > > > > > }
> > > > > > public function setPopupFocus
> > > > > > (event:Event):void
> > > > > > {
> > > > > > _ttlwQuery.focusManager.setFocus
> > > > > > (_ttlwQuery.focusManager.getNextFocusManagerComponent());
> > > > > > }
> > > > > >
> > > > > >
> > > > > >
> > > > > > Disclaimer
> > > > > > ----------------------------------------------------------
> > > > > ------------------------
> > > > > > This electronic message contains information which may be
> > > > > privileged and confidential. The information is intended to 
> be 
> > > for
> > > > > the use of the individual(s) or entity named above. If you 
> are 
> > > not
> > > > > the intended recipient, be aware that any disclosure, 
> copying,
> > > > > distribution or use of the contents of this information is
> > > > > prohibited. If you have received this electronic message in 
> > > error,
> > > > > please notify us by telephone on 0131 476 6000 and delete the
> > > > > material from your computer.
> > > > > > Registered in Scotland number: SC 172507.
> > > > > > Registered office address: Quay House 142 Commercial Street
> > > > > Edinburgh EH6 6LB.
> > > > > >
> > > > > > This email message has been scanned for viruses by 
> Mimecast.
> > > > > > ----------------------------------------------------------
> > > > > ------------------------
> > > > > >
> > > > >
> > > > >
> > > > >
> > > > > Disclaimer
> > > > > ----------------------------------------------------------
> > > > ------------------------
> > > > > This electronic message contains information which may be
> > > > privileged and confidential. The information is intended to be 
> for
> > > > the use of the individual(s) or entity named above. If you are 
> not
> > > > the intended recipient, be aware that any disclosure, copying,
> > > > distribution or use of the contents of this information is
> > > > prohibited. If you have received this electronic message in 
> error,
> > > > please notify us by telephone on 0131 476 6000 and delete the
> > > > material from your computer.
> > > > > Registered in Scotland number: SC 172507.
> > > > > Registered office address: Quay House 142 Commercial Street
> > > > Edinburgh EH6 6LB.
> > > > >
> > > > > This email message has been scanned for viruses by Mimecast.
> > > > > ----------------------------------------------------------
> > > > ------------------------
> > > > >
> > > >
> > >
> >
>


Reply via email to