Go Back   Cockos Incorporated Forums > REAPER Forums > REAPER Feature Requests

Reply
 
Thread Tools Display Modes
Old 07-06-2019, 10:47 AM   #1
Meo-Ada Mespotine
Human being with feelings
 
Meo-Ada Mespotine's Avatar
 
Join Date: May 2017
Location: Leipzig
Posts: 6,630
Default WalterTheme&API: Custom Buttons, Textfields, Sliders, etc.

Time and again, I run into the wish of having the ability to add my own custom-buttons/sliders/etc to my theme.
For instance, I have a set of vst-plugins, that I would love to load by clicking a button on a track or add other nice and important stuff to the Transport-panel.
Especially with the new scripting-possibilities using the theme-layout-functions and the massive changes for Reaper v6, this would be another killer customize feature.

How I think it could be done.

Theme
You can add, let's say, up to 32 custom-elements to a Theme-element.
In the rt-config, a button and a caption could be added to a track like:
Code:
 tcp.custom1 "button" x y w h
 tcp.custom2 "caption=This is a button" x y w h
 tcp.custom2 "slider=minval,maxval,default,stepsize" x y w h
So it's
themelement.customxxx "type of element like button, slider, etc" x y width height

themeelement is the usual themeelements Walter supports like mcp, tcp, trans, etc

This could be themed as all other theme-elements(buttons, captions), but with the difference, that they're not "linked" to a feature/an action by default.

Set and Action to this theme-element
Now, how can we trigger scripts/actions. For that I would suggest to treat them like shortcuts.
So I go into the ActionList-window, select an action, select AddShortcut and when the dialog opens which asks for the shortcut, you click on the custom-element(in our case, the clickable button).
So everytime the button gets clicked, it will run the associated action with it.

Scripting/coding the action behind the theme-element
Now, how to program the scripts behind that.
I would suggest a new function "get_action_context2", which returns:
custom_theme_elementname - like tcp.custom1
object_id - the track/obejct number, in which one clicked the button/etc.
min_value - the minimum value for this element
max_value - the maximum value for this element
current value - 0,1 for buttons, min_value to max_value for buttons

With that, this could be codeable in a quite extensive way and would help us tons.


This is my current idea, how this could be done, but I'm open for better ones that could do things even easier for devs, scripters, themers and users.
__________________
Use you/she/her.Ultraschall-Api Lua Api4Reaper - Donate, if you wish

On vacation for the time being...

Last edited by Meo-Ada Mespotine; 03-31-2020 at 03:31 PM.
Meo-Ada Mespotine is offline   Reply With Quote
Old 08-02-2019, 08:53 AM   #2
Meo-Ada Mespotine
Human being with feelings
 
Meo-Ada Mespotine's Avatar
 
Join Date: May 2017
Location: Leipzig
Posts: 6,630
Default

Ping.


(Pong)
__________________
Use you/she/her.Ultraschall-Api Lua Api4Reaper - Donate, if you wish

On vacation for the time being...
Meo-Ada Mespotine is offline   Reply With Quote
Old 03-31-2020, 03:31 PM   #3
Meo-Ada Mespotine
Human being with feelings
 
Meo-Ada Mespotine's Avatar
 
Join Date: May 2017
Location: Leipzig
Posts: 6,630
Default

Bumperoni
__________________
Use you/she/her.Ultraschall-Api Lua Api4Reaper - Donate, if you wish

On vacation for the time being...
Meo-Ada Mespotine is offline   Reply With Quote
Old 03-31-2020, 04:31 PM   #4
tdc
Human being with feelings
 
Join Date: Oct 2019
Location: Sydney
Posts: 471
Default

Quote:
Originally Posted by mespotine View Post
Bumperoni
I was looking around the theme info only just last night for something like this!

Would be fantastic!
tdc is offline   Reply With Quote
Old 04-19-2020, 06:01 PM   #5
_Stevie_
Human being with feelings
 
_Stevie_'s Avatar
 
Join Date: Oct 2017
Location: Black Forest
Posts: 5,067
Default

+1 and bumpalicious
__________________
My Reascripts forum thread | My Reascripts on GitHub
If you like or use my scripts, please support the Ukraine: Ukraine Crisis Relief Fund | DirectRelief | Save The Children | Razom
_Stevie_ is offline   Reply With Quote
Old 04-22-2020, 11:00 AM   #6
Distressor
Human being with feelings
 
Distressor's Avatar
 
Join Date: Mar 2017
Location: Berlin
Posts: 151
Default

I've been hoping for something like this for years now.

+1
Distressor is offline   Reply With Quote
Old 05-21-2020, 04:46 PM   #7
fernsehmuell
Human being with feelings
 
Join Date: Jun 2016
Location: Wacken
Posts: 15
Default

+1

bumpbumpbump
fernsehmuell is offline   Reply With Quote
Old 05-21-2020, 04:50 PM   #8
Meo-Ada Mespotine
Human being with feelings
 
Meo-Ada Mespotine's Avatar
 
Join Date: May 2017
Location: Leipzig
Posts: 6,630
Default

+1 BumpBump Kriss Kross will make ya BumpBump
__________________
Use you/she/her.Ultraschall-Api Lua Api4Reaper - Donate, if you wish

On vacation for the time being...
Meo-Ada Mespotine is offline   Reply With Quote
Old 05-21-2020, 06:50 PM   #9
myfeltgood
Human being with feelings
 
myfeltgood's Avatar
 
Join Date: Apr 2018
Location: Atlanta, GA, USA
Posts: 194
Default

This sure would beat an update dedicated to metadata. 🙄
myfeltgood is offline   Reply With Quote
Old 05-25-2020, 11:42 AM   #10
AndrewFalcon
Human being with feelings
 
