From 8b050d1e91a6623fb2770421e564a74d6259d816 Mon Sep 17 00:00:00 2001 From: Ariel Constenla-Haile Date: Fri, 26 Apr 2013 21:55:57 +0000 Subject: UI Controller Factory fixes - "ModuleName" --> "ModuleIdentifier": the IDL definition for css::frame::PopupMenuControllerFactory and css::frame::StatusbarControllerFactory tells to use a property named "ModuleIdentifier", but in the code it is named "ModuleName" - Undocumented css::frame::ToolbarControllerFactory - Fix service name of ToolbarControllerFactory (ToolbarControllerFactory instead of ToolBarControllerFactory) - Convert the three service factories to new style, and use these new-style services in the source code - Implement multiple inheritance: added new css::frame::XUIControllerFactory - Added a (true) base class and implemented the three factories in a single file (cherry picked from commit acc7fed28f54f836b0923180431a0c180f91e98c) Conflicts: framework/inc/pch/precompiled_framework.hxx framework/inc/uielement/toolbarmanager.hxx framework/inc/uifactory/popupmenucontrollerfactory.hxx framework/inc/uifactory/statusbarcontrollerfactory.hxx framework/inc/uifactory/uicontrollerfactory.hxx framework/source/uielement/addonstoolbarmanager.cxx framework/source/uielement/menubarmanager.cxx framework/source/uielement/popupmenucontroller.cxx framework/source/uielement/statusbarmanager.cxx framework/source/uielement/toolbarmanager.cxx framework/source/uifactory/popupmenucontrollerfactory.cxx framework/source/uifactory/statusbarcontrollerfactory.cxx framework/source/uifactory/uicontrollerfactory.cxx framework/source/unotypes/fwk.xml offapi/com/sun/star/frame/PopupMenuControllerFactory.idl offapi/com/sun/star/frame/StatusbarControllerFactory.idl offapi/com/sun/star/frame/makefile.mk svtools/source/uno/toolboxcontroller.cxx Change-Id: Ia8580539badf650a84bc6e57a6b832071e011f0a --- framework/inc/uifactory/factoryconfiguration.hxx | 1 - .../inc/uifactory/popupmenucontrollerfactory.hxx | 50 --------------- .../inc/uifactory/statusbarcontrollerfactory.hxx | 44 ------------- .../inc/uifactory/toolbarcontrollerfactory.hxx | 75 ---------------------- 4 files changed, 170 deletions(-) delete mode 100644 framework/inc/uifactory/popupmenucontrollerfactory.hxx delete mode 100644 framework/inc/uifactory/statusbarcontrollerfactory.hxx delete mode 100644 framework/inc/uifactory/toolbarcontrollerfactory.hxx (limited to 'framework/inc/uifactory') diff --git a/framework/inc/uifactory/factoryconfiguration.hxx b/framework/inc/uifactory/factoryconfiguration.hxx index 82a9943b6926..eacb8da5bc6d 100644 --- a/framework/inc/uifactory/factoryconfiguration.hxx +++ b/framework/inc/uifactory/factoryconfiguration.hxx @@ -31,7 +31,6 @@ #include #include #include -#include #include #include diff --git a/framework/inc/uifactory/popupmenucontrollerfactory.hxx b/framework/inc/uifactory/popupmenucontrollerfactory.hxx deleted file mode 100644 index 749bd5178b7a..000000000000 --- a/framework/inc/uifactory/popupmenucontrollerfactory.hxx +++ /dev/null @@ -1,50 +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 . - */ - -#ifndef __FRAMEWORK_UIFACTORY_POPUPMENUCONTROLLERFACTORY_HXX_ -#define __FRAMEWORK_UIFACTORY_POPUPMENUCONTROLLERFACTORY_HXX_ - -/** Attention: stl headers must(!) be included at first. Otherwhise it can make trouble - with solaris headers ... -*/ -#include -#include - -#include -#include -#include - -namespace framework -{ - -class ConfigurationAccess_ControllerFactory; -class PopupMenuControllerFactory : public ToolbarControllerFactory -{ - public: - PopupMenuControllerFactory( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& xServiceManager ); - - // XInterface, XTypeProvider, XServiceInfo - DECLARE_XSERVICEINFO -}; - -} // namespace framework - -#endif // __FRAMEWORK_SERVICES_POPUPMENUCONTROLLERFACTORY_HXX_ - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/framework/inc/uifactory/statusbarcontrollerfactory.hxx b/framework/inc/uifactory/statusbarcontrollerfactory.hxx deleted file mode 100644 index 979639f61683..000000000000 --- a/framework/inc/uifactory/statusbarcontrollerfactory.hxx +++ /dev/null @@ -1,44 +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 . - */ - -#ifndef __FRAMEWORK_UIFACTORY_STATUSBARCONTROLLERFACTORY_HXX_ -#define __FRAMEWORK_UIFACTORY_STATUSBARCONTROLLERFACTORY_HXX_ - -#include -#include -#include - -namespace framework -{ - -class ConfigurationAccess_ControllerFactory; -class StatusbarControllerFactory : public ToolbarControllerFactory -{ - public: - StatusbarControllerFactory( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& xServiceManager ); - - // XInterface, XTypeProvider, XServiceInfo - DECLARE_XSERVICEINFO -}; - -} // namespace framework - -#endif // __FRAMEWORK_SERVICES_STATUSBARCONTROLLERFACTORY_HXX_ - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/framework/inc/uifactory/toolbarcontrollerfactory.hxx b/framework/inc/uifactory/toolbarcontrollerfactory.hxx deleted file mode 100644 index 7534e6ce7a8e..000000000000 --- a/framework/inc/uifactory/toolbarcontrollerfactory.hxx +++ /dev/null @@ -1,75 +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 . - */ - -#ifndef __FRAMEWORK_UIFACTORY_TOOLBARCONTROLLERFACTORY_HXX_ -#define __FRAMEWORK_UIFACTORY_TOOLBARCONTROLLERFACTORY_HXX_ - -#include -#include -#include -#include -#include -#include - -#include -#include -#include -#include - -#include -#include - -namespace framework -{ - -class ConfigurationAccess_ControllerFactory; -class ToolbarControllerFactory : protected ThreadHelpBase , // Struct for right initalization of mutex member! Must be first of baseclasses. - public ::cppu::WeakImplHelper3< com::sun::star::lang::XServiceInfo, - com::sun::star::lang::XMultiComponentFactory, - com::sun::star::frame::XUIControllerRegistration> -{ - public: - ToolbarControllerFactory( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& xServiceManager ); - virtual ~ToolbarControllerFactory(); - - // XInterface, XTypeProvider, XServiceInfo - DECLARE_XSERVICEINFO - - // XMultiComponentFactory - virtual ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > SAL_CALL createInstanceWithContext( const OUString& aServiceSpecifier, const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >& Context ) throw (::com::sun::star::uno::Exception, ::com::sun::star::uno::RuntimeException); - virtual ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > SAL_CALL createInstanceWithArgumentsAndContext( const OUString& ServiceSpecifier, const ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Any >& Arguments, const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >& Context ) throw (::com::sun::star::uno::Exception, ::com::sun::star::uno::RuntimeException); - virtual ::com::sun::star::uno::Sequence< OUString > SAL_CALL getAvailableServiceNames() throw (::com::sun::star::uno::RuntimeException); - - // XUIControllerRegistration - virtual sal_Bool SAL_CALL hasController( const OUString& aCommandURL, const OUString& aModuleName ) throw (::com::sun::star::uno::RuntimeException); - virtual void SAL_CALL registerController( const OUString& aCommandURL, const OUString& aModuleName, const OUString& aControllerImplementationName ) throw (::com::sun::star::uno::RuntimeException); - virtual void SAL_CALL deregisterController( const OUString& aCommandURL, const OUString& aModuleName ) throw (::com::sun::star::uno::RuntimeException); - - protected: - ToolbarControllerFactory( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& xServiceManager,bool ); - sal_Bool m_bConfigRead; - ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > m_xServiceManager; - ConfigurationAccess_ControllerFactory* m_pConfigAccess; -}; - -} // namespace framework - -#endif // __FRAMEWORK_SERVICES_TOOLBARCONTROLLERFACTORY_HXX_ - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ -- cgit