Page MenuHome

Data Eyedropper has no User Interface Access
Closed, ResolvedPublicDESIGN

Description

Decided Solution

The decision has been made to add the eyedropper icon to the right side of the object field, allowing quick access and discoverability. The hotkey, E, will also stay.

To view an animated mockup, look here:
http://www.pasteall.org/pic/show.php?id=60479

  • When nothing is assigned you see the eyedropper inside the fields. Clicking it enables you to pick an item on the screen.
  • When something is assigned, clicking the X will un-assign it, and the eye-dropper re-appears.

When nothing is assigned it's one click to enable the eyedropper. When something is assigned, it's a double-click of the X button. In either case it's faster than opening the menu and clicking an eyedropper tool there. Also, it doesn't make the text fields any smaller than they are currently, and doesn't really add any visual clutter, because you only see it when there's nothing inside the field.


Original Task Description

Currently you can select an object from a button by holding the EKey over an object or object-data button.

However there is no way this is exposed in the interface.

Possible solutions:

  • Add eyedropper to the popup you get when clicking on an object button.
  • Add an eyedropper button next to the object button.
  • Add to the RMB Menu.
  • Investigate some way we can have tools for a setting display when you hover over the button or so.

For discussion on the topic see:

http://blenderartists.org/forum/showthread.php?313713-Small-Blender-GUI-UI-greebles-for-your-picking-they%EF%BF%BDre-low-hanging!

Revisions and Commits

Event Timeline

  • Add to the RMB Menu: this is totally acceptable as only solution.
  • Add eyedropper to the popup: would be nice as extra but not critical.
  • Add an eyedropper button: too much clutter.
  • Have it in tooltips: would think not, for me tooltips should give information about the property, if we add information about all the ways you can interact with a button it's a bit too much.

Thinking a bit further, if you click the button and in popup there's an entry "Pick an Object ...", that's very easy to discover. So if that isn't much harder to do that may be a bit better even as only solution.

Brecht Van Lommel (brecht) lowered the priority of this task from 90 to Normal.Nov 18 2013, 9:33 PM

@Brecht Van Lommel (brecht), agree having in the popup is quite discoverable and not adding clutter to the interface (so far this is my personal preference).

It also matches the steps you currently do to pick a color (click on popup, then access eyedropper), so in that way its consistent too.

@Brecht Van Lommel (brecht) and @Campbell Barton (campbellbarton): Having it in the list box is a good solution. Would be a definite improvement.

However, the best solution for this that I saw was this: http://www.pasteall.org/pic/show.php?id=60479

To have it inside the box when it's empty. This doesn't really add any clutter, but is more visible and faster to use when you need it.

For me this is still clutter, by itself not much but this kind of thing accumulates. I rather have, as a rule, none of these things on buttons.

@Jonathan Williamson (carter2422) probably should have your opinion here as well so we can make a quick final decision.

@Brecht Van Lommel (brecht) @Campbell Barton (campbellbarton) I say we go for putting it in the popup. I actually prefer putting it directly in the object field, like @William Reynish (billrey) suggested, but this becomes a problem if you already have an object assigned and want to change it to a different object.

@Jonathan Williamson (carter2422)

If you already have an object assigned, you simply press the X the remove it, then the eye dropper re-appears.

That's the same number of clicks as having it inside the list menu, but still faster because you have to move the cursor less.

Advantage of having the eye-dropper embedded in the field:

  • it's readily available when no object/item is assigned, ie faster
  • it's easier to find (don't have to look inside the menu)
  • it's faster to re-assign items (click the X, them immediately click the eye-dropper)

Advantages of having the eye-dropper inside the item list menu:

  • less apparent clutter (but only when no item is assigned)

The entire purpose of the eye-dropper is to speed up assigning items, to be more direct in the 3D scene. But if you have to enter the item list menu to access the eye-dropper, the appeal of the feature is negated somewhat.

For me this is one of those things where it may seem like a good idea to add this always visible now, because it's a new feature, but there's so many things that you could have put there, and if you show all of them there would be lots of clutter. Eye dropper icons for color fields, insert keyframe buttons, reset to default value, all this stuff.

