Fix build crash (see #5232), but this branch is still not usable
This commit is contained in:
parent
e2caaf3571
commit
e0c04955e3
@ -746,6 +746,29 @@ void Crop::update(int todo)
|
||||
parent->ipf.ToneMapFattal02(f);
|
||||
}
|
||||
|
||||
// Apply Spot removal
|
||||
if (params.spot.enabled) {
|
||||
if (todo & M_SPOT) {
|
||||
if(!spotCrop) {
|
||||
spotCrop = new Imagefloat (cropw, croph);
|
||||
}
|
||||
baseCrop->copyData (spotCrop);
|
||||
|
||||
PreviewProps pp (cropx, cropy, cropw, croph, skip);
|
||||
parent->ipf.removeSpots (spotCrop, params.spot.entries, pp);
|
||||
}
|
||||
} else {
|
||||
if (spotCrop) {
|
||||
delete spotCrop;
|
||||
}
|
||||
|
||||
spotCrop = NULL;
|
||||
}
|
||||
|
||||
if (spotCrop) {
|
||||
baseCrop = spotCrop;
|
||||
}
|
||||
|
||||
// crop back to the size expected by the rest of the pipeline
|
||||
if (need_cropping) {
|
||||
Imagefloat *c = origCrop;
|
||||
@ -798,28 +821,6 @@ void Crop::update(int todo)
|
||||
transCrop = nullptr;
|
||||
}
|
||||
|
||||
if (params.spot.enabled) {
|
||||
if (todo & M_SPOT) {
|
||||
if(!spotCrop) {
|
||||
spotCrop = new Imagefloat (cropw, croph);
|
||||
}
|
||||
baseCrop->copyData (spotCrop);
|
||||
|
||||
PreviewProps pp (cropx, cropy, cropw, croph, skip);
|
||||
parent->ipf.removeSpots (spotCrop, params.spot.entries, pp);
|
||||
}
|
||||
} else {
|
||||
if (spotCrop) {
|
||||
delete spotCrop;
|
||||
}
|
||||
|
||||
spotCrop = NULL;
|
||||
}
|
||||
|
||||
if (spotCrop) {
|
||||
baseCrop = spotCrop;
|
||||
}
|
||||
|
||||
if ((todo & (M_TRANSFORM | M_RGBCURVE)) && params.dirpyrequalizer.cbdlMethod == "bef" && params.dirpyrequalizer.enabled && !params.colorappearance.enabled) {
|
||||
|
||||
const int W = baseCrop->getWidth();
|
||||
|
@ -21,6 +21,7 @@
|
||||
#include "bayerpreprocess.h"
|
||||
#include "eventmapper.h"
|
||||
#include "guiutils.h"
|
||||
#include "options.h"
|
||||
|
||||
#include "../rtengine/procparams.h"
|
||||
|
||||
|
@ -19,6 +19,7 @@
|
||||
#include "bayerrawexposure.h"
|
||||
|
||||
#include "guiutils.h"
|
||||
#include "options.h"
|
||||
|
||||
#include "../rtengine/procparams.h"
|
||||
|
||||
|
@ -27,10 +27,11 @@
|
||||
|
||||
#include "../rtengine/rtengine.h"
|
||||
|
||||
#include "edit.h"
|
||||
#include "lockablecolorpicker.h"
|
||||
#include "threadutils.h"
|
||||
|
||||
class EditSubscriber;
|
||||
|
||||
class CropDisplayHandler
|
||||
{
|
||||
|
||||
|
@ -802,11 +802,11 @@ void OPIcon::drivenPointToRectangle(const rtengine::Coord &pos,
|
||||
bottomRight.y = topLeft.y + H - 1;
|
||||
}
|
||||
|
||||
OPIcon::OPIcon(const Cairo::RefPtr<RTSurface> &normal,
|
||||
const Cairo::RefPtr<RTSurface> &active,
|
||||
const Cairo::RefPtr<RTSurface> &prelight,
|
||||
const Cairo::RefPtr<RTSurface> &dragged,
|
||||
const Cairo::RefPtr<RTSurface> &insensitive,
|
||||
OPIcon::OPIcon(const Cairo::RefPtr<Cairo::ImageSurface> &normal,
|
||||
const Cairo::RefPtr<Cairo::ImageSurface> &active,
|
||||
const Cairo::RefPtr<Cairo::ImageSurface> &prelight,
|
||||
const Cairo::RefPtr<Cairo::ImageSurface> &dragged,
|
||||
const Cairo::RefPtr<Cairo::ImageSurface> &insensitive,
|
||||
DrivenPoint drivenPoint) :
|
||||
drivenPoint(drivenPoint)
|
||||
{
|
||||
@ -835,53 +835,53 @@ OPIcon::OPIcon(Glib::ustring normalImage, Glib::ustring activeImage, Glib::ustri
|
||||
Glib::ustring draggedImage, Glib::ustring insensitiveImage, DrivenPoint drivenPoint) : drivenPoint(drivenPoint)
|
||||
{
|
||||
if (!normalImage.empty()) {
|
||||
normalImg->setImage(normalImage);
|
||||
normalImg = RTImage::createImgSurfFromFile(normalImage);
|
||||
}
|
||||
|
||||
if (!prelightImage.empty()) {
|
||||
prelightImg->setImage(prelightImage);
|
||||
prelightImg = RTImage::createImgSurfFromFile(prelightImage);
|
||||
}
|
||||
|
||||
if (!activeImage.empty()) {
|
||||
activeImg->setImage(activeImage);
|
||||
activeImg = RTImage::createImgSurfFromFile(activeImage);
|
||||
}
|
||||
|
||||
if (!draggedImage.empty()) {
|
||||
draggedImg->setImage(draggedImage);
|
||||
draggedImg = RTImage::createImgSurfFromFile(draggedImage);
|
||||
}
|
||||
|
||||
if (!insensitiveImage.empty()) {
|
||||
insensitiveImg->setImage(insensitiveImage);
|
||||
insensitiveImg = RTImage::createImgSurfFromFile(insensitiveImage);
|
||||
}
|
||||
}
|
||||
|
||||
const Cairo::RefPtr<RTSurface> OPIcon::getNormalImg()
|
||||
const Cairo::RefPtr<Cairo::ImageSurface> OPIcon::getNormalImg()
|
||||
{
|
||||
return normalImg;
|
||||
}
|
||||
const Cairo::RefPtr<RTSurface> OPIcon::getPrelightImg()
|
||||
const Cairo::RefPtr<Cairo::ImageSurface> OPIcon::getPrelightImg()
|
||||
{
|
||||
return prelightImg;
|
||||
}
|
||||
const Cairo::RefPtr<RTSurface> OPIcon::getActiveImg()
|
||||
const Cairo::RefPtr<Cairo::ImageSurface> OPIcon::getActiveImg()
|
||||
{
|
||||
return activeImg;
|
||||
}
|
||||
const Cairo::RefPtr<RTSurface> OPIcon::getDraggedImg()
|
||||
const Cairo::RefPtr<Cairo::ImageSurface> OPIcon::getDraggedImg()
|
||||
{
|
||||
return draggedImg;
|
||||
}
|
||||
const Cairo::RefPtr<RTSurface> OPIcon::getInsensitiveImg()
|
||||
const Cairo::RefPtr<Cairo::ImageSurface> OPIcon::getInsensitiveImg()
|
||||
{
|
||||
return insensitiveImg;
|
||||
}
|
||||
|
||||
void OPIcon::drawImage(Cairo::RefPtr<RTSurface> &img,
|
||||
void OPIcon::drawImage(Cairo::RefPtr<Cairo::ImageSurface> &img,
|
||||
Cairo::RefPtr<Cairo::Context> &cr, ObjectMOBuffer *objectBuffer,
|
||||
EditCoordSystem &coordSystem)
|
||||
{
|
||||
int imgW = img->getWidth();
|
||||
int imgH = img->getHeight();
|
||||
int imgW = img->get_width();
|
||||
int imgH = img->get_height();
|
||||
|
||||
rtengine::Coord pos;
|
||||
|
||||
@ -896,19 +896,19 @@ void OPIcon::drawImage(Cairo::RefPtr<RTSurface> &img,
|
||||
rtengine::Coord tl, br; // Coordinate of the rectangle in the CropBuffer coordinate system
|
||||
drivenPointToRectangle(pos, tl, br, imgW, imgH);
|
||||
|
||||
cr->set_source(img->get(), tl.x, tl.y);
|
||||
cr->set_source(img, tl.x, tl.y);
|
||||
cr->set_line_width(0.);
|
||||
cr->rectangle(tl.x, tl.y, imgW, imgH);
|
||||
cr->fill();
|
||||
}
|
||||
|
||||
void OPIcon::drawMOImage(Cairo::RefPtr<RTSurface> &img, Cairo::RefPtr<Cairo::Context> &cr,
|
||||
void OPIcon::drawMOImage(Cairo::RefPtr<Cairo::ImageSurface> &img, Cairo::RefPtr<Cairo::Context> &cr,
|
||||
unsigned short id, ObjectMOBuffer *objectBuffer, EditCoordSystem &coordSystem)
|
||||
{
|
||||
// test of F_HOVERABLE has already been done
|
||||
|
||||
int imgW = img->getWidth();
|
||||
int imgH = img->getHeight();
|
||||
int imgW = img->get_width();
|
||||
int imgH = img->get_height();
|
||||
|
||||
rtengine::Coord pos;
|
||||
|
||||
|
34
rtgui/edit.h
34
rtgui/edit.h
@ -407,34 +407,34 @@ class OPIcon : public Geometry // OP stands for "On Preview"
|
||||
{
|
||||
|
||||
private:
|
||||
Cairo::RefPtr<RTSurface> normalImg;
|
||||
Cairo::RefPtr<RTSurface> prelightImg;
|
||||
Cairo::RefPtr<RTSurface> activeImg;
|
||||
Cairo::RefPtr<RTSurface> draggedImg;
|
||||
Cairo::RefPtr<RTSurface> insensitiveImg;
|
||||
Cairo::RefPtr<Cairo::ImageSurface> normalImg;
|
||||
Cairo::RefPtr<Cairo::ImageSurface> prelightImg;
|
||||
Cairo::RefPtr<Cairo::ImageSurface> activeImg;
|
||||
Cairo::RefPtr<Cairo::ImageSurface> draggedImg;
|
||||
Cairo::RefPtr<Cairo::ImageSurface> insensitiveImg;
|
||||
|
||||
static void updateImages();
|
||||
void changeImage(Glib::ustring &newImage);
|
||||
void drawImage (Cairo::RefPtr<RTSurface> &img, Cairo::RefPtr<Cairo::Context> &cr, ObjectMOBuffer *objectBuffer, EditCoordSystem &coordSystem);
|
||||
void drawMOImage (Cairo::RefPtr<RTSurface> &img, Cairo::RefPtr<Cairo::Context> &cr, unsigned short id, ObjectMOBuffer *objectBuffer, EditCoordSystem &coordSystem);
|
||||
void drawImage (Cairo::RefPtr<Cairo::ImageSurface> &img, Cairo::RefPtr<Cairo::Context> &cr, ObjectMOBuffer *objectBuffer, EditCoordSystem &coordSystem);
|
||||
void drawMOImage (Cairo::RefPtr<Cairo::ImageSurface> &img, Cairo::RefPtr<Cairo::Context> &cr, unsigned short id, ObjectMOBuffer *objectBuffer, EditCoordSystem &coordSystem);
|
||||
void drivenPointToRectangle(const rtengine::Coord &pos, rtengine::Coord &topLeft, rtengine::Coord &bottomRight, int W, int H);
|
||||
|
||||
public:
|
||||
DrivenPoint drivenPoint;
|
||||
rtengine::Coord position;
|
||||
|
||||
OPIcon (const Cairo::RefPtr<RTSurface> &normal,
|
||||
const Cairo::RefPtr<RTSurface> &active,
|
||||
const Cairo::RefPtr<RTSurface> &prelight = {},
|
||||
const Cairo::RefPtr<RTSurface> &dragged = {},
|
||||
const Cairo::RefPtr<RTSurface> &insensitive = {},
|
||||
OPIcon (const Cairo::RefPtr<Cairo::ImageSurface> &normal,
|
||||
const Cairo::RefPtr<Cairo::ImageSurface> &active,
|
||||
const Cairo::RefPtr<Cairo::ImageSurface> &prelight = {},
|
||||
const Cairo::RefPtr<Cairo::ImageSurface> &dragged = {},
|
||||
const Cairo::RefPtr<Cairo::ImageSurface> &insensitive = {},
|
||||
DrivenPoint drivenPoint = DP_CENTERCENTER);
|
||||
OPIcon (Glib::ustring normalImage, Glib::ustring activeImage, Glib::ustring prelightImage = "", Glib::ustring draggedImage = "", Glib::ustring insensitiveImage = "", DrivenPoint drivenPoint = DP_CENTERCENTER);
|
||||
const Cairo::RefPtr<RTSurface> getNormalImg();
|
||||
const Cairo::RefPtr<RTSurface> getPrelightImg();
|
||||
const Cairo::RefPtr<RTSurface> getActiveImg();
|
||||
const Cairo::RefPtr<RTSurface> getDraggedImg();
|
||||
const Cairo::RefPtr<RTSurface> getInsensitiveImg();
|
||||
const Cairo::RefPtr<Cairo::ImageSurface> getNormalImg();
|
||||
const Cairo::RefPtr<Cairo::ImageSurface> getPrelightImg();
|
||||
const Cairo::RefPtr<Cairo::ImageSurface> getActiveImg();
|
||||
const Cairo::RefPtr<Cairo::ImageSurface> getDraggedImg();
|
||||
const Cairo::RefPtr<Cairo::ImageSurface> getInsensitiveImg();
|
||||
void drawOuterGeometry (Cairo::RefPtr<Cairo::Context> &cr, ObjectMOBuffer *objectBuffer, EditCoordSystem &coordSystem) override;
|
||||
void drawInnerGeometry (Cairo::RefPtr<Cairo::Context> &cr, ObjectMOBuffer *objectBuffer, EditCoordSystem &coordSystem) override;
|
||||
void drawToMOChannel (Cairo::RefPtr<Cairo::Context> &cr, unsigned short id, ObjectMOBuffer *objectBuffer, EditCoordSystem &coordSystem) override;
|
||||
|
@ -20,6 +20,7 @@
|
||||
|
||||
#include "guiutils.h"
|
||||
#include "rtimage.h"
|
||||
#include "options.h"
|
||||
|
||||
#include "../rtengine/procparams.h"
|
||||
|
||||
|
@ -37,6 +37,7 @@
|
||||
*/
|
||||
|
||||
#include "labgrid.h"
|
||||
#include "options.h"
|
||||
|
||||
using rtengine::Color;
|
||||
|
||||
|
@ -26,6 +26,7 @@
|
||||
|
||||
#include "guiutils.h"
|
||||
#include "rtimage.h"
|
||||
#include "options.h"
|
||||
|
||||
#include "../rtengine/lcp.h"
|
||||
#include "../rtengine/procparams.h"
|
||||
|
@ -21,6 +21,7 @@
|
||||
#include "preprocess.h"
|
||||
|
||||
#include "guiutils.h"
|
||||
#include "options.h"
|
||||
|
||||
#include "../rtengine/procparams.h"
|
||||
|
||||
|
@ -21,6 +21,7 @@
|
||||
#include "eventmapper.h"
|
||||
#include "guiutils.h"
|
||||
#include "rtimage.h"
|
||||
#include "options.h"
|
||||
|
||||
#include "../rtengine/procparams.h"
|
||||
|
||||
|
@ -19,9 +19,8 @@
|
||||
#include <sstream>
|
||||
|
||||
#include "rawexposure.h"
|
||||
|
||||
#include "guiutils.h"
|
||||
|
||||
#include "options.h"
|
||||
#include "../rtengine/procparams.h"
|
||||
|
||||
using namespace rtengine;
|
||||
|
@ -22,7 +22,7 @@
|
||||
#include "sharpenedge.h"
|
||||
|
||||
#include "guiutils.h"
|
||||
|
||||
#include "options.h"
|
||||
#include "../rtengine/procparams.h"
|
||||
|
||||
using namespace rtengine;
|
||||
|
@ -15,16 +15,16 @@ using namespace rtengine::procparams;
|
||||
#define STATIC_MO_OBJ_NBR 6
|
||||
|
||||
Spot::Spot() : FoldableToolPanel (this, "spot", M ("TP_SPOT_LABEL"), true, true), EditSubscriber (ET_OBJECTS), lastObject (-1), activeSpot (-1),
|
||||
sourceIcon ("spot-normal.png", "spot-active.png", "spot-active.png", "spot-prelight.png", "", Geometry::DP_CENTERCENTER), editedCheckBox (NULL)
|
||||
sourceIcon ("spot-normal.png", "spot-active.png", "spot-active.png", "spot-prelight.png", "", Geometry::DP_CENTERCENTER), editedCheckBox (nullptr)
|
||||
{
|
||||
countLabel = Gtk::manage (new Gtk::Label (Glib::ustring::compose (M ("TP_SPOT_COUNTLABEL"), 0)));
|
||||
|
||||
edit = Gtk::manage (new Gtk::ToggleButton());
|
||||
edit->add (*Gtk::manage (new RTImage ("editmodehand.png")));
|
||||
edit->add (*Gtk::manage (new RTImage ("edit-point.png")));
|
||||
editConn = edit->signal_toggled().connect ( sigc::mem_fun (*this, &Spot::editToggled) );
|
||||
|
||||
reset = Gtk::manage (new Gtk::Button ());
|
||||
reset->add (*Gtk::manage (new RTImage ("gtk-undo-ltr-small.png", "gtk-undo-rtl-small.png")));
|
||||
reset->add (*Gtk::manage (new RTImage ("undo-small.png")));
|
||||
reset->set_relief (Gtk::RELIEF_NONE);
|
||||
reset->set_border_width (0);
|
||||
reset->signal_clicked().connect ( sigc::mem_fun (*this, &Spot::resetPressed) );
|
||||
@ -150,7 +150,7 @@ void Spot::setBatchMode (bool batchMode)
|
||||
|
||||
if (!editedCheckBox) {
|
||||
removeIfThere (labelBox, countLabel, false);
|
||||
countLabel = NULL;
|
||||
countLabel = nullptr;
|
||||
editedCheckBox = Gtk::manage (new Gtk::CheckButton (Glib::ustring::compose (M ("TP_SPOT_COUNTLABEL"), 0)));
|
||||
labelBox->pack_start (*editedCheckBox, Gtk::PACK_SHRINK, 2);
|
||||
labelBox->reorder_child (*editedCheckBox, 0);
|
||||
@ -198,7 +198,7 @@ void Spot::editToggled ()
|
||||
Geometry* Spot::getVisibleGeometryFromMO (int MOID)
|
||||
{
|
||||
if (MOID == -1) {
|
||||
return NULL;
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
if (MOID == 0) {
|
||||
@ -244,7 +244,7 @@ void Spot::createGeometry ()
|
||||
Cairo::RefPtr<Cairo::ImageSurface> activeImg = sourceIcon.getActiveImg();
|
||||
|
||||
for (; j < EditSubscriber::visibleGeometry.size() - STATIC_VISIBLE_OBJ_NBR; ++i, ++j) {
|
||||
EditSubscriber::mouseOverGeometry.at (i) = EditSubscriber::visibleGeometry.at (j) = new OPIcon (normalImg, activeImg, prelightImg, Cairo::RefPtr<Cairo::ImageSurface> (NULL), Cairo::RefPtr<Cairo::ImageSurface> (NULL), Geometry::DP_CENTERCENTER);
|
||||
EditSubscriber::mouseOverGeometry.at (i) = EditSubscriber::visibleGeometry.at (j) = new OPIcon (normalImg, activeImg, prelightImg, Cairo::RefPtr<Cairo::ImageSurface> (nullptr), Cairo::RefPtr<Cairo::ImageSurface> (nullptr), Geometry::DP_CENTERCENTER);
|
||||
EditSubscriber::visibleGeometry.at (j)->setActive (true);
|
||||
EditSubscriber::visibleGeometry.at (j)->datum = Geometry::IMAGE;
|
||||
EditSubscriber::visibleGeometry.at (j)->state = Geometry::NORMAL;
|
||||
@ -349,7 +349,7 @@ OPIcon *Spot::getActiveSpotIcon()
|
||||
return static_cast<OPIcon*> (EditSubscriber::visibleGeometry.at (activeSpot));
|
||||
}
|
||||
|
||||
return NULL;
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
void Spot::addNewEntry()
|
||||
|
@ -81,8 +81,8 @@ public:
|
||||
Spot ();
|
||||
~Spot ();
|
||||
|
||||
void read (const rtengine::procparams::ProcParams* pp, const ParamsEdited* pedited = NULL);
|
||||
void write (rtengine::procparams::ProcParams* pp, ParamsEdited* pedited = NULL);
|
||||
void read (const rtengine::procparams::ProcParams* pp, const ParamsEdited* pedited = nullptr);
|
||||
void write (rtengine::procparams::ProcParams* pp, ParamsEdited* pedited = nullptr);
|
||||
|
||||
void enabledChanged ();
|
||||
|
||||
|
@ -25,10 +25,10 @@
|
||||
#include "guiutils.h"
|
||||
#include "multilangmgr.h"
|
||||
#include "paramsedited.h"
|
||||
#include "edit.h"
|
||||
|
||||
class ToolPanel;
|
||||
class FoldableToolPanel;
|
||||
class EditDataProvider;
|
||||
|
||||
class ToolPanelListener
|
||||
{
|
||||
|
@ -21,7 +21,7 @@
|
||||
#include "xtransrawexposure.h"
|
||||
|
||||
#include "guiutils.h"
|
||||
|
||||
#include "options.h"
|
||||
#include "../rtengine/procparams.h"
|
||||
|
||||
using namespace rtengine;
|
||||
|
Loading…
x
Reference in New Issue
Block a user