LibreOffice Module sd (master)
1
sd
source
ui
animations
STLPropertySet.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 <map>
23
#include <com/sun/star/uno/Any.hxx>
24
#include <utility>
25
26
namespace
sd
27
{
28
29
enum class
STLPropertyState
{
30
Default
= 0,
31
Direct
= 1,
32
Ambiguous
= 3
33
};
34
35
struct
STLPropertyMapEntry
36
{
37
css::uno::Any
maValue
;
38
STLPropertyState
mnState
;
39
40
STLPropertyMapEntry
()
41
:
mnState
(
STLPropertyState
::
Ambiguous
) {}
42
explicit
STLPropertyMapEntry
(css::uno::Any aValue)
43
:
maValue
(
std
::move( aValue )),
mnState
(
STLPropertyState
::
Default
) {}
44
45
};
46
47
typedef
std::map<sal_Int32, STLPropertyMapEntry >
PropertyMap
;
48
typedef
PropertyMap::iterator
PropertyMapIter
;
49
typedef
PropertyMap::const_iterator
PropertyMapConstIter
;
50
51
class
STLPropertySet
52
{
53
public
:
54
STLPropertySet
();
55
~STLPropertySet
();
56
57
void
setPropertyDefaultValue
( sal_Int32
nHandle
,
const
css::uno::Any& rValue );
58
void
setPropertyValue
( sal_Int32
nHandle
,
const
css::uno::Any& rValue );
59
css::uno::Any
getPropertyValue
( sal_Int32
nHandle
)
const
;
60
61
STLPropertyState
getPropertyState
( sal_Int32
nHandle
)
const
;
62
void
setPropertyState
( sal_Int32
nHandle
,
STLPropertyState
nState
);
63
64
private
:
65
bool
findProperty
( sal_Int32
nHandle
,
PropertyMapIter
& rIter );
66
bool
findProperty
( sal_Int32
nHandle
,
PropertyMapConstIter
& rIter )
const
;
67
68
private
:
69
PropertyMap
maPropertyMap
;
70
};
71
72
}
73
74
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
SwCopyFlags::Default
@ Default
sd::STLPropertySet
Definition:
STLPropertySet.hxx:52
sd::STLPropertySet::getPropertyState
STLPropertyState getPropertyState(sal_Int32 nHandle) const
Definition:
STLPropertySet.cxx:72
sd::STLPropertySet::setPropertyValue
void setPropertyValue(sal_Int32 nHandle, const css::uno::Any &rValue)
Definition:
STLPropertySet.cxx:42
sd::STLPropertySet::maPropertyMap
PropertyMap maPropertyMap
Definition:
STLPropertySet.hxx:69
sd::STLPropertySet::findProperty
bool findProperty(sal_Int32 nHandle, PropertyMapIter &rIter)
Definition:
STLPropertySet.cxx:99
sd::STLPropertySet::setPropertyState
void setPropertyState(sal_Int32 nHandle, STLPropertyState nState)
Definition:
STLPropertySet.cxx:86
sd::STLPropertySet::~STLPropertySet
~STLPropertySet()
Definition:
STLPropertySet.cxx:32
sd::STLPropertySet::setPropertyDefaultValue
void setPropertyDefaultValue(sal_Int32 nHandle, const css::uno::Any &rValue)
Definition:
STLPropertySet.cxx:36
sd::STLPropertySet::STLPropertySet
STLPropertySet()
Definition:
STLPropertySet.cxx:28
sd::STLPropertySet::getPropertyValue
css::uno::Any getPropertyValue(sal_Int32 nHandle) const
Definition:
STLPropertySet.cxx:56
ScConditionMode::Direct
@ Direct
nState
sal_Int32 nState
sd
sd::PropertyMap
std::map< sal_Int32, STLPropertyMapEntry > PropertyMap
Definition:
STLPropertySet.hxx:47
sd::STLPropertyState
STLPropertyState
Definition:
STLPropertySet.hxx:29
sd::STLPropertyState::Ambiguous
@ Ambiguous
sd::PropertyMapIter
PropertyMap::iterator PropertyMapIter
Definition:
STLPropertySet.hxx:48
sd::PropertyMapConstIter
PropertyMap::const_iterator PropertyMapConstIter
Definition:
STLPropertySet.hxx:49
std
nHandle
sal_Int32 nHandle
sd::STLPropertyMapEntry
Definition:
STLPropertySet.hxx:36
sd::STLPropertyMapEntry::mnState
STLPropertyState mnState
Definition:
STLPropertySet.hxx:38
sd::STLPropertyMapEntry::maValue
css::uno::Any maValue
Definition:
STLPropertySet.hxx:37
sd::STLPropertyMapEntry::STLPropertyMapEntry
STLPropertyMapEntry()
Definition:
STLPropertySet.hxx:40
sd::STLPropertyMapEntry::STLPropertyMapEntry
STLPropertyMapEntry(css::uno::Any aValue)
Definition:
STLPropertySet.hxx:42
Generated on Sun Jul 30 2023 04:27:07 for LibreOffice Module sd (master) by
1.9.3