diff --git a/rtdata/images/svg/histogram-type-histogram-small.svg b/rtdata/images/svg/histogram-type-histogram-small.svg new file mode 100644 index 000000000..1d2f6547e --- /dev/null +++ b/rtdata/images/svg/histogram-type-histogram-small.svg @@ -0,0 +1,122 @@ + + + + + + + + + + image/svg+xml + + + + + Lawrence Lee + + + + + + + + RawTherapee icon. + + + + + + + + + + + + + + + + + + diff --git a/rtdata/images/svg/histogram-type-vectorscope-hc-small.svg b/rtdata/images/svg/histogram-type-vectorscope-hc-small.svg new file mode 100644 index 000000000..ef2e8b51f --- /dev/null +++ b/rtdata/images/svg/histogram-type-vectorscope-hc-small.svg @@ -0,0 +1,131 @@ + + + + + + + + + + image/svg+xml + + + + + Lawrence Lee + + + + + + + + RawTherapee icon. + + + + + + + + + + + + + + + + + + + + diff --git a/rtdata/images/svg/histogram-type-vectorscope-hs-small.svg b/rtdata/images/svg/histogram-type-vectorscope-hs-small.svg new file mode 100644 index 000000000..62bbf9586 --- /dev/null +++ b/rtdata/images/svg/histogram-type-vectorscope-hs-small.svg @@ -0,0 +1,135 @@ + + + + + + + + + + image/svg+xml + + + + + Lawrence Lee + + + + + + + + RawTherapee icon. + + + + + + + + + + + + + + + + + + + + + diff --git a/rtdata/images/svg/histogram-type-waveform-small.svg b/rtdata/images/svg/histogram-type-waveform-small.svg new file mode 100644 index 000000000..5147ab2fc --- /dev/null +++ b/rtdata/images/svg/histogram-type-waveform-small.svg @@ -0,0 +1,122 @@ + + + + + + + + + + image/svg+xml + + + + + Lawrence Lee + + + + + + + + RawTherapee icon. + + + + + + + + + + + + + + + + + + diff --git a/rtgui/histogrampanel.cc b/rtgui/histogrampanel.cc index a821f9f98..4519bd438 100644 --- a/rtgui/histogrampanel.cc +++ b/rtgui/histogrampanel.cc @@ -89,6 +89,11 @@ HistogramPanel::HistogramPanel () : panel_listener(nullptr) mode1Image = new RTImage ("histogram-mode-logx-small.png"); mode2Image = new RTImage ("histogram-mode-logxy-small.png"); + histImage.reset(new RTImage("histogram-type-histogram-small.png")); + waveImage.reset(new RTImage("histogram-type-waveform-small.png")); + vectHcImage.reset(new RTImage("histogram-type-vectorscope-hc-small.png")); + vectHsImage.reset(new RTImage("histogram-type-vectorscope-hs-small.png")); + showRed = Gtk::manage (new Gtk::ToggleButton ()); showGreen = Gtk::manage (new Gtk::ToggleButton ()); showBlue = Gtk::manage (new Gtk::ToggleButton ()); @@ -162,13 +167,13 @@ HistogramPanel::HistogramPanel () : panel_listener(nullptr) else showMode->set_image(*mode2Image); if (options.histogramScopeType == 0) { - // TODO: scopeType->set_image(*histImage); + scopeType->set_image(*histImage); } else if (options.histogramScopeType == 1) { - // TODO: scopeType->set_image(*waveImage); + scopeType->set_image(*waveImage); } else if (options.histogramScopeType == 2) { - // TODO: scopeType->set_image(*vectHsImage); + scopeType->set_image(*vectHsImage); } else if (options.histogramScopeType == 3) { - // TODO: scopeType->set_image(*vectHcImage); + scopeType->set_image(*vectHcImage); } showBAR->set_image (showBAR->get_active() ? *barImage : *barImage_g); @@ -338,13 +343,13 @@ void HistogramPanel::type_pressed() constexpr int TYPE_COUNT = 4; // Histogram, waveform, and 2 vectorscopes. options.histogramScopeType = (options.histogramScopeType + 1) % TYPE_COUNT; if (options.histogramScopeType == 0) { - // TODO: showMode->set_image(*histImage); + scopeType->set_image(*histImage); } else if (options.histogramScopeType == 1) { - // TODO: showMode->set_image(*waveImage); + scopeType->set_image(*waveImage); } else if (options.histogramScopeType == 2) { - // TODO: showMode->set_image(*vectHsImage); + scopeType->set_image(*vectHsImage); } else if (options.histogramScopeType == 3) { - // TODO: showMode->set_image(*vectHcImage); + scopeType->set_image(*vectHcImage); } type_changed(); rgbv_toggled(); diff --git a/rtgui/histogrampanel.h b/rtgui/histogrampanel.h index a3d29bdd3..864fc3fb6 100644 --- a/rtgui/histogrampanel.h +++ b/rtgui/histogrampanel.h @@ -273,6 +273,11 @@ protected: Gtk::Image *barImage_g; Gtk::Image *chroImage_g; + std::unique_ptr histImage; + std::unique_ptr waveImage; + std::unique_ptr vectHcImage; + std::unique_ptr vectHsImage; + Gtk::Image *mode0Image; Gtk::Image *mode1Image; Gtk::Image *mode2Image;