Old 11-30-2019, 03:38 AM   #1
TBProAudio
Human being with feelings
 
TBProAudio's Avatar
 
Join Date: May 2014
Location: Germany
Posts: 517
Default Reaper 6: embedded JSFX

Hey, is there any way to detect "embedded" mode in JSFX? Would be very nice to show proper "embedded" GUI in TCP/MCP
__________________
www.tb-software.com/TBProAudio
TBProAudio is offline   Reply With Quote
Old 11-30-2019, 04:09 AM   #2
vitalker
Human being with feelings
 
vitalker's Avatar
 
Join Date: Dec 2012
Posts: 4,842
Default

Do you mean whether plugin supports or not embedded mode? If yes, then it just should has its own GUI.
__________________
Quote:
Originally Posted by Sexan View Post
Make a thread "F%#! you Reaper! I quit!" to get more views and feedback since these kind of threads get much more traction
SoundCloudFR: True Non-destructive GLUEAll the REAPER names
vitalker is online now   Reply With Quote
Old 11-30-2019, 04:25 AM   #3
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 8,213
Default

Do you mean allow the code to determine whether or not the GUI of the plugin is "currently floated" (which is the term shown by the Reaper GUI) ?

This might come handy sometimes, even though a totally new look when floated seems rather surprising for the user.

-Michael
mschnell is offline   Reply With Quote
Old 11-30-2019, 08:12 AM   #4
TBProAudio
Human being with feelings
 
TBProAudio's Avatar
 
Join Date: May 2014
Location: Germany
Posts: 517
Default

... something like this:


Code:
@gfx 400 240

 (is_embedded == 0 ) ? // normal floating GUI
  (
    1;  // Normal GUI
  ):
  (is_embedded == 1 ) ? // MCP embedded
  (
    1;  // MCP embedded
  ):
  (is_embedded == 2 ) ? // TCP embedded
  (
    1;  // TCP embedded
  );
__________________
www.tb-software.com/TBProAudio
TBProAudio is offline   Reply With Quote
Old 11-30-2019, 08:19 AM   #5
Lokasenna
Human being with feelings
 
Lokasenna's Avatar
 
Join Date: Sep 2008
Location: Calgary, AB, Canada
Posts: 6,475
Default

Quote:
Originally Posted by mschnell View Post
Do you mean allow the code to determine whether or not the GUI of the plugin is "currently floated" (which is the term shown by the Reaper GUI) ?
Embedding in the TCP/MCP may require a very different UI compared to when the FX is floating and can be as big as it needs to.

Also, this thread should be in the pre-release forum since it's about Reaper 6.
Lokasenna is online now   Reply With Quote
Old 11-30-2019, 11:06 AM   #6
nofish
Human being with feelings
 
nofish's Avatar
 
Join Date: Oct 2007
Location: home is where the heart is
Posts: 9,196
Default

Seems like a good idea (being able to query embedded status).
nofish is offline   Reply With Quote
Old 11-30-2019, 12:09 PM   #7
heda
Human being with feelings
 
heda's Avatar
 
Join Date: Jun 2012
Location: Spain
Posts: 5,542
Default

good idea. At the moment at least for MCP, you can just check the width and height and simplify or make another UI in case the window is very small which is the case of MCP. An example of it is the included jsfx general_dynamics. For TCP the area can be larger so it wouldn't work there.
heda is offline   Reply With Quote
Old 12-01-2019, 03:51 AM   #8
Tale
Human being with feelings
 
Tale's Avatar
 
Join Date: Jul 2008
Location: The Netherlands
Posts: 3,007
Default

I'm not saying that a way to explicitly detect embedded mode wouldn't be useful, but you could do what gfx_analyzer does i.e. simply go "embedded" when below a certain size.
Tale is offline   Reply With Quote
Old 12-01-2019, 07:13 AM   #9
TBProAudio
Human being with feelings
 
TBProAudio's Avatar
 
Join Date: May 2014
Location: Germany
Posts: 517
Default

Quote:
Originally Posted by Tale View Post
I'm not saying that a way to explicitly detect embedded mode wouldn't be useful, but you could do what gfx_analyzer does i.e. simply go "embedded" when below a certain size.

