1
//---------------------------------------------------------------------------
3
// Project: OpenWalnut ( http://www.openwalnut.org )
5
// Copyright 2009 OpenWalnut Community, BSV@Uni-Leipzig and CNCF@MPI-CBS
6
// For more information see http://www.openwalnut.org/copying
8
// This file is part of OpenWalnut.
10
// OpenWalnut is free software: you can redistribute it and/or modify
11
// it under the terms of the GNU Lesser General Public License as published by
12
// the Free Software Foundation, either version 3 of the License, or
13
// (at your option) any later version.
15
// OpenWalnut is distributed in the hope that it will be useful,
16
// but WITHOUT ANY WARRANTY; without even the implied warranty of
17
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18
// GNU Lesser General Public License for more details.
20
// You should have received a copy of the GNU Lesser General Public License
21
// along with OpenWalnut. If not, see <http://www.gnu.org/licenses/>.
23
//---------------------------------------------------------------------------
25
#ifndef WPROPERTYCOLORWIDGET_H
26
#define WPROPERTYCOLORWIDGET_H
30
#include <QtGui/QPushButton>
31
#include <QtGui/QHBoxLayout>
33
#include "WPropertyWidget.h"
36
* Implements a property widget for WPropColor.
38
class WPropertyColorWidget: public WPropertyWidget
43
* Constructor. Creates a new widget appropriate for the specified property.
45
* \param property the property to handle
46
* \param parent the parent widget.
47
* \param propertyGrid the grid used to layout the labels and property widgets
49
WPropertyColorWidget( WPropColor property, QGridLayout* propertyGrid, QWidget* parent = 0 );
54
virtual ~WPropertyColorWidget();
58
* Internal helper, called to set the color
59
* \param color the new color
61
virtual void setColor( const QColor& color );
64
* Called whenever the widget should update.
66
virtual void update();
69
* Reimplemented to accept color drops
70
* \param event the handled event
72
virtual void dragEnterEvent( QDragEnterEvent* event );
75
* Reimplemented to accept color drops
76
* \param event the handled event
78
virtual void dropEvent( QDropEvent* event );
81
* The integer property represented by this widget.
83
WPropColor m_colorProperty;
86
* The button field showing the value
91
* Layout used to position the label and the checkbox
96
* Used to show the property as text.
101
* The layout used for the pure output (information properties)
103
QHBoxLayout m_infoLayout;
107
* Helper to convert between QColor and WColor.
109
* \param color a color
111
* \return the corresponding QColor.
113
static QColor toQColor( WColor color );
116
* Helper to convert between QColor and WColor.
118
* \param color a color
120
* \return the corresponding WColor.
122
static WColor toWColor( QColor color );
127
* Called when the m_button is clicked
129
void buttonClicked();
132
#endif // WPROPERTYCOLORWIDGET_H