46 lines
1.0 KiB
C
46 lines
1.0 KiB
C
|
/******************************************************************************
|
||
|
* QSkinny - Copyright (C) 2016 Uwe Rathmann
|
||
|
* This file may be used under the terms of the 3-clause BSD License
|
||
|
*****************************************************************************/
|
||
|
|
||
|
#pragma once
|
||
|
|
||
|
#include "ShapeItem.h"
|
||
|
|
||
|
class GeometricShape : public ShapeItem
|
||
|
{
|
||
|
Q_OBJECT
|
||
|
|
||
|
Q_PROPERTY( Figure figure READ figure WRITE setFigure )
|
||
|
Q_PROPERTY( QColor border READ border WRITE setBorder )
|
||
|
|
||
|
public:
|
||
|
enum Figure
|
||
|
{
|
||
|
Rectangle,
|
||
|
Diamond,
|
||
|
TriangleDown,
|
||
|
TriangleUp,
|
||
|
TriangleLeft,
|
||
|
TriangleRight,
|
||
|
Ellipse,
|
||
|
Ring,
|
||
|
Star,
|
||
|
Hexagon,
|
||
|
Arc
|
||
|
};
|
||
|
Q_ENUM( Figure );
|
||
|
|
||
|
GeometricShape( QQuickItem* parent = nullptr );
|
||
|
GeometricShape( Figure figure, QQuickItem* parent = nullptr );
|
||
|
|
||
|
void setFigure( Figure );
|
||
|
Figure figure() const;
|
||
|
|
||
|
void setBorder( const QColor& );
|
||
|
QColor border() const;
|
||
|
|
||
|
private:
|
||
|
Figure m_figure = Rectangle;
|
||
|
};
|