/* * This file is part of RawTherapee. * * Copyright (c) 2004-2010 Gabor Horvath * * RawTherapee is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * RawTherapee is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with RawTherapee. If not, see . */ #include #include #include #include ParamsEdited::ParamsEdited () { set (false); } void ParamsEdited::set (bool v) { toneCurve.curve = v; toneCurve.brightness = v; toneCurve.black = v; toneCurve.contrast = v; toneCurve.shcompr = v; toneCurve.hlcompr = v; toneCurve.autoexp = v; toneCurve.clip = v; toneCurve.expcomp = v; lumaCurve.curve = v; lumaCurve.brightness = v; lumaCurve.contrast = v; sharpening.enabled = v; sharpening.radius = v; sharpening.amount = v; sharpening.threshold = v; sharpening.edgesonly = v; sharpening.edges_radius = v; sharpening.edges_tolerance = v; sharpening.halocontrol = v; sharpening.halocontrol_amount= v; sharpening.method = v; sharpening.deconvamount = v; sharpening.deconvradius = v; sharpening.deconviter = v; sharpening.deconvdamping = v; colorBoost.amount = v; colorBoost.avoidclip = v; colorBoost.enable_saturationlimiter = v; colorBoost.saturationlimit = v; wb.method = v; wb.green = v; wb.temperature = v; colorShift.a = v; colorShift.b = v; lumaDenoise.enabled = v; lumaDenoise.radius = v; lumaDenoise.edgetolerance = v; colorDenoise.enabled = v; colorDenoise.amount = v; sh.enabled = v; sh.hq = v; sh.highlights = v; sh.htonalwidth = v; sh.shadows = v; sh.stonalwidth = v; sh.localcontrast = v; sh.radius = v; crop.enabled = v; crop.x = v; crop.y = v; crop.w = v; crop.h = v; crop.fixratio = v; crop.ratio = v; crop.orientation = v; crop.guide = v; coarse.rotate = v; coarse.hflip = v; coarse.vflip = v; commonTrans.autofill = v; rotate.degree = v; distortion.uselensfun = v; distortion.amount = v; perspective.horizontal = v; perspective.vertical = v; cacorrection.red = v; cacorrection.blue = v; vignetting.amount = v; vignetting.radius = v; chmixer.red[0] = v; chmixer.red[1] = v; chmixer.red[2] = v; chmixer.green[0] = v; chmixer.green[1] = v; chmixer.green[2] = v; chmixer.blue[0] = v; chmixer.blue[1] = v; chmixer.blue[2] = v; hlrecovery.enabled = v; hlrecovery.method = v; resize.scale = v; resize.method = v; resize.dataspec = v; resize.width = v; resize.height = v; resize.enabled = v; icm.input = v; icm.gammaOnInput = v; icm.working = v; icm.output = v; exif.clear (); iptc.clear (); } using namespace rtengine; using namespace rtengine::procparams; void ParamsEdited::initFrom (const std::vector& src) { set (true); if (src.size()==0) return; const ProcParams& p = src[0]; for (int i=1; i