Old 05-31-2019, 11:08 PM   #1
lexaproductions
Human being with feelings
 
Join Date: Jan 2013
Posts: 1,126
Default Reordering Project Tabs with Reascripts?

Does somebody knows if it is doable? Instead of having to drag them in the tab bar?

My problem is that when you have several opened tabs, you can't re-order the tabs that are on the far right in the Project Tab bar.
lexaproductions is offline   Reply With Quote
Old 06-01-2019, 01:05 PM   #2
Meo-Ada Mespotine
Human being with feelings
 
Meo-Ada Mespotine's Avatar
 
Join Date: May 2017
Location: Leipzig
Posts: 6,621
Default

Can you show this problem with a LiceCap-gif?
__________________
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 07-03-2019, 09:22 AM   #3
lexaproductions
Human being with feelings
 
Join Date: Jan 2013
Posts: 1,126
Default

Sorry for having waited so long but here it is:


My problem is I can't reorder Song 14, Song 15, etc...

Last edited by lexaproductions; 07-03-2019 at 09:28 AM.
lexaproductions is offline   Reply With Quote
Old 07-03-2019, 09:31 AM   #4
cfillion
Human being with feelings
 
cfillion's Avatar
 
Join Date: May 2015
Location: Québec, Canada
Posts: 4,937
Default

Beside closing projects and reopening them in the desired order, no.

EDIT: On second thought, I haven't tried but it might be possible to simulate mouse events over the tabbar using SWS/js_API functions. (If that works at all, it would be hackish at best though and would likely not be very reliable...)

Last edited by cfillion; 07-03-2019 at 09:38 AM.
cfillion is offline   Reply With Quote
Old 07-03-2019, 09:47 AM   #5
Meo-Ada Mespotine
Human being with feelings
 
Meo-Ada Mespotine's Avatar
 
Join Date: May 2017
Location: Leipzig
Posts: 6,621
Default

The tabbar has a childID, AFAIK, so this should be possible without too much hacking on all platforms.

Could dragging be simulated as well?
__________________
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 07-03-2019, 09:49 AM   #6
lexaproductions
Human being with feelings
 
Join Date: Jan 2013
Posts: 1,126
Default

Quote:
Originally Posted by mespotine View Post
The tabbar has a childID, AFAIK, so this should be possible without too much hacking on all platforms.
Can you PLEEEEASE enlighten me a bit more on the subject???
lexaproductions is offline   Reply With Quote
Old 07-03-2019, 09:56 AM   #7
Meo-Ada Mespotine
Human being with feelings
 
Meo-Ada Mespotine's Avatar
 
Join Date: May 2017
Location: Leipzig
Posts: 6,621
Default

https://github.com/Ultraschall/ultra...s-ChildIDs.txt

with Julian's extension, I think.
__________________
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 07-03-2019, 10:49 AM   #8
Edgemeal
Human being with feelings
 
Edgemeal's Avatar
 
