Go Back   Cockos Incorporated Forums > REAPER Forums > REAPER Color Themes and Icon Sets

Reply
 
Thread Tools Display Modes
Old 03-09-2020, 10:13 PM   #1
lucas_LCS
Human being with feelings
 
Join Date: Dec 2015
Posts: 2,100
Default Is a Custom Reaper 6 Theme Adjuster needed?

Is a custom Reaper 6 Theme Adjuster needed for every theme?
can anyone give details on why a custom adjuster script would be needed?

So far the default theme adjuster appears to be working fine with my theme even after I added custom layouts for color faders and separators.
I suspect it works because I have not altered the main parent layout they are nested in.
It would be helpful to know if I really need to make and distribute a new adjuster script.

::
__________________
LCS Themes
lucas_LCS is offline   Reply With Quote
Old 03-10-2020, 03:52 AM   #2
PhelixK
Human being with feelings
 
PhelixK's Avatar
 
Join Date: Mar 2019
Posts: 876
Default

Quote:
Originally Posted by lucas_LCS View Post
Is a custom Reaper 6 Theme Adjuster needed for every theme?
can anyone give details on why a custom adjuster script would be needed?

So far the default theme adjuster appears to be working fine with my theme even after I added custom layouts for color faders and separators.
I suspect it works because I have not altered the main parent layout they are nested in.
It would be helpful to know if I really need to make and distribute a new adjuster script.

::
Hi, the default Theme Adjuster works with all V6 compatible themes unless the theme has been changed to include new values/settings, ​​not specified within the default lua script. This is an important reason for having a custom adjuster.

For the best user experience, I believe the theme adjuster should be accessible through the contextual main menu. For this feature to work, Reaper tries to find and identify a theme adjuster with an equivalent name (sTitle = 'Default_6.0_theme_adjuster_XYZtheme'). If not present, users must point Reaper to the destination and manually activate the dedicated script. This is fine of course, although the theme adjuster is grayed out in the menu, and most likely lead to some confusion.

- I hope the above makes sense
.
__________________
CONCEPT SIX Basic < > CONCEPT SIX Series
PhelixK is offline   Reply With Quote
Old 03-10-2020, 06:07 AM   #3
White Tie
Pixel Pusher
 
White Tie's Avatar
 
Join Date: Mar 2007
Location: Blighty
Posts: 4,951
Default

I have seen some confusion from the occasional user regarding Reaper v6 and themes, so just to clear that up for anyone reading this : Reaper (v6 or any other) maintains full compatibility with all themes, whenever they are made, with no loss of functionality. Even if its a very old theme, it might look a bit rough in places, but it'll work. So : while there is indeed such a thing as a 'requires v6' theme, there is no such thing as a 'v6 compatible' theme; that's all themes.

In version 6, Reaper added the ability for scripts to interact with themes. This gives the themer the possibility to choose to make elements of the theme directly adjustable by the user. If said script is named correctly, Reaper will also expose that script to the user as the theme's 'theme adjuster' while that theme is in use.

----------------------------------

OK, so moving on to what is actually being talked about here, that being mods of the Default6 theme:

At the time of writing, the only exiting public theme adjuster script is the one that I made for the default 6 theme. But its early days. It might be fun for some themers from here to team up with some folks from the scripting forum, because we understand how WALTER variables work (and how limiting the small number of preassigned variables can be) and they understand how to make what would be, to them, a very simple script to chuck parameters at the theme. All of this is, of course, contingent on me finishing the documentation. cough sorry.

If you haven't changed the WALTER or the script, then obviously the theme<>script interaction is still going to work. However, Reaper will grey out the theme adjuster link because the names no longer match, and it will save any settings made while using that theme under the name of the new theme. To repair the connection, a copy of the theme adjuster with the same name of the theme is required, yes. Its up to you whether you provide this or whether you leave it for the user to do. I'd suggest a nice thing to would be to reskin the theme adjuster script to match your theme, perhaps.

The default v6 theme is still a Reaper theme, same as they always were, it just uses lots of new variables that it gets from the script. You can swap images, change colours and bolt extras onto just like you always did before, and I went to great effort to make that as easy as possible, obviously within the context of it being a very complicated theme. But no, you don't 'need' to change anything.

