Rev 24148 |
Rev 24611 |
Go to most recent revision |
Blame |
Compare with Previous |
Last modification |
View Log
| RSS feed
/*
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 NODEPALETTE_H
#define NODEPALETTE_H
#include <QToolTip>
#include <QCheckBox>
#include <QLabel>
#include <QPushButton>
#include <QSpinBox>
#include <QToolButton>
#include <QGroupBox>
#include <QRadioButton>
#include <QGridLayout>
#include <QVBoxLayout>
#include <QHBoxLayout>
#include <QCloseEvent>
class QEvent;
#include "scribusapi.h"
#include "fpointarray.h"
#include "scrpalettebase.h"
#include "scrspinbox.h"
class ScribusDoc;
class ScribusView;
class PageItem;
class SCRIBUS_API NodePalette : public ScrPaletteBase
{
Q_OBJECT
public:
NodePalette( QWidget* parent);
~NodePalette() {};
void setDefaults(PageItem* currItem);
QToolButton* MoveNode;
QToolButton* MoveControl;
QToolButton* AddNode;
QToolButton* DeleteNode;
QToolButton* AsymMove;
QToolButton* SymMove;
QToolButton* ResNode;
QToolButton* Res1Node;
QToolButton* PolySplit;
QToolButton* BezierClose;
QToolButton* PolyMirrorH;
QToolButton* PolyMirrorV;
QToolButton* PolyShearL;
QToolButton* PolyShearR;
QToolButton* PolyShearU;
QToolButton* PolyShearD;
QToolButton* RotateCCW;
QToolButton* RotateCW;
QToolButton* Expand;
QToolButton* Shrink;
QToolButton* Enlarge;
QToolButton* Reduce;
QCheckBox* PreviewMode;
QGroupBox* AbsMode;
QRadioButton* absToCanvas;
QRadioButton* absToPage;
QCheckBox* EditCont;
QLabel* TextLabel1;
ScrSpinBox* YSpin;
QLabel* TextLabel2;
ScrSpinBox* XSpin;
QSpinBox *RotVal;
QSpinBox *scalePercentage;
ScrSpinBox *scaleDistance;
QPushButton* ResetCont;
QPushButton* ResetContClip;
QPushButton* ResetShape2Clip;
QPushButton* editEditButton;
QPushButton* cancelEditButton;
QPushButton* resetDefaultButton;
void setDoc(ScribusDoc *dc, ScribusView *vi);
ScribusDoc* currentDocument() const;
private slots:
void MoveK();
void AddN();
void DelN();
void MovePoint();
void SetSym();
void SetAsym();
void ResetControl();
void Reset1Control();
void ResetContour();
void ResetContourToImageClip();
void ResetShapeToImageClip();
void CloseBezier();
void SplitPoly();
void MirrorH();
void MirrorV();
void doRotCCW();
void doRotCW();
void doShrink();
void doExpand();
void doReduce();
void doEnlarge();
void ShearR();
void ShearL();
void ShearU();
void ShearD();
void ToggleAbsMode();
void ToggleConMode();
void TogglePreview();
public slots:
void MoveN();
void SetXY(double x, double y);
void HaveNode(bool have, bool mov);
void IsOpen();
void PolyStatus(int typ, uint size);
void iconSetChange();
void languageChange();
void unitChange();
void EndEdit(); // allow remote close
void CancelEdit();
void ResetToEditDefaults();
protected slots:
void reject() override;
protected:
void connectSignals();
void disconnectSignals();
void changeEvent(QEvent *e) override;
void closeEvent(QCloseEvent *) override;
QVBoxLayout *vboxLayout { nullptr };
QVBoxLayout *vboxLayout1 { nullptr };
QHBoxLayout *hboxLayout { nullptr };
QGridLayout *gridLayout { nullptr };
QGridLayout *gridLayout2 { nullptr };
ScribusDoc *m_doc { nullptr };
ScribusView *m_view { nullptr };
double unitRatio;
double xPos;
double yPos;
FPointArray itemPath;
FPointArray itemContourPath;
signals:
void DocChanged();
void paletteClosed();
};
#endif // NODEPALETTE_H