QSapecNG
 All Classes Functions Enumerations Properties
propertytextitem.hpp
00001 /*
00002     QSapecNG - Qt based SapecNG GUI front-end
00003     Copyright (C) 2009, Michele Caini
00004 
00005     This program is free software: you can redistribute it and/or modify
00006     it under the terms of the GNU General Public License as published by
00007     the Free Software Foundation, either version 3 of the License, or
00008     (at your option) any later version.
00009 
00010     This program is distributed in the hope that it will be useful,
00011     but WITHOUT ANY WARRANTY; without even the implied warranty of
00012     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00013     GNU General Public License for more details.
00014 
00015     You should have received a copy of the GNU General Public License
00016     along with this program.  If not, see <http://www.gnu.org/licenses/>.
00017 */
00018 
00019 
00020 #ifndef PROPERTYTEXTITEM_H
00021 #define PROPERTYTEXTITEM_H
00022 
00023 
00024 #include <QtGui/QGraphicsTextItem>
00025 
00026 #include "gui/qtsolutions/qtpropertyeditor/QtProperty"
00027 
00028 
00029 namespace qsapecng
00030 {
00031 
00032 
00033 class PropertyTextItem: public QGraphicsTextItem
00034 {
00035 
00036   Q_OBJECT
00037 
00038 public:
00039   PropertyTextItem(QGraphicsItem* parent = 0)
00040       : QGraphicsTextItem(parent), property_(0)
00041     {
00042       setFont(QFont("Times", 10, QFont::Light));
00043       setTextInteractionFlags(Qt::NoTextInteraction);
00044       setFlags(QGraphicsItem::ItemIsMovable);
00045     }
00046   PropertyTextItem(const QString& text, QGraphicsItem* parent = 0)
00047       : QGraphicsTextItem(text, parent), property_(0)
00048     {
00049       setFont(QFont("Times", 10, QFont::Light));
00050       setTextInteractionFlags(Qt::NoTextInteraction);
00051       setFlags(QGraphicsItem::ItemIsMovable);
00052     }
00053 
00054   inline void setProperty(QtProperty* property) { property_ = property; }
00055 
00056 public slots:
00057   void valueChanged(QtProperty* property, const QString& value)
00058     { if(property == property_) setPlainText(value); }
00059 
00060 private:
00061   QtProperty* property_;
00062 
00063 };
00064 
00065 
00066 }
00067 
00068 
00069 #endif // PROPERTYTEXTITEM_H
 All Classes Functions Enumerations Properties