----------------------------------

There have been a lot of mods based on the Def6 since it came out, which is awesome. However, I would ask you all to be much clearer with users about which version of the def6 your mod is based on, because users need to know whether you are up to date with any later bug fixes or enhancements. Both def5 and my Imperial theme had widely used mods, and mods of those mods, and mods of the mods of those mods, that are still used by people to this say, based on only the very first release of those themes, bugs included. I'd like to avoid that happening again, I would love to be able to claim I get everything bug free at the first attempt, but alas...
__________________
The House of White Tie
White Tie is offline   Reply With Quote
Old 03-10-2020, 08:03 AM   #4
PhelixK
Human being with feelings
 
PhelixK's Avatar
 
Join Date: Mar 2019
Posts: 876
Default

Thank you for this, and also your encouragement for themers to go along with other people who have special interest and knowledge in scripting. Who knows what good things can come of it. Also, I would like to express my appreciation for your contribution to Reaper as an ever-evolving DAW!

I totally agree that all these 'older' themes are basically compatible yes, but not quite.
When I (probably as an occasional user) write V6 compatible themes, I usually refer to the script features and the Theme Adjuster, as in this thread.

I believe these 'old' themes do not take full advantage of all V6 features as they simply do not work with the default theme adjuster. The TA script is a really great product and is now part of the official Reaper installation package. If a person buys the product, tempted by the new features, it might be discouraging when it comes to the use of older themes, whether they are commercial or available for free.

Speaking of modding a theme, I wonder what would you consider not being a mod?
Is your definition of a changed theme purely in terms of front-end UI design, or do you have an opinion, that the theme script and all bindings to Reaper native should be completely recreated as well?

kind rgds,

Quote:
Originally Posted by White Tie View Post
I have seen some confusion from the occasional user regarding Reaper v6 and themes, so just to clear that up for anyone reading this : Reaper (v6 or any other) maintains full compatibility with all themes, whenever they are made, with no loss of functionality. Even if its a very old theme, it might look a bit rough in places, but it'll work. So : while there is indeed such a thing as a 'requires v6' theme, there is no such thing as a 'v6 compatible' theme; that's all themes.

In version 6, Reaper added the ability for scripts to interact with themes. This gives the themer the possibility to choose to make elements of the theme directly adjustable by the user. If said script is named correctly, Reaper will also expose that script to the user as the theme's 'theme adjuster' while that theme is in use.

----------------------------------

OK, so moving on to what is actually being talked about here, that being mods of the Default6 theme:

At the time of writing, the only exiting public theme adjuster script is the one that I made for the default 6 theme. But its early days. It might be fun for some themers from here to team up with some folks from the scripting forum, because we understand how WALTER variables work (and how limiting the small number of preassigned variables can be) and they understand how to make what would be, to them, a very simple script to chuck parameters at the theme. All of this is, of course, contingent on me finishing the documentation. cough sorry.

If you haven't changed the WALTER or the script, then obviously the theme<>script interaction is still going to work. However, Reaper will grey out the theme adjuster link because the names no longer match, and it will save any settings made while using that theme under the name of the new theme. To repair the connection, a copy of the theme adjuster with the same name of the theme is required, yes. Its up to you whether you provide this or whether you leave it for the user to do. I'd suggest a nice thing to would be to reskin the theme adjuster script to match your theme, perhaps.

The default v6 theme is still a Reaper theme, same as they always were, it just uses lots of new variables that it gets from the script. You can swap images, change colours and bolt extras onto just like you always did before, and I went to great effort to make that as easy as possible, obviously within the context of it being a very complicated theme. But no, you don't 'need' to change anything.

----------------------------------

There have been a lot of mods based on the Def6 since it came out, which is awesome. However, I would ask you all to be much clearer with users about which version of the def6 your mod is based on, because users need to know whether you are up to date with any later bug fixes or enhancements. Both def5 and my Imperial theme had widely used mods, and mods of those mods, and mods of the mods of those mods, that are still used by people to this say, based on only the very first release of those themes, bugs included. I'd like to avoid that happening again, I would love to be able to claim I get everything bug free at the first attempt, but alas...
__________________
CONCEPT SIX Basic < > CONCEPT SIX Series
PhelixK is offline   Reply With Quote
Old 03-10-2020, 10:29 AM   #5
lucas_LCS
Human being with feelings
 
