LibreOffice Module svtools (master)
1
Toggle main menu visibility
Main Page
Related Pages
Namespaces
Namespace List
Namespace Members
All
a
b
c
d
e
f
g
h
i
l
m
n
o
p
q
r
s
t
u
w
Functions
a
d
e
g
i
l
o
s
u
w
Variables
Typedefs
Enumerations
Enumerator
a
b
c
d
f
g
h
l
o
q
r
s
t
w
Classes
Class List
Class Index
Class Hierarchy
Class Members
All
:
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
z
~
Functions
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
z
~
Variables
_
a
b
c
d
e
h
l
m
n
o
p
s
t
u
w
x
Typedefs
Enumerations
Enumerator
Related Functions
Files
File List
File Members
All
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
r
s
t
u
v
w
x
Functions
a
c
d
f
g
i
l
m
o
s
t
u
Variables
a
b
c
d
e
f
g
h
j
m
n
p
r
s
t
w
x
Typedefs
Enumerations
Enumerator
r
s
t
v
Macros
b
c
d
e
f
g
h
i
l
m
n
o
p
r
s
t
u
v
w
Examples
include
svtools
borderline.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
20
#pragma once
21
22
#include <
svtools/svtdllapi.h
>
23
#include <
o3tl/typed_flags_set.hxx
>
24
#include <
tools/long.hxx
>
25
43
enum class
BorderWidthImplFlags
44
{
45
FIXED
= 0,
46
CHANGE_LINE1
= 1,
47
CHANGE_LINE2
= 2,
48
CHANGE_DIST
= 4,
49
};
50
namespace
o3tl
51
{
52
template
<>
struct
typed_flags
<
BorderWidthImplFlags
> :
is_typed_flags
<BorderWidthImplFlags, 0x07> {};
53
}
54
class
SVT_DLLPUBLIC
BorderWidthImpl
55
{
56
BorderWidthImplFlags
m_nFlags
;
57
double
m_nRate1
;
58
double
m_nRate2
;
59
double
m_nRateGap
;
60
61
public
:
62
63
BorderWidthImpl
(
BorderWidthImplFlags
nFlags =
BorderWidthImplFlags::CHANGE_LINE1
,
double
nRate1 = 0.0,
64
double
nRate2 = 0.0,
double
nRateGap = 0.0 );
65
66
bool
operator== (
const
BorderWidthImpl
& r )
const
;
67
68
tools::Long
GetLine1 (
tools::Long
nWidth )
const
;
69
tools::Long
GetLine2(
tools::Long
nWidth )
const
;
70
tools::Long
GetGap(
tools::Long
nWidth )
const
;
71
72
tools::Long
GuessWidth(
tools::Long
nLine1,
tools::Long
nLine2,
tools::Long
nGap );
73
74
bool
IsEmpty
( )
const
{
return
(0 == m_nRate1) && (0 == m_nRate2); }
75
bool
IsDouble
( )
const
{
return
(0 != m_nRate1) && (0 != m_nRate2); }
76
};
77
78
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
BorderWidthImplFlags
BorderWidthImplFlags
Class computing border widths shared between Line style listbox and the SvxBorderLine implementation.
Definition:
borderline.hxx:44
BorderWidthImplFlags::CHANGE_LINE1
@ CHANGE_LINE1
BorderWidthImplFlags::CHANGE_DIST
@ CHANGE_DIST
BorderWidthImplFlags::CHANGE_LINE2
@ CHANGE_LINE2
BorderWidthImpl
Definition:
borderline.hxx:55
BorderWidthImpl::IsDouble
bool IsDouble() const
Definition:
borderline.hxx:75
BorderWidthImpl::m_nFlags
BorderWidthImplFlags m_nFlags
Definition:
borderline.hxx:56
BorderWidthImpl::m_nRateGap
double m_nRateGap
Definition:
borderline.hxx:59
BorderWidthImpl::m_nRate2
double m_nRate2
Definition:
borderline.hxx:58
BorderWidthImpl::m_nRate1
double m_nRate1
Definition:
borderline.hxx:57
BorderWidthImpl::IsEmpty
bool IsEmpty() const
Definition:
borderline.hxx:74
DefaultFontType::FIXED
@ FIXED
long.hxx
o3tl
tools::Long
long Long
o3tl::is_typed_flags
o3tl::typed_flags
svtdllapi.h
SVT_DLLPUBLIC
#define SVT_DLLPUBLIC
Definition:
svtdllapi.h:27
typed_flags_set.hxx
Generated on Sun Jul 30 2023 04:42:50 for LibreOffice Module svtools (master) by
1.9.3