But anyway, we should make a decision here. I think both are ok, just prefer not to have this icon always. I'll let @Jonathan Williamson (carter2422) be the tie breaker, if you think it's good to have it in the object field then we can do that.

Yes, both are an improvement over the current situation.

As you pointed out earlier, an advantage of having inside the item menu is consistency with the color picker being inside the color wheel. The difference being that the color field already communicates something: the color :)

If it's placed inside the menu, it could go close to the top to enforce as little cursor travel as possible. Perhaps next to the search box?

I think @William Reynish (billrey) makes a really good point about "the color field already communicates something". Most our fields don't communicate what they are or what they do other than through their labels.

Both options are good. @Brecht Van Lommel (brecht), let's go ahead and put the eye dropper in the field, on the right side. The comment from @William Reynish (billrey) on it being easier to find was the deciding factor for me. The whole point of the eye dropper is to make it easier to assign objects, so it should be quick and easy to get to.

Ok, that's decided then.

Related to this is the fact that file path text entry fields already have a separate button. The original argument that a separate button adds clutter also applies here.

I think it'd make sense to unify this with the newer, cleaner solution of putting the picker inside the field, like so:

@Campbell Barton (campbellbarton) would you want to tackle this one? Or if you're game to help me out I'd love to do it myself.

Is the decision is to put the color picker inside the button?

(so its visible at all times and not be attached to the popup which is created when you click on an object button?).

Whats being agreed on could be more clearly stated rather then a Yeah, lets do that..., it would help to give final proposal so a developer knows exactly whats being suggested, down to details like... Would the eyedropper show when the field is empty or not?

I have to say I pretty strongly disagree with the suggestion to add this eyedropper to *all* object & object-data buttons, basically for the same points Brecht made - but also that in quite a few cases it doesn't leave much room for the text.
I already made this patch and it made quite a lot of text fields which already hardly have enough space to display names. end up even more cramped.

Perhaps before doing this we could consider giving buttons more horizontal space in the layouts we use.

So far I'd prefer to have this inside the search pop-up you get once you click on the button, Its less obvious but still discoverable and leaves the buttons to display names clearly.

dev-note:
The way the existing 'X' button is implemented (to clear a text field), doesn't extend well.
So if we want to add more buttons into the text field, I would first want to be able to do this without hard coded hacks (ok ... this is a detail, just to say it makes it a bit bigger task).

@Campbell Barton (campbellbarton), you're right, we should work to communicate final decisions more clearly after discussion. Would it work well for you if we update the original description with a Decision text and description to detail the choice and direction?

@Jonathan Williamson (carter2422)

Yep, just a horizontal rule & title would be fine.

: ----
:
: Decision
: ====
:
: Some text...

@Campbell Barton (campbellbarton): I don't get the argument about it making the text in the buttons more cramped. If it only appears when there's nothing assigned, it doesn't make the text inside the fields anymore cramped at all.

This makes me afraid that we are perhaps not on the same page. To be clear, this is the concept we agreed on:

To view an animated mockup, look here:
http://www.pasteall.org/pic/show.php?id=60479

  • When nothing is assigned you see the eyedropper inside the fields. Clicking it enables you to pick an item on the screen.
  • When something is assigned, clicking the X will un-assign it, and the eye-dropper re-appears.

When nothing is assigned it's one click to enable the eyedropper. When something is assigned, it's a double-click of the X button. In either case it's faster than opening the menu and clicking an eyedropper tool there. Also, it doesn't make the text fields any smaller than they are currently, and doesn't really add any visual clutter, because you only see it when there's nothing inside the field anyway.

@William Reynish (billrey) thanks for clearing this up, I'll check on adding this.

Hey, any info on this? Seems like a straightforward improvement.

Note, added a patch for a new kind of eyedropper (for camera dof depth), this should also have some nice way to access the eyedropper. - D541

Let me commandeer that ;)

Julian Eisel (Severin) changed the task status from Unknown Status to Resolved.Apr 22 2015, 12:09 PM

Closed by commit rB56a93e9cb12a22

Thanks all!

I added a feature request to make the eyedropper tool available in add-ons via Python:
https://developer.blender.org/T48357