Carlos: thank, Yes, those examples were where we started from. Now MyPopup
already has a label (StyledUIBase) inside.

MyPopup.mxml

<?xml version="1.0" encoding="utf-8"?>
<j:PopUp xmlns:fx="http://ns.adobe.com/mxml/2009";
xmlns:j="library://ns.apache.org/royale/jewel">

<j:Label text="Hello External"/>

</j:PopUp>


It was also tested in this way, by code and not in mxml.

public function popupByAS(event:Event):void
{
trace('In method byAs');
var onePopup:MyPopup = new MyPopup();
var oneLabel2:Label = new Label();
oneLabel2.text = "Hi !!";
onePopup.content = oneLabel2;
this.addElement(onePopup);

onePopup.open = true;
}


Thanks for your time
Gustavo.



El lun., 16 dic. 2019 a las 13:43, Carlos Rovira (<carlosrov...@apache.org>)
escribió:

> Hi Gustavo,
>
> thanks for your kindly words :)
>
> About your problem, I don't see in the code exposed that you are adding
> MyPopup to the onePopup instance
>
> Popup has Defaultproperty "content". you must create and assign to it
>
> In Tour De Jewel: https://royale.apache.org/tourdejewel/
> You can see this:
> https://github.com/apache/royale-asjs/blob/develop/examples/royale/TourDeJewel/src/main/royale/PopUpPlayGround.mxml
>
> <j:PopUp id="popup2"
> closePopUp="popupFormContent.formValidator.removeAllErrorTips()">
> <c:FormExample localId="popupFormContent" label="Form example in a PopUp"
> width="490" height="392"/>
> </j:PopUp>
>
>
> since content is Default property we can nest FormExample directly in the
> instance
>
> in AS you need to add to content
>
> Best
>
> Carlos
>
>
>
> El lun., 16 dic. 2019 a las 17:27, De Carli Gustavo (<
> gustavodeca...@gmail.com>) escribió:
>
>> Carlos, Thanks for your prompt response. It fix !!! Now we are dealing
>> with an external Popup, all this is for the migration of TitleWindow of
>> flex to royale. We believe it is the best way. Take this opportunity to
>> congratulate the framework, hopefully you have the first release version.
>> Gustavo.
>>
>> public function popupByAS(event:Event):void
>> {
>> trace('In method byAs');
>> var onePopup:MyPopup = new MyPopup();
>> this.addElement(onePopup);
>>
>> onePopup.open = true;
>> }
>>
>>
>> Where MyPopup.mxml
>> <?xml version="1.0" encoding="utf-8"?>
>> <j:PopUp xmlns:fx="http://ns.adobe.com/mxml/2009";
>> xmlns:j="library://ns.apache.org/royale/jewel">
>>
>> <j:Label text="Hello External"/>
>>
>> </j:PopUp>
>>
>> MyPopup.js:42 Uncaught TypeError: this.generateMXMLAttributes is not a
>> function
>>     at new main.components.Form.MyPopup (MyPopup.js:42)
>>     at Main.popupByAS (Main.mxml:22)
>>     at Main.$EH1 (Main.mxml:51)
>>     at Function.goog.events.fireListener [as googFireListener]
>> (events.js:753)
>>     at
>> Object.org.apache.royale.core.HTMLElementWrapper.fireListenerOverride [as
>> fireListener] (HTMLElementWrapper.js:53)
>>     at HTMLButtonElement.goog.events.handleBrowserEvent_ (events.js:879)
>>     at HTMLButtonElement.f (events.js:296)
>>
>> El lun., 16 dic. 2019 a las 13:11, Carlos Rovira (<
>> carlosrov...@apache.org>) escribió:
>>
>>> Hi Carli,
>>>
>>> the main problem is that you need to add to the parent the popup created
>>> with
>>>
>>> addElement(onePopup);
>>>
>>> Notice that each time you'll be creating one popup and adding to the
>>> container, so maybe you need to create some logic to ensure creation and
>>> addition to parent is done just one time.
>>>
>>> An additional issue (that does not gives error) is that click event
>>> handlers has binding expressions. That's not needed
>>>
>>> instead of
>>>
>>> click="{this.popByMethod.open = true}"
>>>
>>> you write only:
>>>
>>> click="popByMethod.open = true"
>>>
>>>
>>> HTH
>>>
>>> Carlos
>>>
>>>
>>> El lun., 16 dic. 2019 a las 17:03, Carlos Rovira (<
>>> carlosrov...@apache.org>) escribió:
>>>
>>>> Hi Carli,
>>>> I'm going to try your code and see what I can report about it
>>>>
>>>> El lun., 16 dic. 2019 a las 16:56, De Carli Gustavo (<
>>>> gustavodeca...@gmail.com>) escribió:
>>>>
>>>>> Hello, someone could be oriented because I do not have the same
>>>>> behavior in the creation of a popup by msxml than by as. thank you very 
>>>>> much
>>>>> Method, popupByAs, is the problem, does nothing.
>>>>>
>>>>> thank
>>>>>
>>>>>
>>>>> <?xml version="1.0" encoding="utf-8"?>
>>>>> <j:Application xmlns:fx="http://ns.adobe.com/mxml/2009";
>>>>> xmlns:html="library://ns.apache.org/royale/html"
>>>>> xmlns:j="library://ns.apache.org/royale/jewel"
>>>>> xmlns:Button="main.components.Button.*"
>>>>> xmlns:Form="main.components.Form.*"
>>>>> xmlns:js="library://ns.apache.org/royale/basic"
>>>>> xmlns:c="components.*">
>>>>>
>>>>> <fx:Script>
>>>>> <![CDATA[
>>>>>
>>>>> import org.apache.royale.events.Event;
>>>>> import org.apache.royale.jewel.Button;
>>>>> import org.apache.royale.jewel.PopUp;
>>>>>
>>>>> public function popupByAS(event:Event):void
>>>>> {
>>>>> trace('In method byAs');
>>>>> var oneLabel:Label = new Label();
>>>>> oneLabel.text = "Hello by As";
>>>>> oneLabel.visible = true;
>>>>>
>>>>> var onePopup:PopUp = new PopUp();
>>>>> onePopup.content = oneLabel;
>>>>>
>>>>> onePopup.open = true;
>>>>> }
>>>>>
>>>>> ]]>
>>>>> </fx:Script>
>>>>>
>>>>> <j:initialView>
>>>>> <j:View>
>>>>> <j:Button id="btnByInMXML"
>>>>> text="By Method MXML"
>>>>> x="10"
>>>>> y="200"
>>>>> emphasis="primary"
>>>>> click="{this.popByMethod.open = true}"/>
>>>>>
>>>>>
>>>>> <j:PopUp id="popByMethod">
>>>>> <j:Label id="lblByMethod" text="Hello Method XML"/>
>>>>> </j:PopUp>
>>>>>
>>>>>
>>>>> <j:Button id="btnByInAS"
>>>>> text="By Metodo AS"
>>>>> x="10"
>>>>> y="200"
>>>>> emphasis="primary"
>>>>> click="{this.popupByAS(event)}"/>
>>>>> </j:View>
>>>>> </j:initialView>
>>>>> </j:Application>
>>>>>
>>>>>
>>>>>
>>>>
>>>> --
>>>> Carlos Rovira
>>>> http://about.me/carlosrovira
>>>>
>>>>
>>>
>>> --
>>> Carlos Rovira
>>> http://about.me/carlosrovira
>>>
>>>
>
> --
> Carlos Rovira
> http://about.me/carlosrovira
>
>

Reply via email to