Right, but maybe you want to show something different, independently from size...
__________________
www.tb-software.com/TBProAudio
TBProAudio is offline   Reply With Quote
Old 12-02-2019, 11:48 AM   #10
-_~
Human being with feelings
 
Join Date: Oct 2019
Posts: 27
Default

It makes sense to have the info for all possibilities. The current way of checking size and making the UI responsive is probably good for most cases, including smaller floating windows.
-_~ is offline   Reply With Quote
Old 12-05-2019, 11:18 AM   #11
Gertius
Human being with feelings
 
Join Date: Nov 2012
Posts: 14
Default

Hi,
Iīve developed an EQ plugin with JUCE and would love to add itīs GUI to the REAPER 6 MCP, with the new "embedded FX GUI" feature.
Would anyone have any starters on how this could be acheived? Iīve been looking around but couldnīt find anything...
Gertius is offline   Reply With Quote
Old 12-05-2019, 12:29 PM   #12
IXix
Human being with feelings
 
Join Date: Jan 2007
Location: mcr:uk
Posts: 3,388
Default

Quote:
Originally Posted by Gertius View Post
Hi,
Iīve developed an EQ plugin with JUCE and would love to add itīs GUI to the REAPER 6 MCP, with the new "embedded FX GUI" feature.
Would anyone have any starters on how this could be acheived? Iīve been looking around but couldnīt find anything...
They probably haven't documented it yet as it's pretty new. Maybe try emailing Cockos about it?
IXix is offline   Reply With Quote
Old 12-05-2019, 01:24 PM   #13
Gertius
Human being with feelings
 
Join Date: Nov 2012
Posts: 14
Default

Quote:
Originally Posted by IXix View Post
They probably haven't documented it yet as it's pretty new. Maybe try emailing Cockos about it?
Thanks for the tip! I will try that.
Gertius is offline   Reply With Quote
Old 12-08-2019, 09:32 PM   #14
Justin
Administrator
 
Justin's Avatar
 
Join Date: Jan 2005
Location: NYC
Posts: 12,591
Default

Quote:
Originally Posted by Gertius View Post
Hi,
Iīve developed an EQ plugin with JUCE and would love to add itīs GUI to the REAPER 6 MCP, with the new "embedded FX GUI" feature.
Would anyone have any starters on how this could be acheived? Iīve been looking around but couldnīt find anything...
There are some descriptions of everything needed in the freshly updated reaper-plugin.h:

https://landoleet.org/dev/reaper_plugin.h

(search for fx-embed). JUCE is a beast, though, figuring out where to integrate might be the trickiest part.
Justin is online now   Reply With Quote
Old 12-08-2019, 09:33 PM   #15
Justin
Administrator
 
Justin's Avatar
 
Join Date: Jan 2005
Location: NYC
Posts: 12,591
Default

Quote:
Originally Posted by TBProAudio View Post
Right, but maybe you want to show something different, independently from size...
I thought about adding a hint, but really I can't think of a reason why you'd want the behavior to differ... if you did, might as well make it configurable to the user anyway
Justin is online now   Reply With Quote
Old 12-10-2019, 12:28 AM   #16
Gertius
Human being with feelings
 
Join Date: Nov 2012
Posts: 14
Default

Quote:
Originally Posted by Justin View Post
There are some descriptions of everything needed in the freshly updated reaper-plugin.h:

https://landoleet.org/dev/reaper_plugin.h

(search for fx-embed). JUCE is a beast, though, figuring out where to integrate might be the trickiest part.
Thanks! Iīll look into it.
Gertius is offline   Reply With Quote
Old 12-11-2019, 03:00 PM   #17
-_~
Human being with feelings
 
Join Date: Oct 2019
Posts: 27
Default

Quote:
Originally Posted by Justin View Post
I thought about adding a hint, but really I can't think of a reason why you'd want the behavior to differ... if you did, might as well make it configurable to the user anyway
There is a vertical flow in the MCP which size or aspect ratio can't be used to detect with accuracy. eg moving waveform display based control in floating + TCP vs MCP.
-_~ 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 03:01 PM.


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