chart2/source/controller/dialogs/DataBrowser.cxx | 8 - include/svtools/brwbox.hxx | 55 ++++---- include/svtools/editbrowsebox.hxx | 2 include/svx/gridctrl.hxx | 2 include/vcl/accessibletableprovider.hxx | 1 include/vcl/toolkit/svtabbx.hxx | 1 svtools/source/brwbox/brwbox2.cxx | 149 +++++++++++++++-------- svtools/source/brwbox/brwbox3.cxx | 5 svtools/source/brwbox/editbrowsebox.cxx | 129 +++++++++++++------ svx/source/fmcomp/gridctrl.cxx | 6 vcl/source/treelist/svtabbx.cxx | 5 11 files changed, 221 insertions(+), 142 deletions(-)
New commits: commit 1fc76c3ef0e9ed16dbfe4b25c6f40fb2799ae334 Author: Michael Weghorn <m.wegh...@posteo.de> AuthorDate: Wed Feb 5 14:07:32 2025 +0100 Commit: Michael Weghorn <m.wegh...@posteo.de> CommitDate: Fri Feb 7 09:18:28 2025 +0100 a11y: Drop now unused IAccessibleTableProvider::GetWindowExtentsAbsolute Change-Id: I39b3c5ec28e025cfdb3b3da733b6e377752eb06a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/181197 Reviewed-by: Michael Weghorn <m.wegh...@posteo.de> Tested-by: Jenkins diff --git a/include/svtools/brwbox.hxx b/include/svtools/brwbox.hxx index 65e56a33cf3c..500e8023d912 100644 --- a/include/svtools/brwbox.hxx +++ b/include/svtools/brwbox.hxx @@ -819,7 +819,6 @@ public: virtual bool IsCellVisible( sal_Int32 _nRow, sal_uInt16 _nColumn ) const override; virtual OUString GetAccessibleCellText(sal_Int32 _nRow, sal_uInt16 _nColPos) const override; virtual bool GetGlyphBoundRects( const Point& rOrigin, const OUString& rStr, int nIndex, int nLen, std::vector< tools::Rectangle >& rVector ) override; - virtual AbsoluteScreenPixelRectangle GetWindowExtentsAbsolute() const override; virtual tools::Rectangle GetWindowExtentsRelative(const vcl::Window& rRelativeWindow) const override; virtual void GrabFocus() override; virtual css::uno::Reference< css::accessibility::XAccessible > GetAccessible() override; diff --git a/include/vcl/accessibletableprovider.hxx b/include/vcl/accessibletableprovider.hxx index 2d6f48dea846..567cd2fc533c 100644 --- a/include/vcl/accessibletableprovider.hxx +++ b/include/vcl/accessibletableprovider.hxx @@ -113,7 +113,6 @@ public: virtual bool GetGlyphBoundRects( const Point& rOrigin, const OUString& rStr, int nIndex, int nLen, std::vector< tools::Rectangle >& rVector ) = 0; // Window - virtual AbsoluteScreenPixelRectangle GetWindowExtentsAbsolute() const = 0; virtual tools::Rectangle GetWindowExtentsRelative(const vcl::Window& rRelativeWindow) const = 0; virtual void GrabFocus() = 0; virtual css::uno::Reference< css::accessibility::XAccessible > GetAccessible() = 0; diff --git a/include/vcl/toolkit/svtabbx.hxx b/include/vcl/toolkit/svtabbx.hxx index 8446d24bbd53..1656d466f300 100644 --- a/include/vcl/toolkit/svtabbx.hxx +++ b/include/vcl/toolkit/svtabbx.hxx @@ -194,7 +194,6 @@ public: virtual bool GetGlyphBoundRects( const Point& rOrigin, const OUString& rStr, int nIndex, int nLen, std::vector< tools::Rectangle >& rVector ) override; // Window - virtual AbsoluteScreenPixelRectangle GetWindowExtentsAbsolute() const override; virtual tools::Rectangle GetWindowExtentsRelative(const vcl::Window& rRelativeWindow) const override; virtual void GrabFocus() override; virtual css::uno::Reference< css::accessibility::XAccessible > GetAccessible() override; diff --git a/svtools/source/brwbox/brwbox3.cxx b/svtools/source/brwbox/brwbox3.cxx index d9b9f72d47f3..54ffc1ebd0ba 100644 --- a/svtools/source/brwbox/brwbox3.cxx +++ b/svtools/source/brwbox/brwbox3.cxx @@ -512,11 +512,6 @@ bool BrowseBox::GetGlyphBoundRects( const Point& rOrigin, const OUString& rStr, return GetOutDev()->GetGlyphBoundRects( rOrigin, rStr, nIndex, nLen, rVector ); } -AbsoluteScreenPixelRectangle BrowseBox::GetWindowExtentsAbsolute() const -{ - return Control::GetWindowExtentsAbsolute(); -} - tools::Rectangle BrowseBox::GetWindowExtentsRelative(const vcl::Window& rRelativeWindow) const { return Control::GetWindowExtentsRelative( rRelativeWindow ); diff --git a/vcl/source/treelist/svtabbx.cxx b/vcl/source/treelist/svtabbx.cxx index 5469f615310a..d417c320c014 100644 --- a/vcl/source/treelist/svtabbx.cxx +++ b/vcl/source/treelist/svtabbx.cxx @@ -1095,11 +1095,6 @@ bool SvHeaderTabListBox::GetGlyphBoundRects( const Point& rOrigin, const OUStrin return GetOutDev()->GetGlyphBoundRects( rOrigin, rStr, nIndex, nLen, rVector ); } -AbsoluteScreenPixelRectangle SvHeaderTabListBox::GetWindowExtentsAbsolute() const -{ - return Control::GetWindowExtentsAbsolute(); -} - tools::Rectangle SvHeaderTabListBox::GetWindowExtentsRelative(const vcl::Window& rRelativeWindow) const { return Control::GetWindowExtentsRelative( rRelativeWindow ); commit 5737b61ec6ff9ec1091192cf33d985759b0f0475 Author: Michael Weghorn <m.wegh...@posteo.de> AuthorDate: Wed Feb 5 12:54:58 2025 +0100 Commit: Michael Weghorn <m.wegh...@posteo.de> CommitDate: Fri Feb 7 09:18:19 2025 +0100 browsebox: Convert dispatch ID defines to enum class Convert the `BROWSER_*` defines in include/svtools/brwbox.hxx to a new enum class BrowserDispatchId. The specific integer values that were used don't seem to have any particular meaning, so just drop them. Add default case that does nothing in BrowseBox::Dispatch to address /home/michi/development/git/libreoffice/svtools/source/brwbox/brwbox2.cxx:1779:13: error: 5 enumeration values not handled in switch: 'NONE', 'CURSORENDOFSCREEN', 'CURSORTOPOFSCREEN'... [-Werror,-Wswitch] 1779 | switch (eId) | ^~~ 1 error generated. Change-Id: Ibb023ec13ee2c10a0fc0ef7abe1371dbd856e735 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/181167 Reviewed-by: Michael Weghorn <m.wegh...@posteo.de> Tested-by: Jenkins diff --git a/chart2/source/controller/dialogs/DataBrowser.cxx b/chart2/source/controller/dialogs/DataBrowser.cxx index c7b751c944c9..4238396c4d19 100644 --- a/chart2/source/controller/dialogs/DataBrowser.cxx +++ b/chart2/source/controller/dialogs/DataBrowser.cxx @@ -940,7 +940,7 @@ void DataBrowser::MoveLeftColumn() // keep cursor in swapped column if(( 0 < GetCurColumnId() ) && ( GetCurColumnId() <= ColCount() - 1 )) { - Dispatch( BROWSER_CURSORLEFT ); + Dispatch(BrowserDispatchId::CURSORLEFT); } RenewTable(); } @@ -961,7 +961,7 @@ void DataBrowser::MoveRightColumn() // keep cursor in swapped column if( GetCurColumnId() < ColCount() - 1 ) { - Dispatch( BROWSER_CURSORRIGHT ); + Dispatch(BrowserDispatchId::CURSORRIGHT); } RenewTable(); } @@ -982,7 +982,7 @@ void DataBrowser::MoveUpRow() // keep cursor in swapped row if(( 0 < GetCurRow() ) && ( GetCurRow() <= GetRowCount() - 1 )) { - Dispatch( BROWSER_CURSORUP ); + Dispatch(BrowserDispatchId::CURSORUP); } RenewTable(); } @@ -1003,7 +1003,7 @@ void DataBrowser::MoveDownRow() // keep cursor in swapped row if( GetCurRow() < GetRowCount() - 1 ) { - Dispatch( BROWSER_CURSORDOWN ); + Dispatch(BrowserDispatchId::CURSORDOWN); } RenewTable(); } diff --git a/include/svtools/brwbox.hxx b/include/svtools/brwbox.hxx index 80b3636b4b37..65e56a33cf3c 100644 --- a/include/svtools/brwbox.hxx +++ b/include/svtools/brwbox.hxx @@ -82,31 +82,33 @@ namespace o3tl template<> struct typed_flags<BrowserMode> : is_typed_flags<BrowserMode, 0x2cf73b> {}; } -#define BROWSER_NONE 0 -#define BROWSER_SELECT 720 -#define BROWSER_ENHANCESELECTION 722 -#define BROWSER_SELECTDOWN 724 -#define BROWSER_SELECTUP 725 -#define BROWSER_CURSORDOWN 731 -#define BROWSER_CURSORUP 732 -#define BROWSER_CURSORLEFT 733 -#define BROWSER_CURSORRIGHT 734 -#define BROWSER_CURSORPAGEDOWN 735 -#define BROWSER_CURSORPAGEUP 736 -#define BROWSER_CURSORENDOFFILE 741 -#define BROWSER_CURSORTOPOFFILE 742 -#define BROWSER_CURSORENDOFSCREEN 743 -#define BROWSER_CURSORTOPOFSCREEN 744 -#define BROWSER_CURSORHOME 745 -#define BROWSER_CURSOREND 746 -#define BROWSER_SCROLLDOWN 751 -#define BROWSER_SCROLLUP 752 -#define BROWSER_SELECTHOME 753 -#define BROWSER_SELECTEND 754 -#define BROWSER_SELECTCOLUMN 755 -#define BROWSER_MOVECOLUMNLEFT 756 -#define BROWSER_MOVECOLUMNRIGHT 757 - +enum class BrowserDispatchId +{ + NONE, + SELECT, + ENHANCESELECTION, + SELECTDOWN, + SELECTUP, + CURSORDOWN, + CURSORUP, + CURSORLEFT, + CURSORRIGHT, + CURSORPAGEDOWN, + CURSORPAGEUP, + CURSORENDOFFILE, + CURSORTOPOFFILE, + CURSORENDOFSCREEN, + CURSORTOPOFSCREEN, + CURSORHOME, + CURSOREND, + SCROLLDOWN, + SCROLLUP, + SELECTHOME, + SELECTEND, + SELECTCOLUMN, + MOVECOLUMNLEFT, + MOVECOLUMNRIGHT, +}; class BrowseEvent { @@ -593,7 +595,7 @@ public: virtual bool ProcessKey(const KeyEvent& rEvt); virtual void ChildFocusIn(); virtual void ChildFocusOut(); - SAL_DLLPRIVATE void Dispatch( sal_uInt16 nId ); + SAL_DLLPRIVATE void Dispatch(BrowserDispatchId eId); void SetMode( BrowserMode nMode ); BrowserMode GetMode( ) const { return m_nCurrentMode; } diff --git a/include/svtools/editbrowsebox.hxx b/include/svtools/editbrowsebox.hxx index 10110c44f867..1e8f10a36a6e 100644 --- a/include/svtools/editbrowsebox.hxx +++ b/include/svtools/editbrowsebox.hxx @@ -1059,7 +1059,7 @@ namespace svt // late construction virtual void Init(); virtual void RemoveRows(); - virtual void Dispatch(sal_uInt16 nId); + virtual void Dispatch(BrowserDispatchId eId); const CellControllerRef& Controller() const { return aController; } EditBrowseBoxFlags GetBrowserFlags() const { return m_nBrowserFlags; } diff --git a/include/svx/gridctrl.hxx b/include/svx/gridctrl.hxx index c3d7d0c185dd..ac85e232f6b0 100644 --- a/include/svx/gridctrl.hxx +++ b/include/svx/gridctrl.hxx @@ -407,7 +407,7 @@ public: // the options can restrict but not extend the update abilities void setDataSource(const css::uno::Reference< css::sdbc::XRowSet >& rCursor, DbGridControlOptions nOpts = DbGridControlOptions::Insert | DbGridControlOptions::Update | DbGridControlOptions::Delete); - virtual void Dispatch(sal_uInt16 nId) override; + virtual void Dispatch(BrowserDispatchId eId) override; CursorWrapper* getDataSource() const {return m_pDataCursor.get();} const std::vector< std::unique_ptr<DbGridColumn> >& GetColumns() const {return m_aColumns;} diff --git a/svtools/source/brwbox/brwbox2.cxx b/svtools/source/brwbox/brwbox2.cxx index 4e9ddc2cb14e..11ed24ba0d0f 100644 --- a/svtools/source/brwbox/brwbox2.cxx +++ b/svtools/source/brwbox/brwbox2.cxx @@ -1657,65 +1657,110 @@ bool BrowseBox::ProcessKey( const KeyEvent& rEvt ) bool bCtrl = rEvt.GetKeyCode().IsMod1(); bool bAlt = rEvt.GetKeyCode().IsMod2(); - sal_uInt16 nId = BROWSER_NONE; + BrowserDispatchId eId = BrowserDispatchId::NONE; if ( !bAlt && !bCtrl && !bShift ) { switch ( nCode ) { - case KEY_DOWN: nId = BROWSER_CURSORDOWN; break; - case KEY_UP: nId = BROWSER_CURSORUP; break; - case KEY_HOME: nId = BROWSER_CURSORHOME; break; - case KEY_END: nId = BROWSER_CURSOREND; break; + case KEY_DOWN: + eId = BrowserDispatchId::CURSORDOWN; + break; + case KEY_UP: + eId = BrowserDispatchId::CURSORUP; + break; + case KEY_HOME: + eId = BrowserDispatchId::CURSORHOME; + break; + case KEY_END: + eId = BrowserDispatchId::CURSOREND; + break; case KEY_TAB: if ( !bColumnCursor ) break; [[fallthrough]]; - case KEY_RIGHT: nId = BROWSER_CURSORRIGHT; break; - case KEY_LEFT: nId = BROWSER_CURSORLEFT; break; - case KEY_SPACE: nId = BROWSER_SELECT; break; + case KEY_RIGHT: + eId = BrowserDispatchId::CURSORRIGHT; + break; + case KEY_LEFT: + eId = BrowserDispatchId::CURSORLEFT; + break; + case KEY_SPACE: + eId = BrowserDispatchId::SELECT; + break; } - if ( BROWSER_NONE != nId ) + if (BrowserDispatchId::NONE != eId) SetNoSelection(); switch ( nCode ) { - case KEY_PAGEDOWN: nId = BROWSER_CURSORPAGEDOWN; break; - case KEY_PAGEUP: nId = BROWSER_CURSORPAGEUP; break; + case KEY_PAGEDOWN: + eId = BrowserDispatchId::CURSORPAGEDOWN; + break; + case KEY_PAGEUP: + eId = BrowserDispatchId::CURSORPAGEUP; + break; } } if ( !bAlt && !bCtrl && bShift ) switch ( nCode ) { - case KEY_DOWN: nId = BROWSER_SELECTDOWN; break; - case KEY_UP: nId = BROWSER_SELECTUP; break; + case KEY_DOWN: + eId = BrowserDispatchId::SELECTDOWN; + break; + case KEY_UP: + eId = BrowserDispatchId::SELECTUP; + break; case KEY_TAB: if ( !bColumnCursor ) break; - nId = BROWSER_CURSORLEFT; break; - case KEY_HOME: nId = BROWSER_SELECTHOME; break; - case KEY_END: nId = BROWSER_SELECTEND; break; + eId = BrowserDispatchId::CURSORLEFT; + break; + case KEY_HOME: + eId = BrowserDispatchId::SELECTHOME; + break; + case KEY_END: + eId = BrowserDispatchId::SELECTEND; + break; } if ( !bAlt && bCtrl && !bShift ) switch ( nCode ) { - case KEY_DOWN: nId = BROWSER_CURSORDOWN; break; - case KEY_UP: nId = BROWSER_CURSORUP; break; - case KEY_PAGEDOWN: nId = BROWSER_CURSORENDOFFILE; break; - case KEY_PAGEUP: nId = BROWSER_CURSORTOPOFFILE; break; - case KEY_HOME: nId = BROWSER_CURSORTOPOFSCREEN; break; - case KEY_END: nId = BROWSER_CURSORENDOFSCREEN; break; - case KEY_SPACE: nId = BROWSER_ENHANCESELECTION; break; - case KEY_LEFT: nId = BROWSER_MOVECOLUMNLEFT; break; - case KEY_RIGHT: nId = BROWSER_MOVECOLUMNRIGHT; break; + case KEY_DOWN: + eId = BrowserDispatchId::CURSORDOWN; + break; + case KEY_UP: + eId = BrowserDispatchId::CURSORUP; + break; + case KEY_PAGEDOWN: + eId = BrowserDispatchId::CURSORENDOFFILE; + break; + case KEY_PAGEUP: + eId = BrowserDispatchId::CURSORTOPOFFILE; + break; + case KEY_HOME: + eId = BrowserDispatchId::CURSORTOPOFSCREEN; + break; + case KEY_END: + eId = BrowserDispatchId::CURSORENDOFSCREEN; + break; + case KEY_SPACE: + eId = BrowserDispatchId::ENHANCESELECTION; + break; + case KEY_LEFT: + eId = BrowserDispatchId::MOVECOLUMNLEFT; + break; + case KEY_RIGHT: + eId = BrowserDispatchId::MOVECOLUMNRIGHT; + break; } - if ( nId != BROWSER_NONE ) - Dispatch( nId ); - return nId != BROWSER_NONE; + if (eId != BrowserDispatchId::NONE) + Dispatch( eId ); + return eId != BrowserDispatchId::NONE; } void BrowseBox::ChildFocusIn() @@ -1726,27 +1771,27 @@ void BrowseBox::ChildFocusOut() { } -void BrowseBox::Dispatch( sal_uInt16 nId ) +void BrowseBox::Dispatch(BrowserDispatchId eId) { tools::Long nRowsOnPage = pDataWin->GetSizePixel().Height() / GetDataRowHeight(); - switch ( nId ) + switch (eId) { - case BROWSER_SELECTCOLUMN: + case BrowserDispatchId::SELECTCOLUMN: if ( ColCount() ) SelectColumnId( GetCurColumnId() ); break; - case BROWSER_CURSORDOWN: + case BrowserDispatchId::CURSORDOWN: if ( ( GetCurRow() + 1 ) < nRowCount ) GoToRow( GetCurRow() + 1, false ); break; - case BROWSER_CURSORUP: + case BrowserDispatchId::CURSORUP: if ( GetCurRow() > 0 ) GoToRow( GetCurRow() - 1, false ); break; - case BROWSER_SELECTHOME: + case BrowserDispatchId::SELECTHOME: if ( GetRowCount() ) { DoHideCursor(); @@ -1756,7 +1801,7 @@ void BrowseBox::Dispatch( sal_uInt16 nId ) DoShowCursor(); } break; - case BROWSER_SELECTEND: + case BrowserDispatchId::SELECTEND: if ( GetRowCount() ) { DoHideCursor(); @@ -1767,7 +1812,7 @@ void BrowseBox::Dispatch( sal_uInt16 nId ) DoShowCursor(); } break; - case BROWSER_SELECTDOWN: + case BrowserDispatchId::SELECTDOWN: { if ( GetRowCount() && ( GetCurRow() + 1 ) < nRowCount ) { @@ -1785,7 +1830,7 @@ void BrowseBox::Dispatch( sal_uInt16 nId ) ScrollRows( 1 ); break; } - case BROWSER_SELECTUP: + case BrowserDispatchId::SELECTUP: if ( GetRowCount() ) { // deselect the current row, if it isn't the first @@ -1799,13 +1844,13 @@ void BrowseBox::Dispatch( sal_uInt16 nId ) SelectRow( GetCurRow() ); } break; - case BROWSER_CURSORPAGEDOWN: + case BrowserDispatchId::CURSORPAGEDOWN: ScrollRows( nRowsOnPage ); break; - case BROWSER_CURSORPAGEUP: + case BrowserDispatchId::CURSORPAGEUP: ScrollRows( -nRowsOnPage ); break; - case BROWSER_CURSOREND: + case BrowserDispatchId::CURSOREND: if ( bColumnCursor ) { sal_uInt16 nNewId = GetColumnId(ColCount() -1); @@ -1813,10 +1858,10 @@ void BrowseBox::Dispatch( sal_uInt16 nId ) break; } [[fallthrough]]; - case BROWSER_CURSORENDOFFILE: + case BrowserDispatchId::CURSORENDOFFILE: GoToRow( nRowCount - 1, false ); break; - case BROWSER_CURSORRIGHT: + case BrowserDispatchId::CURSORRIGHT: if ( bColumnCursor ) { sal_uInt16 nNewPos = GetColumnPos( GetCurColumnId() ) + 1; @@ -1842,7 +1887,7 @@ void BrowseBox::Dispatch( sal_uInt16 nId ) else ScrollColumns( 1 ); break; - case BROWSER_CURSORHOME: + case BrowserDispatchId::CURSORHOME: if ( bColumnCursor ) { sal_uInt16 nNewId = GetColumnId(1); @@ -1853,10 +1898,10 @@ void BrowseBox::Dispatch( sal_uInt16 nId ) break; } [[fallthrough]]; - case BROWSER_CURSORTOPOFFILE: + case BrowserDispatchId::CURSORTOPOFFILE: GoToRow( 0, false ); break; - case BROWSER_CURSORLEFT: + case BrowserDispatchId::CURSORLEFT: if ( bColumnCursor ) { sal_uInt16 nNewPos = GetColumnPos( GetCurColumnId() ) - 1; @@ -1879,16 +1924,16 @@ void BrowseBox::Dispatch( sal_uInt16 nId ) else ScrollColumns( -1 ); break; - case BROWSER_ENHANCESELECTION: + case BrowserDispatchId::ENHANCESELECTION: if ( GetRowCount() ) SelectRow( GetCurRow(), !IsRowSelected( GetCurRow() ) ); break; - case BROWSER_SELECT: + case BrowserDispatchId::SELECT: if ( GetRowCount() ) SelectRow( GetCurRow(), !IsRowSelected( GetCurRow() ), false ); break; - case BROWSER_MOVECOLUMNLEFT: - case BROWSER_MOVECOLUMNRIGHT: + case BrowserDispatchId::MOVECOLUMNLEFT: + case BrowserDispatchId::MOVECOLUMNRIGHT: { // check if column moving is allowed BrowserHeader* pHeaderBar = pDataWin->pHeaderBar; if ( pHeaderBar && pHeaderBar->IsDragable() ) @@ -1897,12 +1942,12 @@ void BrowseBox::Dispatch( sal_uInt16 nId ) bool bColumnSelected = IsColumnSelected(nColId); sal_uInt16 nNewPos = GetColumnPos(nColId); bool bMoveAllowed = false; - if ( BROWSER_MOVECOLUMNLEFT == nId && nNewPos > 1 ) + if (BrowserDispatchId::MOVECOLUMNLEFT == eId && nNewPos > 1) { --nNewPos; bMoveAllowed = true; } - else if ( BROWSER_MOVECOLUMNRIGHT == nId && nNewPos < (ColCount()-1) ) + else if (BrowserDispatchId::MOVECOLUMNRIGHT == eId && nNewPos < (ColCount() - 1)) { ++nNewPos; bMoveAllowed = true; @@ -1919,6 +1964,8 @@ void BrowseBox::Dispatch( sal_uInt16 nId ) } } break; + default: + break; } } diff --git a/svtools/source/brwbox/editbrowsebox.cxx b/svtools/source/brwbox/editbrowsebox.cxx index a86fe61c22b8..86bc44e4adb0 100644 --- a/svtools/source/brwbox/editbrowsebox.cxx +++ b/svtools/source/brwbox/editbrowsebox.cxx @@ -376,7 +376,7 @@ namespace svt case KEY_RETURN: if (!bCtrl && !bShift && IsTabAllowed(true)) { - Dispatch(BROWSER_CURSORRIGHT); + Dispatch(BrowserDispatchId::CURSORRIGHT); } else BrowseBox::KeyInput(rEvt); @@ -385,7 +385,7 @@ namespace svt if (!bCtrl && !bShift) { if (IsTabAllowed(true)) - Dispatch(BROWSER_CURSORRIGHT); + Dispatch(BrowserDispatchId::CURSORRIGHT); else // do NOT call BrowseBox::KeyInput : this would handle the tab, but we already now // that tab isn't allowed here. So give the Control class a chance @@ -395,7 +395,7 @@ namespace svt else if (!bCtrl && bShift) { if (IsTabAllowed(false)) - Dispatch(BROWSER_CURSORLEFT); + Dispatch(BrowserDispatchId::CURSORLEFT); else // do NOT call BrowseBox::KeyInput : this would handle the tab, but we already now // that tab isn't allowed here. So give the Control class a chance @@ -492,13 +492,13 @@ namespace svt aController->ActivatingMouseEvent(_rEvt, _bUp); } - void EditBrowseBox::Dispatch( sal_uInt16 _nId ) + void EditBrowseBox::Dispatch(BrowserDispatchId eId) { - if ( _nId == BROWSER_ENHANCESELECTION ) + if (eId == BrowserDispatchId::ENHANCESELECTION) { // this is a workaround for the bug in the base class: - // if the row selection is to be extended (which is what BROWSER_ENHANCESELECTION tells us) + // if the row selection is to be extended (which is what BrowserDispatchId::ENHANCESELECTION tells us) // then the base class does not revert any column selections, while, for doing a "simple" - // selection (BROWSER_SELECT), it does. In fact, it does not only revert the col selection then, + // selection (BrowserDispatchId::SELECT), it does. In fact, it does not only revert the col selection then, // but also any current row selections. // This clearly tells me that the both ids are for row selection only - there this behaviour does // make sense. @@ -512,7 +512,7 @@ namespace svt Select(); } } - BrowseBox::Dispatch( _nId ); + BrowseBox::Dispatch(eId); } bool EditBrowseBox::ProcessKey(const KeyEvent& rKeyEvent) @@ -523,22 +523,34 @@ namespace svt bool bAlt = rKeyEvent.GetKeyCode().IsMod2(); bool bLocalSelect = false; bool bNonEditOnly = false; - sal_uInt16 nId = BROWSER_NONE; + BrowserDispatchId eId = BrowserDispatchId::NONE; if (!bAlt && !bCtrl && !bShift ) switch ( nCode ) { - case KEY_DOWN: nId = BROWSER_CURSORDOWN; break; - case KEY_UP: nId = BROWSER_CURSORUP; break; - case KEY_PAGEDOWN: nId = BROWSER_CURSORPAGEDOWN; break; - case KEY_PAGEUP: nId = BROWSER_CURSORPAGEUP; break; - case KEY_HOME: nId = BROWSER_CURSORHOME; break; - case KEY_END: nId = BROWSER_CURSOREND; break; + case KEY_DOWN: + eId = BrowserDispatchId::CURSORDOWN; + break; + case KEY_UP: + eId = BrowserDispatchId::CURSORUP; + break; + case KEY_PAGEDOWN: + eId = BrowserDispatchId::CURSORPAGEDOWN; + break; + case KEY_PAGEUP: + eId = BrowserDispatchId::CURSORPAGEUP; + break; + case KEY_HOME: + eId = BrowserDispatchId::CURSORHOME; + break; + case KEY_END: + eId = BrowserDispatchId::CURSOREND; + break; case KEY_TAB: // ask if traveling to the next cell is allowed if (IsTabAllowed(true)) - nId = BROWSER_CURSORRIGHT; + eId = BrowserDispatchId::CURSORRIGHT; break; case KEY_RETURN: @@ -552,56 +564,87 @@ namespace svt } // ask if traveling to the next cell is allowed if (IsTabAllowed(true)) - nId = BROWSER_CURSORRIGHT; + eId = BrowserDispatchId::CURSORRIGHT; break; - case KEY_RIGHT: nId = BROWSER_CURSORRIGHT; break; - case KEY_LEFT: nId = BROWSER_CURSORLEFT; break; - case KEY_SPACE: nId = BROWSER_SELECT; bNonEditOnly = bLocalSelect = true; break; + case KEY_RIGHT: + eId = BrowserDispatchId::CURSORRIGHT; + break; + case KEY_LEFT: + eId = BrowserDispatchId::CURSORLEFT; + break; + case KEY_SPACE: + eId = BrowserDispatchId::SELECT; + bNonEditOnly = bLocalSelect = true; + break; } if ( !bAlt && !bCtrl && bShift ) switch ( nCode ) { - case KEY_DOWN: nId = BROWSER_SELECTDOWN; bLocalSelect = true; break; - case KEY_UP: nId = BROWSER_SELECTUP; bLocalSelect = true; break; - case KEY_HOME: nId = BROWSER_SELECTHOME; bLocalSelect = true; break; - case KEY_END: nId = BROWSER_SELECTEND; bLocalSelect = true; break; + case KEY_DOWN: + eId = BrowserDispatchId::SELECTDOWN; + bLocalSelect = true; + break; + case KEY_UP: + eId = BrowserDispatchId::SELECTUP; + bLocalSelect = true; + break; + case KEY_HOME: + eId = BrowserDispatchId::SELECTHOME; + bLocalSelect = true; + break; + case KEY_END: + eId = BrowserDispatchId::SELECTEND; + bLocalSelect = true; + break; case KEY_TAB: if (IsTabAllowed(false)) - nId = BROWSER_CURSORLEFT; + eId = BrowserDispatchId::CURSORLEFT; break; } if ( !bAlt && bCtrl && bShift ) switch ( nCode ) { - case KEY_SPACE: nId = BROWSER_SELECTCOLUMN; bLocalSelect = true; break; + case KEY_SPACE: + eId = BrowserDispatchId::SELECTCOLUMN; + bLocalSelect = true; + break; } if ( !bAlt && bCtrl && !bShift ) switch ( nCode ) { - case KEY_DOWN: nId = BROWSER_SCROLLUP; break; - case KEY_UP: nId = BROWSER_SCROLLDOWN; break; - case KEY_PAGEDOWN: nId = BROWSER_CURSORENDOFFILE; break; - case KEY_PAGEUP: nId = BROWSER_CURSORTOPOFFILE; break; - case KEY_HOME: nId = BROWSER_CURSORTOPOFSCREEN; break; - case KEY_END: nId = BROWSER_CURSORENDOFSCREEN; break; - case KEY_SPACE: nId = BROWSER_ENHANCESELECTION; bLocalSelect = true; break; + case KEY_DOWN: + eId = BrowserDispatchId::SCROLLUP; + break; + case KEY_UP: + eId = BrowserDispatchId::SCROLLDOWN; + break; + case KEY_PAGEDOWN: + eId = BrowserDispatchId::CURSORENDOFFILE; + break; + case KEY_PAGEUP: + eId = BrowserDispatchId::CURSORTOPOFFILE; + break; + case KEY_HOME: + eId = BrowserDispatchId::CURSORTOPOFSCREEN; + break; + case KEY_END: + eId = BrowserDispatchId::CURSORENDOFSCREEN; + break; + case KEY_SPACE: + eId = BrowserDispatchId::ENHANCESELECTION; + bLocalSelect = true; + break; } - - if ( ( nId != BROWSER_NONE ) - && ( !IsEditing() - || ( !bNonEditOnly - && aController->MoveAllowed(rKeyEvent) - ) - ) - ) + if ((eId != BrowserDispatchId::NONE) + && (!IsEditing() || (!bNonEditOnly && aController->MoveAllowed(rKeyEvent)))) { - if (nId == BROWSER_SELECT || BROWSER_SELECTCOLUMN == nId ) + if (eId == BrowserDispatchId::SELECT || BrowserDispatchId::SELECTCOLUMN == eId) { // save the cell content (if necessary) if (IsEditing() && aController->IsValueChangedFromSaved() && !SaveModified()) @@ -613,7 +656,7 @@ namespace svt } } - Dispatch(nId); + Dispatch(eId); if (bLocalSelect && (GetSelectRowCount() || GetSelection() != nullptr)) DeactivateCell(); diff --git a/svx/source/fmcomp/gridctrl.cxx b/svx/source/fmcomp/gridctrl.cxx index e716d9eeb0ab..942d7afb84cc 100644 --- a/svx/source/fmcomp/gridctrl.cxx +++ b/svx/source/fmcomp/gridctrl.cxx @@ -2749,9 +2749,9 @@ void DbGridControl::CellModified() } } -void DbGridControl::Dispatch(sal_uInt16 nId) +void DbGridControl::Dispatch(BrowserDispatchId eId) { - if (nId == BROWSER_CURSORENDOFFILE) + if (eId == BrowserDispatchId::CURSORENDOFFILE) { if (m_nOptions & DbGridControlOptions::Insert) AppendNew(); @@ -2759,7 +2759,7 @@ void DbGridControl::Dispatch(sal_uInt16 nId) MoveToLast(); } else - EditBrowseBox::Dispatch(nId); + EditBrowseBox::Dispatch(eId); } void DbGridControl::Undo()