[Libreoffice-commits] core.git: framework/inc framework/Library_fwk.mk framework/source

2021-07-19 Thread Noel Grandin (via logerrit)
 framework/Library_fwk.mk  |1 
 framework/inc/uiconfiguration/imagemanager.hxx|2 
 framework/inc/uiconfiguration/moduleimagemanager.hxx  |   73 
 framework/source/uiconfiguration/imagemanager.cxx |6 
 framework/source/uiconfiguration/moduleimagemanager.cxx   |  155 
--
 framework/source/uiconfiguration/moduleuiconfigurationmanager.cxx |   12 
 framework/source/uiconfiguration/uiconfigurationmanager.cxx   |   18 -
 7 files changed, 15 insertions(+), 252 deletions(-)

New commits:
commit ef19c82f6ade323e2708b93d77cf50ffe8b9fcfd
Author: Noel Grandin 
AuthorDate: Mon Jul 19 09:14:21 2021 +0200
Commit: Noel Grandin 
CommitDate: Mon Jul 19 10:55:10 2021 +0200

merge ModuleImageManager into ImageManager

they share an underlying impl, so no need to have separate classes

Change-Id: I1093f72265f67c7ccf3c2a064c86441d792512d2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/119156
Tested-by: Jenkins
Reviewed-by: Noel Grandin 

