Qt4/Qt5 neutral changes:
+ change inheritance of PropertyItem to not derive from BaseClass (and QObject) any more to fix crashes with Qt5
This commit is contained in:
@@ -79,7 +79,30 @@ namespace Gui { namespace PropertyEditor {
|
||||
}
|
||||
}
|
||||
|
||||
TYPESYSTEM_SOURCE(Gui::PropertyEditor::PropertyItem, Base::BaseClass)
|
||||
Gui::PropertyEditor::PropertyItemFactory* Gui::PropertyEditor::PropertyItemFactory::_singleton = NULL;
|
||||
|
||||
PropertyItemFactory& PropertyItemFactory::instance()
|
||||
{
|
||||
if (_singleton == NULL)
|
||||
_singleton = new PropertyItemFactory;
|
||||
return *_singleton;
|
||||
}
|
||||
|
||||
void PropertyItemFactory::destruct ()
|
||||
{
|
||||
delete _singleton;
|
||||
_singleton = 0;
|
||||
}
|
||||
|
||||
PropertyItem* PropertyItemFactory::createPropertyItem (const char* sName) const
|
||||
{
|
||||
PropertyItem* w = static_cast<PropertyItem*>(Produce(sName));
|
||||
return w;
|
||||
}
|
||||
|
||||
// ----------------------------------------------------
|
||||
|
||||
PROPERTYITEM_SOURCE(Gui::PropertyEditor::PropertyItem)
|
||||
|
||||
PropertyItem::PropertyItem() : parentItem(0), readonly(false), cleared(false)
|
||||
{
|
||||
@@ -474,7 +497,7 @@ void PropertyItem::bind(const App::Property& prop) {
|
||||
|
||||
// --------------------------------------------------------------------
|
||||
|
||||
TYPESYSTEM_SOURCE(Gui::PropertyEditor::PropertyStringItem, Gui::PropertyEditor::PropertyItem)
|
||||
PROPERTYITEM_SOURCE(Gui::PropertyEditor::PropertyStringItem)
|
||||
|
||||
PropertyStringItem::PropertyStringItem()
|
||||
{
|
||||
@@ -520,7 +543,7 @@ QVariant PropertyStringItem::editorData(QWidget *editor) const
|
||||
|
||||
// --------------------------------------------------------------------
|
||||
|
||||
TYPESYSTEM_SOURCE(Gui::PropertyEditor::PropertyFontItem, Gui::PropertyEditor::PropertyItem)
|
||||
PROPERTYITEM_SOURCE(Gui::PropertyEditor::PropertyFontItem)
|
||||
|
||||
PropertyFontItem::PropertyFontItem()
|
||||
{
|
||||
@@ -570,7 +593,7 @@ QVariant PropertyFontItem::editorData(QWidget *editor) const
|
||||
|
||||
// --------------------------------------------------------------------
|
||||
|
||||
TYPESYSTEM_SOURCE(Gui::PropertyEditor::PropertySeparatorItem, Gui::PropertyEditor::PropertyItem)
|
||||
PROPERTYITEM_SOURCE(Gui::PropertyEditor::PropertySeparatorItem)
|
||||
|
||||
QWidget* PropertySeparatorItem::createEditor(QWidget* parent, const QObject* receiver, const char* method) const
|
||||
{
|
||||
@@ -582,7 +605,7 @@ QWidget* PropertySeparatorItem::createEditor(QWidget* parent, const QObject* rec
|
||||
|
||||
// --------------------------------------------------------------------
|
||||
|
||||
TYPESYSTEM_SOURCE(Gui::PropertyEditor::PropertyIntegerItem, Gui::PropertyEditor::PropertyItem)
|
||||
PROPERTYITEM_SOURCE(Gui::PropertyEditor::PropertyIntegerItem)
|
||||
|
||||
PropertyIntegerItem::PropertyIntegerItem()
|
||||
{
|
||||
@@ -649,7 +672,7 @@ QVariant PropertyIntegerItem::toString(const QVariant& v) const {
|
||||
|
||||
// --------------------------------------------------------------------
|
||||
|
||||
TYPESYSTEM_SOURCE(Gui::PropertyEditor::PropertyIntegerConstraintItem, Gui::PropertyEditor::PropertyItem)
|
||||
PROPERTYITEM_SOURCE(Gui::PropertyEditor::PropertyIntegerConstraintItem)
|
||||
|
||||
PropertyIntegerConstraintItem::PropertyIntegerConstraintItem()
|
||||
{
|
||||
@@ -732,7 +755,7 @@ QVariant PropertyIntegerConstraintItem::toString(const QVariant& v) const {
|
||||
|
||||
// --------------------------------------------------------------------
|
||||
|
||||
TYPESYSTEM_SOURCE(Gui::PropertyEditor::PropertyFloatItem, Gui::PropertyEditor::PropertyItem)
|
||||
PROPERTYITEM_SOURCE(Gui::PropertyEditor::PropertyFloatItem)
|
||||
|
||||
PropertyFloatItem::PropertyFloatItem()
|
||||
{
|
||||
@@ -801,7 +824,7 @@ QVariant PropertyFloatItem::editorData(QWidget *editor) const
|
||||
// --------------------------------------------------------------------
|
||||
|
||||
|
||||
TYPESYSTEM_SOURCE(Gui::PropertyEditor::PropertyUnitItem, Gui::PropertyEditor::PropertyItem)
|
||||
PROPERTYITEM_SOURCE(Gui::PropertyEditor::PropertyUnitItem)
|
||||
|
||||
PropertyUnitItem::PropertyUnitItem()
|
||||
{
|
||||
@@ -875,7 +898,7 @@ QVariant PropertyUnitItem::editorData(QWidget *editor) const
|
||||
// --------------------------------------------------------------------
|
||||
|
||||
|
||||
TYPESYSTEM_SOURCE(Gui::PropertyEditor::PropertyUnitConstraintItem, Gui::PropertyEditor::PropertyUnitItem)
|
||||
PROPERTYITEM_SOURCE(Gui::PropertyEditor::PropertyUnitConstraintItem)
|
||||
|
||||
PropertyUnitConstraintItem::PropertyUnitConstraintItem()
|
||||
{
|
||||
@@ -911,7 +934,7 @@ void PropertyUnitConstraintItem::setEditorData(QWidget *editor, const QVariant&
|
||||
|
||||
// --------------------------------------------------------------------
|
||||
|
||||
TYPESYSTEM_SOURCE(Gui::PropertyEditor::PropertyFloatConstraintItem, Gui::PropertyEditor::PropertyItem)
|
||||
PROPERTYITEM_SOURCE(Gui::PropertyEditor::PropertyFloatConstraintItem)
|
||||
|
||||
PropertyFloatConstraintItem::PropertyFloatConstraintItem()
|
||||
{
|
||||
@@ -993,7 +1016,7 @@ QVariant PropertyFloatConstraintItem::editorData(QWidget *editor) const
|
||||
|
||||
// --------------------------------------------------------------------
|
||||
|
||||
TYPESYSTEM_SOURCE(Gui::PropertyEditor::PropertyAngleItem, Gui::PropertyEditor::PropertyFloatItem)
|
||||
PROPERTYITEM_SOURCE(Gui::PropertyEditor::PropertyAngleItem)
|
||||
|
||||
PropertyAngleItem::PropertyAngleItem()
|
||||
{
|
||||
@@ -1035,7 +1058,7 @@ QVariant PropertyAngleItem::toString(const QVariant& prop) const
|
||||
|
||||
// --------------------------------------------------------------------
|
||||
|
||||
TYPESYSTEM_SOURCE(Gui::PropertyEditor::PropertyBoolItem, Gui::PropertyEditor::PropertyItem)
|
||||
PROPERTYITEM_SOURCE(Gui::PropertyEditor::PropertyBoolItem)
|
||||
|
||||
PropertyBoolItem::PropertyBoolItem()
|
||||
{
|
||||
@@ -1083,7 +1106,7 @@ QVariant PropertyBoolItem::editorData(QWidget *editor) const
|
||||
|
||||
// ---------------------------------------------------------------
|
||||
|
||||
TYPESYSTEM_SOURCE(Gui::PropertyEditor::PropertyVectorItem, Gui::PropertyEditor::PropertyItem)
|
||||
PROPERTYITEM_SOURCE(Gui::PropertyEditor::PropertyVectorItem)
|
||||
|
||||
PropertyVectorItem::PropertyVectorItem()
|
||||
{
|
||||
@@ -1196,7 +1219,7 @@ void PropertyVectorItem::propertyBound() {
|
||||
|
||||
// ---------------------------------------------------------------
|
||||
|
||||
TYPESYSTEM_SOURCE(Gui::PropertyEditor::PropertyVectorDistanceItem, Gui::PropertyEditor::PropertyItem)
|
||||
PROPERTYITEM_SOURCE(Gui::PropertyEditor::PropertyVectorDistanceItem)
|
||||
|
||||
PropertyVectorDistanceItem::PropertyVectorDistanceItem()
|
||||
{
|
||||
@@ -1311,7 +1334,7 @@ void PropertyVectorDistanceItem::propertyBound() {
|
||||
|
||||
// ---------------------------------------------------------------
|
||||
|
||||
TYPESYSTEM_SOURCE(Gui::PropertyEditor::PropertyMatrixItem, Gui::PropertyEditor::PropertyItem)
|
||||
PROPERTYITEM_SOURCE(Gui::PropertyEditor::PropertyMatrixItem)
|
||||
|
||||
PropertyMatrixItem::PropertyMatrixItem()
|
||||
{
|
||||
@@ -1732,7 +1755,7 @@ void PlacementEditor::updateValue(const QVariant& v, bool incr, bool data)
|
||||
}
|
||||
}
|
||||
|
||||
TYPESYSTEM_SOURCE(Gui::PropertyEditor::PropertyPlacementItem, Gui::PropertyEditor::PropertyItem)
|
||||
PROPERTYITEM_SOURCE(Gui::PropertyEditor::PropertyPlacementItem)
|
||||
|
||||
PropertyPlacementItem::PropertyPlacementItem() : init_axis(false), changed_value(false), rot_angle(0), rot_axis(0,0,1)
|
||||
{
|
||||
@@ -1951,7 +1974,7 @@ void PropertyPlacementItem::propertyBound() {
|
||||
|
||||
// ---------------------------------------------------------------
|
||||
|
||||
TYPESYSTEM_SOURCE(Gui::PropertyEditor::PropertyEnumItem, Gui::PropertyEditor::PropertyItem)
|
||||
PROPERTYITEM_SOURCE(Gui::PropertyEditor::PropertyEnumItem)
|
||||
|
||||
PropertyEnumItem::PropertyEnumItem()
|
||||
{
|
||||
@@ -2037,7 +2060,7 @@ QVariant PropertyEnumItem::editorData(QWidget *editor) const
|
||||
|
||||
// ---------------------------------------------------------------
|
||||
|
||||
TYPESYSTEM_SOURCE(Gui::PropertyEditor::PropertyStringListItem, Gui::PropertyEditor::PropertyItem)
|
||||
PROPERTYITEM_SOURCE(Gui::PropertyEditor::PropertyStringListItem)
|
||||
|
||||
PropertyStringListItem::PropertyStringListItem()
|
||||
{
|
||||
@@ -2109,7 +2132,7 @@ void PropertyStringListItem::setValue(const QVariant& value)
|
||||
|
||||
// ---------------------------------------------------------------
|
||||
|
||||
TYPESYSTEM_SOURCE(Gui::PropertyEditor::PropertyFloatListItem, Gui::PropertyEditor::PropertyItem)
|
||||
PROPERTYITEM_SOURCE(Gui::PropertyEditor::PropertyFloatListItem)
|
||||
|
||||
PropertyFloatListItem::PropertyFloatListItem()
|
||||
{
|
||||
@@ -2183,7 +2206,7 @@ void PropertyFloatListItem::setValue(const QVariant& value)
|
||||
|
||||
// ---------------------------------------------------------------
|
||||
|
||||
TYPESYSTEM_SOURCE(Gui::PropertyEditor::PropertyIntegerListItem, Gui::PropertyEditor::PropertyItem)
|
||||
PROPERTYITEM_SOURCE(Gui::PropertyEditor::PropertyIntegerListItem)
|
||||
|
||||
PropertyIntegerListItem::PropertyIntegerListItem()
|
||||
{
|
||||
@@ -2258,7 +2281,7 @@ void PropertyIntegerListItem::setValue(const QVariant& value)
|
||||
|
||||
// --------------------------------------------------------------------
|
||||
|
||||
TYPESYSTEM_SOURCE(Gui::PropertyEditor::PropertyColorItem, Gui::PropertyEditor::PropertyItem)
|
||||
PROPERTYITEM_SOURCE(Gui::PropertyEditor::PropertyColorItem)
|
||||
|
||||
PropertyColorItem::PropertyColorItem()
|
||||
{
|
||||
@@ -2345,7 +2368,7 @@ namespace Gui { namespace PropertyEditor {
|
||||
|
||||
Q_DECLARE_METATYPE(Gui::PropertyEditor::Material)
|
||||
|
||||
TYPESYSTEM_SOURCE(Gui::PropertyEditor::PropertyMaterialItem, Gui::PropertyEditor::PropertyItem)
|
||||
PROPERTYITEM_SOURCE(Gui::PropertyEditor::PropertyMaterialItem)
|
||||
|
||||
PropertyMaterialItem::PropertyMaterialItem()
|
||||
{
|
||||
@@ -2657,7 +2680,7 @@ QVariant PropertyMaterialItem::editorData(QWidget *editor) const
|
||||
|
||||
// --------------------------------------------------------------------
|
||||
|
||||
TYPESYSTEM_SOURCE(Gui::PropertyEditor::PropertyMaterialListItem, Gui::PropertyEditor::PropertyItem)
|
||||
PROPERTYITEM_SOURCE(Gui::PropertyEditor::PropertyMaterialListItem)
|
||||
|
||||
PropertyMaterialListItem::PropertyMaterialListItem()
|
||||
{
|
||||
@@ -3122,7 +3145,7 @@ QVariant PropertyMaterialListItem::editorData(QWidget *editor) const
|
||||
|
||||
// --------------------------------------------------------------------
|
||||
|
||||
TYPESYSTEM_SOURCE(Gui::PropertyEditor::PropertyFileItem, Gui::PropertyEditor::PropertyItem)
|
||||
PROPERTYITEM_SOURCE(Gui::PropertyEditor::PropertyFileItem)
|
||||
|
||||
PropertyFileItem::PropertyFileItem()
|
||||
{
|
||||
@@ -3173,7 +3196,7 @@ QVariant PropertyFileItem::editorData(QWidget *editor) const
|
||||
|
||||
// --------------------------------------------------------------------
|
||||
|
||||
TYPESYSTEM_SOURCE(Gui::PropertyEditor::PropertyPathItem, Gui::PropertyEditor::PropertyItem)
|
||||
PROPERTYITEM_SOURCE(Gui::PropertyEditor::PropertyPathItem)
|
||||
|
||||
PropertyPathItem::PropertyPathItem()
|
||||
{
|
||||
@@ -3225,7 +3248,7 @@ QVariant PropertyPathItem::editorData(QWidget *editor) const
|
||||
|
||||
// --------------------------------------------------------------------
|
||||
|
||||
TYPESYSTEM_SOURCE(Gui::PropertyEditor::PropertyTransientFileItem, Gui::PropertyEditor::PropertyItem)
|
||||
PROPERTYITEM_SOURCE(Gui::PropertyEditor::PropertyTransientFileItem)
|
||||
|
||||
PropertyTransientFileItem::PropertyTransientFileItem()
|
||||
{
|
||||
@@ -3346,7 +3369,7 @@ void LinkLabel::onLinkActivated (const QString& s)
|
||||
}
|
||||
}
|
||||
|
||||
TYPESYSTEM_SOURCE(Gui::PropertyEditor::PropertyLinkItem, Gui::PropertyEditor::PropertyItem)
|
||||
PROPERTYITEM_SOURCE(Gui::PropertyEditor::PropertyLinkItem)
|
||||
|
||||
PropertyLinkItem::PropertyLinkItem()
|
||||
{
|
||||
|
||||
@@ -29,7 +29,7 @@
|
||||
#include <QItemEditorFactory>
|
||||
#include <vector>
|
||||
|
||||
#include <Base/Type.h>
|
||||
#include <Base/Factory.h>
|
||||
#include <Base/Vector3D.h>
|
||||
#include <Base/Matrix.h>
|
||||
#include <Base/Placement.h>
|
||||
@@ -49,15 +49,62 @@ Q_DECLARE_METATYPE(Base::Quantity)
|
||||
Q_DECLARE_METATYPE(QList<Base::Quantity>)
|
||||
#endif
|
||||
|
||||
#define PROPERTYITEM_HEADER \
|
||||
public: \
|
||||
static void *create(void); \
|
||||
static void init(void);
|
||||
|
||||
#define PROPERTYITEM_SOURCE(_class_) \
|
||||
void * _class_::create(void) { \
|
||||
return new _class_ ();\
|
||||
} \
|
||||
void _class_::init(void) { \
|
||||
(void)new Gui::PropertyEditor::PropertyItemProducer<_class_>(#_class_); \
|
||||
}
|
||||
|
||||
namespace Gui {
|
||||
namespace Dialog { class TaskPlacement; }
|
||||
namespace PropertyEditor {
|
||||
|
||||
class PropertyItem;
|
||||
|
||||
/**
|
||||
* The PropertyItemFactory provides methods for the dynamic creation of property items.
|
||||
* \author Werner Mayer
|
||||
*/
|
||||
class GuiExport PropertyItemFactory : public Base::Factory
|
||||
{
|
||||
public:
|
||||
static PropertyItemFactory& instance();
|
||||
static void destruct ();
|
||||
|
||||
PropertyItem* createPropertyItem (const char* sName) const;
|
||||
|
||||
private:
|
||||
static PropertyItemFactory* _singleton;
|
||||
|
||||
PropertyItemFactory(){}
|
||||
~PropertyItemFactory(){}
|
||||
};
|
||||
|
||||
template <class CLASS>
|
||||
class PropertyItemProducer : public Base::AbstractProducer
|
||||
{
|
||||
public:
|
||||
PropertyItemProducer(const char* className) {
|
||||
PropertyItemFactory::instance().AddProducer(className, this);
|
||||
}
|
||||
virtual ~PropertyItemProducer() {
|
||||
}
|
||||
virtual void* Produce () const {
|
||||
return CLASS::create();
|
||||
}
|
||||
};
|
||||
|
||||
class GuiExport PropertyItem : virtual public QObject, public Base::BaseClass, public ExpressionBinding
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
TYPESYSTEM_HEADER();
|
||||
PROPERTYITEM_HEADER
|
||||
|
||||
public:
|
||||
~PropertyItem();
|
||||
@@ -134,7 +181,7 @@ private:
|
||||
*/
|
||||
class GuiExport PropertyStringItem: public PropertyItem
|
||||
{
|
||||
TYPESYSTEM_HEADER();
|
||||
PROPERTYITEM_HEADER
|
||||
|
||||
virtual QWidget* createEditor(QWidget* parent, const QObject* receiver, const char* method) const;
|
||||
virtual void setEditorData(QWidget *editor, const QVariant& data) const;
|
||||
@@ -154,7 +201,7 @@ protected:
|
||||
*/
|
||||
class GuiExport PropertyFontItem: public PropertyItem
|
||||
{
|
||||
TYPESYSTEM_HEADER();
|
||||
PROPERTYITEM_HEADER
|
||||
|
||||
virtual QWidget* createEditor(QWidget* parent, const QObject* receiver, const char* method) const;
|
||||
virtual void setEditorData(QWidget *editor, const QVariant& data) const;
|
||||
@@ -174,7 +221,7 @@ protected:
|
||||
*/
|
||||
class GuiExport PropertySeparatorItem : public PropertyItem
|
||||
{
|
||||
TYPESYSTEM_HEADER();
|
||||
PROPERTYITEM_HEADER
|
||||
|
||||
bool isSeparator() const { return true; }
|
||||
QWidget* createEditor(QWidget* parent, const QObject* receiver, const char* method) const;
|
||||
@@ -186,7 +233,7 @@ class GuiExport PropertySeparatorItem : public PropertyItem
|
||||
*/
|
||||
class GuiExport PropertyIntegerItem: public PropertyItem
|
||||
{
|
||||
TYPESYSTEM_HEADER();
|
||||
PROPERTYITEM_HEADER
|
||||
|
||||
virtual QWidget* createEditor(QWidget* parent, const QObject* receiver, const char* method) const;
|
||||
virtual void setEditorData(QWidget *editor, const QVariant& data) const;
|
||||
@@ -207,7 +254,7 @@ protected:
|
||||
*/
|
||||
class GuiExport PropertyIntegerConstraintItem: public PropertyItem
|
||||
{
|
||||
TYPESYSTEM_HEADER();
|
||||
PROPERTYITEM_HEADER
|
||||
|
||||
virtual QWidget* createEditor(QWidget* parent, const QObject* receiver, const char* method) const;
|
||||
virtual void setEditorData(QWidget *editor, const QVariant& data) const;
|
||||
@@ -228,7 +275,7 @@ protected:
|
||||
*/
|
||||
class GuiExport PropertyFloatItem: public PropertyItem
|
||||
{
|
||||
TYPESYSTEM_HEADER();
|
||||
PROPERTYITEM_HEADER
|
||||
|
||||
virtual QWidget* createEditor(QWidget* parent, const QObject* receiver, const char* method) const;
|
||||
virtual void setEditorData(QWidget *editor, const QVariant& data) const;
|
||||
@@ -249,7 +296,7 @@ protected:
|
||||
*/
|
||||
class GuiExport PropertyUnitItem: public PropertyItem
|
||||
{
|
||||
TYPESYSTEM_HEADER();
|
||||
PROPERTYITEM_HEADER
|
||||
|
||||
virtual QWidget* createEditor(QWidget* parent, const QObject* receiver, const char* method) const;
|
||||
virtual void setEditorData(QWidget *editor, const QVariant& data) const;
|
||||
@@ -269,7 +316,7 @@ protected:
|
||||
*/
|
||||
class GuiExport PropertyUnitConstraintItem: public PropertyUnitItem
|
||||
{
|
||||
TYPESYSTEM_HEADER();
|
||||
PROPERTYITEM_HEADER
|
||||
|
||||
virtual void setEditorData(QWidget *editor, const QVariant& data) const;
|
||||
|
||||
@@ -283,7 +330,7 @@ protected:
|
||||
*/
|
||||
class GuiExport PropertyFloatConstraintItem: public PropertyItem
|
||||
{
|
||||
TYPESYSTEM_HEADER();
|
||||
PROPERTYITEM_HEADER
|
||||
|
||||
virtual QWidget* createEditor(QWidget* parent, const QObject* receiver, const char* method) const;
|
||||
virtual void setEditorData(QWidget *editor, const QVariant& data) const;
|
||||
@@ -304,7 +351,7 @@ protected:
|
||||
*/
|
||||
class GuiExport PropertyAngleItem : public PropertyFloatItem
|
||||
{
|
||||
TYPESYSTEM_HEADER();
|
||||
PROPERTYITEM_HEADER
|
||||
|
||||
protected:
|
||||
virtual void setEditorData(QWidget *editor, const QVariant& data) const;
|
||||
@@ -320,7 +367,7 @@ protected:
|
||||
*/
|
||||
class GuiExport PropertyBoolItem: public PropertyItem
|
||||
{
|
||||
TYPESYSTEM_HEADER();
|
||||
PROPERTYITEM_HEADER
|
||||
|
||||
virtual QWidget* createEditor(QWidget* parent, const QObject* receiver, const char* method) const;
|
||||
virtual void setEditorData(QWidget *editor, const QVariant& data) const;
|
||||
@@ -345,7 +392,7 @@ class GuiExport PropertyVectorItem: public PropertyItem
|
||||
Q_PROPERTY(double x READ x WRITE setX DESIGNABLE true USER true)
|
||||
Q_PROPERTY(double y READ y WRITE setY DESIGNABLE true USER true)
|
||||
Q_PROPERTY(double z READ z WRITE setZ DESIGNABLE true USER true)
|
||||
TYPESYSTEM_HEADER();
|
||||
PROPERTYITEM_HEADER
|
||||
|
||||
virtual QWidget* createEditor(QWidget* parent, const QObject* receiver, const char* method) const;
|
||||
virtual void setEditorData(QWidget *editor, const QVariant& data) const;
|
||||
@@ -384,7 +431,7 @@ class GuiExport PropertyVectorDistanceItem: public PropertyItem
|
||||
Q_PROPERTY(Base::Quantity x READ x WRITE setX DESIGNABLE true USER true)
|
||||
Q_PROPERTY(Base::Quantity y READ y WRITE setY DESIGNABLE true USER true)
|
||||
Q_PROPERTY(Base::Quantity z READ z WRITE setZ DESIGNABLE true USER true)
|
||||
TYPESYSTEM_HEADER();
|
||||
PROPERTYITEM_HEADER
|
||||
|
||||
virtual QWidget* createEditor(QWidget* parent, const QObject* receiver, const char* method) const;
|
||||
virtual void setEditorData(QWidget *editor, const QVariant& data) const;
|
||||
@@ -431,7 +478,7 @@ class GuiExport PropertyMatrixItem: public PropertyItem
|
||||
Q_PROPERTY(double A42 READ getA42 WRITE setA42 DESIGNABLE true USER true)
|
||||
Q_PROPERTY(double A43 READ getA43 WRITE setA43 DESIGNABLE true USER true)
|
||||
Q_PROPERTY(double A44 READ getA44 WRITE setA44 DESIGNABLE true USER true)
|
||||
TYPESYSTEM_HEADER();
|
||||
PROPERTYITEM_HEADER
|
||||
|
||||
virtual QWidget* createEditor(QWidget* parent, const QObject* receiver, const char* method) const;
|
||||
virtual void setEditorData(QWidget *editor, const QVariant& data) const;
|
||||
@@ -528,7 +575,7 @@ class GuiExport PropertyPlacementItem: public PropertyItem
|
||||
Q_PROPERTY(Base::Quantity Angle READ getAngle WRITE setAngle DESIGNABLE true USER true)
|
||||
Q_PROPERTY(Base::Vector3d Axis READ getAxis WRITE setAxis DESIGNABLE true USER true)
|
||||
Q_PROPERTY(Base::Vector3d Position READ getPosition WRITE setPosition DESIGNABLE true USER true)
|
||||
TYPESYSTEM_HEADER();
|
||||
PROPERTYITEM_HEADER
|
||||
|
||||
virtual QWidget* createEditor(QWidget* parent, const QObject* receiver, const char* method) const;
|
||||
virtual void setEditorData(QWidget *editor, const QVariant& data) const;
|
||||
@@ -567,7 +614,7 @@ private:
|
||||
*/
|
||||
class GuiExport PropertyEnumItem: public PropertyItem
|
||||
{
|
||||
TYPESYSTEM_HEADER();
|
||||
PROPERTYITEM_HEADER
|
||||
|
||||
virtual QWidget* createEditor(QWidget* parent, const QObject* receiver, const char* method) const;
|
||||
virtual void setEditorData(QWidget *editor, const QVariant& data) const;
|
||||
@@ -587,7 +634,7 @@ protected:
|
||||
*/
|
||||
class GuiExport PropertyStringListItem: public PropertyItem
|
||||
{
|
||||
TYPESYSTEM_HEADER();
|
||||
PROPERTYITEM_HEADER
|
||||
|
||||
virtual QWidget* createEditor(QWidget* parent, const QObject* receiver, const char* method) const;
|
||||
virtual void setEditorData(QWidget *editor, const QVariant& data) const;
|
||||
@@ -608,7 +655,7 @@ protected:
|
||||
*/
|
||||
class GuiExport PropertyFloatListItem: public PropertyItem
|
||||
{
|
||||
TYPESYSTEM_HEADER();
|
||||
PROPERTYITEM_HEADER
|
||||
|
||||
virtual QWidget* createEditor(QWidget* parent, const QObject* receiver, const char* method) const;
|
||||
virtual void setEditorData(QWidget *editor, const QVariant& data) const;
|
||||
@@ -629,7 +676,7 @@ protected:
|
||||
*/
|
||||
class GuiExport PropertyIntegerListItem: public PropertyItem
|
||||
{
|
||||
TYPESYSTEM_HEADER();
|
||||
PROPERTYITEM_HEADER
|
||||
|
||||
virtual QWidget* createEditor(QWidget* parent, const QObject* receiver, const char* method) const;
|
||||
virtual void setEditorData(QWidget *editor, const QVariant& data) const;
|
||||
@@ -650,7 +697,7 @@ protected:
|
||||
*/
|
||||
class GuiExport PropertyColorItem: public PropertyItem
|
||||
{
|
||||
TYPESYSTEM_HEADER();
|
||||
PROPERTYITEM_HEADER
|
||||
|
||||
virtual QWidget* createEditor(QWidget* parent, const QObject* receiver, const char* method) const;
|
||||
virtual void setEditorData(QWidget *editor, const QVariant& data) const;
|
||||
@@ -679,7 +726,7 @@ class GuiExport PropertyMaterialItem : public PropertyItem
|
||||
Q_PROPERTY(QColor EmissiveColor READ getEmissiveColor WRITE setEmissiveColor DESIGNABLE true USER true)
|
||||
Q_PROPERTY(float Shininess READ getShininess WRITE setShininess DESIGNABLE true USER true)
|
||||
Q_PROPERTY(float Transparency READ getTransparency WRITE setTransparency DESIGNABLE true USER true)
|
||||
TYPESYSTEM_HEADER();
|
||||
PROPERTYITEM_HEADER
|
||||
|
||||
virtual QWidget* createEditor(QWidget* parent, const QObject* receiver, const char* method) const;
|
||||
virtual void setEditorData(QWidget *editor, const QVariant& data) const;
|
||||
@@ -728,7 +775,7 @@ class GuiExport PropertyMaterialListItem : public PropertyItem
|
||||
Q_PROPERTY(QColor EmissiveColor READ getEmissiveColor WRITE setEmissiveColor DESIGNABLE true USER true)
|
||||
Q_PROPERTY(float Shininess READ getShininess WRITE setShininess DESIGNABLE true USER true)
|
||||
Q_PROPERTY(float Transparency READ getTransparency WRITE setTransparency DESIGNABLE true USER true)
|
||||
TYPESYSTEM_HEADER();
|
||||
PROPERTYITEM_HEADER
|
||||
|
||||
virtual QWidget* createEditor(QWidget* parent, const QObject* receiver, const char* method) const;
|
||||
virtual void setEditorData(QWidget *editor, const QVariant& data) const;
|
||||
@@ -774,7 +821,7 @@ private:
|
||||
*/
|
||||
class GuiExport PropertyFileItem: public PropertyItem
|
||||
{
|
||||
TYPESYSTEM_HEADER();
|
||||
PROPERTYITEM_HEADER
|
||||
|
||||
virtual QWidget* createEditor(QWidget* parent, const QObject* receiver, const char* method) const;
|
||||
virtual void setEditorData(QWidget *editor, const QVariant& data) const;
|
||||
@@ -795,7 +842,7 @@ protected:
|
||||
*/
|
||||
class GuiExport PropertyPathItem: public PropertyItem
|
||||
{
|
||||
TYPESYSTEM_HEADER();
|
||||
PROPERTYITEM_HEADER
|
||||
|
||||
virtual QWidget* createEditor(QWidget* parent, const QObject* receiver, const char* method) const;
|
||||
virtual void setEditorData(QWidget *editor, const QVariant& data) const;
|
||||
@@ -816,7 +863,7 @@ protected:
|
||||
*/
|
||||
class GuiExport PropertyTransientFileItem: public PropertyItem
|
||||
{
|
||||
TYPESYSTEM_HEADER();
|
||||
PROPERTYITEM_HEADER
|
||||
|
||||
virtual QWidget* createEditor(QWidget* parent, const QObject* receiver, const char* method) const;
|
||||
virtual void setEditorData(QWidget *editor, const QVariant& data) const;
|
||||
@@ -872,7 +919,7 @@ private:
|
||||
*/
|
||||
class GuiExport PropertyLinkItem: public PropertyItem
|
||||
{
|
||||
TYPESYSTEM_HEADER();
|
||||
PROPERTYITEM_HEADER
|
||||
|
||||
virtual QWidget* createEditor(QWidget* parent, const QObject* receiver, const char* method) const;
|
||||
virtual void setEditorData(QWidget *editor, const QVariant& data) const;
|
||||
|
||||
@@ -239,18 +239,12 @@ void PropertyModel::buildUp(const PropertyModel::PropertyList& props)
|
||||
App::Property* prop = it->front();
|
||||
QString editor = QString::fromLatin1(prop->getEditorName());
|
||||
if (!editor.isEmpty()) {
|
||||
Base::BaseClass* item = 0;
|
||||
try {
|
||||
item = static_cast<Base::BaseClass*>(Base::Type::
|
||||
createInstanceByName(prop->getEditorName(),true));
|
||||
}
|
||||
catch (...) {
|
||||
}
|
||||
PropertyItem* item = PropertyItemFactory::instance().createPropertyItem(prop->getEditorName());
|
||||
if (!item) {
|
||||
qWarning("No property item for type %s found\n", prop->getEditorName());
|
||||
continue;
|
||||
}
|
||||
if (item->getTypeId().isDerivedFrom(PropertyItem::getClassTypeId())) {
|
||||
else {
|
||||
PropertyItem* child = (PropertyItem*)item;
|
||||
child->setParent(rootItem);
|
||||
rootItem->appendChild(child);
|
||||
@@ -286,17 +280,11 @@ void PropertyModel::appendProperty(const App::Property& prop)
|
||||
{
|
||||
QString editor = QString::fromLatin1(prop.getEditorName());
|
||||
if (!editor.isEmpty()) {
|
||||
Base::BaseClass* item = 0;
|
||||
try {
|
||||
item = static_cast<Base::BaseClass*>(Base::Type::
|
||||
createInstanceByName(prop.getEditorName(),true));
|
||||
}
|
||||
catch (...) {
|
||||
}
|
||||
PropertyItem* item = PropertyItemFactory::instance().createPropertyItem(prop.getEditorName());
|
||||
if (!item) {
|
||||
qWarning("No property item for type %s found\n", prop.getEditorName());
|
||||
}
|
||||
else if (item->getTypeId().isDerivedFrom(PropertyItem::getClassTypeId())) {
|
||||
else {
|
||||
// notify system to add new row
|
||||
int row = rootItem->childCount();
|
||||
beginInsertRows(QModelIndex(), row, row);
|
||||
|
||||
@@ -33,7 +33,7 @@
|
||||
using namespace FemGui;
|
||||
|
||||
|
||||
TYPESYSTEM_SOURCE(FemGui::PropertyFemMeshItem, Gui::PropertyEditor::PropertyItem);
|
||||
PROPERTYITEM_SOURCE(FemGui::PropertyFemMeshItem)
|
||||
|
||||
PropertyFemMeshItem::PropertyFemMeshItem()
|
||||
{
|
||||
|
||||
@@ -41,7 +41,7 @@ class PropertyFemMeshItem : public Gui::PropertyEditor::PropertyItem
|
||||
Q_PROPERTY(int Volumes READ countVolumes)
|
||||
Q_PROPERTY(int Polyhedrons READ countPolyhedrons)
|
||||
Q_PROPERTY(int Groups READ countGroups)
|
||||
TYPESYSTEM_HEADER();
|
||||
PROPERTYITEM_HEADER
|
||||
|
||||
virtual QWidget* createEditor(QWidget* parent, const QObject* receiver, const char* method) const;
|
||||
virtual void setEditorData(QWidget *editor, const QVariant& data) const;
|
||||
|
||||
@@ -33,7 +33,7 @@ using namespace MeshGui;
|
||||
using MeshCore::MeshKernel;
|
||||
|
||||
|
||||
TYPESYSTEM_SOURCE(MeshGui::PropertyMeshKernelItem, Gui::PropertyEditor::PropertyItem);
|
||||
PROPERTYITEM_SOURCE(MeshGui::PropertyMeshKernelItem)
|
||||
|
||||
PropertyMeshKernelItem::PropertyMeshKernelItem()
|
||||
{
|
||||
|
||||
@@ -37,7 +37,7 @@ class MeshGuiExport PropertyMeshKernelItem : public Gui::PropertyEditor::Propert
|
||||
Q_PROPERTY(int Points READ countPoints)
|
||||
Q_PROPERTY(int Edges READ countEdges)
|
||||
Q_PROPERTY(int Faces READ countFaces)
|
||||
TYPESYSTEM_HEADER();
|
||||
PROPERTYITEM_HEADER
|
||||
|
||||
virtual QWidget* createEditor(QWidget* parent, const QObject* receiver, const char* method) const;
|
||||
virtual void setEditorData(QWidget *editor, const QVariant& data) const;
|
||||
|
||||
@@ -36,7 +36,7 @@
|
||||
using namespace SketcherGui;
|
||||
using namespace Gui::PropertyEditor;
|
||||
|
||||
TYPESYSTEM_SOURCE(SketcherGui::PropertyConstraintListItem, Gui::PropertyEditor::PropertyItem)
|
||||
PROPERTYITEM_SOURCE(SketcherGui::PropertyConstraintListItem)
|
||||
|
||||
PropertyConstraintListItem::PropertyConstraintListItem()
|
||||
{
|
||||
|
||||
@@ -43,7 +43,7 @@ namespace SketcherGui {
|
||||
class PropertyConstraintListItem: public Gui::PropertyEditor::PropertyItem
|
||||
{
|
||||
Q_OBJECT
|
||||
TYPESYSTEM_HEADER();
|
||||
PROPERTYITEM_HEADER
|
||||
|
||||
virtual QWidget* createEditor(QWidget* parent, const QObject* receiver, const char* method) const;
|
||||
virtual void setEditorData(QWidget *editor, const QVariant& data) const;
|
||||
|
||||
Reference in New Issue
Block a user