richmond62 wrote: ↑Sun Dec 17, 2023 9:06 am
1. Make sure that anything written in OXT (I mean OXT that is heavily dependent on LC 963) is openable by any other variety of xTalk: i.e. disable substacks.
I would argue this would be a very great mistake: I am not going to cut my legs off to compete in the Paralympics.
Substacks are a wonderful thing (dunno whether that's MetaCard or LC) that make a significant difference to what one can do with xTalk.
richmond62 wrote: ↑Sun Dec 17, 2023 9:06 am
I wonder what are the advantages over storing resources "off screen" . . . none that I can see.
It depends a lot on
how they're stored off-screen and the engine that is storing and retrieving them, in the case of images are they being buffered into-memory and ready to render fast or not?
What I'm talking about is essentially the same thing as hiding an image on a card somewhere so that you can use it as an icon in a visible button on your card, but instead of having to go looking for that hidden button when I want to edit the pixels of that icon, I can go use a 'Resource Manger" which collects them all and puts them into a RSRC sub stack where I can easily edit, delete, or replace them from a list, a lot like the Icon/Object Libraries stack, but not just for Image objects... also for SVG Files (for use with 'drawing library') sounds samples, Polygons Points 'paths', SVG Paths (used all over the IDE in various widgets that you guys want to remove so badly). and custom data types too... and as proof of concept years ago in Piano Widget demo you can a store and load widget or library as encapsulated data, EVEN in a 'script-only' text 'stack' if encoded as Base64 (or ROT13 or similar).
There's quite a few advantages to having a dedicated 'Resource Manager' that I can imagine.
If I were to build such as stack, for one thing it would have conversion and EXPORT capabilities.
Here's an scenario:
I have a stack with lots of SVG Icon 'widgets' on various cards, and sub stacks and now I want to use them for a website about my stack, how can I export like 30 SVG Icons back to normal SVG files that I can use in a web page or edit in Inkscape or whatever? I could go through every object on the page and copy it's SVG Path string into a template SVG file, and then save each as an SVG, or I could use my resource manger stack to extract them all to files named after the controls name or custom names serialized numbered .svg files in just a few seconds vs. an hour or two. For one-bit line-art images it could store or export 'BPM' instead of only bing able to import those (which apparently LC converts to RGB which triples the data size). Now I want another set of these UI-Icons but as 1-bit images for some other project. This 'resource manger' would be capable of mass-rasterizing the SVG paths into pixel images too.
richmond62 wrote: ↑Sun Dec 17, 2023 9:06 am
3. Save yourself an awful lot of bother and leave things as they are.
You guys are the ones who want to go backwards to the 90s/OOs (and some other people want to take it all the way back to the 1-bit or 16bit color days), with your desire to slim down by ditching LCB and widgets, with no-benefit in doing so that I can see, as SVG Paths are a LOT smaller than pixel images.
IMO the entire notion is just completely crazy, You ARE Going to break a lot of stacks that use them if you remove widgets.Personally I waited years for LCB to exist and then mature (partially). To me these things were the best things to happen with xTalk in a LONG time. Widgets give OXT a real object model bringing it a lot closer to real OOP (while still keeping it obfuscated away from any novice users) and with v9 wi/Foreign Function Interface brings it MUCH closer to being 'real' programming in-line with Python.
Really the whole push-back against these additions that seem to come from long-time members of the LC Community (not just you guys here) was just completely bizarre to me. I think there's a lot of curmudgenery in this community. Certainly there's a lot of strong opinions from all sides about what is pointless and what is worthwhile.
BTW, what 'widgets' besides 'Browser Widget' are 'broken on Linux"??? None that I'm aware of, my Piano Widget work great on ever Linux I've tried (and so does the Fluid Synth wrapper library (it's just not setup right in that .AppImage)
richmond62 wrote: ↑Sun Dec 17, 2023 9:06 am
If you want to remove sub-stacks you will shaft OXT almost entirely.
I didn't say anything about removing sub-stacks, even if aI wanted to (which I don't) doing so would require rebuilding all of the engine(s) and would break thousands of existing stacks (so that would be pretty stupid)
I am interested in
importing AND exporting of content: pixel images, svg paths, sounds, scripts, card/page layout, etc. What I really want is an
Encapsulated, xTalk interchange file format, as discussed by xTalk companies some 30+ years ago but never realized (and then made irrelevant a few years later by the advent of HTML/Web).
A lot has changed in those decades, and I think any design of such a standard encapsulated hypermedia format would look a lot more like HTML (again, I want the 'encapsulated' bit, unlike 99.9% of web pages).
If we treated like the standard it always should've been it could get to the point of having an 'official' RFC specification. If a handful of people could get WebMIDI to become a RFC and web standard (accept for with Apple Safari), in just 8 years time, then we could get 'XIFF' to be a standard too (XIML was already used,
https://www.crunchbase.com/organization/ximl ). I would want to take into consideration the people who donated a lot of time into reverse engineering the original HC stack format. The output from those using that work (like HyperSim, StackSmith, HyperCardPreview) tend to be either JSON or XML based (AKA plain old universal ascii text data).