LibreOffice Module sw (master)
1
sw
source
core
layout
virtoutp.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
* This file incorporates work covered by the following license notice:
10
*
11
* Licensed to the Apache Software Foundation (ASF) under one or more
12
* contributor license agreements. See the NOTICE file distributed
13
* with this work for additional information regarding copyright
14
* ownership. The ASF licenses this file to you under the Apache
15
* License, Version 2.0 (the "License"); you may not use this file
16
* except in compliance with the License. You may obtain a copy of
17
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
18
*/
19
#ifndef INCLUDED_SW_SOURCE_CORE_LAYOUT_VIRTOUTP_HXX
20
#define INCLUDED_SW_SOURCE_CORE_LAYOUT_VIRTOUTP_HXX
21
22
#include <
vcl/virdev.hxx
>
23
24
#include <
swrect.hxx
>
25
26
class
SwViewShell
;
27
#define VIRTUALHEIGHT 64
28
29
class
SwLayVout
30
{
31
friend
void
FrameFinit
();
//deletes Vout
32
private
:
33
SwViewShell
*
m_pShell
;
34
VclPtr<OutputDevice>
m_pOut
;
35
VclPtr<VirtualDevice>
m_pVirDev
;
36
SwRect
m_aRect
;
37
SwRect
m_aOrgRect
;
38
Size
m_aSize
;
39
sal_uInt16
m_nCount
;
40
41
bool
DoesFit
(
const
Size
&rOut );
42
43
public
:
44
SwLayVout
() :
m_pShell
(nullptr),
m_pOut
(nullptr),
m_pVirDev
(nullptr),
m_aSize
(0,
VIRTUALHEIGHT
),
m_nCount
(0) {}
45
~SwLayVout
() {
m_pVirDev
.
disposeAndClear
(); }
46
48
void
Enter
(
SwViewShell
*pShell,
SwRect
&rRect,
bool
bOn );
49
void
Leave
() { --
m_nCount
;
Flush
(); }
50
51
void
SetOrgRect
(
SwRect
const
&rRect ) {
m_aOrgRect
= rRect; }
52
const
SwRect
&
GetOrgRect
()
const
{
return
m_aOrgRect
; }
53
54
bool
IsFlushable
()
const
{
return
bool(
m_pOut
); }
55
void
Flush_
();
56
void
Flush
() {
if
(
m_pOut
)
Flush_
(); }
57
};
58
59
#endif
60
61
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
Size
SwLayVout
Definition:
virtoutp.hxx:30
SwLayVout::m_aOrgRect
SwRect m_aOrgRect
Definition:
virtoutp.hxx:37
SwLayVout::Leave
void Leave()
Definition:
virtoutp.hxx:49
SwLayVout::Enter
void Enter(SwViewShell *pShell, SwRect &rRect, bool bOn)
OD 27.09.2002 #103636# - change 2nd parameter <rRect> - no longer <const>
Definition:
virtoutp.cxx:119
SwLayVout::~SwLayVout
~SwLayVout()
Definition:
virtoutp.hxx:45
SwLayVout::IsFlushable
bool IsFlushable() const
Definition:
virtoutp.hxx:54
SwLayVout::m_aSize
Size m_aSize
Definition:
virtoutp.hxx:38
SwLayVout::Flush_
void Flush_()
Definition:
virtoutp.cxx:180
SwLayVout::m_nCount
sal_uInt16 m_nCount
Definition:
virtoutp.hxx:39
SwLayVout::m_aRect
SwRect m_aRect
Definition:
virtoutp.hxx:36
SwLayVout::Flush
void Flush()
Definition:
virtoutp.hxx:56
SwLayVout::SetOrgRect
void SetOrgRect(SwRect const &rRect)
Definition:
virtoutp.hxx:51
SwLayVout::m_pOut
VclPtr< OutputDevice > m_pOut
Definition:
virtoutp.hxx:34
SwLayVout::m_pShell
SwViewShell * m_pShell
Definition:
virtoutp.hxx:33
SwLayVout::SwLayVout
SwLayVout()
Definition:
virtoutp.hxx:44
SwLayVout::FrameFinit
friend void FrameFinit()
Definition:
newfrm.cxx:307
SwLayVout::DoesFit
bool DoesFit(const Size &rOut)
Definition:
virtoutp.cxx:82
SwLayVout::m_pVirDev
VclPtr< VirtualDevice > m_pVirDev
Definition:
virtoutp.hxx:35
SwLayVout::GetOrgRect
const SwRect & GetOrgRect() const
Definition:
virtoutp.hxx:52
SwRect
Of course Writer needs its own rectangles.
Definition:
swrect.hxx:35
SwViewShell
Definition:
viewsh.hxx:110
VclPtr< OutputDevice >
VclPtr::disposeAndClear
void disposeAndClear()
swrect.hxx
virdev.hxx
VIRTUALHEIGHT
#define VIRTUALHEIGHT
Definition:
virtoutp.hxx:27
Generated on Sun Jul 30 2023 04:28:46 for LibreOffice Module sw (master) by
1.9.3