Scribus
Open source desktop publishing at your fingertips
gradientpreview.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  gradienteditor - description
9  -------------------
10  begin : Mit Mai 26 2004
11  copyright : (C) 2004 by Franz Schmid
12  email : Franz.Schmid@altmuehlnet.de
13  ***************************************************************************/
14 
15 /***************************************************************************
16  * *
17  * This program is free software; you can redistribute it and/or modify *
18  * it under the terms of the GNU General Public License as published by *
19  * the Free Software Foundation; either version 2 of the License, or *
20  * (at your option) any later version. *
21  * *
22  ***************************************************************************/
23 
24 #ifndef GRADIENTPREVIEW_H
25 #define GRADIENTPREVIEW_H
26 
27 #include <QList>
28 #include <QFrame>
29 #include <QPaintEvent>
30 #include <QMouseEvent>
31 #include <QKeyEvent>
32 #include <QVBoxLayout>
33 #include <QHBoxLayout>
34 
35 class QEvent;
36 
37 #include "scribusapi.h"
38 #include "vgradient.h"
39 
40 class SCRIBUS_API GradientPreview : public QFrame
41 {
42  Q_OBJECT
43 
44 public:
45  GradientPreview(QWidget *pa);
46  ~GradientPreview() {};
47  void paintEvent(QPaintEvent *e);
48  void keyPressEvent(QKeyEvent *);
49  void mousePressEvent(QMouseEvent *m);
50  void mouseReleaseEvent(QMouseEvent *);
51  void mouseMoveEvent(QMouseEvent *m);
52  void leaveEvent(QEvent*);
53  void enterEvent(QEvent*);
54  void updateDisplay();
55  void setActColor(QColor c, QString n, int s);
56  void setActTrans(double t);
57  void setActStep(double t);
58  void setGradient(const VGradient& gradient);
59  void setGradientEditable(bool val);
60 
61  const VGradient& gradient() { return fill_gradient; }
62 
63  QList<int> StopM;
64  bool Mpressed;
65  bool outside;
66  bool onlyselect;
67  bool isEditable;
68  int ActStop;
69  int contextStop;
70  QPoint mPos;
71 
72 private:
73 
74  VGradient fill_gradient;
75 
76 private slots:
77  void addStop();
78  void removeStop();
79 
80 signals:
81  void selectedColor(QString, int);
82  void selectedStop(VColorStop*);
83  void currTrans(double);
84  void currStep(double);
85  void gradientChanged();
86 };
87 #endif
Definition: vgradient.h:36
Definition: vgradient.h:78
Definition: gradientpreview.h:40