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 WPROPERTYMATRIX4X4WIDGET_H
26
#define WPROPERTYMATRIX4X4WIDGET_H
30
#include <QtGui/QLineEdit>
31
#include <QtGui/QSlider>
32
#include <QtGui/QHBoxLayout>
34
#include "WPropertyWidget.h"
39
* Implements a property widget for MATRIX4X4.
41
class WPropertyMatrix4X4Widget: public WPropertyWidget
46
* Constructor. Creates a new widget appropriate for the specified property.
48
* \param property the property to handle
49
* \param parent the parent widget.
50
* \param propertyGrid the grid used to layout the labels and property widgets
52
WPropertyMatrix4X4Widget( WPropMatrix4X4 property, QGridLayout* propertyGrid, QWidget* parent = 0 );
57
virtual ~WPropertyMatrix4X4Widget();
61
* Called whenever the widget should update.
63
virtual void update();
66
* The integer property represented by this widget.
68
WPropMatrix4X4 m_matrixProperty;
71
* The edit field showing the value of the slider
73
QLineEdit m_edits[16];
76
* Layout used to position the label and the widgets
81
* Used to show the property as text.
86
* The layout used for the pure output (information properties)
88
QHBoxLayout m_infoLayout;
91
* Updates the property using the edit X Y and Z widgets.
93
* \param validateOnly true if the prop should not really be set. Just validated.
95
void setPropertyFromWidgets( bool validateOnly = false );
101
* Called whenever the edit field changes
106
* Called when the text in m_edit changes.
110
void textEdited( const QString& text );
113
#endif // WPROPERTYMATRIX4X4WIDGET_H