Line data Source code
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 :
11 : #ifndef INCLUDED_VCL_ITILEDRENDERABLE_HXX
12 : #define INCLUDED_VCL_ITILEDRENDERABLE_HXX
13 :
14 : #define LOK_USE_UNSTABLE_API
15 : #include <LibreOfficeKit/LibreOfficeKit.h>
16 : #include <tools/gen.hxx>
17 : #include <vcl/virdev.hxx>
18 :
19 : namespace vcl
20 : {
21 :
22 7746 : class VCL_DLLPUBLIC ITiledRenderable
23 : {
24 : public:
25 : virtual ~ITiledRenderable();
26 :
27 : /**
28 : * Paint a tile to a given VirtualDevice.
29 : *
30 : * Output parameters are measured in pixels, tile parameters are in
31 : * twips.
32 : */
33 : virtual void paintTile( VirtualDevice &rDevice,
34 : int nOutputWidth,
35 : int nOutputHeight,
36 : int nTilePosX,
37 : int nTilePosY,
38 : long nTileWidth,
39 : long nTileHeight ) = 0;
40 :
41 : /**
42 : * Get the document size in twips.
43 : */
44 : virtual Size getDocumentSize() = 0;
45 :
46 : /**
47 : * Set the document "part", i.e. slide for a slideshow, and
48 : * tab for a spreadsheet.
49 : */
50 0 : virtual void setPart( int nPart )
51 : {
52 : (void) nPart;
53 0 : }
54 :
55 : /**
56 : * Get the number of parts -- see setPart for further details.
57 : */
58 0 : virtual int getParts()
59 : {
60 0 : return 1;
61 : }
62 :
63 : /**
64 : * Get the currently displayed/selected part -- see setPart for further
65 : * details.
66 : */
67 0 : virtual int getPart()
68 : {
69 0 : return 0;
70 : }
71 :
72 : /**
73 : * Get the name of the currently displayed part, i.e. sheet in a spreadsheet
74 : * or slide in a presentation.
75 : */
76 0 : virtual OUString getPartName(int nPart)
77 : {
78 : (void) nPart;
79 0 : return OUString("");
80 : }
81 :
82 0 : virtual void setPartMode(LibreOfficeKitPartMode ePartMode)
83 : {
84 : (void) ePartMode;
85 0 : }
86 : };
87 :
88 : } // namespace vcl
89 :
90 : #endif // INCLUDED_VCL_ITILEDRENDERABLE_HXX
|