2000-09-18 16:15:01 +00:00
|
|
|
/*************************************************************************
|
|
|
|
*
|
|
|
|
* $RCSfile: unomod.cxx,v $
|
|
|
|
*
|
2001-09-28 05:44:10 +00:00
|
|
|
* $Revision: 1.16 $
|
2000-09-18 16:15:01 +00:00
|
|
|
*
|
2001-09-28 05:44:10 +00:00
|
|
|
* last change: $Author: os $ $Date: 2001-09-28 06:44:10 $
|
2000-09-18 16:15:01 +00:00
|
|
|
*
|
|
|
|
* The Contents of this file are made available subject to the terms of
|
|
|
|
* either of the following licenses
|
|
|
|
*
|
|
|
|
* - GNU Lesser General Public License Version 2.1
|
|
|
|
* - Sun Industry Standards Source License Version 1.1
|
|
|
|
*
|
|
|
|
* Sun Microsystems Inc., October, 2000
|
|
|
|
*
|
|
|
|
* GNU Lesser General Public License Version 2.1
|
|
|
|
* =============================================
|
|
|
|
* Copyright 2000 by Sun Microsystems, Inc.
|
|
|
|
* 901 San Antonio Road, Palo Alto, CA 94303, USA
|
|
|
|
*
|
|
|
|
* This library is free software; you can redistribute it and/or
|
|
|
|
* modify it under the terms of the GNU Lesser General Public
|
|
|
|
* License version 2.1, as published by the Free Software Foundation.
|
|
|
|
*
|
|
|
|
* This library 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 for more details.
|
|
|
|
*
|
|
|
|
* You should have received a copy of the GNU Lesser General Public
|
|
|
|
* License along with this library; if not, write to the Free Software
|
|
|
|
* Foundation, Inc., 59 Temple Place, Suite 330, Boston,
|
|
|
|
* MA 02111-1307 USA
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* Sun Industry Standards Source License Version 1.1
|
|
|
|
* =================================================
|
|
|
|
* The contents of this file are subject to the Sun Industry Standards
|
|
|
|
* Source License Version 1.1 (the "License"); You may not use this file
|
|
|
|
* except in compliance with the License. You may obtain a copy of the
|
|
|
|
* License at http://www.openoffice.org/license.html.
|
|
|
|
*
|
|
|
|
* Software provided under this License is provided on an "AS IS" basis,
|
|
|
|
* WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,
|
|
|
|
* WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS,
|
|
|
|
* MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING.
|
|
|
|
* See the License for the specific provisions governing your rights and
|
|
|
|
* obligations concerning the Software.
|
|
|
|
*
|
|
|
|
* The Initial Developer of the Original Code is: Sun Microsystems, Inc.
|
|
|
|
*
|
|
|
|
* Copyright: 2000 by Sun Microsystems, Inc.
|
|
|
|
*
|
|
|
|
* All Rights Reserved.
|
|
|
|
*
|
|
|
|
* Contributor(s): _______________________________________
|
|
|
|
*
|
|
|
|
*
|
|
|
|
************************************************************************/
|
|
|
|
|
|
|
|
#ifdef PRECOMPILED
|
|
|
|
#include "ui_pch.hxx"
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#pragma hdrstop
|
|
|
|
|
|
|
|
#include <swtypes.hxx>
|
|
|
|
#ifndef _TOOLS_DEBUG_HXX //autogen
|
|
|
|
#include <tools/debug.hxx>
|
|
|
|
#endif
|
|
|
|
#ifndef _UNOMOD_HXX
|
|
|
|
#include <unomod.hxx>
|
|
|
|
#endif
|
|
|
|
#ifndef _UNOOBJ_HXX
|
|
|
|
#include <unoobj.hxx>
|
|
|
|
#endif
|
|
|
|
#ifndef _UNOPRNMS_HXX
|
|
|
|
#include <unoprnms.hxx>
|
|
|
|
#endif
|
|
|
|
#ifndef _UNOMAP_HXX
|
|
|
|
#include <unomap.hxx>
|
|
|
|
#endif
|
|
|
|
#ifndef _SFX_ITEMPROP_HXX //autogen
|
|
|
|
#include <svtools/itemprop.hxx>
|
|
|
|
#endif
|
|
|
|
#ifndef _PRTOPT_HXX //autogen
|
|
|
|
#include <prtopt.hxx>
|
|
|
|
#endif
|
|
|
|
#ifndef _SHL_HXX
|
|
|
|
#include <tools/shl.hxx>
|
|
|
|
#endif
|
|
|
|
#ifndef _SWMODULE_HXX //autogen
|
|
|
|
#include <swmodule.hxx>
|
|
|
|
#endif
|
|
|
|
#ifndef _SWVIEW_HXX //autogen
|
|
|
|
#include <view.hxx>
|
|
|
|
#endif
|
|
|
|
#ifndef _SWDOCSH_HXX
|
|
|
|
#include <docsh.hxx>
|
|
|
|
#endif
|
|
|
|
#ifndef _WRTSH_HXX //autogen
|
|
|
|
#include <wrtsh.hxx>
|
|
|
|
#endif
|
|
|
|
#ifndef _VIEWOPT_HXX //autogen
|
|
|
|
#include <viewopt.hxx>
|
|
|
|
#endif
|
|
|
|
#ifndef _VOS_MUTEX_HXX_ //autogen
|
|
|
|
#include <vos/mutex.hxx>
|
|
|
|
#endif
|
|
|
|
#ifndef _SV_SVAPP_HXX //autogen
|
|
|
|
#include <vcl/svapp.hxx>
|
|
|
|
#endif
|
|
|
|
#ifndef _COM_SUN_STAR_TEXT_NOTEPRINTMODE_HPP_
|
|
|
|
#include <com/sun/star/text/NotePrintMode.hpp>
|
|
|
|
#endif
|
2001-04-17 10:46:13 +00:00
|
|
|
#ifndef _COM_SUN_STAR_LANG_XMULTISERVICEFACTORY_HDL_
|
|
|
|
#include <com/sun/star/lang/XMultiServiceFactory.hdl>
|
|
|
|
#endif
|
2000-09-18 16:15:01 +00:00
|
|
|
#ifndef _DOC_HXX
|
|
|
|
#include <doc.hxx>
|
|
|
|
#endif
|
2001-07-24 20:45:52 +00:00
|
|
|
#ifndef _COMPHELPER_TYPEGENERATION_HXX_
|
|
|
|
#include <comphelper/TypeGeneration.hxx>
|
|
|
|
#endif
|
|
|
|
#ifndef _COM_SUN_STAR_BEANS_PropertyAttribute_HPP_
|
|
|
|
#include <com/sun/star/beans/PropertyAttribute.hpp>
|
|
|
|
#endif
|
|
|
|
#ifndef _COMPHELPER_CHAINABLEPROPERTYSETINFO_HXX_
|
|
|
|
#include <comphelper/ChainablePropertySetInfo.hxx>
|
|
|
|
#endif
|
2001-09-20 13:36:39 +00:00
|
|
|
#ifndef _EDTWIN_HXX
|
|
|
|
#include <edtwin.hxx>
|
|
|
|
#endif
|
|
|
|
#ifndef _RTL_USTRBUF_HXX_
|
|
|
|
#include <rtl/ustrbuf.hxx>
|
|
|
|
#endif
|
2000-09-18 16:15:01 +00:00
|
|
|
|
|
|
|
using namespace ::com::sun::star;
|
|
|
|
using namespace ::com::sun::star::uno;
|
2001-07-24 20:45:52 +00:00
|
|
|
using namespace ::com::sun::star::beans;
|
2001-04-17 10:46:13 +00:00
|
|
|
using namespace ::com::sun::star::lang;
|
2001-07-24 20:45:52 +00:00
|
|
|
using namespace ::comphelper;
|
2001-09-20 13:36:39 +00:00
|
|
|
using ::rtl::OUString;
|
|
|
|
using ::rtl::OUStringBuffer;
|
2000-09-18 16:15:01 +00:00
|
|
|
|
2001-07-24 20:45:52 +00:00
|
|
|
enum SwViewSettingsPropertyHandles
|
|
|
|
{
|
|
|
|
HANDLE_VIEWSET_ANNOTATIONS,
|
|
|
|
HANDLE_VIEWSET_BREAKS,
|
|
|
|
HANDLE_VIEWSET_DRAWINGS,
|
|
|
|
HANDLE_VIEWSET_FIELD_COMMANDS,
|
|
|
|
HANDLE_VIEWSET_FOOTNOTE_BACKGROUND,
|
|
|
|
HANDLE_VIEWSET_GRAPHICS,
|
|
|
|
HANDLE_VIEWSET_HIDDEN_PARAGRAPHS,
|
|
|
|
HANDLE_VIEWSET_HIDDEN_TEXT,
|
|
|
|
HANDLE_VIEWSET_HRULER,
|
|
|
|
HANDLE_VIEWSET_HSCROLL,
|
|
|
|
HANDLE_VIEWSET_INDEX_MARK_BACKGROUND,
|
|
|
|
HANDLE_VIEWSET_ONLINE_LAYOUT,
|
|
|
|
HANDLE_VIEWSET_PARA_BREAKS,
|
|
|
|
HANDLE_VIEWSET_PROTECTED_SPACES,
|
|
|
|
HANDLE_VIEWSET_SOFT_HYPHENS,
|
|
|
|
HANDLE_VIEWSET_SPACES,
|
|
|
|
HANDLE_VIEWSET_TABLE_BOUNDARIES,
|
|
|
|
HANDLE_VIEWSET_TABLES,
|
|
|
|
HANDLE_VIEWSET_TABSTOPS,
|
|
|
|
HANDLE_VIEWSET_TEXT_BOUNDARIES,
|
|
|
|
HANDLE_VIEWSET_TEXT_FIELD_BACKGROUND,
|
|
|
|
HANDLE_VIEWSET_VRULER,
|
|
|
|
HANDLE_VIEWSET_VSCROLL,
|
|
|
|
HANDLE_VIEWSET_SMOOTH_SCROLLING,
|
|
|
|
HANDLE_VIEWSET_SOLID_MARK_HANDLES,
|
|
|
|
HANDLE_VIEWSET_ZOOM_TYPE,
|
2001-09-20 11:49:29 +00:00
|
|
|
HANDLE_VIEWSET_ZOOM,
|
2001-09-20 13:36:39 +00:00
|
|
|
HANDLE_VIEWSET_PREVENT_TIPS,
|
|
|
|
HANDLE_VIEWSET_HELP_URL
|
2001-07-24 20:45:52 +00:00
|
|
|
};
|
|
|
|
enum SwPrintSettingsPropertyHandles
|
|
|
|
{
|
|
|
|
HANDLE_PRINTSET_ANNOTATION_MODE,
|
|
|
|
HANDLE_PRINTSET_BLACK_FONTS,
|
|
|
|
HANDLE_PRINTSET_CONTROLS,
|
|
|
|
HANDLE_PRINTSET_DRAWINGS,
|
|
|
|
HANDLE_PRINTSET_GRAPHICS,
|
|
|
|
HANDLE_PRINTSET_LEFT_PAGES,
|
|
|
|
HANDLE_PRINTSET_PAGE_BACKGROUND,
|
|
|
|
HANDLE_PRINTSET_PROSPECT,
|
|
|
|
HANDLE_PRINTSET_REVERSED,
|
|
|
|
HANDLE_PRINTSET_RIGHT_PAGES,
|
|
|
|
HANDLE_PRINTSET_FAX_NAME,
|
|
|
|
HANDLE_PRINTSET_PAPER_FROM_SETUP,
|
|
|
|
HANDLE_PRINTSET_TABLES,
|
2001-07-27 12:22:40 +00:00
|
|
|
HANDLE_PRINTSET_SINGLE_JOBS
|
2001-07-24 20:45:52 +00:00
|
|
|
};
|
|
|
|
|
2001-07-27 12:22:40 +00:00
|
|
|
static ChainablePropertySetInfo * lcl_createViewSettingsInfo()
|
2001-07-24 20:45:52 +00:00
|
|
|
{
|
|
|
|
static PropertyInfo aViewSettingsMap_Impl[] =
|
|
|
|
{
|
2001-09-20 13:36:39 +00:00
|
|
|
{ RTL_CONSTASCII_STRINGPARAM ( "HelpURL" ), HANDLE_VIEWSET_HELP_URL , CPPUTYPE_OUSTRING, PROPERTY_NONE, 0},
|
2001-09-20 11:49:29 +00:00
|
|
|
{ RTL_CONSTASCII_STRINGPARAM ( "PreventHelpTips" ), HANDLE_VIEWSET_PREVENT_TIPS , CPPUTYPE_BOOLEAN, PROPERTY_NONE, 0},
|
|
|
|
{ RTL_CONSTASCII_STRINGPARAM ( "ShowAnnotations" ), HANDLE_VIEWSET_ANNOTATIONS , CPPUTYPE_BOOLEAN, PROPERTY_NONE, 0},
|
2001-07-24 20:45:52 +00:00
|
|
|
{ RTL_CONSTASCII_STRINGPARAM ( "ShowBreaks"), HANDLE_VIEWSET_BREAKS , CPPUTYPE_BOOLEAN, PROPERTY_NONE, 0},
|
|
|
|
{ RTL_CONSTASCII_STRINGPARAM ( "ShowDrawings"), HANDLE_VIEWSET_DRAWINGS , CPPUTYPE_BOOLEAN, PROPERTY_NONE, 0},
|
|
|
|
{ RTL_CONSTASCII_STRINGPARAM ( "ShowFieldCommands"), HANDLE_VIEWSET_FIELD_COMMANDS , CPPUTYPE_BOOLEAN, PROPERTY_NONE, 0},
|
|
|
|
{ RTL_CONSTASCII_STRINGPARAM ( "ShowFootnoteBackground"),HANDLE_VIEWSET_FOOTNOTE_BACKGROUND , CPPUTYPE_BOOLEAN, PROPERTY_NONE, 0},
|
|
|
|
{ RTL_CONSTASCII_STRINGPARAM ( "ShowGraphics"), HANDLE_VIEWSET_GRAPHICS , CPPUTYPE_BOOLEAN, PROPERTY_NONE, 0},
|
|
|
|
{ RTL_CONSTASCII_STRINGPARAM ( "ShowHiddenParagraphs"), HANDLE_VIEWSET_HIDDEN_PARAGRAPHS , CPPUTYPE_BOOLEAN, PROPERTY_NONE, 0},
|
|
|
|
{ RTL_CONSTASCII_STRINGPARAM ( "ShowHiddenText"), HANDLE_VIEWSET_HIDDEN_TEXT , CPPUTYPE_BOOLEAN, PROPERTY_NONE, 0},
|
|
|
|
{ RTL_CONSTASCII_STRINGPARAM ( "ShowHoriRuler"), HANDLE_VIEWSET_HRULER , CPPUTYPE_BOOLEAN, PROPERTY_NONE, 0},
|
|
|
|
{ RTL_CONSTASCII_STRINGPARAM ( "ShowHoriScrollBar"), HANDLE_VIEWSET_HSCROLL , CPPUTYPE_BOOLEAN, PROPERTY_NONE, 0},
|
|
|
|
{ RTL_CONSTASCII_STRINGPARAM ( "ShowIndexMarkBackground"),HANDLE_VIEWSET_INDEX_MARK_BACKGROUND, CPPUTYPE_BOOLEAN,PROPERTY_NONE, 0},
|
|
|
|
{ RTL_CONSTASCII_STRINGPARAM ( "ShowOnlineLayout"), HANDLE_VIEWSET_ONLINE_LAYOUT , CPPUTYPE_BOOLEAN, PropertyAttribute::MAYBEVOID, 0},
|
|
|
|
{ RTL_CONSTASCII_STRINGPARAM ( "ShowParaBreaks"), HANDLE_VIEWSET_PARA_BREAKS , CPPUTYPE_BOOLEAN, PROPERTY_NONE, 0},
|
|
|
|
{ RTL_CONSTASCII_STRINGPARAM ( "ShowProtectedSpaces"), HANDLE_VIEWSET_PROTECTED_SPACES , CPPUTYPE_BOOLEAN, PROPERTY_NONE, 0},
|
|
|
|
{ RTL_CONSTASCII_STRINGPARAM ( "ShowSoftHyphens"), HANDLE_VIEWSET_SOFT_HYPHENS , CPPUTYPE_BOOLEAN, PROPERTY_NONE, 0},
|
|
|
|
{ RTL_CONSTASCII_STRINGPARAM ( "ShowSpaces"), HANDLE_VIEWSET_SPACES , CPPUTYPE_BOOLEAN, PROPERTY_NONE, 0},
|
|
|
|
{ RTL_CONSTASCII_STRINGPARAM ( "ShowTableBoundaries"), HANDLE_VIEWSET_TABLE_BOUNDARIES , CPPUTYPE_BOOLEAN, PROPERTY_NONE, 0},
|
|
|
|
{ RTL_CONSTASCII_STRINGPARAM ( "ShowTables"), HANDLE_VIEWSET_TABLES , CPPUTYPE_BOOLEAN, PROPERTY_NONE, 0},
|
|
|
|
{ RTL_CONSTASCII_STRINGPARAM ( "ShowTabstops"), HANDLE_VIEWSET_TABSTOPS , CPPUTYPE_BOOLEAN, PROPERTY_NONE, 0},
|
|
|
|
{ RTL_CONSTASCII_STRINGPARAM ( "ShowTextBoundaries"), HANDLE_VIEWSET_TEXT_BOUNDARIES , CPPUTYPE_BOOLEAN, PROPERTY_NONE, 0},
|
|
|
|
{ RTL_CONSTASCII_STRINGPARAM ( "ShowTextFieldBackground"),HANDLE_VIEWSET_TEXT_FIELD_BACKGROUND, CPPUTYPE_BOOLEAN,PROPERTY_NONE, 0},
|
|
|
|
{ RTL_CONSTASCII_STRINGPARAM ( "ShowVertRuler"), HANDLE_VIEWSET_VRULER , CPPUTYPE_BOOLEAN, PROPERTY_NONE, 0},
|
|
|
|
{ RTL_CONSTASCII_STRINGPARAM ( "ShowVertScrollBar"), HANDLE_VIEWSET_VSCROLL , CPPUTYPE_BOOLEAN, PROPERTY_NONE, 0},
|
|
|
|
{ RTL_CONSTASCII_STRINGPARAM ( "SmoothScrolling"), HANDLE_VIEWSET_SMOOTH_SCROLLING , CPPUTYPE_BOOLEAN, PROPERTY_NONE, 0},
|
|
|
|
{ RTL_CONSTASCII_STRINGPARAM ( "SolidMarkHandles"), HANDLE_VIEWSET_SOLID_MARK_HANDLES , CPPUTYPE_BOOLEAN, PROPERTY_NONE, 0},
|
|
|
|
{ RTL_CONSTASCII_STRINGPARAM ( "ZoomType"), HANDLE_VIEWSET_ZOOM_TYPE , CPPUTYPE_INT16, PROPERTY_NONE, 0},
|
|
|
|
{ RTL_CONSTASCII_STRINGPARAM ( "ZoomValue"), HANDLE_VIEWSET_ZOOM , CPPUTYPE_INT16, PROPERTY_NONE, 0},
|
|
|
|
{ 0, 0, 0, CPPUTYPE_UNKNOWN, 0, 0 }
|
|
|
|
};
|
|
|
|
return new ChainablePropertySetInfo ( aViewSettingsMap_Impl );
|
|
|
|
}
|
2001-07-27 12:22:40 +00:00
|
|
|
static ChainablePropertySetInfo * lcl_createPrintSettingsInfo()
|
2001-07-24 20:45:52 +00:00
|
|
|
{
|
|
|
|
static PropertyInfo aPrintSettingsMap_Impl[] =
|
|
|
|
{
|
|
|
|
{ RTL_CONSTASCII_STRINGPARAM ( "PrintAnnotationMode" ), HANDLE_PRINTSET_ANNOTATION_MODE , CPPUTYPE_INT16, PROPERTY_NONE, 0},
|
|
|
|
{ RTL_CONSTASCII_STRINGPARAM ( "PrintBlackFonts" ), HANDLE_PRINTSET_BLACK_FONTS , CPPUTYPE_BOOLEAN, PROPERTY_NONE, 0},
|
|
|
|
{ RTL_CONSTASCII_STRINGPARAM ( "PrintControls" ), HANDLE_PRINTSET_CONTROLS , CPPUTYPE_BOOLEAN, PROPERTY_NONE, 0},
|
|
|
|
{ RTL_CONSTASCII_STRINGPARAM ( "PrintDrawings" ), HANDLE_PRINTSET_DRAWINGS , CPPUTYPE_BOOLEAN, PROPERTY_NONE, 0},
|
|
|
|
{ RTL_CONSTASCII_STRINGPARAM ( "PrintGraphics" ), HANDLE_PRINTSET_GRAPHICS , CPPUTYPE_BOOLEAN, PROPERTY_NONE, 0},
|
|
|
|
{ RTL_CONSTASCII_STRINGPARAM ( "PrintLeftPages" ), HANDLE_PRINTSET_LEFT_PAGES , CPPUTYPE_BOOLEAN, PROPERTY_NONE, 0},
|
|
|
|
{ RTL_CONSTASCII_STRINGPARAM ( "PrintPageBackground" ), HANDLE_PRINTSET_PAGE_BACKGROUND , CPPUTYPE_BOOLEAN, PROPERTY_NONE, 0},
|
|
|
|
{ RTL_CONSTASCII_STRINGPARAM ( "PrintProspect" ), HANDLE_PRINTSET_PROSPECT , CPPUTYPE_BOOLEAN, PROPERTY_NONE, 0},
|
|
|
|
{ RTL_CONSTASCII_STRINGPARAM ( "PrintReversed" ), HANDLE_PRINTSET_REVERSED , CPPUTYPE_BOOLEAN, PROPERTY_NONE, 0},
|
|
|
|
{ RTL_CONSTASCII_STRINGPARAM ( "PrintRightPages" ), HANDLE_PRINTSET_RIGHT_PAGES , CPPUTYPE_BOOLEAN, PROPERTY_NONE, 0},
|
|
|
|
{ RTL_CONSTASCII_STRINGPARAM ( "PrintFaxName" ), HANDLE_PRINTSET_FAX_NAME , CPPUTYPE_OUSTRING, PROPERTY_NONE, 0},
|
|
|
|
{ RTL_CONSTASCII_STRINGPARAM ( "PrintPaperFromSetup" ), HANDLE_PRINTSET_PAPER_FROM_SETUP , CPPUTYPE_BOOLEAN, PROPERTY_NONE, 0},
|
|
|
|
{ RTL_CONSTASCII_STRINGPARAM ( "PrintTables" ), HANDLE_PRINTSET_TABLES , CPPUTYPE_BOOLEAN, PROPERTY_NONE, 0},
|
|
|
|
{ RTL_CONSTASCII_STRINGPARAM ( "PrintSingleJobs" ), HANDLE_PRINTSET_SINGLE_JOBS , CPPUTYPE_BOOLEAN, PROPERTY_NONE, 0},
|
|
|
|
{ 0, 0, 0, CPPUTYPE_UNKNOWN, 0, 0 }
|
|
|
|
};
|
|
|
|
return new ChainablePropertySetInfo ( aPrintSettingsMap_Impl );
|
|
|
|
}
|
|
|
|
|
2000-09-18 16:15:01 +00:00
|
|
|
/******************************************************************
|
|
|
|
* SwXModule
|
|
|
|
******************************************************************/
|
|
|
|
/* -----------------30.03.99 15:10-------------------
|
|
|
|
*
|
|
|
|
* --------------------------------------------------*/
|
2001-04-17 10:46:13 +00:00
|
|
|
Reference< uno::XInterface > SAL_CALL SwXModule_createInstance(
|
|
|
|
const Reference< XMultiServiceFactory > & rSMgr) throw( Exception )
|
2000-09-18 16:15:01 +00:00
|
|
|
{
|
|
|
|
static Reference< uno::XInterface > xModule = (cppu::OWeakObject*)new SwXModule();;
|
|
|
|
return xModule;
|
|
|
|
}
|
2001-04-17 10:46:13 +00:00
|
|
|
/* -----------------------------17.04.01 13:11--------------------------------
|
|
|
|
|
|
|
|
---------------------------------------------------------------------------*/
|
|
|
|
Sequence< OUString > SAL_CALL SwXModule_getSupportedServiceNames() throw()
|
|
|
|
{
|
|
|
|
OUString sService( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.text.GlobalSettings"));
|
|
|
|
const Sequence< OUString > aSeq( &sService, 1 );
|
|
|
|
return aSeq;
|
|
|
|
}
|
|
|
|
/* -----------------------------17.04.01 13:11--------------------------------
|
|
|
|
|
|
|
|
---------------------------------------------------------------------------*/
|
|
|
|
OUString SAL_CALL SwXModule_getImplementationName() throw()
|
|
|
|
{
|
|
|
|
return OUString( RTL_CONSTASCII_USTRINGPARAM("SwXModule" ) );
|
|
|
|
}
|
2000-09-18 16:15:01 +00:00
|
|
|
/*-- 17.12.98 12:19:01---------------------------------------------------
|
|
|
|
|
|
|
|
-----------------------------------------------------------------------*/
|
|
|
|
SwXModule::SwXModule() :
|
|
|
|
pxViewSettings(0),
|
|
|
|
pxPrintSettings(0)
|
|
|
|
{
|
|
|
|
}
|
|
|
|
/*-- 17.12.98 12:19:02---------------------------------------------------
|
|
|
|
|
|
|
|
-----------------------------------------------------------------------*/
|
|
|
|
SwXModule::~SwXModule()
|
|
|
|
{
|
|
|
|
delete pxViewSettings;
|
|
|
|
delete pxPrintSettings;
|
|
|
|
}
|
|
|
|
/*-- 17.12.98 12:19:03---------------------------------------------------
|
|
|
|
|
|
|
|
-----------------------------------------------------------------------*/
|
2001-07-24 20:45:52 +00:00
|
|
|
Reference< XPropertySet > SwXModule::getViewSettings(void) throw( uno::RuntimeException )
|
2000-09-18 16:15:01 +00:00
|
|
|
{
|
|
|
|
::vos::OGuard aGuard(Application::GetSolarMutex());
|
|
|
|
if(!pxViewSettings)
|
|
|
|
{
|
2001-07-24 20:45:52 +00:00
|
|
|
((SwXModule*)this)->pxViewSettings = new Reference< XPropertySet > ;
|
2000-09-18 16:15:01 +00:00
|
|
|
DBG_ERROR("Web oder Text?")
|
|
|
|
*pxViewSettings = new SwXViewSettings(sal_False, 0);
|
|
|
|
}
|
|
|
|
return *pxViewSettings;
|
|
|
|
}
|
|
|
|
/*-- 17.12.98 12:19:03---------------------------------------------------
|
|
|
|
|
|
|
|
-----------------------------------------------------------------------*/
|
2001-07-24 20:45:52 +00:00
|
|
|
Reference< XPropertySet > SwXModule::getPrintSettings(void) throw( uno::RuntimeException )
|
2000-09-18 16:15:01 +00:00
|
|
|
{
|
|
|
|
::vos::OGuard aGuard(Application::GetSolarMutex());
|
|
|
|
if(!pxPrintSettings)
|
|
|
|
{
|
2001-07-24 20:45:52 +00:00
|
|
|
((SwXModule*)this)->pxPrintSettings = new Reference< XPropertySet > ;
|
2000-09-18 16:15:01 +00:00
|
|
|
DBG_ERROR("Web oder Text?")
|
2001-08-08 20:46:50 +00:00
|
|
|
*pxPrintSettings = new SwXPrintSettings( PRINT_SETTINGS_MODULE );
|
2000-09-18 16:15:01 +00:00
|
|
|
}
|
|
|
|
return *pxPrintSettings;
|
|
|
|
}
|
|
|
|
/* -----------------------------06.04.00 10:59--------------------------------
|
|
|
|
|
|
|
|
---------------------------------------------------------------------------*/
|
|
|
|
OUString SwXModule::getImplementationName(void) throw( RuntimeException )
|
|
|
|
{
|
2001-04-17 10:46:13 +00:00
|
|
|
return SwXModule_getImplementationName();
|
2000-09-18 16:15:01 +00:00
|
|
|
}
|
|
|
|
/* -----------------------------06.04.00 10:59--------------------------------
|
|
|
|
|
|
|
|
---------------------------------------------------------------------------*/
|
2001-07-24 20:45:52 +00:00
|
|
|
sal_Bool SwXModule::supportsService(const OUString& rServiceName) throw( RuntimeException )
|
2000-09-18 16:15:01 +00:00
|
|
|
{
|
2001-04-17 10:46:13 +00:00
|
|
|
const Sequence< OUString > aNames = SwXModule_getSupportedServiceNames();
|
|
|
|
for(sal_Int32 nService = 0; nService < aNames.getLength(); nService++)
|
|
|
|
{
|
|
|
|
if(aNames.getConstArray()[nService] == rServiceName)
|
|
|
|
return TRUE;
|
|
|
|
}
|
|
|
|
return FALSE;
|
2000-09-18 16:15:01 +00:00
|
|
|
}
|
|
|
|
/* -----------------------------06.04.00 10:59--------------------------------
|
|
|
|
|
|
|
|
---------------------------------------------------------------------------*/
|
|
|
|
Sequence< OUString > SwXModule::getSupportedServiceNames(void) throw( RuntimeException )
|
|
|
|
{
|
2001-04-17 10:46:13 +00:00
|
|
|
return SwXModule_getSupportedServiceNames();
|
2000-09-18 16:15:01 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
/******************************************************************
|
|
|
|
* SwXPrintSettings
|
|
|
|
******************************************************************/
|
|
|
|
|
|
|
|
/*-- 17.12.98 12:54:04---------------------------------------------------
|
|
|
|
|
|
|
|
-----------------------------------------------------------------------*/
|
2001-08-08 20:46:50 +00:00
|
|
|
SwXPrintSettings::SwXPrintSettings(SwXPrintSettingsType eType, SwDoc* pDoc)
|
2001-07-24 20:45:52 +00:00
|
|
|
: ChainablePropertySet ( lcl_createPrintSettingsInfo (), &Application::GetSolarMutex() )
|
2001-08-08 20:46:50 +00:00
|
|
|
, meType(eType)
|
2001-07-26 16:03:52 +00:00
|
|
|
, mpPrtOpt ( NULL )
|
2001-08-08 20:46:50 +00:00
|
|
|
, mpDoc ( pDoc )
|
2000-09-18 16:15:01 +00:00
|
|
|
{
|
|
|
|
}
|
|
|
|
/*-- 17.12.98 12:54:05---------------------------------------------------
|
|
|
|
|
|
|
|
-----------------------------------------------------------------------*/
|
|
|
|
SwXPrintSettings::~SwXPrintSettings()
|
2001-09-13 10:48:25 +00:00
|
|
|
throw()
|
2000-09-18 16:15:01 +00:00
|
|
|
{
|
|
|
|
}
|
|
|
|
|
2001-07-24 20:45:52 +00:00
|
|
|
Any SAL_CALL SwXPrintSettings::queryInterface( const Type& rType )
|
|
|
|
throw(RuntimeException)
|
2000-09-18 16:15:01 +00:00
|
|
|
{
|
2001-07-24 20:45:52 +00:00
|
|
|
return ::cppu::queryInterface ( rType ,
|
|
|
|
// OWeakObject interfaces
|
|
|
|
reinterpret_cast< XInterface* > ( this ) ,
|
|
|
|
static_cast< XWeak* > ( this ) ,
|
|
|
|
// my own interfaces
|
|
|
|
static_cast< XServiceInfo* > ( this ) ,
|
|
|
|
static_cast< XPropertySet* > ( this ) ,
|
|
|
|
static_cast< XMultiPropertySet* > ( this ) );
|
2000-09-18 16:15:01 +00:00
|
|
|
}
|
2001-07-24 20:45:52 +00:00
|
|
|
void SwXPrintSettings::acquire ()
|
|
|
|
throw ()
|
2000-09-18 16:15:01 +00:00
|
|
|
{
|
2001-07-24 20:45:52 +00:00
|
|
|
OWeakObject::acquire();
|
|
|
|
}
|
|
|
|
void SwXPrintSettings::release ()
|
|
|
|
throw ()
|
|
|
|
{
|
|
|
|
OWeakObject::release();
|
|
|
|
}
|
2000-09-18 16:15:01 +00:00
|
|
|
|
2001-07-24 20:45:52 +00:00
|
|
|
void SwXPrintSettings::_preSetValues ()
|
|
|
|
throw(UnknownPropertyException, PropertyVetoException, IllegalArgumentException, WrappedTargetException )
|
|
|
|
{
|
2001-08-08 20:46:50 +00:00
|
|
|
switch (meType)
|
|
|
|
{
|
|
|
|
case PRINT_SETTINGS_MODULE:
|
|
|
|
mpPrtOpt = SW_MOD()->GetPrtOptions( sal_False );
|
|
|
|
break;
|
|
|
|
case PRINT_SETTINGS_WEB:
|
|
|
|
mpPrtOpt = SW_MOD()->GetPrtOptions( sal_True );
|
|
|
|
break;
|
|
|
|
case PRINT_SETTINGS_DOCUMENT:
|
|
|
|
{
|
|
|
|
if (!mpDoc)
|
|
|
|
throw IllegalArgumentException ();
|
|
|
|
if ( !mpDoc->GetPrintData() )
|
|
|
|
{
|
|
|
|
mpPrtOpt = new SwPrintData;
|
|
|
|
mpDoc->SetPrintData ( *mpPrtOpt );
|
|
|
|
delete mpPrtOpt;
|
|
|
|
}
|
|
|
|
mpPrtOpt = mpDoc->GetPrintData();
|
|
|
|
}
|
|
|
|
break;
|
|
|
|
}
|
2000-09-18 16:15:01 +00:00
|
|
|
}
|
|
|
|
|
2001-07-24 20:45:52 +00:00
|
|
|
void SwXPrintSettings::_setSingleValue( const comphelper::PropertyInfo & rInfo, const ::com::sun::star::uno::Any &rValue )
|
|
|
|
throw(UnknownPropertyException, PropertyVetoException, IllegalArgumentException, WrappedTargetException )
|
2000-09-18 16:15:01 +00:00
|
|
|
{
|
2001-07-24 20:45:52 +00:00
|
|
|
sal_Bool bVal;
|
|
|
|
if ( rInfo.mnHandle != HANDLE_PRINTSET_ANNOTATION_MODE &&
|
|
|
|
rInfo.mnHandle != HANDLE_PRINTSET_FAX_NAME )
|
|
|
|
bVal = *(sal_Bool*)rValue.getValue();
|
|
|
|
|
|
|
|
switch( rInfo.mnHandle )
|
2000-09-18 16:15:01 +00:00
|
|
|
{
|
2001-07-26 16:03:52 +00:00
|
|
|
case HANDLE_PRINTSET_LEFT_PAGES:
|
|
|
|
{
|
|
|
|
bVal = *(sal_Bool*)rValue.getValue();
|
|
|
|
mpPrtOpt->SetPrintLeftPage(bVal);
|
|
|
|
}
|
|
|
|
break;
|
|
|
|
case HANDLE_PRINTSET_RIGHT_PAGES:
|
|
|
|
{
|
|
|
|
bVal = *(sal_Bool*)rValue.getValue();
|
|
|
|
mpPrtOpt->SetPrintRightPage(bVal);
|
|
|
|
}
|
|
|
|
break;
|
|
|
|
case HANDLE_PRINTSET_REVERSED:
|
|
|
|
{
|
|
|
|
bVal = *(sal_Bool*)rValue.getValue();
|
|
|
|
mpPrtOpt->SetPrintReverse(bVal);
|
|
|
|
}
|
|
|
|
break;
|
|
|
|
case HANDLE_PRINTSET_PROSPECT:
|
|
|
|
{
|
|
|
|
bVal = *(sal_Bool*)rValue.getValue();
|
|
|
|
mpPrtOpt->SetPrintProspect(bVal);
|
|
|
|
}
|
|
|
|
break;
|
|
|
|
case HANDLE_PRINTSET_GRAPHICS:
|
|
|
|
{
|
|
|
|
bVal = *(sal_Bool*)rValue.getValue();
|
|
|
|
mpPrtOpt->SetPrintGraphic(bVal);
|
|
|
|
}
|
|
|
|
break;
|
|
|
|
case HANDLE_PRINTSET_TABLES:
|
|
|
|
{
|
|
|
|
bVal = *(sal_Bool*)rValue.getValue();
|
|
|
|
mpPrtOpt->SetPrintTable(bVal);
|
|
|
|
}
|
|
|
|
break;
|
|
|
|
case HANDLE_PRINTSET_DRAWINGS:
|
|
|
|
{
|
|
|
|
bVal = *(sal_Bool*)rValue.getValue();
|
|
|
|
mpPrtOpt->SetPrintDraw(bVal);
|
|
|
|
}
|
|
|
|
break;
|
|
|
|
case HANDLE_PRINTSET_CONTROLS:
|
|
|
|
{
|
|
|
|
bVal = *(sal_Bool*)rValue.getValue();
|
|
|
|
mpPrtOpt->SetPrintControl(bVal);
|
|
|
|
}
|
|
|
|
break;
|
|
|
|
case HANDLE_PRINTSET_PAGE_BACKGROUND:
|
|
|
|
{
|
|
|
|
bVal = *(sal_Bool*)rValue.getValue();
|
|
|
|
mpPrtOpt->SetPrintPageBackground(bVal);
|
|
|
|
}
|
|
|
|
break;
|
|
|
|
case HANDLE_PRINTSET_BLACK_FONTS:
|
|
|
|
{
|
|
|
|
bVal = *(sal_Bool*)rValue.getValue();
|
|
|
|
mpPrtOpt->SetPrintBlackFont(bVal);
|
|
|
|
}
|
|
|
|
break;
|
|
|
|
case HANDLE_PRINTSET_SINGLE_JOBS:
|
|
|
|
{
|
|
|
|
bVal = *(sal_Bool*)rValue.getValue();
|
|
|
|
mpPrtOpt->SetPrintSingleJobs(bVal);
|
|
|
|
}
|
|
|
|
break;
|
|
|
|
case HANDLE_PRINTSET_PAPER_FROM_SETUP:
|
|
|
|
{
|
|
|
|
bVal = *(sal_Bool*)rValue.getValue();
|
|
|
|
mpPrtOpt->SetPaperFromSetup(bVal);
|
|
|
|
}
|
|
|
|
break;
|
2001-07-24 20:45:52 +00:00
|
|
|
case HANDLE_PRINTSET_ANNOTATION_MODE:
|
2000-09-18 16:15:01 +00:00
|
|
|
{
|
2001-07-24 20:45:52 +00:00
|
|
|
sal_Int16 nVal;
|
|
|
|
rValue >>= nVal;
|
|
|
|
if(nVal <= text::NotePrintMode_PAGE_END)
|
2001-07-26 16:03:52 +00:00
|
|
|
mpPrtOpt->SetPrintPostIts(nVal);
|
2001-07-24 20:45:52 +00:00
|
|
|
else
|
|
|
|
throw lang::IllegalArgumentException();
|
|
|
|
}
|
|
|
|
break;
|
|
|
|
case HANDLE_PRINTSET_FAX_NAME:
|
|
|
|
{
|
|
|
|
OUString sString;
|
|
|
|
if ( rValue >>= sString)
|
2001-07-26 16:03:52 +00:00
|
|
|
mpPrtOpt->SetFaxName(sString);
|
2001-07-24 20:45:52 +00:00
|
|
|
else
|
|
|
|
throw lang::IllegalArgumentException();
|
2000-09-18 16:15:01 +00:00
|
|
|
}
|
2001-07-24 20:45:52 +00:00
|
|
|
break;
|
|
|
|
default:
|
|
|
|
throw UnknownPropertyException();
|
2000-09-18 16:15:01 +00:00
|
|
|
}
|
|
|
|
}
|
2001-07-24 20:45:52 +00:00
|
|
|
void SwXPrintSettings::_postSetValues ()
|
|
|
|
throw(UnknownPropertyException, PropertyVetoException, IllegalArgumentException, WrappedTargetException )
|
2000-09-18 16:15:01 +00:00
|
|
|
{
|
2001-07-26 16:03:52 +00:00
|
|
|
mpPrtOpt = NULL;
|
2000-09-18 16:15:01 +00:00
|
|
|
}
|
|
|
|
|
2001-07-24 20:45:52 +00:00
|
|
|
void SwXPrintSettings::_preGetValues ()
|
|
|
|
throw(UnknownPropertyException, PropertyVetoException, IllegalArgumentException, WrappedTargetException )
|
2000-09-18 16:15:01 +00:00
|
|
|
{
|
2001-08-08 20:46:50 +00:00
|
|
|
switch (meType)
|
|
|
|
{
|
|
|
|
case PRINT_SETTINGS_MODULE:
|
|
|
|
mpPrtOpt = SW_MOD()->GetPrtOptions( sal_False );
|
|
|
|
break;
|
|
|
|
case PRINT_SETTINGS_WEB:
|
|
|
|
mpPrtOpt = SW_MOD()->GetPrtOptions( sal_True );
|
|
|
|
break;
|
|
|
|
case PRINT_SETTINGS_DOCUMENT:
|
|
|
|
{
|
|
|
|
if (!mpDoc)
|
|
|
|
throw IllegalArgumentException ();
|
|
|
|
if ( !mpDoc->GetPrintData() )
|
|
|
|
{
|
|
|
|
mpPrtOpt = new SwPrintData;
|
|
|
|
mpDoc->SetPrintData ( *mpPrtOpt );
|
|
|
|
delete mpPrtOpt;
|
|
|
|
}
|
|
|
|
mpPrtOpt = mpDoc->GetPrintData();
|
|
|
|
}
|
|
|
|
break;
|
|
|
|
}
|
2000-09-18 16:15:01 +00:00
|
|
|
}
|
2001-07-24 20:45:52 +00:00
|
|
|
void SwXPrintSettings::_getSingleValue( const comphelper::PropertyInfo & rInfo, ::com::sun::star::uno::Any & rValue )
|
2001-07-26 15:03:59 +00:00
|
|
|
throw(UnknownPropertyException, WrappedTargetException )
|
2000-09-18 16:15:01 +00:00
|
|
|
{
|
2001-07-24 20:45:52 +00:00
|
|
|
sal_Bool bBool = TRUE;
|
|
|
|
sal_Bool bBoolVal;
|
|
|
|
switch( rInfo.mnHandle )
|
|
|
|
{
|
2001-08-08 20:46:50 +00:00
|
|
|
case HANDLE_PRINTSET_LEFT_PAGES:
|
|
|
|
bBoolVal = mpPrtOpt->IsPrintLeftPage();
|
|
|
|
break;
|
|
|
|
case HANDLE_PRINTSET_RIGHT_PAGES:
|
|
|
|
bBoolVal = mpPrtOpt->IsPrintRightPage();
|
|
|
|
break;
|
|
|
|
case HANDLE_PRINTSET_REVERSED:
|
|
|
|
bBoolVal = mpPrtOpt->IsPrintReverse();
|
|
|
|
break;
|
|
|
|
case HANDLE_PRINTSET_PROSPECT:
|
|
|
|
bBoolVal = mpPrtOpt->IsPrintProspect();
|
|
|
|
break;
|
|
|
|
case HANDLE_PRINTSET_GRAPHICS:
|
|
|
|
bBoolVal = mpPrtOpt->IsPrintGraphic();
|
|
|
|
break;
|
|
|
|
case HANDLE_PRINTSET_TABLES:
|
|
|
|
bBoolVal = mpPrtOpt->IsPrintTable();
|
|
|
|
break;
|
|
|
|
case HANDLE_PRINTSET_DRAWINGS:
|
|
|
|
bBoolVal = mpPrtOpt->IsPrintDraw();
|
|
|
|
break;
|
|
|
|
case HANDLE_PRINTSET_CONTROLS:
|
|
|
|
bBoolVal = mpPrtOpt->IsPrintControl();
|
|
|
|
break;
|
|
|
|
case HANDLE_PRINTSET_PAGE_BACKGROUND:
|
|
|
|
bBoolVal = mpPrtOpt->IsPrintPageBackground();
|
|
|
|
break;
|
|
|
|
case HANDLE_PRINTSET_BLACK_FONTS:
|
|
|
|
bBoolVal = mpPrtOpt->IsPrintBlackFont();
|
|
|
|
break;
|
|
|
|
case HANDLE_PRINTSET_SINGLE_JOBS:
|
|
|
|
bBoolVal = mpPrtOpt->IsPrintSingleJobs();
|
|
|
|
break;
|
|
|
|
case HANDLE_PRINTSET_PAPER_FROM_SETUP:
|
|
|
|
bBoolVal = mpPrtOpt->IsPaperFromSetup();
|
|
|
|
break;
|
2001-07-24 20:45:52 +00:00
|
|
|
case HANDLE_PRINTSET_ANNOTATION_MODE:
|
|
|
|
{
|
|
|
|
bBool = FALSE;
|
2001-07-26 16:03:52 +00:00
|
|
|
rValue <<= static_cast < sal_Int16 > ( mpPrtOpt->GetPrintPostIts() );
|
2001-07-24 20:45:52 +00:00
|
|
|
}
|
|
|
|
break;
|
|
|
|
case HANDLE_PRINTSET_FAX_NAME :
|
|
|
|
{
|
|
|
|
bBool = FALSE;
|
2001-07-26 16:03:52 +00:00
|
|
|
rValue <<= mpPrtOpt->GetFaxName();
|
|
|
|
}
|
|
|
|
break;
|
2001-07-24 20:45:52 +00:00
|
|
|
default:
|
|
|
|
throw UnknownPropertyException();
|
|
|
|
}
|
|
|
|
if(bBool)
|
|
|
|
rValue.setValue(&bBoolVal, ::getBooleanCppuType());
|
2000-09-18 16:15:01 +00:00
|
|
|
}
|
2001-07-24 20:45:52 +00:00
|
|
|
void SwXPrintSettings::_postGetValues ()
|
|
|
|
throw(UnknownPropertyException, PropertyVetoException, IllegalArgumentException, WrappedTargetException )
|
2000-09-18 16:15:01 +00:00
|
|
|
{
|
2001-07-26 16:03:52 +00:00
|
|
|
mpPrtOpt = NULL;
|
2000-09-18 16:15:01 +00:00
|
|
|
}
|
|
|
|
/* -----------------------------06.04.00 11:02--------------------------------
|
|
|
|
|
|
|
|
---------------------------------------------------------------------------*/
|
|
|
|
OUString SwXPrintSettings::getImplementationName(void) throw( RuntimeException )
|
|
|
|
{
|
|
|
|
return C2U("SwXPrintSettings");
|
|
|
|
}
|
|
|
|
/* -----------------------------06.04.00 11:02--------------------------------
|
|
|
|
|
|
|
|
---------------------------------------------------------------------------*/
|
2001-07-24 20:45:52 +00:00
|
|
|
sal_Bool SwXPrintSettings::supportsService(const OUString& rServiceName) throw( RuntimeException )
|
2000-09-18 16:15:01 +00:00
|
|
|
{
|
|
|
|
return C2U("com.sun.star.text.PrintSettings") == rServiceName;
|
|
|
|
}
|
|
|
|
/* -----------------------------06.04.00 11:02--------------------------------
|
|
|
|
|
|
|
|
---------------------------------------------------------------------------*/
|
|
|
|
Sequence< OUString > SwXPrintSettings::getSupportedServiceNames(void) throw( RuntimeException )
|
|
|
|
{
|
|
|
|
Sequence< OUString > aRet(1);
|
|
|
|
OUString* pArray = aRet.getArray();
|
|
|
|
pArray[0] = C2U("com.sun.star.text.PrintSettings");
|
|
|
|
return aRet;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/******************************************************************
|
|
|
|
*
|
|
|
|
******************************************************************/
|
|
|
|
/*-- 18.12.98 11:01:10---------------------------------------------------
|
|
|
|
|
|
|
|
-----------------------------------------------------------------------*/
|
2001-07-24 20:45:52 +00:00
|
|
|
SwXViewSettings::SwXViewSettings(sal_Bool bWebView, SwView* pVw)
|
|
|
|
: ChainablePropertySet ( lcl_createViewSettingsInfo (), &Application::GetSolarMutex() )
|
|
|
|
, pView(pVw)
|
|
|
|
, bWeb(bWebView)
|
|
|
|
, bObjectValid(sal_True)
|
|
|
|
, mpViewOption ( NULL )
|
|
|
|
, mpConstViewOption ( NULL )
|
2000-09-18 16:15:01 +00:00
|
|
|
{
|
2001-09-20 13:36:39 +00:00
|
|
|
// This property only exists if we have a view (ie, not at the module )
|
|
|
|
if ( !pView )
|
|
|
|
mpInfo->remove ( OUString ( RTL_CONSTASCII_USTRINGPARAM ( "HelpURL" ) ) );
|
2000-09-18 16:15:01 +00:00
|
|
|
|
|
|
|
}
|
|
|
|
/*-- 18.12.98 11:01:10---------------------------------------------------
|
|
|
|
|
|
|
|
-----------------------------------------------------------------------*/
|
|
|
|
SwXViewSettings::~SwXViewSettings()
|
2001-09-13 10:48:25 +00:00
|
|
|
throw()
|
2000-09-18 16:15:01 +00:00
|
|
|
{
|
|
|
|
|
|
|
|
}
|
2001-07-24 20:45:52 +00:00
|
|
|
Any SAL_CALL SwXViewSettings::queryInterface( const Type& rType )
|
|
|
|
throw(RuntimeException)
|
2000-09-18 16:15:01 +00:00
|
|
|
{
|
2001-07-24 20:45:52 +00:00
|
|
|
return ::cppu::queryInterface ( rType ,
|
|
|
|
// OWeakObject interfaces
|
|
|
|
reinterpret_cast< XInterface* > ( this ) ,
|
|
|
|
static_cast< XWeak* > ( this ) ,
|
|
|
|
// my own interfaces
|
|
|
|
static_cast< XServiceInfo* > ( this ) ,
|
|
|
|
static_cast< XPropertySet* > ( this ) ,
|
|
|
|
static_cast< XMultiPropertySet* > ( this ) );
|
2000-09-18 16:15:01 +00:00
|
|
|
}
|
2001-07-24 20:45:52 +00:00
|
|
|
void SwXViewSettings::acquire ()
|
|
|
|
throw ()
|
|
|
|
{
|
|
|
|
OWeakObject::acquire();
|
|
|
|
}
|
|
|
|
void SwXViewSettings::release ()
|
|
|
|
throw ()
|
|
|
|
{
|
|
|
|
OWeakObject::release();
|
|
|
|
}
|
|
|
|
void SwXViewSettings::_preSetValues ()
|
|
|
|
throw(UnknownPropertyException, PropertyVetoException, IllegalArgumentException, WrappedTargetException )
|
2000-09-18 16:15:01 +00:00
|
|
|
{
|
|
|
|
sal_Bool bApply = sal_True;
|
|
|
|
sal_Bool bApplyZoom = sal_False;
|
|
|
|
|
|
|
|
const SwViewOption* pVOpt = 0;
|
|
|
|
if(pView)
|
|
|
|
{
|
|
|
|
if(!IsValid())
|
|
|
|
return;
|
|
|
|
pVOpt = pView->GetWrtShell().GetViewOptions();
|
|
|
|
}
|
|
|
|
else
|
|
|
|
pVOpt = SW_MOD()->GetViewOption(bWeb);
|
2001-07-24 20:45:52 +00:00
|
|
|
|
|
|
|
mpViewOption = new SwViewOption (*pVOpt);
|
|
|
|
mbApplyZoom = sal_False;
|
|
|
|
if(pView)
|
|
|
|
mpViewOption->SetStarOneSetting(sal_True);
|
|
|
|
}
|
|
|
|
void SwXViewSettings::_setSingleValue( const comphelper::PropertyInfo & rInfo, const ::com::sun::star::uno::Any &rValue )
|
|
|
|
throw(UnknownPropertyException, PropertyVetoException, IllegalArgumentException, WrappedTargetException )
|
|
|
|
{
|
|
|
|
sal_Bool bVal = HANDLE_VIEWSET_ZOOM != rInfo.mnHandle ?
|
|
|
|
*(sal_Bool*)rValue.getValue() : sal_False;
|
|
|
|
// the API flag should not be set to the application's view settings
|
|
|
|
switch( rInfo.mnHandle )
|
2000-09-18 16:15:01 +00:00
|
|
|
{
|
2001-07-24 20:45:52 +00:00
|
|
|
case HANDLE_VIEWSET_HRULER : mpViewOption->SetViewTabwin(bVal); break;
|
|
|
|
case HANDLE_VIEWSET_VRULER : mpViewOption->SetViewVLin(bVal);break;
|
|
|
|
case HANDLE_VIEWSET_HSCROLL : mpViewOption->SetViewHScrollBar(bVal);break;
|
|
|
|
case HANDLE_VIEWSET_VSCROLL : mpViewOption->SetViewVScrollBar(bVal);break;
|
|
|
|
case HANDLE_VIEWSET_GRAPHICS : mpViewOption->SetGraphic(bVal);break;
|
|
|
|
case HANDLE_VIEWSET_TABLES : mpViewOption->SetTable(bVal); break;
|
|
|
|
case HANDLE_VIEWSET_DRAWINGS : mpViewOption->SetDraw(bVal); break;
|
|
|
|
case HANDLE_VIEWSET_FIELD_COMMANDS : mpViewOption->SetFldName(bVal); break;
|
|
|
|
case HANDLE_VIEWSET_ANNOTATIONS : mpViewOption->SetPostIts(bVal); break;
|
|
|
|
case HANDLE_VIEWSET_INDEX_MARK_BACKGROUND : mpViewOption->SetTox(bVal); break;
|
|
|
|
case HANDLE_VIEWSET_FOOTNOTE_BACKGROUND : mpViewOption->SetFootNote(bVal); break;
|
|
|
|
case HANDLE_VIEWSET_TEXT_FIELD_BACKGROUND : mpViewOption->SetField(bVal); break;
|
|
|
|
case HANDLE_VIEWSET_PARA_BREAKS : mpViewOption->SetParagraph(bVal); break;
|
|
|
|
case HANDLE_VIEWSET_SOFT_HYPHENS : mpViewOption->SetSoftHyph(bVal); break;
|
|
|
|
case HANDLE_VIEWSET_SPACES : mpViewOption->SetBlank(bVal); break;
|
|
|
|
case HANDLE_VIEWSET_PROTECTED_SPACES : mpViewOption->SetHardBlank(bVal); break;
|
|
|
|
case HANDLE_VIEWSET_TABSTOPS : mpViewOption->SetTab(bVal); break;
|
|
|
|
case HANDLE_VIEWSET_BREAKS : mpViewOption->SetLineBreak(bVal); break;
|
|
|
|
case HANDLE_VIEWSET_HIDDEN_TEXT : mpViewOption->SetHidden(bVal); break;
|
|
|
|
case HANDLE_VIEWSET_HIDDEN_PARAGRAPHS : mpViewOption->SetShowHiddenPara(bVal); break;
|
|
|
|
case HANDLE_VIEWSET_TABLE_BOUNDARIES : mpViewOption->SetSubsTable(bVal); break;
|
|
|
|
case HANDLE_VIEWSET_TEXT_BOUNDARIES : mpViewOption->SetSubsLines(bVal); break;
|
|
|
|
case HANDLE_VIEWSET_SMOOTH_SCROLLING : mpViewOption->SetSmoothScroll(bVal); break;
|
|
|
|
case HANDLE_VIEWSET_SOLID_MARK_HANDLES : mpViewOption->SetSolidMarkHdl(bVal); break;
|
2001-09-20 11:49:29 +00:00
|
|
|
case HANDLE_VIEWSET_PREVENT_TIPS : mpViewOption->SetPreventTips(bVal); break;
|
|
|
|
break;
|
2001-07-24 20:45:52 +00:00
|
|
|
case HANDLE_VIEWSET_ZOOM :
|
2000-09-18 16:15:01 +00:00
|
|
|
{
|
2001-09-28 05:44:10 +00:00
|
|
|
sal_Int16 nZoom;
|
|
|
|
if(!(rValue >>= nZoom) || nZoom > 1000 || nZoom < 5)
|
2001-07-24 20:45:52 +00:00
|
|
|
throw lang::IllegalArgumentException();
|
|
|
|
mpViewOption->SetZoom((sal_uInt16)nZoom);
|
|
|
|
mbApplyZoom = sal_True;
|
|
|
|
}
|
|
|
|
break;
|
|
|
|
case HANDLE_VIEWSET_ZOOM_TYPE:
|
|
|
|
{
|
2001-09-28 05:44:10 +00:00
|
|
|
sal_Int16 nZoom;
|
|
|
|
if(!(rValue >>= nZoom))
|
|
|
|
throw IllegalArgumentException();
|
2001-07-24 20:45:52 +00:00
|
|
|
SvxZoomType eZoom = (SvxZoomType)USHRT_MAX;
|
|
|
|
switch(nZoom)
|
2000-09-18 16:15:01 +00:00
|
|
|
{
|
2001-07-24 20:45:52 +00:00
|
|
|
case /*DocumentZoomType_OPTIMAL */0:
|
|
|
|
eZoom = SVX_ZOOM_OPTIMAL;
|
|
|
|
break;
|
|
|
|
case /*DocumentZoomType_PAGE_WIDTH */ 1:
|
|
|
|
eZoom = SVX_ZOOM_PAGEWIDTH;
|
|
|
|
break;
|
|
|
|
case /*DocumentZoomType_ENTIRE_PAGE */ 2:
|
|
|
|
eZoom = SVX_ZOOM_WHOLEPAGE;
|
|
|
|
break;
|
|
|
|
case /*DocumentZoomType_BY_VALUE */ 3:
|
|
|
|
eZoom = SVX_ZOOM_PERCENT;
|
|
|
|
break;
|
|
|
|
case /*DocumentZoomType_PAGE_WIDTH_EXACT */ 4:
|
|
|
|
eZoom = SVX_ZOOM_PAGEWIDTH_NOBORDER;
|
|
|
|
break;
|
2000-09-18 16:15:01 +00:00
|
|
|
}
|
2001-07-24 20:45:52 +00:00
|
|
|
if(eZoom < USHRT_MAX)
|
2000-09-18 16:15:01 +00:00
|
|
|
{
|
2001-07-24 20:45:52 +00:00
|
|
|
mpViewOption->SetZoomType( eZoom );
|
|
|
|
mbApplyZoom = sal_True;
|
2000-09-18 16:15:01 +00:00
|
|
|
}
|
|
|
|
}
|
2001-07-24 20:45:52 +00:00
|
|
|
break;
|
|
|
|
case HANDLE_VIEWSET_ONLINE_LAYOUT :
|
|
|
|
{
|
|
|
|
if( pView && bVal != pView->GetWrtShell().IsBrowseMode() )
|
|
|
|
pView->GetDocShell()->ToggleBrowserMode(bVal, pView );
|
|
|
|
}
|
|
|
|
break;
|
2001-09-20 13:36:39 +00:00
|
|
|
case HANDLE_VIEWSET_HELP_URL :
|
|
|
|
{
|
|
|
|
if ( pView )
|
|
|
|
{
|
|
|
|
OUString sHelpURL;
|
|
|
|
if ( ! ( rValue >>= sHelpURL ) )
|
|
|
|
throw IllegalArgumentException();
|
|
|
|
SwEditWin &rEditWin = pView->GetEditWin();
|
|
|
|
OUString sPrefix = sHelpURL.copy ( 0, 4 );
|
|
|
|
// Make sure we have a valid string...should be in the format HID:12345
|
|
|
|
if ( ! sPrefix.equalsAsciiL ( RTL_CONSTASCII_STRINGPARAM ( "HID:" ) ) )
|
|
|
|
throw IllegalArgumentException ();
|
|
|
|
OUString sNumber = sHelpURL.copy ( 4 );
|
|
|
|
sal_uInt32 nHelpId = sNumber.toInt32();
|
|
|
|
rEditWin.SetHelpId ( nHelpId );
|
|
|
|
}
|
|
|
|
else
|
|
|
|
throw UnknownPropertyException();
|
|
|
|
}
|
|
|
|
break;
|
2001-07-24 20:45:52 +00:00
|
|
|
default:
|
|
|
|
throw UnknownPropertyException();
|
2000-09-18 16:15:01 +00:00
|
|
|
}
|
2001-07-24 20:45:52 +00:00
|
|
|
}
|
2001-04-27 09:51:54 +00:00
|
|
|
|
2001-07-24 20:45:52 +00:00
|
|
|
void SwXViewSettings::_postSetValues ()
|
|
|
|
throw(UnknownPropertyException, PropertyVetoException, IllegalArgumentException, WrappedTargetException )
|
|
|
|
{
|
|
|
|
if(mbApplyZoom && pView)
|
|
|
|
pView->SetZoom( (SvxZoomType)mpViewOption->GetZoomType(),
|
|
|
|
mpViewOption->GetZoom(), sal_True );
|
2000-09-18 16:15:01 +00:00
|
|
|
|
2001-07-24 20:45:52 +00:00
|
|
|
SW_MOD()->ApplyUsrPref( *mpViewOption, pView, pView ? VIEWOPT_DEST_VIEW_ONLY
|
2001-05-29 12:39:52 +00:00
|
|
|
: bWeb ? VIEWOPT_DEST_WEB
|
|
|
|
: VIEWOPT_DEST_TEXT );
|
2001-07-24 20:45:52 +00:00
|
|
|
delete mpViewOption;
|
|
|
|
mpViewOption = NULL;
|
2000-09-18 16:15:01 +00:00
|
|
|
}
|
|
|
|
|
2001-07-24 20:45:52 +00:00
|
|
|
void SwXViewSettings::_preGetValues ()
|
|
|
|
throw(UnknownPropertyException, PropertyVetoException, IllegalArgumentException, WrappedTargetException )
|
2000-09-18 16:15:01 +00:00
|
|
|
{
|
|
|
|
if(pView)
|
|
|
|
{
|
|
|
|
if(!IsValid())
|
2001-07-24 20:45:52 +00:00
|
|
|
return;
|
|
|
|
mpConstViewOption = pView->GetWrtShell().GetViewOptions();
|
2000-09-18 16:15:01 +00:00
|
|
|
}
|
|
|
|
else
|
2001-07-24 20:45:52 +00:00
|
|
|
mpConstViewOption = SW_MOD()->GetViewOption(bWeb);
|
|
|
|
}
|
|
|
|
void SwXViewSettings::_getSingleValue( const comphelper::PropertyInfo & rInfo, ::com::sun::star::uno::Any & rValue )
|
2001-07-26 15:03:59 +00:00
|
|
|
throw(UnknownPropertyException, WrappedTargetException )
|
2001-07-24 20:45:52 +00:00
|
|
|
{
|
|
|
|
sal_Bool bBool = TRUE;
|
|
|
|
sal_Bool bBoolVal;
|
|
|
|
switch( rInfo.mnHandle )
|
2000-09-18 16:15:01 +00:00
|
|
|
{
|
2001-07-24 20:45:52 +00:00
|
|
|
case HANDLE_VIEWSET_HRULER : bBoolVal = mpConstViewOption->IsViewTabwin(); break;
|
|
|
|
case HANDLE_VIEWSET_VRULER : bBoolVal = mpConstViewOption->IsViewVLin();break;
|
|
|
|
case HANDLE_VIEWSET_HSCROLL: bBoolVal = mpConstViewOption->IsViewHScrollBar();break;
|
|
|
|
case HANDLE_VIEWSET_VSCROLL: bBoolVal = mpConstViewOption->IsViewVScrollBar();break;
|
|
|
|
case HANDLE_VIEWSET_GRAPHICS : bBoolVal = mpConstViewOption->IsGraphic();break;
|
|
|
|
case HANDLE_VIEWSET_TABLES : bBoolVal = mpConstViewOption->IsTable(); break;
|
|
|
|
case HANDLE_VIEWSET_DRAWINGS : bBoolVal = mpConstViewOption->IsDraw(); break;
|
|
|
|
case HANDLE_VIEWSET_FIELD_COMMANDS : bBoolVal = mpConstViewOption->IsFldName(); break;
|
|
|
|
case HANDLE_VIEWSET_ANNOTATIONS : bBoolVal = mpConstViewOption->IsPostIts(); break;
|
|
|
|
case HANDLE_VIEWSET_INDEX_MARK_BACKGROUND : bBoolVal = mpConstViewOption->IsTox(); break;
|
|
|
|
case HANDLE_VIEWSET_FOOTNOTE_BACKGROUND : bBoolVal = mpConstViewOption->IsFootNote(); break;
|
|
|
|
case HANDLE_VIEWSET_TEXT_FIELD_BACKGROUND : bBoolVal = mpConstViewOption->IsField(); break;
|
|
|
|
case HANDLE_VIEWSET_PARA_BREAKS : bBoolVal = mpConstViewOption->IsParagraph(sal_True); break;
|
|
|
|
case HANDLE_VIEWSET_SOFT_HYPHENS : bBoolVal = mpConstViewOption->IsSoftHyph(); break;
|
|
|
|
case HANDLE_VIEWSET_SPACES : bBoolVal = mpConstViewOption->IsBlank(sal_True); break;
|
|
|
|
case HANDLE_VIEWSET_PROTECTED_SPACES : bBoolVal = mpConstViewOption->IsHardBlank(); break;
|
|
|
|
case HANDLE_VIEWSET_TABSTOPS : bBoolVal = mpConstViewOption->IsTab(sal_True); break;
|
|
|
|
case HANDLE_VIEWSET_BREAKS : bBoolVal = mpConstViewOption->IsLineBreak(sal_True); break;
|
|
|
|
case HANDLE_VIEWSET_HIDDEN_TEXT : bBoolVal = mpConstViewOption->IsHidden(); break;
|
|
|
|
case HANDLE_VIEWSET_HIDDEN_PARAGRAPHS : bBoolVal = mpConstViewOption->IsShowHiddenPara(); break;
|
|
|
|
case HANDLE_VIEWSET_TABLE_BOUNDARIES : bBoolVal = mpConstViewOption->IsSubsTable(); break;
|
|
|
|
case HANDLE_VIEWSET_TEXT_BOUNDARIES : bBoolVal = mpConstViewOption->IsSubsLines(); break;
|
|
|
|
case HANDLE_VIEWSET_SMOOTH_SCROLLING : bBoolVal = mpConstViewOption->IsSmoothScroll(); break;
|
|
|
|
case HANDLE_VIEWSET_SOLID_MARK_HANDLES : bBoolVal = mpConstViewOption->IsSolidMarkHdl(); break;
|
2001-09-20 11:49:29 +00:00
|
|
|
case HANDLE_VIEWSET_PREVENT_TIPS : bBoolVal = mpConstViewOption->IsPreventTips(); break;
|
2001-07-24 20:45:52 +00:00
|
|
|
case HANDLE_VIEWSET_ZOOM :
|
|
|
|
bBool = FALSE;
|
|
|
|
rValue <<= (sal_Int16)mpConstViewOption->GetZoom();
|
|
|
|
break;
|
|
|
|
case HANDLE_VIEWSET_ZOOM_TYPE:
|
2000-09-18 16:15:01 +00:00
|
|
|
{
|
2001-07-24 20:45:52 +00:00
|
|
|
bBool = FALSE;
|
|
|
|
sal_Int16 nRet;
|
|
|
|
switch(mpConstViewOption->GetZoomType())
|
2000-09-18 16:15:01 +00:00
|
|
|
{
|
2001-07-24 20:45:52 +00:00
|
|
|
case SVX_ZOOM_OPTIMAL:
|
|
|
|
nRet = /*DocumentZoomType_OPTIMAL*/ 0;
|
|
|
|
break;
|
|
|
|
case SVX_ZOOM_PAGEWIDTH:
|
|
|
|
nRet = /*DocumentZoomType_PAGE_WIDTH */1;
|
|
|
|
break;
|
|
|
|
case SVX_ZOOM_WHOLEPAGE:
|
|
|
|
nRet = /*DocumentZoomType_ENTIRE_PAGE */ 2;
|
|
|
|
break;
|
|
|
|
case SVX_ZOOM_PERCENT:
|
|
|
|
nRet = /*DocumentZoomType_BY_VALUE */ 3;
|
|
|
|
break;
|
2000-09-18 16:15:01 +00:00
|
|
|
}
|
2001-07-24 20:45:52 +00:00
|
|
|
rValue <<= nRet;
|
2000-09-18 16:15:01 +00:00
|
|
|
}
|
2001-07-24 20:45:52 +00:00
|
|
|
break;
|
|
|
|
case HANDLE_VIEWSET_ONLINE_LAYOUT:
|
|
|
|
if(pView)
|
|
|
|
bBoolVal = pView->GetWrtShell().GetDoc()->IsBrowseMode();
|
|
|
|
break;
|
2001-09-20 13:36:39 +00:00
|
|
|
case HANDLE_VIEWSET_HELP_URL :
|
|
|
|
{
|
|
|
|
if ( pView )
|
|
|
|
{
|
|
|
|
bBool = sal_False;
|
|
|
|
OUStringBuffer sHelpURL;
|
|
|
|
sHelpURL.appendAscii ( "HID:" );
|
|
|
|
SwEditWin &rEditWin = pView->GetEditWin();
|
|
|
|
sHelpURL.append ( static_cast < sal_Int32 > ( rEditWin.GetHelpId() ) );
|
|
|
|
rValue <<= sHelpURL.makeStringAndClear();
|
|
|
|
}
|
|
|
|
else
|
|
|
|
throw UnknownPropertyException();
|
|
|
|
}
|
|
|
|
break;
|
2001-07-24 20:45:52 +00:00
|
|
|
default: DBG_ERROR("Diese Id gibt's nicht!");
|
2000-09-18 16:15:01 +00:00
|
|
|
}
|
2001-09-20 13:36:39 +00:00
|
|
|
if( bBool )
|
2001-07-24 20:45:52 +00:00
|
|
|
rValue.setValue(&bBoolVal, ::getBooleanCppuType());
|
2000-09-18 16:15:01 +00:00
|
|
|
}
|
2001-07-24 20:45:52 +00:00
|
|
|
void SwXViewSettings::_postGetValues ()
|
|
|
|
throw(UnknownPropertyException, PropertyVetoException, IllegalArgumentException, WrappedTargetException )
|
2000-09-18 16:15:01 +00:00
|
|
|
{
|
2001-07-24 20:45:52 +00:00
|
|
|
mpConstViewOption = NULL;
|
2000-09-18 16:15:01 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
OUString SwXViewSettings::getImplementationName(void) throw( RuntimeException )
|
|
|
|
{
|
|
|
|
return C2U("SwXViewSettings");
|
|
|
|
}
|
2001-07-24 20:45:52 +00:00
|
|
|
|
|
|
|
sal_Bool SwXViewSettings::supportsService(const OUString& rServiceName) throw( RuntimeException )
|
2000-09-18 16:15:01 +00:00
|
|
|
{
|
|
|
|
return C2U("com.sun.star.text.ViewSettings") == rServiceName;
|
|
|
|
}
|
2001-07-24 20:45:52 +00:00
|
|
|
|
2000-09-18 16:15:01 +00:00
|
|
|
Sequence< OUString > SwXViewSettings::getSupportedServiceNames(void) throw( RuntimeException )
|
|
|
|
{
|
|
|
|
Sequence< OUString > aRet(1);
|
|
|
|
OUString* pArray = aRet.getArray();
|
|
|
|
pArray[0] = C2U("com.sun.star.text.ViewSettings");
|
|
|
|
return aRet;
|
|
|
|
}
|