The Leu application had a big bug under MorphOS, it was impossible to use the scrollbars as long there was part of the grid underneath. The click always went directly to the grid, so the scrollbar never got it. This did not happen under AROS Zune or Amiga MUI 3.8, so it must be something special of the MorphOS MUI implementation.
After a pointer of jacadcaps at morph.zone the solution was rather easy. When you register in MUIM_Setup which events you want to be notified of there is a new flag MUI_EHF_GUIMODE for TMUI_EventHandlerNode.ehn_flags, introduced in MUI 4 which tells MUI to NOT notifiy you about events happen in a part of your element which is hidden. For example if your element is on a Tab control but your page is not visible at the moment, or like in our case, the element is partly hidden by the scrollbox. This behavior was the default behavior for old MUI 3.x on Amiga as far I can see. Beside, I see uses for such feature, it should be extremely seldom, that you want to be notified about clicks on your non visible part. For me it is very odd to make this seldom needed to old versions incompatible behavior as the new default, and not, as I would suggest create a Flag which turns on the new way for event handling. Btw. even in this case I would expect some kind of marker in the event that this was triggered on a hidden part. You have nearly no way to know that somewhere in the tree above you some element could cause that.
But in the end, the most important part is I know it now and it also explains some strange behavior I had in the LCL (clicks on sleeping windows, clicks on not visible tabs) which should all be fixed by that.
I also did a new compilation of Leu, this version now already has a open and save requester, it should be able to open xls, xlsx, ods and maybe csv files (if you change the pattern I preconfigured). The output format you define by the extension, I tried xls, xlsx, ods, csv and html and all seems to work as expected.
The summary of the long weekend, very funny tool already, Excel (xls, xlsx) and Open/LibreOffice (ods) loading works nicely, it already draws right, left and center aligned, with background and colors, also the calculation works as it should be and I implemented the multiple Worksheets selector. It’s much faster now, because it only redraws the cells which were changed (especially when dragging the cell border or selecting cells)
So I made a little “Release”, it’s just everything hammered together, still VERY buggy! for sure. just call “Leu <your file>” if you call without a file you get an empty playground where you can type your own stuff into, but formats and so on are not available.
Long time before some people started to port OpenOffice/LibreOffice to Amiga OS4 (sadly only OS4). I saw some screenshots but that is also already a long time ago, seems that is a bit of a too big fish to fry.
Maybe a smarter way would be to just implement something like LibreOffice which can read files from LibreOffice. I gave it a go, and it was not that complicated as I thought it would be, at least if you are using the right language (FreePascal) and the right GUI set (MUIClass). The biggest problem is no usable table component in MUI (at least I know of, for all systems available). I had to implement one from scratch.
And this being FreePascal, of course it works on all Amiga Systems (not only OS4). I implemented only some styles/options (no font size and font name) but color and font styles are there, also left,center and right alignment. It even calculates cells. Funny tool, one could make a real LibreOffice Calc Viewer out of this.
Currently FreePascal on Amiga systems cannot use SSL currently, at MUIMapparium I went around it by proxy it on my own server. The reason for this is that usually at AROS the coder use a static linked OpenSSL, which we cannot use directly in FreePascal. But there is also a normal Amiga-style Library for it called AmiSSL. I started to write a import unit for FreePascal and it works.
There is one tiny hick up, the Library is not available for AROS and also no other possibility on AROS to use SSL for other languages than C. And it seems the devs are not willing to change that, because …. reasons… or just don’t like it… or don’t like the maintainer of AmiSSL, who knows, maybe just “fuck you, who cares about other languages”, as usual.
Long time before I bought a electric plug with WLAN adapter, I wanted to use to turn on the light in the garden (also for the water pump and such stuff). But this WLAN switches are really bad, always want connection to internet only usable via a very shaky app always want so many access rights who knows for what, always must log in. I switched after a while to radio controlled switches at 433 MHz and bought a Raspi 433 MHz sender.
Of course I wrote a own server program in FreePascal running on the raspi. It’s not very complicated in principle the WLAN switch just send a part its of the MAC address and a Token you use to switch on and off. was not very difficult, with the http server example from FreePascal I also added a little Webserver to it, that I can control it via browser or standalone apps. The NodeJS server needed > 10% of the Raspi, even there is no WLAN switch connected to it (because it stops when I start it 😉 ) FreePascal, with connected switch and a browser pulling the status <1% CPU time. Without WLAN Switch it’s not noticeable at all.
And because we are on a blog for FPC for Amiga-System I wrote a little MUI App to control the Outside light from my Amiga as well.
I’m really thinking to buy more of them. really nice and easy. Let’s see the next weeks how reliable it is. 😉 The advantage to the 433 MHz radio controlled switches is that the WLAN switches know their own status, and tell the server on the handshake.
A while before I played around with the SMP AROS version sadly I never really got it to work. Either it was just crashing or do not use all cores and now the development of it seems to be frozen. The AROS devs published a Video how a buhddabrot fractal was calculated with multiple threads.
I took that idea, because the buhddabrot fractals look beautiful and wrote an own buhddabrot program in FreePascal to test that with the SMP. But now SMP AROS basically dead now I found the program again and played a little bit with it, make it single threaded and created a little GUI for it, to play with parameters.
I noticed my navigation system in my car can also read GPX files from a USB stick. Just put the GPX File to a folder “PersonalPOI” and plug to car. Then you can access them in the car (for example as route destinations) even can select them by voice control.
Thats what I tried just now, took MUIMapparium and created two waypoints just to try.
Now go to car and plug in and see if we can find our two waypoints… I gave them especially arbitrary names because it knows already many POIs by default
Very nice, I’m thinking to create some POIs there which makes it much faster to select them. Maybe I should also add an option to set the type of Waypoint, the “Unclassified” means this Waypoint has no type and therefore only a default icon.
Very nice to see that you can use the program for very recent stuff.
I used the function parser for a function plotter before when testing the TAChart for LCL. Now I gave my Plot component I use for MUIMapparium a little bit of reshape and fit it into MUIClass components and created a new function plotter.
I little video to show how it works:
Running on a Amiga 1200 with 68030 50 Mhz and 68882 50 Mhz on a 32 color AGA Screen. For Hex2 the floating point calculation speed is not very important, because it’s just a single function. But for calculating the full curve it needs a little bit more floating point calculations. Therefore a FPU is included. Also you should limit the number of Points to calculate to for example 100. For NG Amiga systems of course you can increase it to higher numbers.