summaryrefslogtreecommitdiff
path: root/sc/inc/prnsave.hxx
diff options
context:
space:
mode:
Diffstat (limited to 'sc/inc/prnsave.hxx')
-rw-r--r--sc/inc/prnsave.hxx83
1 files changed, 83 insertions, 0 deletions
diff --git a/sc/inc/prnsave.hxx b/sc/inc/prnsave.hxx
new file mode 100644
index 000000000000..197e8072048d
--- /dev/null
+++ b/sc/inc/prnsave.hxx
@@ -0,0 +1,83 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*************************************************************************
+ *
+ * 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_PRNSAVE_HXX
+#define SC_PRNSAVE_HXX
+
+#include "address.hxx"
+#include <tools/solar.h>
+
+#include <vector>
+
+class ScRange;
+
+class ScPrintSaverTab
+{
+ typedef ::std::vector< ScRange > ScRangeVec;
+
+ ScRangeVec maPrintRanges; // Array
+ ScRange* mpRepeatCol; // single
+ ScRange* mpRepeatRow; // single
+ sal_Bool mbEntireSheet;
+
+public:
+ ScPrintSaverTab();
+ ~ScPrintSaverTab();
+
+ void SetAreas( const ScRangeVec& rRanges, sal_Bool bEntireSheet );
+ void SetRepeat( const ScRange* pCol, const ScRange* pRow );
+
+ const ScRangeVec& GetPrintRanges() const { return maPrintRanges; }
+ sal_Bool IsEntireSheet() const { return mbEntireSheet; }
+ const ScRange* GetRepeatCol() const { return mpRepeatCol; }
+ const ScRange* GetRepeatRow() const { return mpRepeatRow; }
+
+ sal_Bool operator==( const ScPrintSaverTab& rCmp ) const;
+};
+
+class ScPrintRangeSaver
+{
+ SCTAB nTabCount;
+ ScPrintSaverTab* pData; // Array
+
+public:
+ ScPrintRangeSaver( SCTAB nCount );
+ ~ScPrintRangeSaver();
+
+ SCTAB GetTabCount() const { return nTabCount; }
+ ScPrintSaverTab& GetTabData(SCTAB nTab);
+ const ScPrintSaverTab& GetTabData(SCTAB nTab) const;
+
+ sal_Bool operator==( const ScPrintRangeSaver& rCmp ) const;
+};
+
+
+#endif
+
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */