summaryrefslogtreecommitdiffstats
path: root/scribus/canvasmode_legacy.h
diff options
context:
space:
mode:
authorcraig <craig@11d20701-8431-0410-a711-e3c959e3b870>2012-01-01 11:40:09 +0000
committercraig <craig@11d20701-8431-0410-a711-e3c959e3b870>2012-01-01 11:40:09 +0000
commit7ed83b6c6666eb8b6b104c211ae7e52907350372 (patch)
tree4430b556abac0ad660a0aacf1887d77f85d8be02 /scribus/canvasmode_legacy.h
downloadscribus-7ed83b6c6666eb8b6b104c211ae7e52907350372.tar.gz
scribus-7ed83b6c6666eb8b6b104c211ae7e52907350372.tar.xz
scribus-7ed83b6c6666eb8b6b104c211ae7e52907350372.zip
Branch 1.3.5 tree to 1.4.x tree, goodbye 1.3.x
git-svn-id: svn://scribus.net/branches/Version14x/Scribus@17163 11d20701-8431-0410-a711-e3c959e3b870
Diffstat (limited to 'scribus/canvasmode_legacy.h')
-rw-r--r--scribus/canvasmode_legacy.h97
1 files changed, 97 insertions, 0 deletions
diff --git a/scribus/canvasmode_legacy.h b/scribus/canvasmode_legacy.h
new file mode 100644
index 0000000..73f67ad
--- /dev/null
+++ b/scribus/canvasmode_legacy.h
@@ -0,0 +1,97 @@
+/*
+ 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.
+ */
+/***************************************************************************
+* *
+* This program is free software; you can redistribute it and/or modify *
+* it under the terms of the GNU General Public License as published by *
+* the Free Software Foundation; either version 2 of the License, or *
+* (at your option) any later version. *
+* *
+***************************************************************************/
+
+
+
+#ifndef CANVAS_MODE_LEGACY_H
+#define CANVAS_MODE_LEGACY_H
+
+#include <QObject>
+#include <QTime>
+
+#include "canvasmode.h"
+#include "fpointarray.h"
+
+class LineMove;
+class PageItem;
+class PageItem_TextFrame;
+class QTimer;
+class ResizeGesture;
+class RulerGesture;
+class ScribusMainWindow;
+class ScribusView;
+
+
+// This class encapsulate the old code for mouse interaction from scribusview.cpp
+
+class LegacyMode : public CanvasMode
+{
+ Q_OBJECT
+
+public:
+ LegacyMode(ScribusView* view);
+
+ virtual void enterEvent(QEvent *);
+ virtual void leaveEvent(QEvent *);
+
+ virtual void activate(bool);
+ virtual void deactivate(bool);
+ virtual void mouseDoubleClickEvent(QMouseEvent *m);
+ virtual void mouseReleaseEvent(QMouseEvent *m);
+ virtual void mouseMoveEvent(QMouseEvent *m);
+ virtual void mousePressEvent(QMouseEvent *m);
+ virtual void drawControls(QPainter* p);
+
+// protected:
+// void setResizeCursor(int);
+
+private:
+ inline bool GetItem(PageItem** pi);
+ void drawTextCursor(QPainter* p, PageItem_TextFrame* textframe);
+ void selectPage(QMouseEvent *m);
+ bool SeleItem(QMouseEvent *m);
+ void SetupDraw(int Nr);
+ void SetupDrawNoResize(int nr);
+ void createContextMenu(PageItem *currItem, double mx, double my);
+ int HandleSizer(PageItem *currItem, QRect mpo, QMouseEvent *m);
+
+ int Cp, oldCp;
+ bool inItemCreation, shiftSelItems, FirstPoly;
+ int frameResizeHandle;
+ int RotMode;
+ int dragConstrainInitPtX, dragConstrainInitPtY;
+ double Mxp, Myp, Dxp, Dyp;
+ int GxM, GyM;
+ double SeRx, SeRy;
+ bool MoveGX, MoveGY;
+ FPointArray RecordP;
+ ScribusMainWindow* m_ScMW;
+ ResizeGesture* resizeGesture;
+ LineMove* lineMoveGesture;
+ RulerGesture* guideMoveGesture;
+ bool m_cursorVisible;
+ QTime m_blinkTime;
+ QTimer* m_blinker;
+ bool m_lastPosWasOverGuide;
+
+public slots:
+ void importToPage();
+
+private slots:
+ void blinkTextCursor();
+};
+
+
+#endif