Join Date: Dec 2015
Posts: 2,100
Default

Quote:
Originally Posted by White Tie
If you haven't changed the WALTER or the script, then obviously the theme<>script interaction is still going to work. However, Reaper will grey out the theme adjuster link because the names no longer match...
I'm not seeing this behaviour.
I am opening the Theme Adjuster from the Action List.
Is it supposed to be greyed out there or somewhere else?

Quote:
Originally Posted by White Tie
You can swap images, change colours and bolt extras onto just like you always did before, and I went to great effort to make that as easy as possible...
Yes, thanks!
I was pleasantly surprised to find adding color faders was just as easy as it was before.
Your efforts are greatly appreciated.

Quote:
Originally Posted by White Tie
I would ask you all to be much clearer with users about which version of the def6 your mod is based on...
It's based on 6.03.
the only bug I'm aware is the button size bug I reported, which had already been fixed in my version.
were there other bugs between 6.03 and 6.05?

::
__________________
LCS Themes
lucas_LCS is offline   Reply With Quote
Old 03-10-2020, 04:31 PM   #6
White Tie
Pixel Pusher
 
White Tie's Avatar
 
Join Date: Mar 2007
Location: Blighty
Posts: 4,951
Default

Quote:
Originally Posted by PhelixK View Post
I totally agree that all these 'older' themes are basically compatible yes, but not quite.
When I (probably as an occasional user) write V6 compatible themes, I usually refer to the script features and the Theme Adjuster, as in this thread.
No no no. Please stop saying that. We have already had users saying "I want to upgrade to Reaper 6 but I don't want to lose the use of the theme I like" entirely due to this misunderstanding. Users need to be clear that all themes, ever, are V6 compatible.

Quote:
Originally Posted by PhelixK View Post
Speaking of modding a theme, I wonder what would you consider not being a mod?
Who cares? It doesn't matter. But if your theme has a bug, and the originating theme fixes that bug, then people deserve to know that a fix is available, even if its years later and you're not paying attention at that moment.

Quote:
Originally Posted by lucas_LCS View Post
I'm not seeing this behaviour. I am opening the Theme Adjuster from the Action List. Is it supposed to be greyed out there or somewhere else?
Yes; in the themes menu. That's where users are being taught to run the theme adjuster from.

