//########################################################################## //# # //# CLOUDCOMPARE # //# # //# This program 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; version 2 or later of the License. # //# # //# This program 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. # //# # //# COPYRIGHT: EDF R&D / TELECOM ParisTech (ENST-TSI) # //# # //########################################################################## #ifndef CC_COLOR_GRADIENT_DLG_HEADER #define CC_COLOR_GRADIENT_DLG_HEADER //Qt #include #include //! Dialog to define a color gradient (default, with 2 colors, banding, etc.) class ccColorGradientDlg : public QDialog, public Ui::ColorGradientDialog { Q_OBJECT public: //! Default constructor explicit ccColorGradientDlg(QWidget* parent); //! Gradient types enum GradientType { Default, TwoColors, Banding }; //! Returns selected gradient type GradientType getType() const; //! Sets the currently activated type void setType(GradientType type); //! Returns the two colors of the gradient ('TwoColors' mode) void getColors(QColor& first, QColor& second) const; //! Returns the frequency of the gradient ('Banding' mode) double getBandingFrequency() const; //! Returns the ramp dimension unsigned char getDimension() const; protected: void changeFirstColor(); void changeSecondColor(); }; #endif //CC_COLOR_GRADIENT_DLG_HEADER