15#include <QXmlStreamWriter>
33 QStringList::const_iterator
itr;
45 ColorFilterSettingsList::const_iterator
itr;
46 for (
itr =
other.colorFilterSettingsList ().constBegin ();
itr !=
other.colorFilterSettingsList().constEnd();
itr++) {
56 ColorFilterSettingsList::const_iterator
itr;
57 for (
itr =
other.colorFilterSettingsList ().constBegin ();
itr !=
other.colorFilterSettingsList ().constEnd();
itr++) {
69 return m_colorFilterSettingsList [curveName].colorFilterMode();
75 return m_colorFilterSettingsList [curveName];
80 return m_colorFilterSettingsList;
85 QStringList curveNames (m_colorFilterSettingsList.keys());
87 <<
" curve=" << curveName.toLatin1().data()
88 <<
" curves=" << curveNames.join(
",").toLatin1().data();
91 return m_colorFilterSettingsList [curveName].foregroundHigh();
96 QStringList curveNames (m_colorFilterSettingsList.keys());
98 <<
" curve=" << curveName.toLatin1().data()
99 <<
" curves=" << curveNames.join(
",").toLatin1().data();
102 return m_colorFilterSettingsList [curveName].foregroundLow();
107 QStringList curveNames (m_colorFilterSettingsList.keys());
109 <<
" curve=" << curveName.toLatin1().data()
110 <<
" curves=" << curveNames.join(
",").toLatin1().data();
113 return m_colorFilterSettingsList [curveName].high();
118 QStringList curveNames (m_colorFilterSettingsList.keys());
120 <<
" curve=" << curveName.toLatin1().data()
121 <<
" curves=" << curveNames.join(
",").toLatin1().data();
124 return m_colorFilterSettingsList [curveName].hueHigh();
129 QStringList curveNames (m_colorFilterSettingsList.keys());
131 <<
" curve=" << curveName.toLatin1().data()
132 <<
" curves=" << curveNames.join(
",").toLatin1().data();
135 return m_colorFilterSettingsList [curveName].hueLow();
140 QStringList curveNames (m_colorFilterSettingsList.keys());
142 <<
" curve=" << curveName.toLatin1().data()
143 <<
" curves=" << curveNames.join(
",").toLatin1().data();
146 return m_colorFilterSettingsList [curveName].intensityHigh();
151 QStringList curveNames (m_colorFilterSettingsList.keys());
153 <<
" curve=" << curveName.toLatin1().data()
154 <<
" curves=" << curveNames.join(
",").toLatin1().data();
157 return m_colorFilterSettingsList [curveName].intensityLow();
166 m_colorFilterSettingsList.clear();
171 while ((
reader.tokenType() != QXmlStreamReader::EndElement) ||
179 if ((
reader.tokenType() == QXmlStreamReader::StartElement) &&
185 if (
inFilter && ((
reader.tokenType() == QXmlStreamReader::StartElement) &&
205 reader.raiseError(QObject::tr (
"Cannot read filter data"));
214 QStringList curveNames (m_colorFilterSettingsList.keys());
216 <<
" curve=" << curveName.toLatin1().data()
217 <<
" curves=" << curveNames.join(
",").toLatin1().data();
220 return m_colorFilterSettingsList [curveName].low();
225 QStringList curveNames (m_colorFilterSettingsList.keys());
227 <<
" curve=" << curveName.toLatin1().data()
228 <<
" curves=" << curveNames.join(
",").toLatin1().data();
231 return m_colorFilterSettingsList [curveName].saturationHigh();
236 QStringList curveNames (m_colorFilterSettingsList.keys());
238 <<
" curve=" << curveName.toLatin1().data()
239 <<
" curves=" << curveNames.join(
",").toLatin1().data();
242 return m_colorFilterSettingsList [curveName].saturationLow();
252 ColorFilterSettingsList::const_iterator
itr;
253 for (
itr = m_colorFilterSettingsList.begin ();
itr != m_colorFilterSettingsList.end ();
itr++) {
269 m_colorFilterSettingsList [curveName].setColorFilterMode(
colorFilterMode);
276 m_colorFilterSettingsList [curveName].setForegroundHigh(
foregroundHigh);
283 m_colorFilterSettingsList [curveName].setForegroundLow(
foregroundLow);
290 m_colorFilterSettingsList [curveName].setHigh(
s0To1);
297 m_colorFilterSettingsList [curveName].setHueHigh(
hueHigh);
304 m_colorFilterSettingsList [curveName].setHueLow(
hueLow);
311 m_colorFilterSettingsList [curveName].setIntensityHigh(
intensityHigh);
318 m_colorFilterSettingsList [curveName].setIntensityLow(
intensityLow);
325 m_colorFilterSettingsList [curveName].setLow(
s0To1);
332 m_colorFilterSettingsList [curveName].setSaturationHigh(
saturationHigh);
339 m_colorFilterSettingsList [curveName].setSaturationLow(
saturationLow);
346 m_colorFilterSettingsList [curveName].setValueHigh(
valueHigh);
353 m_colorFilterSettingsList [curveName].setValueLow(
valueLow);
359 return m_colorFilterSettingsList [curveName].valueHigh();
365 return m_colorFilterSettingsList [curveName].valueLow();
const QString AXIS_CURVE_NAME
const int INNER_RADIUS_MIN
QHash< QString, ColorFilterSettings > ColorFilterSettingsList
const QString DOCUMENT_SERIALIZE_COLOR_FILTER
const QString DOCUMENT_SERIALIZE_CURVE_NAME
const QString DOCUMENT_SERIALIZE_FILTER
#define ENGAUGE_ASSERT(cond)
Drop in replacement for Q_ASSERT if defined(QT_NO_DEBUG) && !defined(QT_FORCE_ASSERTS) define ENGAUGE...
log4cpp::Category * mainCat
QXmlStreamReader::TokenType loadNextFromReader(QXmlStreamReader &reader)
Load next token from xml reader.
Color filter parameters for one curve. For a class, this is handled the same as LineStyle and PointSt...
void saveXml(QXmlStreamWriter &writer, const QString &curveName) const
Save curve filter to stream.
Storage of data belonging to one coordinate system.
virtual Curve * curveForCurveName(const QString &curveName)
See CurvesGraphs::curveForCurveName, although this also works for AXIS_CURVE_NAME.
virtual const Curve & curveAxes() const
Get method for axis curve.
virtual QStringList curvesGraphsNames() const
See CurvesGraphs::curvesGraphsNames.
Container for one set of digitized Points.
ColorFilterSettings colorFilterSettings() const
Return the color filter.
Model for DlgSettingsColorFilter and CmdSettingsColorFilter.
double high(const QString &curveName) const
High value of foreground, hue, intensity, saturation or value according to current filter mode.
void setValueHigh(const QString &curveName, int valueHigh)
Set method for value high.
double low(const QString &curveName) const
Low value of foreground, hue, intensity, saturation or value according to current filter mode normali...
int hueLow(const QString &curveName) const
Get method for hue lower bound.
DocumentModelColorFilter()
Default constructor.
int hueHigh(const QString &curveName) const
Get method for hue higher bound.
virtual void loadXml(QXmlStreamReader &reader)
Load model from serialized xml.
const ColorFilterSettings colorFilterSettings(const QString &curveName) const
Get method for copying one color filter. Cannot return just a reference or else there is a warning ab...
ColorFilterMode colorFilterMode(const QString &curveName) const
Get method for filter mode.
void setIntensityLow(const QString &curveName, int intensityLow)
Set method for intensity lower bound.
int foregroundHigh(const QString &curveName) const
Get method for foreground higher bound.
int saturationLow(const QString &curveName) const
Get method for saturation lower bound.
DocumentModelColorFilter & operator=(const DocumentModelColorFilter &other)
Assignment constructor.
int foregroundLow(const QString &curveName) const
Get method for foreground lower bound.
void setHigh(const QString &curveName, double s0To1)
Set the high value for the current filter mode.
void setHueHigh(const QString &curveName, int hueHigh)
Set method for hue higher bound.
void setForegroundHigh(const QString &curveName, int foregroundHigh)
Set method for foreground higher bound.
void setSaturationHigh(const QString &curveName, int saturationHigh)
Set method for saturation high.
void setHueLow(const QString &curveName, int hueLow)
Set method for hue lower bound.
const ColorFilterSettingsList & colorFilterSettingsList() const
Get method for copying all color filters in one step.
int valueLow(const QString &curveName) const
Get method for value low.
int saturationHigh(const QString &curveName) const
Get method for saturation higher bound.
void setValueLow(const QString &curveName, int valueLow)
Set method for value low.
void setSaturationLow(const QString &curveName, int saturationLow)
Set method for saturation low.
void setColorFilterMode(const QString &curveName, ColorFilterMode colorFilterMode)
Set method for filter mode.
int valueHigh(const QString &curveName) const
Get method for value high.
int intensityHigh(const QString &curveName) const
Get method for intensity higher bound.
void setIntensityHigh(const QString &curveName, int intensityHigh)
Set method for intensity higher bound.
void setLow(const QString &curveName, double s0To1)
Set the low value for the current filter mode.
virtual void saveXml(QXmlStreamWriter &writer) const
Save entire model as xml into stream.
void setForegroundLow(const QString &curveName, int foregroundLow)
Set method for foreground lower bound.
int intensityLow(const QString &curveName) const
Get method for intensity lower bound.
#define LOG4CPP_INFO_S(logger)