File indexing completed on 2024-04-14 03:49:26

0001 /*
0002     SPDX-FileCopyrightText: 2007 Vladimir Kuznetsov <ks.vladimir@gmail.com>
0003     SPDX-FileCopyrightText: 2014 Inge Wallin <inge@lysator.liu.se>
0004 
0005     SPDX-License-Identifier: GPL-2.0-or-later
0006 */
0007 
0008 #include "item.h"
0009 #include "objecterrors.h"
0010 
0011 
0012 namespace StepCore
0013 {
0014 
0015 STEPCORE_META_OBJECT(Item, QT_TRANSLATE_NOOP("ObjectClass", "Item"), QT_TRANSLATE_NOOP("ObjectDescription", "Item"),
0016              MetaObject::ABSTRACT, STEPCORE_SUPER_CLASS(Object),
0017         STEPCORE_PROPERTY_RW(StepCore::Color, color, QT_TRANSLATE_NOOP("PropertyName", "color"),
0018                  STEPCORE_UNITS_NULL, QT_TRANSLATE_NOOP("PropertyDescription", "Item color"), color, setColor))
0019 
0020 Item& Item::operator=(const Item& item)
0021 {
0022     Object::operator=(item);
0023 
0024     _world = item._world;
0025     _group = item._group;
0026 
0027     if(item._objectErrors) {
0028         _objectErrors = static_cast<ObjectErrors*>(
0029             item._objectErrors->metaObject()->cloneObject(*item._objectErrors) );
0030         _objectErrors->setOwner(this);
0031     } else {
0032         _objectErrors = nullptr;
0033     }
0034 
0035     _color = item._color;
0036 
0037     return *this;
0038 }
0039 
0040 ObjectErrors* Item::objectErrors()
0041 {
0042     if(!_objectErrors) _objectErrors = createObjectErrors();
0043     return _objectErrors;
0044 }
0045 
0046 
0047 
0048 } // namespace StepCore