QCAD
Open Source 2D CAD
Loading...
Searching...
No Matches
RLayerState Class Reference

Represents a layer state (state of list of layers) in a drawing. More...

#include <RLayerState.h>

Inheritance diagram for RLayerState:
RObject

Public Member Functions

void addLayer (QSharedPointer< RLayer > layer)
 
virtual QSharedPointer< RObjectclone () const
 
QSharedPointer< RLayerStatecloneToLayerState () const
 
QString getCurrentLayerName () const
 
QString getDescription () const
 
QSharedPointer< RLayergetLayer (const QString &layerName) const
 
QStringList getLayerNames () const
 
QList< QSharedPointer< RLayer > > getLayers () const
 
QString getName () const
 
virtual QPair< QVariant, RPropertyAttributesgetProperty (RPropertyTypeId &propertyTypeId, bool humanReadable=false, bool noAttributes=false, bool showOnRequest=false)
 
virtual RS::EntityType getType () const
 
virtual bool mustAlwaysClone () const
 
 RLayerState ()
 
 RLayerState (RDocument *document, const QString &name)
 
void setCurrentLayerName (const QString &l)
 
void setDescription (const QString &d)
 
void setName (const QString &n)
 
virtual bool setProperty (RPropertyTypeId propertyTypeId, const QVariant &value, RTransaction *transaction=NULL)
 Sets the given property to the given value.
 
virtual ~RLayerState ()
 
- Public Member Functions inherited from RObject
void copyCustomPropertiesFrom (const RObject *other, const QString &title=RDEFAULT_QSTRING, bool overwrite=false, const QStringList &ignoreList=RDEFAULT_QSTRINGLIST, const QString &mapKeyFrom=RDEFAULT_QSTRING, const QString &mapKeyTo=RDEFAULT_QSTRING)
 Copies all custom properties from the given object.
 
void dump () const
 
virtual int getComplexity () const
 
virtual bool getCustomBoolProperty (const QString &title, const QString &key, bool defaultValue) const
 
virtual double getCustomDoubleProperty (const QString &title, const QString &key, double defaultValue) const
 
virtual int getCustomIntProperty (const QString &title, const QString &key, int defaultValue) const
 
QMap< QString, QVariantMap > getCustomProperties () const
 
virtual QVariant getCustomProperty (const QString &title, const QString &key, const QVariant &defaultValue=RDEFAULT_QVARIANT) const
 
QStringList getCustomPropertyKeys (const QString &title) const
 
QStringList getCustomPropertyTitles () const
 
virtual QSet< RPropertyTypeIdgetCustomPropertyTypeIds () const
 
RDocumentgetDocument ()
 
const RDocumentgetDocument () const
 
bool getFlag (int flag) const
 
RObject::Handle getHandle () const
 
RObject::Id getId () const
 
virtual QSet< RPropertyTypeIdgetPropertyTypeIds (RPropertyAttributes::Option option=RPropertyAttributes::NoOptions) const
 
bool hasCustomProperties () const
 
bool hasCustomProperty (const QString &title, const QRegularExpression &key) const
 
bool hasCustomProperty (const QString &title, const QString &key) const
 
virtual bool hasPropertyType (RPropertyTypeId propertyTypeId)
 
bool isInvisible () const
 
virtual bool isOfType (RS::EntityType t) const
 Override to indicate that this entity is of a certain type, e.g.
 
bool isProtected () const
 
virtual bool isSelected () const
 
bool isUndone () const
 
virtual bool isWorkingSet () const
 
virtual void removeCustomProperty (const QString &title, const QString &key)
 Removes the custom property with the given name.
 
 RObject (const RObject &other)
 
 RObject (RDocument *document=NULL)
 
virtual void setAutoUpdatesBlocked (bool on)
 
virtual void setCustomProperties (const RQMapQStringQString &properties)
 
virtual void setCustomProperty (const QString &title, const QString &key, const QVariant &value)
 Sets a custom property with the given name.
 
void setDocument (RDocument *document)
 
void setFlag (int flag, bool on=true)
 
void setInvisible (bool on)
 
void setProtected (bool on)
 
virtual void setSelected (bool on)
 
virtual void setWorkingSet (bool on)
 
virtual bool validate ()
 
virtual ~RObject ()
 

Static Public Member Functions

static RS::EntityType getRtti ()
 
static void init ()
 
- Static Public Member Functions inherited from RObject
static RPropertyAttributes getCustomPropertyAttributes (const QString &title, const QString &key)
 
static RS::EntityType getRtti ()
 
static void init ()
 
static void setCustomPropertyAttributes (const QString &title, const QString &key, const RPropertyAttributes &att)
 Set attributes (read-only, invisible, ...) for the given custom property.
 
template<class T >
static bool setMember (T &variable, const QVariant &value, bool condition=true)
 

Static Public Attributes

static RPropertyTypeId PropertyCustom
 Copyright (c) 2019 by Andrew Mustun.
 
static RPropertyTypeId PropertyHandle
 
static RPropertyTypeId PropertyName
 
static RPropertyTypeId PropertyProtected
 
static RPropertyTypeId PropertyType
 
- Static Public Attributes inherited from RObject
static const Handle INVALID_HANDLE = -1
 
static const Id INVALID_ID = -1
 Copyright (c) 2011-2018 by Andrew Mustun.
 
static RPropertyTypeId PropertyCustom
 
static RPropertyTypeId PropertyHandle
 
static RPropertyTypeId PropertyInvisible
 
static RPropertyTypeId PropertyProtected
 
static RPropertyTypeId PropertySelected
 
static RPropertyTypeId PropertyType
 
static RPropertyTypeId PropertyWorkingSet
 

