jiayouxjh / grafx2

Automatically exported from code.google.com/p/grafx2
0 stars 0 forks source link

Drag mouse to set numeric values #372

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
For all numeric text fields, we could implement a generic system where if you 
click, hold, and move the mouse left or right, the value decreases and 
increases; and then on release the value is accepted.
ArtGem has it (without any visual indication, the mouse cursor just disappears)
Photoshop has something similar with a slider that pops under the text field.

It's mostly useful for numeric values that you would have slowly increased or 
decreased, not for picture size, for example.

If it's implemented, we can simplify some screens where we implemented +/- 
buttons or a slider linked with the text input.

Original issue reported on code.google.com by yrizoud on 7 Aug 2010 at 8:08

GoogleCodeExporter commented 9 years ago
When there is a visible slider it also allows to reachany value by just 
clicking where you want (the RGB sliders are a good example). It alsoallows 
realtime previewof the color.

It could still be used in other places... Showing a graphical slider would be 
better, as I always wonder if the slide should be vertical or horizontal. Or 
maybe we should makeit diagonal to fix that :)

Original comment by pulkoma...@gmail.com on 7 Aug 2010 at 10:28

GoogleCodeExporter commented 9 years ago
Blender might be a better example program.. it uses these EVERYWHERE (plus, 
it's the only one of the programs mentioned so far that the source code is 
available for)

Original comment by 00a...@gmail.com on 8 Aug 2010 at 1:35

GoogleCodeExporter commented 9 years ago
RGB sliders must stay, of course, like every slider where it's interesting to 
show the user how the current value is situated between minimum and maximum. 
(pages...)
I was rather thinking of the mini-sliders in Secondary Palette screen, and the 
many times where we need implement a - and + buttons because it's a value you 
often tweak.

> Showing a pop-up graphical slider
I attach two such sliders from Photoshop 6, for illustration. The first one is 
the one that pops when you click just to the right of a numeric field.
You'll notice they both don't have arrows for +1/-1, so you can only click/drag 
in the middle to jump to the target position. The precision is limited by the 
slider's size (The R slider jumps from 187 to 190 to 193) and user's precision 
if each pixel marks a different value. When the range is large, I think it's 
only suitable if the precise value doesn't matter much, like a tool pressure in 
%.
It also requires the value to have an evident minimum and maximum, and all the 
range had better be equally useful : otherwise, you end up struggling to find 
your target value in 1/10 of the slider size.

If we use instead a system where you drag the mouse left or right, infinitely 
increasing or decreasing by 1, there's still the question of sensitivity : We 
could move by 1 for each visible pixel of mouse movement, but I find it too 
sensitive, not easy to stop at exactly the right spot. I'd like to see how good 
it is if the increment is 4 to 8 pixels of desktop resolution. And adapting it 
to low resolution, pixel scalers etc...: The goal is to have same perceived 
sensitivity in all resolutions.

Original comment by yrizoud on 8 Aug 2010 at 4:24

Attachments:

GoogleCodeExporter commented 9 years ago
For something usual, we have ranges from 0 to 255 (a color for example). This 
is barely reachable on a 320px wide screen (as the slider doesn't necesarily 
pops up at the center of the screen with 127 as an initial value)

A solution may be to cube the signed pixel distance from the starting point (ie 
val = (mouse_X - start_X)^3). This gives high precision around the starting 
value, and quick adjusting when you move far.
If it's too brutal we mayuse another similar function (monotonic, growing, and 
f'(0)=0, with perhaps a finite limit in +-inf).

Original comment by pulkoma...@gmail.com on 8 Aug 2010 at 4:40

GoogleCodeExporter commented 9 years ago

Original comment by pulkoma...@gmail.com on 22 Aug 2010 at 1:40

GoogleCodeExporter commented 9 years ago
Looking at this again... shouldn't we use the mousewheel instead ?

Original comment by pulkoma...@gmail.com on 24 Sep 2011 at 2:09