Well - what I've done, after finding a titlewindow example on cflex, 
is create a public variable in the titlewindow component of the same 
name as one in the application, and I send it to the component from 
the main app AND back via the title window's instance variable.  i.e.:

TitleWindow Component:

[Bindable]
public var aListOfData:ArrayCollection;

private function sendData():void {
    -> runs when you click submit in titlewindow
  var compilation:Obect = new Object;
  compilation.setting1 = "something in component";
  aListOfData.addItem(compilation);  (or setItemAt, etc)
}


Main Application looks like this:

[Bindable]
private var aListofData:ArrayCollection;

private function openComponent():void {
   -> runs when you click open window in the main app
  var openingWindow....blah blah, opening the TitleWindow;
  openingWindow.aListOfData = aListOfData;
}


OK - so those variable names are random thoughts off the top of my 
head, bu you get the picture.  From what I understand, this doesn't 
follow the idea behind "loosely coupled components," but is there 
anything really "wrong" with this methodology?  It seems to work very 
well in my case.  I can even have a window within a window, all 
passing variables between windows, all the way down to the main app 
quite easily, and so far its been a breeze to setup.

Thoughts anyone?  If I continue down this path, where will I start to 
run into problems?
 - Chris


--- In [email protected], "Roman Protsiuk" 
<[EMAIL PROTECTED]> wrote:
>
> Hi.
> 
> Why don't your pop up dispatch some event (e.g. "submitData") and 
you listen
> to it?
> 
> R.
> 
> On 12/5/06, qnotemedia <[EMAIL PROTECTED]> wrote:
> >
> >   OK - so I'm using the generic TileWindow example found on the
> > Component Explorer. It basically shows you how to build something
> > where:
> > 1) User clicks a button, Window pops up.
> > 2) User types into a text box in the window, clicks Submit.
> > 3) Text typed in appears in the main app.
> >
> > 
http://examples.adobe.com/flex2/inproduct/sdk/explorer/explorer.html
> >
> > But, I'm having a little difficulty understanding the assignment 
of
> > the returned data. i.e.:
> >
> > login.loginName=returnedName;
> >
> > ...where login is the instance of the TitleWindow, loginName is a
> > public Text variable inside the component, and returnedName is a 
text
> > box in the main app.
> >
> > My confusion comes up when I try to edit this so that:
> > 1) App has a combobox. Dataprovider for the combobox is an
> > ArrayCollection of data: "data" and "label." User clicks a button,
> > TitleWindow pops up.
> > 2) User types into a text box in the window, clicks Submit.
> > 3) The text is a passed as a label, along with a generated ID
> > (generated in the component) and is added to the combobox's
> > dataprovider.
> >
> > The problem appears to be that there is no handler of the Submit
> > button click on the main application. Obviously, I would add to a
> > datasource and return an ID from that, but I can't even get this 
to
> > work manually (i.e. for testing purposes, setting a static data 
and
> > label).
> >
> > Just trying to keep this as simple as possible. Seems to me that 
if
> > I can pass a string of text, I should also be able to pass an 
Object
> > that is added to a dataProvider in the main app? Right?
> >
> > Help!
> > - Chris
> >
> >  
> >
>


Reply via email to