Subversion Repositories Scribus

Rev

Rev 24559 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
4430 cbradney 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
*/
3 paul 7
#ifndef LAYERPALETTE_H
8
#define LAYERPALETTE_H
9
 
9803 fschmid 10
#include <QList>
3 paul 11
 
2969 craig 12
#include "scribusapi.h"
17017 fschmid 13
#include "ui/scdockpalette.h"
8582 jghali 14
#include "scribusstructs.h"
1525 cbradney 15
 
10859 cbradney 16
class CheckBox;
23354 jghali 17
class QComboBox;
10859 cbradney 18
class QEvent;
9852 fschmid 19
class QHBoxLayout;
10859 cbradney 20
class QHeaderView;
5373 fschmid 21
class QLabel;
9852 fschmid 22
class QTableWidget;
23
class QTableWidgetItem;
10859 cbradney 24
class QToolButton;
25
class QVBoxLayout;
24560 jghali 26
class ScLayers;
17420 fschmid 27
class ScrSpinBox;
5781 cbradney 28
class ScribusDoc;
766 cbradney 29
 
17017 fschmid 30
class SCRIBUS_API LayerPalette : public ScDockPalette
358 Franz 31
{
32
        Q_OBJECT
3 paul 33
 
34
public:
358 Franz 35
        LayerPalette(QWidget* parent);
36
        ~LayerPalette() {};
3 paul 37
 
24560 jghali 38
        void installEventFilter(QObject *);
39
 
5781 cbradney 40
        void setDoc(ScribusDoc* doc);
168 Franz 41
        void rebuildList();
3 paul 42
 
43
public slots:
168 Franz 44
        void addLayer();
6290 fschmid 45
        void dupLayer();
168 Franz 46
        void removeLayer();
47
        void upLayer();
48
        void downLayer();
49
        void changeName(int row, int col);
50
        void visibleLayer();
51
        void printLayer();
4832 fschmid 52
        void lockLayer();
5359 fschmid 53
        void flowToggleLayer();
5572 fschmid 54
        void outlineToggleLayer();
17454 fschmid 55
        void selectToggleLayer();
11692 fschmid 56
        void toggleAllfromHeader(int index);
5572 fschmid 57
        void markLayer();
5373 fschmid 58
        void changeOpacity();
5375 fschmid 59
        void changeBlendMode(int blend);
13023 fschmid 60
        void setActiveLayer(int row, int col);
23175 jghali 61
        void clearContent();
13875 jghali 62
        void markActiveLayer(int layerID=-1);
23474 jghali 63
        void iconSetChange();
2190 cbradney 64
        void languageChange();
3 paul 65
 
66
signals:
168 Franz 67
        void LayerChanged();
3 paul 68
 
69
protected:
24048 jghali 70
        QWidget* containerWidget { nullptr };
71
        ScribusDoc* m_Doc { nullptr };
24560 jghali 72
        QTableWidget* Table { nullptr };
24048 jghali 73
        QVBoxLayout* LayerPaletteLayout { nullptr };
74
        QHBoxLayout* Layout1 { nullptr };
75
        QHBoxLayout* layout1 { nullptr };
76
        QLabel* textLabel1 { nullptr };
77
        QComboBox* blendMode { nullptr };
78
        QLabel* textLabel2 { nullptr };
79
        ScrSpinBox* opacitySpinBox { nullptr };
80
        QHeaderView* Header { nullptr };
24559 craig 81
        QToolButton* newLayerButton { nullptr };
82
        QToolButton* duplicateLayerButton { nullptr };
83
        QToolButton* deleteLayerButton { nullptr };
84
        QToolButton* raiseLayerButton { nullptr };
85
        QToolButton* lowerLayerButton { nullptr };
24560 jghali 86
 
24048 jghali 87
        ScLayers *layers { nullptr };
88
 
89
        void changeEvent(QEvent *e) override;
3 paul 90
};
91
 
92
#endif // LAYERPALETTE_H