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,
49 bool gradient =
true);
53 void resizeEvent(QResizeEvent * event);
54 void showEvent(QShowEvent * event);
59 void pressButtonBrowse();
60 void nbColorsValueChanged(
int value);
61 void colorTableItemDoubleClicked(QTableWidgetItem *item);
62 void displaySavedGradientPreview();
63 void displayUserGradientPreview();
64 void saveCurrentColorScale();
65 void deleteSavedColorScale();
66 void reeditSaveColorScale(QListWidgetItem *savedColorScaleItem);
67 void importColorScaleFromImageFile();
68 void importColorScaleFromColorScaleFile();
69 void invertEditedColorScale();
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 std::string gradientsImageDirectory;
83 static std::map<QString, std::vector<Color> > tulipImageColorScales;
84 static void loadTulipImageColorScales();
85 static std::vector<Color> getColorScaleFromImageFile(
const QString &imageFilePath);