binfilter/bf_svx/source/svdraw/svx_svdmrkv.cxx | 98 ----------------- binfilter/bf_svx/source/svdraw/svx_svdmrkv1.cxx | 30 ----- binfilter/bf_svx/source/svdraw/svx_svdview.cxx | 9 + binfilter/bf_svx/source/unodraw/svx_unoshape.cxx | 1 binfilter/inc/bf_svx/svddrgv.hxx | 4 binfilter/inc/bf_svx/svdmrkv.hxx | 126 ----------------------- 6 files changed, 10 insertions(+), 258 deletions(-)
New commits: commit c7f3926002fb886a5319cb45462d535baf5ac104 Author: Joseph Powers <jpower...@cox.net> Date: Sun Oct 9 09:03:41 2011 -0700 Cleanup class SdrMarkView diff --git a/binfilter/bf_svx/source/svdraw/svx_svdmrkv.cxx b/binfilter/bf_svx/source/svdraw/svx_svdmrkv.cxx index 3283c8f..af7531d 100644 --- a/binfilter/bf_svx/source/svdraw/svx_svdmrkv.cxx +++ b/binfilter/bf_svx/source/svdraw/svx_svdmrkv.cxx @@ -48,31 +48,17 @@ namespace binfilter { /*N*/ void SdrMarkView::ImpClearVars() /*N*/ { /*N*/ eDragMode=SDRDRAG_MOVE; -/*N*/ bHdlShown=FALSE; -/*N*/ bRefHdlShownOnly=FALSE; /*N*/ eEditMode=SDREDITMODE_EDIT; -/*N*/ eEditMode0=SDREDITMODE_EDIT; /*N*/ bDesignMode=FALSE; -/*N*/ bMarking=FALSE; -/*N*/ bMarkingPoints=FALSE; -/*N*/ bMarkingGluePoints=FALSE; -/*N*/ bUnmarking=FALSE; /*N*/ pMarkedObj=NULL; /*N*/ pMarkedPV=NULL; /*N*/ bForceFrameHandles=FALSE; /*N*/ bPlusHdlAlways=FALSE; /*N*/ nFrameHandlesLimit=50; -/*N*/ nSpecialCnt=0; -/*N*/ bInsPolyPoint=FALSE; -/*N*/ nInsPointNum=0; /*N*/ bEdgesOfMarkedNodesDirty=FALSE; /*N*/ bMarkedObjRectDirty=FALSE; /*N*/ bMarkedPointsRectsDirty=FALSE; -/*N*/ bHdlHidden=FALSE; -/*N*/ bMrkPntDirty=FALSE; /*N*/ bMarkHdlWhenTextEdit=FALSE; -/*N*/ bMarkableObjCountDirty=FALSE; // noch nicht implementiert -/*N*/ nMarkableObjCount=0; // noch nicht implementiert /*N*/ } /*N*/ SdrMarkView::SdrMarkView(SdrModel* pModel1, OutputDevice* pOut): @@ -102,14 +88,6 @@ namespace binfilter { /*N*/ } /*N*/ if (eKind==HINT_OBJCHG || eKind==HINT_OBJINSERTED || eKind==HINT_OBJREMOVED) /*N*/ { -/*N*/ if(bHdlShown -/*N*/ // #75438# do not hide handles if no repaint will be triggered -/*N*/ // since the repaint will show handles again later -/*N*/ && pSdrHint->IsNeedRepaint()) -/*N*/ { -/*N*/ HideMarkHdl(NULL); -/*N*/ } -/*N*/ /*N*/ bMarkedObjRectDirty=TRUE; /*N*/ bMarkedPointsRectsDirty=TRUE; /*N*/ } @@ -128,8 +106,6 @@ namespace binfilter { /*N*/ // (z.B. MovToTop()). Dann ist Neusortieren der MarkList erforderlich. /*N*/ aMark.SetUnsorted(); /*N*/ aMark.ForceSort(); -/*N*/ bMrkPntDirty=TRUE; -/*N*/ UndirtyMrkPnt(); /*N*/ SdrView* pV=(SdrView*)this; /*N*/ if (pV!=NULL && !pV->IsDragObj() && !pV->IsInsObjPoint()) { // an dieser Stelle habe ich ein ziemliches Problem !!! /*N*/ AdjustMarkHdl(); @@ -140,15 +116,12 @@ namespace binfilter { /*N*/ BOOL SdrMarkView::IsAction() const /*N*/ { -/*N*/ return SdrSnapView::IsAction() || bMarking || bMarkingPoints || bMarkingGluePoints; +/*N*/ return SdrSnapView::IsAction(); /*N*/ } /*N*/ void SdrMarkView::BrkAction() /*N*/ { /*N*/ SdrSnapView::BrkAction(); -/*N*/ BrkMarkObj(); -/*N*/ BrkMarkPoints(); -/*N*/ BrkMarkGluePoints(); /*N*/ } @@ -172,11 +145,6 @@ namespace binfilter { /*N*/ // break all creation actions when hiding page (#75081#) /*N*/ BrkAction(); /*N*/ -/*N*/ BOOL bVis(IsMarkHdlShown()); -/*N*/ -/*N*/ if(bVis) -/*?*/ HideMarkHdl(NULL); -/*N*/ /*N*/ // Alle Markierungen dieser Seite verwerfen /*N*/ BOOL bMrkChg(aMark.DeletePageView(*pPV)); /*N*/ SdrSnapView::HidePage(pPV); @@ -186,52 +154,20 @@ namespace binfilter { /*?*/ MarkListHasChanged(); /*?*/ AdjustMarkHdl(); /*N*/ } -/*N*/ -/*N*/ if(bVis) -/*N*/ ShowMarkHdl(NULL); /*N*/ } /*N*/ } //////////////////////////////////////////////////////////////////////////////////////////////////// -/*N*/ void SdrMarkView::BrkMarkObj() -/*N*/ {DBG_BF_ASSERT(0, "STRIP"); -/*N*/ } - -//////////////////////////////////////////////////////////////////////////////////////////////////// - -/*N*/ void SdrMarkView::BrkMarkPoints() -/*N*/ {DBG_BF_ASSERT(0, "STRIP"); -/*N*/ } - -//////////////////////////////////////////////////////////////////////////////////////////////////// - -/*N*/ void SdrMarkView::BrkMarkGluePoints() -/*N*/ {DBG_BF_ASSERT(0, "STRIP"); -/*N*/ } - -/*N*/ void SdrMarkView::ImpShowMarkHdl(OutputDevice* /*pOut*/, const Region* /*pRegion*/, BOOL /*bNoRefHdl*/) -/*N*/ {DBG_BF_ASSERT(0, "STRIP"); -/*N*/ } - /*N*/ void SdrMarkView::ShowMarkHdl(OutputDevice* pOut, BOOL bNoRefHdl) /*N*/ { /*N*/ bNoRefHdl=FALSE; // geht leider erstmal nicht anders -/*N*/ ImpShowMarkHdl(pOut,NULL,bNoRefHdl); /*N*/ } /*N*/ void SdrMarkView::HideMarkHdl(OutputDevice* /*pOut*/, BOOL bNoRefHdl) /*N*/ { /*N*/ bNoRefHdl=FALSE; // geht leider erstmal nicht anders -/*N*/ if (bHdlShown) { -/*N*/ bRefHdlShownOnly=bNoRefHdl; -/*N*/ bHdlShown=FALSE; -/*N*/ } -/*N*/ } - -/*N*/ void SdrMarkView::SetMarkHdlHidden(BOOL /*bOn*/) -/*N*/ {DBG_BF_ASSERT(0, "STRIP"); /*N*/ } /*N*/ BOOL SdrMarkView::ImpIsFrameHandles() const @@ -256,16 +192,6 @@ namespace binfilter { /*N*/ void SdrMarkView::SetMarkHandles() /*N*/ { -/*N*/ // #105722# remember old focus handle values to search for it again -/*N*/ const SdrHdl* pSaveOldFocusHdl = aHdl.GetFocusHdl(); -/*N*/ -/*N*/ if(pSaveOldFocusHdl -/*N*/ && pSaveOldFocusHdl->GetObj() -/*N*/ && pSaveOldFocusHdl->GetObj()->ISA(SdrPathObj) -/*N*/ && (pSaveOldFocusHdl->GetKind() == HDL_POLY || pSaveOldFocusHdl->GetKind() == HDL_BWGT)) -/*N*/ {DBG_BF_ASSERT(0, "STRIP"); -/*N*/ } -/*N*/ /*N*/ aHdl.Clear(); /*N*/ aHdl.SetRotateShear(eDragMode==SDRDRAG_ROTATE); /*N*/ aHdl.SetDistortShear(eDragMode==SDRDRAG_SHEAR); @@ -287,7 +213,7 @@ namespace binfilter { /*N*/ } /*N*/ if (bFrmHdl) { /*N*/ Rectangle aRect(GetMarkedObjRect()); -/*N*/ } // if bFrmHdl else +/*N*/ } // Drehpunkt/Spiegelachse /*N*/ AddDragModeHdl(eDragMode); @@ -373,10 +299,7 @@ namespace binfilter { /*N*/ void SdrMarkView::SetSolidMarkHdl(BOOL bOn) /*N*/ { /*N*/ if (bOn!=aHdl.IsFineHdl()) { -/*N*/ BOOL bMerk=IsMarkHdlShown(); -/*N*/ if (bMerk) HideMarkHdl(NULL); /*N*/ aHdl.SetFineHdl(bOn); -/*N*/ if (bMerk) ShowMarkHdl(NULL); /*N*/ } /*N*/ } @@ -449,8 +372,6 @@ namespace binfilter { /*N*/ { /*N*/ if (aMark.GetMarkCount()!=0) { /*?*/ BrkAction(); -/*?*/ BOOL bVis=bHdlShown; -/*?*/ if (bVis) HideMarkHdl(NULL); /*?*/ if (pPV!=NULL) { /*?*/ aMark.DeletePageView(*pPV); /*?*/ } else { @@ -460,22 +381,15 @@ namespace binfilter { /*?*/ pMarkedPV=NULL; /*?*/ MarkListHasChanged(); /*?*/ AdjustMarkHdl(TRUE); -/*?*/ if (bVis) ShowMarkHdl(NULL); // ggf. fuer die RefPoints /*?*/ } /*N*/ } /*N*/ void SdrMarkView::AdjustMarkHdl(BOOL bRestraintPaint) /*N*/ { -/*N*/ BOOL bVis=bHdlShown; -/*N*/ if (bVis) HideMarkHdl(NULL); /*N*/ CheckMarked(); /*N*/ SetMarkRects(); /*N*/ SetMarkHandles(); -/*N*/ if(bRestraintPaint && bVis) -/*N*/ { -/*?*/ ShowMarkHdl(NULL); -/*N*/ } /*N*/ } @@ -503,13 +417,6 @@ namespace binfilter { /*N*/ { /*N*/ aMark.SetNameDirty(); /*N*/ bEdgesOfMarkedNodesDirty=TRUE; -/*N*/ aEdgesOfMarkedNodes.Clear(); -/*N*/ aMarkedEdgesOfMarkedNodes.Clear(); -/*N*/ -/*N*/ // #i13033# -/*N*/ // Forget transitive hull of complete selection -/*N*/ maAllMarkedObjects.Clear(); -/*N*/ /*N*/ bMarkedObjRectDirty=TRUE; /*N*/ bMarkedPointsRectsDirty=TRUE; /*N*/ BOOL bOneEdgeMarked=FALSE; @@ -583,7 +490,6 @@ namespace binfilter { /*N*/ } - /*N*/ void SdrMarkView::SetDesignMode(BOOL bOn) /*N*/ { /*N*/ if (bDesignMode != bOn) diff --git a/binfilter/bf_svx/source/svdraw/svx_svdmrkv1.cxx b/binfilter/bf_svx/source/svdraw/svx_svdmrkv1.cxx index 0bbc579..911d1cf 100644 --- a/binfilter/bf_svx/source/svdraw/svx_svdmrkv1.cxx +++ b/binfilter/bf_svx/source/svdraw/svx_svdmrkv1.cxx @@ -31,7 +31,6 @@ namespace binfilter { /*N*/ BOOL SdrMarkView::HasMarkedPoints() const /*N*/ { -/*N*/ ForceUndirtyMrkPnt(); /*N*/ BOOL bRet=FALSE; /*N*/ if (!ImpIsFrameHandles()) { /*N*/ ULONG nMarkAnz=aMark.GetMarkCount(); @@ -48,37 +47,14 @@ namespace binfilter { /*N*/ void SdrMarkView::SetPlusHandlesAlwaysVisible(BOOL bOn) /*N*/ { // HandlePaint optimieren !!!!!!! -/*N*/ ForceUndirtyMrkPnt(); /*N*/ if (bOn!=bPlusHdlAlways) { -/*?*/ BOOL bVis=IsMarkHdlShown(); -/*?*/ if (bVis) HideMarkHdl(NULL); /*?*/ bPlusHdlAlways=bOn; /*?*/ SetMarkHandles(); -/*?*/ if (bVis) ShowMarkHdl(NULL); /*?*/ MarkListHasChanged(); /*N*/ } /*N*/ } //////////////////////////////////////////////////////////////////////////////////////////////////// -// ImpSetPointsRects() ist fuer PolyPoints und GluePoints! -//////////////////////////////////////////////////////////////////////////////////////////////////// - - -//////////////////////////////////////////////////////////////////////////////////////////////////// -// UndirtyMrkPnt() ist fuer PolyPoints und GluePoints! -//////////////////////////////////////////////////////////////////////////////////////////////////// - -/*N*/ void SdrMarkView::UndirtyMrkPnt() const -/*N*/ { -/*N*/ BOOL bChg=FALSE; -/*N*/ ULONG nMarkAnz=aMark.GetMarkCount(); -/*N*/ for (ULONG nMarkNum=0; nMarkNum<nMarkAnz; nMarkNum++) {DBG_BF_ASSERT(0, "STRIP"); -/*N*/ } -/*N*/ if (bChg) ((SdrMarkView*)this)->bMarkedPointsRectsDirty=TRUE; -/*N*/ ((SdrMarkView*)this)->bMrkPntDirty=FALSE; -/*N*/ } - -//////////////////////////////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////////////////////////////// @@ -86,7 +62,6 @@ namespace binfilter { /*N*/ BOOL SdrMarkView::HasMarkedGluePoints() const /*N*/ { -/*N*/ ForceUndirtyMrkPnt(); /*N*/ BOOL bRet=FALSE; /*N*/ ULONG nMarkAnz=aMark.GetMarkCount(); /*N*/ for (ULONG nMarkNum=0; nMarkNum<nMarkAnz && !bRet; nMarkNum++) { @@ -97,11 +72,6 @@ namespace binfilter { /*N*/ return bRet; /*N*/ } - -/*N*/ BOOL SdrMarkView::MarkGluePoints(const Rectangle* /*pRect*/, BOOL /*bUnmark*/) -/*N*/ {DBG_BF_ASSERT(0, "STRIP"); return FALSE; -/*N*/ } - } /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/binfilter/bf_svx/source/svdraw/svx_svdview.cxx b/binfilter/bf_svx/source/svdraw/svx_svdview.cxx index 8642c26..5255440 100644 --- a/binfilter/bf_svx/source/svdraw/svx_svdview.cxx +++ b/binfilter/bf_svx/source/svdraw/svx_svdview.cxx @@ -122,9 +122,12 @@ namespace binfilter { /*?*/ eSel.nStartPara=eSel.nEndPara; /*?*/ eSel.nStartPos=eSel.nEndPos; /*?*/ GetTextEditOutlinerView()->SetSelection(eSel); -/*N*/ } else if (HasMarkedGluePoints()) UnmarkAllGluePoints(); -/*N*/ else if ( !HasMarkedPoints() ) -/*N*/ UnmarkAllObj(); +/*N*/ } + else if ( !HasMarkedGluePoints() ) + { +/*N*/ if ( !HasMarkedPoints() ) +/*N*/ UnmarkAllObj(); + } /*N*/ } diff --git a/binfilter/bf_svx/source/unodraw/svx_unoshape.cxx b/binfilter/bf_svx/source/unodraw/svx_unoshape.cxx index d764c4f..c6ae9c5 100644 --- a/binfilter/bf_svx/source/unodraw/svx_unoshape.cxx +++ b/binfilter/bf_svx/source/unodraw/svx_unoshape.cxx @@ -467,7 +467,6 @@ uno::Any SvxShape::GetBitmap( sal_Bool bMetaFile /* = sal_False */ ) const throw SdrModel* pLclModel = pObj->GetModel(); SdrPage* pPage = pObj->GetPage(); E3dView* pView = new E3dView( pLclModel, &aVDev ); - pView->SetMarkHdlHidden( sal_True ); SdrPageView* pPageView = pView->ShowPage(pPage, Point()); SdrObject *pTempObj = pObj; diff --git a/binfilter/inc/bf_svx/svddrgv.hxx b/binfilter/inc/bf_svx/svddrgv.hxx index 4b13fbd..3bcec2b 100644 --- a/binfilter/inc/bf_svx/svddrgv.hxx +++ b/binfilter/inc/bf_svx/svddrgv.hxx @@ -129,7 +129,7 @@ public: // Wird pForcedMeth uebergeben, so wird pHdl, ... nicht ausgewerten, sondern diese // Drag-Methode verwendet. Die Instanz geht dabei ins Eigentum der View ueber und // wird zum Ende des Draggings destruiert. - BOOL IsDragObj() const { return pDragBla!=NULL && !bInsPolyPoint && !bInsGluePoint; } + BOOL IsDragObj() const { return pDragBla!=NULL && !bInsGluePoint; } SdrHdl* GetDragHdl() const { return pDragHdl; } SdrDragMethod* GetDragMethod() const { return pDragBla; } BOOL IsDraggingPoints() const { return eDragHdl==HDL_POLY; } @@ -150,7 +150,7 @@ public: // Interaktives einfuegen eines neuen Punktes. nIdx=0 => vor dem ersten Punkt. BOOL BegInsObjPoint(USHORT nIdx, const Point& rPnt, BOOL bNewObj, OutputDevice* pOut=NULL, short nMinMov=-3) { return BegInsObjPoint(TRUE,nIdx,rPnt,bNewObj,pOut,nMinMov); } BOOL BegInsObjPoint(const Point& rPnt, BOOL bNewObj, OutputDevice* pOut=NULL, short nMinMov=-3) { return BegInsObjPoint(FALSE,0,rPnt,bNewObj,pOut,nMinMov); } - BOOL IsInsObjPoint() const { return pDragBla!=NULL && bInsPolyPoint; } + BOOL IsInsObjPoint() const { return FALSE; } // DBG_BF_ASSERT // Fuer die App zum Verwalten des Status. GetPreferedPointer() wird // spaeter vielleicht einen passenden Pointer dafuer liefern diff --git a/binfilter/inc/bf_svx/svdmrkv.hxx b/binfilter/inc/bf_svx/svdmrkv.hxx index 65b9224..7aba237 100644 --- a/binfilter/inc/bf_svx/svdmrkv.hxx +++ b/binfilter/inc/bf_svx/svdmrkv.hxx @@ -128,47 +128,24 @@ protected: Point aLastCrookCenter; // Persistent SdrHdlList aHdl; SdrMarkList aMark; // Persistent (ni) - SdrMarkList aEdgesOfMarkedNodes; // EdgeObjekte der markierten Objekte - SdrMarkList aMarkedEdgesOfMarkedNodes; // Markierte EdgeObjekte der markierten Objekte - - // #i13033# - // New mechanism to hold the transitive hull of all selected objects - List maAllMarkedObjects; Rectangle aMarkedObjRect; - Rectangle aMarkedPointsRect; - Rectangle aMarkedGluePointsRect; USHORT nFrameHandlesLimit; - USHORT nSpecialCnt; - USHORT nInsPointNum; // Nummer des InsPoint - ULONG nMarkableObjCount; SdrDragMode eDragMode; // Persistent SdrViewEditMode eEditMode; // Persistent - SdrViewEditMode eEditMode0; // Persistent - unsigned bHdlShown : 1; - unsigned bRefHdlShownOnly : 1; // Spiegelachse waerend Dragging (ni) unsigned bDesignMode : 1; // DesignMode fuer SdrUnoObj - unsigned bMarking : 1; // Selektionsrahmen fuer Objekte - unsigned bMarkingPoints : 1; // Selektionsrahmen fuer Punkte - unsigned bMarkingGluePoints : 1;// Selektionsrahmen fuer Klebepunkte - unsigned bUnmarking : 1; unsigned bForceFrameHandles : 1; // Persistent - FrameDrag auch bei Einzelobjekten unsigned bPlusHdlAlways : 1; // Persistent unsigned bMarkHdlWhenTextEdit : 1; // Persistent, default=FALSE - unsigned bInsPolyPoint : 1; // z.Zt InsPolyPointDragging unsigned bEdgesOfMarkedNodesDirty : 1; unsigned bMarkedObjRectDirty : 1; - unsigned bMrkPntDirty : 1; unsigned bMarkedPointsRectsDirty : 1; - unsigned bMarkableObjCountDirty : 1; - unsigned bHdlHidden : 1; private: void ImpClearVars(); - void UndirtyMrkPnt() const; protected: virtual void SFX_NOTIFY(SfxBroadcaster& rBC, const TypeId& rBCType, const SfxHint& rHint, const TypeId& rHintType); @@ -184,24 +161,14 @@ protected: // add custom handles (used by other apps, e.g. AnchorPos) virtual void AddCustomHdl(); - void ForceUndirtyMrkPnt() const { if (bMrkPntDirty) UndirtyMrkPnt(); } - - void ImpShowMarkHdl(OutputDevice* pOut, const Region* pRegion, BOOL bNoRefHdl); SdrObject* ImpCheckObjHit(const Point& rPnt, USHORT nTol, SdrObject* pObj, SdrPageView* pPV, ULONG nOptions, const SetOfByte* pMVisLay) const; SdrObject* ImpCheckObjHit(const Point& rPnt, USHORT nTol, SdrObjList* pOL, SdrPageView* pPV, ULONG nOptions, const SetOfByte* pMVisLay, SdrObject*& rpRootObj) const; - BOOL ImpIsObjHit(const Point& rPnt, USHORT nTol, SdrObject* pObj, SdrPageView* pPV, ULONG nOptions) const { return ImpCheckObjHit(rPnt,nTol,pObj,pPV,nOptions,NULL)!=NULL; } BOOL ImpIsFrameHandles() const; - // Macht aus einer Winkelangabe in 1/100deg einen String inkl. Grad-Zeichen - BOOL MarkGluePoints(const Rectangle* pRect, BOOL bUnmark); - virtual void WriteRecords(SvStream& rOut) const; virtual BOOL ReadRecord(const SdrIOHeader& rViewHead, const SdrNamedSubRecord& rSubHead, SvStream& rIn); - void SetMoveOutside(BOOL bOn); - BOOL IsMoveOutside() const; - public: SdrMarkView(SdrModel* pModel1, OutputDevice* pOut=NULL); @@ -215,36 +182,13 @@ public: virtual BOOL IsObjMarkable(SdrObject* pObj, SdrPageView* pPV) const; - // Liefert TRUE wenn Objekte, Punkte oder Klebepunkte durch Rahmenaufziehen - // selektiert werden (solange wie der Rahmen aufgezogen wird). - BOOL IsMarking() const { return bMarking || bMarkingPoints || bMarkingGluePoints; } - - // Liefert TRUE wenn das Rahmenaufziehen nicht Objekte/Punkte/Klebepunkte - // markieren sondern markierte deselektieren soll. - BOOL IsUnmarking() const { return bUnmarking; } - void SetUnmarking(BOOL bOn) { bUnmarking=bOn; } - - // Objekte durch Aufziehen eines Selektionsrahmens markieren - void BrkMarkObj(); - BOOL IsMarkObj() const { return bMarking; } - // DragModes: SDRDRAG_CREATE,SDRDRAG_MOVE,SDRDRAG_RESIZE,SDRDRAG_ROTATE,SDRDRAG_MIRROR,SDRDRAG_SHEAR,SDRDRAG_CROOK // Move==Resize // Das Interface wird hier evtl noch geaendert wg. Ortho-Drag - SdrDragMode GetDragMode() const { return eDragMode; } - BOOL ChkDragMode(SdrDragMode eMode) const; void SetFrameHandles(BOOL bOn); BOOL IsFrameHandles() const { return bForceFrameHandles; } - // Limit, ab wann implizit auf FrameHandles umgeschaltet wird. default=50. - void SetFrameHandlesLimit(USHORT nAnz) { nFrameHandlesLimit=nAnz; } - USHORT GetFrameHandlesLimit() const { return nFrameHandlesLimit; } - - SdrViewEditMode GetEditMode() const { return eEditMode; } - - BOOL IsEditMode() const { return eEditMode==SDREDITMODE_EDIT; } BOOL IsCreateMode() const { return eEditMode==SDREDITMODE_CREATE; } - BOOL IsGluePointEditMode() const { return eEditMode==SDREDITMODE_GLUEPOINTEDIT;; } void SetDesignMode(BOOL bOn=TRUE); BOOL IsDesignMode() const { return bDesignMode; } @@ -255,18 +199,8 @@ public: // Feststellen, ob und wo ein Objekt bzw. ob ein Referenzpunkt // (Rotationsmittelpunkt,Spiegelachse) getroffen wird (SW special). BOOL HasMarkedObj() const { return aMark.GetMarkCount()!=0; } - ULONG GetMarkedObjCount() const { return aMark.GetMarkCount(); } virtual void ShowMarkHdl(OutputDevice* pOut, BOOL bNoRefHdl=FALSE); virtual void HideMarkHdl(OutputDevice* pOut, BOOL bNoRefHdl=FALSE); - BOOL IsMarkHdlShown() const { return bHdlShown; } - - // Mit MarkHdlHidden(TRUE) wird das Anzeigen der Handles - // massiv unterdrueckt, auch bei ShowHarkHdl(). - // Show/HideMarkHdl() wird dann zwar immernoch von der Engine - // gerufen, setzt auch den Status um (der mit IsMarkHdlShown() - // abgefragt werden kann), Painted jedoch die Handles nicht. - void SetMarkHdlHidden(BOOL bOn); - BOOL IsMarkHdlHidden() const { return bHdlHidden; } // Pick: Unterstuetzte Optionen fuer nOptions sind SDRSEARCH_PASS2BOUND und SDRSEARCH_PASS3NEAREST @@ -288,9 +222,7 @@ public: void UnmarkAllObj(SdrPageView* pPV=NULL); // pPage=NULL => alle angezeigten Seiten // Diese Funktion kostet etwas Zeit, da die MarkList durchsucht werden muss. - void UnMarkAll(SdrPageView* pPV=NULL) { UnmarkAllObj(pPV); } const SdrMarkList& GetMarkList() const { return aMark; } - void SortMarkList() { aMark.ForceSort(); } // Die Groesse der Markierungs-Handles wird ueber die jeweilige Aufloesung // und die Groesse des Bereichs der markierten Objekte so angepasst, dass @@ -298,53 +230,16 @@ public: // Dazu muessen die Handles ggf. verkleinert dargestellt werden. Mit der // MinMarkHdlSize kann man hierfuer eine Mindestgroesse angeben. // Defaultwert ist 3, Mindestwert 3 Pixel. - BOOL IsSolidMarkHdl() const { return aHdl.IsFineHdl(); } void SetSolidMarkHdl(BOOL bOn); BOOL HasMarkedPoints() const; - // Nicht alle Punkte lassen sich markieren: - BOOL MarkPoint(SdrHdl& rHdl, BOOL bUnmark=FALSE); - - // Sucht sich den ersten markierten Punkt (P1) und sucht von dort - // aus in den ersten nichtmarkierte Punkt (P2). - // Bei Erfolg wird die Markierung von P1 entfernt, an P2 gesetzt und TRUE - // returniert. Mit dem Parameter bPrev=TRUE geht die Suche genau in die - // andere Richtung. - - // Sucht sich den ersten markierten Punkt (P1) das von rPnt - // getroffen wird und sucht von dort aus den - // ersten nichtmarkierten Punkt (P2). Bei Erfolg wird die Markierung von - // P1 entfernt, an P2 gesetzt und TRUE returniert. - // Mit dem Parameter bPrev=TRUE geht die Suche genau in die andere Richtung. - - // Die Nummer des passenden Handles raussuchen. Nicht gefunden - // liefert CONTAINER_ENTRY_NOTFOUND. - SdrHdl* GetHdl(ULONG nHdlNum) const { return aHdl.GetHdl(nHdlNum); } - const SdrHdlList& GetHdlList() const { return aHdl; } - - // Selektionsrahmen fuer Punktmarkierung aufziehen. - // Wird nur gestartet, wenn HasMarkablePoints() TRUE liefert. - void BrkMarkPoints(); - BOOL IsMarkPoints() const { return bMarkingPoints; } - // Zusatzhandles dauerhaft sichtbar schalten void SetPlusHandlesAlwaysVisible(BOOL bOn); BOOL IsPlusHandlesAlwaysVisible() const { return bPlusHdlAlways; } - // Handles sichrbar waerend TextEdit (in doppelter Groesse)? - // Persistent, default=FALSE - void SetMarkHdlWhenTextEdit(BOOL bOn) { bMarkHdlWhenTextEdit=bOn; } - BOOL IsMarkHdlWhenTextEdit() const { return bMarkHdlWhenTextEdit; } - BOOL HasMarkedGluePoints() const; - // Hdl eines markierten GluePoints holen. Nicht markierte - // GluePoints haben keine Handles - - // alle Punkte innerhalb dieses Rechtecks markieren (Viewkoordinaten) - BOOL UnmarkAllGluePoints() { return MarkGluePoints(NULL,TRUE); } - // Sucht sich den ersten markierten Klebepunkt (P1) und sucht von dort // aus in den ersten nichtmarkierte Klebepunkt (P2). // Bei Erfolg wird die Markierung von P1 entfernt, an P2 gesetzt und TRUE @@ -357,12 +252,6 @@ public: // von P1 entfernt, an P2 gesetzt und TRUE returniert. // Mit dem Parameter bPrev=TRUE geht die Suche genau in die andere Richtung. - // Selektionsrahmen fuer Klebepunktmarkierung aufziehen. - // Wird nur gestartet, wenn HasMarkableGluePoints() TRUE liefert. - // Der GlueEditMode TRUE wird nicht abgefragt. - void BrkMarkGluePoints(); - BOOL IsMarkGluePoints() const { return bMarkingGluePoints; } - // bRestraintPaint=FALSE bewirkt, dass die Handles nicht sofort wieder gemalt werden. // AdjustMarkHdl wird eh' nur gerufen, wenn was geaendert wurde; was idR ein Invalidate // zur Folge hat. Am Ende von des Redraw werden die Handles automatisch gezeichnet. @@ -387,21 +276,6 @@ public: // Den Mittelpunkt des letzten Crook-Dragging abholen. Den kann man // bei einem anschliessenden Rotate sinnvoll als Drehmittelpunkt setzen. const Point& GetLastCrookCenter() const { return aLastCrookCenter; } - - // Wird automatisch von der DragView beim beenden eines Crook-Drag gesetzt. - void SetLastCrookCenter(const Point& rPt) { aLastCrookCenter=rPt; } - - // Rotationsmittelpunkt bzw. Startpunkt der Spiegelachse - const Point& GetRef1() const { return aRef1; } - - // Endpunkt der Spiegelachse - const Point& GetRef2() const { return aRef1; } - void SetRef2(const Point& rPt); - -private: - // #i13033# - // Build transitive hull of complete selection in maAllMarkedObjects - void ImplCollectCompleteSelection(SdrObject* pObj); }; //////////////////////////////////////////////////////////////////////////////////////////////////// _______________________________________________ Libreoffice-commits mailing list Libreoffice-commits@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits