|
|
|
04-04-2008, 07:07 PM
|
#1
|
Human being with feelings
Join Date: Mar 2007
Posts: 794
|
CSurf additions requests.
Justin,
Could you allow access to the following please (or explain how, if they're already accessible, please)?
1&2. Goto Next/Previous Marker
3&4. Select Next/Previous Track
5&6. Select Next/Previous Item (Media Item - Audio/Midi) Edit: For Selected Track
7. Open Editor for Selected Item (Media Editor - Audio/Midi)
8. Open FX Chain window for Selected Track
9&10. Select Next/Previous FX in open FX Chain
11&12. Zoom In/Out Vertical
13&14. Zoom In/Out Horizontal
15. Enable editing of Selected Track Name field
16. Open I/O window for Selected Track
17. Open Preferences window
Additionally it would be really useful if the Keyboard Shortcuts enabled-Command types could be accessible via CSurf.
Thanks for reading.
Cheers,
Deric.
__________________
REAPER? Oh yes...
Last edited by Deric; 04-04-2008 at 07:16 PM.
Reason: Clarified 5&6.
|
|
|
04-04-2008, 07:29 PM
|
#2
|
Human being with feelings
Join Date: Feb 2007
Location: Oulu, Finland
Posts: 8,062
|
Most or all of those should already be accessible by running the function :
void (*Main_OnCommand)(int command, int flag);
Where "command" is the command code internally used by Reaper. But no cause for despair yet, these codes can be got (although a bit laboriously) by looking at Reaper's keyboard shortcuts configuration file.
__________________
I am no longer part of the REAPER community. Please don't contact me with any REAPER-related issues.
|
|
|
04-04-2008, 07:33 PM
|
#3
|
Human being with feelings
Join Date: Mar 2007
Posts: 794
|
Xenakios,
I'm so glad you don't sleep either AND are always willing to help!
Thanks mate!
I'll go and look through the file you mention now, I've edited all the relevant bits that are currently in the csurf_mcu.cpp file and now (as you've guessed!) want to add some new ones.
Cheers Xenakios, thanks a lot!
Deric.
__________________
REAPER? Oh yes...
|
|
|
04-04-2008, 07:42 PM
|
#4
|
Human being with feelings
Join Date: Feb 2007
Location: Oulu, Finland
Posts: 8,062
|
Basically any action you can find for defining as a keyboard shortcut, you can run with Main_OnCommand. Of course you can put several calls in sequence etc...For other things, you might have to look deeply at the reaper_plugin.h-file, you might find that some neat stuff is already possible. Think smart, some stuff maybe possible even if it first doesn't look like it!
__________________
I am no longer part of the REAPER community. Please don't contact me with any REAPER-related issues.
|
|
|
04-04-2008, 08:06 PM
|
#5
|
Human being with feelings
Join Date: Mar 2007
Posts: 794
|
Xenakios,
Thank you - I really appreciate the generosity of your input and assistance.
I'd come back online to ask about the key-commands file (like "where is it?") as I'd had little luck looking at the key-commands file that opens in REAPER's Preferences (apart from seeing what could be possible).
Anyway... Then I saw your lates post - so now I have a different question!
I've looked at the .h and found, for example, this:
extern void (*CSurf_SetTrackTitle)(MediaTrack *trackid, const char *title);
Is this what I need? If so what do I need to do with it? If not, could you please give me some more pointers on what I need to be looking for?
Again, with your and SWS' help I've been able to get this far - I've no idea if how long it would've taken without your assistance!
Thanks again!
Edit: Sorry - I have pasted an example that is app.->surface... sorry! I'll repost another command that is surface->app.
Edit 2: What is this telling me? #define ID_MARKER_NEXT 40173
__________________
REAPER? Oh yes...
Last edited by Deric; 04-04-2008 at 08:13 PM.
Reason: 1. Posted possibly poor example. 2. Added another question
|
|
|
04-04-2008, 08:12 PM
|
#6
|
Human being with feelings
Join Date: Feb 2007
Location: Oulu, Finland
Posts: 8,062
|
Quote:
Originally Posted by Deric
I've looked at the .h and found, for example, this:
extern void (*CSurf_SetTrackTitle)(MediaTrack *trackid, const char *title);
Is this what I need? If so what do I need to do with it? If not, could you please give me some more pointers on what I need to be looking for?
|
Oh, there's SOOOO much stuff in the header files already, I haven't been able to keep up anymore! But I suppose CSurf_SetTrackTitle would send the Reaper track's name to the control surface...Not the other way around (naming the track visible in Reaper, I am not sure if there actually is an API for that yet.)
__________________
I am no longer part of the REAPER community. Please don't contact me with any REAPER-related issues.
|
|
|
04-04-2008, 08:17 PM
|
#7
|
Human being with feelings
Join Date: Mar 2007
Posts: 794
|
Quote:
Originally Posted by Xenakios
Most or all of those should already be accessible by running the function :
void (*Main_OnCommand)(int command, int flag);
Where "command" is the command code internally used by Reaper... ...Reaper's keyboard shortcuts configuration file.
|
Could you give me a basic example of this please?
Quote:
Originally Posted by Xenakios
Basically any action you can find for defining as a keyboard shortcut, you can run with Main_OnCommand. ...
|
And this please?
__________________
REAPER? Oh yes...
|
|
|
04-04-2008, 08:29 PM
|
#8
|
Human being with feelings
Join Date: Feb 2007
Location: Oulu, Finland
Posts: 8,062
|
Main_OnCommand(40518, 0);
Runs one of these commands (can't remember/check now exactly which) "Item : Set pitch up/down one semitone" or "Item: Decrease/increase playrate by ~6% (1 semitone)".
I found out the code 40518 by looking at the file reaper-kb.ini on my hard disk.
The code will appear there when you define a new keyboard shortcut for an action in the preferences of Reaper. Preferably using a simple key like plain A which has the ASCII code of 65 and is thus easily found from the .ini-file...
Sorry, I am not really the best tutor for all this. I am pretty much a newbie with this Reaper Extension stuff myself. And I haven't especially well looked at the control surface stuff, which is a bit spesialized part of the APIs/SDK.
__________________
I am no longer part of the REAPER community. Please don't contact me with any REAPER-related issues.
|
|
|
04-04-2008, 08:37 PM
|
#9
|
Administrator
Join Date: Jan 2005
Location: NYC
Posts: 15,742
|
Actually, CSurf_SetTrackTitle() shouldnt even be there, it's actually an internal function that isnt needed by plug-ins.
If you wish to set a track's title, however, you can use GetSetMediaTrackInfo() with "P_NAME"...
(be sure you have the latest, unofficial SDK from landoleet).
|
|
|
04-04-2008, 08:43 PM
|
#10
|
Human being with feelings
Join Date: Mar 2007
Posts: 794
|
Quote:
Originally Posted by Justin
...If you wish to set a track's title, however, you can use GetSetMediaTrackInfo() with "P_NAME"...
|
Thanks Justin, I'll have a look and see if I can figure out what do with it once I've found it.
(I wanted to 'make the Selected Track Name field ready for text input' - which would then be typed via normal QWERTY keyboard).
Justin, thanks for coming in and clarifying!
Cheers!
Deric.
Edit: I hope "P_NAME" is obvious to find too!
Edit2: And thanks for the LOL-build tip!
__________________
REAPER? Oh yes...
Last edited by Deric; 04-04-2008 at 08:52 PM.
Reason: P_NAME + LOL advice
|
|
|
04-14-2008, 03:02 PM
|
#11
|
Human being with feelings
Join Date: Mar 2007
Posts: 794
|
Quote:
Originally Posted by Justin
...If you wish to set a track's title, however, you can use GetSetMediaTrackInfo() with "P_NAME"...
|
Hi Justin,
Could you explain how I do this in a bit more detail please? (i.e. what I do with "P_NAME"...)
If anyone else knows, please, reply!
Thanks
Deric.
__________________
REAPER? Oh yes...
|
|
|
04-04-2008, 08:40 PM
|
#12
|
Human being with feelings
Join Date: Mar 2007
Posts: 794
|
Xenakios,
Thank you, you've been great! Very generous and patient, thanks!
Quote:
Originally Posted by Xenakios
Main_OnCommand(40518, 0); ...
I found out the code 40518 by looking at the file reaper-kb.ini on my hard disk...
|
That's a GREAT help!
Quote:
Originally Posted by Xenakios
The code will appear there when you define a new keyboard shortcut for an action
|
Ahhh OK!!!
Also I didn't even think to look in reaper_plugin.h (I assumed it was 'VST' type stuff! - Yeah, I know, NEVER ASSUME ANYTHING!) but that file is FULL of great info and tips! Thanks for the pointer!
I think I need to go and have a good look through those files now (and 'make' a new keyboard shortcut file by editing all the params. I want to make visible!).
Xenakios... Thank you SO much - I really haven't a clue about the basics here - but with your guidance I now know where to look and have a basic idea of what to do with it once I've found it!
Great stuff!
Thanks!
__________________
REAPER? Oh yes...
|
|
|
Thread Tools |
|
Display Modes |
Hybrid Mode
|
Posting Rules
|
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
HTML code is Off
|
|
|
All times are GMT -7. The time now is 12:49 PM.
|