AndrewFalcon's Avatar
 
Join Date: Dec 2018
Posts: 39
Default

Great idea! +1
AndrewFalcon is offline   Reply With Quote
Old 01-12-2021, 06:25 PM   #11
OLSHALOM
Human being with feelings
 
Join Date: Sep 2019
Location: Austria
Posts: 461
Default

THAT WOULD BE SO GREAT!! +1
OLSHALOM is online now   Reply With Quote
Old 03-23-2021, 12:37 PM   #12
Vagelis
Human being with feelings
 
Vagelis's Avatar
 
Join Date: Oct 2017
Location: Larisa, Greece
Posts: 3,827
Default

Bump with a +1! just found this thread and it's something i had in mind as well, would be great if we could add buttons/actions to TCP or media items.
Maybe a customizable media item toolbar would be easier?
Vagelis is offline   Reply With Quote
Old 03-24-2021, 05:50 AM   #13
Pink Wool
Human being with feelings
 
Pink Wool's Avatar
 
Join Date: Apr 2020
Posts: 1,522
Default

Here's my +1
Pink Wool is offline   Reply With Quote
Old 05-17-2021, 03:00 PM   #14
WyattRice
Human being with feelings
 
WyattRice's Avatar
 
Join Date: Sep 2009
Location: Virginia
Posts: 2,068
Default

Yes! +1
__________________
DDP To Cue Writer. | DDP Marker Editor.
WyattRice is offline   Reply With Quote
Old 05-20-2021, 04:40 AM   #15
Phazma
Human being with feelings
 
Join Date: Jun 2019
Posts: 2,875
Default

Not sure if I understand the request but would this allow to add custom buttons to WALTERablte areas (eg. tcp) and assign actions from the action list to them?

If yes, then big +1!
Phazma is offline   Reply With Quote
Old 05-20-2021, 06:15 AM   #16
Meo-Ada Mespotine
Human being with feelings
 
Meo-Ada Mespotine's Avatar
 
Join Date: May 2017
Location: Leipzig
Posts: 6,630
Default

Quote:
Originally Posted by Phazma View Post
Not sure if I understand the request but would this allow to add custom buttons to WALTERablte areas (eg. tcp) and assign actions from the action list to them?

If yes, then big +1!
Yes, that's the idea. So we can have our own elements, that allow functionality the devs wouldn't want to implement as "official" Reaper feature.

So you could add a button/slider/etc to tcp or mcp or transport, etc and associate your own action to it, designed to fit your need.
__________________
Use you/she/her.Ultraschall-Api Lua Api4Reaper - Donate, if you wish

On vacation for the time being...
Meo-Ada Mespotine is offline   Reply With Quote
Old 05-20-2021, 07:13 AM   #17
Phazma
Human being with feelings
 
Join Date: Jun 2019
Posts: 2,875
Default

Quote:
Originally Posted by Meo-Ada Mespotine View Post
So you could add a button/slider/etc to tcp or mcp or transport, etc and associate your own action to it, designed to fit your need.
Yeah full support then!

While I can totally imagine it with buttons, how would it be applied with sliders? Aren't all Reaper actions just triggered by running them as if pressing a button? Any example of what could be tweaked by a slider?
Phazma is offline   Reply With Quote
Old 05-20-2021, 12:29 PM   #18
Meo-Ada Mespotine
Human being with feelings
 
Meo-Ada Mespotine's Avatar
 
Join Date: May 2017
Location: Leipzig
Posts: 6,630
Default

Quote:
Originally Posted by Phazma View Post
Yeah full support then!

While I can totally imagine it with buttons, how would it be applied with sliders? Aren't all Reaper actions just triggered by running them as if pressing a button? Any example of what could be tweaked by a slider?
As mentioned, ReaScript would get a new function, that returns the value of the theme-element, e.g. slider. So if you move the slider to a new value, the script could read out the value and act accordingly.
So sliders must be programmed to be fully supported and wouldn't necessarily work out of the box with regular actions within my proposal.
Though enabling actions that are designed for input-devices like mousewheel could be possible with sliders as well, depending on the value range set in the theme for this slider.

For buttons, I could imagine, that it allows toggling actions with toggle-state as well, but that's for the devs to decide.
__________________
Use you/she/her.Ultraschall-Api Lua Api4Reaper - Donate, if you wish

On vacation for the time being...
Meo-Ada Mespotine is offline   Reply With Quote
Old 05-21-2021, 07:00 AM   #19
Phazma
Human being with feelings
 
Join Date: Jun 2019
Posts: 2,875
Default

Oh I see, so for example a theme could be made that has a slider on the transport area which can be coupled with a script that adjusts BPM based on dragging such a slider. That would result in a theme where it is conveniently possible to adjust BPM by dragging a slider rather than typing it in or having to rely on scrolling.

I suspect adding such a support for theme sliders in reascript may be a bit complex to do and not that straightforward for users as themes will have to be matched with scripts and not always themers and scripters are the same people, but I would certainly appreciate if the devs made that effort for those who are willing to experiment with this.

Regarding buttons in my opinion it is much simpler because it could be used with any action and no extra scripting support needed. Of course I expect toggling to be possible too. Such buttons on the Walter surfaces should in my opinion behave just like toolbar buttons.
Phazma is offline   Reply With Quote
Old 06-22-2021, 10:33 AM   #20
todoublez
Human being with feelings
 
todoublez's Avatar
 
Join Date: Aug 2019
Location: beijing
Posts: 612
Default

brilliant idea ! +1
todoublez is offline   Reply With Quote
Old 06-22-2021, 03:39 PM   #21
Vagalume
Human being with feelings
 
Join Date: Nov 2015
Posts: 607
Default

Really useful
Vagalume is offline   Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -7. The time now is 05:18 PM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.