QGIS API Documentation  2.5.0-Master
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
qgscolorwidgetwrapper.cpp
Go to the documentation of this file.
1 /***************************************************************************
2  qgscolorwidgetwrapper.cpp
3  --------------------------------------
4  Date : 5.1.2014
5  Copyright : (C) 2014 Matthias Kuhn
6  Email : matthias dot kuhn at gmx dot ch
7  ***************************************************************************
8  * *
9  * This program is free software; you can redistribute it and/or modify *
10  * it under the terms of the GNU General Public License as published by *
11  * the Free Software Foundation; either version 2 of the License, or *
12  * (at your option) any later version. *
13  * *
14  ***************************************************************************/
15 
16 #include "qgscolorwidgetwrapper.h"
17 
18 QgsColorWidgetWrapper::QgsColorWidgetWrapper( QgsVectorLayer* vl, int fieldIdx, QWidget* editor, QWidget* parent ) :
19  QgsEditorWidgetWrapper( vl, fieldIdx, editor, parent )
20 {
21 }
22 
23 
25 {
26  QVariant v;
27 
28  if ( mColorButton )
29  v = mColorButton->color();
30 
31  return v;
32 }
33 
34 QWidget* QgsColorWidgetWrapper::createWidget( QWidget* parent )
35 {
36  return new QgsColorButton( parent );
37 }
38 
39 void QgsColorWidgetWrapper::initWidget( QWidget* editor )
40 {
41  mColorButton = qobject_cast<QgsColorButton*>( editor );
42 
43  connect( mColorButton, SIGNAL( colorChanged( QColor ) ), this, SLOT( valueChanged() ) );
44 }
45 
46 void QgsColorWidgetWrapper::setValue( const QVariant& value )
47 {
48  if ( mColorButton )
49  mColorButton->setColor( QColor( value.toString() ) );
50 }
void valueChanged()
Will call the value() method to determine the emitted value.
Manages an editor widget Widget and wrapper share the same parent.
A cross platform button subclass for selecting colors. Will open a color chooser dialog when clicked...
QgsColorWidgetWrapper(QgsVectorLayer *vl, int fieldIdx, QWidget *editor=0, QWidget *parent=0)
QgsColorButton * mColorButton
QVariant value()
Will be used to access the widget's value.
void initWidget(QWidget *editor)
This method should initialize the editor widget with runtime data.
void setColor(const QColor &color)
Specify the current color.
QWidget * createWidget(QWidget *parent)
This method should create a new widget with the provided parent.
void setValue(const QVariant &value)
Represents a vector layer which manages a vector based data sets.