|
|
/*************************************************************************** page.h - description ------------------- begin : Sat Apr 7 2001 copyright : (C) 2001 by Franz Schmid email : Franz.Schmid@altmuehlnet.de ***************************************************************************/ /*************************************************************************** * * * 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 PAGE_H #define PAGE_H #include#include #include #include #include #include #include #include "fpoint.h" #include "scribusdoc.h" #include "pageitem.h" /** *@author Franz Schmid */ class Page : public QWidget { Q_OBJECT public: Page(QWidget *pa, int x, int y, int b, int h, ScribusDoc *doc, QScrollView *view); ~Page() {}; /** Zeichnet eine Ellipse */ int PaintEllipse(float x, float y, float b, float h, float w, QString fill, QString outline); /** Zeichnet eine Bildbox */ int PaintPict(float x, float y, float b, float h); /** Zeichnet ein Rechteck */ int PaintRect(float x, float y, float b, float h, float w, QString fill, QString outline); /** Zeichnet eine Linie */ int PaintLine(float x, float y, float b, float h, float w, QString outline); /** Zeichnet eine Textbox */ int PaintText(float x, float y, float b, float h, float w, QString outline); /** Zeichnet ein Polygon */ int PaintPoly(float x, float y, float b, float h, float w, QString fill, QString outline); int PaintPolyLine(float x, float y, float b, float h, float w, QString fill, QString outline); /** Laedt ein Bild */ void LoadPict(QString fn, int ItNr); void insertColor(QString nam, float c, float m, float y, float k); void DrawPageMarks(QPaintEvent *e); void DrawPageItems(QPaintEvent *e); void paintEvent(QPaintEvent *e); void DrawTransparent(PageItem *b); void setGroupRect(); void getGroupRect(float *x, float *y, float *w, float *h); void getGroupRectScreen(float *x, float *y, float *w, float *h); void paintGroupRect(bool norm = true); void moveGroup(float x, float y, bool fromMP = false); FPoint transformPointI(FPoint in, float dx, float dy, float rot, float sx, float sy); FPoint transformPoint(FPoint in, float dx, float dy, float rot, float sx, float sy); void scaleGroup(float scx, float scy); void storeUndoInf(PageItem* b); void mouseDoubleClickEvent(QMouseEvent *); void mouseReleaseEvent(QMouseEvent *m); void mouseMoveEvent(QMouseEvent *m); void mousePressEvent(QMouseEvent *m); void HandleSizer(QPainter *p, PageItem *b, QRect mpo); void dragLeaveEvent(QDragLeaveEvent *e); void dragEnterEvent(QDragEnterEvent *e); void dragMoveEvent(QDragMoveEvent *e); void dropEvent(QDropEvent *e); bool SeleItem(QMouseEvent *m); bool SeleItemPos(QPoint m); void Deselect(bool prop); void SelectItemNr(int nr); void SetupDraw(int Nr); void MoveItemI(float newX, float newY, int ite); bool MoveItem(float newX, float newY, PageItem* ite, bool fromMP = false); void UpdateClip(PageItem* b); FPoint GetMaxClipF(FPointArray Clip); FPoint GetMinClipF(FPointArray Clip); QPoint GetMaxClip(QPointArray Clip); QPoint GetMinClip(QPointArray Clip); void SetPolyClip(PageItem *b, int up, int down); void UpdatePolyClip(PageItem *b); void ConvertClip(PageItem *b); void SetFrameRound(PageItem *b); void SetRectFrame(PageItem *b); void SetOvalFrame(PageItem *b); bool PointOnLine(QPoint Start, QPoint Ende, QRect MArea); void Reset1Control(); void ResetControl(); void AdjustItemSize(PageItem *b); bool GetItem(PageItem **b, int nr = -1); void MoveRotated(PageItem *b, FPoint npv); void AdjustPictScale(PageItem *b); bool SizeItem(float newX, float newY, int ite, bool fromMP = false, bool DoUpdateClip = true); bool MoveSizeItem(FPoint newX, FPoint newY, int ite); void RotateItem(float win, int ite); void MarkClip(PageItem *b); void Transform(PageItem *b, QPainter *p); void TransformM(PageItem *b, QPainter *p); void PaintSizeRect(QPainter *p, QRect alt, QRect neu); QPoint ApplyGrid(QPoint in); FPoint ApplyGridF(FPoint in); void RefreshItem(PageItem *b); void RepaintTextRegion(PageItem *b, QRegion alt); void DrawCursChar(PageItem *b, QPainter *p, int po); void EmitValues(PageItem *b); void AdjustPreview(PageItem *b); void UpdateGradient(PageItem *i); void FromHRuler(QMouseEvent *m); void FromVRuler(QMouseEvent *m); void SetYGuide(QMouseEvent *m); void SetXGuide(QMouseEvent *m); void SnapToGuides(PageItem* b); void ApplyGuides(float *x, float *y); QRegion ViewReg(); /** Liste der Elemente */ QPtrList Items; /** Dokument zu dem die Seite gehoert */ ScribusDoc *doku; /** Nummer der Seite */ uint PageNr; /** Name der Seite, wenn Musterseite */ QString PageNam; QString MPageNam; QScrollView *Anz; QPopupMenu *pmen3; Margs Margins; int Mxp; int Myp; bool Mpressed; bool mCG; float oldW; QPtrList SelItem; int HowTo; int ClRe; int ClRe2; int SegP1; int SegP2; bool CursVis; int oldCp; int Dxp; int Dyp; bool Imoved; int SeRx; int SeRy; bool HaveSelRect; bool LeftPg; bool Magnify; bool FirstPoly; bool EdPoints; bool MoveSym; bool GroupSel; bool DraggedGroup; float GroupX; float GroupY; float GroupW; float GroupH; bool HanMove; int DrHY; int DrVX; QValueList XGuides; QValueList YGuides; uint GyM; bool MoveGY; uint GxM; bool MoveGX; FPoint RCenter; public slots: void ChLineWidth(float w); void ChLineArt(PenStyle w); void ChLineJoin(PenJoinStyle w); void ChLineEnd(PenCapStyle w); void ChLocalXY(float x, float y); void ChLocalSc(float x, float y); void ToggleBookmark(); void ToggleAnnotation(); void ToggleLock(); void TogglePic(); void FlipImageH(); void FlipImageV(); void ItemFont(QString fon); void chFSize(int size); void ItemPen(QString farbe); void ItemBrush(QString farbe, bool vCPal = false); void ItemPenShade(int sha); void ItemBrushShade(int sha, bool vCPal = false); void ItemGradFill(int typ, QString col1, int sh1, QString col2, int sh2); void QueryFarben(); void SetFrameRect(); void SetFrameRounded(); void SetFrameOval(); void ToBack(); void ToFront(); void LowerItem(); void RaiseItem(); void DeleteItem(); void PasteItem(struct CLBuf *Buffer, bool loading); bool slotSetCurs(int x, int y); void slotDoCurs(bool draw); void BlinkCurs(); void ChLineSpa(float w); void chKerning(float us); void chTyStyle(int s); void SetAbStyle(int s); void chAbStyle(PageItem *b, int s); void AlignObj(bool xa, bool ya, bool Vth, bool Vtv, float xdisp, float ydisp, int xart, int yart); void sentToScrap(); void sentToLayer(int id); void ToTextFrame(); void ToPicFrame(); void ToPolyFrame(); void ToBezierFrame(); void MoveClipPoint(PageItem *b, FPoint np); void ToPathText(); void Bezier2Poly(); signals: // Signals /** Mausposition X */ void Hrule(int); /** Mausposition Y */ void Vrule(int); /** Seite gewechselt */ void PgCh(int); /** Element gezeichnet */ void PaintingDone(); /** Element ausgewaehlt */ void HaveSel(int); /** Seite veraendert */ void DocChanged(); /** Position eines Elementes */ void ItemPos(float, float); /** Breite und Hoehe eines Elementes */ void ItemGeom(float, float); void ItemRadius(float); /** Setzt den Drehungswinkel des Elementes */ void SetAngle(float); /** Zoomfunktionen */ void ZoomIn(); void ZoomOut(); void ZoomAbs(); void AbsPosi(int, int); void AbsPosi2(int, int); /** Sendet die Linienstaerke an die Masspalette */ void SetSizeValue(float); /** Sendet die Linienart an die Masspalette */ void SetLineArt(PenStyle, PenCapStyle, PenJoinStyle); /** Sendet die lokalen Bildeigenschaften an die Masspalette */ void SetLocalValues(float, float, float, float); /** Sendet die Stiftfarbe an die Farbpalette */ void ItemFarben(QString, QString, int, int); void ItemGradient(QString, QString, int, int, int); /** Sendet die Textattribute an die Masspalette */ void ItemTextAttr(float); /** Sendet die Schriftart */ void ItemTextFont(QString); /** Sendet die Schriftgroesse */ void ItemTextSize(int); void ItemTextUSval(float); void ItemTextAbs(int); /** Text in Textbox selektiert */ void HasTextSel(); void HasNoTextSel(); void CutItem(); void CopyItem(); void ItemTextStil(int); void LoadPic(); void ModifyIt(); void LoadElem(QString, int, int, bool, bool, ScribusDoc *); void Amode(int); void AnnotProps(); void ToScrap(QString); void MousePos(float, float); void ClipPo(float, float); void HavePoint(bool, bool); void PolyOpen(); void PStatus(int, uint); void UndoAvail(); void EditGuides(); void ItemTrans(float); void AddBM(PageItem *); void DelBM(PageItem *); void NewBMNr(int, int); void ChBMText(PageItem *); void RotMode(int); }; #endif
Generated by: paul on T6.linux on Tue Mar 18 23:32:13 2003, using kdoc 2.0a54. |