Project

General

Profile

Feature #8757

Underexposure/Overexposure display

Added by Marie-Noëlle Augendre about 6 years ago. Updated over 5 years ago.

Status:
Fixed
Priority:
Medium
Assignee:
Developers
Category:
Darkroom
Start date:
06/05/2012
Due date:
% Done:

100%

Affected Version:
System:
bitness:
64-bit
hardware architecture:
amd64/x86

Description

The current colors (blue for underexposure, red for overexposure) are not very cute; having overexposed red flowers such as poppies, it is very difficult to see the limit between overexposure and real color.
My suggestion: either use black for overexposure and white for underexposure (as the camera - Canon at least - usually do), or allow the user to modify these colors.

And a way to know whether the under/over-exposerure indicator is switched on or off; I have to use the switch to see the difference ... if there is one, that is. An icon or some status that tells the difference will be very welcome.

Associated revisions

Revision e0be76a5
Added by Simon Spannagel about 6 years ago

Overexposed: Changing overexposed marker to black and underexposed to white.
This is part of issue #8757

Revision 870a2a20
Added by Simon Spannagel about 6 years ago

Overexposed: Changing overexposed marker to black and underexposed to white.
This is part of issue #8757

Revision 5360d3e2
Added by Tobias Ellinghaus about 6 years ago

Add zoom button for live view

Not perfect yet. I would prefer a toggly button, but I have to find out
how to best do that. Same problem as in issue #8757: have a toggle
button which should be changed from several points in the code.

History

#1 Updated by Simon Spannagel about 6 years ago

  • Target version set to Candidate for next patch release
  • Status changed from New to Triaged

At least the color change might go into a patch release.

#2 Updated by Ulrich Pegelow about 6 years ago

If someone is working on that module another change would be great. Currently you will lose many/all of your parameter settings if you navigate in history stack (left panel) and then happen to activate/deactivate overexposure by pressing the button.

#3 Updated by Ivan Tarozzi about 6 years ago

Changed colors as required (dark/white):
https://github.com/itarozzi/darktable/commits/feature%238757

Really a trivial change in code, so may be developer will better change it in main master code instead merge this :)

About quickbutton on/off indicator, I can see the toggle button already has a border, but size and theme color make it hard to see.
I think this is not Underexposure/Overexposure module related, but general. May be a different color scheme could solve it?

Another issue is quickbutton is out of sync with on/off button on module panel; so, when I switch on/off using button on panel, quickbutton is not updated.

About Ulrich request, I think is a problem related to Underexposure/Overexposure implementation as module.
Because this, on/off state is recorded in history stack as the same other plugin. So is normal when you navigate to another history level, your exposure plugin will be deactivated.
I think the only way to resolve this "issue" is to change the behavior of Under/Over-exposure module, applying it not as module in hystory stack but in a global way. But I don't know if it is possible.

#4 Updated by Simon Spannagel about 6 years ago

Hi,

thanks Ivan, I pushed the change to git master, could be cherry-picked.
(e0be76a5 - cool, automated issue correlation with Redmine works - putting "issue #8757" in the commit message creates the "Related Revision" entry...)

So left are the other things. I guess the "module does not alter history" might be a bit more difficult - but very important imho. Even more if we get more of those "tools" that aren't "real" image operators for the pipeline.

#5 Updated by Marie-Noëlle Augendre about 6 years ago

Is an "history" really relevant in Darktable case: the modifications made using
the different plugins are non-destructive, and they are to be applied only
when the picture is exported; why don't allow the user to undo/redo any
modification whatever its position in the history, and without impacting
the more recent ones?

#6 Updated by Simon Spannagel about 6 years ago

Well, sometimes (at least for me) it is quite useful to go some steps up and down and see how combinations of new modules affect the image.

But dinamic told me today in IRC that there is already a module flag (somewhere in the masks branch) that allows modules without history footprint, so that's the way to go. I hope I will find time to investigate this soon...

#7 Updated by Johannes Hanika about 6 years ago

Ivan Tarozzi wrote:

About Ulrich request, I think is a problem related to Underexposure/Overexposure implementation as module.
Because this, on/off state is recorded in history stack as the same other plugin. So is normal when you navigate to another history level, your exposure plugin will be deactivated.
I think the only way to resolve this "issue" is to change the behavior of Under/Over-exposure module, applying it not as module in hystory stack but in a global way. But I don't know if it is possible.

yes, easily possible. houz was just being lazy and implemented it inside process() and not inside gui_post_expose() (see clipping.c for the crop/rotate example of how to draw on top of the image without destroying the image buffer). this could be a feature in the current exposure plugin for example. you only need gui focus for your plugin to be able to draw your overlay on top, no need to change history at all.

#8 Updated by Tobias Ellinghaus about 6 years ago

I wasn't lazy, I just wanted the indication to be visible when working with other modules. Actually, the other code path is even available in overexposed.c, just commented out. Not sure if there are bugs/if it works as intended. :)
That's also the problem I see with putting it into gui_post_expose of another module. You won't see the information while changing exposure/curves/$WHATEVER. Maybe we should put this functionality into dt's core?

About the toggle button not reflecting the reality, that's me having forgotten some corner cases (you can toggle it by disabling the plugin). I will see if I can fix that ...

#9 Updated by Richard Wonka about 6 years ago

Marie-Noëlle Augendre wrote:

Is an "history" really relevant in Darktable case: the modifications made using
the different plugins are non-destructive, and they are to be applied only
when the picture is exported; why don't allow the user to undo/redo any
modification whatever its position in the history, and without impacting
the more recent ones?

This is where #8727 would come in handy which would allow switching off individual levels of the stack.
Indeed it might be nice to be able to remove individual items.. I'll add that to that issue..

#10 Updated by Johannes Hanika about 6 years ago

Tobias Ellinghaus wrote:

I wasn't lazy, I just wanted the indication to be visible when working with other modules. Actually, the other code path is even available in overexposed.c, just commented out. Not sure if there are bugs/if it works as intended. :)
That's also the problem I see with putting it into gui_post_expose of another module. You won't see the information while changing exposure/curves/$WHATEVER. Maybe we should put this functionality into dt's core?

right. good point. so maybe we need a post-pipeline-expose callback where stuff can hook into. maybe i want more signals/hooks in the pipe anyways (to feed it sidechannel information from other images for example, or to output intermediate buffers in lab to /tmp or similar). i'll see if i can come up with a proposal for that.

#11 Updated by Tobias Ellinghaus over 5 years ago

  • % Done changed from 0 to 100
  • Status changed from Triaged to Fixed
  • Target version changed from Candidate for next patch release to Candidate for next minor release

The colors are changeable since a while and now you won't get a history entry any more. It will also stay on/off when changing images. The control has moved entirely to the lower toolbar. Right click the overexposed button to get a popup with the settings. If your computer doesn't support right clicks you can also left click for > 1 second.

The visibility issue of toggle buttons isn't tackled yet but that's for a different bug report.

Also available in: Atom PDF