00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023 #include "PaletteDisplayer.hpp"
00024
00025 #include <QPainter>
00026 #include <QPaintEvent>
00027 #include <QGroupBox>
00028 #include <QPushButton>
00029
00030 #ifndef QT_NO_DEBUG
00031 #include <iostream>
00032 #endif
00033
00034 PaletteDisplayer :: PaletteDisplayer(QVector<QRgb> palette, QWidget* parent)
00035 :QWidget(parent), palette(palette)
00036 {
00037 this->setMinimumSize(260, 52);
00038 this->setMaximumSize(260, 52);
00039
00040 this->setGeometry(0,0, 260, 52);
00041
00042 pPaletteBox = new QGroupBox(tr("palette"), this);
00043 pPaletteBox->setGeometry(0, 0, 258, 50);
00044
00045 #ifndef QT_NO_DEBUG
00046 std::cout << "PaletteDisplayer created" << std::endl;
00047 #endif
00048 }
00049
00050 PaletteDisplayer :: ~PaletteDisplayer(void)
00051 {
00052 delete pPaletteBox;
00053
00054 #ifndef QT_NO_DEBUG
00055 std::cout << "PaletteDisplayer deleted" << std::endl;
00056 #endif
00057 }
00058
00059 void PaletteDisplayer :: paintEvent(QPaintEvent* )
00060 {
00061 QPainter painter(this);
00062 int step = 1;
00063
00064
00065
00066 for ( unsigned int i = 0 ; i < 256 ; i++ )
00067 {
00068 painter.fillRect(QRect(i * step, 17, step, pPaletteBox->height() - 20), QColor(palette[i]));
00069 }
00070 }