blob: 640ea3068a8e779e00b04671efdd2950dcf42a65 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
|
/*
For general Scribus (>=1.3.2) copyright and licensing information please refer
to the COPYING file provided with the program. Following this notice may exist
a copyright and/or license notice that predates the release of Scribus 1.3.2
for which a new license (GPL+exception) is in place.
*/
#ifndef SMLINESTYLE_H
#define SMLINESTYLE_H
class QEvent;
#include "scribusstructs.h"
#include "styleitem.h"
class ScribusDoc;
class SMLineStyleWidget;
class SMLineStyle : public StyleItem
{
Q_OBJECT
public:
SMLineStyle();
~SMLineStyle();
virtual void changeEvent(QEvent *e);
QTabWidget* widget();
QString typeNamePlural();
QString typeNameSingular();
void setCurrentDoc(ScribusDoc *doc);
QList<StyleName> styles(bool reloadFromDoc = true);
void reload();
void selected(const QStringList &styleNames);
QString fromSelection() const;
void toSelection(const QString &styleName) const;
QString newStyle();
QString newStyle(const QString &fromStyle);
void apply();
bool isDefaultStyle(const QString &stylename) const;
void setDefaultStyle(bool ids);
QString shortcut(const QString &stylename) const;
void setShortcut(const QString &shortcut);
void deleteStyles(const QList<RemoveItem> &removeList);
void nameChanged(const QString &newName);
QString getUniqueName(const QString &name);
void languageChange();
void unitChange();
signals:
void deleteDone();
void selectionDirty();
private:
ScribusDoc *doc_;
SMLineStyleWidget *widget_;
QTabWidget *twidget_;
QMap<QString, multiLine> tmpLines;
bool selectionIsDirty_;
double unitRatio_;
QMap<QString, multiLine*> selection_;
QList<RemoveItem> deleted_;
int currentLine_;
void setSelection(const QString& styleName);
void setMultiSelection(const QStringList& styles);
void setupConnections();
void removeConnections();
void updateSList();
void updatePreview();
void resort();
void rebuildList();
QColor calcFarbe(const QString &name, int shade);
private slots:
void slotCurrentLineChanged(int i);
void slotLineStyle(int i);
void slotSetEnd(int i);
void slotSetJoin(int i);
void slotColor(const QString &s);
void slotShade(int i);
void slotLineWidth();
void slotAddLine();
void slotDeleteLine();
// FIXME make line styles subclass of Style and remove this hack
// ugly hack which will be removed once all styles are subclassed from Style
friend class StyleManager;
};
#endif
|