Quote:
Originally Posted by lucas_LCS View Post
It's based on 6.03.
the only bug I'm aware is the button size bug I reported, which had already been fixed in my version.
were there other bugs between 6.03 and 6.05?
My suggestion (and that's all it is) is that the best thing for users is for you make that clear in your theme thread. Someone is going to start using your theme now, or make a mod based on it as it is now. I appreciate your confidence that no more bugs will be found in the future, but I do not share it Default themes have a lifespan of many years.
__________________
The House of White Tie
White Tie is offline   Reply With Quote
Old 03-10-2020, 07:12 PM   #7
lucas_LCS
Human being with feelings
 
Join Date: Dec 2015
Posts: 2,100
Default

I realized I have not been testing on a clean install.
Testing with a clean install I see the issues being noted here.
Based on that I created a new theme package that includes the custom Theme Adjuster.

Quote:
Originally Posted by White Tie
Yes; in the themes menu. That's where users are being taught to run the theme adjuster from.
How odd, I never noticed that until now.


Quote:
Originally Posted by White Tie
My suggestion (and that's all it is) is that the best thing for users is for you make that clear in your theme thread.
Done

::
__________________
LCS Themes
lucas_LCS is offline   Reply With Quote
Old 03-11-2020, 01:46 AM   #8
PhelixK
Human being with feelings
 
PhelixK's Avatar
 
Join Date: Mar 2019
Posts: 876
Default

Quote:
Originally Posted by White Tie View Post
No no no. Please stop saying that. We have already had users saying "I want to upgrade to Reaper 6 but I don't want to lose the use of the theme I like" entirely due to this misunderstanding. Users need to be clear that all themes, ever, are V6 compatible.
Yes of course. Reaper being backward compatible is a great thing, and will protect the work that many people have done over the years

Now, if you're reading this, I have a question for you about customization of the adjuster,

I'm working on a theme, and for that I have a custom theme adjuster that is compatible with some changes I've made in Walter. I would also like to include a logo I made for the theme, thinking it would be nice and convenient. So, I'm looking for a solution to change the adjuster script to include a new placeholder for that graphic. I've tried a few things with the script, but no success ..

Would you suggest me to open a new topic in the scripting section, or could you point me in the direction where I can find more info on how to do it?


.
__________________
CONCEPT SIX Basic < > CONCEPT SIX Series
PhelixK is offline   Reply With Quote
Old 03-11-2020, 07:44 AM   #9
Softsynth
Human being with feelings
 
Join Date: Jun 2015
Posts: 8,699
Default

Quote:
Originally Posted by White Tie View Post
----------------------------------

OK, so moving on to what is actually being talked about here, that being mods of the Default6 theme:

... Reaper will grey out the theme adjuster link because the names no longer match, and it will save any settings made while using that theme under the name of the new theme. To repair the connection, a copy of the theme adjuster with the same name of the theme is required, yes. Its up to you whether you provide this or whether you leave it for the user to do.

Thanks this is useful. Copying and renaming the main theme adjuster to match themes now.
Softsynth is offline   Reply With Quote
Old 03-20-2020, 02:11 AM   #10
amagalma
Human being with feelings
 
amagalma's Avatar
 
Join Date: Apr 2011
Posts: 3,451
Default

I was directed to this thread by lucas_LCS while discussing this issue with White Tie in the thread of my script. I'll copy paste what I wrote there, and join the discussion here.


Quote:
Originally Posted by amagalma View Post
I read the thread and I am not sure if it applies to my script..

For example, let's forget my script and follow this example:

- Load the Default 6 theme.
- Open the Theme Tweak Window
- Change some colors (BTW this is what my script does)
- Save as new theme (let's name it Test)


Now, Test is a new theme and is loaded. If you go to Main Options->Themes->Theme Adjuster the option is greyed out. If you go to Actions->Script: Default_6.0_theme_adjuster.lua the script opens and works! (discrepancy) But it has not inherited the changes done to the Default 6 theme. However, if you make some changes here, then these are saved (in their own section in reaper-themeconfig.ini) and are remembered. No harm is done to the settings of the Default 6 and in no way the settings of one affect the other.


IMHO, this is desirable because it would be a waste of space to duplicate the Theme Adjuster under a new theme for just a change of some colors! And it follows Reaper's paradigm of not duplicating the ReaperThemeZip file when saving a new ReaperTheme via the Tweak Window.


But I see White Tie complaining about this behavior (and I certainly understand him, because he is the one who has to explain to every folk complaining about the theme and its script) and insisting that every mod (even one done for just colors via the Theme Tweak Window) has to have its own Theme Adjuster script.


I have a clear understanding of how things work as they are now, I understand when a new Theme Adjuster script is needed and when not, and have no complains about themes are handled at the moment. BUT if White Tie is not happy about how things work, or there are folks who complain (because they don't understand how things work) at the moment, then it is the devs who have to change things!


If the devs and White Tie agree that things should change, then I can offer a couple of ideas/solutions:

- When the user saves a theme in the Theme Tweak Window, if that theme has a Theme Adjuster script associated with it, then it gets duplicated automatically with the new name and its Theme Adjuster settings get inherited. To follow this paradigm and be consistent, the new Theme is not saved as a ReaperTheme in the ColorThemes directory but as a duplicated ReaperThemeZip. (this solves another problem that I mention in the second solution below)

- Alternatively, if the user saves a theme in the Theme Tweak Window, the new ReaperTheme is NOT saved in the ColorThemes directory, but is saved inside the ReaperThemeZip, and is not considered as a separate theme, but just a color variation (what it is in reality). The Theme Adjuster does not need to get duplicated, nor alternative settings need to be stored in the reaper-themeconfig.ini. But this requires that Reaper changes the way it works, so that ReaperTheme files must always be inside a ReaperThemeZip (which can hold infinite color variations - that is ReaperTheme files). BTW, this solution solves another problem encountered by users (me included in my early Reaper days): the user saves the theme via the Theme Tweak Window and believes he has really saved everything that has to do with the theme. He has his new theme the way he wants it, so why not delete the old theme? He deletes the ReaperThemeZip (which, he believes is the old theme). Tada, his theme got messed up, because all the images, rtconfig.txt etc have gone.


As I said, I am fine with how things work atm. But if it is decided that they need to change, then I prefer the second solution.
__________________
Most of my scripts can be found in ReaPack.
If you find them useful, a donation would be greatly appreciated! Thank you! :)
amagalma is offline   Reply With Quote
Old 03-20-2020, 03:26 AM   #11
lucas_LCS
Human being with feelings
 
Join Date: Dec 2015
Posts: 2,100
Default

I also posted the following answers in the other thread:
Quote:
Originally Posted by amagalma
I read the thread and I am not sure if it applies to my script..

For example, let's forget my script and follow this example:

- Load the Default 6 theme.
- Open the Theme Tweak Window
- Change some colors (BTW this is what my script does)
- Save as new theme (let's name it Test)

Now, Test is a new theme and is loaded. If you go to Main Options->Themes->Theme Adjuster the option is greyed out. If you go to Actions->Script: Default_6.0_theme_adjuster.lua the script opens and works! (discrepancy) But it has not inherited the changes done to the Default 6 theme. However, if you make some changes here, then these are saved (in their own section in reaper-themeconfig.ini) and are remembered. No harm is done to the settings of the Default 6 and in no way the settings of one affect the other.
That's what it seemed like to me until I tried it with a fresh, portable install and found it causes issues because, as White Tie pointed out, the Adjuster had broken ties wih the default.

Quote:
Originally Posted by amagalma
If the devs and White Tie agree that things should change, then I can offer a couple of ideas/solutions:

- When the user saves a theme in the Theme Tweak Window, if that theme has a Theme Adjuster script associated with it, then it gets duplicated automatically with the new name and its Theme Adjuster settings get inherited.
I like that idea.

Quote:
Originally Posted by amagalma
To follow this paradigm and be consistent, the new Theme is not saved as a ReaperTheme in the ColorThemes directory but as a duplicated ReaperThemeZip.
This sounds good to me if implementing is not difficult.
It would eliminate people asking why their saved mod doesn't work because they forgot to also copy the original theme to a fresh Reaper install.

::
__________________
LCS Themes
lucas_LCS is offline   Reply With Quote
Old 03-20-2020, 03:29 AM   #12
amagalma
Human being with feelings
 
amagalma's Avatar
 
Join Date: Apr 2011
Posts: 3,451
Default

Quote:
Originally Posted by lucas_LCS View Post
That's what it seemed like to me until I tried it with a fresh, portable install and found it causes issues because, as White Tie pointed out, the Adjuster had broken ties wih the default.
Could you give me the steps to reproduce the problem? What was expected and what happened? Thanks!
__________________
Most of my scripts can be found in ReaPack.
If you find them useful, a donation would be greatly appreciated! Thank you! :)
amagalma is offline   Reply With Quote
Old 03-20-2020, 04:23 AM   #13
lucas_LCS
Human being with feelings
 
Join Date: Dec 2015
Posts: 2,100
Default

Quote:
Originally Posted by amagalma View Post
Could you give me the steps to reproduce the problem? What was expected and what happened? Thanks!
I don't remember the exact steps.
I think after the fresh install I left the default untouched and simply made some changes to the new theme.
The Adjuster then no longer appeared to make changes for the default.

::
__________________
LCS Themes
lucas_LCS is offline   Reply With Quote
Old 04-04-2020, 12:32 PM   #14
lucas_LCS
Human being with feelings
 
Join Date: Dec 2015
Posts: 2,100
Default

Odd.
I've tested again with fresh, portable Reaper 6.08 install and it seems to work fine without using a custom theme adjuster for the mod.

@ White Tie
Does making a copy of the theme adjuster and renaming it do any else other than making the Theme Adjuster entry available under Options/Themes?

::
__________________
LCS Themes
lucas_LCS is offline   Reply With Quote
Old 04-04-2020, 02:24 PM   #15
White Tie
Pixel Pusher
 
White Tie's Avatar
 
Join Date: Mar 2007
Location: Blighty
Posts: 4,951
Default

Quote:
Originally Posted by lucas_LCS View Post
Does making a copy of the theme adjuster and renaming it do any else other than making the Theme Adjuster entry available under Options/Themes?
No.

From the theme's point of view - Its all about parameters. Reaper will look for entries in the reaper-themeconfig.ini and send those parameters to the theme. It doesn't care where the parameters came from, you could have just typed them in yourself, or maybe a script set them.

From the menu's point of view - you could have a thousand scripts, but if you're using a theme and one of the scripts is called "<theme name>_theme_adjuster" then it'll link to it. Even if its a blank script, or a script that just fills your screen with rude words.

From the script's point of view - I put some basic checking in, by creating (in the theme) a parameter called 'defaultV6'. The script looks for that, and so asks the theme "are you the default 6 theme?", and if is says yes, then the script takes its word for it.

-----

So. If nothing ever changes, everything is fine. But if I make changes to the script, that little white lie where mods of the Def6 tell the script "yeah, I'm the real default 6 theme, I promise, carry on" might break. I'm not going to paint myself into a corner by saying that I won't ever do that, because I might need to at some point.

The broader point is that unless there is a direct 1:1:1 connection between a theme, its reaper-themeconfig.ini entries and its theme adjuster script, things are definitely at some point going to get super confusing.

The cleanest remedy to all of this is to make a copy of the theme adjuster whenever you make a new default 6 theme mod, and to be clear with your users what's going on. Its only a little script.
__________________
The House of White Tie
White Tie is offline   Reply With Quote
Old 04-04-2020, 09:42 PM   #16
lucas_LCS
Human being with feelings
 
Join Date: Dec 2015
Posts: 2,100
Default

Quote:
Originally Posted by White Tie View Post
From the script's point of view - I put some basic checking in, by creating (in the theme) a parameter called 'defaultV6'. The script looks for that, and so asks the theme "are you the default 6 theme?", and if is says yes, then the script takes its word for it.
Thanks for clarifying this.
In addition to changing the theme name, do I also need to change the following 3 entries in the script to match the new theme's name?
Code:
sTitle = 'Default_6.0 theme adjuster'
Code:
--------- IMAGES ----------

function loadImage(idx, name)
  local str = debug.getinfo(1, "S").source:match[[^@(.*[\/])[^\/]-$]].."Default_6.0_theme_adjuster_images/"
Code:
------------- ACTIONS --------------

function switchTheme()
  local str = string.match(reaper.GetLastColorThemeFile(), '^(.*)[/\\].+$')
  if(reaper.file_exists(str.."/Default_6.0_unpacked.ReaperTheme")==true) then
    openTheme = reaper.OpenColorThemeFile(str.."/Default_6.0_unpacked.ReaperTheme")
  else if(reaper.file_exists(str.."/Default_6.0.ReaperThemeZip")==true) then
    openTheme = reaper.OpenColorThemeFile(str.."/Default_6.0.ReaperThemeZip")
    else reaper.ShowConsoleMsg("Default 6.0 theme not found")
    end
  end
  indexParams()
  redraw = 1
end


-----

Quote:
Originally Posted by White Tie View Post
So. If nothing ever changes, everything is fine. But if I make changes to the script, that little white lie where mods of the Def6 tell the script "yeah, I'm the real default 6 theme, I promise, carry on" might break. I'm not going to paint myself into a corner by saying that I won't ever do that, because I might need to at some point.

The broader point is that unless there is a direct 1:1:1 connection between a theme, its reaper-themeconfig.ini entries and its theme adjuster script, things are definitely at some point going to get super confusing.

The cleanest remedy to all of this is to make a copy of the theme adjuster whenever you make a new default 6 theme mod, and to be clear with your users what's going on. Its only a little script.
I have to agree that the best case is to have a separate script and image folder for the new theme since future default editions could break it.
Unfortunately, this does complicate distribution and installation, as we've already seen.
THhe two possibilities I'm seeing here are :

- distribute the theme without a dedicated adjuster script, but it may break in the future, requiring updates or creating it's own adjuster script.

- distribute the theme with an included adjuster script an image folder, but it's more difficult to install.

Is there a easier third way that I'm not seeing?

::
__________________
LCS Themes
lucas_LCS is offline   Reply With Quote
Old 04-10-2020, 03:18 AM   #17
White Tie
Pixel Pusher
 
White Tie's Avatar
 
Join Date: Mar 2007
Location: Blighty
Posts: 4,951
Default

Quote:
Originally Posted by lucas_LCS View Post
In addition to changing the theme name, do I also need to change the following 3 entries in the script to match the new theme's name?
Need? Not at all, and it should all work while the theme and its script pretend to each other that they are the default 6. But if you do want to change it, for niceness, this is the really important bit : in the rtconfig the theme creates the parameter:

Code:
define_parameter 'defaultV6' 'defaultV6_version' 1
then, in the script, the themeCheck function reads that:

Code:
function themeCheck()
  local theme,tmp,tmp,theme_version = reaper.ThemeLayout_GetParameter(0)
  if theme ~= oldTheme or theme == nil then
    if theme ~= 'defaultV6' or theme_version < 1 then --theme_version catch for later changes
      _wrongTheme.visible, _dockedRoot.visible, _undockedRoot.visible = true, false, false
      _theme.text.str = string.match(reaper.GetLastColorThemeFile(), '[^\\/]*$')
      if gfx.measurestr(_theme.text.str)<160 then _theme.w=160 else _theme.w=gfx.measurestr(_theme.text.str) end
      _wrongTheme:onSize()
      redraw = 1
    else
      _wrongTheme.visible = false
      getDock() --it will decide which root to draw
      paramGet = 1
      redraw = 1
    end
    oldTheme = theme
  end
end
...and shows the _wrongTheme display instead of the normal theme adjuster.


Quote:
Originally Posted by lucas_LCS View Post
Unfortunately, this does complicate distribution and installation, as we've already seen.
THhe two possibilities I'm seeing here are :

- distribute the theme without a dedicated adjuster script, but it may break in the future, requiring updates or creating it's own adjuster script.

- distribute the theme with an included adjuster script an image folder, but it's more difficult to install.

Is there a easier third way that I'm not seeing?
My advice on this is the same as my advice on all themes with 'extra bits'. Provide the user with two downloads:

1 : A .ReaperThemeZip - This is enough for someone browsing themes to get an idea of how the theme is. The theme works with just this, so give them just this.

2 : A .Zip of extras - anything else, including a theme adjuster, or any other script, if applicable. With installation instructions and uninstallation instructions.

As we have seen, there is at least one user too angry to do things like 'unzip a file' and 'copy things from one place to another'. Well, that's how Reaper works right now if you want the fancy toys, so too bad to that guy. Not our problem.
__________________
The House of White Tie
White Tie is offline   Reply With Quote
Old 09-25-2021, 07:22 AM   #18
gapalil001
Human being with feelings
 
gapalil001's Avatar
 
Join Date: May 2016
Location: Kyiv, Ukraine
Posts: 544
Default

i wish to create script that will get theme parameters (define_parameter strings) and can adjust them to selected tracks only. is that possible?
gapalil001 is offline   Reply With Quote
Old 09-25-2021, 07:37 AM   #19
White Tie
Pixel Pusher
 
White Tie's Avatar
 
Join Date: Mar 2007
Location: Blighty
Posts: 4,951
Default

Could I ask you to not bump unrelated threads? This thread is out of date (things have changed) and not related to your question.
__________________
The House of White Tie
White Tie is offline   Reply With Quote
Old 09-25-2021, 11:37 AM   #20
gapalil001
Human being with feelings
 
gapalil001's Avatar
 
Join Date: May 2016
Location: Kyiv, Ukraine
Posts: 544
Default

Quote:
Originally Posted by White Tie View Post
Could I ask you to not bump unrelated threads? This thread is out of date (things have changed) and not related to your question.
Sure!
gapalil001 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:46 AM.


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