QCAD
Open Source 2D CAD
RLayer Class Reference

Represents a layer in a drawing. More...

#include <RLayer.h>

Inheritance diagram for RLayer:
RObject

Public Member Functions

virtual RLayerclone () const
 
RColor getColor () const
 
RLinetype::Id getLinetypeId () const
 
RLineweight::Lineweight getLineweight () const
 
QString getName () const
 
virtual QPair< QVariant, RPropertyAttributesgetProperty (RPropertyTypeId &propertyTypeId, bool humanReadable=false, bool noAttributes=false)
 
bool isFrozen () const
 
bool isLocked () const
 
virtual bool isSelectedForPropertyEditing ()
 
 RLayer ()
 
 RLayer (RDocument *document, const QString &name, bool frozen=false, bool locked=false, const RColor &color=Qt::black, RLinetype::Id linetype=RLinetype::INVALID_ID, RLineweight::Lineweight lineweight=RLineweight::Weight000)
 
 RLayer (const RLayer &other)
 
void setColor (const RColor &c)
 
void setFrozen (bool on)
 
void setLinetypeId (RLinetype::Id lt)
 
void setLineweight (RLineweight::Lineweight lw)
 
void setLocked (bool on)
 
void setName (const QString &n)
 
virtual bool setProperty (RPropertyTypeId propertyTypeId, const QVariant &value, RTransaction *transaction=NULL)
 Sets the given property to the given value. More...
 
virtual ~RLayer ()
 
- Public Member Functions inherited from RObject
void dump ()
 
virtual int getComplexity () const
 
QMap< QString, QVariantMap > getCustomProperties () const
 
QVariant getCustomProperty (const QString &title, const QString &key, const QVariant &defaultValue=RDEFAULT_QVARIANT)
 
QStringList getCustomPropertyKeys (const QString &title) const
 
QStringList getCustomPropertyTitles () const
 
virtual QSet< RPropertyTypeIdgetCustomPropertyTypeIds () const
 
RDocumentgetDocument ()
 
const RDocumentgetDocument () const
 
RObject::Handle getHandle () const
 
RObject::Id getId () const
 
virtual QSet< RPropertyTypeIdgetPropertyTypeIds () const
 
virtual bool hasPropertyType (RPropertyTypeId propertyTypeId)
 
bool isProtected () const
 
bool isUndone () const
 
void removeCustomProperty (const QString &title, const QString &key)
 Removes the custom property with the given name. More...
 
 RObject (RDocument *document=NULL, Id id=INVALID_ID)
 
void setCustomProperty (const QString &title, const QString &key, const QVariant &value)
 Sets a custom property with the given name. More...
 
void setDocument (RDocument *document)
 
void setProtected (bool on)
 
virtual void setUndone (bool on)
 
virtual ~RObject ()
 

Static Public Member Functions

static void init ()
 
- Static Public Member Functions inherited from RObject
static void init ()
 
template<class T >
static bool setMember (T &variable, const QVariant &value, bool condition=true)
 

Static Public Attributes

static RPropertyTypeId PropertyColor
 
static RPropertyTypeId PropertyFrozen
 
static RPropertyTypeId PropertyLinetype
 
static RPropertyTypeId PropertyLineweight
 
static RPropertyTypeId PropertyLocked
 
static RPropertyTypeId PropertyName
 
static RPropertyTypeId PropertyProtected
 Copyright (c) 2011-2015 by Andrew Mustun. More...
 
- Static Public Attributes inherited from RObject
static const Handle INVALID_HANDLE = -1
 
static const Id INVALID_ID = -1
 Copyright (c) 2011-2015 by Andrew Mustun. More...
 
static RPropertyTypeId PropertyCustom
 
static RPropertyTypeId PropertyHandle
 
static RPropertyTypeId PropertyProtected
 

Private Attributes

RColor color
 
bool frozen
 
RLinetype::Id linetype
 
RLineweight::Lineweight lineweight
 
bool locked
 
QString name
 

Additional Inherited Members

- Public Types inherited from RObject
typedef int Handle
 
typedef int Id
 
enum  XYZ { X, Y, Z }
 
- Protected Member Functions inherited from RObject
virtual void print (QDebug dbg) const
 Stream operator for QDebug. More...
 
void setHandle (RObject::Handle h)
 
void setId (RObject::Id id)
 
- Static Protected Member Functions inherited from RObject
static bool setMember (QString &variable, const QVariant &value, bool condition=true)
 Sets the given property. More...
 
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. More...
 
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. More...
 
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. More...
 
static bool setMember (QList< double > &variable, const QVariant &value, bool condition)
 
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 in a drawing.

Scriptable:
This class is available in script environments.
Shared Pointer Support:
Objects can be used in QSharedPointer.

Constructor & Destructor Documentation

RLayer::RLayer ( )
RLayer::RLayer ( RDocument document,
const QString &  name,
bool  frozen = false,
bool  locked = false,
const RColor color = Qt::black,
RLinetype::Id  linetype = RLinetype::INVALID_ID,
RLineweight::Lineweight  lineweight = RLineweight::Weight000 
)
RLayer::RLayer ( const RLayer other)
RLayer::~RLayer ( )
virtual

Member Function Documentation

RLayer * RLayer::clone ( ) const
virtual

Implements RObject.

RColor RLayer::getColor ( ) const
inline
RLinetype::Id RLayer::getLinetypeId ( ) const
inline
RLineweight::Lineweight RLayer::getLineweight ( ) const
inline
QString RLayer::getName ( ) const
inline
QPair< QVariant, RPropertyAttributes > RLayer::getProperty ( RPropertyTypeId propertyTypeId,
bool  humanReadable = false,
bool  noAttributes = 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.

void RLayer::init ( )
static
bool RLayer::isFrozen ( ) const
inline
bool RLayer::isLocked ( ) const
inline
bool RLayer::isSelectedForPropertyEditing ( )
virtual
Returns
True if this object is selected for editing. This means that the properties of this object should for example be shown in a property editor.

Implements RObject.

void RLayer::setColor ( const RColor c)
inline
void RLayer::setFrozen ( bool  on)
inline
void RLayer::setLinetypeId ( RLinetype::Id  lt)
inline
void RLayer::setLineweight ( RLineweight::Lineweight  lw)
inline
void RLayer::setLocked ( bool  on)
inline
void RLayer::setName ( const QString &  n)
bool RLayer::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

RColor RLayer::color
private
bool RLayer::frozen
private
RLinetype::Id RLayer::linetype
private
RLineweight::Lineweight RLayer::lineweight
private
bool RLayer::locked
private
QString RLayer::name
private
RPropertyTypeId RLayer::PropertyColor
static
RPropertyTypeId RLayer::PropertyFrozen
static
RPropertyTypeId RLayer::PropertyLinetype
static
RPropertyTypeId RLayer::PropertyLineweight
static
RPropertyTypeId RLayer::PropertyLocked
static
RPropertyTypeId RLayer::PropertyName
static
RPropertyTypeId RLayer::PropertyProtected
static

Copyright (c) 2011-2015 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.


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