Scribus
Open source desktop publishing at your fingertips
layers.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 #ifndef LAYERPALETTE_H
8 #define LAYERPALETTE_H
9 
10 #include <QList>
11 
12 #include "scribusapi.h"
13 #include "ui/scdockpalette.h"
14 #include "scribusstructs.h"
15 #include "sclayer.h"
16 
17 class CheckBox;
18 class QEvent;
19 class QHBoxLayout;
20 class QHeaderView;
21 class QLabel;
22 class QPushButton;
23 class QTableWidget;
24 class QTableWidgetItem;
25 class QToolButton;
26 class QVBoxLayout;
27 class ScComboBox;
28 class ScrSpinBox;
29 class ScribusDoc;
30 
31 class SCRIBUS_API LayerPalette : public ScDockPalette
32 {
33  Q_OBJECT
34 
35 public:
36  LayerPalette(QWidget* parent);
37  ~LayerPalette() {};
38 
39 
40  virtual void changeEvent(QEvent *e);
41 
42  void setDoc(ScribusDoc* doc);
43  void rebuildList();
44 
45  QTableWidget* Table; //public for the event filter in scribus.cpp.. TODO
46 
47 public slots:
48  void addLayer();
49  void dupLayer();
50  void removeLayer();
51  void upLayer();
52  void downLayer();
53  void changeName(int row, int col);
54  void visibleLayer();
55  void printLayer();
56  void lockLayer();
57  void flowToggleLayer();
58  void outlineToggleLayer();
59  void selectToggleLayer();
60  void toggleAllfromHeader(int index);
61  void markLayer();
62  void changeOpacity();
63  void changeBlendMode(int blend);
64  void setActiveLayer(int row, int col);
65  void ClearInhalt();
66  void markActiveLayer(int layerID=-1);
67  void languageChange();
68 
69 signals:
70  void LayerChanged();
71  void LayerActivated(int);
72 
73 protected:
74  QWidget* containerWidget;
75  ScribusDoc* m_Doc;
76  QVBoxLayout* LayerPaletteLayout;
77  QHBoxLayout* Layout1;
78  QHBoxLayout* layout1;
79  QLabel* textLabel1;
80  ScComboBox* blendMode;
81  QLabel* textLabel2;
82  ScrSpinBox* opacitySpinBox;
83  QHeaderView* Header;
84  QPushButton* newLayerButton;
85  QPushButton* duplicateLayerButton;
86  QPushButton* deleteLayerButton;
87  QPushButton* raiseLayerButton;
88  QPushButton* lowerLayerButton;
89  ScLayers *layers;
90 };
91 
92 #endif // LAYERPALETTE_H
Definition: scdockpalette.h:38
The ScComboBox widget always uses a listbox instead of a popup, independent of any QStyle...
Definition: sccombobox.h:26
the Document Class
Definition: scribusdoc.h:90
Definition: layers.h:31
ScrSpinBox is a Qt4 replacement for our old ScrSpinBox using Qt3.
Definition: scrspinbox.h:21
Definition: sclayer.h:38