Commit Graph

118 Commits

Author SHA1 Message Date
Lawrence Lee
c03efe4878 Add dedicated buttons for scope switching
Previously, changing to a different scope was done by clicking the scope
type button and cycling through all scopes. This commit decreases the
number of clicks needed to switch between two scopes by adding a radio
selector. The radio buttons can be shown or hidden by pressing the scope
type button. This commit also makes the raw histogram one of the scope
types.
2020-09-12 17:52:24 -07:00
Lawrence Lee
bb0c625960 Use enum for scope types 2020-09-07 16:37:40 -07:00
Lawrence Lee
b2942fd949 Improve performance of scopes
If a scope update is requested, don't recalculate scope data if it is
already up-to-date.

Eliminate double and triple scope rendering.
2020-08-28 22:33:52 -07:00
Lawrence Lee
6d8a31961f Color the vectorscope lines 2020-08-27 16:35:39 -07:00
Lawrence Lee
350324affc Disable double-clicking of waveform & vectorscopes 2020-08-16 18:08:26 -07:00
Lawrence Lee
371fc65416 Improve type conversions 2020-08-16 16:10:46 -07:00
Flössie
7aa6b713c6 Fix vectorscope 2020-08-16 16:01:29 +02:00
Ingo Weyrich
d59f488aea minor fixes 2020-08-16 14:07:25 +02:00
Flössie
3af822b6f7 Fix abuse of array2D<>
- Add copy c'tor and assignment to `array2D<>`
- Use `std::vector<>` instead of smart pointer to array
- Constify a bit
- Make use of `rtengine::max(...)`
2020-08-16 11:22:10 +02:00
Flössie
231c5e2c99 Apply clang-tidy's google-readability-casting
```
clang-tidy-10 -header-filter=.* -p=build -fix -checks=google-readability-casting rtgui/histogrampanel.cc
```
2020-08-16 10:25:22 +02:00
Flössie
c5ace05df8 Merge branch 'dev' into waveform 2020-08-16 10:08:28 +02:00
Lawrence Lee
e247a1e086 Increase visibility of vectorscope pointer 2020-08-09 18:00:12 -07:00
Lawrence Lee
f7c02af184 Fix rendering of blank vectorscope 2020-08-09 17:22:23 -07:00
Lawrence Lee
8b3af4c520 Fix some cppcheck warnings 2020-08-09 17:16:57 -07:00
Lawrence Lee
6cd87ad975 Use array2D for waveform and vectorscopes 2020-08-09 16:49:28 -07:00
Lawrence Lee
ec27ad4abc Add waveform/vectorscope brightness feature 2020-08-08 17:11:18 -07:00
Lawrence Lee
6c53317ac1 Add pointer indicator for vectorscopes 2020-08-08 13:00:18 -07:00
Flössie
f353df3d05 Add DelayedCall and integrate it into navigator and histogram
- Rename `delayedconnection.h` to `delayed.h`
- Align `delayed_helper::apply()` with `std::apply()`
2020-08-08 11:18:56 +02:00
Lawrence Lee
698b2e1842 Finish Cairo surface used for waveform 2020-08-07 15:18:02 -07:00
Lawrence Lee
426162f269 Move lightness waveform behind RGB waveform 2020-08-05 12:23:34 -07:00
Lawrence Lee
9a89eb5454 Fix RGB bars not showing for waveform
The bars were not showing if the raw histogram button was activated.
2020-08-05 12:05:58 -07:00
Lawrence Lee
9382306fed Add CIELAB lightness to waveform 2020-08-05 11:57:34 -07:00
Lawrence Lee
c9bf58a7a0 Add scope type icons 2020-08-04 18:38:59 -07:00
Lawrence Lee
603cd6ea3d Clip waveform display values to 255 2020-08-04 12:09:33 -07:00
Lawrence Lee
fbe73614c3 Add H-S and H-C vectorscopes 2020-08-03 18:23:25 -07:00
Lawrence Lee
6df69b3786 Improve performance of histogram/waveform updates
Only perform calculations for the currently shown scope.
Cache the waveform so it can be reused when the scope is resized.
Increase speed of waveform rendering.
2020-07-26 13:27:17 -07:00
Lawrence Lee
99b7a557c9 Enable RGB bars for waveform 2020-07-25 13:05:10 -07:00
Lawrence Lee
5eb6961049 Adjust waveform padding
Remove padding from left and right sides and add padding to top and
bottom sides to improve visibility of extreme pixel values.
2020-07-24 17:03:10 -07:00
Lawrence Lee
4cbd622569 Add initial implementation of waveform 2020-07-21 22:45:10 -07:00
Ingo Weyrich
6cb29be31c further cleanups 2020-07-16 21:44:00 +02:00
Thanatomanic
c949da7d28 Remove some unneccessary comments in histogrampanel.cc 2020-07-12 07:27:38 +02:00
Thanatomanic
c364e20635 Fix the RGB bar readout in histogram 2020-07-12 07:26:29 +02:00
Thanatomanic
dced61b619 Cosmetic change to histogram: added padding. Some minor code improvement 2020-07-12 07:01:51 +02:00
Ingo Weyrich
f0b5ca02e7 More double promote fixes 2020-02-10 16:22:42 +01:00
Ingo Weyrich
2a4891827d Some cleanups 2019-11-26 15:25:11 +01:00
Ingo Weyrich
ba8dda1836 Further cleanup of include dependencies 2019-10-30 16:38:02 +01:00
Ingo Weyrich
1acca23fe1 Further cleanup of include dependencies 2019-10-29 22:45:26 +01:00
Morgan Hardwood
60b2196bce Updated gnu.org links to use HTTPS 2019-09-10 12:34:57 +02:00
Morgan Hardwood
10a346113f Increase visibility of blue histogram, closes #5438 2019-09-05 01:44:45 +02:00
Roel Baars
e9ac64a495 Fixes #5436 2019-09-04 19:35:13 +02:00
Ingo Weyrich
4101102ddf cppcheck: further fixes 2019-07-31 20:02:35 +02:00
Hombre
d66437dd98 Updated RawTherapee theme, now works in HiDPI mode
see issue #3547
2019-02-28 21:30:20 +01:00
Hombre
bd175ec8d1 Merge branch 'dev' into hidpi-icons 2019-02-25 22:37:00 +01:00
Flössie
e39726dbf7 Return first frame in FramesData on OOB access (#4830) 2019-02-20 20:55:07 +01:00
Hombre
cc1779a0ae Merge branch 'dev' into hidpi-icons 2019-01-24 22:02:44 +01:00
Hombre
97824da6de Histogram and Navigator now handle Hi-DPI.
+ widgets are now sized depending on Hi-DPI
see issue #3547
2019-01-04 15:32:35 +01:00
Flössie
b08fb04dae Convert almost all IdleRegister::add() calls to add(std::function<>) 2019-01-01 15:53:39 +01:00
Flössie
5906329485 Review IdleRegister (#4892)
This turns `IdleRegister::add()` into a template function to make the
provided function pointers type safe. It also adds a `delete_data`
parameter to manage the provided data pointer even in `destroy()`.
2018-10-28 13:12:01 +01:00
Flössie
2125f42116 Turn almost all Listeners into abstract interfaces 2018-10-09 20:32:40 +02:00
Roel Baars
7e36e86dfb Fixed a stupid typo 2018-09-23 17:10:54 +02:00