Join Date: Apr 2016
Location: ASU`ogacihC
Posts: 3,913
Default

Quote:
Originally Posted by mespotine View Post
Classnames:
REAPERhorzvu - Horizontal VU meter (seen in Render dialog)
REAPERvertvu - Vertical VU meter (seen in ReaComp, ReaEQ, many JS)
Edgemeal is offline   Reply With Quote
Old 07-03-2019, 11:04 AM   #9
lexaproductions
Human being with feelings
 
Join Date: Jan 2013
Posts: 1,126
Default

Quote:
Originally Posted by mespotine View Post
I'm sorry but I'm starting with my LUA skills. But this C++ thing is way over me.
It's not clear for me what's possible to do with this. Can you explain to me a bit more?
lexaproductions is offline   Reply With Quote
Old 07-04-2019, 08:32 AM   #10
Meo-Ada Mespotine
Human being with feelings
 
Meo-Ada Mespotine's Avatar
 
Join Date: May 2017
Location: Leipzig
Posts: 6,621
Default

Just install his extension and you can use his functions in Lua as well.

I can't really explain the whole thing about working and programming windows/tabs/etc very much to you, as I'm also in my very beginnings in understanding the stuff, so you should ask in the JS-extension-thread instead:

https://forum.cockos.com/showthread.php?t=212174
__________________
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 09-14-2019, 08:53 AM   #11
lexaproductions
Human being with feelings
 
Join Date: Jan 2013
Posts: 1,126
Default

Hey Mespotine,
After a few months, do you know of a new way to do this? Changing Project Tabs order via script?
lexaproductions is offline   Reply With Quote
Old 09-14-2019, 09:49 AM   #12
cfillion
Human being with feelings
 
cfillion's Avatar
 
Join Date: May 2015
Location: Québec, Canada
Posts: 4,937
Default

A script can (blindly) simulate mouse inputs over the tabbar. It wouldn't help for reordering hidden tabs when too many are opened.


Last edited by cfillion; 09-14-2019 at 10:10 AM. Reason: added proof of concept
cfillion is offline   Reply With Quote
Old 09-14-2019, 10:03 AM   #13
lexaproductions
Human being with feelings
 
Join Date: Jan 2013
Posts: 1,126
Default

Quote:
Originally Posted by cfillion View Post
A script can simulate mouse inputs over the tabbar. It wouldn't help for reordering hidden tabs when too many are opened.
And that’s my only need for this. I was hoping for a chunk to be manageable somewhere...

Last edited by lexaproductions; 09-14-2019 at 12:40 PM.
lexaproductions is offline   Reply With Quote
Old 09-14-2019, 10:12 AM   #14
cfillion
Human being with feelings
 
cfillion's Avatar
 
Join Date: May 2015
Location: Québec, Canada
Posts: 4,937
Default

What is the root problem behind this? There could be other ways to solve it that don't involve reordering opened projects or dealing with the tabbar...

Last edited by cfillion; 09-14-2019 at 10:21 AM.
cfillion is offline   Reply With Quote
Old 09-15-2019, 02:15 PM   #15
lexaproductions
Human being with feelings
 
Join Date: Jan 2013
Posts: 1,126
Default

Well I use Reaper Live with several opened Tabs. I would like to have a way to change the order of my songs without having to close and reopen everything. Because sometimes, it's just not practical to have to resave, close and open 75 tabs just to change the order.

I thought about making a custom order using a table that's set in an extstate, But I don't think it's practical to work with a list that's out of sync with the actual Tabbar because then all the "Reaper.EnumProjects()" won't work.

So I really thing my only hope is to be able to alter the Tab order with Reascript or to be able to use the scroll wheel to scroll through the tablist. (Like in Safari)
lexaproductions is offline   Reply With Quote
Old 09-15-2019, 02:53 PM   #16
Thonex
Human being with feelings
 
Join Date: May 2018
Location: Los Angeles
Posts: 1,719
Default

Quote:
Originally Posted by lexaproductions View Post
Well I use Reaper Live with several opened Tabs. I would like to have a way to change the order of my songs without having to close and reopen everything. Because sometimes, it's just not practical to have to resave, close and open 75 tabs just to change the order.

I thought about making a custom order using a table that's set in an extstate, But I don't think it's practical to work with a list that's out of sync with the actual Tabbar because then all the "Reaper.EnumProjects()" won't work.

So I really thing my only hope is to be able to alter the Tab order with Reascript or to be able to use the scroll wheel to scroll through the tablist. (Like in Safari)
Interesting problem to solve. What about taking a different angle? Loading up sub-projects for every song, and using Marker on the main project to go to the song you want? Might that work?
__________________
Cheers... Andrew K
Reaper v6.80+dev0621 - June 21 2023 • Catalina • Mac Mini 2020 6 core i7 • 64GB RAM • OS: Catalina • 4K monitor • RME RayDAT card with Sync Card and extended Light Pipe.
Thonex is offline   Reply With Quote
Old 09-15-2019, 04:44 PM   #17
lexaproductions
Human being with feelings
 
Join Date: Jan 2013
Posts: 1,126
Default

Quote:
Originally Posted by Thonex View Post
Interesting problem to solve. What about taking a different angle? Loading up sub-projects for every song, and using Marker on the main project to go to the song you want? Might that work?
Thanks for the suggestion Thonex.
I built a pretty complex workflow that’s reminiscent of DigitalPerformer’s chunk feature. And it’s kinda important to keep the projects separate for it to work. Everything is multi tracked and is changed on the fly. So I don’t think subprojects are an option.
lexaproductions is offline   Reply With Quote
Old 09-15-2019, 05:49 PM   #18
nofish
Human being with feelings
 
nofish's Avatar
 
Join Date: Oct 2007
Location: home is where the heart is
Posts: 12,096
Default

Probably it's not that often the case that users have so many project tabs open, but if it's the case it seems to me users should be able to reorder them without using scripts. So have you done an official feature request yet?

Maybe devs will implement it, can't hurt to try at least I'd think.

edit:
Ah just saw you did one for ReaScript already, so nevermind.
https://forum.cockos.com/showthread.php?t=225088

Though I still think this should alternatively be possible via dragging.
Maybe similar like you can access 'hidden' tabs in web browsers.


Last edited by nofish; 09-15-2019 at 06:04 PM.
nofish is offline   Reply With Quote
Old 09-15-2019, 06:03 PM   #19
lexaproductions
Human being with feelings
 
Join Date: Jan 2013
Posts: 1,126
Default

Quote:
Originally Posted by nofish View Post
Probably it's not that often the case that users have so many project tabs open, but if it's the case it seems to me users should be able to reorder them without using scripts. So have you done an official feature request yet?

Maybe devs will implement it, can't hurt to try at least I'd think.
https://forum.cockos.com/showthread.php?t=225088
lexaproductions is offline   Reply With Quote
Old 09-16-2019, 09:31 PM   #20
cfillion
Human being with feelings
 
cfillion's Avatar
 
Join Date: May 2015
Location: Québec, Canada
Posts: 4,937
Default

Quote:
Originally Posted by lexaproductions View Post
I thought about making a custom order using a table that's set in an extstate, But I don't think it's practical to work with a list that's out of sync with the actual Tabbar because then all the "Reaper.EnumProjects()" won't work.
Having a script replace the native tabbar seems like the best workaround... What issues would it being out of sync with EnumProjects indexes cause?
cfillion is offline   Reply With Quote
Old 09-17-2019, 05:10 AM   #21
lexaproductions
Human being with feelings
 
Join Date: Jan 2013
Posts: 1,126
Default

Well I have several other scripts that uses the enum feature. For example to go back and forth between tabs for example. I would need to investigate the impact on my whole setup.
lexaproductions 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 06:49 AM.


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