Can a script fire another?
-
@dan rathbun said:
IN addition.. the API does not give full access to user shortcuts.
I am talking about a collection (be it Hash or whatever.)
The "school of thought" is that shortcuts are USER settings, and Ruby scripts should not be setting or changing what the user wants and has set.
There is a beta plugin called "Crysis" that massively changes user shortcuts to enable a popup "toolpage".
But it has not been received very well. (An the author just cannot understand why,... and we cannot make him understand. He just gets T'ed off when we try.) -
Thanks Dan - i actually understand what you wrote..
ok, so this standard should really be set by trimble so any developer HAS to follow course.
-
@cadfather said:
ok, so this standard should really be set by trimble so any developer HAS to follow course.
Well this is a "political" issue.
Some plugin authors.. especially commercial guys.. may not want anyone else to access their command procs in any other way, then via THEIR menu and THEIR toolbar.
They have a right to be possessive to prevent "re-branding" and other "un-niceties".
Authors who do not care, can right now create references to a
Proc
and a getter method so other could use it. But there is no standard.. so it can be and is done in a number of ways... IE, the identifier can change from author to author.Now the API could be changed so that proc references are always created.
But there are issues with some Pro-Only plugins that would be defeated (some of them are OEM extensions.)SO it's not an easy issue.
-
@dan rathbun said:
@cadfather said:
ok, so this standard should really be set by trimble so any developer HAS to follow course.
Now the API could be changed so that proc references are always created.
But there are issues with some Pro-Only plugins that would be defeated (some of them are OEM extensions.)I am thinking about a "public" switch, that can only be set when a
UI::Command
is initialized, via it'snew()
constructor.If not explicity set public, then a
call()
method would returnnil
, instead of firing the proc.Example:
@cmd = UI;;Command.new("Widget",true) { # this block is converted into the command's proc } def cmd() @cmd end
So some other plugin / utility that has a reference, or gets it via:
SomeAuthor::Widget.cmd
can call the proc, and it would execute IF the public flag was settrue
.
Ie:
SomeAuthor::Widget.cmd.call()
-
This is a preview of how it could work.
I only need to connect the wires to the same backend that LaunchUp usesβ¦
Oh, and I hope Trimble will not prevent it (as it could be interpreted as violation of unwritten rules). Rather I wish they add theUI::Command.proc
that we have been lobbying for so long. -
WOW!!!
Aerilius, that looks the ******** business!
Edit: !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Edit 2: of course let me know if there's anything i can help with.
-
Not gonna lie, that does look the ******** business!
Hope this becomes a reality so I can use it!
Cheers!
-
I'll add my ********business to that. The ability to mix and match would be priceless.
I'd love to be able to select a set of tools and have them all in one box.
Sometimes you only need one button from a toolbar but you have to have the lot.
As an example, throw simple bezier button together with EEBR and Radial bend. Three very useful tools together, little landscape used, you can always go to plugins or tools etc if you need one of the others. -
ToolbarBuilderDemo is now available on Smustard.com for creating custom Ruby toolbars. Pro version to follow, with ability to save and load your toolbars, plus additional features.
-
cool...it'll be interesting to compare the two, if and when Aerilius produces his masterpiece...
-
Sorry for being late
-
Advertisement