summaryrefslogtreecommitdiff
path: root/sc/source/ui/inc/drawview.hxx
diff options
context:
space:
mode:
Diffstat (limited to 'sc/source/ui/inc/drawview.hxx')
-rw-r--r--sc/source/ui/inc/drawview.hxx151
1 files changed, 151 insertions, 0 deletions
diff --git a/sc/source/ui/inc/drawview.hxx b/sc/source/ui/inc/drawview.hxx
new file mode 100644
index 000000000000..fa6b03638551
--- /dev/null
+++ b/sc/source/ui/inc/drawview.hxx
@@ -0,0 +1,151 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef SC_DRAWVIEW_HXX
+#define SC_DRAWVIEW_HXX
+
+#include <svx/fmview.hxx>
+
+#include "global.hxx"
+
+namespace com { namespace sun { namespace star { namespace datatransfer { class XTransferable; } } } }
+
+class ScDocument;
+class ScViewData;
+class ScDrawObjData;
+
+class ScDrawView: public FmFormView
+{
+ ScViewData* pViewData;
+ OutputDevice* pDev; //! noetig ?
+ ScDocument* pDoc;
+ SCTAB nTab;
+ Fraction aScaleX; // Faktor fuer Drawing-MapMode
+ Fraction aScaleY;
+ SdrDropMarkerOverlay* pDropMarker;
+ SdrObject* pDropMarkObj;
+ BOOL bInConstruct;
+ //HMHBOOL bDisableHdl;
+
+ void Construct();
+ void UpdateBrowser();
+
+protected:
+ virtual void ModelHasChanged();
+
+ // add custom handles (used by other apps, e.g. AnchorPos)
+ virtual void AddCustomHdl();
+
+ void ImplClearCalcDropMarker();
+
+public:
+ ScDrawView( OutputDevice* pOut, ScViewData* pData );
+ virtual ~ScDrawView();
+
+ virtual void MarkListHasChanged();
+ virtual void Notify( SfxBroadcaster& rBC, const SfxHint& rHint );
+
+ virtual void DoConnect(SdrOle2Obj* pOleObj);
+
+ virtual void MakeVisible( const Rectangle& rRect, Window& rWin );
+
+ virtual void DeleteMarked();
+
+ void DrawMarks( OutputDevice* pOut ) const;
+
+ void MarkDropObj( SdrObject* pObj );
+
+ //HMHBOOL IsDisableHdl() const { return bDisableHdl; }
+
+ void SetMarkedToLayer( BYTE nLayerNo );
+
+ void InvalidateAttribs();
+ void InvalidateDrawTextAttrs();
+
+ BOOL BeginDrag( Window* pWindow, const Point& rStartPos );
+ void DoCut();
+ void DoCopy();
+
+ void GetScale( Fraction& rFractX, Fraction& rFractY ) const;
+ void RecalcScale();
+ void UpdateWorkArea();
+ SCTAB GetTab() const { return nTab; }
+
+ void CalcNormScale( Fraction& rFractX, Fraction& rFractY ) const;
+
+ void SetAnchor( ScAnchorType );
+ ScAnchorType GetAnchor() const;
+
+ void VCAddWin( Window* pWin );
+ void VCRemoveWin( Window* pWin );
+
+ void UpdateIMap( SdrObject* pObj );
+
+ USHORT GetPopupMenuId();
+ void UpdateUserViewOptions();
+
+ void SetMarkedOriginalSize();
+
+ BOOL SelectObject( const String& rName );
+//UNUSED2008-05 String GetSelectedChartName() const;
+ bool HasMarkedControl() const;
+ bool HasMarkedInternal() const;
+
+ FASTBOOL InsertObjectSafe(SdrObject* pObj, SdrPageView& rPV, ULONG nOptions=0);
+
+ /** Returns the selected object, if it is the caption object of a cell note.
+ @param ppCaptData (out-param) If not null, returns the pointer to the caption object data. */
+ SdrObject* GetMarkedNoteCaption( ScDrawObjData** ppCaptData = 0 );
+
+ /** Locks/unlocks the specified layer in the draw page.
+ Unlocked layer is required to be able to edit the contained objects. */
+ void LockCalcLayer( SdrLayerID nLayer, bool bLock = true );
+ /** Unlocks the specified layer in the draw page. */
+ inline void UnlockCalcLayer( SdrLayerID nLayer ) { LockCalcLayer( nLayer, false ); }
+
+ /** Locks/unlocks the background layer that contains background objects.
+ Unlocked layer is required to be able to edit the objects. */
+ inline void LockBackgroundLayer( bool bLock = true ) { LockCalcLayer( SC_LAYER_BACK, bLock ); }
+ /** Unlocks the background layer that contains background objects. */
+ inline void UnlockBackgroundLayer() { LockBackgroundLayer( false ); }
+
+ /** Locks/unlocks the internal layer that contains caption objects of cell notes.
+ Unlocked layer is required to be able to edit the contained objects. */
+ inline void LockInternalLayer( bool bLock = true ) { LockCalcLayer( SC_LAYER_INTERN, bLock ); }
+ /** Unlocks the internal layer that contains caption objects of cell notes. */
+ inline void UnlockInternalLayer() { LockInternalLayer( false ); }
+
+ SdrEndTextEditKind ScEndTextEdit(); // ruft SetDrawTextUndo(0)
+//UNUSED2009-05 void CaptionTextDirection(USHORT nSlot);
+ ::com::sun::star::uno::Reference< ::com::sun::star::datatransfer::XTransferable > CopyToTransferable();
+};
+
+
+
+
+#endif
+