There is also this MXML editor project using the same library that runs
in the browser, https://github.com/velara3/MXML-Azzurro.
And https://www.radii8.com/mxml/
On 4/5/20 5:49 PM, QA wrote:
Hi Ram,
You can find the project here, https://github.com/velara3/Radii8. I
haven't worked on it in a while. It should run as is but you might
need the modified resize handle swc. I don't know if I included that
in repo bc it was not originally my code (however all the code is
cleared). If not there let me know.
Once you get that running you can look at the exporter classes such as
the MXML exporter, HTML exporter, etc. You can then work on a Royale
Exporter. There is also internal browser if you wanted to do what Alex
suggested with live editing.
Note: The internal browser is very old and doesn't render SVG or
support some HTML features. There are companies who have updated the
browser with a new WebView or may update the internal browser (Harman).
The entire project was built from scratch. So you'll see after a while
that some sections of the project need refactoring or rewritten. Then,
once you get familiar with it you can see if it can be plugged into
moonshine or moonshine can be plugged into to it.
FWIW I researched the moonshine project when I started but it had been
abandoned already for a few years and I wanted to have a design view
on the web as well as desktop and moonshine at the time relied
entirely on desktop APIs.
There is some documentation in the repo on how to get it setup, how to
create new tools and so on. I have limited availability to work on
anything new but I can answer any questions and you can contact me
directly if you like.
BTW I'm currently working on a plugin for Adobe XD that exports to
HTML. I've been looking into exporting to MXML and other languages but
haven't started yet and would welcome help on that but based on your
discussion I don't know if that will fit your needs.
The original goal of the project was to create a design view for Flex
projects after Adobe removed the design view from Flash Builder.
Jude
PS Apache Flex has an official license and source donation for it's
use (see discussion list from years ago)
On 3/14/20 3:54 PM, Ramazan Ergüder Bekrek wrote:
I would disagree with that because a while ago I went deep into the
source code for the TLF framework in Flash and there was
implementation of various HTML element which could be displayed
directly in the Flash DisplayList.
There is also another project I saw which has a designer view written
all in Flex... this could be taken and then injected inside Moonshine
in a Loader with whom we could communicate back and forth if we want
to export the structure to HTML or other framework.
We could ask the author of it to check how could we implement it.
https://pasteboard.co/IZ6B7EL.png
Best regards
P.S. If you would like to have a reverse engineered images of all the
diagrams I did in the past for the TLF please le me know I draw so
many pages just for the sake of understanding.
14.03.2020, 19:48, "Alex Harui" <aha...@adobe.com.invalid>:
I never looked too closely at the SWF portion of FB DV. It was a SWF
app. But IIRC, the main work in DV was in the communications between
the SWF and the FB Java code in Eclipse that displayed properties
and managed alignment and alignment-guides and whatever else DV
offered. IOW, it isn't that much SWF code to handle a request to set
or return properties on an object with a particular ID in the DOM.
What I do remember is that the SWF portion was an exception to the
rule that the DOM would not have an Application as a child of an
Application without a SWFLoader between them. I would strongly
prefer we not tackle those exceptions in Royale.
One thing about Royale that is a bit different from Flex and SWFs is
that (hopefully) the Royale Applications do not presume they are
essentially the top level node in the DOM. Maybe Basic Application
could assume that it is top-level for simplicity, but other
Application tag do not need to presume that and shouldn't. That's
because you don't really know where in the DOM the Royale
Application will end up. In Flex, you could wrap the SWF Object
inside any amount of HTML and the SWF Object was a black box and the
Flex app ran at the root of the SWF Object. In Royale, we probably
can't and don't want to do that.
What that means is that it should be easier to wrap a Royale
Application in other DOM widgets and thus it should be far easier to
create property display boxes, alignment guides, selection, and
other UI a DV needs in the browser instead of in the IDE. And the
advantage of that is that the browser is doing the rendering so it
is truly WYSIWYG. Any attempt to emulate an HTML renderer in AIR or
Java/Eclipse or other IDE platforms would be concerning to me. I
think you would get better fidelity if the IDE would run a browser
in a window of the IDE and talk to it, and potentially do most of
the UI in that browser window.
Of course, I could be wrong...
-Alex
On 3/14/20, 11:26 AM, "Ramazan Ergüder Bekrek"
<e.bek...@yandex.com> wrote:
This is just my idea and my intuition tells me that the FB DV
was built as an SWF app which was loaded inside of eclipse like a
browser SWF what if we decompile its source code and just inject it
in Moonshine editor?
Does this make any sense?
11.03.2020, 22:43, "Ramazan Ergüder Bekrek" <e.bek...@yandex.com>:
> This is just my idea and my intuition tells me that the FB DV
was built as an SWF app which was loaded inside of eclipse like a
browser SWF what if we decompile its source code and just inject it
in Moonshine editor?
>
> 11.03.2020, 19:57, "QA" <flexcapaci...@gmail.com>:
>> Hi, I agree that a GUI IDE is needed or would be beneficial.
I've
>> planned Royale as an export target for Web Export but it's
been on the
>> backlog. I've mentioned this in another post but Web Export
is a plugin
>> for Adobe XD that exports artboards to the web. Currently it
supports
>> exporting markup to HTML and CSS.
>>
>> XD supports all the layout, positioning and design features
used for
>> prototyping.
>>
>> To support Royale more fully would require some work but it
would be
>> much less work to add in support than write your own design
view.
>>
>> YouTube playlist
>>
https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.youtube.com%2Fplaylist%3Flist%3DPLFBNT6gqr5u_NvUaLdHziGES_7Rw8-2pX&data=02%7C01%7Caharui%40adobe.com%7Ce725dd9fb9554a1760a108d7c8452d3f%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637198071757779259&sdata=oth%2FP5pVUEGwBJ9yKUy8HWBgbVjXeYBQzlnrtyo1700%3D&reserved=0
>>
>> Documentation
>>
https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fvelara-3.gitbook.io%2Fweb-export%2F&data=02%7C01%7Caharui%40adobe.com%7Ce725dd9fb9554a1760a108d7c8452d3f%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637198071757779259&sdata=BWPsL5I5cdOapzep8mu%2FwdNvatQaEvjA4gVV8WeTkIw%3D&reserved=0
>>
>> More comments inline...
>>
>> On 3/9/20 11:28 PM, Alex Harui wrote:
>>> While it may be that someone offers a GUI IDE some day for
Royale, there is are some other approaches, one that has been
prototyped, and one that wasn't possible with Flash Player.
>>>
>>> IIRC, one prototype adds some things to your app that allow
you to edit the x/y/width/height in your MXML and immediately see
the results in the browser.
>>
>> Web Export has a live export feature so that as you make
changes it
>> updates live in the browser (for HTML).
>>
>>
https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DkfQQkxi8eG4%26list%3DPLFBNT6gqr5u_NvUaLdHziGES_7Rw8-2pX%26index%3D10%26t%3D0s&data=02%7C01%7Caharui%40adobe.com%7Ce725dd9fb9554a1760a108d7c8452d3f%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637198071757789220&sdata=w1NpFDdP7OuzvfwDdpFpMfeIGNP%2BfikpoJulUM%2Fh1J0%3D&reserved=0
>>
>> You can have it update the MXML in an existing file or have
it write the
>> MXML document each time it changes.
>>
>>> The other approach is to write a bead that can track your
MXML from the browser so you can use the browser tools to modify the
UI and hit some button that will then update the MXML.
>>>
>>> There are some limitations to these approaches which is why
none are available at this time. The main one is that use of view
states greatly complicates these approaches (as it does for a GUI
IDE as well). So one question for you, are you using view states
(mx:State)?
>>
>> XD supports states in a way. What I've seen from users is
they have
>> different pages and manually switch between them. I think
the way XD
>> creates it's live prototypes is listing all property
changes. That
>> information can be stored in State markup.
>>
>> If you (or other Flex devs) want to join me on adding Royale
support to
>> Web Export I can add you to the github project and you'll be
about one
>> year further along towards a GUI.
>>
>> Jude