summaryrefslogtreecommitdiff
path: root/svtools
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2020-02-03 09:59:44 +0000
committerCaolán McNamara <caolanm@redhat.com>2020-02-03 20:24:00 +0100
commit3d826d780af366c7ed650ec44e7bcb20b02e2c70 (patch)
tree5b0d79f92a64eaa11667a20edaf6392e42480b02 /svtools
parent12f9fdfac8b41d74e9474e8966e3d28755424931 (diff)
make some headers private
as shown with ./bin/find-headers-to-move-inside-modules.py Change-Id: I7662417e76fe00c0fc352957560e104b6c2a3d61 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87850 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Diffstat (limited to 'svtools')
-rw-r--r--svtools/IwyuFilter_svtools.yaml7
-rw-r--r--svtools/source/control/accessibleruler.cxx2
-rw-r--r--svtools/source/control/accessibleruler.hxx188
-rw-r--r--svtools/source/control/ruler.cxx2
-rw-r--r--svtools/source/dialogs/PlaceEditDialog.cxx3
-rw-r--r--svtools/source/dialogs/ServerDetailsControls.cxx4
-rw-r--r--svtools/source/dialogs/ServerDetailsControls.hxx142
7 files changed, 343 insertions, 5 deletions
diff --git a/svtools/IwyuFilter_svtools.yaml b/svtools/IwyuFilter_svtools.yaml
index 9cc69c4f10fa..c78dc720f08f 100644
--- a/svtools/IwyuFilter_svtools.yaml
+++ b/svtools/IwyuFilter_svtools.yaml
@@ -1,6 +1,13 @@
---
assumeFilename: svtools/source/control/ruler.cxx
blacklist:
+ svtools/source/control/accessibleruler.hxx:
+ # base class has to be a complete type
+ - com/sun/star/accessibility/XAccessible.hpp
+ - com/sun/star/accessibility/XAccessibleComponent.hpp
+ - com/sun/star/accessibility/XAccessibleContext.hpp
+ - com/sun/star/accessibility/XAccessibleEventBroadcaster.hpp
+ - com/sun/star/lang/XServiceInfo.hpp
svtools/source/dialogs/insdlg.cxx:
# Needed on WIN
- comphelper/classids.hxx
diff --git a/svtools/source/control/accessibleruler.cxx b/svtools/source/control/accessibleruler.cxx
index 780f088e7812..cfd54364e3ae 100644
--- a/svtools/source/control/accessibleruler.cxx
+++ b/svtools/source/control/accessibleruler.cxx
@@ -16,7 +16,6 @@
* except in compliance with the License. You may obtain a copy of
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
*/
-#include <svtools/accessibleruler.hxx>
#include <com/sun/star/accessibility/AccessibleRole.hpp>
#include <com/sun/star/accessibility/IllegalAccessibleComponentStateException.hpp>
#include <unotools/accessiblestatesethelper.hxx>
@@ -29,6 +28,7 @@
#include <tools/gen.hxx>
#include <svtools/ruler.hxx>
+#include "accessibleruler.hxx"
using namespace ::cppu;
using namespace ::osl;
diff --git a/svtools/source/control/accessibleruler.hxx b/svtools/source/control/accessibleruler.hxx
new file mode 100644
index 000000000000..c26cf96fa239
--- /dev/null
+++ b/svtools/source/control/accessibleruler.hxx
@@ -0,0 +1,188 @@
+/* -*- 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_SVTOOLS_ACCESSIBLERULER_HXX
+#define INCLUDED_SVTOOLS_ACCESSIBLERULER_HXX
+
+#include <com/sun/star/accessibility/XAccessible.hpp>
+#include <com/sun/star/accessibility/XAccessibleComponent.hpp>
+#include <com/sun/star/accessibility/XAccessibleContext.hpp>
+#include <com/sun/star/accessibility/XAccessibleEventBroadcaster.hpp>
+
+#include <com/sun/star/uno/Reference.hxx>
+#include <com/sun/star/lang/XServiceInfo.hpp>
+#include <cppuhelper/interfacecontainer.h>
+#include <cppuhelper/compbase5.hxx>
+#include <cppuhelper/basemutex.hxx>
+#include <vcl/vclptr.hxx>
+
+namespace tools { class Rectangle; }
+class Ruler;
+
+
+typedef ::cppu::WeakAggComponentImplHelper5<
+ css::accessibility::XAccessible,
+ css::accessibility::XAccessibleComponent,
+ css::accessibility::XAccessibleContext,
+ css::accessibility::XAccessibleEventBroadcaster,
+ css::lang::XServiceInfo >
+ SvtRulerAccessible_Base;
+
+class SvtRulerAccessible final : public ::cppu::BaseMutex, public SvtRulerAccessible_Base
+{
+public:
+ //===== internal ========================================================
+ SvtRulerAccessible(
+ const css::uno::Reference< css::accessibility::XAccessible>& rxParent, Ruler& rRepresentation, const OUString& rName );
+
+ /// @throws css::uno::RuntimeException
+ bool
+ isVisible();
+
+ //===== XAccessible =====================================================
+
+ virtual css::uno::Reference< css::accessibility::XAccessibleContext> SAL_CALL
+ getAccessibleContext() override;
+
+ //===== XAccessibleComponent ============================================
+
+ virtual sal_Bool SAL_CALL
+ containsPoint( const css::awt::Point& rPoint ) override;
+
+ virtual css::uno::Reference< css::accessibility::XAccessible > SAL_CALL
+ getAccessibleAtPoint( const css::awt::Point& rPoint ) override;
+
+ virtual css::awt::Rectangle SAL_CALL
+ getBounds() override;
+
+ virtual css::awt::Point SAL_CALL
+ getLocation() override;
+
+ virtual css::awt::Point SAL_CALL
+ getLocationOnScreen() override;
+
+ virtual css::awt::Size SAL_CALL
+ getSize() override;
+
+ virtual void SAL_CALL
+ grabFocus() override;
+
+ virtual sal_Int32 SAL_CALL
+ getForeground( ) override;
+ virtual sal_Int32 SAL_CALL
+ getBackground( ) override;
+
+ //===== XAccessibleContext ==============================================
+
+ virtual sal_Int32 SAL_CALL
+ getAccessibleChildCount() override;
+
+ virtual css::uno::Reference< css::accessibility::XAccessible> SAL_CALL
+ getAccessibleChild( sal_Int32 nIndex ) override;
+
+ virtual css::uno::Reference< css::accessibility::XAccessible> SAL_CALL
+ getAccessibleParent() override;
+
+ virtual sal_Int32 SAL_CALL
+ getAccessibleIndexInParent() override;
+
+ virtual sal_Int16 SAL_CALL
+ getAccessibleRole() override;
+
+ virtual OUString SAL_CALL
+ getAccessibleDescription() override;
+
+ virtual OUString SAL_CALL
+ getAccessibleName() override;
+
+ virtual css::uno::Reference< css::accessibility::XAccessibleRelationSet > SAL_CALL
+ getAccessibleRelationSet() override;
+
+ virtual css::uno::Reference< css::accessibility::XAccessibleStateSet > SAL_CALL
+ getAccessibleStateSet() override;
+
+ virtual css::lang::Locale SAL_CALL
+ getLocale() override;
+ //===== XAccessibleEventBroadcaster =====================================
+
+ virtual void SAL_CALL
+ addAccessibleEventListener( const css::uno::Reference< css::accessibility::XAccessibleEventListener >& xListener ) override;
+
+ virtual void SAL_CALL
+ removeAccessibleEventListener( const css::uno::Reference< css::accessibility::XAccessibleEventListener >& xListener ) override;
+
+ //===== 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;
+
+ //===== XTypeProvider ===================================================
+
+ virtual css::uno::Sequence<sal_Int8> SAL_CALL
+ getImplementationId() override;
+
+private:
+
+ virtual ~SvtRulerAccessible() override;
+
+ virtual void SAL_CALL disposing() override;
+
+ /// @returns true if it's disposed or in disposing
+ inline bool IsAlive() const;
+
+ /// @throws DisposedException if it's not alive
+ void ThrowExceptionIfNotAlive();
+
+ /// @Return the object's current bounding box relative to the desktop.
+ ///
+ /// @throws css::uno::RuntimeException
+ tools::Rectangle GetBoundingBoxOnScreen();
+
+ /// @Return the object's current bounding box relative to the parent object.
+ ///
+ /// @throws css::uno::RuntimeException
+ tools::Rectangle GetBoundingBox();
+
+ /// Name of this object.
+ OUString const msName;
+
+ /// Reference to the parent object.
+ css::uno::Reference< css::accessibility::XAccessible >
+ mxParent;
+
+ /// pointer to internal representation
+ VclPtr<Ruler> mpRepr;
+
+ /// client id in the AccessibleEventNotifier queue
+ sal_uInt32 mnClientId;
+};
+
+inline bool SvtRulerAccessible::IsAlive() const
+{
+ return !rBHelper.bDisposed && !rBHelper.bInDispose;
+}
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/svtools/source/control/ruler.cxx b/svtools/source/control/ruler.cxx
index cee1ca0e70bb..a4f30d9c97a7 100644
--- a/svtools/source/control/ruler.cxx
+++ b/svtools/source/control/ruler.cxx
@@ -26,11 +26,11 @@
#include <vcl/ptrstyle.hxx>
#include <sal/log.hxx>
-#include <svtools/accessibleruler.hxx>
#include <svtools/ruler.hxx>
#include <svtools/svtresid.hxx>
#include <svtools/strings.hrc>
#include <svtools/colorcfg.hxx>
+#include "accessibleruler.hxx"
#include <memory>
#include <vector>
diff --git a/svtools/source/dialogs/PlaceEditDialog.cxx b/svtools/source/dialogs/PlaceEditDialog.cxx
index b832bd608e6b..deaea90b0d7b 100644
--- a/svtools/source/dialogs/PlaceEditDialog.cxx
+++ b/svtools/source/dialogs/PlaceEditDialog.cxx
@@ -10,7 +10,6 @@
#include <config_oauth2.h>
#include <svtools/PlaceEditDialog.hxx>
-#include <svtools/ServerDetailsControls.hxx>
#include <com/sun/star/uno/Sequence.hxx>
#include <officecfg/Office/Common.hxx>
@@ -18,6 +17,8 @@
#include <svtools/strings.hrc>
#include <svtools/place.hxx>
+#include "ServerDetailsControls.hxx"
+
using namespace com::sun::star::uno;
PlaceEditDialog::PlaceEditDialog(weld::Window* pParent)
diff --git a/svtools/source/dialogs/ServerDetailsControls.cxx b/svtools/source/dialogs/ServerDetailsControls.cxx
index 0f95e7fc3d40..339704dc6fc2 100644
--- a/svtools/source/dialogs/ServerDetailsControls.cxx
+++ b/svtools/source/dialogs/ServerDetailsControls.cxx
@@ -24,10 +24,10 @@
#include <tools/diagnose_ex.h>
#include <svtools/PlaceEditDialog.hxx>
-#include <svtools/ServerDetailsControls.hxx>
-
#include <config_oauth2.h>
+#include "ServerDetailsControls.hxx"
+
using namespace std;
using namespace com::sun::star::lang;
using namespace com::sun::star::sdbc;
diff --git a/svtools/source/dialogs/ServerDetailsControls.hxx b/svtools/source/dialogs/ServerDetailsControls.hxx
new file mode 100644
index 000000000000..3bc5fccc530a
--- /dev/null
+++ b/svtools/source/dialogs/ServerDetailsControls.hxx
@@ -0,0 +1,142 @@
+/* -*- 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/.
+ */
+#ifndef INCLUDED_SVTOOLS_SERVERDETAILSCONTROLS_HXX
+#define INCLUDED_SVTOOLS_SERVERDETAILSCONTROLS_HXX
+
+#include <vector>
+
+#include <com/sun/star/uno/Reference.hxx>
+
+#include <tools/link.hxx>
+#include <tools/urlobj.hxx>
+
+namespace com :: sun :: star :: ucb { class XCommandEnvironment; }
+namespace com :: sun :: star :: awt { class XWindow; }
+
+namespace weld {
+ class Button;
+ class ComboBox;
+ class Entry;
+ class SpinButton;
+ class ToggleButton;
+}
+
+class PlaceEditDialog;
+
+class DetailsContainer
+{
+ protected:
+ PlaceEditDialog* m_pDialog;
+ Link<DetailsContainer*,void> m_aChangeHdl;
+
+ public:
+ DetailsContainer(PlaceEditDialog* pDialog);
+ virtual ~DetailsContainer( );
+
+ void setChangeHdl( const Link<DetailsContainer*,void>& rLink ) { m_aChangeHdl = rLink; }
+
+ virtual void set_visible( bool bShow );
+ virtual INetURLObject getUrl( );
+
+ /** Try to split the URL in the controls of that container.
+
+ \param sUrl the URL to split
+ \return true if the split worked, false otherwise.
+ */
+ virtual bool setUrl( const INetURLObject& rUrl );
+
+ virtual void setUsername( const OUString& /*rUsername*/ ) { };
+ virtual void setPassword( const OUString& ) { };
+
+ virtual bool enableUserCredentials( ) { return true; };
+
+ protected:
+ void notifyChange( );
+ DECL_LINK(ValueChangeHdl, weld::Entry&, void);
+ DECL_STATIC_LINK(DetailsContainer, FormatPortHdl, weld::SpinButton&, void);
+};
+
+class HostDetailsContainer : public DetailsContainer
+{
+ private:
+ sal_uInt16 const m_nDefaultPort;
+ OUString m_sScheme;
+ OUString m_sHost;
+
+ public:
+ HostDetailsContainer(PlaceEditDialog* pDialog, sal_uInt16 nPort, const OUString& sScheme);
+
+ virtual void set_visible( bool bShow ) override;
+ virtual INetURLObject getUrl( ) override;
+ virtual bool setUrl( const INetURLObject& rUrl ) override;
+
+ protected:
+ void setScheme( const OUString& sScheme ) { m_sScheme = sScheme; }
+
+ /** Verifies that the scheme split from the URL can be handled by
+ the container and set the proper controls accordingly if needed.
+ */
+ virtual bool verifyScheme( const OUString& rScheme );
+};
+
+class DavDetailsContainer final : public HostDetailsContainer
+{
+ public:
+ DavDetailsContainer(PlaceEditDialog* pDialog);
+
+ virtual void set_visible( bool bShow ) override;
+ virtual bool enableUserCredentials( ) override { return false; };
+
+ private:
+ virtual bool verifyScheme( const OUString& rScheme ) override;
+
+ DECL_LINK(ToggledDavsHdl, weld::ToggleButton&, void);
+};
+
+class SmbDetailsContainer final : public DetailsContainer
+{
+ private:
+ OUString m_sHost;
+
+ public:
+ SmbDetailsContainer(PlaceEditDialog* pDialog);
+
+ virtual INetURLObject getUrl( ) override;
+ virtual bool setUrl( const INetURLObject& rUrl ) override;
+ virtual void set_visible( bool bShow ) override;
+};
+
+class CmisDetailsContainer final : public DetailsContainer
+{
+ private:
+ OUString m_sUsername;
+ OUString m_sPassword;
+ css::uno::Reference< css::ucb::XCommandEnvironment > m_xCmdEnv;
+ std::vector< OUString > m_aRepoIds;
+ OUString m_sRepoId;
+ OUString m_sBinding;
+ css::uno::Reference< css::awt::XWindow > m_xParentDialog;
+
+ public:
+ CmisDetailsContainer(PlaceEditDialog* pDialog, OUString const & sBinding);
+
+ virtual void set_visible( bool bShow ) override;
+ virtual INetURLObject getUrl( ) override;
+ virtual bool setUrl( const INetURLObject& rUrl ) override;
+ virtual void setUsername( const OUString& rUsername ) override;
+ virtual void setPassword( const OUString& rPass ) override;
+
+ private:
+ void selectRepository( );
+ DECL_LINK ( RefreshReposHdl, weld::Button&, void );
+ DECL_LINK ( SelectRepoHdl, weld::ComboBox&, void );
+};
+
+#endif
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */