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 invertEditedColorScale();
71 Ui::ColorScaleDialog *_ui;
73 void setColorScaleFromImage(
const QString &imageFilePath);
75 void loadUserSavedColorScales();
76 void displayGradientPreview(
const QList<QColor> &colorsVector,
bool gradient, QLabel *displayLabel);
78 ColorScale colorScale;
79 std::string gradientsImageDirectory;
81 static std::map<QString, std::vector<Color> > tulipImageColorScales;
82 static void loadTulipImageColorScales();
83 static std::vector<Color> getColorScaleFromImageFile(
const QString &imageFilePath);