Additional modifier key for fine control of sliders....request


(Philip B) #1

Hello benevolent coders of RT…

I just wanted to request/advocate for adding additional key modifiers to allow for fine control of sliders both when dragging or using the scroll wheel.

Perhaps i’m the only one but i’m constantly battling the sliders for finer control. Specifically in the exposure section, which i would imagine is the most used section for the majority of users.

Hope this is not the wrong place to add the request…

And, thanks for all the excellent work guys. RT is truly a pleasure to use.


#2

Switching into fine tune mode (smallest resolution 0.1 EV):

  1. Klick on the slider knob and hold the mouse button for 2 sec.
  2. Hold Shift key and klick on the slider knob
  3. Hold Shift key and click in front or behind the slider knob
  4. Hold Shift key and scroll up/down with the mouse wheel

Do you need more? :slight_smile:


#3

It may have the functionality but look at all the manipulations necessary to get to it! Not very easy or intuitive. My vote is for a button (or something) to click on to change the fine tune mode.


(Sebastien Guyader) #4

No, you can do either one of the 4 solutions described by @TooWaBoo (it’s not one solution with 4 steps)


(Morgan Hardwood) #5

The only manipulators to get to it are either to hold shift or to left-click holding for 2 seconds. Standard across all GTK3 using programs.


(Gord) #6

I didn’t know about all these methods, but what I am seeing doesn’t quite match. Using the Exposure compensation slider as a test case, I see:

  • Click and hold the slider button for 2 seconds: can adjust value in 0.01 increments
  • Hold shift key and click on the slider knob: can adjust value in 0.01 increments
  • Hold shift key and click in front or behind the slider knob (I assume that means to the left or right of it): can adjust value in 0.10 increments
  • Click slider knob, then hold shift key and scroll the mouse wheel: can adjust value in 0.10 increments

If I can make tiny enough movements with the mouse, I can get 0.01 increments without using any of the above methods. It still takes a steady hand and a lot of care to get 0.01 increments when using those methods that allow it.

Using the -/+ buttons gets 0.05 increments. Shift has no effect on this. It would be very nice if shift allowed the -/+ buttons to operate in 0.01 increments. More deterministic than tiny mouse movements.


(Morgan Hardwood) #7

You’re confusing two things here.

  1. RawTherapee has a feature which prevents you from accidentally changing a slider’s value when just vertically scrolling in the toolbox, by requiring that you hold the shift key when using the mouse scrollwheel to adjust a value. This is a RawTherapee feature, not a GTK+ one. This has “always” been like that, way back in the GTK2 days.

  2. GTK3 has a built-in feature which enables finer slider control by either holding the shift key or by holding the knob for 2 seconds. It’s standard across all programs which use GTK3 - it’s a GTK+ feature not a RawTherapee one.

RawTherapee’s slider granularity (how small an adjustment’s minimum jump can be) is decided on a per-slider basis. While a granularity of 0.05 is well suited for the Exposure Compensation slider (range -5 to 12), a change of 0.05 for the Black slider would make no sense (range -16384 to 32768).

The Exposure Compensation slider has a granularity of 0.05. You can see this by clicking on the knob and pressing the left or right arrow keys on your keyboard. Clicking in front or behind a slider seems to use 2*granularity - I suppose this is also a GTK+ thing.

Dragging a slider has nothing to do with RawTherapee’s granularity. If you move a slider by 1 pixel and the slider is 100 pixels wide, then the value will change by 1 percent. If a slider is 100 pixels wide but has a huge range, such as the Black slider with its range of 49152, then 1 pixel of knob movement will correspond to range/width = 492. You can use GTK+ fine mode to have the value change by far finer amounts.


#8

Wow, somehow all the time I’ve been using RT I totally missed this! Thanks for the short course on slide granularity for those of us with short attention spans.


(Philip B) #9

I get this behaviour but also some additional odd behaviour. Also, I see now there is some visual distinction for precision mode, the bar appears to widen.

On the exposure slider:

-If I hold shift and use the scroll wheel A) the increments go in .1, it would be great if shit+alt gave increments of .01, that would be ultra helpful. B) the slider bar visually oscillates the whole time between the two appearances while holding shift. This does not affect the operation, but is definitely unsettling and distracting, gives the impression something is going wrong.

-regardless of which mode I use I have trouble getting increments of .01, seems it likes to jump by increments of.02

In terms of the black slider there appears to be the exact nonsensical operation mentioned by morgan above. When entering into precision mode the increments are so small that they don’t have any effective impact.

I guess these are two separate issues.

What would be great.

  1. if the + & - buttons had key modifiers that allowed for .01 increments on exposure. This would be excellent. perhaps Alt+

  2. If the scroll wheel+shift also had a keymodifier for .01 increments, Alt+ ? (theme emerging). And visually didn’t signal the coming apocalypse :slight_smile:

  3. If the black slider had some precision modifier that made sense, perhaps 0.2 x of the standard dragging increment would be great. Again perhaps with both a drag and scroll wheel solution including Alt+

Of course it would be great to see this approach to the whole exposure tab. Given the lack of precision with dragging the sliders focusing on a scroll wheel approach seems most attractive. I think modifiers for the +&- would also be great. Further I think the .02 x granularity for sliders with high value ranges (such as black) would be a great general solution.

I only ask becuase I have no idea how difficult this would be to implement. I see that there is some limited implementation for additional granularity. However it really could be so much better, more consistent, and also incorporate the scroll and +&- consistently. I would absolutely love to see this if only for the exposure section. But again I have no idea how long something like this takes.


#10

This is a Gtk3.18 bug and is solved in Gtk3.20. I guess you are on Windows. You can download a Gtk3.22 developement version from here: https://drive.google.com/drive/folders/0B2q9OrgyDEfPS2FpdDAtMVI1RG8 (RawTherapee_dev…)


(Andrew) #11

And there are also the 4 arrow keys… using Exp. Compensation again, I find Up Arrow and Down Arrow change by .05 (but oddly (to me) up arrow decreases the value),
whereas with Ctrl pressed -
the values change by .1
Similarly Left and Right Arrow keys.
You can’t change the value if Shift is pressed.
Page Up and Down also doing .1 with or without Ctrl.

This is RT 5.0.R1 GTK3 and Ubuntu 16.10