Colorbar.qo.h
Go to the documentation of this file.00001
00002 #ifndef COLORBAR_H
00003 #define COLORBAR_H
00004
00005 #include <graphics/X11/X_enter.h>
00006 #include <QVector>
00007 #include <graphics/X11/X_exit.h>
00008
00009 #include <display3d/3DViewer/3DDisplayData.qo.h>
00010 #include <display/Display/Colormap.h>
00011 #include <display3d/3DViewer/3DPoint.h>
00012
00013 namespace casa {
00014
00015 class Colorbar : public QWidget
00016 {
00017 Q_OBJECT
00018
00019 public:
00020 Colorbar(QWidget *parent = 0);
00021 ~Colorbar();
00022
00023 QSize minimumSizeHint() const;
00024 QSize sizeHint() const;
00025
00026 public slots:
00027 void setRange(float min, float max);
00028 void setMinimum(float min);
00029 void setMaximum(float min);
00030 void setNumColors(int nc);
00031 void setColormap(const QString& nm);
00032 void changeColor(int, float, float, const QString&);
00033
00034 signals:
00035
00036 protected:
00037 void mousePressEvent(QMouseEvent *event);
00038 void mouseMoveEvent(QMouseEvent *event);
00039 void mouseDoubleClickEvent(QMouseEvent *event);
00040 void resizeEvent(QResizeEvent *);
00041 void paintEvent(QPaintEvent *event);
00042 void refreshBar();
00043
00044 int numColors;
00045 QString cmapname;
00046
00047 Vector<Float> rMap;
00048 Vector<Float> gMap;
00049 Vector<Float> bMap;
00050
00051 void setColorTable();
00052 void calcLinearMaps();
00053 void getLinearColor(Float& r, Float& g, Float& b, Float v);
00054 void getTableColor(Float& r, Float& g, Float& b, Float v);
00055
00056 float min;
00057 float max;
00058
00059 };
00060
00061 }
00062 #endif