2010-10-14 08:30:41 +02:00
|
|
|
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
|
2000-09-18 23:08:29 +00:00
|
|
|
/*************************************************************************
|
|
|
|
*
|
2008-04-10 12:59:38 +00:00
|
|
|
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
2000-09-18 23:08:29 +00:00
|
|
|
*
|
2010-02-12 15:01:35 +01:00
|
|
|
* Copyright 2000, 2010 Oracle and/or its affiliates.
|
2000-09-18 23:08:29 +00:00
|
|
|
*
|
2008-04-10 12:59:38 +00:00
|
|
|
* OpenOffice.org - a multi-platform office productivity suite
|
2000-09-18 23:08:29 +00:00
|
|
|
*
|
2008-04-10 12:59:38 +00:00
|
|
|
* This file is part of OpenOffice.org.
|
2000-09-18 23:08:29 +00:00
|
|
|
*
|
2008-04-10 12:59:38 +00:00
|
|
|
* OpenOffice.org is free software: you can redistribute it and/or modify
|
|
|
|
* it under the terms of the GNU Lesser General Public License version 3
|
|
|
|
* only, as published by the Free Software Foundation.
|
2000-09-18 23:08:29 +00:00
|
|
|
*
|
2008-04-10 12:59:38 +00:00
|
|
|
* OpenOffice.org is distributed in the hope that it will be useful,
|
|
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
|
* GNU Lesser General Public License version 3 for more details
|
|
|
|
* (a copy is included in the LICENSE file that accompanied this code).
|
2000-09-18 23:08:29 +00:00
|
|
|
*
|
2008-04-10 12:59:38 +00:00
|
|
|
* You should have received a copy of the GNU Lesser General Public License
|
|
|
|
* version 3 along with OpenOffice.org. If not, see
|
|
|
|
* <http://www.openoffice.org/license.html>
|
|
|
|
* for a copy of the LGPLv3 License.
|
2000-09-18 23:08:29 +00:00
|
|
|
*
|
|
|
|
************************************************************************/
|
|
|
|
|
2001-10-24 17:56:14 +00:00
|
|
|
#include <docufld.hxx>
|
|
|
|
#include <unofldmid.h>
|
2004-09-08 13:56:05 +00:00
|
|
|
#include <comcore.hrc>
|
|
|
|
#include <tools/resid.hxx>
|
2000-09-18 23:08:29 +00:00
|
|
|
|
|
|
|
using namespace ::com::sun::star;
|
2008-03-12 11:20:41 +00:00
|
|
|
using ::rtl::OUString;
|
2000-09-18 23:08:29 +00:00
|
|
|
/*--------------------------------------------------------------------
|
|
|
|
Beschreibung: ScriptField
|
|
|
|
--------------------------------------------------------------------*/
|
|
|
|
|
|
|
|
SwScriptFieldType::SwScriptFieldType( SwDoc* pD )
|
|
|
|
: SwFieldType( RES_SCRIPTFLD ), pDoc( pD )
|
|
|
|
{}
|
|
|
|
|
|
|
|
SwFieldType* SwScriptFieldType::Copy() const
|
|
|
|
{
|
|
|
|
return new SwScriptFieldType( pDoc );
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*--------------------------------------------------------------------
|
|
|
|
Beschreibung: SwScriptField
|
|
|
|
--------------------------------------------------------------------*/
|
|
|
|
|
2007-09-27 07:50:22 +00:00
|
|
|
SwScriptField::SwScriptField( SwScriptFieldType* pInitType,
|
2000-09-18 23:08:29 +00:00
|
|
|
const String& rType, const String& rCode,
|
2011-01-17 15:06:54 +01:00
|
|
|
sal_Bool bURL )
|
2007-09-27 07:50:22 +00:00
|
|
|
: SwField( pInitType ), sType( rType ), sCode( rCode ), bCodeURL( bURL )
|
2000-09-18 23:08:29 +00:00
|
|
|
{
|
|
|
|
}
|
|
|
|
|
2004-09-08 13:56:05 +00:00
|
|
|
String SwScriptField::GetDescription() const
|
|
|
|
{
|
|
|
|
return SW_RES(STR_SCRIPT);
|
|
|
|
}
|
|
|
|
|
2000-09-18 23:08:29 +00:00
|
|
|
String SwScriptField::Expand() const
|
|
|
|
{
|
|
|
|
return aEmptyStr;
|
|
|
|
}
|
|
|
|
|
|
|
|
SwField* SwScriptField::Copy() const
|
|
|
|
{
|
|
|
|
return new SwScriptField( (SwScriptFieldType*)GetTyp(), sType, sCode, bCodeURL );
|
|
|
|
}
|
|
|
|
|
|
|
|
/*--------------------------------------------------------------------
|
|
|
|
Beschreibung: Type setzen
|
|
|
|
--------------------------------------------------------------------*/
|
|
|
|
|
2012-03-07 16:52:06 +00:00
|
|
|
void SwScriptField::SetPar1( const rtl::OUString& rStr )
|
2000-09-18 23:08:29 +00:00
|
|
|
{
|
|
|
|
sType = rStr;
|
|
|
|
}
|
|
|
|
|
2012-03-07 16:52:06 +00:00
|
|
|
const rtl::OUString& SwScriptField::GetPar1() const
|
2000-09-18 23:08:29 +00:00
|
|
|
{
|
|
|
|
return sType;
|
|
|
|
}
|
|
|
|
|
|
|
|
/*--------------------------------------------------------------------
|
|
|
|
Beschreibung: Code setzen
|
|
|
|
--------------------------------------------------------------------*/
|
|
|
|
|
2012-03-07 16:52:06 +00:00
|
|
|
void SwScriptField::SetPar2( const rtl::OUString& rStr )
|
2000-09-18 23:08:29 +00:00
|
|
|
{
|
|
|
|
sCode = rStr;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
2012-03-07 16:52:06 +00:00
|
|
|
rtl::OUString SwScriptField::GetPar2() const
|
2000-09-18 23:08:29 +00:00
|
|
|
{
|
|
|
|
return sCode;
|
|
|
|
}
|
|
|
|
|
2011-03-14 16:51:14 +00:00
|
|
|
bool SwScriptField::QueryValue( uno::Any& rAny, sal_uInt16 nWhichId ) const
|
2000-09-18 23:08:29 +00:00
|
|
|
{
|
2007-09-27 07:50:22 +00:00
|
|
|
switch( nWhichId )
|
2001-10-24 17:56:14 +00:00
|
|
|
{
|
|
|
|
case FIELD_PROP_PAR1:
|
|
|
|
rAny <<= OUString( sType );
|
|
|
|
break;
|
|
|
|
case FIELD_PROP_PAR2:
|
|
|
|
rAny <<= OUString( sCode );
|
|
|
|
break;
|
|
|
|
case FIELD_PROP_BOOL1:
|
2000-09-18 23:08:29 +00:00
|
|
|
rAny.setValue(&bCodeURL, ::getBooleanCppuType());
|
2001-10-24 17:56:14 +00:00
|
|
|
break;
|
|
|
|
default:
|
2011-03-01 19:09:12 +01:00
|
|
|
OSL_FAIL("illegal property");
|
2001-10-24 17:56:14 +00:00
|
|
|
}
|
2010-10-04 15:23:52 +01:00
|
|
|
return true;
|
2000-09-18 23:08:29 +00:00
|
|
|
}
|
|
|
|
|
2011-03-14 16:51:14 +00:00
|
|
|
bool SwScriptField::PutValue( const uno::Any& rAny, sal_uInt16 nWhichId )
|
2000-09-18 23:08:29 +00:00
|
|
|
{
|
2007-09-27 07:50:22 +00:00
|
|
|
switch( nWhichId )
|
2000-09-18 23:08:29 +00:00
|
|
|
{
|
2001-10-24 17:56:14 +00:00
|
|
|
case FIELD_PROP_PAR1:
|
2012-03-07 16:52:06 +00:00
|
|
|
rAny >>= sType;
|
2001-10-24 17:56:14 +00:00
|
|
|
break;
|
|
|
|
case FIELD_PROP_PAR2:
|
2012-03-07 16:52:06 +00:00
|
|
|
rAny >>= sCode;
|
2001-10-24 17:56:14 +00:00
|
|
|
break;
|
|
|
|
case FIELD_PROP_BOOL1:
|
|
|
|
bCodeURL = *(sal_Bool*)rAny.getValue();
|
|
|
|
break;
|
|
|
|
default:
|
2011-03-01 19:09:12 +01:00
|
|
|
OSL_FAIL("illegal property");
|
2000-09-18 23:08:29 +00:00
|
|
|
}
|
2010-10-04 15:23:52 +01:00
|
|
|
return true;
|
2000-09-18 23:08:29 +00:00
|
|
|
}
|
|
|
|
|
2010-10-14 08:30:41 +02:00
|
|
|
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
|