Private Attributes

QString currentLayer
 
QString description
 
QList< QSharedPointer< RLayer > > layers
 
QString name
 

Additional Inherited Members

- Public Types inherited from RObject
typedef int Handle
 
typedef int Id
 
enum  ObjectFlag {
  NoFlags = 0x000 , Undone = 0x001 , Protect = 0x002 , Selected = 0x004 ,
  Invisible = 0x008 , WorkingSet = 0x010
}
 
enum  XYZ { X , Y , Z }
 
- Protected Member Functions inherited from RObject
virtual void print (QDebug dbg) const
 Stream operator for QDebug.
 
void setHandle (RObject::Handle h)
 
void setId (RObject::Id id)
 
bool setMemberFlag (int flag, const QVariant &value, bool condition=true)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
void setUndone (bool on)
 
- Static Protected Member Functions inherited from RObject
static bool setMember (bool &variable, const QVariant &value, bool condition=true)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
static bool setMember (double &variable, const QVariant &value, bool condition=true)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
static bool setMember (int &variable, const QVariant &value, bool condition=true)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
static bool setMember (QList< double > &variable, const QVariant &value, bool condition)
 
static bool setMember (QList< int > &variable, const QVariant &value, bool condition)
 
static bool setMember (QString &variable, const QVariant &value, bool condition=true)
 Sets the given property.
 
static bool setMemberVector (QList< RVector > &variable, const QVariant &value, RObject::XYZ xyz)
 
static bool setMemberX (QList< RVector > &variable, const QVariant &value, bool condition=true)
 
static bool setMemberY (QList< RVector > &variable, const QVariant &value, bool condition=true)
 
static bool setMemberZ (QList< RVector > &variable, const QVariant &value, bool condition=true)
 

Detailed Description

Represents a layer state (state of list of layers) in a drawing.

Scriptable:\nThis class is available in script environments.\n
Shared Pointer Support:\nObjects can be used in QSharedPointer.\n

Constructor & Destructor Documentation

◆ RLayerState() [1/2]

RLayerState::RLayerState ( )

◆ RLayerState() [2/2]

RLayerState::RLayerState ( RDocument * document,
const QString & name )

◆ ~RLayerState()

RLayerState::~RLayerState ( )
virtual

Member Function Documentation

◆ addLayer()

void RLayerState::addLayer ( QSharedPointer< RLayer > layer)

◆ clone()

virtual QSharedPointer< RObject > RLayerState::clone ( ) const
inlinevirtual

Implements RObject.

◆ cloneToLayerState()

QSharedPointer< RLayerState > RLayerState::cloneToLayerState ( ) const
inline

◆ getCurrentLayerName()

QString RLayerState::getCurrentLayerName ( ) const
inline

◆ getDescription()

QString RLayerState::getDescription ( ) const
inline

◆ getLayer()

QSharedPointer< RLayer > RLayerState::getLayer ( const QString & layerName) const

◆ getLayerNames()

QStringList RLayerState::getLayerNames ( ) const

◆ getLayers()

QList< QSharedPointer< RLayer > > RLayerState::getLayers ( ) const

◆ getName()

QString RLayerState::getName ( ) const
inline

◆ getProperty()

QPair< QVariant, RPropertyAttributes > RLayerState::getProperty ( RPropertyTypeId & propertyTypeId,
bool humanReadable = false,
bool noAttributes = false,
bool showOnRequest = false )
virtual
Returns
The value and attributes of the given property or an invalid property if this property owner has no property with the given ID.

Reimplemented from RObject.

◆ getRtti()

static RS::EntityType RLayerState::getRtti ( )
inlinestatic

◆ getType()

virtual RS::EntityType RLayerState::getType ( ) const
inlinevirtual
Returns
The unique entity type, usually the same as RTTI, different for custom entities.

Reimplemented from RObject.

◆ init()

void RLayerState::init ( )
static

◆ mustAlwaysClone()

virtual bool RLayerState::mustAlwaysClone ( ) const
inlinevirtual
Returns
True to always clone object instead of saving diff when object changes. This can be used for complex object types which cannot be modified using properties.

Reimplemented from RObject.

◆ setCurrentLayerName()

void RLayerState::setCurrentLayerName ( const QString & l)
inline

◆ setDescription()

void RLayerState::setDescription ( const QString & d)
inline

◆ setName()

void RLayerState::setName ( const QString & n)
inline

◆ setProperty()

bool RLayerState::setProperty ( RPropertyTypeId propertyTypeId,
const QVariant & value,
RTransaction * transaction = NULL )
virtual

Sets the given property to the given value.

If this property owner does not know a property with that ID, it is up to the property owner what happens. The property might be added into a list of dynamic properties or dropped.

Returns
True if the property owner was modified in any way, false otherwise.

Reimplemented from RObject.

Member Data Documentation

◆ currentLayer

QString RLayerState::currentLayer
private

◆ description

QString RLayerState::description
private

◆ layers

QList<QSharedPointer<RLayer> > RLayerState::layers
private

◆ name

QString RLayerState::name
private

◆ PropertyCustom

RPropertyTypeId RLayerState::PropertyCustom
static

Copyright (c) 2019 by Andrew Mustun.

All rights reserved.

This file is part of the QCAD project.

QCAD is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

QCAD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with QCAD.

◆ PropertyHandle

RPropertyTypeId RLayerState::PropertyHandle
static

◆ PropertyName

RPropertyTypeId RLayerState::PropertyName
static

◆ PropertyProtected

RPropertyTypeId RLayerState::PropertyProtected
static

◆ PropertyType

RPropertyTypeId RLayerState::PropertyType
static

The documentation for this class was generated from the following files: