LibreOffice Module lotuswordpro (master)
1
lotuswordpro
inc
xfilter
xfinputlist.hxx
Go to the documentation of this file.
1
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2
/*************************************************************************
3
*
4
* The Contents of this file are made available subject to the terms of
5
* either of the following licenses
6
*
7
* - GNU Lesser General Public License Version 2.1
8
* - Sun Industry Standards Source License Version 1.1
9
*
10
* Sun Microsystems Inc., October, 2000
11
*
12
* GNU Lesser General Public License Version 2.1
13
* =============================================
14
* Copyright 2000 by Sun Microsystems, Inc.
15
* 901 San Antonio Road, Palo Alto, CA 94303, USA
16
*
17
* This library is free software; you can redistribute it and/or
18
* modify it under the terms of the GNU Lesser General Public
19
* License version 2.1, as published by the Free Software Foundation.
20
*
21
* This library is distributed in the hope that it will be useful,
22
* but WITHOUT ANY WARRANTY; without even the implied warranty of
23
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
24
* Lesser General Public License for more details.
25
*
26
* You should have received a copy of the GNU Lesser General Public
27
* License along with this library; if not, write to the Free Software
28
* Foundation, Inc., 59 Temple Place, Suite 330, Boston,
29
* MA 02111-1307 USA
30
*
31
*
32
* Sun Industry Standards Source License Version 1.1
33
* =================================================
34
* The contents of this file are subject to the Sun Industry Standards
35
* Source License Version 1.1 (the "License"); You may not use this file
36
* except in compliance with the License. You may obtain a copy of the
37
* License at http://www.openoffice.org/license.html.
38
*
39
* Software provided under this License is provided on an "AS IS" basis,
40
* WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,
41
* WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS,
42
* MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING.
43
* See the License for the specific provisions governing your rights and
44
* obligations concerning the Software.
45
*
46
* The Initial Developer of the Original Code is: IBM Corporation
47
*
48
* Copyright: 2008 by IBM Corporation
49
*
50
* All Rights Reserved.
51
*
52
* Contributor(s): _______________________________________
53
*
54
*
55
************************************************************************/
56
/*************************************************************************
57
* @file
58
* input list field.
59
************************************************************************/
60
#ifndef INCLUDED_LOTUSWORDPRO_INC_XFILTER_XFINPUTLIST_HXX
61
#define INCLUDED_LOTUSWORDPRO_INC_XFILTER_XFINPUTLIST_HXX
62
63
#include <
xfilter/ixfattrlist.hxx
>
64
#include <
xfilter/xfcontent.hxx
>
65
#include <vector>
66
71
class
XFInputList
:
public
XFContent
72
{
73
public
:
74
void
SetName
(
const
OUString& sName)
75
{
76
m_strName
=
sName
;
77
}
78
79
void
SetLabels
(std::vector<OUString>&& list)
80
{
81
m_list
=std::move(list);
82
}
83
84
virtual
void
ToXml
(
IXFStream
*pStrm)
override
;
85
private
:
86
OUString
m_strName
;
87
std::vector<OUString>
m_list
;
88
};
89
90
inline
void
XFInputList::ToXml
(
IXFStream
*pStrm)
91
{
92
IXFAttrList
*pAttrList = pStrm->
GetAttrList
();
93
pAttrList->
Clear
();
94
95
pAttrList->
AddAttribute
(
"text:name"
,
m_strName
);
96
pStrm->
StartElement
(
"text:drop-down"
);
97
98
pAttrList->
Clear
();
99
pAttrList->
AddAttribute
(
"text:value"
,
" "
);
100
pStrm->
StartElement
(
"text:label"
);
101
pStrm->
EndElement
(
"text:label"
);
102
for
(
size_t
i
=0;
i
<
m_list
.size();
i
++)
103
{
104
pAttrList->
Clear
();
105
pAttrList->
AddAttribute
(
"text:value"
,
m_list
[
i
] );
106
pStrm->
StartElement
(
"text:label"
);
107
pStrm->
EndElement
(
"text:label"
);
108
}
109
pStrm->
EndElement
(
"text:drop-down"
);
110
}
111
112
#endif
113
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
IXFAttrList
Attribute list interface for sax writer.
Definition:
ixfattrlist.hxx:72
IXFAttrList::Clear
virtual void Clear()=0
@descr: Clear all the attributes in the attribute list.
IXFAttrList::AddAttribute
virtual void AddAttribute(const OUString &name, const OUString &value)=0
@descr: Add an attribute to the attribute list.
IXFStream
Stream wrapper for sax writer.
Definition:
ixfstream.hxx:72
IXFStream::GetAttrList
virtual IXFAttrList * GetAttrList()=0
@descr return the Attribute list interface.
IXFStream::StartElement
virtual void StartElement(const OUString &oustr)=0
@descr Wrap XDocumentHandler::startElement()
IXFStream::EndElement
virtual void EndElement(const OUString &oustr)=0
@descr Wrap XDocumentHandler::endElement()
XFContent
@descr Base class for all content object.
Definition:
xfcontent.hxx:80
XFInputList
input list field.
Definition:
xfinputlist.hxx:72
XFInputList::SetName
void SetName(const OUString &sName)
Definition:
xfinputlist.hxx:74
XFInputList::m_list
std::vector< OUString > m_list
Definition:
xfinputlist.hxx:87
XFInputList::SetLabels
void SetLabels(std::vector< OUString > &&list)
Definition:
xfinputlist.hxx:79
XFInputList::ToXml
virtual void ToXml(IXFStream *pStrm) override
Definition:
xfinputlist.hxx:90
XFInputList::m_strName
OUString m_strName
Definition:
xfinputlist.hxx:86
sName
OUString sName
ixfattrlist.hxx
i
int i
xfcontent.hxx
Generated on Sun Jul 30 2023 04:29:22 for LibreOffice Module lotuswordpro (master) by
1.9.3