New batch of update for issue 3446

This commit include :
- cleanup rtgui/retinex.cc file (constructor only) and switched to
Gtk::Grid (the new standard) instead of Gtk::Box. This however doesn't
solve the issue of the Transmission curves in the Retinex tool, with
wrong resize of the Frame when folding/unfolding the curves.
- better alignment of the Histogram panel now with 4px of padding on the
left and right side
- Threshold selector now use the Scale's Trough style to draw its box
and sliders
- Curve's background are darker and restricted to the curve diagram
- Diagonal and Flat curves has been converted to Gtk::Grid as well
- A special color is now used for unsensitive Threshold selector and
Sclaes widgets
- Gap around the main Window has been removed on windows to circumvent a
bug in Gtk3, but the window can now only be maximized (usual use case)
or resized vertically by the top border only.
- Buttons at the bottom of the Editor panel has now the same height
This commit is contained in:
Hombre
2016-11-01 20:39:41 +01:00
parent 3ae608d5ca
commit 965cadb52e
37 changed files with 919 additions and 664 deletions

View File

@@ -25,12 +25,17 @@
/*
* Parent class for all colored bar type; a ColorProvider has to be set
* thanks to "setColorProvider" to be able to display colors inside the bar
*
* WARNING: If the color has no gradient defined or can't get colors from the provider,
* the bar will have undefined data, and the calling class will have to draw
* the bar itself, i.e. use render_background (depending on its Gtk::Style)
*
*/
class ColoredBar : public BackBuffer, public ColorCaller
class ColoredBar : private BackBuffer, public ColorCaller
{
private:
void draw();
void updateBackBuffer(Gtk::DrawingArea &drawingArea);
protected:
eRTOrientation orientation;
@@ -38,11 +43,12 @@ protected:
public:
explicit ColoredBar (eRTOrientation orient);
bool setDrawRectangle(int newX, int newY, int newW, int newH, bool updateBackBufferSize = true);
void expose(Glib::RefPtr<Gdk::Window> destWindow);
void expose(Cairo::RefPtr<Cairo::ImageSurface> destSurface);
void expose(BackBuffer *backBuffer);
void expose(const Cairo::RefPtr< Cairo::Context> &cr);
void expose(Gtk::DrawingArea &drawingArea, Glib::RefPtr<Gdk::Window> destWindow);
void expose(Gtk::DrawingArea &drawingArea, Cairo::RefPtr<Cairo::ImageSurface> destSurface);
void expose(Gtk::DrawingArea &drawingArea, BackBuffer *backBuffer);
void expose(Gtk::DrawingArea &drawingArea, const Cairo::RefPtr< Cairo::Context> &cr);
bool canGetColors();
@@ -51,6 +57,10 @@ public:
// by clearing the gradient, the ColorProvider will have to provide colors on a per pixel basis if a ColorProvider
// has been set, through ColorProvider::colorForValue on next ColoredBar::expose
void clearBgGradient ();
void setDirty(bool isDirty) {
BackBuffer::setDirty(isDirty);
}
};
#endif