Go Back   Cockos Incorporated Forums > REAPER Forums > REAPER Pre-Release Discussion

 
 
Thread Tools Display Modes
Prev Previous Post   Next Post Next
Old 04-27-2019, 08:05 AM   #1
White Tie
Pixel Pusher
 
White Tie's Avatar
 
Join Date: Mar 2007
Location: Blighty
Posts: 4,950
Default Reaper V6 Default Theme - alpha 1.0

Please find attached the Alpha 1 of the Reaper V6 Default theme and its associated adjuster script. It is at a stage where it now needs rigorous testing so we can discuss its functionality, how it interacts with its script, and its many opportunities for future modding.

The Dawn of Script-able Themes

New REAPER functionality now allows the WALTER-able parts of a theme (Mixer, Track Panels, Env panels, Transport) to be altered by scripts. While this has no affect on the styling of themes, it has the potential to radically empower even the most casual of users to make useful changes to the functionality of the theme; sizing some elements like the track name field or simplifying panels by only showing some elements when they are relevant.

What I have here is both a theme and the script that adjusts it. While the two only work with each other, I have taken great pains to make it easy for future modders and scripters to alter and enhance either part.



This all makes use of functionality that is only currently present in development branches of the program, which are not included in RC or final releases. Therefore, you must be using a DEV version of REAPER to test this.

Use 'Options > Show REAPER resource path in explorer/finder' to open your resources folder. Place the theme (the .ReaperThemeZip file) in the 'ColorThemes' folder. Unzip the contents of script.zip into your 'Scripts' folder.

Go to 'Actions > Show action list'. In the bottom right, click the ReaScript Load button. Select 'Default_6.0 theme adjuster.lua' and click Open.


HiDPI(retina)

The theme uses the new (incomplete work in progress) REAPER HiDPI functionality. The theme has three sizes - 100%, 150%, 200% in the form of layouts. WALTER-controlled panels now automatically choose the appropriate layout size for the resolution of the monitor they are being displayed on, even across different monitors.


High Contrast, Bold Colors

A bolder contrast palette has been used throughout. OS-drawn and un-themable elements are as bright as they've always been, but this time rather than trying to blend in with them, an overall strong and punchy contrast range has been used throughout the theme. Tracks and panels are roughly the same brightness as they were in V5, but inactive and background elements have been made dark.

Custom colors are now exactly the color you chose. Everywhere. You may now use the full range of custom colors to highlight important tracks and dim less critical background tracks.

This likely means that any existing projects colored in with the V5 theme will have eye-searingly strong colors. This:



...will become this...



You'll want a quick and easy way to fix that, right? No problem. The script has a button to dim all the custom colors in a project:



you can then, if you wish, go through and use coloring to highlight the tracks that are on your mind...



Since the script is messing with your colors, it seemed like a golden opportunity to provide an easy way for you to apply color. I have made a choice of palettes with a simple 'click to apply to selected tracks' functionality.

Beyond this, I have also made it possible to totally recolor a project using the chosen palette. Which I'm sure you'll agree sounds like something you'd never want to do. However, its actually strangely pleasing and compelling, give it a try!



For reasons of consistency I have been spelling colour wrong both in this thread and within the script. And I have winced every time.


A,B,C - the three Layouts

My experience of watching REAPER users is that users don't necessarily want a huge choice of layouts; they just want a few that are right for them. This suggested an entirely different approach that the scripting makes possible.

The Track Control Panels and Mixer Control Panels each have three identical layouts, with a wide range of user-configurable properties. Setup your own layouts, select some tracks and apply them to taste.

As it stands, this will all only work reliably with tracks that have had layouts applied to them using the script.




Folders and Borders

Just like the Track Control Panels, the Mixer Control Panels can now indent tracks based on their folder depth. On both TCP and MCP the amount is adjustable using the script, from 'none' to 'surely that's too much'.



Users with large projects have been using the unsatisfying and risky practice of 'separator' tracks to break up their projects. On the mixer, here is a possible alternative : borders. You can apply a border to either edge of a layout, then apply that layout to a track at the start or end of a section, or you can tell tracks to automatically apply borders around folders.




Contextual Controls

One of the things that new users struggle with when first using REAPER is that, compared to other DAWS, it has more controls visible, they're always visible, and if the mixer is showing then they're all shown twice!

We now have the opportunity, if we're brave, to change that.

Both new users and veterans benefit from a clean, uncluttered range of potential things to click at any one time. Using contextual assumptions based on track selection, record mode and whether the mixer is visible, the script can (entirely optionally) hide elements from the TCP. If the track isn't armed, maybe the track input selector is just visual clutter. If you're doing your volume and panning on the mixer, maybe the pan controls and a full volume fader on the TCP are just visual clutter.

This powerful functionality is now here, we have much to discuss about how we deploy it.


Design Intent

As with the Default V5 theme, the design intent has been to follow the principles of data-driven high functionality design. Its not about looking cool at first glance, its about this being the most efficient theme it can be, that you're still using 5 years from now. So, is in V5, no two elements look the same, elements that do the same thing look the same wherever they appear, and as wide as possible a range of styling (from flat boxes all the way to big shiny chrome things) used to diferentiate elements, create a functionality-driven visual heirarchy to speed visual searching for key elements, and to create visual anchor elements to draw the eye to different sections.

I consider the visual styling of the theme to be pretty much final. I appologise again for not including the forum in this task, but we've learned the hard way that internet based design by commitee doesn't work, use the forum search tools if you don't believe me I have made use of my meatSpace Reaper community testers, so ...er.. if you don't like it, blame the Brits!


Other Nice Things
  • The script can be docked to provide the core of its functionality as part of your day-to-day workflow, if you wish.
  • Grid lines are now semi-transparent, so at last can be visible in all circumstances without needing to be eye-searingly bright.
  • The 'high-detail' toolbar icons of V5 have been reverted to a simplified style more like previous versions.
  • Mixer meters can now expand based on channel count, and their panels expand to fit them.
  • TCP track name fields can be set to 'auto' so they fit the largest track name in your project.
  • Track folder controls are now on the left, next to the indents, so that stuff all lives together.
  • The transport rate control is now out of the way where you're not going to accidentally nudge it, and you can also resize it using the script, all the way down to a knob if you choose.
  • Transport control right-click menu visual tweaks have been duplicated in the script for your convenience.


Bad, sad and unfinished things
  • I have attempted to include functionality to allow you to use the HiDPI sizes that are not being used at your current resolution, as layout options. The way I have done this has been universally hailed as confusing, unintuitive and somewhat broken. Big rethink needed there.
  • No scaling or script interaction yet on the master track or master mixer, waiting till the other panels are fully tested before approaching them.
  • The interaction between per-track layout assignments (which is what the script uses) and the existing 'default' layout assignments (as set in Options > Layouts or the Screensets/Layouts window) is extremely muddled and I'm not clear on which direction to take to resolve this. Your thoughts would be most welcome.
  • Expectation is that mixer strip layouts will NOT be included, my impression is that few users use them, and they would come at the cost of much greater complexity for new users. I encourage feedback on this decision, and I will make it as easy as possible for modders to add them in.
  • Drag & drop folder creation indicator is broken.
  • Mouse handling with images in the script is currently buggy/bad.
  • This is the first script I've ever written, and its alpha. When (not if, when!) it breaks, please share the error message you get
__________________
The House of White Tie

Last edited by White Tie; 07-14-2019 at 09:48 AM.
White Tie is offline  
 

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 02:09 AM.


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