I’m thinking to made a change in the ‘structure’ of MaxIDE X.
At the moment it’s a monolithic block of code (well, not really, there are some little modules).
Not very handy when you need to maintain it… and Brucey with BlitzMax NG is changing very often the compile section (platforms, new flags, changing menus etc) is a little pain making MaxIDE X working without problems on NG.
At the moment I’m (trying) to implement the flags/options Brucey insert in the BlitzMax NG tool chain manually… with the result that some flags are missing or the behavior is not the correct one!
So the final idea: isolate all the ‘compile-thing’ in a separate module: so I can change/implement new features without jumping around in the code and make it working correctly!
Basically I’ve added a new voice menu (COMPILER OPTION) under ‘PROGRAM’.
It opens a new window with everything Brucey implemented in BlitzMax NG (and with the logic to support new features in future here!).
At the moment in the menu are still present the various standard voices (Build options, Platform, Architecture, Appstub) – but in the future here will just present Build options (quick pre-set as ‘cli-debug’ or ‘cli-nodebug’) and of course ‘Compiler Options’.
More clear in my opinion.
Of course this mean that all the (current) logic about the menu actions must be changed: reading/saving/compiling must read the state of these buttons.