kas1e / mui_ports_to_os4 Goto Github PK
View Code? Open in Web Editor NEWPorts of mui apps from morphos, aros and os3
Ports of mui apps from morphos, aros and os3
Currently, lua generation scripts have at top:
require('io')
require('string')
require('base').
On morphos they all done as separate shared modules, which loads only when lua code call them. On aos3 and aos4, 'io' and 'string' code are inbuild staticaly, but 'base' module are pure morphos's module, which isn't present on any other oses.
So, to keep compatibility with morphos, we need to find a way how "ifdefs" that require('base') string, so for morphos it will be in use, for aos3/aos4 is not. Lua may not have analogue of such directives (need checking), so need to think how to deal with if lua not have that.
Currently (rev 133), we can't run os4 version of libmaker, as it fail with "not enough memory available" right on the moment when do first call to the DoSuperNewM() when create mui application. Once we back to the original/overcomplicated morphos version it start to work as expected.
Topic say it all. Probably will be just enough to add including of SDI_compiler.h and SDI_hook.h.
According to http://www.amigans.net/modules/xforum/viewtopic.php?post_id=105942#forumpost105942 a crash happens when closing a project window. This happens, because the icon is freed for every removed code generator in the CAAM_RemoveGenerator method, even while the icon is still in use by the application. Even worse, once freed the icon pointer is NOT set to NULL so that the next invokation of the method will free it again.
Since the icon is obtained during OM_NEW it would be better to implement a dedicated OM_DISPOSE method and free the icon there and only once.
Need to add libgen.lua and all those skeleton files for aos4 library generation code.
Also, probably worth to structure items for the generate button in that way: if we compile it for morphos, then by default button morphos, if compiled for os4, then by default os4 button, of for os3, os3 button.
So making that mean 2 parts : a little change mui code, and create lua generation scrpt with all that skeleton's codes.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.