diff options
author | Caolán McNamara <caolanm@redhat.com> | 2018-11-17 21:37:50 +0000 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2018-11-21 22:08:04 +0100 |
commit | 47897fdd936d9b6e9ac8cb6110c79352ab080df7 (patch) | |
tree | c657b53080caa94590d1e9b1fd4383d6dc795728 /include | |
parent | cfa76f538a44d4396574ece59e8a3953c22c6eb7 (diff) |
weld SwCondCollPage
and put back original SvTreeListBox a11y factory use
Change-Id: I4ad8ce29d8fed6ec5d44e9a1d641919a89226b79
Reviewed-on: https://gerrit.libreoffice.org/63501
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
Diffstat (limited to 'include')
21 files changed, 181 insertions, 109 deletions
diff --git a/include/sfx2/dinfdlg.hxx b/include/sfx2/dinfdlg.hxx index 4b3e576df7cd..72ba726c58be 100644 --- a/include/sfx2/dinfdlg.hxx +++ b/include/sfx2/dinfdlg.hxx @@ -29,7 +29,7 @@ #include <svl/stritem.hxx> #include <svl/zforlist.hxx> -#include <svtools/headbar.hxx> +#include <vcl/headbar.hxx> #include <svtools/svmedit.hxx> #include <unotools/syslocale.hxx> diff --git a/include/svtools/brwbox.hxx b/include/svtools/brwbox.hxx index e300fe997fa6..ba09a67050b0 100644 --- a/include/svtools/brwbox.hxx +++ b/include/svtools/brwbox.hxx @@ -24,10 +24,10 @@ #include <vcl/ctrl.hxx> #include <vcl/vclptr.hxx> #include <tools/multisel.hxx> -#include <svtools/headbar.hxx> +#include <vcl/headbar.hxx> #include <vcl/transfer.hxx> -#include <svtools/AccessibleBrowseBoxObjType.hxx> -#include <svtools/accessibletableprovider.hxx> +#include <vcl/AccessibleBrowseBoxObjType.hxx> +#include <vcl/accessibletableprovider.hxx> #include <vector> #include <stack> @@ -42,13 +42,16 @@ class BrowserHeader; namespace svt { class BrowseBoxImpl; - class IAccessibleFactory; } namespace utl { class AccessibleStateSetHelper; } +namespace vcl { + class IAccessibleFactory; +} + #define BROWSER_INVALIDID SAL_MAX_UINT16 #define BROWSER_ENDOFSELECTION (static_cast<long>(SFX_ENDOFSELECTION)) @@ -186,7 +189,7 @@ class SVT_DLLPUBLIC BrowseBox :public Control ,public DragSourceHelper ,public DropTargetHelper - ,public svt::IAccessibleTableProvider + ,public vcl::IAccessibleTableProvider { friend class BrowserDataWin; friend class ::svt::BrowseBoxImpl; @@ -309,7 +312,7 @@ private: protected: /// retrieves the XAccessible implementation associated with the BrowseBox instance - ::svt::IAccessibleFactory& getAccessibleFactory(); + ::vcl::IAccessibleFactory& getAccessibleFactory(); protected: sal_uInt16 ColCount() const; @@ -706,7 +709,7 @@ public: @return The name of the specified object. */ - virtual OUString GetAccessibleObjectName( ::svt::AccessibleBrowseBoxObjType eObjType,sal_Int32 _nPosition = -1) const override; + virtual OUString GetAccessibleObjectName( ::vcl::AccessibleBrowseBoxObjType eObjType,sal_Int32 _nPosition = -1) const override; /** return the description of the specified object. @param eObjType @@ -716,7 +719,7 @@ public: @return The description of the specified object. */ - virtual OUString GetAccessibleObjectDescription( ::svt::AccessibleBrowseBoxObjType eObjType,sal_Int32 _nPosition = -1) const override; + virtual OUString GetAccessibleObjectDescription( ::vcl::AccessibleBrowseBoxObjType eObjType,sal_Int32 _nPosition = -1) const override; /** @return The header text of the specified row. */ virtual OUString GetRowDescription( sal_Int32 nRow ) const override; @@ -728,7 +731,7 @@ public: the accessible object), depending on the specified object type. */ virtual void FillAccessibleStateSet( ::utl::AccessibleStateSetHelper& rStateSet, - ::svt::AccessibleBrowseBoxObjType eObjType ) const override; + ::vcl::AccessibleBrowseBoxObjType eObjType ) const override; /** Fills the StateSet with all states for one cell (except DEFUNC and SHOWING, done by the accessible object). */ diff --git a/include/svtools/brwhead.hxx b/include/svtools/brwhead.hxx index 0520007cb247..082e9c134970 100644 --- a/include/svtools/brwhead.hxx +++ b/include/svtools/brwhead.hxx @@ -21,7 +21,7 @@ #define INCLUDED_SVTOOLS_BRWHEAD_HXX #include <svtools/svtdllapi.h> -#include <svtools/headbar.hxx> +#include <vcl/headbar.hxx> class BrowseBox; diff --git a/include/svtools/simptabl.hxx b/include/svtools/simptabl.hxx index 9f5ff8c1df09..d94b7179ebb3 100644 --- a/include/svtools/simptabl.hxx +++ b/include/svtools/simptabl.hxx @@ -21,8 +21,8 @@ #define INCLUDED_SVTOOLS_SIMPTABL_HXX #include <svtools/svtdllapi.h> -#include <svtools/headbar.hxx> -#include <svtools/svtabbx.hxx> +#include <vcl/headbar.hxx> +#include <vcl/svtabbx.hxx> #include <unotools/intlwrapper.hxx> #include <unotools/collatorwrapper.hxx> #include <vcl/commandevent.hxx> diff --git a/include/svx/ctredlin.hxx b/include/svx/ctredlin.hxx index 72cfe2024123..78eaed2ff4f2 100644 --- a/include/svx/ctredlin.hxx +++ b/include/svx/ctredlin.hxx @@ -25,7 +25,7 @@ #include <svx/svxdllapi.h> #include <svtools/simptabl.hxx> #include <vcl/svlbitm.hxx> -#include <svtools/svtabbx.hxx> +#include <vcl/svtabbx.hxx> #include <vcl/treelistbox.hxx> #include <vcl/treelistentry.hxx> #include <tools/color.hxx> diff --git a/include/svx/fmgridcl.hxx b/include/svx/fmgridcl.hxx index 39cb7c77c894..6eb98eb7916d 100644 --- a/include/svx/fmgridcl.hxx +++ b/include/svx/fmgridcl.hxx @@ -133,7 +133,7 @@ public: @return The name of the specified object. */ - virtual OUString GetAccessibleObjectName( ::svt::AccessibleBrowseBoxObjType eObjType,sal_Int32 _nPosition = -1) const override; + virtual OUString GetAccessibleObjectName( ::vcl::AccessibleBrowseBoxObjType eObjType,sal_Int32 _nPosition = -1) const override; /** return the description of the specified object. @param eObjType @@ -143,7 +143,7 @@ public: @return The description of the specified object. */ - virtual OUString GetAccessibleObjectDescription( ::svt::AccessibleBrowseBoxObjType eObjType,sal_Int32 _nPosition = -1) const override; + virtual OUString GetAccessibleObjectDescription( ::vcl::AccessibleBrowseBoxObjType eObjType,sal_Int32 _nPosition = -1) const override; protected: virtual void Command(const CommandEvent& rEvt) override; diff --git a/include/svx/fontlb.hxx b/include/svx/fontlb.hxx index 8cb9fedc90fc..d998780ac03f 100644 --- a/include/svx/fontlb.hxx +++ b/include/svx/fontlb.hxx @@ -20,7 +20,7 @@ #ifndef INCLUDED_SVX_FONTLB_HXX #define INCLUDED_SVX_FONTLB_HXX -#include <svtools/svtabbx.hxx> +#include <vcl/svtabbx.hxx> #include <vcl/svlbitm.hxx> #include <vcl/virdev.hxx> #include <svx/svxdllapi.h> diff --git a/include/toolkit/awt/vclxwindows.hxx b/include/toolkit/awt/vclxwindows.hxx index 58a32090c120..384bab4ffe76 100644 --- a/include/toolkit/awt/vclxwindows.hxx +++ b/include/toolkit/awt/vclxwindows.hxx @@ -1242,6 +1242,16 @@ public: virtual ~VCLXToolBox() override; }; +class VCLXHeaderBar : public VCLXWindow +{ +public: + VCLXHeaderBar(); + virtual ~VCLXHeaderBar() override; + + virtual css::uno::Reference< css::accessibility::XAccessibleContext > CreateAccessibleContext() override; + +}; + #endif // INCLUDED_TOOLKIT_AWT_VCLXWINDOWS_HXX /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/include/toolkit/helper/accessiblefactory.hxx b/include/toolkit/helper/accessiblefactory.hxx index 8a5483394478..5a52d97b5503 100644 --- a/include/toolkit/helper/accessiblefactory.hxx +++ b/include/toolkit/helper/accessiblefactory.hxx @@ -38,6 +38,7 @@ class VCLXScrollBar; class VCLXEdit; class VCLXComboBox; class VCLXToolBox; +class VCLXHeaderBar; class VCLXWindow; class Menu; @@ -111,6 +112,11 @@ namespace toolkit virtual css::uno::Reference< css::accessibility::XAccessibleContext > createAccessibleContext( VCLXToolBox* _pXWindow ) = 0; + /** creates an accessible context for a headerbar window + */ + virtual css::uno::Reference< css::accessibility::XAccessibleContext > + createAccessibleContext( VCLXHeaderBar* _pXWindow ) = 0; + /** creates an accessible context for a generic window */ virtual css::uno::Reference< css::accessibility::XAccessibleContext > diff --git a/include/tools/wintypes.hxx b/include/tools/wintypes.hxx index baa8119e785d..f3ac3956d9ee 100644 --- a/include/tools/wintypes.hxx +++ b/include/tools/wintypes.hxx @@ -99,7 +99,8 @@ enum class WindowType : sal_uInt16 DOCKINGAREA , RULER , // 70 (374) CALCINPUTLINE , - LAST = CALCINPUTLINE, + HEADERBAR , + LAST = HEADERBAR, // only used in vclxtoolkit.cxx TOOLKIT_FRAMEWINDOW = 0x1000, TOOLKIT_SYSTEMCHILDWINDOW = 0x1001, diff --git a/include/svtools/AccessibleBrowseBoxObjType.hxx b/include/vcl/AccessibleBrowseBoxObjType.hxx index 33e54331ebd8..28086d7b1d26 100644 --- a/include/svtools/AccessibleBrowseBoxObjType.hxx +++ b/include/vcl/AccessibleBrowseBoxObjType.hxx @@ -18,12 +18,10 @@ */ -#ifndef INCLUDED_SVTOOLS_ACCESSIBLEBROWSEBOXOBJTYPE_HXX -#define INCLUDED_SVTOOLS_ACCESSIBLEBROWSEBOXOBJTYPE_HXX - - -namespace svt { +#ifndef INCLUDED_VCL_ACCESSIBLEBROWSEBOXOBJTYPE_HXX +#define INCLUDED_VCL_ACCESSIBLEBROWSEBOXOBJTYPE_HXX +namespace vcl { /** This enumeration contains a constant for each kind of accessible object of a BrowseBox. */ @@ -39,10 +37,8 @@ enum AccessibleBrowseBoxObjType BBTYPE_CHECKBOXCELL /// A cell with a checkbox. }; - } // namespace svt - #endif /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/include/svtools/accessiblefactory.hxx b/include/vcl/accessiblefactory.hxx index 05c5715cc0ef..8426333ecfd7 100644 --- a/include/svtools/accessiblefactory.hxx +++ b/include/vcl/accessiblefactory.hxx @@ -17,11 +17,11 @@ * the License at http://www.apache.org/licenses/LICENSE-2.0 . */ -#ifndef INCLUDED_SVTOOLS_ACCESSIBLEFACTORY_HXX -#define INCLUDED_SVTOOLS_ACCESSIBLEFACTORY_HXX +#ifndef INCLUDED_VCL_ACCESSIBLEFACTORY_HXX +#define INCLUDED_VCL_ACCESSIBLEFACTORY_HXX -#include <svtools/AccessibleBrowseBoxObjType.hxx> -#include <svtools/accessibletableprovider.hxx> +#include <vcl/AccessibleBrowseBoxObjType.hxx> +#include <vcl/accessibletableprovider.hxx> #include <com/sun/star/uno/Reference.hxx> @@ -45,12 +45,8 @@ class VCLXWindow; class TextEngine; class TextView; - -namespace svt +namespace vcl { - - - class PanelTabBar; namespace table { class IAccessibleTable; @@ -72,16 +68,20 @@ namespace svt class IAccessibleFactory : public virtual ::salhelper::SimpleReferenceObject { public: - virtual IAccessibleTabListBox* + virtual vcl::IAccessibleTabListBox* createAccessibleTabListBox( const css::uno::Reference< css::accessibility::XAccessible >& rxParent, SvHeaderTabListBox& rBox ) const = 0; - - virtual IAccessibleBrowseBox* + virtual css::uno::Reference< css::accessibility::XAccessible > + createAccessibleTreeListBox( + SvTreeListBox& _rListBox, + const css::uno::Reference< css::accessibility::XAccessible >& _xParent + ) const = 0; + virtual vcl::IAccessibleBrowseBox* createAccessibleBrowseBox( const css::uno::Reference< css::accessibility::XAccessible >& _rxParent, - IAccessibleTableProvider& _rBrowseBox + vcl::IAccessibleTableProvider& _rBrowseBox ) const = 0; virtual table::IAccessibleTableControl* createAccessibleTableControl( @@ -108,14 +108,14 @@ namespace svt virtual css::uno::Reference< css::accessibility::XAccessible > createAccessibleBrowseBoxHeaderBar( const css::uno::Reference< css::accessibility::XAccessible >& rxParent, - IAccessibleTableProvider& _rOwningTable, - AccessibleBrowseBoxObjType _eObjType + vcl::IAccessibleTableProvider& _rOwningTable, + vcl::AccessibleBrowseBoxObjType _eObjType ) const = 0; virtual css::uno::Reference< css::accessibility::XAccessible > createAccessibleBrowseBoxTableCell( const css::uno::Reference< css::accessibility::XAccessible >& _rxParent, - IAccessibleTableProvider& _rBrowseBox, + vcl::IAccessibleTableProvider& _rBrowseBox, const css::uno::Reference< css::awt::XWindow >& _xFocusWindow, sal_Int32 _nRowId, sal_uInt16 _nColId, @@ -126,15 +126,15 @@ namespace svt createAccessibleBrowseBoxHeaderCell( sal_Int32 _nColumnRowId, const css::uno::Reference< css::accessibility::XAccessible >& rxParent, - IAccessibleTableProvider& _rBrowseBox, + vcl::IAccessibleTableProvider& _rBrowseBox, const css::uno::Reference< css::awt::XWindow >& _xFocusWindow, - AccessibleBrowseBoxObjType _eObjType + vcl::AccessibleBrowseBoxObjType _eObjType ) const = 0; virtual css::uno::Reference< css::accessibility::XAccessible > createAccessibleCheckBoxCell( const css::uno::Reference< css::accessibility::XAccessible >& _rxParent, - IAccessibleTableProvider& _rBrowseBox, + vcl::IAccessibleTableProvider& _rBrowseBox, const css::uno::Reference< css::awt::XWindow >& _xFocusWindow, sal_Int32 _nRowPos, sal_uInt16 _nColPos, @@ -147,7 +147,7 @@ namespace svt const css::uno::Reference< css::accessibility::XAccessible >& _rxParent, const css::uno::Reference< css::accessibility::XAccessible >& _rxControlAccessible, const css::uno::Reference< css::awt::XWindow >& _rxFocusWindow, - IAccessibleTableProvider& _rBrowseBox, + vcl::IAccessibleTableProvider& _rBrowseBox, sal_Int32 _nRowPos, sal_uInt16 _nColPos ) const = 0; @@ -156,10 +156,9 @@ namespace svt virtual ~IAccessibleFactory() override {} }; - -} // namespace svt +} // namespace vcl -#endif // INCLUDED_SVTOOLS_ACCESSIBLEFACTORY_HXX +#endif // INCLUDED_VCL_ACCESSIBLEFACTORY_HXX /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/include/svtools/accessibletable.hxx b/include/vcl/accessibletable.hxx index f24e2963270a..d6c0dc3b7ffc 100644 --- a/include/svtools/accessibletable.hxx +++ b/include/vcl/accessibletable.hxx @@ -17,15 +17,14 @@ * the License at http://www.apache.org/licenses/LICENSE-2.0 . */ -#ifndef INCLUDED_SVTOOLS_ACCESSIBLETABLE_HXX -#define INCLUDED_SVTOOLS_ACCESSIBLETABLE_HXX +#ifndef INCLUDED_VCL_ACCESSIBLETABLE_HXX +#define INCLUDED_VCL_ACCESSIBLETABLE_HXX #include <vcl/window.hxx> #include <unotools/accessiblestatesethelper.hxx> #include <com/sun/star/lang/IndexOutOfBoundsException.hpp> - -namespace svt{ namespace table +namespace vcl { namespace table { typedef sal_Int32 RowPos; @@ -166,10 +165,9 @@ protected: ~IAccessibleTableControl() {} }; - } // namespace table -} // namespace svt +} // namespace vcl -#endif // INCLUDED_SVTOOLS_ACCESSIBLETABLE_HXX +#endif // INCLUDED_VCL_ACCESSIBLETABLE_HXX /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/include/svtools/accessibletableprovider.hxx b/include/vcl/accessibletableprovider.hxx index 094c4a16fb27..982ac62c0905 100644 --- a/include/svtools/accessibletableprovider.hxx +++ b/include/vcl/accessibletableprovider.hxx @@ -17,16 +17,15 @@ * the License at http://www.apache.org/licenses/LICENSE-2.0 . */ -#ifndef INCLUDED_SVTOOLS_ACCESSIBLETABLEPROVIDER_HXX -#define INCLUDED_SVTOOLS_ACCESSIBLETABLEPROVIDER_HXX +#ifndef INCLUDED_VCL_ACCESSIBLETABLEPROVIDER_HXX +#define INCLUDED_VCL_ACCESSIBLETABLEPROVIDER_HXX #include <vcl/window.hxx> #include <unotools/accessiblestatesethelper.hxx> -#include <svtools/AccessibleBrowseBoxObjType.hxx> +#include <vcl/AccessibleBrowseBoxObjType.hxx> #include <com/sun/star/lang/IndexOutOfBoundsException.hpp> - -namespace svt +namespace vcl { #define OFFSET_DEFAULT (sal_Int32(-1)) @@ -103,10 +102,10 @@ public: virtual bool ConvertPointToRowHeader( sal_Int32& _rnRow, const Point& _rPoint ) = 0; virtual bool ConvertPointToColumnHeader( sal_uInt16& _rnColPos, const Point& _rPoint ) = 0; - virtual OUString GetAccessibleObjectName( ::svt::AccessibleBrowseBoxObjType _eType, sal_Int32 _nPos = -1 ) const = 0; - virtual OUString GetAccessibleObjectDescription( ::svt::AccessibleBrowseBoxObjType _eType, sal_Int32 _nPos = -1 ) const = 0; + virtual OUString GetAccessibleObjectName( ::vcl::AccessibleBrowseBoxObjType _eType, sal_Int32 _nPos = -1 ) const = 0; + virtual OUString GetAccessibleObjectDescription( ::vcl::AccessibleBrowseBoxObjType _eType, sal_Int32 _nPos = -1 ) const = 0; - virtual void FillAccessibleStateSet( ::utl::AccessibleStateSetHelper& _rStateSet, ::svt::AccessibleBrowseBoxObjType _eType ) const = 0; + virtual void FillAccessibleStateSet( ::utl::AccessibleStateSetHelper& _rStateSet, ::vcl::AccessibleBrowseBoxObjType _eType ) const = 0; virtual void FillAccessibleStateSetForCell( ::utl::AccessibleStateSetHelper& _rStateSet, sal_Int32 _nRow, sal_uInt16 _nColumnPos ) const = 0; virtual void GrabTableFocus() = 0; @@ -179,7 +178,7 @@ public: /** returns the accessible object for the row or the column header bar */ virtual css::uno::Reference< css::accessibility::XAccessible > - getHeaderBar( ::svt::AccessibleBrowseBoxObjType _eObjType ) = 0; + getHeaderBar( ::vcl::AccessibleBrowseBoxObjType _eObjType ) = 0; /** returns the accessible object for the table representation */ @@ -226,10 +225,8 @@ protected: ~IAccessibleBrowseBox() {} }; +} // namespace vcl -} // namespace svt - - -#endif // INCLUDED_SVTOOLS_ACCESSIBLETABLEPROVIDER_HXX +#endif // INCLUDED_VCL_ACCESSIBLETABLEPROVIDER_HXX /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/include/vcl/builder.hxx b/include/vcl/builder.hxx index 5cc4c2074d09..5fdb061f7b1e 100644 --- a/include/vcl/builder.hxx +++ b/include/vcl/builder.hxx @@ -38,7 +38,7 @@ class PopupMenu; class SalInstanceBuilder; class ScreenshotTest; class ScrollBar; -class SvTreeListBox; +class SvTabListBox; class Slider; class DateField; class TimeField; @@ -220,7 +220,7 @@ private: const ListStore* get_model_by_name(const OString& sID) const; void mungeModel(ListBox &rTarget, const ListStore &rStore, sal_uInt16 nActiveId); void mungeModel(ComboBox &rTarget, const ListStore &rStore, sal_uInt16 nActiveId); - void mungeModel(SvTreeListBox &rTarget, const ListStore &rStore, sal_uInt16 nActiveId); + void mungeModel(SvTabListBox &rTarget, const ListStore &rStore, sal_uInt16 nActiveId); typedef stringmap TextBuffer; const TextBuffer* get_buffer_by_name(const OString& sID) const; diff --git a/include/svtools/headbar.hxx b/include/vcl/headbar.hxx index 08203a2c611a..046ad7079a24 100644 --- a/include/svtools/headbar.hxx +++ b/include/vcl/headbar.hxx @@ -17,10 +17,10 @@ * the License at http://www.apache.org/licenses/LICENSE-2.0 . */ -#ifndef INCLUDED_SVTOOLS_HEADBAR_HXX -#define INCLUDED_SVTOOLS_HEADBAR_HXX +#ifndef INCLUDED_VCL_HEADBAR_HXX +#define INCLUDED_VCL_HEADBAR_HXX -#include <svtools/svtdllapi.h> +#include <vcl/dllapi.h> #include <tools/link.hxx> #include <vcl/window.hxx> #include <o3tl/typed_flags_set.hxx> @@ -212,7 +212,7 @@ namespace o3tl class VCLXHeaderBar; -class SVT_DLLPUBLIC HeaderBar : public vcl::Window +class VCL_DLLPUBLIC HeaderBar : public vcl::Window { private: std::vector<std::unique_ptr<ImplHeadItem>> mvItemList; @@ -243,22 +243,22 @@ private: mxAccessible; using Window::ImplInit; - SVT_DLLPRIVATE void ImplInit( WinBits nWinStyle ); - SVT_DLLPRIVATE void ImplInitSettings( bool bFont, bool bForeground, bool bBackground ); - SVT_DLLPRIVATE long ImplGetItemPos( sal_uInt16 nPos ) const; - SVT_DLLPRIVATE tools::Rectangle ImplGetItemRect( sal_uInt16 nPos ) const; + VCL_DLLPRIVATE void ImplInit( WinBits nWinStyle ); + VCL_DLLPRIVATE void ImplInitSettings( bool bFont, bool bForeground, bool bBackground ); + VCL_DLLPRIVATE long ImplGetItemPos( sal_uInt16 nPos ) const; + VCL_DLLPRIVATE tools::Rectangle ImplGetItemRect( sal_uInt16 nPos ) const; using Window::ImplHitTest; - SVT_DLLPRIVATE sal_uInt16 ImplHitTest( const Point& rPos, long& nMouseOff, sal_uInt16& nPos ) const; - SVT_DLLPRIVATE void ImplInvertDrag( sal_uInt16 nStartPos, sal_uInt16 nEndPos ); - SVT_DLLPRIVATE void ImplDrawItem(vcl::RenderContext& rRenderContext, sal_uInt16 nPos, bool bHigh, + VCL_DLLPRIVATE sal_uInt16 ImplHitTest( const Point& rPos, long& nMouseOff, sal_uInt16& nPos ) const; + VCL_DLLPRIVATE void ImplInvertDrag( sal_uInt16 nStartPos, sal_uInt16 nEndPos ); + VCL_DLLPRIVATE void ImplDrawItem(vcl::RenderContext& rRenderContext, sal_uInt16 nPos, bool bHigh, const tools::Rectangle& rItemRect, const tools::Rectangle* pRect); - SVT_DLLPRIVATE void ImplDrawItem(vcl::RenderContext& rRenderContext, sal_uInt16 nPos, bool bHigh, + VCL_DLLPRIVATE void ImplDrawItem(vcl::RenderContext& rRenderContext, sal_uInt16 nPos, bool bHigh, const tools::Rectangle* pRect); - SVT_DLLPRIVATE void ImplUpdate( sal_uInt16 nPos, + VCL_DLLPRIVATE void ImplUpdate( sal_uInt16 nPos, bool bEnd = false ); - SVT_DLLPRIVATE void ImplStartDrag( const Point& rPos, bool bCommand ); - SVT_DLLPRIVATE void ImplDrag( const Point& rPos ); - SVT_DLLPRIVATE void ImplEndDrag( bool bCancel ); + VCL_DLLPRIVATE void ImplStartDrag( const Point& rPos, bool bCommand ); + VCL_DLLPRIVATE void ImplDrag( const Point& rPos ); + VCL_DLLPRIVATE void ImplEndDrag( bool bCancel ); virtual void ApplySettings(vcl::RenderContext& rRenderContext) override; @@ -326,10 +326,8 @@ public: /** Creates and returns the accessible object of the header bar. */ virtual css::uno::Reference< css::accessibility::XAccessible > CreateAccessible() override; void SetAccessible( const css::uno::Reference< css::accessibility::XAccessible >& ); - virtual css::uno::Reference< css::awt::XWindowPeer > GetComponentInterface( bool bCreate = true ) override; - }; -#endif // INCLUDED_SVTOOLS_HEADBAR_HXX +#endif // INCLUDED_VCL_HEADBAR_HXX /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/include/vcl/svimpbox.hxx b/include/vcl/svimpbox.hxx index 1ce5681f398b..88c068874165 100644 --- a/include/vcl/svimpbox.hxx +++ b/include/vcl/svimpbox.hxx @@ -23,6 +23,7 @@ #include <vcl/dllapi.h> #include <vcl/seleng.hxx> #include <vcl/scrbar.hxx> +#include <vcl/svtaccessiblefactory.hxx> #include <vcl/vclevent.hxx> #include <unotools/intlwrapper.hxx> #include <o3tl/enumarray.hxx> @@ -100,6 +101,9 @@ private: VclPtr<ScrollBar> aHorSBar; VclPtr<ScrollBarBox> aScrBarBox; + ::vcl::AccessibleFactoryAccess + m_aFactoryAccess; + static Image* s_pDefCollapsed; static Image* s_pDefExpanded; static oslInterlockedCount s_nImageRefCount; /// When 0 all static images will be destroyed diff --git a/include/svtools/svtabbx.hxx b/include/vcl/svtabbx.hxx index c33ccc5993c8..a49ca16bc992 100644 --- a/include/svtools/svtabbx.hxx +++ b/include/vcl/svtabbx.hxx @@ -16,12 +16,12 @@ * 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_SVTABBX_HXX -#define INCLUDED_SVTOOLS_SVTABBX_HXX +#ifndef INCLUDED_VCL_SVTABBX_HXX +#define INCLUDED_VCL_SVTABBX_HXX -#include <svtools/svtdllapi.h> +#include <vcl/dllapi.h> #include <vcl/treelistbox.hxx> -#include <svtools/accessibletableprovider.hxx> +#include <vcl/accessibletableprovider.hxx> #include <memory> #include <vector> @@ -44,7 +44,7 @@ struct TabListBoxEventData m_pEntry( pEntry ), m_nColumn( nColumn ), m_sOldText( rOldText ) {} }; -class SVT_DLLPUBLIC SvTabListBox : public SvTreeListBox +class VCL_DLLPUBLIC SvTabListBox : public SvTreeListBox { private: std::vector<SvLBoxTab> mvTabList; @@ -114,19 +114,19 @@ inline long SvTabListBox::GetTab( sal_uInt16 nTab ) const // class SvHeaderTabListBox --------------------------------------------------- class HeaderBar; -namespace svt { +namespace vcl { class IAccessibleTabListBox; struct SvHeaderTabListBoxImpl; } -class SVT_DLLPUBLIC SvHeaderTabListBox : public SvTabListBox, public svt::IAccessibleTableProvider +class VCL_DLLPUBLIC SvHeaderTabListBox : public SvTabListBox, public vcl::IAccessibleTableProvider { private: typedef ::std::vector< css::uno::Reference< css::accessibility::XAccessible > > AccessibleChildren; bool m_bFirstPaint; - std::unique_ptr<::svt::SvHeaderTabListBoxImpl> m_pImpl; - ::svt::IAccessibleTabListBox* m_pAccessible; + std::unique_ptr<::vcl::SvHeaderTabListBoxImpl> m_pImpl; + ::vcl::IAccessibleTabListBox* m_pAccessible; AccessibleChildren m_aAccessibleChildren; DECL_DLLPRIVATE_LINK( ScrollHdl_Impl, SvTreeListBox*, void ); @@ -218,11 +218,11 @@ public: virtual bool ConvertPointToRowHeader( sal_Int32& _rnRow, const Point& _rPoint ) override; virtual bool ConvertPointToColumnHeader( sal_uInt16& _rnColPos, const Point& _rPoint ) override; - virtual OUString GetAccessibleObjectName( ::svt::AccessibleBrowseBoxObjType _eType, sal_Int32 _nPos = -1 ) const override; - virtual OUString GetAccessibleObjectDescription( ::svt::AccessibleBrowseBoxObjType _eType, sal_Int32 _nPos = -1 ) const override; + virtual OUString GetAccessibleObjectName( ::vcl::AccessibleBrowseBoxObjType _eType, sal_Int32 _nPos = -1 ) const override; + virtual OUString GetAccessibleObjectDescription( ::vcl::AccessibleBrowseBoxObjType _eType, sal_Int32 _nPos = -1 ) const override; virtual vcl::Window* GetWindowInstance() override; - virtual void FillAccessibleStateSet( ::utl::AccessibleStateSetHelper& _rStateSet, ::svt::AccessibleBrowseBoxObjType _eType ) const override; + virtual void FillAccessibleStateSet( ::utl::AccessibleStateSetHelper& _rStateSet, ::vcl::AccessibleBrowseBoxObjType _eType ) const override; virtual void FillAccessibleStateSetForCell( ::utl::AccessibleStateSetHelper& _rStateSet, sal_Int32 _nRow, sal_uInt16 _nColumn ) const override; virtual void GrabTableFocus() override; @@ -230,19 +230,18 @@ public: virtual bool GetGlyphBoundRects( const Point& rOrigin, const OUString& rStr, int nIndex, int nLen, MetricVector& rVector ) override; // Window - virtual tools::Rectangle GetWindowExtentsRelative( vcl::Window *pRelativeWindow ) const override; + virtual tools::Rectangle GetWindowExtentsRelative( vcl::Window *pRelativeWindow ) const override; virtual void GrabFocus() override; virtual css::uno::Reference< css::accessibility::XAccessible > GetAccessible() override; - virtual vcl::Window* GetAccessibleParentWindow() const override; - /** Creates and returns the accessible object of the whole BrowseBox. */ virtual css::uno::Reference< css::accessibility::XAccessible > CreateAccessible() override; + virtual vcl::Window* GetAccessibleParentWindow() const override; - virtual tools::Rectangle GetFieldCharacterBounds(sal_Int32 _nRow,sal_Int32 _nColumnPos,sal_Int32 nIndex) override; + virtual tools::Rectangle GetFieldCharacterBounds(sal_Int32 _nRow,sal_Int32 _nColumnPos,sal_Int32 nIndex) override; virtual sal_Int32 GetFieldIndexAtPoint(sal_Int32 _nRow,sal_Int32 _nColumnPos,const Point& _rPoint) override; }; -#endif // INCLUDED_SVTOOLS_SVTABBX_HXX +#endif // INCLUDED_VCL_SVTABBX_HXX /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/include/vcl/svtaccessiblefactory.hxx b/include/vcl/svtaccessiblefactory.hxx new file mode 100644 index 000000000000..24ad85f8f930 --- /dev/null +++ b/include/vcl/svtaccessiblefactory.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_INCLUDE_VCL_SVTACCESSIBLEFACTORY_HXX +#define INCLUDED_INCLUDE_VCL_SVTACCESSIBLEFACTORY_HXX + +#include <vcl/dllapi.h> +#include <vcl/accessiblefactory.hxx> + +namespace vcl +{ + /** a client for the accessibility implementations which have been outsourced + from the main vcl/svtools libraries + + All instances of this class share a reference to a common IAccessibleFactory + instance, which is used for creating all kind of Accessibility related + components. + + When the AccessibleFactoryAccess goes away, also this factory goes away, and the respective + library is unloaded. + + This class is not thread-safe. + */ + class VCL_DLLPUBLIC AccessibleFactoryAccess + { + private: + bool m_bInitialized; + + public: + AccessibleFactoryAccess(); + + IAccessibleFactory& getFactory(); + + private: + void ensureInitialized(); + }; +} // namespace svt + +#endif // INCLUDED_INCLUDE_VCL_SVTACCESSIBLEFACTORY_HXX + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/include/vcl/treelistbox.hxx b/include/vcl/treelistbox.hxx index 675d141be53e..cfb6b8cf7de8 100644 --- a/include/vcl/treelistbox.hxx +++ b/include/vcl/treelistbox.hxx @@ -493,6 +493,9 @@ public: // ACCESSIBILITY ========================================================== + /** Creates and returns the accessible object of the Box. */ + virtual css::uno::Reference< css::accessibility::XAccessible > CreateAccessible() override; + /** Fills the StateSet of one entry. */ void FillAccessibleEntryStateSet( SvTreeListEntry* pEntry, ::utl::AccessibleStateSetHelper& rStateSet ) const; @@ -750,8 +753,6 @@ public: void EnableContextMenuHandling(); - void EnableList( bool _bEnable ); - long getPreferredDimensions(std::vector<long> &rWidths) const; virtual Size GetOptimalSize() const override; diff --git a/include/vcl/weld.hxx b/include/vcl/weld.hxx index 0d3db5f51251..f05e3408e207 100644 --- a/include/vcl/weld.hxx +++ b/include/vcl/weld.hxx @@ -440,7 +440,8 @@ public: virtual void set_font_color(int pos, const Color& rColor) const = 0; //by text - virtual OUString get_text(int pos) const = 0; + virtual OUString get_text(int row, int col = -1) const = 0; + virtual void set_text(int row, const OUString& rText, int col = -1) = 0; virtual int find_text(const OUString& rText) const = 0; OUString get_selected_text() const { @@ -499,6 +500,8 @@ public: virtual void clear() = 0; virtual int get_height_rows(int nRows) const = 0; + virtual void set_column_fixed_widths(const std::vector<int>& rWidths) = 0; + virtual void set_selection_mode(bool bMultiple) = 0; virtual int count_selected_rows() const = 0; }; |