Scribus
Open source desktop publishing at your fingertips
pageitem_arc.h
1 /*
2 For general Scribus (>=1.3.2) copyright and licensing information please refer
3 to the COPYING file provided with the program. Following this notice may exist
4 a copyright and/or license notice that predates the release of Scribus 1.3.2
5 for which a new license (GPL+exception) is in place.
6 */
7 /***************************************************************************
8  pageitem.h - description
9  -------------------
10  copyright : Scribus Team
11  ***************************************************************************/
12 
13 /***************************************************************************
14  * *
15  * This program is free software; you can redistribute it and/or modify *
16  * it under the terms of the GNU General Public License as published by *
17  * the Free Software Foundation; either version 2 of the License, or *
18  * (at your option) any later version. *
19  * *
20  ***************************************************************************/
21 
22 #ifndef PAGEITEM_ARC_H
23 #define PAGEITEM_ARC_H
24 
25 #include <QString>
26 #include <QRectF>
27 
28 #include "scribusapi.h"
29 #include "pageitem.h"
30 class ScPainter;
31 class ScribusDoc;
32 
33 
34 class SCRIBUS_API PageItem_Arc : public PageItem
35 {
36  Q_OBJECT
37 
38 public:
39  PageItem_Arc(ScribusDoc *pa, double x, double y, double w, double h, double w2, QString fill, QString outline);
40  PageItem_Arc(const PageItem & p) : PageItem(p) {}
41  ~PageItem_Arc() {};
42 
43  virtual PageItem_Arc * asArc() { return this; }
44  virtual bool isArc() const { return true; }
45  virtual ItemType realItemType() const { return PageItem::Arc; }
46  virtual void applicableActions(QStringList& actionList);
47  virtual QString infoDescription();
48  void recalcPath();
49  double arcHeight;
50  double arcWidth;
51  double arcStartAngle;
52  double arcSweepAngle;
53 
54 protected:
55  virtual void DrawObj_Item(ScPainter *p, QRectF e);
56 
57 };
58 
59 #endif
double arcStartAngle
width of the circumfering ellipse
Definition: pageitem_arc.h:51
virtual bool isArc() const
Return true if Arc item, otherwise false.
Definition: pageitem_arc.h:44
the Document Class
Definition: scribusdoc.h:90
Definition: scpainter.h:33
virtual PageItem_Arc * asArc()
Return self if Arc item, otherwise null.
Definition: pageitem_arc.h:43
double arcSweepAngle
angle where the arc starts
Definition: pageitem_arc.h:52
virtual ItemType realItemType() const
Get the subclass item type.
Definition: pageitem_arc.h:45
Definition: pageitem_arc.h:34
ItemType
Item Type.
Definition: pageitem.h:174
Definition: pageitem.h:92
double arcWidth
height of the circumfering ellipse
Definition: pageitem_arc.h:50