diff --git a/framework/Library_fwk.mk b/framework/Library_fwk.mk
index 2d4fdda1c1ef..c8ffb1f1b36b 100644
--- a/framework/Library_fwk.mk
+++ b/framework/Library_fwk.mk
@@ -168,7 +168,6 @@ $(eval $(call gb_Library_add_exception_objects,fwk,\
 framework/source/uiconfiguration/graphicnameaccess \
 framework/source/uiconfiguration/imagemanager \
 framework/source/uiconfiguration/imagemanagerimpl \
-framework/source/uiconfiguration/moduleimagemanager \
 framework/source/uiconfiguration/moduleuicfgsupplier \
 framework/source/uiconfiguration/moduleuiconfigurationmanager \
 framework/source/uiconfiguration/uicategorydescription \
diff --git a/framework/inc/uiconfiguration/imagemanager.hxx 
b/framework/inc/uiconfiguration/imagemanager.hxx
index 1688ba44c10c..aacc8bbd3c72 100644
--- a/framework/inc/uiconfiguration/imagemanager.hxx
+++ b/framework/inc/uiconfiguration/imagemanager.hxx
@@ -35,7 +35,7 @@ namespace framework
 class ImageManager final : public ::cppu::WeakImplHelper< 
css::ui::XImageManager, css::lang::XServiceInfo>
 {
 public:
-ImageManager( const css::uno::Reference< 
css::uno::XComponentContext >& rxContext );
+ImageManager( const css::uno::Reference< 
css::uno::XComponentContext >& rxContext, bool bForModule );
 virtual ~ImageManager() override;
 
 virtual OUString SAL_CALL getImplementationName() override
diff --git a/framework/inc/uiconfiguration/moduleimagemanager.hxx 
b/framework/inc/uiconfiguration/moduleimagemanager.hxx
deleted file mode 100644
index d9fc98971b9d..
--- a/framework/inc/uiconfiguration/moduleimagemanager.hxx
+++ /dev/null
@@ -1,73 +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 .
- */
-
-#pragma once
-
-#include 
-#include 
-
-#include 
-#include 
-
-#include 
-
-namespace framework
-{
-class ImageManagerImpl;
-
-class ModuleImageManager final : public ::cppu::WeakImplHelper< 
css::ui::XImageManager>
-{
-public:
-ModuleImageManager( const css::uno::Reference< 
css::uno::XComponentContext >& xContext );
-virtual ~ModuleImageManager() override;
-
-// XComponent
-virtual void SAL_CALL dispose() override;
-virtual void SAL_CALL addEventListener( const css::uno::Reference< 
css::lang::XEventListener >& xListener ) override;
-virtual void SAL_CALL removeEventListener( const 
css::uno::Reference< css::lang::XEventListener >& aListener ) override;
-
-// XInitialization
-virtual void SAL_CALL initialize( const css::uno::Sequence< 
css::uno::Any >& aArguments ) override;
-
-// XImageManager
-virtual void SAL_CALL reset() override;
-virtual css::uno::Sequence< OUString > SAL_CALL getAllImageNames( 
::sal_Int16 nImageType ) override;
-virtual sal_Bool SAL_CALL hasImage( ::sal_Int16 nImageType, const 
OUString& aCommandURL ) override;
-virtual css::uno::Sequence< css::uno::Reference< 

[Libreoffice-commits] core.git: framework/inc framework/Library_fwk.mk framework/source solenv/clang-format

2020-08-20 Thread Maxim Monastirsky (via logerrit)
 framework/Library_fwk.mk|1 
 framework/inc/uielement/addonstoolbarmanager.hxx|   64 --
 framework/inc/uielement/addonstoolbarwrapper.hxx|1 
 framework/inc/uielement/toolbarmanager.hxx  |   12 
 framework/source/uielement/addonstoolbarmanager.cxx |  430 
 framework/source/uielement/addonstoolbarwrapper.cxx |   14 
 framework/source/uielement/toolbarmanager.cxx   |  171 +--
 solenv/clang-format/excludelist |2 
 8 files changed, 132 insertions(+), 563 deletions(-)

New commits:
commit 37892578e97ea0f0c948116d639797060ac5f21f
Author: Maxim Monastirsky 
AuthorDate: Thu Aug 20 12:07:24 2020 +0300
Commit: Maxim Monastirsky 
CommitDate: Thu Aug 20 16:42:52 2020 +0200

Base addon toolbars on the regular ToolBarManager

ToolBarManager already supported addon buttons because of the
toolbar merging feature. Besides the cleanup, this gives access to
addon devs to all toolbar features like aliases or style buttons.

Change-Id: I7adf830ac71c7f5354a924d60a531d8001e37571
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/101071
Tested-by: Jenkins
Reviewed-by: Maxim Monastirsky 

diff --git a/framework/Library_fwk.mk b/framework/Library_fwk.mk
index 12434b7a4b74..754090d5512f 100644
--- a/framework/Library_fwk.mk
+++ b/framework/Library_fwk.mk
@@ -175,7 +175,6 @@ $(eval $(call gb_Library_add_exception_objects,fwk,\
 framework/source/uiconfiguration/uicategorydescription \
 framework/source/uiconfiguration/uiconfigurationmanager \
 framework/source/uiconfiguration/windowstateconfiguration \
-framework/source/uielement/addonstoolbarmanager \
 framework/source/uielement/addonstoolbarwrapper \
 framework/source/uielement/buttontoolbarcontroller \
 framework/source/uielement/comboboxtoolbarcontroller \
diff --git a/framework/inc/uielement/addonstoolbarmanager.hxx 
b/framework/inc/uielement/addonstoolbarmanager.hxx
deleted file mode 100644
index d13c3f14b58a..
--- a/framework/inc/uielement/addonstoolbarmanager.hxx
+++ /dev/null
@@ -1,64 +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 INCLUDED_FRAMEWORK_INC_UIELEMENT_ADDONSTOOLBARMANAGER_HXX
-#define INCLUDED_FRAMEWORK_INC_UIELEMENT_ADDONSTOOLBARMANAGER_HXX
-
-#include 
-
-#include 
-
-#include 
-
-class ToolBox;
-
-namespace framework
-{
-
-class AddonsToolBarManager final : public ToolBarManager
-{
-public:
-AddonsToolBarManager( const css::uno::Reference< 
css::uno::XComponentContext >& rxContext,
-  const css::uno::Reference< css::frame::XFrame >& 
rFrame,
-  const OUString& rResourceName,
-  ToolBox* pToolBar );
-virtual ~AddonsToolBarManager() override;
-
-// XComponent
-void SAL_CALL dispose() override;
-
-virtual void RefreshImages() override;
-using ToolBarManager::FillToolbar;
-void FillToolbar( const css::uno::Sequence< css::uno::Sequence< 
css::beans::PropertyValue > >& rAddonToolbar );
-
-private:
-DECL_LINK(Click, ToolBox *, void);
-DECL_LINK(DoubleClick, ToolBox *, void);
-DECL_LINK(Select, ToolBox *, void);
-DECL_LINK(StateChanged, StateChangedType const *, void );
-DECL_LINK(DataChanged, DataChangedEvent const *, void );
-
-virtual bool MenuItemAllowed( sal_uInt16 ) const override;
-};
-
-}
-
-#endif // INCLUDED_FRAMEWORK_INC_UIELEMENT_ADDONSTOOLBARMANAGER_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/framework/inc/uielement/addonstoolbarwrapper.hxx 
b/framework/inc/uielement/addonstoolbarwrapper.hxx
index 6d6fee13f4c4..2970ce6d13fa 100644
--- a/framework/inc/uielement/addonstoolbarwrapper.hxx
+++ b/framework/inc/uielement/addonstoolbarwrapper.hxx
@@ -28,7 +28,6 @@
 namespace framework
 {
 
-class AddonsToolBarManager;
 class AddonsToolBarWrapper final : public UIElementWrapperBase
 {
 public:
diff --git a/framework/inc/uielement/toolbarmanager.hxx 

[Libreoffice-commits] core.git: framework/inc framework/Library_fwk.mk framework/source framework/util

2020-07-09 Thread Noel Grandin (via logerrit)
 framework/Library_fwk.mk   |1 
 framework/inc/recording/dispatchrecorder.hxx   |   10 --
 framework/inc/services.h   |1 
 framework/inc/uielement/langselectionmenucontroller.hxx|   10 --
 framework/source/recording/dispatchrecorder.cxx|   34 ---
 framework/source/register/registertemp.cxx |   63 -
 framework/source/uielement/langselectionmenucontroller.cxx |   30 --
 framework/util/fwk.component   |8 +
 8 files changed, 60 insertions(+), 97 deletions(-)

New commits:
commit c435ee5c9c9882d0817039d5e53990418c3d1066
Author: Noel Grandin 
AuthorDate: Wed Jul 8 18:39:27 2020 +0200
Commit: Noel Grandin 
CommitDate: Thu Jul 9 08:46:19 2020 +0200

framework: create instances with uno constructors

See tdf#74608 for motivation

Change-Id: Ia2d9447b687f0792d9d3a98d30cd2b8fe54049ee
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98388
Tested-by: Noel Grandin 
Reviewed-by: Noel Grandin 

diff --git a/framework/Library_fwk.mk b/framework/Library_fwk.mk
index 61bb9d825906..12434b7a4b74 100644
--- a/framework/Library_fwk.mk
+++ b/framework/Library_fwk.mk
@@ -150,7 +150,6 @@ $(eval $(call gb_Library_add_exception_objects,fwk,\
 framework/source/loadenv/targethelper \
 framework/source/recording/dispatchrecorder \
 framework/source/recording/dispatchrecordersupplier \
-framework/source/register/registertemp \
 framework/source/services/ContextChangeEventMultiplexer \
 framework/source/services/autorecovery \
 framework/source/services/desktop \
diff --git a/framework/inc/recording/dispatchrecorder.hxx 
b/framework/inc/recording/dispatchrecorder.hxx
index 54a9cb0e2185..806fe3cb2f22 100644
--- a/framework/inc/recording/dispatchrecorder.hxx
+++ b/framework/inc/recording/dispatchrecorder.hxx
@@ -57,12 +57,10 @@ class DispatchRecorder final
 DispatchRecorder( const css::uno::Reference< 
css::uno::XComponentContext >& xSMGR );
 virtual ~DispatchRecorder() override;
 
-// XInterface, XTypeProvider, XServiceInfo
-DECLARE_XSERVICEINFO_NOFACTORY
-/* Helper for registry */
-/// @throws css::uno::Exception
-static css::uno::Reference< css::uno::XInterface > 
SAL_CALL impl_createInstance( const css::uno::Reference< 
css::lang::XMultiServiceFactory >& xServiceManager );
-static css::uno::Reference< css::lang::XSingleServiceFactory > 
impl_createFactory ( const css::uno::Reference< 
css::lang::XMultiServiceFactory >& xServiceManager );
+/* interface XServiceInfo */
+virtual OUString SAL_CALL getImplementationName() override;
+virtual sal_Bool SAL_CALL supportsService( const OUString& 
sServiceName ) override;
+virtual css::uno::Sequence< OUString > SAL_CALL 
getSupportedServiceNames() override;
 
 // XDispatchRecorder
 virtual void SAL_CALLstartRecording ( const 
css::uno::Reference< css::frame::XFrame >& xFrame ) override;
diff --git a/framework/inc/services.h b/framework/inc/services.h
index 8e1044811157..01a93213abd9 100644
--- a/framework/inc/services.h
+++ b/framework/inc/services.h
@@ -35,7 +35,6 @@ namespace framework{
 
 #define IMPLEMENTATIONNAME_QUICKLAUNCHER
"com.sun.star.comp.desktop.QuickstartWrapper"
 #define IMPLEMENTATIONNAME_FWK_TASKCREATOR  
"com.sun.star.comp.framework.TaskCreator"
-#define IMPLEMENTATIONNAME_LANGUAGESELECTIONMENUCONTROLLER  
"com.sun.star.comp.framework.LanguageSelectionMenuController"
 
 }   //  namespace framework
 
diff --git a/framework/inc/uielement/langselectionmenucontroller.hxx 
b/framework/inc/uielement/langselectionmenucontroller.hxx
index cdf682e3e02b..32f2a45bac9c 100644
--- a/framework/inc/uielement/langselectionmenucontroller.hxx
+++ b/framework/inc/uielement/langselectionmenucontroller.hxx
@@ -38,12 +38,10 @@ namespace framework
 LanguageSelectionMenuController( const css::uno::Reference< 
css::uno::XComponentContext >& xContext );
 virtual ~LanguageSelectionMenuController() override;
 
-// XServiceInfo
-DECLARE_XSERVICEINFO_NOFACTORY
-/* Helper for registry */
-/// @throws css::uno::Exception
-static css::uno::Reference< css::uno::XInterface > 
SAL_CALL impl_createInstance( const css::uno::Reference< 
css::lang::XMultiServiceFactory >& xServiceManager );
-static css::uno::Reference< css::lang::XSingleServiceFactory > 
impl_createFactory ( const css::uno::Reference< 
css::lang::XMultiServiceFactory >& xServiceManager );
+/* interface XServiceInfo */
+virtual OUString SAL_CALL getImplementationName() override;
+virtual sal_Bool SAL_CALL 

[Libreoffice-commits] core.git: framework/inc framework/Library_fwk.mk framework/source

2019-11-04 Thread Serge Krot (via logerrit)
 framework/Library_fwk.mk   |1 
 framework/inc/uielement/FixedImageToolbarController.hxx|   59 ++
 framework/inc/uielement/toolbarmerger.hxx  |1 
 framework/source/uielement/FixedImageToolbarController.cxx |  113 +
 framework/source/uielement/toolbarmerger.cxx   |3 
 5 files changed, 177 insertions(+)

New commits:
commit 2187cff2d452e20aa1fdfd5d8aa7473242cd1eb6
Author: Serge Krot 
AuthorDate: Fri Oct 18 17:40:11 2019 +0200
Commit: Thorsten Behrens 
CommitDate: Mon Nov 4 01:20:00 2019 +0100

Toolbar: Added usage of ImageControl as toolbar control

Reviewed-on: https://gerrit.libreoffice.org/81064
Reviewed-by: Serge Krot (CIB) 
Tested-by: Serge Krot (CIB) 
(cherry picked from commit 48f945a3be16ee0eba0c526e51280dc8deafc316)

Change-Id: I2536a505650b6e4c98e79f749c3b237518cc995d
Reviewed-on: https://gerrit.libreoffice.org/81872
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens 

diff --git a/framework/Library_fwk.mk b/framework/Library_fwk.mk
index 5d59402c2be5..1fe75ccab4b7 100644
--- a/framework/Library_fwk.mk
+++ b/framework/Library_fwk.mk
@@ -132,6 +132,7 @@ $(eval $(call gb_Library_add_exception_objects,fwk,\
 framework/source/uielement/controlmenucontroller \
 framework/source/uielement/dropdownboxtoolbarcontroller \
 framework/source/uielement/edittoolbarcontroller \
+framework/source/uielement/FixedImageToolbarController \
 framework/source/uielement/FixedTextToolbarController \
 framework/source/uielement/genericstatusbarcontroller \
 framework/source/uielement/generictoolbarcontroller \
diff --git a/framework/inc/uielement/FixedImageToolbarController.hxx 
b/framework/inc/uielement/FixedImageToolbarController.hxx
new file mode 100644
index ..2fa55e4e8cc5
--- /dev/null
+++ b/framework/inc/uielement/FixedImageToolbarController.hxx
@@ -0,0 +1,59 @@
+/* -*- 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 INCLUDED_FRAMEWORK_INC_UIELEMENT_FIXEDIMAGETOOLBARCONTROLLER_HXX
+#define INCLUDED_FRAMEWORK_INC_UIELEMENT_FIXEDIMAGETOOLBARCONTROLLER_HXX
+
+#include 
+#include 
+
+#include 
+
+class ToolBox;
+class ImageControl;
+
+namespace framework
+{
+class FixedImageToolbarController : public ComplexToolbarController
+{
+public:
+FixedImageToolbarController(const 
css::uno::Reference& rxContext,
+const css::uno::Reference& 
rFrame,
+ToolBox* pToolBar, sal_uInt16 nID, const 
OUString& aCommand);
+
+// XComponent
+virtual void SAL_CALL dispose() override;
+
+void CheckAndUpdateImages();
+
+protected:
+virtual void executeControlCommand(const css::frame::ControlCommand& 
rControlCommand) override;
+
+protected:
+DECL_LINK(MiscOptionsChanged, LinkParamNone*, void);
+
+private:
+VclPtr m_pFixedImageControl;
+sal_Int16 m_eSymbolSize;
+};
+} // namespace framework
+
+#endif // INCLUDED_FRAMEWORK_INC_UIELEMENT_FIXEDIMAGETOOLBARCONTROLLER_HXX
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
\ No newline at end of file
diff --git a/framework/inc/uielement/toolbarmerger.hxx 
b/framework/inc/uielement/toolbarmerger.hxx
index cfe236f8328a..bb41a2bece60 100644
--- a/framework/inc/uielement/toolbarmerger.hxx
+++ b/framework/inc/uielement/toolbarmerger.hxx
@@ -27,6 +27,7 @@
 #include 
 #include 
 #include 
+#include 
 #include 
 #include 
 
diff --git a/framework/source/uielement/FixedImageToolbarController.cxx 
b/framework/source/uielement/FixedImageToolbarController.cxx
new file mode 100644
index ..6338287a8dd9
--- /dev/null
+++ b/framework/source/uielement/FixedImageToolbarController.cxx
@@ -0,0 +1,113 @@
+/* -*- 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 

[Libreoffice-commits] core.git: framework/inc framework/Library_fwk.mk framework/source

2019-10-31 Thread Serge Krot (via logerrit)
 framework/Library_fwk.mk  |1 
 framework/inc/uielement/FixedTextToolbarController.hxx|   55 +++
 framework/inc/uielement/toolbarmerger.hxx |1 
 framework/source/uielement/FixedTextToolbarController.cxx |   98 ++
 framework/source/uielement/toolbarmerger.cxx  |3 
 5 files changed, 158 insertions(+)

New commits:
commit c538764082f29ef98fb859cae37a895cee2de889
Author: Serge Krot 
AuthorDate: Fri Oct 18 13:57:22 2019 +0200
Commit: Thorsten Behrens 
CommitDate: Fri Nov 1 00:24:05 2019 +0100

Toolbar: add usage of FixedText as toolbar control

Change-Id: I26a79c485fa2e168058025e058bcfb793af7515f
Reviewed-on: https://gerrit.libreoffice.org/81039
Reviewed-by: Serge Krot (CIB) 
Tested-by: Serge Krot (CIB) 
(cherry picked from commit c2682ba52ea0cbb7af95e80f6d67b286061aeae2)
Reviewed-on: https://gerrit.libreoffice.org/81643
Reviewed-by: Thorsten Behrens 
Tested-by: Thorsten Behrens 

diff --git a/framework/Library_fwk.mk b/framework/Library_fwk.mk
index 665df00be044..5d59402c2be5 100644
--- a/framework/Library_fwk.mk
+++ b/framework/Library_fwk.mk
@@ -132,6 +132,7 @@ $(eval $(call gb_Library_add_exception_objects,fwk,\
 framework/source/uielement/controlmenucontroller \
 framework/source/uielement/dropdownboxtoolbarcontroller \
 framework/source/uielement/edittoolbarcontroller \
+framework/source/uielement/FixedTextToolbarController \
 framework/source/uielement/genericstatusbarcontroller \
 framework/source/uielement/generictoolbarcontroller \
 framework/source/uielement/imagebuttontoolbarcontroller \
diff --git a/framework/inc/uielement/FixedTextToolbarController.hxx 
b/framework/inc/uielement/FixedTextToolbarController.hxx
new file mode 100644
index ..cd8afb9499eb
--- /dev/null
+++ b/framework/inc/uielement/FixedTextToolbarController.hxx
@@ -0,0 +1,55 @@
+/* -*- 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 INCLUDED_FRAMEWORK_INC_UIELEMENT_FIXEDTEXTTOOLBARCONTROLLER_HXX
+#define INCLUDED_FRAMEWORK_INC_UIELEMENT_FIXEDTEXTTOOLBARCONTROLLER_HXX
+
+#include 
+#include 
+
+#include 
+
+class ToolBox;
+class FixedText;
+
+namespace framework
+{
+class FixedTextToolbarController : public ComplexToolbarController
+{
+public:
+FixedTextToolbarController(const 
css::uno::Reference& rxContext,
+   const css::uno::Reference& 
rFrame,
+   ToolBox* pToolBar, sal_uInt16 nID, const 
OUString& aCommand);
+
+// XComponent
+virtual void SAL_CALL dispose() override;
+
+protected:
+virtual void executeControlCommand(const css::frame::ControlCommand& 
rControlCommand) override;
+virtual css::uno::Sequence
+getExecuteArgs(sal_Int16 KeyModifier) const override;
+
+private:
+VclPtr m_pFixedTextControl;
+};
+}
+
+#endif // INCLUDED_FRAMEWORK_INC_UIELEMENT_FIXEDTEXTTOOLBARCONTROLLER_HXX
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
\ No newline at end of file
diff --git a/framework/inc/uielement/toolbarmerger.hxx 
b/framework/inc/uielement/toolbarmerger.hxx
index cc0448a8f76f..cfe236f8328a 100644
--- a/framework/inc/uielement/toolbarmerger.hxx
+++ b/framework/inc/uielement/toolbarmerger.hxx
@@ -27,6 +27,7 @@
 #include 
 #include 
 #include 
+#include 
 #include 
 
 #include 
diff --git a/framework/source/uielement/FixedTextToolbarController.cxx 
b/framework/source/uielement/FixedTextToolbarController.cxx
new file mode 100644
index ..7a2a41ae9c0f
--- /dev/null
+++ b/framework/source/uielement/FixedTextToolbarController.cxx
@@ -0,0 +1,98 @@
+/* -*- 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 

[Libreoffice-commits] core.git: framework/inc framework/Library_fwk.mk framework/source

2019-08-20 Thread Noel Grandin (via logerrit)
 framework/Library_fwk.mk   |1 
 framework/inc/helper/statusindicatorfactory.hxx|7 --
 framework/inc/helper/wakeupthread.hxx  |   57 +++
 framework/source/helper/statusindicatorfactory.cxx |   25 
 framework/source/helper/wakeupthread.cxx   |   60 +
 5 files changed, 132 insertions(+), 18 deletions(-)

New commits:
commit d3b03032b7140a98946bfe8fc475a322e6eb6f9a
Author: Noel Grandin 
AuthorDate: Tue Aug 20 10:14:19 2019 +0200
Commit: Noel Grandin 
CommitDate: Tue Aug 20 11:13:46 2019 +0200

tdf#125869 LibreOffice UI freezes (shows not responding) while exporting a 
pdf

Revert "use vcl::Timer in StatusIndicatorFactory"
This reverts commit 848058625c7fad21e2469c95c2a2078678925a5a,
which seems to have been a bad idea

Change-Id: I68be1757717352f164ce27c300a4a0487680891c
Reviewed-on: https://gerrit.libreoffice.org/9
Tested-by: Jenkins
Reviewed-by: Noel Grandin 

diff --git a/framework/Library_fwk.mk b/framework/Library_fwk.mk
index 7a433735ce43..6d1f124f2f5a 100644
--- a/framework/Library_fwk.mk
+++ b/framework/Library_fwk.mk
@@ -88,6 +88,7 @@ $(eval $(call gb_Library_add_exception_objects,fwk,\
 framework/source/helper/uiconfigelementwrapperbase \
 framework/source/helper/uielementwrapperbase \
 framework/source/helper/vclstatusindicator \
+framework/source/helper/wakeupthread \
 framework/source/interaction/quietinteraction \
 framework/source/jobs/job \
 framework/source/jobs/jobdata \
diff --git a/framework/inc/helper/statusindicatorfactory.hxx 
b/framework/inc/helper/statusindicatorfactory.hxx
index a2a073821d8e..4f6e183e8a54 100644
--- a/framework/inc/helper/statusindicatorfactory.hxx
+++ b/framework/inc/helper/statusindicatorfactory.hxx
@@ -25,6 +25,7 @@
 #include 
 
 // include files of own module
+#include 
 #include 
 
 // include uno interfaces
@@ -44,9 +45,7 @@
 #include 
 
 #include 
-#include 
 #include 
-#include 
 #include 
 #include 
 
@@ -166,7 +165,7 @@ class StatusIndicatorFactory : public  
::cppu::WeakImplHelper<
 
 /** Notify us if a fix time is over. We use it to implement an
 intelligent "Reschedule" ... */
-boost::optional m_xWakeUpTimer;
+rtl::Reference m_pWakeUp;
 
 /** Our WakeUpThread calls us in our interface method 
"XUpdatable::update().
 There we set this member m_bAllowReschedule to sal_True. Next time 
if our impl_reschedule()
@@ -183,8 +182,6 @@ class StatusIndicatorFactory : public  
::cppu::WeakImplHelper<
 /** prevent recursive calling of Application::Reschedule(). */
 static sal_Int32 m_nInReschedule;
 
-DECL_LINK( WakeupTimerHdl, Timer*, void );
-
 // interface
 
 public:
diff --git a/framework/inc/helper/wakeupthread.hxx 
b/framework/inc/helper/wakeupthread.hxx
new file mode 100644
index ..50e234f23713
--- /dev/null
+++ b/framework/inc/helper/wakeupthread.hxx
@@ -0,0 +1,57 @@
+/* -*- 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 INCLUDED_FRAMEWORK_INC_HELPER_WAKEUPTHREAD_HXX
+#define INCLUDED_FRAMEWORK_INC_HELPER_WAKEUPTHREAD_HXX
+
+#include 
+
+#include 
+#include 
+#include 
+#include 
+#include 
+#include 
+
+namespace com { namespace sun { namespace star { namespace util {
+class XUpdatable;
+} } } }
+
+namespace framework{
+
+class WakeUpThread: public salhelper::Thread {
+css::uno::WeakReference updatable_;
+osl::Condition condition_;
+
+osl::Mutex mutex_;
+bool terminate_;
+
+void execute() override;
+
+public:
+WakeUpThread(css::uno::Reference const & updatable);
+
+void stop();
+};
+
+}
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/framework/source/helper/statusindicatorfactory.cxx 
b/framework/source/helper/statusindicatorfactory.cxx
index ee33a646cadd..5e4ba3adf4e3 100644
--- a/framework/source/helper/statusindicatorfactory.cxx
+++ b/framework/source/helper/statusindicatorfactory.cxx
@@ -537,27 +537,26 @@ void StatusIndicatorFactory::impl_startWakeUpThread()
 

[Libreoffice-commits] core.git: framework/inc framework/Library_fwk.mk framework/source

2019-05-24 Thread Noel Grandin (via logerrit)
 framework/Library_fwk.mk   |1 
 framework/inc/helper/statusindicatorfactory.hxx|7 +-
 framework/inc/helper/wakeupthread.hxx  |   57 ---
 framework/source/helper/statusindicatorfactory.cxx |   25 
 framework/source/helper/wakeupthread.cxx   |   60 -
 5 files changed, 18 insertions(+), 132 deletions(-)

New commits:
commit 848058625c7fad21e2469c95c2a2078678925a5a
Author: Noel Grandin 
AuthorDate: Fri May 24 11:49:44 2019 +0200
Commit: Noel Grandin 
CommitDate: Fri May 24 14:20:24 2019 +0200

use vcl::Timer in StatusIndicatorFactory

does not need a separate thread

Change-Id: I47bf2b255a331f4ec3ea24ad3a5d4c3ca398557e
Reviewed-on: https://gerrit.libreoffice.org/72901
Tested-by: Jenkins
Reviewed-by: Noel Grandin 

diff --git a/framework/Library_fwk.mk b/framework/Library_fwk.mk
index 9057aaa6048a..3957a5ace0ff 100644
--- a/framework/Library_fwk.mk
+++ b/framework/Library_fwk.mk
@@ -88,7 +88,6 @@ $(eval $(call gb_Library_add_exception_objects,fwk,\
 framework/source/helper/uiconfigelementwrapperbase \
 framework/source/helper/uielementwrapperbase \
 framework/source/helper/vclstatusindicator \
-framework/source/helper/wakeupthread \
 framework/source/interaction/quietinteraction \
 framework/source/jobs/job \
 framework/source/jobs/jobdata \
diff --git a/framework/inc/helper/statusindicatorfactory.hxx 
b/framework/inc/helper/statusindicatorfactory.hxx
index d343fe35395e..1ad060516313 100644
--- a/framework/inc/helper/statusindicatorfactory.hxx
+++ b/framework/inc/helper/statusindicatorfactory.hxx
@@ -25,7 +25,6 @@
 #include 
 
 // include files of own module
-#include 
 #include 
 
 // include uno interfaces
@@ -45,7 +44,9 @@
 #include 
 
 #include 
+#include 
 #include 
+#include 
 #include 
 #include 
 
@@ -165,7 +166,7 @@ class StatusIndicatorFactory : public  
::cppu::WeakImplHelper<
 
 /** Notify us if a fix time is over. We use it to implement an
 intelligent "Reschedule" ... */
-rtl::Reference m_pWakeUp;
+boost::optional m_xWakeUpTimer;
 
 /** Our WakeUpThread calls us in our interface method 
"XUpdatable::update().
 There we set this member m_bAllowReschedule to sal_True. Next time 
if our impl_reschedule()
@@ -182,6 +183,8 @@ class StatusIndicatorFactory : public  
::cppu::WeakImplHelper<
 /** prevent recursive calling of Application::Reschedule(). */
 static sal_Int32 m_nInReschedule;
 
+DECL_LINK( WakeupTimerHdl, Timer*, void );
+
 // interface
 
 public:
diff --git a/framework/inc/helper/wakeupthread.hxx 
b/framework/inc/helper/wakeupthread.hxx
deleted file mode 100644
index 50e234f23713..
--- a/framework/inc/helper/wakeupthread.hxx
+++ /dev/null
@@ -1,57 +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 INCLUDED_FRAMEWORK_INC_HELPER_WAKEUPTHREAD_HXX
-#define INCLUDED_FRAMEWORK_INC_HELPER_WAKEUPTHREAD_HXX
-
-#include 
-
-#include 
-#include 
-#include 
-#include 
-#include 
-#include 
-
-namespace com { namespace sun { namespace star { namespace util {
-class XUpdatable;
-} } } }
-
-namespace framework{
-
-class WakeUpThread: public salhelper::Thread {
-css::uno::WeakReference updatable_;
-osl::Condition condition_;
-
-osl::Mutex mutex_;
-bool terminate_;
-
-void execute() override;
-
-public:
-WakeUpThread(css::uno::Reference const & updatable);
-
-void stop();
-};
-
-}
-
-#endif
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/framework/source/helper/statusindicatorfactory.cxx 
b/framework/source/helper/statusindicatorfactory.cxx
index b4b17c1617e4..540cc3d4ade5 100644
--- a/framework/source/helper/statusindicatorfactory.cxx
+++ b/framework/source/helper/statusindicatorfactory.cxx
@@ -537,26 +537,27 @@ void StatusIndicatorFactory::impl_startWakeUpThread()
 if (m_bDisableReschedule)
 return;
 
-if (!m_pWakeUp.is())
+if (!m_xWakeUpTimer)
 {
-m_pWakeUp = new WakeUpThread(this);
-

[Libreoffice-commits] core.git: framework/inc framework/Library_fwk.mk framework/source

2017-05-14 Thread Maxim Monastirsky
 framework/Library_fwk.mk  |1 
 framework/inc/uielement/styletoolbarcontroller.hxx|   81 ++
 framework/source/uielement/menubarmanager.cxx |5 
 framework/source/uielement/styletoolbarcontroller.cxx |  238 ++
 framework/source/uielement/toolbarmanager.cxx |6 
 5 files changed, 330 insertions(+), 1 deletion(-)

New commits:
commit b91fb08fd63207e663dca83abe1305d8025b4b48
Author: Maxim Monastirsky 
Date:   Wed May 10 02:03:37 2017 +0300

tdf#106999 Feedback for style commands

The .uno:StyleApply command takes some arguments, which make
it possible to apply any style of any type. The problem is
that it doesn't provide toggle state to be used when placing
such commands on a toolbar or a menubar. The reason is that
sfx2, by design, can provide status updates only for the
.uno:StyleApply command as a whole, ignoring any arguments
that might be specified in the UI element description. This
behavior is even documented in the XDispatch idl.

wrt solution, changing the generic UI code to handle the
specifics of an individual command can never be a good idea.
The usual approach in such cases is to create separate
commands which will handle the status updates correctly. This
is however not possible in our case because styles can be
created by users, and we can't predict their names and create
separate commands for all of them (given that now it's easy to
add style commands to toolbars and menus - see tdf#106681).

One possible solution is to create a toolbar button controller
on top of .uno:StyleApply, which will be able to translate its
status update to a state compatible with the toolbar. The downside
is that it won't work when placing such command inside a menu, and
in general the menu code in framework doesn't provide any way to
control individual menu items, only a whole sub-menus via a
popup menu controller.

To fix the menu use-case too, this commit introduces a "proxy"
dispatch implementation, which can be used by MenuBarManager
in a transparent way, as if it was the "real" application-level
dispatcher. This means that the changes needed in MenuBarManager
are minimal and do not over-complicate the code, which is a good
thing (Alternatively, such dispatcher could be registered via
the dispatch interception mechanism, but it will add no gain,
given the current requirements, and just add more complexity).
And to make it easier to reuse the code, the new dispatcher
is also used for the toolbar solution.

Change-Id: Ia73b0fa70fd4d1d59360b255aa8fd19570b971ee
Reviewed-on: https://gerrit.libreoffice.org/37590
Tested-by: Jenkins 
Reviewed-by: Maxim Monastirsky 

diff --git a/framework/Library_fwk.mk b/framework/Library_fwk.mk
index e20b8b22cc17..9057aaa6048a 100644
--- a/framework/Library_fwk.mk
+++ b/framework/Library_fwk.mk
@@ -153,6 +153,7 @@ $(eval $(call gb_Library_add_exception_objects,fwk,\
 framework/source/uielement/statusbarmerger \
 framework/source/uielement/statusbarwrapper \
 framework/source/uielement/statusindicatorinterfacewrapper \
+framework/source/uielement/styletoolbarcontroller \
 framework/source/uielement/subtoolbarcontroller \
 framework/source/uielement/thesaurusmenucontroller \
 framework/source/uielement/togglebuttontoolbarcontroller \
diff --git a/framework/inc/uielement/styletoolbarcontroller.hxx 
b/framework/inc/uielement/styletoolbarcontroller.hxx
new file mode 100644
index ..8947647d6fc9
--- /dev/null
+++ b/framework/inc/uielement/styletoolbarcontroller.hxx
@@ -0,0 +1,81 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4; 
fill-column: 100 -*- */
+/*
+ * 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/.
+ */
+
+#ifndef INCLUDED_FRAMEWORK_INC_UIELEMENT_STYLETOOLBARCONTROLLER_HXX
+#define INCLUDED_FRAMEWORK_INC_UIELEMENT_STYLETOOLBARCONTROLLER_HXX
+
+#include 
+#include 
+
+namespace framework {
+
+/**
+ * A dispatcher that serves as a proxy for style commands with arguments
+ * i.e. .uno:StyleApply?... in order to provide useful status updates to
+ * generic UI elements such as toolbars or menubar. It listens to special
+ * status commands, and computes a boolean status out of them. Then it
+ * forwards that boolean status to the listener, as if it was the status
+ * of the original command.
+ *
+ * Note that the implementation is minimal: Although the UI element appears
+ * to be the owner of the dispatcher, it's still responsible, as usual, to
+ * call removeStatusListener same amount of times as 

[Libreoffice-commits] core.git: framework/inc framework/Library_fwk.mk framework/source

2016-04-11 Thread Maxim Monastirsky
 framework/Library_fwk.mk  |1 
 framework/inc/classes/fwktabwindow.hxx|  127 --
 framework/source/classes/fwktabwindow.cxx |  359 --
 3 files changed, 487 deletions(-)

New commits:
commit b0e678c86136ef6d65cea66168a99217664c0278
Author: Maxim Monastirsky 
Date:   Tue Apr 12 00:39:53 2016 +0300

FwkTabWindow is unused since d6d86237b1b438919609988049ac4a152612fee1

Change-Id: Ifad573ac687548a889165012e7b7bb2f4b82750c

diff --git a/framework/Library_fwk.mk b/framework/Library_fwk.mk
index d1927cd..ab6518a 100644
--- a/framework/Library_fwk.mk
+++ b/framework/Library_fwk.mk
@@ -67,7 +67,6 @@ $(eval $(call gb_Library_add_exception_objects,fwk,\
 framework/source/accelerators/presethandler \
 framework/source/accelerators/storageholder \
 framework/source/classes/framecontainer \
-framework/source/classes/fwktabwindow \
 framework/source/classes/taskcreator \
 framework/source/dispatch/closedispatcher \
 framework/source/dispatch/dispatchinformationprovider \
diff --git a/framework/inc/classes/fwktabwindow.hxx 
b/framework/inc/classes/fwktabwindow.hxx
deleted file mode 100644
index 6fdea7a..000
--- a/framework/inc/classes/fwktabwindow.hxx
+++ /dev/null
@@ -1,127 +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 INCLUDED_FRAMEWORK_INC_CLASSES_FWKTABWINDOW_HXX
-#define INCLUDED_FRAMEWORK_INC_CLASSES_FWKTABWINDOW_HXX
-
-#include 
-
-#include 
-
-#include 
-#include 
-#include 
-#include 
-#include 
-
-namespace com { namespace sun { namespace star {
-namespace awt {
-class XWindow;
-class XContainerWindowProvider;
-class XContainerWindowEventHandler; }
-namespace beans {
-struct NamedValue; }
-} } }
-
-namespace framework
-{
-
-class FwkTabControl : public TabControl
-{
-public:
-FwkTabControl(vcl::Window* pParent);
-
-void BroadcastEvent( sal_uLong nEvent );
-};
-
-class FwkTabPage : public TabPage
-{
-private:
-OUString   m_sPageURL;
-css::uno::Reference< css::awt::XWindow >m_xPage;
-css::uno::Reference< css::awt::XContainerWindowEventHandler >   
m_xEventHdl;
-css::uno::Reference< css::awt::XContainerWindowProvider >   
m_xWinProvider;
-
-voidCreateDialog();
-boolCallMethod( const OUString& rMethod );
-
-public:
-FwkTabPage(
-vcl::Window* pParent,
-const OUString& rPageURL,
-const css::uno::Reference< css::awt::XContainerWindowEventHandler >& 
rEventHdl,
-const css::uno::Reference< css::awt::XContainerWindowProvider >& 
rProvider );
-
-virtual ~FwkTabPage();
-virtual voiddispose() override;
-
-virtual voidActivatePage() override;
-virtual voidDeactivatePage() override;
-virtual voidResize() override;
-};
-
-struct TabEntry
-{
-sal_Int32   m_nIndex;
-ScopedVclPtr  m_pPage;
-OUStringm_sPageURL;
-css::uno::Reference< css::awt::XContainerWindowEventHandler > m_xEventHdl;
-
-TabEntry() :
-m_nIndex( -1 ), m_pPage( nullptr ) {}
-
-TabEntry( sal_Int32 nIndex, const OUString& sURL, const 
css::uno::Reference< css::awt::XContainerWindowEventHandler > & rEventHdl ) :
-m_nIndex( nIndex ), m_pPage( nullptr ), m_sPageURL( sURL ), 
m_xEventHdl( rEventHdl ) {}
-~TabEntry() { m_pPage.disposeAndClear(); }
-};
-
-typedef std::vector< TabEntry* > TabEntryList;
-
-class FwkTabWindow : public vcl::Window
-{
-private:
-VclPtr  m_aTabCtrl;
-TabEntryList   m_TabList;
-
-css::uno::Reference< css::awt::XContainerWindowProvider >   m_xWinProvider;
-
-voidClearEntryList();
-TabEntry*   FindEntry( sal_Int32 nIndex ) const;
-boolRemoveEntry( sal_Int32 nIndex );
-
-DECL_DLLPRIVATE_LINK_TYPED(ActivatePageHdl,   TabControl *, void);
-DECL_DLLPRIVATE_LINK_TYPED(DeactivatePageHdl, TabControl *, bool);
-
-public:
-FwkTabWindow( vcl::Window* pParent );
-virtual ~FwkTabWindow();
-