summaryrefslogtreecommitdiff
path: root/reportdesign/inc
diff options
context:
space:
mode:
authorRüdiger Timm <rt@openoffice.org>2007-07-09 10:56:41 +0000
committerRüdiger Timm <rt@openoffice.org>2007-07-09 10:56:41 +0000
commit94ccba3eebc83b58e74e18f0e028c6a995ce6aa6 (patch)
tree1b0341ba73e54b771a58b636bff8c60c0f6beeaf /reportdesign/inc
parent43729c2b5738f3f9063ed7753a00acd491d905dd (diff)
Bring module to HEAD.
Diffstat (limited to 'reportdesign/inc')
-rw-r--r--reportdesign/inc/ModuleHelper.hxx110
-rw-r--r--reportdesign/inc/PropertyForward.hxx111
-rw-r--r--reportdesign/inc/ReportDefinition.hxx353
-rw-r--r--reportdesign/inc/ReportHelperDefines.hxx158
-rw-r--r--reportdesign/inc/ReportVisitor.hxx76
-rw-r--r--reportdesign/inc/RptDef.hxx119
-rw-r--r--reportdesign/inc/RptModel.hxx104
-rw-r--r--reportdesign/inc/RptObject.hxx267
-rw-r--r--reportdesign/inc/RptPage.hxx106
-rw-r--r--reportdesign/inc/RptResId.hrc255
-rw-r--r--reportdesign/inc/UndoActions.hxx323
-rw-r--r--reportdesign/inc/UndoEnv.hxx130
-rw-r--r--reportdesign/inc/dllapi.h51
-rw-r--r--reportdesign/inc/helpids.hrc131
-rw-r--r--reportdesign/inc/makefile.mk55
-rw-r--r--reportdesign/inc/pch/precompiled_reportdesign.cxx37
-rw-r--r--reportdesign/inc/pch/precompiled_reportdesign.hxx40
-rw-r--r--reportdesign/inc/rptui_slotid.hrc210
18 files changed, 2636 insertions, 0 deletions
diff --git a/reportdesign/inc/ModuleHelper.hxx b/reportdesign/inc/ModuleHelper.hxx
new file mode 100644
index 000000000000..cde03bde7614
--- /dev/null
+++ b/reportdesign/inc/ModuleHelper.hxx
@@ -0,0 +1,110 @@
+#ifndef _RPTUI_MODULE_HELPER_RPT_HXX_
+#define _RPTUI_MODULE_HELPER_RPT_HXX_
+/*************************************************************************
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * $RCSfile: ModuleHelper.hxx,v $
+ *
+ * $Revision: 1.2 $
+ *
+ * last change: $Author: rt $ $Date: 2007-07-09 11:56:02 $
+ *
+ * The Contents of this file are made available subject to
+ * the terms of GNU Lesser General Public License Version 2.1.
+ *
+ *
+ * GNU Lesser General Public License Version 2.1
+ * =============================================
+ * Copyright 2005 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
+ *
+ ************************************************************************/
+
+#ifndef _COM_SUN_STAR_LANG_XMULTISERVICEFACTORY_HPP_
+#include <com/sun/star/lang/XMultiServiceFactory.hpp>
+#endif
+#ifndef _TOOLS_RESMGR_HXX
+#include <tools/resmgr.hxx>
+#endif
+#include "dllapi.h"
+//.........................................................................
+namespace rptui
+{
+//.........................................................................
+ //=========================================================================
+ //= OModule
+ //=========================================================================
+ class OModuleImpl;
+ class REPORTDESIGN_DLLPUBLIC OModule
+ {
+ friend class OModuleClient;
+
+ private:
+ OModule();
+ // not implemented. OModule is a static class
+
+ protected:
+ static ::osl::Mutex s_aMutex; /// access safety
+ static sal_Int32 s_nClients; /// number of registered clients
+ static OModuleImpl* s_pImpl; /// impl class. lives as long as at least one client for the module is registered
+
+ public:
+ /// get the vcl res manager of the module
+ static ResMgr* getResManager();
+ protected:
+ /// register a client for the module
+ static void registerClient();
+ /// revoke a client for the module
+ static void revokeClient();
+
+ private:
+ /** ensure that the impl class exists
+ @precond m_aMutex is guarded when this method gets called
+ */
+ static void ensureImpl();
+ };
+
+ //=========================================================================
+ //= OModuleClient
+ //=========================================================================
+ /** base class for objects which uses any global module-specific ressources
+ */
+ class REPORTDESIGN_DLLPUBLIC OModuleClient
+ {
+ public:
+ OModuleClient() { OModule::registerClient(); }
+ ~OModuleClient() { OModule::revokeClient(); }
+ };
+
+ //=========================================================================
+ //= ModuleRes
+ //=========================================================================
+ /** specialized ResId, using the ressource manager provided by the global module
+ */
+ class REPORTDESIGN_DLLPUBLIC ModuleRes : public ::ResId
+ {
+ public:
+ ModuleRes(USHORT _nId) : ResId(_nId, *OModule::getResManager()) { }
+ };
+//.........................................................................
+} // namespace rptui
+//.........................................................................
+
+#endif // _RPTUI_MODULE_HELPER_RPT_HXX_
+
+
diff --git a/reportdesign/inc/PropertyForward.hxx b/reportdesign/inc/PropertyForward.hxx
new file mode 100644
index 000000000000..7f81d891a7ba
--- /dev/null
+++ b/reportdesign/inc/PropertyForward.hxx
@@ -0,0 +1,111 @@
+#ifndef RPTUI_PROPERTYSETFORWARD_HXX
+#define RPTUI_PROPERTYSETFORWARD_HXX
+/*************************************************************************
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * $RCSfile: PropertyForward.hxx,v $
+ *
+ * $Revision: 1.2 $
+ *
+ * last change: $Author: rt $ $Date: 2007-07-09 11:56:02 $
+ *
+ * The Contents of this file are made available subject to
+ * the terms of GNU Lesser General Public License Version 2.1.
+ *
+ *
+ * GNU Lesser General Public License Version 2.1
+ * =============================================
+ * Copyright 2005 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
+ *
+ ************************************************************************/
+
+#ifndef _COM_SUN_STAR_BEANS_XPROPERTYCHANGELISTENER_HPP_
+#include <com/sun/star/beans/XPropertyChangeListener.hpp>
+#endif
+#ifndef _COM_SUN_STAR_BEANS_XPROPERTYSET_HPP_
+#include <com/sun/star/beans/XPropertySet.hpp>
+#endif
+#ifndef _COM_SUN_STAR_BEANS_XPROPERTYSETINFO_HPP_
+#include <com/sun/star/beans/XPropertySetInfo.hpp>
+#endif
+#ifndef _CPPUHELPER_COMPBASE1_HXX_
+#include <cppuhelper/compbase1.hxx>
+#endif
+#ifndef _CPPUHELPER_BASEMUTEX_HXX_
+#include "cppuhelper/basemutex.hxx"
+#endif
+#ifndef _REPORT_RPTUIDEF_HXX
+#include "RptDef.hxx"
+#endif
+#include "dllapi.h"
+
+//........................................................................
+namespace rptui
+{
+//........................................................................
+ typedef ::cppu::WeakComponentImplHelper1< ::com::sun::star::beans::XPropertyChangeListener
+ > OPropertyForward_Base;
+
+ /** \class OPropertyMediator
+ * \brief This class ensures the communication between two XPropertySet instances.
+ * Identical properties will be set at the other propertyset.
+ * \ingroup reportdesign_source_ui_misc
+ */
+ class REPORTDESIGN_DLLPUBLIC OPropertyMediator : public ::cppu::BaseMutex
+ ,public OPropertyForward_Base
+ {
+ TPropertyNamePair m_aNameMap;
+ ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet> m_xSource;
+ ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo> m_xSourceInfo;
+ ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet> m_xDest;
+ ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo> m_xDestInfo;
+ sal_Bool m_bInChange;
+ OPropertyMediator(OPropertyMediator&);
+ void operator =(OPropertyMediator&);
+ protected:
+ virtual ~OPropertyMediator();
+
+ /** this function is called upon disposing the component
+ */
+ virtual void SAL_CALL disposing();
+ public:
+ OPropertyMediator(const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet>& _xSource
+ ,const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet>& _xDest
+ ,const TPropertyNamePair& _aNameMap
+ ,sal_Bool _bReverse = sal_False);
+
+ // ::com::sun::star::beans::XPropertyChangeListener
+ virtual void SAL_CALL propertyChange( const ::com::sun::star::beans::PropertyChangeEvent& evt ) throw(::com::sun::star::uno::RuntimeException);
+
+ // ::com::sun::star::lang::XEventListener
+ virtual void SAL_CALL disposing( const ::com::sun::star::lang::EventObject& _rSource ) throw (::com::sun::star::uno::RuntimeException);
+
+ /** stop the listening mode.
+ */
+ void stopListening();
+
+ /** starts the listening mode again.
+ */
+ void startListening();
+ };
+//........................................................................
+} // namespace rptui
+//........................................................................
+#endif // RPTUI_PROPERTYSETFORWARD_HXX
+
diff --git a/reportdesign/inc/ReportDefinition.hxx b/reportdesign/inc/ReportDefinition.hxx
new file mode 100644
index 000000000000..4617bcbe2184
--- /dev/null
+++ b/reportdesign/inc/ReportDefinition.hxx
@@ -0,0 +1,353 @@
+#ifndef REPORTDESIGN_API_REPORTDEFINITION_HXX
+#define REPORTDESIGN_API_REPORTDEFINITION_HXX
+/*************************************************************************
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * $RCSfile: ReportDefinition.hxx,v $
+ *
+ * $Revision: 1.2 $
+ *
+ * last change: $Author: rt $ $Date: 2007-07-09 11:56:02 $
+ *
+ * The Contents of this file are made available subject to
+ * the terms of GNU Lesser General Public License Version 2.1.
+ *
+ *
+ * GNU Lesser General Public License Version 2.1
+ * =============================================
+ * Copyright 2005 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
+ *
+ ************************************************************************/
+
+#ifndef _COM_SUN_STAR_REPORT_XREPORTDEFINITION_HPP_
+#include <com/sun/star/report/XReportDefinition.hpp>
+#endif
+#ifndef _CPPUHELPER_COMPBASE6_HXX_
+#include <cppuhelper/compbase6.hxx>
+#endif
+#ifndef _CPPUHELPER_BASEMUTEX_HXX_
+#include <cppuhelper/basemutex.hxx>
+#endif
+#ifndef _COM_SUN_STAR_LANG_XSERVICEINFO_HPP_
+#include <com/sun/star/lang/XServiceInfo.hpp>
+#endif
+#ifndef _COM_SUN_STAR_LANG_XUNOTUNNEL_HPP_
+#include <com/sun/star/lang/XUnoTunnel.hpp>
+#endif
+#ifndef _COM_SUN_STAR_LANG_XTYPEPROVIDER_HPP_
+#include <com/sun/star/lang/XTypeProvider.hpp>
+#endif
+#ifndef INCLUDED_CPPUHELPER_PROPERTYSETMIXIN_HXX
+#include <cppuhelper/propertysetmixin.hxx>
+#endif
+#ifndef _COMPHELPER_UNO3_HXX_
+#include <comphelper/uno3.hxx>
+#endif
+#ifndef SVX_UNOMOD_HXX
+#include <svx/unomod.hxx>
+#endif
+#ifndef _COM_SUN_STAR_UTIL_XNUMBERFORMATSSUPPLIER_HPP_
+#include <com/sun/star/util/XNumberFormatsSupplier.hpp>
+#endif
+#include <com/sun/star/frame/XModule.hpp>
+#include "ReportHelperDefines.hxx"
+#include <boost/shared_ptr.hpp>
+#include "dllapi.h"
+
+namespace rptui
+{
+ class OReportModel;
+}
+namespace comphelper
+{
+ class MediaDescriptor;
+}
+namespace reportdesign
+{
+ class OReportComponentProperties;
+ typedef ::cppu::WeakComponentImplHelper6< com::sun::star::report::XReportDefinition
+ ,com::sun::star::document::XEventBroadcaster
+ ,com::sun::star::lang::XServiceInfo
+ ,com::sun::star::frame::XModule
+ ,com::sun::star::lang::XUnoTunnel
+ ,SvxUnoDrawMSFactory> ReportDefinitionBase;
+ typedef ::cppu::PropertySetMixin<com::sun::star::report::XReportDefinition> ReportDefinitionPropertySet;
+
+ struct OReportDefinitionImpl;
+ /** \class OReportDefinition Defines the implementation of a \interface com:::sun::star::report::XReportDefinition
+ * \ingroup reportdesign_api
+ *
+ */
+ class REPORTDESIGN_DLLPUBLIC OReportDefinition : public ::cppu::BaseMutex,
+ public ReportDefinitionBase,
+ public ReportDefinitionPropertySet
+ {
+ ::boost::shared_ptr<OReportComponentProperties> m_aProps;
+ ::boost::shared_ptr<OReportDefinitionImpl> m_pImpl;
+ private:
+ OReportDefinition(const OReportDefinition&);
+ OReportDefinition& operator=(const OReportDefinition&);
+
+ void setSection( const ::rtl::OUString& _sProperty
+ ,const sal_Bool& _bOn
+ ,const ::rtl::OUString& _sName
+ ,::com::sun::star::uno::Reference< ::com::sun::star::report::XSection>& _member);
+
+ template <typename T> void set( const ::rtl::OUString& _sProperty
+ ,const T& _Value
+ ,T& _member)
+ {
+ BoundListeners l;
+ {
+ ::osl::MutexGuard aGuard(m_aMutex);
+ prepareSet(_sProperty, ::com::sun::star::uno::makeAny(_member), ::com::sun::star::uno::makeAny(_Value), &l);
+ _member = _Value;
+ }
+ l.notify();
+ }
+
+ /// write a single XML stream into the package
+ sal_Bool WriteThroughComponent(
+ /// the component we export
+ const ::com::sun::star::uno::Reference<
+ ::com::sun::star::lang::XComponent> & xComponent,
+ const sal_Char* pStreamName, /// the stream name
+ const sal_Char* pServiceName, /// service name of the component
+ /// the argument (XInitialization)
+ const ::com::sun::star::uno::Sequence<
+ ::com::sun::star::uno::Any> & rArguments,
+ /// output descriptor
+ const ::com::sun::star::uno::Sequence<
+ ::com::sun::star::beans::PropertyValue> & rMediaDesc,
+ sal_Bool bPlainStream
+ , const ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage >& _xStorageToSaveTo); /// neither compress nor encrypt
+
+ /// write a single output stream
+ /// (to be called either directly or by WriteThroughComponent(...))
+ sal_Bool WriteThroughComponent(
+ const ::com::sun::star::uno::Reference<
+ ::com::sun::star::io::XOutputStream> & xOutputStream,
+ const ::com::sun::star::uno::Reference<
+ ::com::sun::star::lang::XComponent> & xComponent,
+ const sal_Char* pServiceName,
+ const ::com::sun::star::uno::Sequence<
+ ::com::sun::star::uno::Any> & rArguments,
+ const ::com::sun::star::uno::Sequence<
+ ::com::sun::star::beans::PropertyValue> & rMediaDesc);
+
+ void notifyEvent(const ::rtl::OUString& _sEventName);
+ void init();
+ void fillArgs(::comphelper::MediaDescriptor& _aDescriptor);
+ protected:
+ virtual ~OReportDefinition();
+
+ /** this function is called upon disposing the component
+ */
+ virtual void SAL_CALL disposing();
+ public:
+ explicit OReportDefinition(::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext > const & _xContext);
+ explicit OReportDefinition(::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext > const & _xContext
+ ,const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > & _xFactory
+ ,::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShape >& _xShape);
+
+ DECLARE_XINTERFACE( )
+ DECLARE_XTYPEPROVIDER( )
+ // ::com::sun::star::lang::XServiceInfo
+ virtual ::sal_Bool SAL_CALL supportsService( const ::rtl::OUString& ServiceName ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getImplementationName( ) throw(::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames( ) throw(::com::sun::star::uno::RuntimeException);
+
+ static ::com::sun::star::uno::Sequence< ::rtl::OUString > getSupportedServiceNames_Static(void) throw( ::com::sun::star::uno::RuntimeException );
+ static ::rtl::OUString getImplementationName_Static(void) throw( ::com::sun::star::uno::RuntimeException );
+ static ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > SAL_CALL
+ create(::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext > const & xContext);
+ // com::sun::star::beans::XPropertySet
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo > SAL_CALL getPropertySetInfo( ) throw(::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL setPropertyValue( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Any& aValue ) throw (::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::beans::PropertyVetoException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Any SAL_CALL getPropertyValue( const ::rtl::OUString& PropertyName ) throw (::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL addPropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& xListener ) throw (::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL removePropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& aListener ) throw (::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL addVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw (::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL removeVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw (::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
+
+ // XReportDefinition
+ virtual ::rtl::OUString SAL_CALL getMimeType() throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL setMimeType( const ::rtl::OUString& _mimetype ) throw (::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getCaption() throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL setCaption( const ::rtl::OUString& _caption ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::sal_Int16 SAL_CALL getGroupKeepTogether() throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL setGroupKeepTogether( ::sal_Int16 _groupkeeptogether ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::sal_Int16 SAL_CALL getPageHeaderOption() throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL setPageHeaderOption( ::sal_Int16 _pageheaderoption ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::sal_Int16 SAL_CALL getPageFooterOption() throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL setPageFooterOption( ::sal_Int16 _pagefooteroption ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getMasterFields() throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL setMasterFields( const ::com::sun::star::uno::Sequence< ::rtl::OUString >& _masterfields ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getDetailFields() throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL setDetailFields( const ::com::sun::star::uno::Sequence< ::rtl::OUString >& _detailfields ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getCommand() throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL setCommand( const ::rtl::OUString& _command ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::sal_Int32 SAL_CALL getCommandType() throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL setCommandType( ::sal_Int32 _commandtype ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getFilter() throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL setFilter( const ::rtl::OUString& _filter ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::sal_Bool SAL_CALL getEscapeProcessing() throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL setEscapeProcessing( ::sal_Bool _escapeprocessing ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::sal_Bool SAL_CALL getReportHeaderOn() throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL setReportHeaderOn( ::sal_Bool _reportheaderon ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::sal_Bool SAL_CALL getReportFooterOn() throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL setReportFooterOn( ::sal_Bool _reportfooteron ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::sal_Bool SAL_CALL getPageHeaderOn() throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL setPageHeaderOn( ::sal_Bool _pageheaderon ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::sal_Bool SAL_CALL getPageFooterOn() throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL setPageFooterOn( ::sal_Bool _pagefooteron ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::report::XGroups > SAL_CALL getGroups() throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::report::XSection > SAL_CALL getReportHeader() throw (::com::sun::star::container::NoSuchElementException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::report::XSection > SAL_CALL getPageHeader() throw (::com::sun::star::container::NoSuchElementException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::report::XSection > SAL_CALL getDetail() throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::report::XSection > SAL_CALL getPageFooter() throw (::com::sun::star::container::NoSuchElementException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::report::XSection > SAL_CALL getReportFooter() throw (::com::sun::star::container::NoSuchElementException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::document::XEventBroadcaster > SAL_CALL getEventBroadcaster( ) throw (::com::sun::star::lang::DisposedException, ::com::sun::star::uno::Exception, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getAvailableMimeTypes( ) throw (::com::sun::star::lang::DisposedException, ::com::sun::star::uno::Exception, ::com::sun::star::uno::RuntimeException);
+
+ // XReportComponent
+ REPORTCOMPONENT_HEADER()
+
+ // XShape
+ SHAPE_HEADER()
+
+ // XShapeDescriptor
+ virtual ::rtl::OUString SAL_CALL getShapeType( ) throw (::com::sun::star::uno::RuntimeException);
+
+ //XFunctionsSupplier
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::report::XFunctions > SAL_CALL getFunctions() throw (::com::sun::star::uno::RuntimeException);
+
+ // XCloneable
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::util::XCloneable > SAL_CALL createClone( ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XComponent
+ virtual void SAL_CALL dispose() throw(::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL addEventListener(const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XEventListener > & aListener) throw(::com::sun::star::uno::RuntimeException)
+ {
+ cppu::WeakComponentImplHelperBase::addEventListener(aListener);
+ }
+ virtual void SAL_CALL removeEventListener(const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XEventListener > & aListener) throw(::com::sun::star::uno::RuntimeException)
+ {
+ cppu::WeakComponentImplHelperBase::removeEventListener(aListener);
+ }
+
+ // XChild
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > SAL_CALL getParent( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL setParent( const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface >& Parent ) throw (::com::sun::star::lang::NoSupportException, ::com::sun::star::uno::RuntimeException);
+
+ // XCloseBroadcaster
+ virtual void SAL_CALL addCloseListener( const ::com::sun::star::uno::Reference< ::com::sun::star::util::XCloseListener >& Listener ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL removeCloseListener( const ::com::sun::star::uno::Reference< ::com::sun::star::util::XCloseListener >& Listener ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XCloseable
+ virtual void SAL_CALL close( ::sal_Bool DeliverOwnership ) throw (::com::sun::star::util::CloseVetoException, ::com::sun::star::uno::RuntimeException);
+
+ // XModel
+ virtual ::sal_Bool SAL_CALL attachResource( const ::rtl::OUString& URL, const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& Arguments ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getURL( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > SAL_CALL getArgs( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL connectController( const ::com::sun::star::uno::Reference< ::com::sun::star::frame::XController >& Controller ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL disconnectController( const ::com::sun::star::uno::Reference< ::com::sun::star::frame::XController >& Controller ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL lockControllers( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL unlockControllers( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::sal_Bool SAL_CALL hasControllersLocked( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::frame::XController > SAL_CALL getCurrentController( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL setCurrentController( const ::com::sun::star::uno::Reference< ::com::sun::star::frame::XController >& Controller ) throw (::com::sun::star::container::NoSuchElementException, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > SAL_CALL getCurrentSelection( ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XStorageBasedDocument
+ virtual void SAL_CALL loadFromStorage( const ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage >& xStorage, const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& aMediaDescriptor ) throw (::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::frame::DoubleInitializationException, ::com::sun::star::io::IOException, ::com::sun::star::uno::Exception, ::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL storeToStorage( const ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage >& xStorage, const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& aMediaDescriptor ) throw (::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::io::IOException, ::com::sun::star::uno::Exception, ::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL switchToStorage( const ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage >& xStorage ) throw (::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::io::IOException, ::com::sun::star::uno::Exception, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage > SAL_CALL getDocumentStorage( ) throw (::com::sun::star::io::IOException, ::com::sun::star::uno::Exception, ::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL addStorageChangeListener( const ::com::sun::star::uno::Reference< ::com::sun::star::document::XStorageChangeListener >& xListener ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL removeStorageChangeListener( const ::com::sun::star::uno::Reference< ::com::sun::star::document::XStorageChangeListener >& xListener ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XViewDataSupplier
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::container::XIndexAccess > SAL_CALL getViewData( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL setViewData( const ::com::sun::star::uno::Reference< ::com::sun::star::container::XIndexAccess >& Data ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XLoadable
+ virtual void SAL_CALL initNew( ) throw (::com::sun::star::frame::DoubleInitializationException, ::com::sun::star::io::IOException, ::com::sun::star::uno::Exception, ::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL load( const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& lArguments ) throw (::com::sun::star::frame::DoubleInitializationException, ::com::sun::star::io::IOException, ::com::sun::star::uno::Exception, ::com::sun::star::uno::RuntimeException);
+
+ // XVisualObject
+ virtual void SAL_CALL setVisualAreaSize( ::sal_Int64 nAspect, const ::com::sun::star::awt::Size& aSize ) throw (::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::embed::WrongStateException, ::com::sun::star::uno::Exception, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::awt::Size SAL_CALL getVisualAreaSize( ::sal_Int64 nAspect ) throw (::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::embed::WrongStateException, ::com::sun::star::uno::Exception, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::embed::VisualRepresentation SAL_CALL getPreferredVisualRepresentation( ::sal_Int64 nAspect ) throw (::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::embed::WrongStateException, ::com::sun::star::uno::Exception, ::com::sun::star::uno::RuntimeException);
+ virtual ::sal_Int32 SAL_CALL getMapUnit( ::sal_Int64 nAspect ) throw (::com::sun::star::uno::Exception, ::com::sun::star::uno::RuntimeException);
+
+ // XModifiable
+ virtual ::sal_Bool SAL_CALL isModified( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL setModified( ::sal_Bool bModified ) throw (::com::sun::star::beans::PropertyVetoException, ::com::sun::star::uno::RuntimeException);
+
+ // XModifyBroadcaster
+ virtual void SAL_CALL addModifyListener( const ::com::sun::star::uno::Reference< ::com::sun::star::util::XModifyListener >& aListener ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL removeModifyListener( const ::com::sun::star::uno::Reference< ::com::sun::star::util::XModifyListener >& aListener ) throw (::com::sun::star::uno::RuntimeException);
+
+ // document::XEventBroadcaster
+ virtual void SAL_CALL addEventListener( const ::com::sun::star::uno::Reference< ::com::sun::star::document::XEventListener >& aListener ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL removeEventListener( const ::com::sun::star::uno::Reference< ::com::sun::star::document::XEventListener >& aListener ) throw (::com::sun::star::uno::RuntimeException);
+
+ // document::XEventListener
+ virtual void SAL_CALL notifyEvent( const ::com::sun::star::document::EventObject& aEvent ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XUIConfigurationManagerSupplier
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::ui::XUIConfigurationManager > SAL_CALL getUIConfigurationManager( ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XDocumentSubStorageSupplier
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage > SAL_CALL getDocumentSubStorage( const ::rtl::OUString& aStorageName, sal_Int32 nMode ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getDocumentSubStoragesNames( ) throw (::com::sun::star::io::IOException, ::com::sun::star::uno::RuntimeException);
+
+ // com::sun::star::lang::XUnoTunnel
+ virtual sal_Int64 SAL_CALL getSomething( const ::com::sun::star::uno::Sequence< sal_Int8 >& aIdentifier ) throw(::com::sun::star::uno::RuntimeException);
+ static ::com::sun::star::uno::Sequence< sal_Int8 > getUnoTunnelImplementationId();
+
+ // SvxUnoDrawMSFactory
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > SAL_CALL createInstance( const ::rtl::OUString& aServiceSpecifier ) throw(::com::sun::star::uno::Exception, ::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > SAL_CALL createInstanceWithArguments( const ::rtl::OUString& ServiceSpecifier, const ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Any >& Arguments ) throw(::com::sun::star::uno::Exception, ::com::sun::star::uno::RuntimeException);
+ ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getAvailableServiceNames(void) throw( ::com::sun::star::uno::RuntimeException );
+
+ // XStyleFamiliesSupplier
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameAccess > SAL_CALL getStyleFamilies( ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XModule
+ virtual void SAL_CALL setIdentifier( const ::rtl::OUString& Identifier ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getIdentifier( ) throw (::com::sun::star::uno::RuntimeException);
+
+ ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext > getContext();
+
+ /** return the SdrModel of the real model
+ *
+ * \return
+ */
+ ::boost::shared_ptr<rptui::OReportModel> getSdrModel() const;
+
+ static ::boost::shared_ptr<rptui::OReportModel> getSdrModel(::com::sun::star::uno::Reference< ::com::sun::star::report::XReportDefinition >& _xReportDefinition);
+ };
+// =============================================================================
+} // namespace reportdesign
+// =============================================================================
+#endif // REPORTDESIGN_API_REPORTDEFINITION_HXX
+
diff --git a/reportdesign/inc/ReportHelperDefines.hxx b/reportdesign/inc/ReportHelperDefines.hxx
new file mode 100644
index 000000000000..5f9e2ee5d258
--- /dev/null
+++ b/reportdesign/inc/ReportHelperDefines.hxx
@@ -0,0 +1,158 @@
+/*************************************************************************
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * $RCSfile: ReportHelperDefines.hxx,v $
+ *
+ * $Revision: 1.2 $
+ *
+ * last change: $Author: rt $ $Date: 2007-07-09 11:56:02 $
+ *
+ * The Contents of this file are made available subject to
+ * the terms of GNU Lesser General Public License Version 2.1.
+ *
+ *
+ * GNU Lesser General Public License Version 2.1
+ * =============================================
+ * Copyright 2005 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
+ *
+ ************************************************************************/
+#ifndef INCLUDED_REPORTHELPERDEFINES_HXX
+#define INCLUDED_REPORTHELPERDEFINES_HXX
+
+#define REPORTCONTROLMODEL_HEADER() \
+ virtual ::rtl::OUString SAL_CALL getDataField() throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual void SAL_CALL setDataField(const ::rtl::OUString & the_value) throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual ::sal_Bool SAL_CALL getPrintWhenGroupChange() throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual void SAL_CALL setPrintWhenGroupChange(::sal_Bool the_value) throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual ::rtl::OUString SAL_CALL getConditionalPrintExpression() throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual void SAL_CALL setConditionalPrintExpression(const ::rtl::OUString & the_value) throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::report::XFormatCondition > SAL_CALL createFormatCondition() throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::uno::Exception);
+
+#define SHAPE_HEADER() \
+ virtual ::com::sun::star::awt::Point SAL_CALL getPosition() throw (::com::sun::star::uno::RuntimeException); \
+ virtual void SAL_CALL setPosition(const ::com::sun::star::awt::Point & aPosition) throw (::com::sun::star::uno::RuntimeException); \
+ virtual ::com::sun::star::awt::Size SAL_CALL getSize() throw (::com::sun::star::uno::RuntimeException); \
+ virtual void SAL_CALL setSize(const ::com::sun::star::awt::Size & aSize) throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::PropertyVetoException);
+
+#define REPORTCOMPONENT_HEADER() \
+ virtual ::rtl::OUString SAL_CALL getName() throw (::com::sun::star::uno::RuntimeException); \
+ virtual void SAL_CALL setName(const ::rtl::OUString & the_value) throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::PropertyVetoException); \
+ virtual ::sal_Int32 SAL_CALL getHeight() throw (::com::sun::star::uno::RuntimeException); \
+ virtual void SAL_CALL setHeight(::sal_Int32 the_value) throw (::com::sun::star::uno::RuntimeException); \
+ virtual ::sal_Int32 SAL_CALL getPositionX() throw (::com::sun::star::uno::RuntimeException); \
+ virtual void SAL_CALL setPositionX(::sal_Int32 the_value) throw (::com::sun::star::uno::RuntimeException); \
+ virtual ::sal_Int32 SAL_CALL getPositionY() throw (::com::sun::star::uno::RuntimeException); \
+ virtual void SAL_CALL setPositionY(::sal_Int32 the_value) throw (::com::sun::star::uno::RuntimeException); \
+ virtual ::sal_Int32 SAL_CALL getWidth() throw (::com::sun::star::uno::RuntimeException); \
+ virtual void SAL_CALL setWidth(::sal_Int32 the_value) throw (::com::sun::star::uno::RuntimeException); \
+ virtual ::sal_Int16 SAL_CALL getControlBorder() throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual void SAL_CALL setControlBorder(::sal_Int16 the_value) throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual ::sal_Int32 SAL_CALL getControlBorderColor() throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual void SAL_CALL setControlBorderColor(::sal_Int32 the_value) throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual ::sal_Bool SAL_CALL getPrintRepeatedValues() throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual void SAL_CALL setPrintRepeatedValues(::sal_Bool the_value) throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::report::XSection > SAL_CALL getSection() throw (::com::sun::star::uno::RuntimeException);
+
+#define REPORTCONTROLFORMAT_HEADER() \
+ virtual ::sal_Int32 SAL_CALL getControlBackground() throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual void SAL_CALL setControlBackground(::sal_Int32 the_value) throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual ::sal_Bool SAL_CALL getControlBackgroundTransparent() throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual void SAL_CALL setControlBackgroundTransparent(::sal_Bool the_value) throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual ::sal_Int16 SAL_CALL getParaAdjust() throw (::com::sun::star::uno::RuntimeException); \
+ virtual void SAL_CALL setParaAdjust(::sal_Int16 the_value) throw (::com::sun::star::uno::RuntimeException); \
+ virtual ::com::sun::star::awt::FontDescriptor SAL_CALL getFontDescriptor() throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual void SAL_CALL setFontDescriptor(const ::com::sun::star::awt::FontDescriptor & the_value) throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual ::sal_Int16 SAL_CALL getControlTextEmphasis() throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual void SAL_CALL setControlTextEmphasis(::sal_Int16 the_value) throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual ::sal_Int16 SAL_CALL getCharEmphasis() throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual void SAL_CALL setCharEmphasis(::sal_Int16 the_value) throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual ::sal_Bool SAL_CALL getCharCombineIsOn() throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual void SAL_CALL setCharCombineIsOn(::sal_Bool the_value) throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual ::rtl::OUString SAL_CALL getCharCombinePrefix() throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual void SAL_CALL setCharCombinePrefix(const ::rtl::OUString & the_value) throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual ::rtl::OUString SAL_CALL getCharCombineSuffix() throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual void SAL_CALL setCharCombineSuffix(const ::rtl::OUString & the_value) throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual ::sal_Bool SAL_CALL getCharHidden() throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual void SAL_CALL setCharHidden(::sal_Bool the_value) throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual ::sal_Bool SAL_CALL getCharShadowed() throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual void SAL_CALL setCharShadowed(::sal_Bool the_value) throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual ::sal_Bool SAL_CALL getCharContoured() throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual void SAL_CALL setCharContoured(::sal_Bool the_value) throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual ::sal_Int16 SAL_CALL getCharCaseMap() throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual void SAL_CALL setCharCaseMap(::sal_Int16 the_value) throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual ::com::sun::star::lang::Locale SAL_CALL getCharLocale() throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual void SAL_CALL setCharLocale(const ::com::sun::star::lang::Locale & the_value) throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual ::sal_Int16 SAL_CALL getCharEscapement() throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual void SAL_CALL setCharEscapement(::sal_Int16 the_value) throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual ::sal_Int8 SAL_CALL getCharEscapementHeight() throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual void SAL_CALL setCharEscapementHeight(::sal_Int8 the_value) throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual ::sal_Bool SAL_CALL getCharAutoKerning() throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual void SAL_CALL setCharAutoKerning(::sal_Bool the_value) throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual ::sal_Bool SAL_CALL getCharFlash() throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual void SAL_CALL setCharFlash(::sal_Bool the_value) throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual ::sal_Int16 SAL_CALL getCharRelief() throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual void SAL_CALL setCharRelief(::sal_Int16 the_value) throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual ::rtl::OUString SAL_CALL getCharFontName() throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual void SAL_CALL setCharFontName(const ::rtl::OUString & the_value) throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual ::rtl::OUString SAL_CALL getCharFontStyleName() throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual void SAL_CALL setCharFontStyleName(const ::rtl::OUString & the_value) throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual ::sal_Int16 SAL_CALL getCharFontFamily() throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual void SAL_CALL setCharFontFamily(::sal_Int16 the_value) throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual ::sal_Int16 SAL_CALL getCharFontCharSet() throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual void SAL_CALL setCharFontCharSet(::sal_Int16 the_value) throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual ::sal_Int16 SAL_CALL getCharFontPitch() throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual void SAL_CALL setCharFontPitch(::sal_Int16 the_value) throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual ::sal_Int32 SAL_CALL getCharColor() throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual void SAL_CALL setCharColor(::sal_Int32 the_value) throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual ::sal_Int32 SAL_CALL getCharUnderlineColor() throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual void SAL_CALL setCharUnderlineColor(::sal_Int32 the_value) throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual float SAL_CALL getCharHeight() throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual void SAL_CALL setCharHeight(float the_value) throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual ::sal_Int16 SAL_CALL getCharUnderline() throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual void SAL_CALL setCharUnderline(::sal_Int16 the_value) throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual float SAL_CALL getCharWeight() throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual void SAL_CALL setCharWeight(float the_value) throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual ::com::sun::star::awt::FontSlant SAL_CALL getCharPosture() throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual void SAL_CALL setCharPosture(::com::sun::star::awt::FontSlant the_value) throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual ::sal_Int16 SAL_CALL getCharStrikeout() throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual void SAL_CALL setCharStrikeout(::sal_Int16 the_value) throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual ::sal_Bool SAL_CALL getCharWordMode() throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual void SAL_CALL setCharWordMode(::sal_Bool the_value) throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual ::sal_Int16 SAL_CALL getCharRotation() throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual void SAL_CALL setCharRotation(::sal_Int16 the_value) throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual ::sal_Int16 SAL_CALL getCharScaleWidth() throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual void SAL_CALL setCharScaleWidth(::sal_Int16 the_value) throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual ::sal_Int16 SAL_CALL getParaVertAlignment() throw (::com::sun::star::uno::RuntimeException); \
+ virtual void SAL_CALL setParaVertAlignment(::sal_Int16 the_value) throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::lang::IllegalArgumentException);\
+ virtual ::rtl::OUString SAL_CALL getHyperLinkURL() throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual void SAL_CALL setHyperLinkURL(const ::rtl::OUString & the_value) throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual ::rtl::OUString SAL_CALL getHyperLinkTarget() throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual void SAL_CALL setHyperLinkTarget(const ::rtl::OUString & the_value) throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual ::rtl::OUString SAL_CALL getHyperLinkName() throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual void SAL_CALL setHyperLinkName(const ::rtl::OUString & the_value) throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual ::rtl::OUString SAL_CALL getVisitedCharStyleName() throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual void SAL_CALL setVisitedCharStyleName(const ::rtl::OUString & the_value) throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual ::rtl::OUString SAL_CALL getUnvisitedCharStyleName() throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException); \
+ virtual void SAL_CALL setUnvisitedCharStyleName(const ::rtl::OUString & the_value) throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException);\
+ virtual ::sal_Int16 SAL_CALL getCharKerning() throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException);\
+ virtual void SAL_CALL setCharKerning(::sal_Int16 the_value) throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::beans::UnknownPropertyException);
+
+
+#endif // INCLUDED_REPORTHELPERDEFINES_HXX
+
diff --git a/reportdesign/inc/ReportVisitor.hxx b/reportdesign/inc/ReportVisitor.hxx
new file mode 100644
index 000000000000..b0917030f2e5
--- /dev/null
+++ b/reportdesign/inc/ReportVisitor.hxx
@@ -0,0 +1,76 @@
+/*************************************************************************
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * $RCSfile: ReportVisitor.hxx,v $
+ *
+ * $Revision: 1.2 $
+ *
+ * last change: $Author: rt $ $Date: 2007-07-09 11:56:02 $
+ *
+ * The Contents of this file are made available subject to
+ * the terms of GNU Lesser General Public License Version 2.1.
+ *
+ *
+ * GNU Lesser General Public License Version 2.1
+ * =============================================
+ * Copyright 2005 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
+ *
+ ************************************************************************/
+#ifndef INCLUDED_REPORT_VISTITOR_HXX
+#define INCLUDED_REPORT_VISTITOR_HXX
+
+#ifndef _COM_SUN_STAR_REPORT_XREPORTDEFINITION_HPP_
+#include <com/sun/star/report/XReportDefinition.hpp>
+#endif
+#include "dllapi.h"
+
+namespace reportdesign
+{
+ class SAL_NO_VTABLE ITraverseReport
+ {
+ public:
+ virtual void traverseReport(const ::com::sun::star::uno::Reference< ::com::sun::star::report::XReportDefinition>& _xReport) = 0;
+ virtual void traverseReportFunctions(const ::com::sun::star::uno::Reference< ::com::sun::star::report::XFunctions>& _xFunctions) = 0;
+ virtual void traverseReportHeader(const ::com::sun::star::uno::Reference< ::com::sun::star::report::XSection>& _xSection) = 0;
+ virtual void traverseReportFooter(const ::com::sun::star::uno::Reference< ::com::sun::star::report::XSection>& _xSection) = 0;
+ virtual void traversePageHeader(const ::com::sun::star::uno::Reference< ::com::sun::star::report::XSection>& _xSection) = 0;
+ virtual void traversePageFooter(const ::com::sun::star::uno::Reference< ::com::sun::star::report::XSection>& _xSection) = 0;
+
+ virtual void traverseGroups(const ::com::sun::star::uno::Reference< ::com::sun::star::report::XGroups>& _xGroups) = 0;
+ virtual void traverseGroup(const ::com::sun::star::uno::Reference< ::com::sun::star::report::XGroup>& _xGroup) = 0;
+ virtual void traverseGroupFunctions(const ::com::sun::star::uno::Reference< ::com::sun::star::report::XFunctions>& _xFunctions) = 0;
+ virtual void traverseGroupHeader(const ::com::sun::star::uno::Reference< ::com::sun::star::report::XSection>& _xSection) = 0;
+ virtual void traverseGroupFooter(const ::com::sun::star::uno::Reference< ::com::sun::star::report::XSection>& _xSection) = 0;
+
+ virtual void traverseDetail(const ::com::sun::star::uno::Reference< ::com::sun::star::report::XSection>& _xSection) = 0;
+ };
+
+ class REPORTDESIGN_DLLPUBLIC OReportVisitor
+ {
+ ITraverseReport* m_pTraverseReport;
+ public:
+ OReportVisitor(ITraverseReport* _pTraverseReport);
+ void start(const ::com::sun::star::uno::Reference< ::com::sun::star::report::XReportDefinition>& _xReportDefinition);
+ void start(const ::com::sun::star::uno::Reference< ::com::sun::star::report::XGroup>& _xGroup);
+ };
+// =============================================================================
+} // namespace reportdesign
+// =============================================================================
+#endif // INCLUDED_REPORT_VISTITOR_HXX
+
diff --git a/reportdesign/inc/RptDef.hxx b/reportdesign/inc/RptDef.hxx
new file mode 100644
index 000000000000..3b0a007c9f48
--- /dev/null
+++ b/reportdesign/inc/RptDef.hxx
@@ -0,0 +1,119 @@
+#ifndef _REPORT_RPTUIDEF_HXX
+#define _REPORT_RPTUIDEF_HXX
+/*************************************************************************
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * $RCSfile: RptDef.hxx,v $
+ *
+ * $Revision: 1.2 $
+ *
+ * last change: $Author: rt $ $Date: 2007-07-09 11:56:02 $
+ *
+ * The Contents of this file are made available subject to
+ * the terms of GNU Lesser General Public License Version 2.1.
+ *
+ *
+ * GNU Lesser General Public License Version 2.1
+ * =============================================
+ * Copyright 2005 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
+ *
+ ************************************************************************/
+
+
+#ifndef _SOLAR_H
+#include <tools/solar.h>
+#endif
+#ifndef _SVDOBJ_HXX
+#include <svx/svdobj.hxx>
+#endif
+#ifndef _COMPHELPER_STLTYPES_HXX_
+#include <comphelper/stl_types.hxx>
+#endif
+#ifndef _COMPHELPER_UNO3_HXX_
+#include <comphelper/uno3.hxx>
+#endif
+#include <svx/fmglob.hxx>
+#include "dllapi.h"
+
+FORWARD_DECLARE_INTERFACE(report,XReportComponent)
+FORWARD_DECLARE_INTERFACE(report,XReportDefinition)
+FORWARD_DECLARE_INTERFACE(style,XStyle)
+FORWARD_DECLARE_INTERFACE(beans,XPropertySet)
+
+namespace rptui
+{
+
+const UINT32 ReportInventor = UINT32('R')*0x00000001+
+ UINT32('P')*0x00000100+
+ UINT32('T')*0x00010000+
+ UINT32('1')*0x01000000;
+
+
+#define OBJ_DLG_FIXEDTEXT ((UINT16) OBJ_MAXI + 1)
+#define OBJ_DLG_IMAGECONTROL OBJ_FM_IMAGECONTROL
+#define OBJ_DLG_FORMATTEDFIELD ((UINT16) OBJ_MAXI + 3)
+#define OBJ_DLG_HFIXEDLINE ((UINT16) OBJ_MAXI + 4)
+#define OBJ_DLG_VFIXEDLINE ((UINT16) OBJ_MAXI + 5)
+
+// allows the alignment and resizing of controls
+namespace ControlModification
+{
+ static const ::sal_Int32 NONE = (sal_Int32)0;
+ static const ::sal_Int32 LEFT = (sal_Int32)1;
+ static const ::sal_Int32 RIGHT = (sal_Int32)2;
+ static const ::sal_Int32 TOP = (sal_Int32)3;
+ static const ::sal_Int32 BOTTOM = (sal_Int32)4;
+ static const ::sal_Int32 CENTER_HORIZONTAL = (sal_Int32)5;
+ static const ::sal_Int32 CENTER_VERTICAL = (sal_Int32)6;
+ static const ::sal_Int32 WIDTH_SMALLEST = (sal_Int32)7;
+ static const ::sal_Int32 HEIGHT_SMALLEST = (sal_Int32)8;
+ static const ::sal_Int32 WIDTH_GREATEST = (sal_Int32)9;
+ static const ::sal_Int32 HEIGHT_GREATEST = (sal_Int32)10;
+}
+
+/** returns teh object type depending on the service name
+ @param _xComponent the report component
+*/
+REPORTDESIGN_DLLPUBLIC sal_uInt16 getObjectType(const ::com::sun::star::uno::Reference< ::com::sun::star::report::XReportComponent>& _xComponent);
+
+DECLARE_STL_USTRINGACCESS_MAP(::rtl::OUString , TPropertyNamePair);
+/** returns teh property name map for the givern property id
+ @param _nObjectId the object id
+*/
+REPORTDESIGN_DLLPUBLIC const TPropertyNamePair& getPropertyNameMap(sal_uInt16 _nObjectId);
+REPORTDESIGN_DLLPUBLIC ::com::sun::star::uno::Reference< ::com::sun::star::style::XStyle> getUsedStyle(const ::com::sun::star::uno::Reference< ::com::sun::star::report::XReportDefinition>& _xReport);
+
+// -----------------------------------------------------------------------------
+template < typename T> T getStyleProperty(const ::com::sun::star::uno::Reference< ::com::sun::star::report::XReportDefinition>& _xReport,const ::rtl::OUString& _sPropertyName)
+{
+ T nReturn;
+ ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet> xProp(getUsedStyle(_xReport),::com::sun::star::uno::UNO_QUERY_THROW);
+ xProp->getPropertyValue(_sPropertyName) >>= nReturn;
+ return nReturn;
+}
+// -----------------------------------------------------------------------------
+template<typename T> void setStyleProperty(const ::com::sun::star::uno::Reference< ::com::sun::star::report::XReportDefinition>& _xReport,const ::rtl::OUString& _sPropertyName,const T& _aValue)
+{
+ ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet> xProp(getUsedStyle(_xReport),::com::sun::star::uno::UNO_QUERY);
+ if ( xProp.is() )
+ xProp->setPropertyValue(_sPropertyName,::com::sun::star::uno::makeAny(_aValue));
+}
+}
+
+#endif // _REPORT_RPTUIDEF_HXX
diff --git a/reportdesign/inc/RptModel.hxx b/reportdesign/inc/RptModel.hxx
new file mode 100644
index 000000000000..6012143ce150
--- /dev/null
+++ b/reportdesign/inc/RptModel.hxx
@@ -0,0 +1,104 @@
+#ifndef REPORT_RPTMODEL_HXX
+#define REPORT_RPTMODEL_HXX
+/*************************************************************************
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * $RCSfile: RptModel.hxx,v $
+ *
+ * $Revision: 1.2 $
+ *
+ * last change: $Author: rt $ $Date: 2007-07-09 11:56:02 $
+ *
+ * The Contents of this file are made available subject to
+ * the terms of GNU Lesser General Public License Version 2.1.
+ *
+ *
+ * GNU Lesser General Public License Version 2.1
+ * =============================================
+ * Copyright 2005 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
+ *
+ ************************************************************************/
+#ifndef _SVDMODEL_HXX
+#include <svx/svdmodel.hxx>
+#endif
+#ifndef _COM_SUN_STAR_REPORT_XREPORTDEFINITION_HPP_
+#include <com/sun/star/report/XReportDefinition.hpp>
+#endif
+#include "dllapi.h"
+
+class Window;
+namespace dbaui
+{
+ class OSingleDocumentController;
+}
+namespace rptui
+{
+//============================================================================
+// OReportModel
+//============================================================================
+
+class OReportPage;
+class OXUndoEnvironment;
+
+class REPORTDESIGN_DLLPUBLIC OReportModel : public SdrModel
+{
+ friend class OReportPage;
+
+private:
+ OXUndoEnvironment* m_pUndoEnv;
+ ::dbaui::OSingleDocumentController* m_pController;
+
+ OReportModel( const OReportModel& );
+ void operator=(const OReportModel& rSrcModel);
+public:
+ TYPEINFO();
+
+ OReportModel();
+ virtual ~OReportModel();
+
+ virtual void SetChanged(sal_Bool bFlg = sal_True);
+ virtual SdrPage* AllocPage(FASTBOOL bMasterPage);
+ virtual Window* GetCurDocViewWin();
+ virtual SdrPage* RemovePage(USHORT nPgNum);
+ /** returns the numbering type that is used to format page fields in drawing shapes */
+ virtual SvxNumType GetPageNumType() const;
+
+ OXUndoEnvironment& GetUndoEnv();
+ void SetModified(sal_Bool _bModified);
+
+ inline dbaui::OSingleDocumentController* getController() const { return m_pController; }
+ inline void attachController( dbaui::OSingleDocumentController& _rController ) { m_pController = &_rController; }
+ void detachController();
+
+ OReportPage* createNewPage(const ::com::sun::star::uno::Reference< ::com::sun::star::report::XSection >& _xSection);
+
+ /** returns the page which belongs to a section
+ *
+ * \param _xSection
+ * \return The page or <NULL/> when tno page could be found.
+ */
+ OReportPage* getPage(const ::com::sun::star::uno::Reference< ::com::sun::star::report::XSection >& _xSection);
+
+ /// returns the XReportDefinition which the OReportModel belongs to
+ ::com::sun::star::uno::Reference< ::com::sun::star::report::XReportDefinition >
+ getReportDefinition() const;
+};
+}
+#endif
+
diff --git a/reportdesign/inc/RptObject.hxx b/reportdesign/inc/RptObject.hxx
new file mode 100644
index 000000000000..f6b4cd05be8e
--- /dev/null
+++ b/reportdesign/inc/RptObject.hxx
@@ -0,0 +1,267 @@
+/*************************************************************************
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * $RCSfile: RptObject.hxx,v $
+ *
+ * $Revision: 1.2 $
+ *
+ * last change: $Author: rt $ $Date: 2007-07-09 11:56:02 $
+ *
+ * The Contents of this file are made available subject to
+ * the terms of GNU Lesser General Public License Version 2.1.
+ *
+ *
+ * GNU Lesser General Public License Version 2.1
+ * =============================================
+ * Copyright 2005 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
+ *
+ ************************************************************************/
+#ifndef _REPORT_RPTUIOBJ_HXX
+#define _REPORT_RPTUIOBJ_HXX
+
+#ifndef _SVDOUNO_HXX
+#include <svx/svdouno.hxx>
+#endif
+
+#ifndef _COMPHELPER_PROCESSFACTORY_HXX_
+#include <comphelper/processfactory.hxx>
+#endif
+
+#ifndef _COM_SUN_STAR_BEANS_XPROPERTYCHANGELISTENER_HPP_
+#include <com/sun/star/beans/XPropertyChangeListener.hpp>
+#endif
+
+#ifndef _COM_SUN_STAR_CONTAINER_XCONTAINERLISTENER_HPP_
+#include <com/sun/star/container/XContainerListener.hpp>
+#endif
+
+#ifndef _COM_SUN_STAR_REPORT_XREPORTCOMPONENT_HPP_
+#include <com/sun/star/report/XReportComponent.hpp>
+#endif
+#ifndef _COM_SUN_STAR_REPORT_XSECTION_HPP_
+#include <com/sun/star/report/XSection.hpp>
+#endif
+
+#ifndef _SVDOCIRC_HXX
+#include <svx/svdocirc.hxx>
+#endif
+#ifndef _SVDOGRP_HXX
+#include <svx/svdogrp.hxx>
+#endif
+#ifndef _SVDOASHP_HXX
+#include <svx/svdoashp.hxx>
+#endif
+#ifndef _COMPHELPER_STLTYPES_HXX_
+#include <comphelper/stl_types.hxx>
+#endif
+#ifndef _COMPHELPER_IMPLEMENTATIONREFERENCE_HXX
+#include <comphelper/implementationreference.hxx>
+#endif
+#include "dllapi.h"
+
+namespace rptui
+{
+typedef ::std::multimap< sal_Int16, ::rtl::OUString, ::std::less< sal_Int16 > > IndexToNameMap;
+ enum DlgEdHintKind
+ {
+ RPTUI_HINT_UNKNOWN,
+ RPTUI_HINT_WINDOWSCROLLED,
+ RPTUI_HINT_LAYERCHANGED,
+ RPTUI_HINT_OBJORDERCHANGED,
+ RPTUI_HINT_SELECTIONCHANGED
+ };
+
+ class OUnoObject;
+ class REPORTDESIGN_DLLPUBLIC DlgEdHint: public SfxHint
+ {
+ private:
+ DlgEdHintKind eHintKind;
+ OUnoObject* pDlgEdObj;
+
+ DlgEdHint(DlgEdHint&);
+ void operator =(DlgEdHint&);
+ public:
+ TYPEINFO();
+ DlgEdHint( DlgEdHintKind eHint );
+ DlgEdHint( DlgEdHintKind eHint, OUnoObject* pObj );
+ virtual ~DlgEdHint();
+
+ inline DlgEdHintKind GetKind() const { return eHintKind; }
+ inline OUnoObject* GetObject() const { return pDlgEdObj; }
+ };
+
+
+class OReportPage;
+class OPropertyMediator;
+
+class REPORTDESIGN_DLLPUBLIC OObjectBase
+{
+public:
+ typedef ::comphelper::ImplementationReference<OPropertyMediator,::com::sun::star::beans::XPropertyChangeListener> TMediator;
+protected:
+
+ mutable TMediator m_xMediator;
+ mutable ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener> m_xPropertyChangeListener;
+ //mutable ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener>
+ mutable ::com::sun::star::uno::Reference< ::com::sun::star::report::XReportComponent> m_xReportComponent;
+ ::com::sun::star::uno::Reference< ::com::sun::star::container::XContainerListener> m_xContainerListener;
+ ::com::sun::star::uno::Reference< ::com::sun::star::report::XSection> m_xSection;
+ ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > m_xKeepShapeAlive;
+ ::rtl::OUString m_sComponentName;
+ sal_Bool m_bIsListening;
+
+ OObjectBase(const ::com::sun::star::uno::Reference< ::com::sun::star::report::XReportComponent>& _xComponent);
+ OObjectBase(const ::rtl::OUString& _sComponentName);
+
+ virtual ~OObjectBase();
+
+ inline sal_Bool isListening() const { return m_bIsListening; }
+
+ void SetPropsFromRect(const Rectangle& _rRect);
+ void PositionAndSizeChange( const ::com::sun::star::beans::PropertyChangeEvent& evt );
+
+ virtual void SetSnapRectImpl(const Rectangle& _rRect) = 0;
+ virtual SdrPage* GetImplPage() const = 0;
+ virtual void SetObjectItemHelper(const SfxPoolItem& rItem);
+ sal_Bool IsInside(const Rectangle& _rRect,const Point& rPnt,USHORT nTol) const;
+
+ /** called by instances of derived classes to implement their overloading of getUnoShape
+ */
+ ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface >
+ getUnoShapeOf( SdrObject& _rSdrObject );
+
+public:
+ void StartListening();
+ void EndListening(sal_Bool bRemoveListener = sal_True);
+ // PropertyChangeListener
+ virtual void _propertyChange( const ::com::sun::star::beans::PropertyChangeEvent& evt ) throw(::com::sun::star::uno::RuntimeException);
+
+ // ContainerListener
+ void _elementInserted( const ::com::sun::star::container::ContainerEvent& Event ) throw(::com::sun::star::uno::RuntimeException);
+ void _elementReplaced( const ::com::sun::star::container::ContainerEvent& Event ) throw(::com::sun::star::uno::RuntimeException);
+ void _elementRemoved( const ::com::sun::star::container::ContainerEvent& Event ) throw(::com::sun::star::uno::RuntimeException);
+
+ sal_Bool supportsService( const sal_Char* _pServiceName ) const;
+
+ ::com::sun::star::uno::Reference< ::com::sun::star::report::XReportComponent> getReportComponent() const;
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet> getAwtComponent();
+ inline void setOldParent(const ::com::sun::star::uno::Reference< ::com::sun::star::report::XSection>& _xSection) { m_xSection = _xSection; }
+ inline ::com::sun::star::uno::Reference< ::com::sun::star::report::XSection> getOldParent() const { return m_xSection;}
+ ::com::sun::star::uno::Reference< ::com::sun::star::report::XSection> getSection() const;
+
+ /** releases the reference to our UNO shape (m_xKeepShapeAlive)
+ */
+ void releaseUnoShape() { m_xKeepShapeAlive.clear(); }
+
+ static SdrObject* createObject(const ::com::sun::star::uno::Reference< ::com::sun::star::report::XReportComponent>& _xComponent);
+ static sal_uInt16 getObjectType(const ::com::sun::star::uno::Reference< ::com::sun::star::report::XReportComponent>& _xComponent);
+};
+//============================================================================
+// OCustomShape
+//============================================================================
+class REPORTDESIGN_DLLPUBLIC OCustomShape: public SdrObjCustomShape , public OObjectBase
+{
+ friend class OReportPage;
+ friend class OObjectBase;
+ friend class DlgEdFactory;
+
+protected:
+ OCustomShape(const ::com::sun::star::uno::Reference< ::com::sun::star::report::XReportComponent>& _xComponent);
+ OCustomShape(const ::rtl::OUString& _sComponentName);
+
+ virtual void NbcMove( const Size& rSize );
+ virtual void NbcResize(const Point& rRef, const Fraction& xFact, const Fraction& yFact);
+ virtual void NbcSetLogicRect(const Rectangle& rRect);
+ virtual FASTBOOL EndCreate(SdrDragStat& rStat, SdrCreateCmd eCmd);
+
+ virtual void SetSnapRectImpl(const Rectangle& _rRect);
+ virtual SdrPage* GetImplPage() const;
+ void SetObjectItemHelper(const SfxPoolItem& rItem);
+
+public:
+ TYPEINFO();
+
+ virtual ~OCustomShape();
+
+ virtual sal_Int32 GetStep() const;
+
+ virtual SdrObject* CheckHit(const Point& rPnt,USHORT nTol,const SetOfByte*) const;
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet> getAwtComponent();
+
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > getUnoShape();
+};
+
+//============================================================================
+// OUnoObject
+//============================================================================
+class REPORTDESIGN_DLLPUBLIC OUnoObject: public SdrUnoObj , public OObjectBase
+{
+ friend class OReportPage;
+ friend class OObjectBase;
+ friend class DlgEdFactory;
+
+ sal_uInt16 m_nObjectType;
+
+ ::rtl::OUString GetDefaultName() const;
+protected:
+ OUnoObject( const ::com::sun::star::uno::Reference< ::com::sun::star::report::XReportComponent>& _xComponent
+ ,const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControlModel >& _xControlModel
+ ,sal_uInt16 _nObjectType);
+ OUnoObject(const ::rtl::OUString& _sComponentName
+ ,const ::rtl::OUString& rModelName
+ ,sal_uInt16 _nObjectType);
+ OUnoObject( const ::com::sun::star::uno::Reference< ::com::sun::star::report::XReportComponent>& _xComponent
+ ,const ::rtl::OUString& rModelName
+ ,sal_uInt16 _nObjectType);
+
+ virtual ~OUnoObject();
+
+ virtual void NbcMove( const Size& rSize );
+ virtual void NbcResize(const Point& rRef, const Fraction& xFact, const Fraction& yFact);
+ virtual void NbcSetLogicRect(const Rectangle& rRect);
+ virtual FASTBOOL EndCreate(SdrDragStat& rStat, SdrCreateCmd eCmd);
+
+ virtual void SetSnapRectImpl(const Rectangle& _rRect);
+ virtual SdrPage* GetImplPage() const;
+
+public:
+ TYPEINFO();
+
+ virtual sal_Int32 GetStep() const;
+
+ virtual SdrObject* CheckHit(const Point& rPnt,USHORT nTol,const SetOfByte*) const;
+ virtual void _propertyChange( const ::com::sun::star::beans::PropertyChangeEvent& evt ) throw(::com::sun::star::uno::RuntimeException);
+
+ /** creates the m_xMediator when it doesn't already exist.
+ @param _bReverse when set to <TRUE/> then the properties from the uno control will be copied into report control
+ */
+ void CreateMediator(sal_Bool _bReverse = sal_False);
+
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet> getAwtComponent();
+
+ inline sal_uInt16 getObjectId() const { return m_nObjectType; }
+
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > getUnoShape();
+};
+
+//============================================================================
+} // rptui
+//============================================================================
+#endif // _REPORT_RPTUIOBJ_HXX
+
diff --git a/reportdesign/inc/RptPage.hxx b/reportdesign/inc/RptPage.hxx
new file mode 100644
index 000000000000..120db95ca884
--- /dev/null
+++ b/reportdesign/inc/RptPage.hxx
@@ -0,0 +1,106 @@
+/*************************************************************************
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * $RCSfile: RptPage.hxx,v $
+ *
+ * $Revision: 1.2 $
+ *
+ * last change: $Author: rt $ $Date: 2007-07-09 11:56:02 $
+ *
+ * The Contents of this file are made available subject to
+ * the terms of GNU Lesser General Public License Version 2.1.
+ *
+ *
+ * GNU Lesser General Public License Version 2.1
+ * =============================================
+ * Copyright 2005 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
+ *
+ ************************************************************************/
+#ifndef _REPORT_RPTUIPAGE_HXX
+#define _REPORT_RPTUIPAGE_HXX
+
+#ifndef _SVDPAGE_HXX
+#include "svx/svdpage.hxx"
+#endif
+#ifndef _COM_SUN_STAR_REPORT_XREPORTCOMPONENT_HPP_
+#include <com/sun/star/report/XReportComponent.hpp>
+#endif
+#ifndef _COM_SUN_STAR_REPORT_XSECTION_HPP_
+#include <com/sun/star/report/XSection.hpp>
+#endif
+#include "dllapi.h"
+
+namespace rptui
+{
+//============================================================================
+// OReportPage
+//============================================================================
+
+class OReportModel;
+//class OReportSection;
+
+class REPORTDESIGN_DLLPUBLIC OReportPage : public SdrPage
+{
+ OReportModel& rModel;
+ ::com::sun::star::uno::Reference< ::com::sun::star::report::XSection >
+ m_xSection;
+
+ OReportPage(const OReportPage&);
+protected:
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > createUnoPage();
+public:
+ TYPEINFO();
+
+ OReportPage( OReportModel& rModel
+ ,const ::com::sun::star::uno::Reference< ::com::sun::star::report::XSection >& _xSection
+ ,FASTBOOL bMasterPage=FALSE );
+
+ virtual ~OReportPage();
+
+ virtual SdrPage* Clone() const;
+ using SdrPage::Clone;
+
+ virtual void NbcInsertObject(SdrObject* pObj, ULONG nPos, const SdrInsertReason* pReason);
+ virtual SdrObject* RemoveObject(ULONG nObjNum);
+
+ /** returns teh index inside the object list which belongs to the report component.
+ @param _xObject the report component
+ */
+ ULONG getIndexOf(const ::com::sun::star::uno::Reference< ::com::sun::star::report::XReportComponent >& _xObject);
+
+ /** removes the SdrObject which belongs to the report component.
+ @param _xObject the report component
+ */
+ void removeSdrObject(const ::com::sun::star::uno::Reference< ::com::sun::star::report::XReportComponent >& _xObject);
+
+ /** insert a new SdrObject which belongs to the report component.
+ @param _xObject the report component
+ */
+ void insertObject(const ::com::sun::star::uno::Reference< ::com::sun::star::report::XReportComponent >& _xObject);
+
+ //inline OReportSection* getReportSection() { return m_pView; }
+
+ /** sets the view to <NULL/>
+ */
+ //inline void clearSection() { m_pView = NULL; }
+
+ ::com::sun::star::uno::Reference< ::com::sun::star::report::XSection > getSection() const;
+};
+}
+#endif //_REPORT_RPTUIPAGE_HXX
diff --git a/reportdesign/inc/RptResId.hrc b/reportdesign/inc/RptResId.hrc
new file mode 100644
index 000000000000..a929011b5629
--- /dev/null
+++ b/reportdesign/inc/RptResId.hrc
@@ -0,0 +1,255 @@
+/*************************************************************************
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * $RCSfile: RptResId.hrc,v $
+ *
+ * $Revision: 1.2 $
+ *
+ * last change: $Author: rt $ $Date: 2007-07-09 11:56:02 $
+ *
+ * The Contents of this file are made available subject to
+ * the terms of GNU Lesser General Public License Version 2.1.
+ *
+ *
+ * GNU Lesser General Public License Version 2.1
+ * =============================================
+ * Copyright 2005 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
+ *
+ ************************************************************************/
+
+#ifndef _RPTUI_DLGRESID_HRC
+#define _RPTUI_DLGRESID_HRC
+
+// include -----------------------------------------------------------
+
+#ifndef _SOLAR_HRC
+#include <svtools/solar.hrc>
+#endif
+
+#define RID_DIALOG_START RID_RPT_START
+#define RID_PAGE_START RID_RPT_START
+#define RID_ERRORBOX_START RID_RPT_START
+#define RID_QUERYBOX_START RID_RPT_START
+#define RID_TOOLBOX_START RID_RPT_START
+#define RID_BITMAP_START RID_RPT_START
+#define RID_IMAGE_START RID_RPT_START
+#define RID_IMAGELIST_START RID_RPT_START
+#define RID_MENU_START RID_RPT_START
+#define RID_STRING_START RID_RPT_START
+#define RID_UNTYPED_START RID_RPT_START
+#define RID_WARN_START RID_RPT_START
+#define RID_CONTROL_START RID_RPT_START
+#define RID_MISC_START RID_RPT_START
+
+// Dialog Control Id's -----------------------------------------------------------
+#define RID_GROUPS_SORTING ( RID_DIALOG_START + 0 )
+#define RID_PAGENUMBERS ( RID_DIALOG_START + 1 )
+#define RID_DATETIME_DLG ( RID_DIALOG_START + 2 )
+#define RID_CONDFORMAT ( RID_DIALOG_START + 3 )
+#define WIN_CONDITION ( RID_DIALOG_START + 4 )
+#define RID_NAVIGATOR ( RID_DIALOG_START + 5 )
+
+// strings
+#define RID_STR_CLASS_FORMATTEDFIELD ( RID_STRING_START + 1 )
+#define RID_STR_CLASS_FIXEDTEXT ( RID_STRING_START + 2 )
+#define RID_STR_CLASS_IMAGECONTROL ( RID_STRING_START + 3 )
+#define RID_STR_PROPTITLE_FIXEDTEXT ( RID_STRING_START + 4 )
+#define RID_STR_PROPTITLE_FORMATTED ( RID_STRING_START + 5 )
+#define RID_STR_PROPTITLE_SHAPE ( RID_STRING_START + 6 )
+#define RID_STR_PROPTITLE_IMAGECONTROL ( RID_STRING_START + 7 )
+#define RID_STR_PROPTITLE_REPORT ( RID_STRING_START + 8 )
+#define RID_STR_PROPTITLE_SECTION ( RID_STRING_START + 9 )
+#define RID_STR_PROPTITLE_FUNCTION ( RID_STRING_START + 10 )
+
+// undo strings
+#define RID_STR_UNDO_REMOVE_REPORTHEADERFOOTER ( RID_STRING_START + 11 )
+#define RID_STR_UNDO_ADD_REPORTHEADERFOOTER ( RID_STRING_START + 12 )
+#define RID_STR_UNDO_REMOVE_PAGEHEADERFOOTER ( RID_STRING_START + 13 )
+#define RID_STR_UNDO_ADD_PAGEHEADERFOOTER ( RID_STRING_START + 14 )
+#define RID_STR_UNDO_PROPERTY ( RID_STRING_START + 15 )
+#define RID_STR_UNDO_REMOVE_GROUP ( RID_STRING_START + 16 )
+#define RID_STR_UNDO_APPEND_GROUP ( RID_STRING_START + 17 )
+#define RID_STR_UNDO_MOVE_GROUP ( RID_STRING_START + 18 )
+#define RID_STR_UNDO_CONDITIONAL_FORMATTING ( RID_STRING_START + 19 )
+#define RID_STR_UNDO_REMOVE_SELECTION ( RID_STRING_START + 20 )
+#define RID_STR_UNDO_PASTE ( RID_STRING_START + 21 )
+#define RID_STR_UNDO_CHANGE_SIZE ( RID_STRING_START + 22 )
+#define RID_STR_UNDO_INSERT_CONTROL ( RID_STRING_START + 23 )
+#define RID_STR_UNDO_DELETE_CONTROL ( RID_STRING_START + 24 )
+#define RID_STR_UNDO_GROUP ( RID_STRING_START + 25 )
+#define RID_STR_UNDO_UNGROUP ( RID_STRING_START + 26 )
+#define RID_STR_UNDO_CHANGEPOSITION ( RID_STRING_START + 27 )
+#define RID_STR_UNDO_ADDFUNCTION ( RID_STRING_START + 28 )
+#define RID_STR_UNDO_DELETEFUNCTION ( RID_STRING_START + 29 )
+
+// title of tab pages
+#define RID_STR_DESIGN_VIEW ( RID_STRING_START + 30 )
+#define RID_STR_PREVIEW_VIEW ( RID_STRING_START + 31 )
+// other
+#define STR_RPT_TITLE ( RID_STRING_START + 32 )
+#define STR_RPT_LABEL ( RID_STRING_START + 33 )
+#define STR_RPT_EXPRESSION ( RID_STRING_START + 34 )
+#define STR_RPT_SORTING ( RID_STRING_START + 35 )
+#define STR_RPT_PN_PAGE ( RID_STRING_START + 36 )
+#define STR_RPT_PN_PAGE_OF ( RID_STRING_START + 37 )
+#define STR_RPT_PREFIXCHARS ( RID_STRING_START + 38 )
+#define STR_RPT_YEAR ( RID_STRING_START + 39 )
+#define STR_RPT_QUARTER ( RID_STRING_START + 40 )
+#define STR_RPT_MONTH ( RID_STRING_START + 41 )
+#define STR_RPT_WEEK ( RID_STRING_START + 42 )
+#define STR_RPT_DAY ( RID_STRING_START + 43 )
+#define STR_RPT_HOUR ( RID_STRING_START + 44 )
+#define STR_RPT_MINUTE ( RID_STRING_START + 45 )
+#define STR_RPT_INTERVAL ( RID_STRING_START + 46 )
+#define STR_RPT_HELP_FIELD ( RID_STRING_START + 47 )
+#define STR_RPT_HELP_HEADER ( RID_STRING_START + 48 )
+#define STR_RPT_HELP_FOOTER ( RID_STRING_START + 49 )
+#define STR_RPT_HELP_GROUPON ( RID_STRING_START + 50 )
+#define STR_RPT_HELP_INTERVAL ( RID_STRING_START + 51 )
+#define STR_RPT_HELP_KEEP ( RID_STRING_START + 52 )
+#define STR_RPT_HELP_SORT ( RID_STRING_START + 53 )
+#define RID_STR_GROUPHEADER ( RID_STRING_START + 54 )
+#define RID_STR_GROUPFOOTER ( RID_STRING_START + 55 )
+#define RID_STR_UNDO_REMOVE_FUNCTION ( RID_STRING_START + 56 )
+#define STR_NUMBERED_CONDITION ( RID_STRING_START + 57 )
+
+// Property Browser Headline Id's -----------------------------------------------------------
+#define RID_STR_BRWTITLE_PROPERTIES ( RID_STRING_START + 60 )
+#define RID_STR_BRWTITLE_NO_PROPERTIES ( RID_STRING_START + 61 )
+#define RID_STR_BRWTITLE_MULTISELECT ( RID_STRING_START + 62 )
+#define STR_SHOW_RULER ( RID_STRING_START + 63 )
+#define STR_SHOW_GRID ( RID_STRING_START + 64 )
+
+#define STR_COLOR_WHITE ( RID_STRING_START + 65 )
+#define STR_CHARCOLOR ( RID_STRING_START + 66 )
+#define STR_CHARBACKGROUND ( RID_STRING_START + 67 )
+#define STR_TRANSPARENT ( RID_STRING_START + 68 )
+#define RID_STR_FIELDSELECTION ( RID_STRING_START + 69 )
+
+
+#define RID_STR_UNDO_ADD_GROUP_HEADER ( RID_STRING_START + 70 )
+#define RID_STR_UNDO_REMOVE_GROUP_HEADER ( RID_STRING_START + 71 )
+#define RID_STR_UNDO_ADD_GROUP_FOOTER ( RID_STRING_START + 72 )
+#define RID_STR_UNDO_REMOVE_GROUP_FOOTER ( RID_STRING_START + 73 )
+
+#define RID_STR_PROPPAGE_DEFAULT ( RID_STRING_START + 74 )
+#define RID_STR_PROPPAGE_DATA ( RID_STRING_START + 75 )
+
+#define RID_STR_FILTER ( RID_STRING_START + 76 )
+#define RID_STR_BOOL ( RID_STRING_START + 77 )
+
+#define RID_STR_FORCENEWPAGE (RID_STRING_START + 78)
+#define RID_STR_NEWROWORCOL (RID_STRING_START + 79)
+#define RID_STR_KEEPTOGETHER (RID_STRING_START + 80)
+#define RID_STR_CANGROW (RID_STRING_START + 81)
+#define RID_STR_CANSHRINK (RID_STRING_START + 82)
+#define RID_STR_REPEATSECTION (RID_STRING_START + 83)
+
+#define RID_STR_PROPTITLE_GROUP (RID_STRING_START + 84)
+#define RID_STR_PROPTITLE_FIXEDLINE (RID_STRING_START + 85)
+#define RID_STR_CLASS_FIXEDLINE (RID_STRING_START + 86)
+#define RID_STR_BACKTRANSPARENT (RID_STRING_START + 87)
+#define RID_STR_CONTROLBACKGROUNDTRANSPARENT (RID_STRING_START + 88)
+#define RID_STR_OVERLAP_OTHER_CONTROL (RID_STRING_START + 89)
+#define RID_STR_ILLEGAL_POSITION (RID_STRING_START + 90)
+#define RID_STR_PAGEHEADERFOOTER_INSERT (RID_STRING_START + 91)
+#define RID_STR_PAGEHEADERFOOTER_DELETE (RID_STRING_START + 92)
+#define RID_STR_BACKCOLOR (RID_STRING_START + 93)
+#define RID_STR_PRINTREPEATEDVALUES (RID_STRING_START + 94)
+#define RID_STR_CONDITIONALPRINTEXPRESSION (RID_STRING_START + 95)
+#define RID_STR_COLUMNHEADERFOOTER_INSERT (RID_STRING_START + 96)
+#define RID_STR_STARTNEWCOLUMN (RID_STRING_START + 97)
+#define RID_STR_STARTNEWPAGE (RID_STRING_START + 98)
+#define RID_STR_RESETPAGENUMBER (RID_STRING_START + 99)
+#define RID_STR_COLUMNHEADERFOOTER_DELETE (RID_STRING_START + 100)
+#define RID_STR_MINHEIGHTNEWPAGE (RID_STRING_START + 101)
+#define RID_STR_PRINTWHENGROUPCHANGE (RID_STRING_START + 102)
+#define RID_STR_REPORTHEADERFOOTER_INSERT (RID_STRING_START + 103)
+#define RID_STR_REPORTHEADERFOOTER_DELETE (RID_STRING_START + 104)
+#define RID_STR_VISIBLE (RID_STRING_START + 105)
+
+#define RID_STR_FORCENEWPAGE_CONST (RID_STRING_START + 106)
+#define RID_STR_KEEPTOGETHER_CONST (RID_STRING_START + 107)
+#define RID_STR_GROUPKEEPTOGETHER (RID_STRING_START + 108)
+#define RID_STR_GROUPKEEPTOGETHER_CONST (RID_STRING_START + 109)
+#define RID_STR_PAGEHEADEROPTION (RID_STRING_START + 110)
+#define RID_STR_PAGEFOOTEROPTION (RID_STRING_START + 111)
+#define RID_STR_REPORTPRINTOPTION_CONST (RID_STRING_START + 112)
+#define RID_STR_SECTIONPAGEBREAK_CONST (RID_STRING_START + 113)
+// free
+#define RID_APP_TITLE (RID_STRING_START + 115)
+#define RID_APP_NEW_DOC (RID_STRING_START + 116)
+#define RID_STR_UNDO_ALIGNMENT (RID_STRING_START + 117)
+#define RID_STR_HEADER (RID_STRING_START + 118)
+#define RID_STR_FOOTER (RID_STRING_START + 119)
+#define RID_STR_DATAFIELD (RID_STRING_START + 120)
+#define RID_STR_FONT (RID_STRING_START + 121)
+#define RID_STR_COULD_NOT_CREATE_REPORT (RID_STRING_START + 122)
+#define RID_STR_PRESERVEIRI (RID_STRING_START + 123)
+#define RID_STR_IMPORT_GRAPHIC (RID_STRING_START + 124)
+#define RID_STR_POSITIONX (RID_STRING_START + 125)
+#define RID_STR_POSITIONY (RID_STRING_START + 126)
+#define RID_STR_WIDTH (RID_STRING_START + 127)
+#define RID_STR_HEIGHT (RID_STRING_START + 128)
+#define RID_STR_DELETE (RID_STRING_START + 129)
+#define RID_STR_DEEPTRAVERSING (RID_STRING_START + 130)
+#define RID_STR_PREEVALUATED (RID_STRING_START + 131)
+#define RID_STR_FUNCTIONS (RID_STRING_START + 132)
+#define RID_STR_GROUPS (RID_STRING_START + 133)
+#define RID_STR_FUNCTION (RID_STRING_START + 134)
+#define RID_STR_FORMULA (RID_STRING_START + 135)
+#define RID_STR_INITIALFORMULA (RID_STRING_START + 136)
+#define RID_STR_UNDO_CHANGEFONT (RID_STRING_START + 137)
+#define RID_STR_UNDO_CHANGEPAGE (RID_STRING_START + 138)
+#define RID_STR_CAUGHT_FOREIGN_EXCEPTION (RID_STRING_START + 139)
+
+// #define RID_STR_ (RID_STRING_START + 130)
+// -----------------------------------------------------------------------
+#define RID_PAGEDIALOG_PAGE ( RID_PAGE_START + 1 )
+#define RID_PAGEDIALOG_BACKGROUND ( RID_PAGE_START + 2 )
+#define RID_PAGEDIALOG_CHAR ( RID_PAGE_START + 3 )
+#define RID_PAGE_CHAR ( RID_PAGE_START + 4 )
+#define RID_PAGE_EFFECTS ( RID_PAGE_START + 5 )
+#define RID_PAGE_POSITION ( RID_PAGE_START + 6 )
+#define RID_PAGE_BACKGROUND ( RID_PAGE_START + 7 )
+#define RID_PAGE_TWOLN ( RID_PAGE_START + 8 )
+#define RID_PAGEDIALOG_LINE ( RID_PAGE_START + 9 )
+#define RID_PAGE_LINE ( RID_PAGE_START + 10 )
+#define RID_PAGE_ALIGNMENT ( RID_PAGE_START + 11 )
+
+// -----------------------------------------------------------------------
+#define RID_IMG_TREENODE_COLLAPSED ( RID_IMAGE_START + 1 )
+#define RID_IMG_TREENODE_EXPANDED ( RID_IMAGE_START + 2 )
+#define RID_IMG_TREENODE_COLLAPSED_HC ( RID_IMAGE_START + 3 )
+#define RID_IMG_TREENODE_EXPANDED_HC ( RID_IMAGE_START + 4 )
+#define REPORT_TREE_ICON ( RID_IMAGE_START + 5 )
+// menu -----------------------------------------------------------------------
+#define RID_MENU_REPORT ( RID_MENU_START + 0 )
+#define RID_GROUPSROWPOPUPMENU ( RID_MENU_START + 1 )
+#define RID_MENU_NAVIGATOR ( RID_MENU_START + 2 )
+
+// image lists -----------------------------------------------------------------------
+#define IMG_CONDFORMAT_DLG_SC (RID_IMAGELIST_START + 0)
+#define IMG_CONDFORMAT_DLG_SCH (RID_IMAGELIST_START + 1)
+#define IMG_CONDFORMAT_DLG_LC (RID_IMAGELIST_START + 2)
+#define IMG_CONDFORMAT_DLG_LCH (RID_IMAGELIST_START + 3)
+#define RID_SVXIMGLIST_RPTEXPL (RID_IMAGELIST_START + 4)
+#define RID_SVXIMGLIST_RPTEXPL_HC (RID_IMAGELIST_START + 5)
+
+#endif // _RPTUI_DLGRESID_HRC
diff --git a/reportdesign/inc/UndoActions.hxx b/reportdesign/inc/UndoActions.hxx
new file mode 100644
index 000000000000..5be376f91506
--- /dev/null
+++ b/reportdesign/inc/UndoActions.hxx
@@ -0,0 +1,323 @@
+/*************************************************************************
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * $RCSfile: UndoActions.hxx,v $
+ *
+ * $Revision: 1.2 $
+ *
+ * last change: $Author: rt $ $Date: 2007-07-09 11:56:02 $
+ *
+ * The Contents of this file are made available subject to
+ * the terms of GNU Lesser General Public License Version 2.1.
+ *
+ *
+ * GNU Lesser General Public License Version 2.1
+ * =============================================
+ * Copyright 2005 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
+ *
+ ************************************************************************/
+#ifndef RPTUI_UNDOACTIONS_HXX
+#define RPTUI_UNDOACTIONS_HXX
+
+#ifndef _SVDUNDO_HXX
+#include <svx/svdundo.hxx>
+#endif
+#ifndef _STRING_HXX
+#include <tools/string.hxx>
+#endif
+/** === begin UNO includes === **/
+#ifndef _COM_SUN_STAR_UTIL_XMODIFYLISTENER_HPP_
+#include <com/sun/star/util/XModifyListener.hpp>
+#endif
+#ifndef _COM_SUN_STAR_BEANS_XPROPERTYSET_HPP_
+#include <com/sun/star/beans/XPropertySet.hpp>
+#endif
+#ifndef _COM_SUN_STAR_BEANS_PROPERTYCHANGEEVENT_HPP_
+#include <com/sun/star/beans/PropertyChangeEvent.hpp>
+#endif
+#ifndef _COM_SUN_STAR_SCRIPT_SCRIPTEVENT_HPP_
+#include <com/sun/star/script/ScriptEvent.hpp>
+#endif
+#ifndef _COM_SUN_STAR_SCRIPT_XSCRIPTLISTENER_HPP_
+#include <com/sun/star/script/XScriptListener.hpp>
+#endif
+#ifndef _COM_SUN_STAR_SCRIPT_SCRIPTEVENTDESCRIPTOR_HPP_
+#include <com/sun/star/script/ScriptEventDescriptor.hpp>
+#endif
+#ifndef _COM_SUN_STAR_CONTAINER_XNAMECONTAINER_HPP_
+#include <com/sun/star/container/XNameContainer.hpp>
+#endif
+#ifndef _COM_SUN_STAR_CONTAINER_CONTAINEREVENT_HPP_
+#include <com/sun/star/container/ContainerEvent.hpp>
+#endif
+#ifndef _COM_SUN_STAR_CONTAINER_XNAMECONTAINER_HPP_
+#include <com/sun/star/container/XNameContainer.hpp>
+#endif
+#ifndef _COM_SUN_STAR_REPORT_XREPORTCOMPONENT_HPP_
+#include <com/sun/star/report/XReportComponent.hpp>
+#endif
+#ifndef _COM_SUN_STAR_REPORT_XREPORTDEFINITION_HPP_
+#include <com/sun/star/report/XReportDefinition.hpp>
+#endif
+#ifndef _COM_SUN_STAR_REPORT_XGROUP_HPP_
+#include <com/sun/star/report/XGroup.hpp>
+#endif
+/** === end UNO includes === **/
+
+#ifndef _CPPUHELPER_IMPLBASE3_HXX_
+#include <cppuhelper/implbase3.hxx>
+#endif
+#ifndef _COMPHELPER_UNO3_HXX_
+#include <comphelper/uno3.hxx>
+#endif
+#include <comphelper/sequence.hxx>
+#ifndef _SFXLSTNER_HXX //autogen
+#include <svtools/lstner.hxx>
+#endif
+#ifndef _SVDOUNO_HXX
+#include <svx/svdouno.hxx>
+#endif
+#ifndef REPORT_RPTMODEL_HXX
+#include "RptModel.hxx"
+#endif
+#include "dllapi.h"
+#include <functional>
+#include <memory>
+#include <boost/shared_ptr.hpp>
+
+FORWARD_DECLARE_INTERFACE(awt,XControl)
+FORWARD_DECLARE_INTERFACE(awt,XControlContainer)
+namespace dbaui
+{
+ class IController;
+}
+namespace rptui
+{
+ class OObjectBase;
+
+ enum Action
+ {
+ Inserted = 1,
+ Removed = 2
+ };
+
+ /** Helper class to allow std::mem_fun for SAL_CALL
+ */
+ class REPORTDESIGN_DLLPUBLIC OGroupHelper
+ {
+ ::com::sun::star::uno::Reference< ::com::sun::star::report::XGroup > m_xGroup;
+ OGroupHelper(const OGroupHelper&);
+ OGroupHelper& operator=(const OGroupHelper&);
+ public:
+ OGroupHelper(const ::com::sun::star::uno::Reference< ::com::sun::star::report::XGroup >& _xGroup)
+ :m_xGroup(_xGroup)
+ {
+ }
+ inline ::com::sun::star::uno::Reference< ::com::sun::star::report::XSection > getHeader() { return m_xGroup->getHeader(); }
+ inline ::com::sun::star::uno::Reference< ::com::sun::star::report::XSection > getFooter() { return m_xGroup->getFooter(); }
+ inline ::com::sun::star::uno::Reference< ::com::sun::star::report::XGroup > getGroup() { return m_xGroup; }
+
+ inline ::sal_Bool getHeaderOn() { return m_xGroup->getHeaderOn(); }
+ inline ::sal_Bool getFooterOn() { return m_xGroup->getFooterOn(); }
+
+ static ::std::mem_fun_t< ::com::sun::star::uno::Reference< ::com::sun::star::report::XSection> , OGroupHelper> getMemberFunction(const ::com::sun::star::uno::Reference< ::com::sun::star::report::XSection >& _xSection);
+
+ };
+ typedef com::sun::star::uno::Reference< ::com::sun::star::report::XSection > TSection;
+
+ /** Helper class to allow std::mem_fun for SAL_CALL
+ */
+ class REPORTDESIGN_DLLPUBLIC OReportHelper
+ {
+ ::com::sun::star::uno::Reference< ::com::sun::star::report::XReportDefinition > m_xReport;
+ public:
+ OReportHelper(const ::com::sun::star::uno::Reference< ::com::sun::star::report::XReportDefinition >& _xReport)
+ :m_xReport(_xReport)
+ {
+ }
+ inline ::com::sun::star::uno::Reference< ::com::sun::star::report::XSection > getReportHeader() { return m_xReport->getReportHeader(); }
+ inline ::com::sun::star::uno::Reference< ::com::sun::star::report::XSection > getReportFooter() { return m_xReport->getReportFooter(); }
+ inline ::com::sun::star::uno::Reference< ::com::sun::star::report::XSection > getPageHeader() { return m_xReport->getPageHeader(); }
+ inline ::com::sun::star::uno::Reference< ::com::sun::star::report::XSection > getPageFooter() { return m_xReport->getPageFooter(); }
+ inline ::com::sun::star::uno::Reference< ::com::sun::star::report::XSection > getDetail() { return m_xReport->getDetail(); }
+
+ static ::std::mem_fun_t< ::com::sun::star::uno::Reference< ::com::sun::star::report::XSection> , OReportHelper> getMemberFunction(const ::com::sun::star::uno::Reference< ::com::sun::star::report::XSection >& _xSection);
+ };
+
+ class REPORTDESIGN_DLLPUBLIC OCommentUndoAction : public SdrUndoAction
+ {
+ protected:
+ String m_strComment; // undo, redo comment
+ ::dbaui::IController* m_pController;
+
+ public:
+ TYPEINFO();
+ OCommentUndoAction( SdrModel& rMod
+ ,USHORT nCommentID);
+
+ virtual UniString GetComment() const { return m_strComment; }
+ virtual void Undo();
+ virtual void Redo();
+ };
+ //==================================================================
+ // OUndoContainerAction
+ //==================================================================
+ class REPORTDESIGN_DLLPUBLIC OUndoContainerAction: public OCommentUndoAction
+ {
+ OUndoContainerAction(OUndoContainerAction&);
+ void operator =(OUndoContainerAction&);
+ protected:
+ ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface >
+ m_xElement; // object not owned by the action
+ ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface >
+ m_xOwnElement; // object owned by the action
+ ::com::sun::star::uno::Reference< ::com::sun::star::container::XIndexContainer >
+ m_xContainer;
+ ::com::sun::star::uno::Reference< ::com::sun::star::report::XSection >
+ m_xSection;
+ Action m_eAction;
+
+ public:
+ OUndoContainerAction(SdrModel& rMod
+ ,Action _eAction
+ ,const ::com::sun::star::uno::Reference< ::com::sun::star::container::XIndexContainer > _xContainer
+ ,const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface>& xElem
+ ,USHORT _nCommentId);
+ virtual ~OUndoContainerAction();
+
+ virtual void Undo();
+ virtual void Redo();
+
+ protected:
+ virtual void implReInsert( ) SAL_THROW( ( ::com::sun::star::uno::Exception ) );
+ virtual void implReRemove( ) SAL_THROW( ( ::com::sun::star::uno::Exception ) );
+ };
+
+ //==================================================================
+ // OUndoReportSectionAction
+ //==================================================================
+ class REPORTDESIGN_DLLPUBLIC OUndoReportSectionAction : public OUndoContainerAction
+ {
+ OReportHelper m_aReportHelper;
+ ::std::mem_fun_t< ::com::sun::star::uno::Reference< ::com::sun::star::report::XSection >
+ ,OReportHelper> m_pMemberFunction;
+ public:
+ OUndoReportSectionAction(SdrModel& rMod
+ ,Action _eAction
+ ,::std::mem_fun_t< ::com::sun::star::uno::Reference< ::com::sun::star::report::XSection >
+ ,OReportHelper> _pMemberFunction
+ ,const ::com::sun::star::uno::Reference< ::com::sun::star::report::XReportDefinition >& _xReport
+ ,const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface>& xElem
+ ,USHORT _nCommentId);
+
+ protected:
+ virtual void implReInsert( ) SAL_THROW( ( ::com::sun::star::uno::Exception ) );
+ virtual void implReRemove( ) SAL_THROW( ( ::com::sun::star::uno::Exception ) );
+ };
+
+ //==================================================================
+ // OUndoGroupSectionAction
+ //==================================================================
+ class REPORTDESIGN_DLLPUBLIC OUndoGroupSectionAction : public OUndoContainerAction
+ {
+ OGroupHelper m_aGroupHelper;
+ ::std::mem_fun_t< ::com::sun::star::uno::Reference< ::com::sun::star::report::XSection >
+ ,OGroupHelper> m_pMemberFunction;
+ public:
+ OUndoGroupSectionAction(SdrModel& rMod
+ ,Action _eAction
+ ,::std::mem_fun_t< ::com::sun::star::uno::Reference< ::com::sun::star::report::XSection >
+ ,OGroupHelper> _pMemberFunction
+ ,const ::com::sun::star::uno::Reference< ::com::sun::star::report::XGroup >& _xGroup
+ ,const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface>& xElem
+ ,USHORT _nCommentId);
+
+ protected:
+ virtual void implReInsert( ) SAL_THROW( ( ::com::sun::star::uno::Exception ) );
+ virtual void implReRemove( ) SAL_THROW( ( ::com::sun::star::uno::Exception ) );
+ };
+
+ ///==================================================================
+ /// ORptUndoPropertyAction
+ ///==================================================================
+ class REPORTDESIGN_DLLPUBLIC ORptUndoPropertyAction: public OCommentUndoAction
+ {
+ ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet> m_xObj;
+ ::rtl::OUString m_aPropertyName;
+ ::com::sun::star::uno::Any m_aNewValue;
+ ::com::sun::star::uno::Any m_aOldValue;
+
+ /** sets either the old value or the new value again at the property set.
+ *
+ * \param _bOld If set to <TRUE/> than the old value will be set otherwise the new value will be set.
+ */
+ void setProperty(sal_Bool _bOld);
+ protected:
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet> getObject();
+
+ public:
+ ORptUndoPropertyAction(SdrModel& rMod, const ::com::sun::star::beans::PropertyChangeEvent& evt);
+
+ virtual void Undo();
+ virtual void Redo();
+
+ virtual String GetComment() const;
+ };
+
+ //==================================================================
+ // OUndoPropertyReportSectionAction
+ //==================================================================
+ class REPORTDESIGN_DLLPUBLIC OUndoPropertyReportSectionAction : public ORptUndoPropertyAction
+ {
+ OReportHelper m_aReportHelper;
+ ::std::mem_fun_t< ::com::sun::star::uno::Reference< ::com::sun::star::report::XSection >
+ ,OReportHelper> m_pMemberFunction;
+ protected:
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet> getObject();
+ public:
+ OUndoPropertyReportSectionAction(SdrModel& rMod
+ ,const ::com::sun::star::beans::PropertyChangeEvent& evt
+ ,::std::mem_fun_t< ::com::sun::star::uno::Reference< ::com::sun::star::report::XSection >
+ ,OReportHelper> _pMemberFunction
+ ,const ::com::sun::star::uno::Reference< ::com::sun::star::report::XReportDefinition >& _xReport
+ );
+ };
+
+ //==================================================================
+ // OUndoPropertyGroupSectionAction
+ //==================================================================
+ class REPORTDESIGN_DLLPUBLIC OUndoPropertyGroupSectionAction : public ORptUndoPropertyAction
+ {
+ OGroupHelper m_aGroupHelper;
+ ::std::mem_fun_t< ::com::sun::star::uno::Reference< ::com::sun::star::report::XSection >
+ ,OGroupHelper> m_pMemberFunction;
+ protected:
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet> getObject();
+ public:
+ OUndoPropertyGroupSectionAction(SdrModel& rMod
+ ,const ::com::sun::star::beans::PropertyChangeEvent& evt
+ ,::std::mem_fun_t< ::com::sun::star::uno::Reference< ::com::sun::star::report::XSection >
+ ,OGroupHelper> _pMemberFunction
+ ,const ::com::sun::star::uno::Reference< ::com::sun::star::report::XGroup >& _xGroup
+ );
+ };
+
+}
+#endif //RPTUI_UNDOACTIONS_HXX
+
diff --git a/reportdesign/inc/UndoEnv.hxx b/reportdesign/inc/UndoEnv.hxx
new file mode 100644
index 000000000000..ac19c70d0ff7
--- /dev/null
+++ b/reportdesign/inc/UndoEnv.hxx
@@ -0,0 +1,130 @@
+/*************************************************************************
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * $RCSfile: UndoEnv.hxx,v $
+ *
+ * $Revision: 1.2 $
+ *
+ * last change: $Author: rt $ $Date: 2007-07-09 11:56:02 $
+ *
+ * The Contents of this file are made available subject to
+ * the terms of GNU Lesser General Public License Version 2.1.
+ *
+ *
+ * GNU Lesser General Public License Version 2.1
+ * =============================================
+ * Copyright 2005 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
+ *
+ ************************************************************************/
+#ifndef INCLUDED_UNDOENV_HXX
+#define INCLUDED_UNDOENV_HXX
+
+#include <com/sun/star/beans/XPropertyChangeListener.hpp>
+#include <com/sun/star/beans/PropertyChangeEvent.hpp>
+#include <com/sun/star/container/XContainerListener.hpp>
+#include <com/sun/star/report/XReportDefinition.hpp>
+#include <memory>
+namespace rptui
+{
+ class OXUndoEnvironmentImpl;
+
+ //========================================================================
+ class REPORTDESIGN_DLLPUBLIC OXUndoEnvironment
+ : public ::cppu::WeakImplHelper3< ::com::sun::star::beans::XPropertyChangeListener
+ , ::com::sun::star::container::XContainerListener
+ , ::com::sun::star::util::XModifyListener
+ >
+ , public SfxListener
+ {
+ const ::std::auto_ptr<OXUndoEnvironmentImpl> m_pImpl;
+
+ OXUndoEnvironment(const OXUndoEnvironment&);
+ OXUndoEnvironment& operator=(const OXUndoEnvironment&);
+
+ protected:
+ virtual ~OXUndoEnvironment();
+
+ public:
+ OXUndoEnvironment(OReportModel& _rModel);
+
+ class OUndoEnvLock
+ {
+ OXUndoEnvironment& m_rUndoEnv;
+ public:
+ OUndoEnvLock(OXUndoEnvironment& _rUndoEnv): m_rUndoEnv(_rUndoEnv){m_rUndoEnv.Lock();}
+ ~OUndoEnvLock(){ m_rUndoEnv.UnLock(); }
+ };
+
+ void Lock();
+ void UnLock();
+ sal_Bool IsLocked() const;
+
+ // access control
+ struct Accessor { friend class OReportModel; private: Accessor() { } };
+ void Clear(const Accessor& _r);
+
+ void AddElement(const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface>& Element);
+ void RemoveElement(const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface>& Element);
+
+ void AddSection( const ::com::sun::star::uno::Reference< ::com::sun::star::report::XSection>& _xSection);
+ void RemoveSection( const ::com::sun::star::uno::Reference< ::com::sun::star::report::XSection>& _xSection );
+ /** removes the section from the page out of the undo env
+ *
+ * \param _pPage
+ */
+ void RemoveSection(OReportPage* _pPage);
+
+ // readonly-ness
+ void SetReadOnly( sal_Bool bRead, const Accessor& );
+ sal_Bool IsReadOnly() const;
+
+ protected:
+ // XEventListener
+ virtual void SAL_CALL disposing(const ::com::sun::star::lang::EventObject& Source) throw( ::com::sun::star::uno::RuntimeException );
+
+ // XPropertyChangeListener
+ virtual void SAL_CALL propertyChange(const ::com::sun::star::beans::PropertyChangeEvent& evt) throw(::com::sun::star::uno::RuntimeException);
+
+ // XContainerListener
+ virtual void SAL_CALL elementInserted(const ::com::sun::star::container::ContainerEvent& rEvent) throw(::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL elementReplaced(const ::com::sun::star::container::ContainerEvent& rEvent) throw(::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL elementRemoved(const ::com::sun::star::container::ContainerEvent& rEvent) throw(::com::sun::star::uno::RuntimeException);
+
+ // XModifyListener
+ virtual void SAL_CALL modified( const ::com::sun::star::lang::EventObject& aEvent ) throw (::com::sun::star::uno::RuntimeException);
+
+ void ModeChanged();
+
+ virtual void Notify( SfxBroadcaster& rBC, const SfxHint& rHint );
+
+ private:
+ void TogglePropertyListening(const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface>& Element);
+
+ void implSetModified();
+
+ void switchListening( const ::com::sun::star::uno::Reference< ::com::sun::star::container::XIndexAccess >& _rxContainer, bool _bStartListening ) SAL_THROW(());
+ void switchListening( const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface >& _rxObject, bool _bStartListening ) SAL_THROW(());
+
+ ::std::vector< ::com::sun::star::uno::Reference< ::com::sun::star::container::XChild> >::const_iterator
+ getSection(const ::com::sun::star::uno::Reference< ::com::sun::star::container::XChild>& _xContainer) const;
+ };
+
+}
+#endif //
+
diff --git a/reportdesign/inc/dllapi.h b/reportdesign/inc/dllapi.h
new file mode 100644
index 000000000000..cb4a5bab1dcd
--- /dev/null
+++ b/reportdesign/inc/dllapi.h
@@ -0,0 +1,51 @@
+/*************************************************************************
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * $RCSfile: dllapi.h,v $
+ *
+ * $Revision: 1.2 $
+ *
+ * last change: $Author: rt $ $Date: 2007-07-09 11:56:02 $
+ *
+ * The Contents of this file are made available subject to
+ * the terms of GNU Lesser General Public License Version 2.1.
+ *
+ *
+ * GNU Lesser General Public License Version 2.1
+ * =============================================
+ * Copyright 2005 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
+ *
+ ************************************************************************/
+
+#ifndef INCLUDED_DLLAPI_H
+#define INCLUDED_DLLAPI_H
+
+#ifndef _SAL_TYPES_H_
+#include "sal/types.h"
+#endif
+
+#if defined(REPORTDESIGN_DLLIMPLEMENTATION)
+#define REPORTDESIGN_DLLPUBLIC SAL_DLLPUBLIC_EXPORT
+#else
+#define REPORTDESIGN_DLLPUBLIC SAL_DLLPUBLIC_IMPORT
+#endif
+#define REPORTDESIGN_DLLPRIVATE SAL_DLLPRIVATE
+
+#endif /* INCLUDED_DLLAPI_H */
+
diff --git a/reportdesign/inc/helpids.hrc b/reportdesign/inc/helpids.hrc
new file mode 100644
index 000000000000..f127a4eacd0a
--- /dev/null
+++ b/reportdesign/inc/helpids.hrc
@@ -0,0 +1,131 @@
+/*************************************************************************
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * $RCSfile: helpids.hrc,v $
+ *
+ * $Revision: 1.2 $
+ *
+ * last change: $Author: rt $ $Date: 2007-07-09 11:56:02 $
+ *
+ * The Contents of this file are made available subject to
+ * the terms of GNU Lesser General Public License Version 2.1.
+ *
+ *
+ * GNU Lesser General Public License Version 2.1
+ * =============================================
+ * Copyright 2005 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
+ *
+ ************************************************************************/
+#ifndef RTPUI_REPORTDESIGN_HELPID_HRC
+#define RTPUI_REPORTDESIGN_HELPID_HRC
+
+#ifndef _SOLAR_HRC
+#include <svtools/solar.hrc> // HID_DBACCESS_START
+#endif
+
+#define UID_RPT_APP_VIEW (HID_RPT_START + 0)
+#define UID_SCROLLWINDOW (HID_RPT_START + 1)
+#define UID_REPORTWINDOW (HID_RPT_START + 2)
+#define HID_HORZ_RULER (HID_RPT_START + 3)
+#define UID_SECTIONSWINDOW (HID_RPT_START + 4)
+#define UID_VIEWSWINDOW (HID_RPT_START + 5)
+#define HID_ENDMARKER (HID_RPT_START + 6)
+#define HID_SPLITTER (HID_RPT_START + 7)
+#define HID_REPORTSECTION (HID_RPT_START + 8)
+#define HID_HORZ_SCROLLBAR (HID_RPT_START + 9)
+#define HID_VERT_SCROLLBAR (HID_RPT_START + 10)
+#define HID_STARTMARKER (HID_RPT_START + 11)
+#define HID_FIELDEXPRESSION (HID_RPT_START + 12)
+#define HID_SORTORDER (HID_RPT_START + 13)
+#define HID_GROUPSBRW (HID_RPT_START + 14)
+#define HID_GROUPSSORTING_DLG (HID_RPT_START + 15)
+#define HID_PAGENUMBERS_DLG (HID_RPT_START + 16)
+#define HID_DATETIME_DLG (HID_RPT_START + 17)
+#define HID_CONDFORMAT_DLG (HID_RPT_START + 18)
+#define HID_CONDFORMAT_TB (HID_RPT_START + 19)
+#define HID_CRTL_FORMAT_PREVIEW (HID_RPT_START + 20)
+#define HID_COND_DLG (HID_RPT_START + 21)
+#define HID_RPT_POPUP_COLOR_CTRL (HID_RPT_START + 22)
+#define HID_RPT_POPUP_COLOR (HID_RPT_START + 23)
+#define HID_FIELD_SEL (HID_RPT_START + 24)
+#define HID_FIELD_SEL_WIN (HID_RPT_START + 25)
+#define HID_PROPDLG_TAB_GENERAL (HID_RPT_START + 26)
+#define HID_PROPDLG_TAB_DATA (HID_RPT_START + 27)
+
+#define HID_PROP_FORCENEWPAGE (HID_RPT_START + 28)
+#define HID_PROP_NEWROWORCOL (HID_RPT_START + 29)
+#define HID_PROP_KEEPTOGETHER (HID_RPT_START + 30)
+#define HID_PROP_CANGROW (HID_RPT_START + 31)
+#define HID_PROP_CANSHRINK (HID_RPT_START + 32)
+#define HID_PROP_REPEATSECTION (HID_RPT_START + 33)
+// free
+// free
+// free
+// free
+// free
+// free
+// free
+// free
+// free
+// free
+#define HID_PROP_PRINTREPEATEDVALUES (HID_RPT_START + 44)
+#define HID_PROP_CONDITIONALPRINTEXPRESSION (HID_RPT_START + 45)
+// free
+#define HID_PROP_STARTNEWCOLUMN (HID_RPT_START + 47)
+#define HID_PROP_STARTNEWPAGE (HID_RPT_START + 48)
+#define HID_PROP_RESETPAGENUMBER (HID_RPT_START + 49)
+// free
+#define HID_PROP_MINHEIGHTNEWPAGE (HID_RPT_START + 51)
+#define HID_PROP_PRINTWHENGROUPCHANGE (HID_RPT_START + 52)
+// free
+// free
+#define HID_PROP_VISIBLE (HID_RPT_START + 55)
+#define HID_PROP_GROUPKEEPTOGETHER (HID_RPT_START + 56)
+#define HID_PROP_PAGEHEADEROPTION (HID_RPT_START + 57)
+#define HID_PROP_PAGEFOOTEROPTION (HID_RPT_START + 58)
+#define UID_PROP_DLG_LINE_STYLE (HID_RPT_START + 59)
+// free
+#define HID_PROP_DATAFIELD (HID_RPT_START + 61)
+#define HID_PROP_BACKCOLOR (HID_RPT_START + 62)
+#define HID_PROP_RPT_POSITIONX (HID_RPT_START + 63)
+#define HID_PROP_RPT_POSITIONY (HID_RPT_START + 64)
+#define HID_PROP_RPT_WIDTH (HID_RPT_START + 65)
+#define HID_PROP_RPT_HEIGHT (HID_RPT_START + 66)
+#define HID_START_TITLE (HID_RPT_START + 67)
+#define HID_START_IMAGE (HID_RPT_START + 68)
+#define HID_PROP_DEEPTRAVERSING (HID_RPT_START + 69)
+#define HID_PROP_PREEVALUATED (HID_RPT_START + 70)
+#define HID_NAVIGATOR_DLG (HID_RPT_START + 71)
+#define HID_REPORT_NAVIGATOR_TREE (HID_RPT_START + 72)
+#define HID_PROP_FORMULA (HID_RPT_START + 73)
+#define HID_PROP_INITIALFORMULA (HID_RPT_START + 74)
+#define HID_PROP_RPT_FONT (HID_RPT_START + 75)
+#define UID_RPT_PROP_DLG_FONT_TYPE (HID_RPT_START + 76)
+#define HID_PROP_PRESERVEIRI (HID_RPT_START + 77)
+#define HID_PROP_BACKTRANSPARENT (HID_RPT_START + 78)
+#define HID_PROP_CONTROLBACKGROUNDTRANSPARENT (HID_RPT_START + 79)
+
+
+#if HID_PROP_CONTROLBACKGROUNDTRANSPARENT > HID_RPT_END
+#error Help-Id Ueberlauf in #file, #line
+#endif
+// don't forget to update the file util/hidother.src
+
+#endif //RTPUI_REPORTDESIGN_HELPID_HRC
+
diff --git a/reportdesign/inc/makefile.mk b/reportdesign/inc/makefile.mk
new file mode 100644
index 000000000000..bbf03b214c37
--- /dev/null
+++ b/reportdesign/inc/makefile.mk
@@ -0,0 +1,55 @@
+#*************************************************************************
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# $RCSfile: makefile.mk,v $
+#
+# $Revision: 1.2 $
+#
+# last change: $Author: rt $ $Date: 2007-07-09 11:56:02 $
+#
+# The Contents of this file are made available subject to
+# the terms of GNU Lesser General Public License Version 2.1.
+#
+#
+# GNU Lesser General Public License Version 2.1
+# =============================================
+# Copyright 2005 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
+#
+#*************************************************************************
+PRJ=..
+
+PRJNAME=reportdesign
+TARGET=inc
+
+# --- Settings -----------------------------------------------------
+
+.INCLUDE : settings.mk
+
+# --- Files --------------------------------------------------------
+# --- Targets -------------------------------------------------------
+
+.INCLUDE : target.mk
+
+.IF "$(ENABLE_PCH)"!=""
+ALLTAR : \
+ $(SLO)$/precompiled.pch \
+ $(SLO)$/precompiled_ex.pch
+
+.ENDIF # "$(ENABLE_PCH)"!=""
+
diff --git a/reportdesign/inc/pch/precompiled_reportdesign.cxx b/reportdesign/inc/pch/precompiled_reportdesign.cxx
new file mode 100644
index 000000000000..c52e718941b1
--- /dev/null
+++ b/reportdesign/inc/pch/precompiled_reportdesign.cxx
@@ -0,0 +1,37 @@
+/*************************************************************************
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * $RCSfile: precompiled_reportdesign.cxx,v $
+ *
+ * $Revision: 1.2 $
+ *
+ * last change: $Author: rt $ $Date: 2007-07-09 11:56:02 $
+ *
+ * The Contents of this file are made available subject to
+ * the terms of GNU Lesser General Public License Version 2.1.
+ *
+ *
+ * GNU Lesser General Public License Version 2.1
+ * =============================================
+ * Copyright 2005 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
+ *
+ ************************************************************************/
+
+#include "precompiled_reportdesign.hxx"
+
diff --git a/reportdesign/inc/pch/precompiled_reportdesign.hxx b/reportdesign/inc/pch/precompiled_reportdesign.hxx
new file mode 100644
index 000000000000..e1fbaa98f84d
--- /dev/null
+++ b/reportdesign/inc/pch/precompiled_reportdesign.hxx
@@ -0,0 +1,40 @@
+/*************************************************************************
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * $RCSfile: precompiled_reportdesign.hxx,v $
+ *
+ * $Revision: 1.2 $
+ *
+ * last change: $Author: rt $ $Date: 2007-07-09 11:56:02 $
+ *
+ * The Contents of this file are made available subject to
+ * the terms of GNU Lesser General Public License Version 2.1.
+ *
+ *
+ * GNU Lesser General Public License Version 2.1
+ * =============================================
+ * Copyright 2005 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
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): Generated on 2006-09-01 17:49:38.561560
+
+#ifdef PRECOMPILED_HEADERS
+#endif
+
diff --git a/reportdesign/inc/rptui_slotid.hrc b/reportdesign/inc/rptui_slotid.hrc
new file mode 100644
index 000000000000..c84a90035dcf
--- /dev/null
+++ b/reportdesign/inc/rptui_slotid.hrc
@@ -0,0 +1,210 @@
+/*************************************************************************
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * $RCSfile: rptui_slotid.hrc,v $
+ *
+ * $Revision: 1.2 $
+ *
+ * last change: $Author: rt $ $Date: 2007-07-09 11:56:02 $
+ *
+ * The Contents of this file are made available subject to
+ * the terms of GNU Lesser General Public License Version 2.1.
+ *
+ *
+ * GNU Lesser General Public License Version 2.1
+ * =============================================
+ * Copyright 2005 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
+ *
+ ************************************************************************/
+
+#ifndef _RPTUI_SLOTID_HRC_
+#define _RPTUI_SLOTID_HRC_
+
+#include <svx/svxids.hrc>
+
+#define SID_PAGEHEADERFOOTER ( SID_RPTUI_START + 0 )
+#define SID_REPORTHEADERFOOTER ( SID_RPTUI_START + 1 )
+#define SID_SORTINGANDGROUPING ( SID_RPTUI_START + 2 )
+#define SID_INSERT_FLD_PGNUMBER ( SID_RPTUI_START + 3 )
+#define SID_CONDITIONALFORMATTING ( SID_RPTUI_START + 4 )
+#define SID_PAGEDIALOG ( SID_RPTUI_START + 5 )
+#define SID_SETCONTROLDEFAULTS ( SID_RPTUI_START + 6 )
+#define SID_INSERTBREAK ( SID_RPTUI_START + 7 )
+#define SID_PAGEHEADER_WITHOUT_UNDO ( SID_RPTUI_START + 8 )
+#define SID_PAGEFOOTER_WITHOUT_UNDO ( SID_RPTUI_START + 9 )
+#define SID_REPORTHEADER_WITHOUT_UNDO ( SID_RPTUI_START + 10 )
+#define SID_REPORTFOOTER_WITHOUT_UNDO ( SID_RPTUI_START + 11 )
+#define SID_SELECT_REPORT ( SID_RPTUI_START + 12 )
+#define SID_GROUPHEADER_WITHOUT_UNDO ( SID_RPTUI_START + 13 )
+#define SID_GROUPHEADER ( SID_RPTUI_START + 14 )
+#define SID_GROUPFOOTER_WITHOUT_UNDO ( SID_RPTUI_START + 15 )
+#define SID_GROUPFOOTER ( SID_RPTUI_START + 16 )
+#define SID_GROUP_REMOVE ( SID_RPTUI_START + 17 )
+#define SID_GROUP_APPEND ( SID_RPTUI_START + 18 )
+#define SID_EXECUTE_REPORT ( SID_RPTUI_START + 19 )
+#define SID_DATETIME ( SID_RPTUI_START + 20 )
+#define SID_ESCAPE ( SID_RPTUI_START + 21 )
+#define SID_ADD_CONTROL_PAIR ( SID_RPTUI_START + 22 )
+#define SID_SPLIT_POSITION ( SID_RPTUI_START + 23 )
+#define SID_PROPERTYBROWSER_LAST_PAGE ( SID_RPTUI_START + 24 )
+// free
+
+#define SID_DRAWTBX_CS_BASIC1 ( SID_RPTUI_START + 26 )
+#define SID_DRAWTBX_CS_BASIC2 ( SID_RPTUI_START + 27 )
+#define SID_DRAWTBX_CS_BASIC3 ( SID_RPTUI_START + 28 )
+#define SID_DRAWTBX_CS_BASIC4 ( SID_RPTUI_START + 29 )
+#define SID_DRAWTBX_CS_BASIC5 ( SID_RPTUI_START + 30 )
+#define SID_DRAWTBX_CS_BASIC6 ( SID_RPTUI_START + 31 )
+#define SID_DRAWTBX_CS_BASIC7 ( SID_RPTUI_START + 32 )
+#define SID_DRAWTBX_CS_BASIC8 ( SID_RPTUI_START + 33 )
+#define SID_DRAWTBX_CS_BASIC9 ( SID_RPTUI_START + 34 )
+#define SID_DRAWTBX_CS_BASIC10 ( SID_RPTUI_START + 35 )
+#define SID_DRAWTBX_CS_BASIC11 ( SID_RPTUI_START + 36 )
+#define SID_DRAWTBX_CS_BASIC12 ( SID_RPTUI_START + 37 )
+#define SID_DRAWTBX_CS_BASIC13 ( SID_RPTUI_START + 38 )
+#define SID_DRAWTBX_CS_BASIC14 ( SID_RPTUI_START + 39 )
+#define SID_DRAWTBX_CS_BASIC15 ( SID_RPTUI_START + 40 )
+#define SID_DRAWTBX_CS_BASIC16 ( SID_RPTUI_START + 41 )
+#define SID_DRAWTBX_CS_BASIC17 ( SID_RPTUI_START + 42 )
+#define SID_DRAWTBX_CS_BASIC18 ( SID_RPTUI_START + 43 )
+#define SID_DRAWTBX_CS_BASIC19 ( SID_RPTUI_START + 44 )
+#define SID_DRAWTBX_CS_BASIC20 ( SID_RPTUI_START + 45 )
+#define SID_DRAWTBX_CS_BASIC21 ( SID_RPTUI_START + 46 )
+#define SID_DRAWTBX_CS_BASIC22 ( SID_RPTUI_START + 47 )
+#define SID_DRAWTBX_CS_SYMBOL1 ( SID_RPTUI_START + 48 )
+#define SID_DRAWTBX_CS_SYMBOL2 ( SID_RPTUI_START + 49 )
+#define SID_DRAWTBX_CS_SYMBOL3 ( SID_RPTUI_START + 50 )
+#define SID_DRAWTBX_CS_SYMBOL4 ( SID_RPTUI_START + 51 )
+#define SID_DRAWTBX_CS_SYMBOL5 ( SID_RPTUI_START + 52 )
+#define SID_DRAWTBX_CS_SYMBOL6 ( SID_RPTUI_START + 53 )
+#define SID_DRAWTBX_CS_SYMBOL7 ( SID_RPTUI_START + 54 )
+#define SID_DRAWTBX_CS_SYMBOL8 ( SID_RPTUI_START + 55 )
+#define SID_DRAWTBX_CS_SYMBOL9 ( SID_RPTUI_START + 56 )
+#define SID_DRAWTBX_CS_SYMBOL10 ( SID_RPTUI_START + 57 )
+#define SID_DRAWTBX_CS_SYMBOL11 ( SID_RPTUI_START + 58 )
+#define SID_DRAWTBX_CS_SYMBOL12 ( SID_RPTUI_START + 59 )
+#define SID_DRAWTBX_CS_SYMBOL13 ( SID_RPTUI_START + 60 )
+#define SID_DRAWTBX_CS_SYMBOL14 ( SID_RPTUI_START + 61 )
+#define SID_DRAWTBX_CS_SYMBOL15 ( SID_RPTUI_START + 62 )
+#define SID_DRAWTBX_CS_SYMBOL16 ( SID_RPTUI_START + 63 )
+#define SID_DRAWTBX_CS_SYMBOL17 ( SID_RPTUI_START + 64 )
+#define SID_DRAWTBX_CS_SYMBOL18 ( SID_RPTUI_START + 65 )
+#define SID_DRAWTBX_CS_ARROW1 ( SID_RPTUI_START + 66 )
+#define SID_DRAWTBX_CS_ARROW2 ( SID_RPTUI_START + 67 )
+#define SID_DRAWTBX_CS_ARROW3 ( SID_RPTUI_START + 68 )
+#define SID_DRAWTBX_CS_ARROW4 ( SID_RPTUI_START + 69 )
+#define SID_DRAWTBX_CS_ARROW5 ( SID_RPTUI_START + 70 )
+#define SID_DRAWTBX_CS_ARROW6 ( SID_RPTUI_START + 71 )
+#define SID_DRAWTBX_CS_ARROW7 ( SID_RPTUI_START + 72 )
+#define SID_DRAWTBX_CS_ARROW8 ( SID_RPTUI_START + 73 )
+#define SID_DRAWTBX_CS_ARROW9 ( SID_RPTUI_START + 74 )
+#define SID_DRAWTBX_CS_ARROW10 ( SID_RPTUI_START + 75 )
+#define SID_DRAWTBX_CS_ARROW11 ( SID_RPTUI_START + 76 )
+#define SID_DRAWTBX_CS_ARROW12 ( SID_RPTUI_START + 77 )
+#define SID_DRAWTBX_CS_ARROW13 ( SID_RPTUI_START + 78 )
+#define SID_DRAWTBX_CS_ARROW14 ( SID_RPTUI_START + 79 )
+#define SID_DRAWTBX_CS_ARROW15 ( SID_RPTUI_START + 80 )
+#define SID_DRAWTBX_CS_ARROW16 ( SID_RPTUI_START + 81 )
+#define SID_DRAWTBX_CS_ARROW17 ( SID_RPTUI_START + 82 )
+#define SID_DRAWTBX_CS_ARROW18 ( SID_RPTUI_START + 83 )
+#define SID_DRAWTBX_CS_ARROW19 ( SID_RPTUI_START + 84 )
+#define SID_DRAWTBX_CS_ARROW20 ( SID_RPTUI_START + 85 )
+#define SID_DRAWTBX_CS_ARROW21 ( SID_RPTUI_START + 86 )
+#define SID_DRAWTBX_CS_ARROW22 ( SID_RPTUI_START + 87 )
+#define SID_DRAWTBX_CS_ARROW23 ( SID_RPTUI_START + 88 )
+#define SID_DRAWTBX_CS_ARROW24 ( SID_RPTUI_START + 89 )
+#define SID_DRAWTBX_CS_ARROW25 ( SID_RPTUI_START + 90 )
+#define SID_DRAWTBX_CS_ARROW26 ( SID_RPTUI_START + 91 )
+#define SID_DRAWTBX_CS_STAR1 ( SID_RPTUI_START + 92 )
+#define SID_DRAWTBX_CS_STAR2 ( SID_RPTUI_START + 93 )
+#define SID_DRAWTBX_CS_STAR3 ( SID_RPTUI_START + 94 )
+#define SID_DRAWTBX_CS_STAR4 ( SID_RPTUI_START + 95 )
+#define SID_DRAWTBX_CS_STAR5 ( SID_RPTUI_START + 96 )
+#define SID_DRAWTBX_CS_STAR6 ( SID_RPTUI_START + 97 )
+#define SID_DRAWTBX_CS_STAR7 ( SID_RPTUI_START + 98 )
+#define SID_DRAWTBX_CS_STAR8 ( SID_RPTUI_START + 99 )
+#define SID_DRAWTBX_CS_STAR9 ( SID_RPTUI_START + 100 )
+#define SID_DRAWTBX_CS_STAR10 ( SID_RPTUI_START + 101 )
+#define SID_DRAWTBX_CS_STAR11 ( SID_RPTUI_START + 102 )
+#define SID_DRAWTBX_CS_STAR12 ( SID_RPTUI_START + 103 )
+#define SID_DRAWTBX_CS_FLOWCHART1 ( SID_RPTUI_START + 104 )
+#define SID_DRAWTBX_CS_FLOWCHART2 ( SID_RPTUI_START + 105 )
+#define SID_DRAWTBX_CS_FLOWCHART3 ( SID_RPTUI_START + 106 )
+#define SID_DRAWTBX_CS_FLOWCHART4 ( SID_RPTUI_START + 107 )
+#define SID_DRAWTBX_CS_FLOWCHART5 ( SID_RPTUI_START + 108 )
+#define SID_DRAWTBX_CS_FLOWCHART6 ( SID_RPTUI_START + 109 )
+#define SID_DRAWTBX_CS_FLOWCHART7 ( SID_RPTUI_START + 110 )
+#define SID_DRAWTBX_CS_FLOWCHART8 ( SID_RPTUI_START + 111 )
+#define SID_DRAWTBX_CS_FLOWCHART9 ( SID_RPTUI_START + 112 )
+#define SID_DRAWTBX_CS_FLOWCHART10 ( SID_RPTUI_START + 113 )
+#define SID_DRAWTBX_CS_FLOWCHART11 ( SID_RPTUI_START + 114 )
+#define SID_DRAWTBX_CS_FLOWCHART12 ( SID_RPTUI_START + 115 )
+#define SID_DRAWTBX_CS_FLOWCHART13 ( SID_RPTUI_START + 116 )
+#define SID_DRAWTBX_CS_FLOWCHART14 ( SID_RPTUI_START + 117 )
+#define SID_DRAWTBX_CS_FLOWCHART15 ( SID_RPTUI_START + 118 )
+#define SID_DRAWTBX_CS_FLOWCHART16 ( SID_RPTUI_START + 119 )
+#define SID_DRAWTBX_CS_FLOWCHART17 ( SID_RPTUI_START + 120 )
+#define SID_DRAWTBX_CS_FLOWCHART18 ( SID_RPTUI_START + 121 )
+#define SID_DRAWTBX_CS_FLOWCHART19 ( SID_RPTUI_START + 122 )
+#define SID_DRAWTBX_CS_FLOWCHART20 ( SID_RPTUI_START + 123 )
+#define SID_DRAWTBX_CS_FLOWCHART21 ( SID_RPTUI_START + 124 )
+#define SID_DRAWTBX_CS_FLOWCHART22 ( SID_RPTUI_START + 125 )
+#define SID_DRAWTBX_CS_FLOWCHART23 ( SID_RPTUI_START + 126 )
+#define SID_DRAWTBX_CS_FLOWCHART24 ( SID_RPTUI_START + 127 )
+#define SID_DRAWTBX_CS_FLOWCHART25 ( SID_RPTUI_START + 128 )
+#define SID_DRAWTBX_CS_FLOWCHART26 ( SID_RPTUI_START + 129 )
+#define SID_DRAWTBX_CS_FLOWCHART27 ( SID_RPTUI_START + 130 )
+#define SID_DRAWTBX_CS_FLOWCHART28 ( SID_RPTUI_START + 131 )
+#define SID_DRAWTBX_CS_CALLOUT1 ( SID_RPTUI_START + 132 )
+#define SID_DRAWTBX_CS_CALLOUT2 ( SID_RPTUI_START + 133 )
+#define SID_DRAWTBX_CS_CALLOUT3 ( SID_RPTUI_START + 134 )
+#define SID_DRAWTBX_CS_CALLOUT4 ( SID_RPTUI_START + 135 )
+#define SID_DRAWTBX_CS_CALLOUT5 ( SID_RPTUI_START + 136 )
+#define SID_DRAWTBX_CS_CALLOUT6 ( SID_RPTUI_START + 137 )
+#define SID_DRAWTBX_CS_CALLOUT7 ( SID_RPTUI_START + 138 )
+
+#define SID_RPT_TEXTDOCUMENT ( SID_RPTUI_START + 139 )
+#define SID_RPT_SPREADSHEET ( SID_RPTUI_START + 140 )
+#define SID_RPT_SHOWREPORTEXPLORER ( SID_RPTUI_START + 141 )
+#define SID_RPT_NEW_FUNCTION ( SID_RPTUI_START + 142 )
+
+#define SID_OBJECT_SMALLESTWIDTH ( SID_RPTUI_START + 143 )
+#define SID_OBJECT_SMALLESTHEIGHT ( SID_RPTUI_START + 144 )
+#define SID_OBJECT_GREATESTWIDTH ( SID_RPTUI_START + 145 )
+#define SID_OBJECT_GREATESTHEIGHT ( SID_RPTUI_START + 146 )
+#define SID_OBJECT_RESIZING ( SID_RPTUI_START + 147 )
+#define SID_ARRANGEMENU ( SID_RPTUI_START + 148 )
+#define SID_SELECTALL_IN_SECTION ( SID_RPTUI_START + 149 )
+
+#define SID_ICON_GROUP ( SID_RPTUI_START + 150 )
+#define SID_ICON_DETAIL ( SID_RPTUI_START + 151 )
+
+#define SID_SECTION_ALIGN ( SID_RPTUI_START + 152 )
+#define SID_SECTION_ALIGN_LEFT ( SID_RPTUI_START + 153 )
+#define SID_SECTION_ALIGN_CENTER ( SID_RPTUI_START + 154 )
+#define SID_SECTION_ALIGN_RIGHT ( SID_RPTUI_START + 155 )
+#define SID_SECTION_ALIGN_UP ( SID_RPTUI_START + 156 )
+#define SID_SECTION_ALIGN_MIDDLE ( SID_RPTUI_START + 157 )
+#define SID_SECTION_ALIGN_DOWN ( SID_RPTUI_START + 158 )
+
+#define SID_NEXT_MARK ( SID_RPTUI_START + 159 )
+#define SID_PREV_MARK ( SID_RPTUI_START + 160 )
+
+
+#endif // _RPTUI_SLOTID_HRC_