22 #ifndef COLORSCALECONFIGDIALOG_H_ 23 #define COLORSCALECONFIGDIALOG_H_ 25 #include <tulip/ColorScale.h> 30 class ColorScaleDialog;
33 class QTableWidgetItem;
34 class QListWidgetItem;
39 class TLP_QT_SCOPE ColorScaleConfigDialog :
public QDialog {
44 ColorScaleConfigDialog(
const ColorScale &colorScale = ColorScale(), QWidget *parent = NULL);
45 ~ColorScaleConfigDialog();
46 void setColorScale(
const ColorScale &colorScale);
47 const ColorScale& getColorScale()
const;
48 static ColorScale getColorScaleFromImageFile(
const std::string& imageFilePath,
bool gradient =
true);
52 void resizeEvent(QResizeEvent * event);
53 void showEvent(QShowEvent * event);
58 void pressButtonBrowse();
59 void nbColorsValueChanged(
int value);
60 void colorTableItemDoubleClicked(QTableWidgetItem *item);
61 void displaySavedGradientPreview();
62 void displayUserGradientPreview();
63 void saveCurrentColorScale();
64 void deleteSavedColorScale();
65 void reeditSaveColorScale(QListWidgetItem *savedColorScaleItem);
66 void importColorScaleFromImageFile();
67 void importColorScaleFromColorScaleFile();
68 void invertEditedColorScale();
69 void applyGlobalAlphaToColorScale();
72 Ui::ColorScaleDialog *_ui;
74 void setColorScaleFromImage(
const QString &imageFilePath);
76 void loadUserSavedColorScales();
77 void displayGradientPreview(
const QList<QColor> &colorsVector,
bool gradient, QLabel *displayLabel);
78 void importColorScaleFromFile(
const QString& currentDir);
80 ColorScale colorScale;
81 ColorScale latestColorScale;
82 std::string gradientsImageDirectory;
84 static std::map<QString, std::vector<Color> > tulipImageColorScales;
85 static void loadTulipImageColorScales();
86 static std::vector<Color> getColorScaleFromImageFile(
const QString &imageFilePath);