diff options
Diffstat (limited to 'src/drawparts/drawpart.h')
-rw-r--r-- | src/drawparts/drawpart.h | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/src/drawparts/drawpart.h b/src/drawparts/drawpart.h new file mode 100644 index 0000000..8dc9f50 --- /dev/null +++ b/src/drawparts/drawpart.h @@ -0,0 +1,68 @@ +/*************************************************************************** + * Copyright (C) 2005 by David Saxton * + * david@bluehaze.org * + * * + * This program 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 2 of the License, or * + * (at your option) any later version. * + ***************************************************************************/ + +#ifndef DRAWPART_H +#define DRAWPART_H + +#include <item.h> + +class ICNDocument; +class ItemDocument; +class LibraryItem; +class RectangularOverlay; + +/** +@author David Saxton +*/ +class DrawPart : public Item +{ + public: + enum DrawAction + { + // Note: values are used for popup menu + da_text = 0, + da_line = 1, + da_arrow = 2, + da_rectangle = 3, + da_ellipse = 4 + }; + + DrawPart( ItemDocument *itemDocument, bool newItem, const char *id ); + virtual ~DrawPart(); + + int rtti() const; + + virtual bool canResize() const { return true; } + + virtual Variant * createProperty( const QString & id, Variant::Type::Value type ); + + Qt::PenStyle getDataPenStyle( const QString & id ); + Qt::PenCapStyle getDataPenCapStyle( const QString & id ); + + void setDataPenStyle( const QString & id, Qt::PenStyle value ); + void setDataPenCapStyle( const QString & id, Qt::PenCapStyle value ); + + virtual ItemData itemData() const; + virtual void restoreFromItemData( const ItemData &itemData ); + + // Convention for following functions: name is i18n'd name of style, id is the english one + + static QString penStyleToID( Qt::PenStyle style ); + static Qt::PenStyle idToPenStyle( const QString & id ); + static QString penCapStyleToID( Qt::PenCapStyle style ); + static Qt::PenCapStyle idToPenCapStyle( const QString & id ); + + static QString penStyleToName( Qt::PenStyle style ); + static Qt::PenStyle nameToPenStyle( const QString & name ); + static QString penCapStyleToName( Qt::PenCapStyle style ); + static Qt::PenCapStyle nameToPenCapStyle( const QString & name ); +}; + +#endif |