LibreOffice Module sc (master) 1
documentstreamaccess.hxx
Go to the documentation of this file.
1/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2/*
3 * This file is part of the LibreOffice project.
4 *
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
8 */
9
10#pragma once
11
12#include <rtl/ustring.hxx>
13#include <memory>
14
15class ScDocument;
16class ScAddress;
17class ScRange;
18
19namespace sc
20{
21struct DocumentStreamAccessImpl;
22
28{
29 std::unique_ptr<DocumentStreamAccessImpl> mpImpl;
30
31public:
34
35 void setNumericCell(const ScAddress& rPos, double fVal);
36 void setStringCell(const ScAddress& rPos, const OUString& rStr);
37
42 void reset();
43
48 void shiftRangeUp(const ScRange& rRange);
49
54 void shiftRangeDown(const ScRange& rRange);
55};
56}
57
58/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
Provides methods to allow direct shifting of document content without broadcasting or shifting of bro...
void reset()
Clear its internal state, and more importantly all the block position hints currently held.
void shiftRangeUp(const ScRange &rRange)
Pop the top row inside specified range, shift all the other rows up by one, then set the bottom row e...
void setStringCell(const ScAddress &rPos, const OUString &rStr)
DocumentStreamAccess(ScDocument &rDoc)
void setNumericCell(const ScAddress &rPos, double fVal)
std::unique_ptr< DocumentStreamAccessImpl > mpImpl
void shiftRangeDown(const ScRange &rRange)
Top the bottom row inside specified range, shift all the other rows above downward by one by insertin...
CAUTION! The following defines must be in the same namespace as the respective type.