Scribus
Open source desktop publishing at your fingertips
propertiespalette_xyz.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 PROPERTIESPALETTE_XYZ_H
8 #define PROPERTIESPALETTE_XYZ_H
9 
10 #include "ui_propertiespalette_xyzbase.h"
11 
12 #include "scribusapi.h"
13 #include "scrspinbox.h"
14 #include "linkbutton.h"
15 #include "sclistboxpixmap.h"
16 #include "scguardedptr.h"
17 
18 class BasePointWidget;
19 class NameWidget;
20 class PageItem;
21 class ScribusDoc;
22 class Selection;
23 class ScribusMainWindow;
24 class UserActionSniffer;
25 
26 class SCRIBUS_API PropertiesPalette_XYZ : public QWidget, public Ui::PropertiesPalette_XYZBase
27 {
28  Q_OBJECT
29 
30 public:
31  PropertiesPalette_XYZ(QWidget* parent);
33 
34  virtual void changeEvent(QEvent *e);
35 
37  bool userActionOn(); // not yet implemented!!! This is needed badly.
38  // When user releases the mouse button or arrow key, changes must be checked
39  // and if in ScribusView a groupTransaction has been started it must be also
40  // commmited
41 
42  void setLineMode(int lineMode);
43 
44 private:
45 
46  PageItem* currentItemFromSelection();
47 
48 public slots:
49  void setMainWindow(ScribusMainWindow *mw);
50 
51  void setDoc(ScribusDoc *d);
52  void setCurrentItem(PageItem *i);
53  void unsetDoc();
54  void unsetItem();
55 
56  void languageChange();
57  void unitChange();
58 
59  void showXY(double x, double y);
60  void showWH(double x, double y);
61  void showRotation(double r);
62  void showLocked(bool);
63  void showSizeLocked(bool);
64  void showPrintingEnabled(bool);
65  void showFlippedH(bool);
66  void showFlippedV(bool);
67 
68  void handleAppModeChanged(int oldMode, int mode);
69  void handleSelectionChanged();
70 
71 private slots:
72  void handleNewX();
73  void handleNewY();
74  void handleNewW();
75  void handleNewH();
76  void handleRotation();
77  void handleFlipH();
78  void handleFlipV();
79  void handleLower();
80  void handleRaise();
81  void handleFront();
82  void handleBack();
83  void handleBasePoint(int m);
84  void handleLock();
85  void handleLockSize();
86  void handlePrint();
87  void handleNewName();
88  void handleGrouping();
89  void handleUngrouping();
90 
91 protected slots:
92  //virtual void reject();
93  void spinboxStartUserAction();
94  void spinboxFinishUserAction();
95  void updateSpinBoxConstants();
96 
97 protected:
98  ScribusMainWindow *m_ScMW;
99 
100  bool m_haveDoc;
101  bool m_haveItem;
102  bool m_lineMode;
103  double m_unitRatio;
104  int m_unitIndex;
105  PageItem *m_item;
107 
108  double m_oldRotation;
109 
110  bool _userActionOn;
111  UserActionSniffer *userActionSniffer;
112  void installSniffer(ScrSpinBox *spinBox);
113 };
114 
115 #endif
Definition: propertiespalette_xyz.h:26
Definition: propertiespalette_utils.h:92
Definition: basepointwidget.h:16
This Class is the base class for your application. It sets up the main window and providing a menubar...
Definition: scribus.h:123
the Document Class
Definition: scribusdoc.h:90
ScrSpinBox is a Qt4 replacement for our old ScrSpinBox using Qt3.
Definition: scrspinbox.h:21
Definition: pageitem.h:92
Definition: propertiespalette_utils.h:107
Definition: selection.h:34