QCAD
Open Source 2D CAD
RLinetype Class Reference

Represents a linetype in a drawing. More...

#include <RLinetype.h>

Inheritance diagram for RLinetype:
RObject

Public Member Functions

virtual RLinetypeclone () const
 
QString getDescription () const
 
QString getLabel () const
 
QString getName () const
 
RLinetypePattern getPattern () const
 
QString getPatternString () const
 
virtual QPair< QVariant, RPropertyAttributesgetProperty (RPropertyTypeId &propertyTypeId, bool humanReadable=false, bool noAttributes=false)
 
bool isMetric () const
 
virtual bool isSelectedForPropertyEditing ()
 
bool isValid () const
 
bool operator!= (const RLinetype &linetype) const
 
bool operator< (const RLinetype &linetype) const
 
bool operator== (const RLinetype &linetype) const
 
virtual void print (QDebug dbg) const
 Stream operator for QDebug. More...
 
 RLinetype (RDocument *document=NULL)
 
 RLinetype (RDocument *document, const RLinetypePattern &pattern)
 
void setDescription (const QString &d)
 
void setMetric (bool on)
 
void setName (const QString &n)
 
void setPattern (const RLinetypePattern &p)
 
void setPatternString (const QString &s)
 
virtual bool setProperty (RPropertyTypeId propertyTypeId, const QVariant &value, RTransaction *transaction=NULL)
 Sets the given property to the given value. More...
 
virtual ~RLinetype ()
 
- 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 PropertyDescription
 
static RPropertyTypeId PropertyMetric
 
static RPropertyTypeId PropertyName
 Copyright (c) 2011-2015 by Andrew Mustun. More...
 
static RPropertyTypeId PropertyPatternString
 
- 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

RLinetypePattern pattern
 

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
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 linetype in a drawing.

A linetype is an object (RObject). A drawing contains and owns a set of linetypes.

Scriptable:
This class is available in script environments.
Shared Pointer Support:
Objects can be used in QSharedPointer.
Copyable:
Objects are cleaned up automatically by the garbage collector of the script engine.

Constructor & Destructor Documentation

RLinetype::RLinetype ( RDocument document = NULL)
RLinetype::RLinetype ( RDocument document,
const RLinetypePattern pattern 
)
RLinetype::~RLinetype ( )
virtual

Member Function Documentation

virtual RLinetype* RLinetype::clone ( ) const
inlinevirtual

Implements RObject.

QString RLinetype::getDescription ( ) const
inline
QString RLinetype::getLabel ( ) const
inline
QString RLinetype::getName ( ) const
inline
RLinetypePattern RLinetype::getPattern ( ) const
QString RLinetype::getPatternString ( ) const
inline
QPair< QVariant, RPropertyAttributes > RLinetype::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 RLinetype::init ( )
static
bool RLinetype::isMetric ( ) const
inline
bool RLinetype::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.

bool RLinetype::isValid ( ) const
bool RLinetype::operator!= ( const RLinetype linetype) const
bool RLinetype::operator< ( const RLinetype linetype) const
bool RLinetype::operator== ( const RLinetype linetype) const
void RLinetype::print ( QDebug  dbg) const
virtual

Stream operator for QDebug.

Reimplemented from RObject.

void RLinetype::setDescription ( const QString &  d)
inline
void RLinetype::setMetric ( bool  on)
inline
void RLinetype::setName ( const QString &  n)
inline
void RLinetype::setPattern ( const RLinetypePattern p)
void RLinetype::setPatternString ( const QString &  s)
inline
bool RLinetype::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

RLinetypePattern RLinetype::pattern
private
RPropertyTypeId RLinetype::PropertyDescription
static
RPropertyTypeId RLinetype::PropertyMetric
static
RPropertyTypeId RLinetype::PropertyName
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.

RPropertyTypeId RLinetype::PropertyPatternString
static

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