diff options
Diffstat (limited to 'sc')
56 files changed, 98 insertions, 33 deletions
diff --git a/sc/inc/scmod.hxx b/sc/inc/scmod.hxx index e90936b67e3e..5a51b088be9f 100644 --- a/sc/inc/scmod.hxx +++ b/sc/inc/scmod.hxx @@ -34,7 +34,6 @@ #include <vcl/timer.hxx> #include <svl/lstner.hxx> #include "global.hxx" // ScInputMode -#include "markdata.hxx" // ScMarkData #include "shellids.hxx" #include <unotools/options.hxx> #include <tools/shl.hxx> @@ -79,6 +78,7 @@ class ScTransferObj; class ScDrawTransferObj; class ScSelectionTransferObj; class ScFormEditData; +class ScMarkData; struct ScDragData; struct ScClipData; diff --git a/sc/source/core/tool/chgtrack.cxx b/sc/source/core/tool/chgtrack.cxx index dc5b09728106..3a4fcf7b3bb9 100644 --- a/sc/source/core/tool/chgtrack.cxx +++ b/sc/source/core/tool/chgtrack.cxx @@ -51,6 +51,7 @@ #include "inputopt.hxx" // GetExpandRefs #include "patattr.hxx" #include "hints.hxx" +#include "markdata.hxx" #include "globstr.hrc" diff --git a/sc/source/ui/Accessibility/AccessibleCell.cxx b/sc/source/ui/Accessibility/AccessibleCell.cxx index 881a895f5404..6ca55859d3ac 100644 --- a/sc/source/ui/Accessibility/AccessibleCell.cxx +++ b/sc/source/ui/Accessibility/AccessibleCell.cxx @@ -44,6 +44,7 @@ #include "editsrc.hxx" #include "dociter.hxx" #include "cell.hxx" +#include "markdata.hxx" #include <unotools/accessiblestatesethelper.hxx> #include <com/sun/star/accessibility/AccessibleRole.hpp> diff --git a/sc/source/ui/Accessibility/AccessibleDocument.cxx b/sc/source/ui/Accessibility/AccessibleDocument.cxx index 03c4011bd80e..0fc5c565af34 100644 --- a/sc/source/ui/Accessibility/AccessibleDocument.cxx +++ b/sc/source/ui/Accessibility/AccessibleDocument.cxx @@ -44,6 +44,8 @@ #include "userdat.hxx" #include "scresid.hxx" #include "sc.hrc" +#include "markdata.hxx" + #include <com/sun/star/accessibility/AccessibleEventId.hpp> #include <com/sun/star/accessibility/AccessibleStateType.hpp> #include <com/sun/star/accessibility/AccessibleRelationType.hpp> diff --git a/sc/source/ui/Accessibility/AccessibleSpreadsheet.cxx b/sc/source/ui/Accessibility/AccessibleSpreadsheet.cxx index fcbb2a518562..e17a8ee9dde1 100644 --- a/sc/source/ui/Accessibility/AccessibleSpreadsheet.cxx +++ b/sc/source/ui/Accessibility/AccessibleSpreadsheet.cxx @@ -38,6 +38,7 @@ #include "document.hxx" #include "hints.hxx" #include "scmod.hxx" +#include "markdata.hxx" #include <unotools/accessiblestatesethelper.hxx> #include <com/sun/star/accessibility/AccessibleRole.hpp> diff --git a/sc/source/ui/app/inputhdl.cxx b/sc/source/ui/app/inputhdl.cxx index 2f3f7e8eec67..aec0cddf50c9 100644 --- a/sc/source/ui/app/inputhdl.cxx +++ b/sc/source/ui/app/inputhdl.cxx @@ -89,6 +89,7 @@ #include "compiler.hxx" // fuer Formel-Preview #include "editable.hxx" #include "funcdesc.hxx" +#include "markdata.hxx" #define _INPUTHDL_CXX #include "inputhdl.hxx" diff --git a/sc/source/ui/app/inputwin.cxx b/sc/source/ui/app/inputwin.cxx index 4818785d59d5..c379199ca8c9 100644 --- a/sc/source/ui/app/inputwin.cxx +++ b/sc/source/ui/app/inputwin.cxx @@ -73,6 +73,7 @@ #include "rangeutl.hxx" #include "docfunc.hxx" #include "funcdesc.hxx" +#include "markdata.hxx" #include <editeng/fontitem.hxx> #include <com/sun/star/accessibility/XAccessible.hpp> #include "AccessibleEditObject.hxx" diff --git a/sc/source/ui/app/scmod.cxx b/sc/source/ui/app/scmod.cxx index fe716365c111..fc0c35ff2211 100644 --- a/sc/source/ui/app/scmod.cxx +++ b/sc/source/ui/app/scmod.cxx @@ -106,6 +106,7 @@ #include "preview.hxx" #include "dragdata.hxx" #include "clipdata.hxx" +#include "markdata.hxx" #include <svx/xmlsecctrl.hxx> diff --git a/sc/source/ui/app/seltrans.cxx b/sc/source/ui/app/seltrans.cxx index 5eb294243165..e71ba797d2cd 100644 --- a/sc/source/ui/app/seltrans.cxx +++ b/sc/source/ui/app/seltrans.cxx @@ -51,6 +51,7 @@ #include "docsh.hxx" #include "drawview.hxx" #include "drwlayer.hxx" +#include "markdata.hxx" using namespace com::sun::star; diff --git a/sc/source/ui/docshell/dbdocfun.cxx b/sc/source/ui/docshell/dbdocfun.cxx index e786a78e59ca..52546fbb7b2c 100644 --- a/sc/source/ui/docshell/dbdocfun.cxx +++ b/sc/source/ui/docshell/dbdocfun.cxx @@ -60,6 +60,7 @@ #include "dpshttab.hxx" #include "hints.hxx" #include "queryentry.hxx" +#include "markdata.hxx" // ----------------------------------------------------------------- diff --git a/sc/source/ui/docshell/docsh.cxx b/sc/source/ui/docshell/docsh.cxx index d6c8f6f3c1ad..a035c18109c6 100644 --- a/sc/source/ui/docshell/docsh.cxx +++ b/sc/source/ui/docshell/docsh.cxx @@ -138,6 +138,7 @@ #include "uiitems.hxx" #include "cellsuno.hxx" #include "dpobject.hxx" +#include "markdata.hxx" #include <vector> #include <boost/shared_ptr.hpp> diff --git a/sc/source/ui/docshell/docsh3.cxx b/sc/source/ui/docshell/docsh3.cxx index b7a139fb00d0..084dad2a9049 100644 --- a/sc/source/ui/docshell/docsh3.cxx +++ b/sc/source/ui/docshell/docsh3.cxx @@ -80,6 +80,7 @@ #include "inputhdl.hxx" #include "conflictsdlg.hxx" #include "globstr.hrc" +#include "markdata.hxx" //------------------------------------------------------------------ diff --git a/sc/source/ui/docshell/editable.cxx b/sc/source/ui/docshell/editable.cxx index b34cdab1d2b1..79429957fa93 100644 --- a/sc/source/ui/docshell/editable.cxx +++ b/sc/source/ui/docshell/editable.cxx @@ -35,6 +35,7 @@ #include "document.hxx" #include "viewfunc.hxx" #include "globstr.hrc" +#include "markdata.hxx" //------------------------------------------------------------------ diff --git a/sc/source/ui/drawfunc/fuins2.cxx b/sc/source/ui/drawfunc/fuins2.cxx index 2a85eef8a7a7..050ceea6291d 100644 --- a/sc/source/ui/drawfunc/fuins2.cxx +++ b/sc/source/ui/drawfunc/fuins2.cxx @@ -93,6 +93,7 @@ using namespace ::com::sun::star; #include "uiitems.hxx" #include "globstr.hrc" #include "drawview.hxx" +#include "markdata.hxx" extern SdrObject* pSkipPaintObj; // output.cxx - dieses Objekt nicht zeichnen diff --git a/sc/source/ui/drawfunc/fumark.cxx b/sc/source/ui/drawfunc/fumark.cxx index b46e43d93125..d9c1c4a18270 100644 --- a/sc/source/ui/drawfunc/fumark.cxx +++ b/sc/source/ui/drawfunc/fumark.cxx @@ -40,6 +40,7 @@ #include "document.hxx" #include "scresid.hxx" #include "drawview.hxx" +#include "markdata.hxx" //------------------------------------------------------------------ diff --git a/sc/source/ui/inc/AccessibleSpreadsheet.hxx b/sc/source/ui/inc/AccessibleSpreadsheet.hxx index 428e1744e622..b0d30744f2a2 100644 --- a/sc/source/ui/inc/AccessibleSpreadsheet.hxx +++ b/sc/source/ui/inc/AccessibleSpreadsheet.hxx @@ -54,6 +54,7 @@ public: class ScTabViewShell; class ScAccessibleDocument; class ScAccessibleCell; +class ScRangeList; /** @descr This base class provides an implementation of the diff --git a/sc/source/ui/inc/undodat.hxx b/sc/source/ui/inc/undodat.hxx index 3dee48fd6e38..9c47c40a564b 100644 --- a/sc/source/ui/inc/undodat.hxx +++ b/sc/source/ui/inc/undodat.hxx @@ -32,12 +32,13 @@ #include "undobase.hxx" #include "rangeutl.hxx" // ScArea #include "rangelst.hxx" // ScRangeListRef -#include "markdata.hxx" #include "sortparam.hxx" #include "queryparam.hxx" #include "subtotalparam.hxx" #include "pivot.hxx" +#include <boost/scoped_ptr.hpp> + class ScDocShell; class ScDocument; class ScOutlineTable; @@ -46,6 +47,7 @@ class ScDBData; class ScDBCollection; class ScDPObject; class SdrUndoAction; +class ScMarkData; //---------------------------------------------------------------------------- @@ -497,7 +499,6 @@ private: void Init(); }; -// amelia class ScUndoDataForm: public ScBlockUndo { public: @@ -521,7 +522,7 @@ public: virtual String GetComment() const; private: - ScMarkData aMarkData; + boost::scoped_ptr<ScMarkData> mpMarkData; ScDocument* pUndoDoc; ScDocument* pRedoDoc; sal_uInt16 nFlags; diff --git a/sc/source/ui/inc/undotab.hxx b/sc/source/ui/inc/undotab.hxx index fece9f914c08..c6b74090b2f3 100644 --- a/sc/source/ui/inc/undotab.hxx +++ b/sc/source/ui/inc/undotab.hxx @@ -30,7 +30,6 @@ #define SC_UNDOTAB_HXX #include "undobase.hxx" -#include "markdata.hxx" #include "formula/grammar.hxx" #include <tools/color.hxx> #include "tabbgcolor.hxx" @@ -45,6 +44,8 @@ #include <com/sun/star/uno/Sequence.hxx> #include <boost/shared_ptr.hpp> +#include <boost/scoped_ptr.hpp> + #include <memory> #include <vector> @@ -55,6 +56,7 @@ class ScPrintRangeSaver; class SdrObject; class ScDocProtection; class ScTableProtection; +class ScMarkData; //---------------------------------------------------------------------------- @@ -277,13 +279,13 @@ public: virtual String GetComment() const; private: + boost::scoped_ptr<ScMarkData> mpMarkData; SCTAB nSrcTab; SCTAB nDestTab; String aName; String aComment; Color aColor; sal_uInt16 nFlags; - ScMarkData aMarkData; SdrUndoAction* pDrawUndo; }; diff --git a/sc/source/ui/inc/viewdata.hxx b/sc/source/ui/inc/viewdata.hxx index c7c84531e53d..e812840fd8c7 100644 --- a/sc/source/ui/inc/viewdata.hxx +++ b/sc/source/ui/inc/viewdata.hxx @@ -31,8 +31,8 @@ #include <svx/zoomitem.hxx> #include "scdllapi.h" #include "viewopti.hxx" -#include "markdata.hxx" +#include <boost/scoped_ptr.hpp> // --------------------------------------------------------------------------- @@ -111,6 +111,7 @@ class ScPatternAttr; class ScRangeListRef; class ScExtDocOptions; class ScViewData; +class ScMarkData; //-------------------------------------------------------------------------- @@ -171,6 +172,7 @@ private: double nPPTX, nPPTY; // Scaling-Faktoren ::std::vector<ScViewDataTable*> maTabData; + boost::scoped_ptr<ScMarkData> mpMarkData; ScViewDataTable* pThisTab; // Daten der angezeigten Tabelle ScDocShell* pDocShell; ScDocument* pDoc; @@ -180,8 +182,6 @@ private: ScViewOptions* pOptions; EditView* pSpellingView; - ScMarkData aMarkData; - long nEditMargin; Size aScenButSize; // Groesse eines Szenario-Buttons @@ -253,8 +253,8 @@ public: SfxBindings& GetBindings(); // from ViewShell's ViewFrame SfxDispatcher& GetDispatcher(); // from ViewShell's ViewFrame - ScMarkData& GetMarkData() { return aMarkData; } - const ScMarkData& GetMarkData() const { return aMarkData; } + ScMarkData& GetMarkData(); + const ScMarkData& GetMarkData() const; Window* GetDialogParent(); // von tabvwsh weitergeleitet Window* GetActiveWin(); // von View diff --git a/sc/source/ui/navipi/content.cxx b/sc/source/ui/navipi/content.cxx index bc9280a39fe0..00904026c6b2 100644 --- a/sc/source/ui/navipi/content.cxx +++ b/sc/source/ui/navipi/content.cxx @@ -70,6 +70,7 @@ #include "navsett.hxx" #include "postit.hxx" #include "clipparam.hxx" +#include "markdata.hxx" using namespace com::sun::star; diff --git a/sc/source/ui/navipi/navipi.cxx b/sc/source/ui/navipi/navipi.cxx index afe56afb4328..5b8d8e9b9c81 100644 --- a/sc/source/ui/navipi/navipi.cxx +++ b/sc/source/ui/navipi/navipi.cxx @@ -59,6 +59,7 @@ #include "navipi.hrc" #include "navipi.hxx" #include "navsett.hxx" +#include "markdata.hxx" // Timeout, um Notizen zu suchen #define SC_CONTENT_TIMEOUT 1000 diff --git a/sc/source/ui/pagedlg/areasdlg.cxx b/sc/source/ui/pagedlg/areasdlg.cxx index fab711f70ffc..b239d525acb9 100644 --- a/sc/source/ui/pagedlg/areasdlg.cxx +++ b/sc/source/ui/pagedlg/areasdlg.cxx @@ -52,6 +52,7 @@ #include "globstr.hrc" #include "pagedlg.hrc" #include "compiler.hxx" +#include "markdata.hxx" // STATIC DATA --------------------------------------------------------------- diff --git a/sc/source/ui/undo/undodat.cxx b/sc/source/ui/undo/undodat.cxx index 2f3edf7e927c..da3617b623e5 100644 --- a/sc/source/ui/undo/undodat.cxx +++ b/sc/source/ui/undo/undodat.cxx @@ -56,6 +56,7 @@ #include "sc.hrc" #include "chgtrack.hxx" // Amelia Wang #include "refundo.hxx" // Amelia Wang +#include "markdata.hxx" // ----------------------------------------------------------------------- @@ -2030,7 +2031,7 @@ ScUndoDataForm::ScUndoDataForm( ScDocShell* pNewDocShell, void* /*pFill1*/, void* /*pFill2*/, void* /*pFill3*/, sal_Bool bRedoIsFilled ) : ScBlockUndo( pNewDocShell, ScRange( nStartX, nStartY, nStartZ, nEndX, nEndY, nEndZ ), SC_UNDO_SIMPLE ), - aMarkData( rMark ), + mpMarkData(new ScMarkData(rMark)), pUndoDoc( pNewUndoDoc ), pRedoDoc( pNewRedoDoc ), nFlags( nNewFlags ), @@ -2042,8 +2043,8 @@ ScUndoDataForm::ScUndoDataForm( ScDocShell* pNewDocShell, // don't have to be changed and branched for 641. // They can be removed later. - if ( !aMarkData.IsMarked() ) // no cell marked: - aMarkData.SetMarkArea( aBlockRange ); // mark paste block + if (!mpMarkData->IsMarked()) // no cell marked: + mpMarkData->SetMarkArea(aBlockRange); // mark paste block if ( pRefUndoData ) pRefUndoData->DeleteUnchanged( pDocShell->GetDocument() ); @@ -2136,7 +2137,7 @@ void ScUndoDataForm::DoChange( const sal_Bool bUndo ) sal_Bool bRowInfo = ( aBlockRange.aStart.Col()==0 && aBlockRange.aEnd.Col()==MAXCOL ); pRedoDoc = new ScDocument( SCDOCMODE_UNDO ); - pRedoDoc->InitUndoSelected( pDoc, aMarkData, bColInfo, bRowInfo ); + pRedoDoc->InitUndoSelected( pDoc, *mpMarkData, bColInfo, bRowInfo ); } // read "redo" data from the document in the first undo // all sheets - CopyToDocument skips those that don't exist in pRedoDoc diff --git a/sc/source/ui/undo/undotab.cxx b/sc/source/ui/undo/undotab.cxx index 0dc6c48d1d18..ae60b01e118f 100644 --- a/sc/source/ui/undo/undotab.cxx +++ b/sc/source/ui/undo/undotab.cxx @@ -50,6 +50,7 @@ #include "tabprotection.hxx" #include "viewdata.hxx" #include "progress.hxx" +#include "markdata.hxx" // for ScUndoRenameObject - might me moved to another file later #include <svx/svditer.hxx> @@ -857,13 +858,13 @@ ScUndoMakeScenario::ScUndoMakeScenario( ScDocShell* pNewDocShell, const Color& rCol, sal_uInt16 nF, const ScMarkData& rMark ) : ScSimpleUndo( pNewDocShell ), + mpMarkData(new ScMarkData(rMark)), nSrcTab( nSrc ), nDestTab( nDest ), aName( rN ), aComment( rC ), aColor( rCol ), nFlags( nF ), - aMarkData( rMark ), pDrawUndo( NULL ) { pDrawUndo = GetSdrUndoAction( pDocShell->GetDocument() ); @@ -906,14 +907,14 @@ void ScUndoMakeScenario::Undo() void ScUndoMakeScenario::Redo() { - SetViewMarkData( aMarkData ); + SetViewMarkData(*mpMarkData); RedoSdrUndoAction( pDrawUndo ); // Draw Redo first pDocShell->SetInUndo( sal_True ); bDrawIsInUndo = sal_True; - pDocShell->MakeScenario( nSrcTab, aName, aComment, aColor, nFlags, aMarkData, false ); + pDocShell->MakeScenario( nSrcTab, aName, aComment, aColor, nFlags, *mpMarkData, false ); bDrawIsInUndo = false; pDocShell->SetInUndo( false ); diff --git a/sc/source/ui/undo/undoutil.cxx b/sc/source/ui/undo/undoutil.cxx index e453c0ab9b67..a1fcc23b8cde 100644 --- a/sc/source/ui/undo/undoutil.cxx +++ b/sc/source/ui/undo/undoutil.cxx @@ -44,6 +44,7 @@ #include "globstr.hrc" #include "globalnames.hxx" #include "global.hxx" +#include "markdata.hxx" void ScUndoUtil::MarkSimpleBlock( ScDocShell* pDocShell, SCCOL nStartX, SCROW nStartY, SCTAB nStartZ, diff --git a/sc/source/ui/unoobj/viewuno.cxx b/sc/source/ui/unoobj/viewuno.cxx index f52b73a9eaa9..ba70948ae4e0 100644 --- a/sc/source/ui/unoobj/viewuno.cxx +++ b/sc/source/ui/unoobj/viewuno.cxx @@ -72,6 +72,7 @@ #include "appoptio.hxx" #include "gridwin.hxx" #include "sheetevents.hxx" +#include "markdata.hxx" #include "AccessibilityHints.hxx" #include <svx/sdrhittesthelper.hxx> diff --git a/sc/source/ui/vba/vbarange.cxx b/sc/source/ui/vba/vbarange.cxx index 35df42ab5f77..f84f5b48a75c 100644 --- a/sc/source/ui/vba/vbarange.cxx +++ b/sc/source/ui/vba/vbarange.cxx @@ -178,6 +178,7 @@ #include "olinetab.hxx" #include "transobj.hxx" #include "queryentry.hxx" +#include "markdata.hxx" #include <comphelper/anytostring.hxx> #include <global.hxx> diff --git a/sc/source/ui/vba/vbawindow.cxx b/sc/source/ui/vba/vbawindow.cxx index e728474c1ff7..4e03d96cf9b1 100644 --- a/sc/source/ui/vba/vbawindow.cxx +++ b/sc/source/ui/vba/vbawindow.cxx @@ -51,6 +51,7 @@ #include <sfx2/viewfrm.hxx> #include <vcl/wrkwin.hxx> #include "unonames.hxx" +#include "markdata.hxx" using namespace ::com::sun::star; using namespace ::ooo::vba; diff --git a/sc/source/ui/vba/vbaworksheet.cxx b/sc/source/ui/vba/vbaworksheet.cxx index 9fbb174ed9e6..cea1ee53440f 100644 --- a/sc/source/ui/vba/vbaworksheet.cxx +++ b/sc/source/ui/vba/vbaworksheet.cxx @@ -108,6 +108,7 @@ #include "vbahyperlinks.hxx" #include "vbasheetobjects.hxx" #include "viewuno.hxx" +#include "markdata.hxx" #include "attrib.hxx" diff --git a/sc/source/ui/vba/vbaworksheets.cxx b/sc/source/ui/vba/vbaworksheets.cxx index b0e19cc7d060..02828efd2f7e 100644 --- a/sc/source/ui/vba/vbaworksheets.cxx +++ b/sc/source/ui/vba/vbaworksheets.cxx @@ -54,6 +54,7 @@ #include "vbaworksheet.hxx" #include "vbaworkbook.hxx" #include "unonames.hxx" +#include "markdata.hxx" #include <vector> diff --git a/sc/source/ui/view/cellsh.cxx b/sc/source/ui/view/cellsh.cxx index e781ffa69ca7..f06e4491fa69 100644 --- a/sc/source/ui/view/cellsh.cxx +++ b/sc/source/ui/view/cellsh.cxx @@ -67,6 +67,7 @@ #include "postit.hxx" #include "cliputil.hxx" #include "clipparam.hxx" +#include "markdata.hxx" //------------------------------------------------------------------ diff --git a/sc/source/ui/view/cellsh1.cxx b/sc/source/ui/view/cellsh1.cxx index 0aab1e5b9908..fd86dbe14375 100644 --- a/sc/source/ui/view/cellsh1.cxx +++ b/sc/source/ui/view/cellsh1.cxx @@ -101,6 +101,7 @@ #include "dbdata.hxx" #include "docsh.hxx" #include "cliputil.hxx" +#include "markdata.hxx" #include "globstr.hrc" #include "scui_def.hxx" diff --git a/sc/source/ui/view/cellsh2.cxx b/sc/source/ui/view/cellsh2.cxx index 8a565bcbe81f..a437bfe5996f 100644 --- a/sc/source/ui/view/cellsh2.cxx +++ b/sc/source/ui/view/cellsh2.cxx @@ -76,6 +76,7 @@ #include "impex.hxx" #include "asciiopt.hxx" #include "queryentry.hxx" +#include "markdata.hxx" using namespace com::sun::star; diff --git a/sc/source/ui/view/cellsh3.cxx b/sc/source/ui/view/cellsh3.cxx index 0999a3c18cf0..3914d6fca1c1 100644 --- a/sc/source/ui/view/cellsh3.cxx +++ b/sc/source/ui/view/cellsh3.cxx @@ -56,7 +56,7 @@ #include "attrdlg.hrc" // TP_ALIGNMENT #include "inputhdl.hxx" #include "editable.hxx" - +#include "markdata.hxx" #include "scabstdlg.hxx" #define IS_EDITMODE() GetViewData()->HasEditView( GetViewData()->GetActivePart() ) diff --git a/sc/source/ui/view/cliputil.cxx b/sc/source/ui/view/cliputil.cxx index bd8be80d537e..74ac721e403d 100644 --- a/sc/source/ui/view/cliputil.cxx +++ b/sc/source/ui/view/cliputil.cxx @@ -36,6 +36,7 @@ #include "clipparam.hxx" #include "rangelst.hxx" #include "viewutil.hxx" +#include "markdata.hxx" #include "vcl/waitobj.hxx" diff --git a/sc/source/ui/view/colrowba.cxx b/sc/source/ui/view/colrowba.cxx index 83c5ab9dc829..27ce6d618c6b 100644 --- a/sc/source/ui/view/colrowba.cxx +++ b/sc/source/ui/view/colrowba.cxx @@ -43,6 +43,7 @@ #include "docsh.hxx" #include "appoptio.hxx" #include "globstr.hrc" +#include "markdata.hxx" // STATIC DATA ----------------------------------------------------------- diff --git a/sc/source/ui/view/dbfunc.cxx b/sc/source/ui/view/dbfunc.cxx index d1aff8c5dbfa..1565acad07ab 100644 --- a/sc/source/ui/view/dbfunc.cxx +++ b/sc/source/ui/view/dbfunc.cxx @@ -51,6 +51,7 @@ #include "dbdocfun.hxx" #include "editable.hxx" #include "queryentry.hxx" +#include "markdata.hxx" //================================================================== diff --git a/sc/source/ui/view/dbfunc3.cxx b/sc/source/ui/view/dbfunc3.cxx index e4c4f9e0fa96..78253f8e211b 100644 --- a/sc/source/ui/view/dbfunc3.cxx +++ b/sc/source/ui/view/dbfunc3.cxx @@ -81,6 +81,7 @@ #include "cell.hxx" #include "userlist.hxx" #include "queryentry.hxx" +#include "markdata.hxx" #include <boost/unordered_set.hpp> #include <boost/unordered_map.hpp> diff --git a/sc/source/ui/view/formatsh.cxx b/sc/source/ui/view/formatsh.cxx index 092a619e735c..14ed51792284 100644 --- a/sc/source/ui/view/formatsh.cxx +++ b/sc/source/ui/view/formatsh.cxx @@ -100,6 +100,7 @@ #include "scresid.hxx" #include "tabvwsh.hxx" #include "undostyl.hxx" +#include "markdata.hxx" #define ScFormatShell diff --git a/sc/source/ui/view/gridwin.cxx b/sc/source/ui/view/gridwin.cxx index b533a82e03f0..23e1692517e9 100644 --- a/sc/source/ui/view/gridwin.cxx +++ b/sc/source/ui/view/gridwin.cxx @@ -133,6 +133,7 @@ #include "dragdata.hxx" #include "cliputil.hxx" #include "queryentry.hxx" +#include "markdata.hxx" #include <svx/sdrpagewindow.hxx> #include <svx/sdr/overlay/overlaymanager.hxx> diff --git a/sc/source/ui/view/gridwin4.cxx b/sc/source/ui/view/gridwin4.cxx index 1ee84cf3a0d7..e1d582c59daf 100644 --- a/sc/source/ui/view/gridwin4.cxx +++ b/sc/source/ui/view/gridwin4.cxx @@ -70,6 +70,7 @@ #include "dpcontrol.hxx" #include "queryparam.hxx" #include "queryentry.hxx" +#include "markdata.hxx" #include "sc.hrc" #include <vcl/virdev.hxx> diff --git a/sc/source/ui/view/hdrcont.cxx b/sc/source/ui/view/hdrcont.cxx index 407dfeeca691..254d24cd0a8d 100644 --- a/sc/source/ui/view/hdrcont.cxx +++ b/sc/source/ui/view/hdrcont.cxx @@ -46,6 +46,7 @@ #include "inputopt.hxx" // Optionen #include "gridmerg.hxx" #include "document.hxx" +#include "markdata.hxx" // ----------------------------------------------------------------------- diff --git a/sc/source/ui/view/preview.cxx b/sc/source/ui/view/preview.cxx index 1e39c3b5a8c9..db4b2c0d515d 100644 --- a/sc/source/ui/view/preview.cxx +++ b/sc/source/ui/view/preview.cxx @@ -60,6 +60,7 @@ #include "undostyl.hxx" #include "drwlayer.hxx" #include "scmod.hxx" +#include "markdata.hxx" #include "globstr.hrc" #include "sc.hrc" // fuer ShellInvalidate #include "AccessibleDocumentPagePreview.hxx" diff --git a/sc/source/ui/view/select.cxx b/sc/source/ui/view/select.cxx index dfc38abe0447..eee115e67e77 100644 --- a/sc/source/ui/view/select.cxx +++ b/sc/source/ui/view/select.cxx @@ -46,6 +46,7 @@ #include "transobj.hxx" #include "docsh.hxx" #include "tabprotection.hxx" +#include "markdata.hxx" #define SC_SELENG_REFMODE_UPDATE_INTERVAL_MIN 65 diff --git a/sc/source/ui/view/selectionstate.cxx b/sc/source/ui/view/selectionstate.cxx index 93bcb4c68082..bc5411915e74 100644 --- a/sc/source/ui/view/selectionstate.cxx +++ b/sc/source/ui/view/selectionstate.cxx @@ -32,6 +32,7 @@ #include <editeng/editview.hxx> #include "viewdata.hxx" +#include "markdata.hxx" // ============================================================================ diff --git a/sc/source/ui/view/spelleng.cxx b/sc/source/ui/view/spelleng.cxx index 10d517b31a5e..e6ca322cc72a 100644 --- a/sc/source/ui/view/spelleng.cxx +++ b/sc/source/ui/view/spelleng.cxx @@ -51,7 +51,7 @@ #include "patattr.hxx" #include "waitoff.hxx" #include "globstr.hrc" - +#include "markdata.hxx" using namespace ::com::sun::star; diff --git a/sc/source/ui/view/tabcont.cxx b/sc/source/ui/view/tabcont.cxx index db140e745adf..37f691438209 100644 --- a/sc/source/ui/view/tabcont.cxx +++ b/sc/source/ui/view/tabcont.cxx @@ -49,6 +49,7 @@ #include "transobj.hxx" #include "clipparam.hxx" #include "dragdata.hxx" +#include "markdata.hxx" // STATIC DATA ----------------------------------------------------------- diff --git a/sc/source/ui/view/tabview2.cxx b/sc/source/ui/view/tabview2.cxx index 1dcb4e1a6274..c65ae91a5391 100644 --- a/sc/source/ui/view/tabview2.cxx +++ b/sc/source/ui/view/tabview2.cxx @@ -55,6 +55,7 @@ #include "globstr.hrc" #include "scmod.hxx" #include "tabprotection.hxx" +#include "markdata.hxx" namespace { diff --git a/sc/source/ui/view/tabview3.cxx b/sc/source/ui/view/tabview3.cxx index b7f7ef836f1d..9284d5e16c53 100644 --- a/sc/source/ui/view/tabview3.cxx +++ b/sc/source/ui/view/tabview3.cxx @@ -78,6 +78,7 @@ #include "rangeutl.hxx" #include "client.hxx" #include "tabprotection.hxx" +#include "markdata.hxx" #include "formula/FormulaCompiler.hxx" #include <com/sun/star/chart2/data/HighlightedRange.hpp> diff --git a/sc/source/ui/view/tabvwsh3.cxx b/sc/source/ui/view/tabvwsh3.cxx index 34bd4261a4bc..b23f8c30adf2 100644 --- a/sc/source/ui/view/tabvwsh3.cxx +++ b/sc/source/ui/view/tabvwsh3.cxx @@ -71,6 +71,7 @@ #include "shtabdlg.hxx" #include "tabprotection.hxx" #include "protectiondlg.hxx" +#include "markdata.hxx" #include <svl/ilstitem.hxx> #include <vector> diff --git a/sc/source/ui/view/tabvwsha.cxx b/sc/source/ui/view/tabvwsha.cxx index 9de8b210407b..53318b4d89f7 100644 --- a/sc/source/ui/view/tabvwsha.cxx +++ b/sc/source/ui/view/tabvwsha.cxx @@ -66,6 +66,7 @@ #include "dwfunctr.hxx" #include "scabstdlg.hxx" #include "compiler.hxx" +#include "markdata.hxx" sal_Bool ScTabViewShell::GetFunction( String& rFuncStr, sal_uInt16 nErrCode ) diff --git a/sc/source/ui/view/tabvwshc.cxx b/sc/source/ui/view/tabvwshc.cxx index 0c1f007868d5..25167ea29311 100644 --- a/sc/source/ui/view/tabvwshc.cxx +++ b/sc/source/ui/view/tabvwshc.cxx @@ -70,6 +70,7 @@ #include "simpref.hxx" #include "funcdesc.hxx" #include "dpobject.hxx" +#include "markdata.hxx" #include <iostream> diff --git a/sc/source/ui/view/tabvwshf.cxx b/sc/source/ui/view/tabvwshf.cxx index a9a2cc39f8c3..201fc844dfe9 100644 --- a/sc/source/ui/view/tabvwshf.cxx +++ b/sc/source/ui/view/tabvwshf.cxx @@ -59,6 +59,7 @@ #include "tabbgcolor.hxx" #include "tabbgcolordlg.hxx" #include "sccommands.h" +#include "markdata.hxx" #include <vector> diff --git a/sc/source/ui/view/viewdata.cxx b/sc/source/ui/view/viewdata.cxx index 75e404f32773..0e3d6bde6100 100644 --- a/sc/source/ui/view/viewdata.cxx +++ b/sc/source/ui/view/viewdata.cxx @@ -66,6 +66,7 @@ #include "unonames.hxx" #include "inputopt.hxx" #include "viewutil.hxx" +#include "markdata.hxx" #include "stlalgorithm.hxx" #include "ViewSettingsSequenceDefines.hxx" #include <rtl/ustrbuf.hxx> @@ -298,6 +299,7 @@ void ScViewDataTable::ReadUserDataSequence(const uno::Sequence <beans::PropertyV } ScViewData::ScViewData( ScDocShell* pDocSh, ScTabViewShell* pViewSh ) : + mpMarkData(new ScMarkData), pDocShell ( pDocSh ), pDoc ( NULL ), pView ( pViewSh ), @@ -462,7 +464,7 @@ void ScViewData::InsertTab( SCTAB nTab ) CreateTabData( nTab ); UpdateCurrentTab(); - aMarkData.InsertTab( nTab ); + mpMarkData->InsertTab( nTab ); } void ScViewData::InsertTabs( SCTAB nTab, SCTAB nNewSheets ) @@ -476,7 +478,7 @@ void ScViewData::InsertTabs( SCTAB nTab, SCTAB nNewSheets ) for (SCTAB i = nTab; i < nTab + nNewSheets; ++i) { CreateTabData( i ); - aMarkData.InsertTab( i ); + mpMarkData->InsertTab( i ); } UpdateCurrentTab(); } @@ -487,14 +489,14 @@ void ScViewData::DeleteTab( SCTAB nTab ) maTabData.erase(maTabData.begin() + nTab); UpdateCurrentTab(); - aMarkData.DeleteTab( nTab ); + mpMarkData->DeleteTab( nTab ); } void ScViewData::DeleteTabs( SCTAB nTab, SCTAB nSheets ) { for (SCTAB i = 0; i < nSheets; ++i) { - aMarkData.DeleteTab( nTab + i ); + mpMarkData->DeleteTab( nTab + i ); delete maTabData.at(nTab + i); } @@ -524,7 +526,7 @@ void ScViewData::CopyTab( SCTAB nSrcTab, SCTAB nDestTab ) maTabData.insert(maTabData.begin() + nDestTab, NULL); UpdateCurrentTab(); - aMarkData.InsertTab( nDestTab ); + mpMarkData->InsertTab( nDestTab ); } void ScViewData::MoveTab( SCTAB nSrcTab, SCTAB nDestTab ) @@ -547,8 +549,8 @@ void ScViewData::MoveTab( SCTAB nSrcTab, SCTAB nDestTab ) } UpdateCurrentTab(); - aMarkData.DeleteTab( nSrcTab ); - aMarkData.InsertTab( nDestTab ); // ggf. angepasst + mpMarkData->DeleteTab( nSrcTab ); + mpMarkData->InsertTab( nDestTab ); // ggf. angepasst } void ScViewData::CreateTabData( std::vector< SCTAB >& rvTabs ) @@ -592,7 +594,7 @@ void ScViewData::SetZoomType( SvxZoomType eNew, sal_Bool bAll ) std::vector< SCTAB > vTabs; // Empty for all tabs if ( !bAll ) // get selected tabs { - ScMarkData::iterator itr = aMarkData.begin(), itrEnd = aMarkData.end(); + ScMarkData::iterator itr = mpMarkData->begin(), itrEnd = mpMarkData->end(); vTabs.insert(vTabs.begin(), itr, itrEnd); } SetZoomType( eNew, vTabs ); @@ -677,7 +679,7 @@ void ScViewData::SetZoom( const Fraction& rNewX, const Fraction& rNewY, sal_Bool std::vector< SCTAB > vTabs; if ( !bAll ) // get selected tabs { - ScMarkData::iterator itr = aMarkData.begin(), itrEnd = aMarkData.end(); + ScMarkData::iterator itr = mpMarkData->begin(), itrEnd = mpMarkData->end(); vTabs.insert(vTabs.begin(), itr, itrEnd); } SetZoom( rNewX, rNewY, vTabs ); @@ -747,7 +749,7 @@ ScMarkType ScViewData::GetSimpleArea( SCCOL& rStartCol, SCROW& rStartRow, SCTAB& // handling itself) ScRange aRange; - ScMarkData aNewMark( aMarkData ); // use a local copy for MarkToSimple + ScMarkData aNewMark(*mpMarkData); // use a local copy for MarkToSimple ScMarkType eMarkType = GetSimpleArea( aRange, aNewMark); aRange.GetVars( rStartCol, rStartRow, rStartTab, rEndCol, rEndRow, rEndTab); return eMarkType; @@ -757,7 +759,7 @@ ScMarkType ScViewData::GetSimpleArea( ScRange& rRange ) const { // parameter bMergeMark is no longer needed, see above - ScMarkData aNewMark( aMarkData ); // use a local copy for MarkToSimple + ScMarkData aNewMark(*mpMarkData); // use a local copy for MarkToSimple return GetSimpleArea( rRange, aNewMark); } @@ -765,7 +767,7 @@ void ScViewData::GetMultiArea( ScRangeListRef& rRange ) const { // parameter bMergeMark is no longer needed, see GetSimpleArea - ScMarkData aNewMark( aMarkData ); // use a local copy for MarkToSimple + ScMarkData aNewMark(*mpMarkData); // use a local copy for MarkToSimple sal_Bool bMulti = aNewMark.IsMultiMarked(); if (bMulti) @@ -1427,7 +1429,7 @@ void ScViewData::CreateTabData( SCTAB nNewTab ) void ScViewData::CreateSelectedTabData() { - ScMarkData::iterator itr = aMarkData.begin(), itrEnd = aMarkData.end(); + ScMarkData::iterator itr = mpMarkData->begin(), itrEnd = mpMarkData->end(); for (; itr != itrEnd; ++itr) CreateTabData(*itr); } @@ -2076,6 +2078,16 @@ SfxDispatcher& ScViewData::GetDispatcher() return *pViewShell->GetViewFrame()->GetDispatcher(); } +ScMarkData& ScViewData::GetMarkData() +{ + return *mpMarkData; +} + +const ScMarkData& ScViewData::GetMarkData() const +{ + return *mpMarkData; +} + Window* ScViewData::GetDialogParent() { OSL_ENSURE( pViewShell, "GetDialogParent() ohne ViewShell" ); diff --git a/sc/source/ui/view/viewfun5.cxx b/sc/source/ui/view/viewfun5.cxx index 68ae39217af0..f5571aba06e9 100644 --- a/sc/source/ui/view/viewfun5.cxx +++ b/sc/source/ui/view/viewfun5.cxx @@ -78,6 +78,7 @@ #include "asciiopt.hxx" #include "scabstdlg.hxx" #include "clipparam.hxx" +#include "markdata.hxx" #include <vcl/msgbox.hxx> #include <sfx2/viewfrm.hxx> #include <svx/dbaexchange.hxx> diff --git a/sc/source/ui/view/viewfun6.cxx b/sc/source/ui/view/viewfun6.cxx index 47a87a18f0ed..b86fbf26fe6d 100644 --- a/sc/source/ui/view/viewfun6.cxx +++ b/sc/source/ui/view/viewfun6.cxx @@ -53,6 +53,7 @@ #include "reftokenhelper.hxx" #include "externalrefmgr.hxx" #include "cell.hxx" +#include "markdata.hxx" #include <vector> |