Scribus
Open source desktop publishing at your fingertips
Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
canvasmode_editarc.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
* *
9
* This program is free software; you can redistribute it and/or modify *
10
* it under the terms of the GNU General Public License as published by *
11
* the Free Software Foundation; either version 2 of the License, or *
12
* (at your option) any later version. *
13
* *
14
***************************************************************************/
15
/***************************************************************************
16
canvasmode_editarc.h - description
17
-------------------
18
begin : Tue Jan 4 2011
19
copyright : (C) 2011 by Franz Schmid
20
email : Franz.Schmid@altmuehlnet.de
21
***************************************************************************/
22
23
#ifndef CANVAS_MODE_EDITARC_H
24
#define CANVAS_MODE_EDITARC_H
25
26
#include <QObject>
27
#include <QTime>
28
29
#include "canvasmode.h"
30
#include "fpointarray.h"
31
#include "ui/arcvectordialog.h"
32
33
class
PageItem
;
34
class
ScribusMainWindow
;
35
class
ScribusView
;
36
37
38
// This class encapsulate the old code for mouse interaction from scribusview.cpp
39
40
class
CanvasMode_EditArc
:
public
CanvasMode
41
{
42
Q_OBJECT
43
44
public
:
45
explicit
CanvasMode_EditArc
(
ScribusView
* view);
46
virtual
~
CanvasMode_EditArc
() {}
47
48
virtual
void
enterEvent(QEvent *);
49
virtual
void
leaveEvent(QEvent *);
50
51
virtual
void
activate
(
bool
);
52
virtual
void
deactivate
(
bool
);
53
virtual
void
mouseDoubleClickEvent(QMouseEvent *m);
54
virtual
void
mouseReleaseEvent(QMouseEvent *m);
55
virtual
void
mouseMoveEvent(QMouseEvent *m);
56
virtual
void
mousePressEvent(QMouseEvent *m);
57
virtual
void
drawControls
(QPainter* p);
58
void
drawControlsArc(QPainter* pp,
PageItem
* currItem);
59
60
private
:
61
62
typedef
enum
63
{
64
noPointDefined,
65
useControlStart,
66
useControlSweep,
67
useControlHeight,
68
useControlWidth
69
} eArcPoint;
70
71
inline
bool
GetItem(
PageItem
** pi);
72
73
double
Mxp, Myp;
74
ScribusMainWindow
* m_ScMW;
75
bool
m_cursorVisible;
76
bool
m_lastPosWasOverGuide;
77
QPointF startPoint;
78
QPointF endPoint;
79
QPointF centerPoint;
80
QPointF widthPoint;
81
QPointF heightPoint;
82
double
startAngle;
83
double
endAngle;
84
eArcPoint m_arcPoint;
85
ArcVectorDialog
* VectorDialog;
86
87
int
m_blockUpdateFromItem;
88
void
blockUpdateFromItem(
bool
block) {
if
(block) ++m_blockUpdateFromItem;
else
--m_blockUpdateFromItem; }
89
bool
updateFromItemBlocked() {
return
(m_blockUpdateFromItem > 0); }
90
91
public
slots:
92
void
updateFromItem();
93
94
private
slots:
95
void
endEditing(
bool
active);
96
void
endEditing();
97
void
applyValues(
double
start,
double
end,
double
height,
double
width);
98
};
99
100
101
#endif
ScribusMainWindow
This Class is the base class for your application. It sets up the main window and providing a menubar...
Definition:
scribus.h:123
CanvasMode_EditArc::deactivate
virtual void deactivate(bool)
Definition:
canvasmode_editarc.cpp:289
CanvasMode_EditArc::activate
virtual void activate(bool)
Definition:
canvasmode_editarc.cpp:154
CanvasMode
Definition:
canvasmode.h:72
CanvasMode_EditArc
Definition:
canvasmode_editarc.h:40
ArcVectorDialog
Definition:
arcvectordialog.h:40
PageItem
Definition:
pageitem.h:92
ScribusView
Definition:
scribusview.h:87
CanvasMode_EditArc::drawControls
virtual void drawControls(QPainter *p)
Definition:
canvasmode_editarc.cpp:76
scribus
canvasmode_editarc.h
Generated on Tue Sep 29 2015 09:14:55 for Scribus by
1.8.9.1