LibreOffice Module vcl (master)
1
include
vcl
EnumContext.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_VCL_ENUMCONTEXT_HXX
20
#define INCLUDED_VCL_ENUMCONTEXT_HXX
21
22
#include <
vcl/dllapi.h
>
23
24
#include <rtl/ustring.hxx>
25
26
27
namespace
vcl
{
28
29
class
VCL_DLLPUBLIC
EnumContext
30
{
31
public
:
32
enum class
Application
33
{
34
Writer
,
35
WriterGlobal,
36
WriterWeb,
37
WriterXML,
38
WriterForm,
39
WriterReport,
40
Calc
,
41
Chart
,
42
Draw
,
43
Impress
,
44
Formula
,
45
Base
,
46
47
// For your convenience to avoid duplicate code in the common
48
// case that Draw and Impress use identical context configurations.
49
DrawImpress
,
50
51
// Also for your convenience for the different variants of Writer documents.
52
WriterVariants,
53
54
// Used only by deck or panel descriptors. Matches any
55
// application.
56
Any
,
57
58
// Use this only in special circumstances. One might be the
59
// wish to disable a deck or panel during debugging.
60
NONE
,
61
62
LAST
= Application::NONE
63
};
64
enum class
Context
65
{
66
ThreeDObject,
67
Annotation,
68
Auditing,
69
Axis,
70
Cell
,
71
Chart
,
72
ChartElements,
73
Draw
,
74
DrawFontwork,
75
DrawLine
,
76
DrawPage,
77
DrawText
,
78
EditCell,
79
ErrorBar,
80
Form
,
81
Frame
,
82
Graphic
,
83
Grid
,
84
HandoutPage,
85
MasterPage
,
86
Math
,
87
Media
,
88
MultiObject,
89
NotesPage,
90
OLE
,
91
OutlineText
,
92
Pivot,
93
Printpreview,
94
Series,
95
SlidesorterPage,
96
Table
,
97
Text
,
98
TextObject
,
99
Trendline,
100
Sparkline,
101
102
// Default context of an application. Do we need this?
103
Default
,
104
105
// Used only by deck or panel descriptors. Matches any context.
106
Any
,
107
108
// Special context name that is only used when a deck would
109
// otherwise be empty.
110
Empty
,
111
112
Unknown
,
113
114
LAST
=
Unknown
115
};
116
117
EnumContext
();
118
EnumContext
(
119
const
Application
eApplication,
120
const
Context eContext);
121
129
sal_Int32 GetCombinedContext_DI()
const
;
130
131
Application
GetApplication_DI()
const
;
132
133
bool
operator ==
(
const
EnumContext
& rOther)
const
;
134
bool
operator !=
(
const
EnumContext
& rOther)
const
;
135
141
const
static
sal_Int32
NoMatch
;
142
143
static
Application
GetApplicationEnum (
const
OUString& rsApplicationName);
144
static
const
OUString& GetApplicationName (
const
Application
eApplication);
145
146
static
Context
GetContextEnum (
const
OUString& rsContextName);
147
static
const
OUString& GetContextName (
const
Context
eContext);
148
149
private
:
150
Application
meApplication
;
151
Context
meContext
;
152
153
static
void
ProvideApplicationContainers();
154
static
void
ProvideContextContainers();
155
static
void
AddEntry (
const
OUString& rsName,
const
Application
eApplication);
156
static
void
AddEntry (
const
OUString& rsName,
const
Context
eContext);
157
};
158
159
160
#define CombinedEnumContext(a,e) ((static_cast<sal_uInt16>(::vcl::EnumContext::a)<<16)\
161
| static_cast<sal_uInt16>(::vcl::EnumContext::e))
162
163
}
// end of namespace vcl
164
165
#endif
166
167
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
SwCopyFlags::Default
@ Default
Application
Base class used mainly for the LibreOffice Desktop class.
Definition:
svapp.hxx:237
Formula
Graphic
Definition:
graph.hxx:83
Writer
vcl::EnumContext
Definition:
EnumContext.hxx:30
vcl::EnumContext::NoMatch
static const sal_Int32 NoMatch
When two contexts are matched against each other, then application or context name may have the wildc...
Definition:
EnumContext.hxx:141
vcl::EnumContext::meApplication
Application meApplication
Definition:
EnumContext.hxx:150
vcl::EnumContext::meContext
Context meContext
Definition:
EnumContext.hxx:151
vcl::EnumContext::Context
Context
Definition:
EnumContext.hxx:65
dllapi.h
VCL_DLLPUBLIC
#define VCL_DLLPUBLIC
Definition:
dllapi.h:29
GotoObjFlags::Any
@ Any
CurRectType::Frame
@ Frame
SwFieldIds::LAST
@ LAST
PaintPartFlags::Grid
@ Grid
NONE
NONE
Unknown
Unknown
Empty
Empty
DrawLine
void DrawLine(OutputDevice &rDev, const basegfx::B2DPoint &rP1, const basegfx::B2DPoint &rP2, sal_uInt32 nWidth, SvxBorderLineStyle nDashing)
IssueObject::OLE
@ OLE
vcl::pdf::PDFPageObjectType::Form
@ Form
vcl
SwNodeType::Text
@ Text
OutlinerMode::TextObject
@ TextObject
DocumentType::Impress
@ Impress
Cell
Table
SdrObjKind::OutlineText
@ OutlineText
SwLabelType::Draw
@ Draw
SwTOOElements::Chart
@ Chart
SwTOOElements::DrawImpress
@ DrawImpress
SwTOOElements::Math
@ Math
SwTOOElements::Calc
@ Calc
Base
Base
MasterPage
MasterPage
operator==
bool operator==(const ItalicMatrix &a, const ItalicMatrix &b)
Definition:
vclenum.hxx:175
operator!=
bool operator!=(const ItalicMatrix &a, const ItalicMatrix &b)
Definition:
vclenum.hxx:180
ShellMode::Media
@ Media
ShellMode::DrawText
@ DrawText
Generated on Sun Jul 30 2023 04:34:48 for LibreOffice Module vcl (master) by
1.9.3