1b3f79822SAndrew Rist /**************************************************************
2cdf0e10cSrcweir *
3b3f79822SAndrew Rist * Licensed to the Apache Software Foundation (ASF) under one
4b3f79822SAndrew Rist * or more contributor license agreements. See the NOTICE file
5b3f79822SAndrew Rist * distributed with this work for additional information
6b3f79822SAndrew Rist * regarding copyright ownership. The ASF licenses this file
7b3f79822SAndrew Rist * to you under the Apache License, Version 2.0 (the
8b3f79822SAndrew Rist * "License"); you may not use this file except in compliance
9b3f79822SAndrew Rist * with the License. You may obtain a copy of the License at
10b3f79822SAndrew Rist *
11b3f79822SAndrew Rist * http://www.apache.org/licenses/LICENSE-2.0
12b3f79822SAndrew Rist *
13b3f79822SAndrew Rist * Unless required by applicable law or agreed to in writing,
14b3f79822SAndrew Rist * software distributed under the License is distributed on an
15b3f79822SAndrew Rist * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16b3f79822SAndrew Rist * KIND, either express or implied. See the License for the
17b3f79822SAndrew Rist * specific language governing permissions and limitations
18b3f79822SAndrew Rist * under the License.
19b3f79822SAndrew Rist *
20b3f79822SAndrew Rist *************************************************************/
21b3f79822SAndrew Rist
22b3f79822SAndrew Rist
23cdf0e10cSrcweir #include <vbahelper/helperdecl.hxx>
24*26734c99SArmin Le Grand #include <com/sun/star/drawing/TextFitToSizeType.hpp>
25cdf0e10cSrcweir #include <com/sun/star/text/XText.hpp>
26cdf0e10cSrcweir #include "vbatextframe.hxx"
27cdf0e10cSrcweir #include "vbacharacters.hxx"
28cdf0e10cSrcweir
29cdf0e10cSrcweir using namespace ::ooo::vba;
30cdf0e10cSrcweir using namespace ::com::sun::star;
31cdf0e10cSrcweir
ScVbaTextFrame(uno::Sequence<uno::Any> const & args,uno::Reference<uno::XComponentContext> const & xContext)32cdf0e10cSrcweir ScVbaTextFrame::ScVbaTextFrame( uno::Sequence< uno::Any> const & args, uno::Reference< uno::XComponentContext> const & xContext ) throw ( lang::IllegalArgumentException ) : ScVbaTextFrame_BASE( getXSomethingFromArgs< XHelperInterface >( args, 0 ), xContext, getXSomethingFromArgs< drawing::XShape >( args, 1, false ) )
33cdf0e10cSrcweir {
34cdf0e10cSrcweir }
35cdf0e10cSrcweir
36cdf0e10cSrcweir // Methods
37cdf0e10cSrcweir uno::Any SAL_CALL
Characters()38cdf0e10cSrcweir ScVbaTextFrame::Characters() throw (uno::RuntimeException)
39cdf0e10cSrcweir {
40cdf0e10cSrcweir uno::Reference< text::XSimpleText > xSimpleText( m_xShape, uno::UNO_QUERY_THROW );
41cdf0e10cSrcweir ScVbaPalette aPalette( SfxObjectShell::Current() );
42cdf0e10cSrcweir uno::Any aStart( sal_Int32( 1 ) );
43cdf0e10cSrcweir uno::Any aLength(sal_Int32( -1 ) );
44cdf0e10cSrcweir return uno::makeAny( uno::Reference< ov::excel::XCharacters >( new ScVbaCharacters( this, mxContext, aPalette, xSimpleText, aStart, aLength, sal_True ) ) );
45cdf0e10cSrcweir }
46cdf0e10cSrcweir
47cdf0e10cSrcweir rtl::OUString&
getServiceImplName()48cdf0e10cSrcweir ScVbaTextFrame::getServiceImplName()
49cdf0e10cSrcweir {
50cdf0e10cSrcweir static rtl::OUString sImplName( RTL_CONSTASCII_USTRINGPARAM("ScVbaTextFrame") );
51cdf0e10cSrcweir return sImplName;
52cdf0e10cSrcweir }
53cdf0e10cSrcweir
54cdf0e10cSrcweir uno::Sequence< rtl::OUString >
getServiceNames()55cdf0e10cSrcweir ScVbaTextFrame::getServiceNames()
56cdf0e10cSrcweir {
57cdf0e10cSrcweir static uno::Sequence< rtl::OUString > aServiceNames;
58cdf0e10cSrcweir if ( aServiceNames.getLength() == 0 )
59cdf0e10cSrcweir {
60cdf0e10cSrcweir aServiceNames.realloc( 1 );
61cdf0e10cSrcweir aServiceNames[ 0 ] = rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("ooo.vba.excel.TextFrame" ) );
62cdf0e10cSrcweir }
63cdf0e10cSrcweir return aServiceNames;
64cdf0e10cSrcweir }
65cdf0e10cSrcweir
66cdf0e10cSrcweir namespace textframe
67cdf0e10cSrcweir {
68cdf0e10cSrcweir namespace sdecl = comphelper::service_decl;
69cdf0e10cSrcweir sdecl::vba_service_class_<ScVbaTextFrame, sdecl::with_args<true> > serviceImpl;
70cdf0e10cSrcweir extern sdecl::ServiceDecl const serviceDecl(
71cdf0e10cSrcweir serviceImpl,
72cdf0e10cSrcweir "ScVbaTextFrame",
73cdf0e10cSrcweir "ooo.vba.excel.TextFrame" );
74cdf0e10cSrcweir }
75