summaryrefslogtreecommitdiff
path: root/toolkit
diff options
context:
space:
mode:
authorMatúš Kukan <matus.kukan@collabora.com>2014-01-23 16:45:43 +0100
committerMatúš Kukan <matus.kukan@collabora.com>2014-01-23 23:39:09 +0100
commita9f94e571cb5797413d2d03f709084779fcfc914 (patch)
treeeadd877a2195011cc1b6eec48c1a635a4cd4d834 /toolkit
parent8c04ab3dfe2a85cb02b083bbe86fac2ec1c6967b (diff)
tk: Constructor feature for DefaultGridColumnModel.
Change-Id: Id790c7af17b4b38de889a44ba1258dd1020054e3
Diffstat (limited to 'toolkit')
-rw-r--r--toolkit/source/controls/grid/defaultgridcolumnmodel.cxx118
-rw-r--r--toolkit/source/controls/grid/defaultgridcolumnmodel.hxx80
-rw-r--r--toolkit/source/helper/registerservices.cxx2
-rw-r--r--toolkit/util/tk.component3
4 files changed, 77 insertions, 126 deletions
diff --git a/toolkit/source/controls/grid/defaultgridcolumnmodel.cxx b/toolkit/source/controls/grid/defaultgridcolumnmodel.cxx
index 558907fa7cd0..5e89ab06682a 100644
--- a/toolkit/source/controls/grid/defaultgridcolumnmodel.cxx
+++ b/toolkit/source/controls/grid/defaultgridcolumnmodel.cxx
@@ -18,45 +18,74 @@
*/
-#include "defaultgridcolumnmodel.hxx"
#include "gridcolumn.hxx"
#include <com/sun/star/awt/XVclWindowPeer.hpp>
+#include <com/sun/star/awt/grid/XGridColumnModel.hpp>
+#include <com/sun/star/awt/grid/XGridColumn.hpp>
+#include <com/sun/star/lang/XServiceInfo.hpp>
#include <comphelper/sequence.hxx>
#include <comphelper/componentguard.hxx>
-#include <comphelper/processfactory.hxx>
+#include <cppuhelper/basemutex.hxx>
+#include <cppuhelper/compbase2.hxx>
#include <cppuhelper/supportsservice.hxx>
-#include <toolkit/helper/servicenames.hxx>
#include <rtl/ustrbuf.hxx>
#include <tools/diagnose_ex.h>
-//......................................................................................................................
-namespace toolkit
-//......................................................................................................................
+#include <vector>
+
+using namespace css::awt;
+using namespace css::awt::grid;
+using namespace css::container;
+using namespace css::uno;
+using namespace toolkit;
+
+namespace {
+
+typedef ::cppu::WeakComponentImplHelper2 < css::awt::grid::XGridColumnModel
+ , css::lang::XServiceInfo
+ > DefaultGridColumnModel_Base;
+
+class DefaultGridColumnModel :public ::cppu::BaseMutex
+ ,public DefaultGridColumnModel_Base
{
- using ::com::sun::star::uno::Reference;
- using ::com::sun::star::uno::XComponentContext;
- using ::com::sun::star::lang::XMultiServiceFactory;
- using ::com::sun::star::uno::RuntimeException;
- using ::com::sun::star::uno::Sequence;
- using ::com::sun::star::uno::UNO_QUERY_THROW;
- using ::com::sun::star::uno::UNO_QUERY;
- using ::com::sun::star::awt::grid::XGridColumn;
- using ::com::sun::star::uno::XInterface;
- using ::com::sun::star::lang::XComponent;
- using ::com::sun::star::lang::EventObject;
- using ::com::sun::star::container::XContainerListener;
- using ::com::sun::star::container::ContainerEvent;
- using ::com::sun::star::uno::Exception;
- using ::com::sun::star::lang::IndexOutOfBoundsException;
- using ::com::sun::star::util::XCloneable;
- using ::com::sun::star::lang::IllegalArgumentException;
-
- //==================================================================================================================
- //= DefaultGridColumnModel
- //==================================================================================================================
- //------------------------------------------------------------------------------------------------------------------
+public:
+ DefaultGridColumnModel();
+ DefaultGridColumnModel( DefaultGridColumnModel const & i_copySource );
+ virtual ~DefaultGridColumnModel();
+
+ // XGridColumnModel
+ virtual ::sal_Int32 SAL_CALL getColumnCount() throw (css::uno::RuntimeException);
+ virtual css::uno::Reference< css::awt::grid::XGridColumn > SAL_CALL createColumn( ) throw (css::uno::RuntimeException);
+ virtual ::sal_Int32 SAL_CALL addColumn(const css::uno::Reference< css::awt::grid::XGridColumn > & column) throw (css::uno::RuntimeException, css::lang::IllegalArgumentException);
+ virtual void SAL_CALL removeColumn( ::sal_Int32 i_columnIndex ) throw (css::uno::RuntimeException, css::lang::IndexOutOfBoundsException);
+ virtual css::uno::Sequence< css::uno::Reference< css::awt::grid::XGridColumn > > SAL_CALL getColumns() throw (css::uno::RuntimeException);
+ virtual css::uno::Reference< css::awt::grid::XGridColumn > SAL_CALL getColumn(::sal_Int32 index) throw (css::lang::IndexOutOfBoundsException, css::uno::RuntimeException);
+ virtual void SAL_CALL setDefaultColumns(sal_Int32 rowElements) throw (css::uno::RuntimeException);
+
+ // XServiceInfo
+ virtual OUString SAL_CALL getImplementationName( ) throw (css::uno::RuntimeException);
+ virtual ::sal_Bool SAL_CALL supportsService( const OUString& ServiceName ) throw (css::uno::RuntimeException);
+ virtual css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames( ) throw (css::uno::RuntimeException);
+
+ // XContainer
+ virtual void SAL_CALL addContainerListener( const css::uno::Reference< css::container::XContainerListener >& xListener ) throw (css::uno::RuntimeException);
+ virtual void SAL_CALL removeContainerListener( const css::uno::Reference< css::container::XContainerListener >& xListener ) throw (css::uno::RuntimeException);
+
+ // XCloneable
+ virtual css::uno::Reference< css::util::XCloneable > SAL_CALL createClone( ) throw (css::uno::RuntimeException);
+
+ // OComponentHelper
+ virtual void SAL_CALL disposing();
+
+private:
+ typedef ::std::vector< css::uno::Reference< css::awt::grid::XGridColumn > > Columns;
+
+ ::cppu::OInterfaceContainerHelper m_aContainerListeners;
+ Columns m_aColumns;
+};
+
DefaultGridColumnModel::DefaultGridColumnModel()
:DefaultGridColumnModel_Base( m_aMutex )
,m_aContainerListeners( m_aMutex )
@@ -64,7 +93,6 @@ namespace toolkit
{
}
- //------------------------------------------------------------------------------------------------------------------
DefaultGridColumnModel::DefaultGridColumnModel( DefaultGridColumnModel const & i_copySource )
:cppu::BaseMutex()
,DefaultGridColumnModel_Base( m_aMutex )
@@ -121,13 +149,14 @@ namespace toolkit
}
//------------------------------------------------------------------------------------------------------------------
- ::sal_Int32 SAL_CALL DefaultGridColumnModel::addColumn( const Reference< XGridColumn > & i_column ) throw (RuntimeException, IllegalArgumentException)
+ ::sal_Int32 SAL_CALL DefaultGridColumnModel::addColumn( const Reference< XGridColumn > & i_column )
+ throw (RuntimeException, css::lang::IllegalArgumentException)
{
::comphelper::ComponentGuard aGuard( *this, rBHelper );
GridColumn* const pGridColumn = GridColumn::getImplementation( i_column );
if ( pGridColumn == NULL )
- throw IllegalArgumentException( "invalid column implementation", *this, 1 );
+ throw css::lang::IllegalArgumentException( "invalid column implementation", *this, 1 );
m_aColumns.push_back( i_column );
sal_Int32 index = m_aColumns.size() - 1;
@@ -146,12 +175,13 @@ namespace toolkit
}
//------------------------------------------------------------------------------------------------------------------
- void SAL_CALL DefaultGridColumnModel::removeColumn( ::sal_Int32 i_columnIndex ) throw (RuntimeException, IndexOutOfBoundsException)
+ void SAL_CALL DefaultGridColumnModel::removeColumn( ::sal_Int32 i_columnIndex )
+ throw (RuntimeException, css::lang::IndexOutOfBoundsException)
{
::comphelper::ComponentGuard aGuard( *this, rBHelper );
if ( ( i_columnIndex < 0 ) || ( size_t( i_columnIndex ) >= m_aColumns.size() ) )
- throw IndexOutOfBoundsException( OUString(), *this );
+ throw css::lang::IndexOutOfBoundsException( OUString(), *this );
Columns::iterator const pos = m_aColumns.begin() + i_columnIndex;
Reference< XGridColumn > const xColumn( *pos );
@@ -202,14 +232,15 @@ namespace toolkit
}
//------------------------------------------------------------------------------------------------------------------
- Reference< XGridColumn > SAL_CALL DefaultGridColumnModel::getColumn(::sal_Int32 index) throw (IndexOutOfBoundsException, RuntimeException)
+ Reference< XGridColumn > SAL_CALL DefaultGridColumnModel::getColumn(::sal_Int32 index)
+ throw (css::lang::IndexOutOfBoundsException, RuntimeException)
{
::comphelper::ComponentGuard aGuard( *this, rBHelper );
if ( index >=0 && index < ((sal_Int32)m_aColumns.size()))
return m_aColumns[index];
- throw IndexOutOfBoundsException();
+ throw css::lang::IndexOutOfBoundsException();
}
//------------------------------------------------------------------------------------------------------------------
@@ -299,7 +330,7 @@ namespace toolkit
//------------------------------------------------------------------------------------------------------------------
OUString SAL_CALL DefaultGridColumnModel::getImplementationName( ) throw (RuntimeException)
{
- return OUString( "org.openoffice.comp.toolkit.DefaultGridColumnModel" );
+ return OUString("stardiv.Toolkit.DefaultGridColumnModel");
}
sal_Bool SAL_CALL DefaultGridColumnModel::supportsService( const OUString& i_serviceName ) throw (RuntimeException)
@@ -309,7 +340,7 @@ namespace toolkit
Sequence< OUString > SAL_CALL DefaultGridColumnModel::getSupportedServiceNames( ) throw (RuntimeException)
{
- const OUString aServiceName( OUString::createFromAscii( szServiceName_DefaultGridColumnModel ) );
+ const OUString aServiceName("com.sun.star.awt.grid.DefaultGridColumnModel");
const Sequence< OUString > aSeq( &aServiceName, 1 );
return aSeq;
}
@@ -365,13 +396,14 @@ namespace toolkit
return new DefaultGridColumnModel( *this );
}
-//......................................................................................................................
-} // namespace toolkit
-//......................................................................................................................
+}
-//----------------------------------------------------------------------------------------------------------------------
-::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > SAL_CALL DefaultGridColumnModel_CreateInstance( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& )
+extern "C" SAL_DLLPUBLIC_EXPORT css::uno::XInterface * SAL_CALL
+stardiv_Toolkit_DefaultGridColumnModel_get_implementation(
+ css::uno::XComponentContext *,
+ css::uno::Sequence<css::uno::Any> const &)
{
- return ::com::sun::star::uno::Reference < ::com::sun::star::uno::XInterface >( ( ::cppu::OWeakObject* ) new ::toolkit::DefaultGridColumnModel );
+ return cppu::acquire(new DefaultGridColumnModel());
}
+
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/toolkit/source/controls/grid/defaultgridcolumnmodel.hxx b/toolkit/source/controls/grid/defaultgridcolumnmodel.hxx
deleted file mode 100644
index 4423954f2d37..000000000000
--- a/toolkit/source/controls/grid/defaultgridcolumnmodel.hxx
+++ /dev/null
@@ -1,80 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed
- * with this work for additional information regarding copyright
- * ownership. The ASF licenses this file to you under the Apache
- * License, Version 2.0 (the "License"); you may not use this file
- * except in compliance with the License. You may obtain a copy of
- * the License at http://www.apache.org/licenses/LICENSE-2.0 .
- */
-
-#include <com/sun/star/awt/grid/XGridColumnModel.hpp>
-#include <com/sun/star/awt/grid/XGridColumn.hpp>
-#include <com/sun/star/lang/XEventListener.hpp>
-#include <com/sun/star/lang/XServiceInfo.hpp>
-#include <com/sun/star/lang/XUnoTunnel.hpp>
-#include <com/sun/star/style/VerticalAlignment.hpp>
-#include <com/sun/star/util/Color.hpp>
-
-#include <cppuhelper/basemutex.hxx>
-#include <cppuhelper/compbase2.hxx>
-#include <vector>
-
-namespace toolkit
-{
-
-typedef ::cppu::WeakComponentImplHelper2 < ::com::sun::star::awt::grid::XGridColumnModel
- , ::com::sun::star::lang::XServiceInfo
- > DefaultGridColumnModel_Base;
-
-class DefaultGridColumnModel :public ::cppu::BaseMutex
- ,public DefaultGridColumnModel_Base
-{
-public:
- DefaultGridColumnModel();
- DefaultGridColumnModel( DefaultGridColumnModel const & i_copySource );
- virtual ~DefaultGridColumnModel();
-
- // XGridColumnModel
- virtual ::sal_Int32 SAL_CALL getColumnCount() throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::awt::grid::XGridColumn > SAL_CALL createColumn( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::sal_Int32 SAL_CALL addColumn(const ::com::sun::star::uno::Reference< ::com::sun::star::awt::grid::XGridColumn > & column) throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::lang::IllegalArgumentException);
- virtual void SAL_CALL removeColumn( ::sal_Int32 i_columnIndex ) throw (::com::sun::star::uno::RuntimeException, ::com::sun::star::lang::IndexOutOfBoundsException);
- virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Reference< ::com::sun::star::awt::grid::XGridColumn > > SAL_CALL getColumns() throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::awt::grid::XGridColumn > SAL_CALL getColumn(::sal_Int32 index) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL setDefaultColumns(sal_Int32 rowElements) throw (::com::sun::star::uno::RuntimeException);
-
- // XServiceInfo
- virtual OUString SAL_CALL getImplementationName( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::sal_Bool SAL_CALL supportsService( const OUString& ServiceName ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames( ) throw (::com::sun::star::uno::RuntimeException);
-
- // XContainer
- virtual void SAL_CALL addContainerListener( const ::com::sun::star::uno::Reference< ::com::sun::star::container::XContainerListener >& xListener ) throw (::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL removeContainerListener( const ::com::sun::star::uno::Reference< ::com::sun::star::container::XContainerListener >& xListener ) 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);
-
- // OComponentHelper
- virtual void SAL_CALL disposing();
-
-private:
- typedef ::std::vector< ::com::sun::star::uno::Reference< ::com::sun::star::awt::grid::XGridColumn > > Columns;
-
- ::cppu::OInterfaceContainerHelper m_aContainerListeners;
- Columns m_aColumns;
-};
-
-}
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/toolkit/source/helper/registerservices.cxx b/toolkit/source/helper/registerservices.cxx
index 104cc4d55589..58ea3735190e 100644
--- a/toolkit/source/helper/registerservices.cxx
+++ b/toolkit/source/helper/registerservices.cxx
@@ -174,7 +174,6 @@ IMPL_CREATE_INSTANCE_WITH_GEOMETRY( UnoControlDialogModel )
extern ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > SAL_CALL TreeControl_CreateInstance( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& );
extern ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > SAL_CALL TreeControlModel_CreateInstance( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& );
extern ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > SAL_CALL MutableTreeDataModel_CreateInstance( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& );
-extern ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > SAL_CALL DefaultGridColumnModel_CreateInstance( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& );
extern "C"
{
@@ -254,7 +253,6 @@ TOOLKIT_DLLPUBLIC void* SAL_CALL tk_component_getFactory( const sal_Char* sImple
GET_FACTORY( MutableTreeDataModel, szServiceName_MutableTreeDataModel, NULL )
GET_FACTORY( UnoFixedHyperlinkControl, szServiceName_UnoControlFixedHyperlink, NULL )
GET_FACTORY( UnoControlFixedHyperlinkModel, szServiceName_UnoControlFixedHyperlinkModel, NULL )
- GET_FACTORY( DefaultGridColumnModel, szServiceName_DefaultGridColumnModel, NULL );
}
return pRet;
}
diff --git a/toolkit/util/tk.component b/toolkit/util/tk.component
index d7b84bf09fac..ff1558306daa 100644
--- a/toolkit/util/tk.component
+++ b/toolkit/util/tk.component
@@ -43,7 +43,8 @@
constructor="stardiv_Toolkit_UnoControlTabPageContainer_get_implementation">
<service name="com.sun.star.awt.tab.UnoControlTabPageContainer"/>
</implementation>
- <implementation name="stardiv.Toolkit.DefaultGridColumnModel">
+ <implementation name="stardiv.Toolkit.DefaultGridColumnModel"
+ constructor="stardiv_Toolkit_DefaultGridColumnModel_get_implementation">
<service name="com.sun.star.awt.grid.DefaultGridColumnModel"/>
</implementation>
<implementation name="stardiv.Toolkit.DefaultGridDataModel"