1 /**************************************************************
2 *
3 * Licensed to the Apache Software Foundation (ASF) under one
4 * or more contributor license agreements. See the NOTICE file
5 * distributed with this work for additional information
6 * regarding copyright ownership. The ASF licenses this file
7 * to you under the Apache License, Version 2.0 (the
8 * "License"); you may not use this file except in compliance
9 * with the License. You may obtain a copy of the License at
10 *
11 * http://www.apache.org/licenses/LICENSE-2.0
12 *
13 * Unless required by applicable law or agreed to in writing,
14 * software distributed under the License is distributed on an
15 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16 * KIND, either express or implied. See the License for the
17 * specific language governing permissions and limitations
18 * under the License.
19 *
20 *************************************************************/
21
22
23
24 #include <osl/diagnose.h>
25
26 #include "oox/drawingml/diagram/diagramfragmenthandler.hxx"
27 #include "oox/drawingml/diagram/datamodelcontext.hxx"
28 #include "diagramdefinitioncontext.hxx"
29
30 using namespace ::oox::core;
31 using namespace ::com::sun::star::xml::sax;
32 using namespace ::com::sun::star::uno;
33 using ::rtl::OUString;
34
35 namespace oox { namespace drawingml {
36
DiagramDataFragmentHandler(XmlFilterBase & rFilter,const OUString & rFragmentPath,const DiagramDataPtr pDataPtr)37 DiagramDataFragmentHandler::DiagramDataFragmentHandler( XmlFilterBase& rFilter,
38 const OUString& rFragmentPath,
39 const DiagramDataPtr pDataPtr )
40 throw( )
41 : FragmentHandler( rFilter, rFragmentPath )
42 , mpDataPtr( pDataPtr )
43 {
44 }
45
~DiagramDataFragmentHandler()46 DiagramDataFragmentHandler::~DiagramDataFragmentHandler( ) throw ()
47 {
48
49 }
50
endDocument()51 void SAL_CALL DiagramDataFragmentHandler::endDocument()
52 throw (SAXException, RuntimeException)
53 {
54
55 }
56
57
58 Reference< XFastContextHandler > SAL_CALL
createFastChildContext(::sal_Int32 aElement,const Reference<XFastAttributeList> &)59 DiagramDataFragmentHandler::createFastChildContext( ::sal_Int32 aElement,
60 const Reference< XFastAttributeList >& )
61 throw ( SAXException, RuntimeException)
62 {
63 Reference< XFastContextHandler > xRet;
64
65 switch( aElement )
66 {
67 case DGM_TOKEN( dataModel ):
68 xRet.set( new DataModelContext( *this, mpDataPtr ) );
69 break;
70 default:
71 break;
72 }
73
74 if( !xRet.is() )
75 xRet = getFastContextHandler();
76
77 return xRet;
78 }
79
80 ///////////////////
81
DiagramLayoutFragmentHandler(XmlFilterBase & rFilter,const OUString & rFragmentPath,const DiagramLayoutPtr pDataPtr)82 DiagramLayoutFragmentHandler::DiagramLayoutFragmentHandler( XmlFilterBase& rFilter,
83 const OUString& rFragmentPath,
84 const DiagramLayoutPtr pDataPtr )
85 throw( )
86 : FragmentHandler( rFilter, rFragmentPath )
87 , mpDataPtr( pDataPtr )
88 {
89 }
90
~DiagramLayoutFragmentHandler()91 DiagramLayoutFragmentHandler::~DiagramLayoutFragmentHandler( ) throw ()
92 {
93
94 }
95
endDocument()96 void SAL_CALL DiagramLayoutFragmentHandler::endDocument()
97 throw (SAXException, RuntimeException)
98 {
99
100 }
101
102
103 Reference< XFastContextHandler > SAL_CALL
createFastChildContext(::sal_Int32 aElement,const Reference<XFastAttributeList> & xAttribs)104 DiagramLayoutFragmentHandler::createFastChildContext( ::sal_Int32 aElement,
105 const Reference< XFastAttributeList >& xAttribs )
106 throw ( SAXException, RuntimeException)
107 {
108 Reference< XFastContextHandler > xRet;
109
110 switch( aElement )
111 {
112 case DGM_TOKEN( layoutDef ):
113 xRet.set( new DiagramDefinitionContext( *this, xAttribs, mpDataPtr ) );
114 break;
115 default:
116 break;
117 }
118
119 if( !xRet.is() )
120 xRet = getFastContextHandler();
121
122 return xRet;
123 }
124
125 ///////////////////////
126
DiagramQStylesFragmentHandler(XmlFilterBase & rFilter,const OUString & rFragmentPath,const DiagramQStylesPtr pDataPtr)127 DiagramQStylesFragmentHandler::DiagramQStylesFragmentHandler( XmlFilterBase& rFilter,
128 const OUString& rFragmentPath,
129 const DiagramQStylesPtr pDataPtr )
130 throw( )
131 : FragmentHandler( rFilter, rFragmentPath )
132 , mpDataPtr( pDataPtr )
133 {
134 }
135
~DiagramQStylesFragmentHandler()136 DiagramQStylesFragmentHandler::~DiagramQStylesFragmentHandler( ) throw ()
137 {
138
139 }
140
endDocument()141 void SAL_CALL DiagramQStylesFragmentHandler::endDocument()
142 throw (SAXException, RuntimeException)
143 {
144
145 }
146
147
148 Reference< XFastContextHandler > SAL_CALL
createFastChildContext(::sal_Int32 aElement,const Reference<XFastAttributeList> &)149 DiagramQStylesFragmentHandler::createFastChildContext( ::sal_Int32 aElement,
150 const Reference< XFastAttributeList >& )
151 throw ( SAXException, RuntimeException)
152 {
153 Reference< XFastContextHandler > xRet;
154
155 switch( aElement )
156 {
157 case DGM_TOKEN( styleDef ):
158 // TODO
159 break;
160 default:
161 break;
162 }
163
164 if( !xRet.is() )
165 xRet = getFastContextHandler();
166
167 return xRet;
168 }
169
170 /////////////////////
171
DiagramColorsFragmentHandler(XmlFilterBase & rFilter,const OUString & rFragmentPath,const DiagramColorsPtr pDataPtr)172 DiagramColorsFragmentHandler::DiagramColorsFragmentHandler( XmlFilterBase& rFilter,
173 const OUString& rFragmentPath,
174 const DiagramColorsPtr pDataPtr )
175 throw( )
176 : FragmentHandler( rFilter, rFragmentPath )
177 , mpDataPtr( pDataPtr )
178 {
179 }
180
~DiagramColorsFragmentHandler()181 DiagramColorsFragmentHandler::~DiagramColorsFragmentHandler( ) throw ()
182 {
183
184 }
185
endDocument()186 void SAL_CALL DiagramColorsFragmentHandler::endDocument()
187 throw (SAXException, RuntimeException)
188 {
189
190 }
191
192
193 Reference< XFastContextHandler > SAL_CALL
createFastChildContext(::sal_Int32 aElement,const Reference<XFastAttributeList> &)194 DiagramColorsFragmentHandler::createFastChildContext( ::sal_Int32 aElement,
195 const Reference< XFastAttributeList >& )
196 throw ( SAXException, RuntimeException)
197 {
198 Reference< XFastContextHandler > xRet;
199
200 switch( aElement )
201 {
202 case DGM_TOKEN( colorsDef ):
203 // TODO
204 break;
205 default:
206 break;
207 }
208
209 if( !xRet.is() )
210 xRet = getFastContextHandler();
211
212 return xRet;
213 }
214
215
216
217
218 } }
219