Rebuilding The Tools Palette

Organizing tasks to work on, New Features Ideas, Building LCS & LCB Libraries & Widgets, Redecorating and Modifying the IDE, Hacking / Editing Tools, Compiling the Engine from Source, etc.
User avatar
tperry2x
Posts: 1838
Joined: Tue Dec 21, 2021 9:10 pm
Location: Britain (Previously known as Great Britain)
Contact:

Re: Rebuilding The Tools Palette

Post by tperry2x »

richmond62 wrote: Mon May 13, 2024 6:47 pm a groovy chance to slip in a slightly bitchy comment just to make myself feel better. 8-) Since WHEN did an Englishman spell dialogue 'dialog'?)
Why is that necessary? Anyway, depends on what kind of dialog. If it's in this context, as an alert window then yes - Dialog. If it's having a conversation with someone, then it's dialogue. The same reason we'd interchange the spellings of program and programme based on context.
richmond62 wrote: Mon May 13, 2024 6:47 pm That worked (even got the cruddy backdrop): but my inevitable question is going to be "How do I hide 'bits' of the Tool bar I am not interested in?"
With the stack I've included, which will replace that cr4ppy header widget. (will probably keep the 'cog' icon)
richmond62 wrote: Mon May 13, 2024 6:47 pm And the answer is, "I ain't."
Yes you can, please see above.
richmond62 wrote: Mon May 13, 2024 6:47 pm And it is real case of 'cheesy feet' resetting all my Preferences as I'm a fussy old fart who likes his IDE 'just so'.
But - hang on, do you recall suggesting that I get the MacOS setup script to junk the preferences each time?
richmond62 wrote: Mon May 13, 2024 6:47 pm And now for the proof of the pudding . . .
(Feels like you don't believe me or something?)
richmond62 wrote: Mon May 13, 2024 6:47 pm Thank You very much indeed!
You are welcome.
richmond62 wrote: Mon May 13, 2024 6:47 pm HOWEVER (and you should know me well enough by now to know that you'll never get away with a 'however'. 8-) ) . . .
What was that above then?
richmond62 wrote: Mon May 13, 2024 6:47 pm In the Drop Down menu at the Top-Right of the Tool Bar there is a section called 'Graphic Objects' which you have named 'Vector Shapes' in the Tool Bar, and similarly 'Graphic Tools' and 'Vector Tools': this is going to confuse some people, so I suggest you 'jump' one way or the other (personally I prefer your terminology).
Please see above, and this screenshot. That stack will replace the mouldy widgety menu, (where I've kept to my same terminology) to differentiate between vector and non-vector bitmap paint tools.("bitmap paint tools" would not fit across the tools palette in 2 column mode.)
User avatar
richmond62
Posts: 3086
Joined: Sun Sep 12, 2021 11:03 am
Location: Bulgaria
Contact:

Re: Rebuilding The Tools Palette

Post by richmond62 »

Yes: Super: BUT . . .

Where do I put the toolsPopupOptions.oxtstack (However tempting, don't you dare say . . .) so that it becomes integrated into the IDE?

Oh, and can't an 'Alert Windows' just be an alert window . . . I, for one, do not get into dialogues, dialogs, or cosy fireside chats with any of my computers. 8-)
https://richmondmathewson.owlstown.net/
User avatar
tperry2x
Posts: 1838
Joined: Tue Dec 21, 2021 9:10 pm
Location: Britain (Previously known as Great Britain)
Contact:

Re: Rebuilding The Tools Palette

Post by tperry2x »

richmond62 wrote: Mon May 13, 2024 7:20 pm I, for one, do not get into dialogues, dialogs, or cosy fireside chats with any of my computers.
Why not? They usually make more sense than people.
richmond62 wrote: Mon May 13, 2024 7:20 pm Where do I put the toolsPopupOptions.oxtstack (However tempting, don't you dare say . . .) so that it becomes integrated into the IDE?
:lol: :D
Anywhere you like. It's not part of the IDE yet (it isn't intended to be as yet). I just wanted to ensure it works first. It will eventually attach itself to the tools stack as a substack, so that it can be 'popped up' as needed. At the moment you can open it from anywhere and have a play with it. (The popup picture earlier was purely just a mockup of how it could work).

I just realised (only now?) that I've totally gatecrashed this thread of yours Paul. This was supposed to be about your tools palette. My apologies.
User avatar
OpenXTalkPaul
Posts: 1835
Joined: Sat Sep 11, 2021 4:19 pm
Contact:

Re: Rebuilding The Tools Palette

Post by OpenXTalkPaul »

This recent comments in this thread are confusing to me...
When I think of 'blend modes' I think of 'Ink' blending modes as in the ones that are very similar to Photoshop's paint modes (such as darken, multiply., exclusion, etc.) not the transition effects (such as wipe left, dissolve, etc.).

As far as I can tell 'Ink' (pixel) blending modes still work fine on macOS.

And while its true that LC seemed to have dropped a few of the basic transition effects (at least on macOS), many of those that use Apple's Core Image filters to do transitions (such as neat ripple effects, 3d-page turning, and whatnot), DO in fact still work fine (the IDE includes an OLD demo that still works), but those fancy ones ONLY work on macOS, because those rely on Apple's API.

Anyway, I agree in that I would want to keep clicks to a minimum, My thinking on that was that the Tools 'tab'/view would automatically change based on the selectedObjects context, so that if you have an image control selected then the Tools palette would be showing the pixel paint tools and controls, if it's graphics object(s) selected would show graphic objects and related controls, multiple objects would show the Edit tab (which could contain things like object alignment buttons). Unless a user is using the IDE to do a bunch of artwork (probably not the best tool for the job), most of the time people are probably going to be on the Edit mode tab.

I was also thinking if the 'Tool' is browse/run mode it could maybe show navigation buttons (next card, previous card, recent stacks, a button for 'card images' like 'show all cards' was, plus a window with thumbnails representing open windows that has multi-screen support).
User avatar
OpenXTalkPaul
Posts: 1835
Joined: Sat Sep 11, 2021 4:19 pm
Contact:

Re: Rebuilding The Tools Palette

Post by OpenXTalkPaul »

OOOOh! Now I see, you were using the ink (pixel) blending modes to make part of a window be transparent to the underlying background (desktop). I wouldn't have thought to use that for shaping a window. Is that blend mode broken on macOS? I don't think I've ever use those ink modes for anything but overlaying two images. I've always used windowShape with an alpha channel mask image.

I know that setting windowShape mask can be quite fast because 'Tactile Media' put out some demo of animated window-shaping a long time ago and it was real-time, no lag at all. Of course trying to create large pixel images to use for window shaping on the fly is going to be a costly operation, probably somewhat laggy if they're not pre-rendered (like if a script is using a graphic object, to make a snapshot image, to use as windowShape)... perhaps a multi-frame GIF-based Image could contain a bunch of different window masks shapes already ready to apply.
User avatar
tperry2x
Posts: 1838
Joined: Tue Dec 21, 2021 9:10 pm
Location: Britain (Previously known as Great Britain)
Contact:

Re: Rebuilding The Tools Palette

Post by tperry2x »

OpenXTalkPaul wrote: Mon May 13, 2024 11:03 pm OOOOh! Now I see, you were using the ink (pixel) blending modes to make part of a window be transparent to the underlying background (desktop). I wouldn't have thought to use that for shaping a window.
Is that blend mode broken on macOS? I don't think I've ever use those ink modes for anything but overlaying two images. I've always used windowShape with an alpha channel mask image.
Yes, only because I knew it was smoother and more efficient than using the custom windowShape property. However seems like it's only functional on Linux. I used to use that in Runrev on the mac, so I know it was working at one point. Likewise on Windows, this seems to not be working there either. I'm not sure at what point it became non-functional. I know I've used that ink in the past on Windows, as I had a window that would drip down the screen like water and used this ink to mask the window fluidly (pun intended).
OpenXTalkPaul wrote: Mon May 13, 2024 11:03 pm I know that setting windowShape mask can be quite fast because 'Tactile Media' put out some demo of animated window-shaping a long time ago and it was real-time, no lag at all. Of course trying to create large pixel images to use for window shaping on the fly is going to be a costly operation, probably somewhat laggy if they're not pre-rendered (like if a script is using a graphic object, to make a snapshot image, to use as windowShape)... perhaps a multi-frame GIF-based Image could contain a bunch of different window masks shapes already ready to apply.
Yes, that's how my current 'tabifier' handler does it. It creates a group, inside that group it creates the desired rectangle. It exports that group directly into the image that I want to use as a mask. It deletes the group (cleans up behind itself), then sets the customWindow to the mask image I just populated. It's a round-about method when you used to be able to simply set an ink that did it, but ho-hum.
roundedwd-v2.gif
roundedwd-v2.gif (5.38 KiB) Viewed 860 times
Anyway, back on all-things-tools:
I've put together a demo of my popup tools in action, and tested it to destruction. It now behaves as any user would expect it to behave. (I'll add the '+' icon back in for triggering the 'add widget' and 'sample stacks' option on the top of the tools palette) - it's just this is currently gone because I'm not using the "header widget" anymore. This isn't me being entirely anti-widget by the way, it's just I'm trying to get my head around getting / setting their properties.

Edit: Solved today with the help of Paul.

Edit 2: If you are running OXT Lite 1.04, the fixes to the tools palette (hiding and showing sections) is available via the 'check for updates'.
User avatar
richmond62
Posts: 3086
Joined: Sun Sep 12, 2021 11:03 am
Location: Bulgaria
Contact:

Re: Rebuilding The Tools Palette

Post by richmond62 »

There is still an obvious mismatch:
-
mismatch.png
mismatch.png (676.78 KiB) Viewed 785 times
https://richmondmathewson.owlstown.net/
User avatar
tperry2x
Posts: 1838
Joined: Tue Dec 21, 2021 9:10 pm
Location: Britain (Previously known as Great Britain)
Contact:

Re: Rebuilding The Tools Palette

Post by tperry2x »

richmond62 wrote: Fri May 17, 2024 2:23 pm There is still an obvious mismatch:
-
mismatch.png
I'm looking at that screenshot and I can tell you don't have my most recent update.
Did you run the update from the help menu, or did you swap in various stacks manually?

This isn't to have a go at you, but I can see by that screenshot it's running an old version of the tools palette.
Plus, you also don't have the corrected popup dialog at all.
If you go "About" menu > IDE Information (what's the build number)?

Please go back and re-read my previous post above.
Above your last post, I mention this (here) - where I also posted a demo video:
Edit 2: If you are running OXT Lite 1.04, the fixes to the tools palette (hiding and showing sections) is available via the 'check for updates'.
User avatar
richmond62
Posts: 3086
Joined: Sun Sep 12, 2021 11:03 am
Location: Bulgaria
Contact:

Re: Rebuilding The Tools Palette

Post by richmond62 »

version.png
version.png (86.23 KiB) Viewed 757 times
-
and swapped in the new tools stack.
https://richmondmathewson.owlstown.net/
User avatar
tperry2x
Posts: 1838
Joined: Tue Dec 21, 2021 9:10 pm
Location: Britain (Previously known as Great Britain)
Contact:

Re: Rebuilding The Tools Palette

Post by tperry2x »

Ah, there's the problem.
That's an old version. I've changed a lot since then.
difference.png
difference.png (123.15 KiB) Viewed 754 times
This is the most recent build. You can see how the tools popup icon is different, as is the popup itself.
User avatar
richmond62
Posts: 3086
Joined: Sun Sep 12, 2021 11:03 am
Location: Bulgaria
Contact:

Re: Rebuilding The Tools Palette

Post by richmond62 »

Well that's gae funny as I downloaded the thing from your MEGA place just yesterday.
https://richmondmathewson.owlstown.net/
User avatar
tperry2x
Posts: 1838
Joined: Tue Dec 21, 2021 9:10 pm
Location: Britain (Previously known as Great Britain)
Contact:

Re: Rebuilding The Tools Palette

Post by tperry2x »

Not really, since mega does not allow file transfers in that way. They are encrypted. So while the huge releases can sit on there, any updates (over https) come from my site. So even if you download 1.04 from mega now, you'll still need to use the check for update menu.
I'd have to produce a whole new 400mb+ download after each change otherwise. This is why the update is only about 75kb in comparison, but there are multiple updates. (Because multiple things have changed).
User avatar
richmond62
Posts: 3086
Joined: Sun Sep 12, 2021 11:03 am
Location: Bulgaria
Contact:

Re: Rebuilding The Tools Palette

Post by richmond62 »

OK; tomorrow is another day.
https://richmondmathewson.owlstown.net/
User avatar
tperry2x
Posts: 1838
Joined: Tue Dec 21, 2021 9:10 pm
Location: Britain (Previously known as Great Britain)
Contact:

Re: Rebuilding The Tools Palette

Post by tperry2x »

Indeed. Reality will be summoning me tomorrow, so I thought I'd put a few videos on the download page, which show a demo of updating OXT Lite under MacOS and Linux. (It might be helpful to everyone).
User avatar
OpenXTalkPaul
Posts: 1835
Joined: Sat Sep 11, 2021 4:19 pm
Contact:

Re: Rebuilding The Tools Palette

Post by OpenXTalkPaul »

tperry2x wrote: Tue May 14, 2024 10:41 am behave. (I'll add the '+' icon back in for triggering the 'add widget' and 'sample stacks' option on the top of the tools palette) - it's just this is currently gone because I'm not using the "header widget" anymore. This isn't me being entirely anti-widget by the way, it's just I'm trying to get my head around getting / setting their properties.
Hah. I'm actually not a fan of that particular widget which they used for the header menus in most of the IDE widows and palettes (its used in the message box stack too for example).
I think that widget is overly complicated to use, it seems to have been designed specifically for the IDE, not so much as a general use control.

I actually modified the IDE palette-topper widget thing, gave it a quick (bitmapped) icon and made it userVisible=true, so I could play around with it. At one point I used that as a basis to start to working on my own palette/button grid widget.

I tried getting the menu for the column-amount to be sorted numerically and couldn't do it for some reason, the widget or its behavior script wouldn't allow it unless I added leading zeros, so I added them in there anyway as a temporary way to set columns count very high in order to try out a horizontally oriented Tools.

I think it's a great idea to replace that widget in the Tools with a pop-out menu stack like that.

I do tend to have a lot of widgets installed so for my Tools palette I like 6 columns, 9, sometimes more. ;-)
I'm pretty sure '3' columns worked fine too, so maybe you could look at what I used to do that in my build.

Anyway I really like what you're doing with your Tools, I might just add that to my IDE until my attempt at a rewriting it is further along.
User avatar
OpenXTalkPaul
Posts: 1835
Joined: Sat Sep 11, 2021 4:19 pm
Contact:

Re: Rebuilding The Tools Palette

Post by OpenXTalkPaul »

Saving this here as a quick note to self:
Force unload a Widget (or any Extension) module on-the-fly with the IDE handler:
revIDEExtensionUnload pExtensionID

So for example you could do this:
revIDEExtensionUnload "com.livecode.widget.treeview"
And *POOF* the 'Tree View' Widget will unload and disappear from the Tools palette.
BUT, I don't know if that's such a good idea to do that with that particular widget since it's used as the Property Inspector's Array Data Editor. This only unloads an extension module from memory, when you restart the engine the widget will reappear.
User avatar
OpenXTalkPaul
Posts: 1835
Joined: Sat Sep 11, 2021 4:19 pm
Contact:

Re: Rebuilding The Tools Palette

Post by OpenXTalkPaul »

WHile fixing the missing Line Tool bug for my Tools palette, in the IDE library (revIDEPaintTools() I decided to play around with the Graphics tools and experiment a little.
Two things I got out of this:
1) the 'Graphics Controls' which are the ones you 'place' (Oval,RoundRect,RegularPoly,Square) like other controls objects (buttons, fields, widgets, etc.) IMO these should NOT be controls, they should be graphic tools because its so much better to 'draw' them to desired size, rather then place them and then resize (1 step vs 2 steps).
2) It's possible to add new Graphic Controls that are arbitrarily shaped (polygon control with a preset points list). To prove this point, I added a 'Star' Graphic to the Palette
StarGraphic.png
StarGraphic.png (413.08 KiB) Viewed 621 times
User avatar
richmond62
Posts: 3086
Joined: Sun Sep 12, 2021 11:03 am
Location: Bulgaria
Contact:

Re: Rebuilding The Tools Palette

Post by richmond62 »

So . . . we bottom feeders (i.e.me) are slobbering over all the jazzy things you say you are putting into OXT Heavy, but unless you make an
"RC 57" available we have no chance of getting our sweaty paws on them.
https://richmondmathewson.owlstown.net/
User avatar
OpenXTalkPaul
Posts: 1835
Joined: Sat Sep 11, 2021 4:19 pm
Contact:

Re: Rebuilding The Tools Palette

Post by OpenXTalkPaul »

richmond62 wrote: Wed May 22, 2024 9:14 pm So . . . we bottom feeders (i.e.me) are slobbering over all the jazzy things you say you are putting into OXT Heavy, but unless you make an
"RC 57" available we have no chance of getting our sweaty paws on them.
I do usually try to put up stacks of what I'm working on so people can try out and explore ideas along with me if they so choose. I didn't for this particular exploration because it involved modifying multiple files in the IDE. This Star' object was sort of a side-trip off the larger goal of building a new more-malleable Tools palette. I hand drew the points so the stars are not even symmetrical.

I can totally explain how to do it, it wasn't at all difficult.
Lots of graphics objects with custom properties pre-set could be added to the graphics tab of new-Tools palette.

You can start by making an icon for your new object, you can duplicate an existing icon from the IDE theme to use as template like: com.livecode.interface.classic.OvalGraphic.icon.png copied to:
com.livecode.interface.classic.StarGraphic.icon.png

Then copy one of the graphics object's property files from:
/OXTIDE/Tools/Toolset/resources/supporting_files/property_definitions/
Like this one: https://github.com/OpenXTalk-org/OpenXt ... raphic.tsv

Rename it to com.livecode.interface.classic.StarGraphic.tsv
The first line in that file is the column headers like a lot of TSV files have.

The next two lines have to do with the Tools palette:
'type' could be a 'graphic tool' or just 'graphic' depending on how you want it to behave in the Tools palette.
'title' is what new instances of the control will have as their name, and is also what will appear as tooltip & label by default.

Change the row in that file that is its 'points' properties initial value.
The trick is, because its a line and tab-delimited file, you have to use \n in place of 'return' or cr/lf in your points list.
As seen in that file where looks like: 0,0\n100,100 which I replaced with the points of my hand-drawn 'Star'.

You can change a bunch of other properties in that file too if you like. I was thinking it would be nice to have a Graphic Object that already has a nice gradient fill set on it.

Just be careful not to delete any invisible tab characters in that file. You might be able to use a spreadsheet app to edit it.
If it wasn't for those second and third lines, it would've displayed as a table n github, like this one does:
https://github.com/OpenXTalk-org/OpenXt ... wnMenu.tsv

And that's it!
Restart the IDE and you will have a 'new-Classic' star object in your tools palette that you can drag-drop into your stacks just like the rounded rect, oval, etc.
User avatar
tperry2x
Posts: 1838
Joined: Tue Dec 21, 2021 9:10 pm
Location: Britain (Previously known as Great Britain)
Contact:

Re: Rebuilding The Tools Palette

Post by tperry2x »

Cool. Thanks for those instructions.
Works perfectly. :D
I'll add this into OXT Lite 1.05
5pointstar.gif
5pointstar.gif (549.02 KiB) Viewed 588 times
Works in my new inspector too without having to do anything, so that's encouraging:
new-props.png
new-props.png (212.53 KiB) Viewed 586 times
Post Reply

Who is online

Users browsing this forum: No registered users and 0 guests