future backends discussion

I want to try to write a plugin for GUI development using wxWidgets or something similar like Qt but I'd need a bridge to cover the incompatibilities between my plugin and MUI Royale.

I know that current versions of HGUI don't require native gadgets but sometimes it's more desirable to make an application look native. For Amiga-like operating systems there is the MUI binding for Hollywood called MUI Royale. Unfortunately there is presently no equivalent for non-Amiga systems. This would require bindings for the native gadgets such as wxWidgets or Qt. If HGUI would provide an abstract interface to both the Amiga-like systems via MUI and Windows, Mac and Linux via a wxWidgets interface, not only would it be possible to write an application that could run on all of them, but there would be the current stand-alone backend via the normal HGUI backend for debugging purposes.

wxWidgets uses an XML schema called wxRC that is incompatible with the XML schema used by MUI Royale. If I were to write a wxWidgets binding for Hollywood, I'd want to use wxRC since there are several GUI builders that use that format already including wxGlade and wxFormBuilder.

wxRoyale or whatever the new plugin would be called would still only implement a subset of the features of wxWidgets and I would have only a little time to write the bindings presently.

Qt version 5 is more powerful than wxWidgets but only works on newer systems while wxWidgets can work on very old Macs like mine, and wrap just about any good GUI code.

I know you mentioned on the Hollywood forum about making a frontend for MUI Royale when you get the chance, but perhaps another plugin would also be needed. Since you know Hollywood much better than I do, would you be able to advise me of all that is needed before I start?


  • @SamuraiCrow
    I'm not sure to understand completely what you have exposed because of my poor skills in english. Well, I understand what you are trying to do but it's not clear to me how you would fallback on HGui since HGui it's not a plugin but an include file with some dependancies (again include files).
    This means that an Hollywood program needs to include all my stuff to make use of HGui.
    About external gui definition I confirm that I would like to make it possible to define the interface using xml files, the main goals are two: allow gui definition without touching the core application (so that no recompile is needed) and to make it possible to use thirdy party gui builders like the ones you have mentioned.
    Lately I've fixed many things on HGui and implemented new features but it's still missing the tab gadget, once I will have implemented tabs I will start to think about gui builders and I will select one format to support (suggestions will be very appreciated!).
    I don't have built any Hollywood plugin yet because of my poor (very poor!) skills in C, but I can help with whatever you may need to know about current HGui status, I can also share with you the source if you need it, but unfortunatly the documentation is still missing (source code instead has a lot of embedded docs and comments).
  • edited January 2016
    You have given me Dropbox access to some of your projects. This includes a previous attempt to document all of them. My offer still stands to help you translate any Italian documentation into English. Probably the easiest way to do it would be to create a documentation forum on this site for each project and make it such that only the moderator of each language could post and modify posts. In this way you could write Italian posts for each feature and then if you made me a moderator only of the English documention forum, I could fix the docs for an American English locale. (The root forum of the documentation forum would still be publicly writable for a review process and a suggestion box.)

    What my HGUI proposal is, is that the table structure of HGUI should be used as a front-end command setup for other GUI plugins like MUI Royale. The command structure of Hollywood could then use the same tables and commands to use Hollywood native apps using HGUI or system-specific apps using MUI or wxWidgets via plugins. One thing I don't like about MUI Royale is that it is tied so closely to MUI that code written with it must be ported to use another GUI plugin or native gadget set like HGUI. What I'm hoping is that the reverse will not be true. Since HGUI supports themes already, it would be relatively easy to make a Royale theme or backend so that an HGUI application can use native widgets on Amiga-like operating systems. Once that's done I could write a wxWidgets plugin for the remaining desktop operating systems. This would leave only Android which runs Hollywood applets, which would use ordinary cross-platform HGUI gadget sets.
  • @SamuraiCrow
    yes, I remember the shared dropbox folder, I will update it as soon as possible, I also will setup a section for translation like you have suggested (thank you very much for your help!).

    Ok, now it's clear what you are trying to achieve and what role have HGui in your project, thank you for the explanation :smile:

    So next steps for me will be:
    - Update the HGui shared folder with the latest changes
    - Setup a section for HGui documentation & translation
    - Setup a section to keep you and all interested people informed about latest updates & changes

    Now I'm a bit busy with EmuLa, I'm near to release a closed beta for AROS & Windows, in about a week it should be out, let me know if you are interested! :smile:
  • @allanon
    Thanks! I'll start updating my MacOSX Snow Leopard copy of TextAdept 7.5 with the new macros and scripts.

    I'm afraid the Windows version of EmuLa won't help much since my wife is on her Windows 7 machine constantly and afraid to let me touch it for fear I'll mess something up. (Once I used her machine to boot an old hard drive of my dad's so I could salvage some data and it reset the time clock to GMT instead of local time so when I was done and took the hard drive out, Microsoft Office got confused about the time change and caused her to lose a whole day's work because it wouldn't save anything!)

    As for AROS, I generally just use a stock Icaros distro on a VirtualBox VM or a stock Aros Vision install on FS-UAE.
Sign In or Register to comment.