diff options
author | Noel Grandin <noel@peralex.com> | 2015-05-12 15:30:22 +0200 |
---|---|---|
committer | Noel Grandin <noel@peralex.com> | 2015-05-13 09:25:50 +0200 |
commit | facc91ab4a3f25b3290408c7083ed4c09dd8d759 (patch) | |
tree | 65062b866ac520a9f4078886ac04a20e0e492733 /vcl | |
parent | 96096e27457454219c6621b060e89319ceaca23c (diff) |
convert FLOATWIN_POPUPMODE constants to scoped enum
Change-Id: I744d430ef6a506977eb10b892582c8969ec27524
Diffstat (limited to 'vcl')
-rw-r--r-- | vcl/inc/salmenu.hxx | 2 | ||||
-rw-r--r-- | vcl/source/app/salvtables.cxx | 2 | ||||
-rw-r--r-- | vcl/source/control/ilstbox.cxx | 4 | ||||
-rw-r--r-- | vcl/source/window/dockmgr.cxx | 16 | ||||
-rw-r--r-- | vcl/source/window/floatwin.cxx | 123 | ||||
-rw-r--r-- | vcl/source/window/menu.cxx | 32 | ||||
-rw-r--r-- | vcl/source/window/menubarwindow.cxx | 2 | ||||
-rw-r--r-- | vcl/source/window/menufloatingwindow.cxx | 10 | ||||
-rw-r--r-- | vcl/source/window/winproc.cxx | 18 | ||||
-rw-r--r-- | vcl/unx/generic/window/salframe.cxx | 6 | ||||
-rw-r--r-- | vcl/unx/gtk/window/gtksalframe.cxx | 2 |
11 files changed, 109 insertions, 108 deletions
diff --git a/vcl/inc/salmenu.hxx b/vcl/inc/salmenu.hxx index ee9bdb76a6f5..aaea364f30b2 100644 --- a/vcl/inc/salmenu.hxx +++ b/vcl/inc/salmenu.hxx @@ -77,7 +77,7 @@ public: virtual void SetItemImage( unsigned nPos, SalMenuItem* pSalMenuItem, const Image& rImage ) = 0; virtual void SetAccelerator( unsigned nPos, SalMenuItem* pSalMenuItem, const vcl::KeyCode& rKeyCode, const OUString& rKeyName ) = 0; virtual void GetSystemMenuData( SystemMenuData* pData ) = 0; - virtual bool ShowNativePopupMenu(FloatingWindow * pWin, const Rectangle& rRect, sal_uLong nFlags); + virtual bool ShowNativePopupMenu(FloatingWindow * pWin, const Rectangle& rRect, FloatWinPopupFlags nFlags); virtual bool AddMenuBarButton( const SalMenuButtonItem& ); // return false if not implemented or failure virtual void RemoveMenuBarButton( sal_uInt16 nId ); diff --git a/vcl/source/app/salvtables.cxx b/vcl/source/app/salvtables.cxx index e05b73480148..c51f4f60d954 100644 --- a/vcl/source/app/salvtables.cxx +++ b/vcl/source/app/salvtables.cxx @@ -130,7 +130,7 @@ SalMenu::~SalMenu() { } -bool SalMenu::ShowNativePopupMenu(FloatingWindow *, const Rectangle&, sal_uLong ) +bool SalMenu::ShowNativePopupMenu(FloatingWindow *, const Rectangle&, FloatWinPopupFlags ) { return false; } diff --git a/vcl/source/control/ilstbox.cxx b/vcl/source/control/ilstbox.cxx index f1b9c23e4476..bd1935cf0577 100644 --- a/vcl/source/control/ilstbox.cxx +++ b/vcl/source/control/ilstbox.cxx @@ -2973,7 +2973,7 @@ void ImplListBoxFloatingWindow::setPosSizePixel( long nX, long nY, long nWidth, aPos.Y() = nY; sal_uInt16 nIndex; - SetPosPixel( ImplCalcPos( this, Rectangle( aPos, GetParent()->GetSizePixel() ), FLOATWIN_POPUPMODE_DOWN, nIndex ) ); + SetPosPixel( ImplCalcPos( this, Rectangle( aPos, GetParent()->GetSizePixel() ), FloatWinPopupFlags::Down, nIndex ) ); } // if( !IsReallyVisible() ) @@ -3105,7 +3105,7 @@ void ImplListBoxFloatingWindow::StartFloat( bool bStartTracking ) pGrandparentOutDev->ReMirror( aRect ); // mouse-button right: close the List-Box-Float-win and don't stop the handling fdo#84795 - StartPopupMode( aRect, FLOATWIN_POPUPMODE_DOWN | FLOATWIN_POPUPMODE_ALLMOUSEBUTTONCLOSE ); + StartPopupMode( aRect, FloatWinPopupFlags::Down | FloatWinPopupFlags::AllMouseButtonClose ); if( nPos != LISTBOX_ENTRY_NOTFOUND ) mpImplLB->ShowProminentEntry( nPos ); diff --git a/vcl/source/window/dockmgr.cxx b/vcl/source/window/dockmgr.cxx index 684f444fe40d..2d8d937a9669 100644 --- a/vcl/source/window/dockmgr.cxx +++ b/vcl/source/window/dockmgr.cxx @@ -368,7 +368,7 @@ void DockingManager::SetFloatingMode( const vcl::Window *pWindow, bool bFloating pWrapper->SetFloatingMode( bFloating ); } -void DockingManager::StartPopupMode( ToolBox *pParentToolBox, const vcl::Window *pWindow, sal_uLong nFlags ) +void DockingManager::StartPopupMode( ToolBox *pParentToolBox, const vcl::Window *pWindow, FloatWinPopupFlags nFlags ) { ImplDockingWindowWrapper* pWrapper = GetDockingWindowWrapper( pWindow ); if( pWrapper ) @@ -377,10 +377,10 @@ void DockingManager::StartPopupMode( ToolBox *pParentToolBox, const vcl::Window void DockingManager::StartPopupMode( ToolBox *pParentToolBox, const vcl::Window *pWindow ) { - StartPopupMode( pParentToolBox, pWindow, FLOATWIN_POPUPMODE_ALLOWTEAROFF | - FLOATWIN_POPUPMODE_NOFOCUSCLOSE | - FLOATWIN_POPUPMODE_ALLMOUSEBUTTONCLOSE | - FLOATWIN_POPUPMODE_NOMOUSEUPCLOSE ); + StartPopupMode( pParentToolBox, pWindow, FloatWinPopupFlags::AllowTearOff | + FloatWinPopupFlags::NoFocusClose | + FloatWinPopupFlags::AllMouseButtonClose | + FloatWinPopupFlags::NoMouseUpClose ); } bool DockingManager::IsInPopupMode( const vcl::Window *pWindow ) @@ -1098,7 +1098,7 @@ void ImplDockingWindowWrapper::ShowTitleButton( sal_uInt16 nButton, bool bVisibl } } -void ImplDockingWindowWrapper::StartPopupMode( ToolBox *pParentToolBox, sal_uLong nFlags ) +void ImplDockingWindowWrapper::StartPopupMode( ToolBox *pParentToolBox, FloatWinPopupFlags nFlags ) { // do nothing if window is floating if( IsFloatingMode() ) @@ -1113,7 +1113,7 @@ void ImplDockingWindowWrapper::StartPopupMode( ToolBox *pParentToolBox, sal_uLon mpOldBorderWin = NULL; // no border window found // the new parent for popup mode - VclPtrInstance<ImplPopupFloatWin> pWin( mpParent, this, (nFlags & FLOATWIN_POPUPMODE_ALLOWTEAROFF) != 0 ); + VclPtrInstance<ImplPopupFloatWin> pWin( mpParent, this, bool(nFlags & FloatWinPopupFlags::AllowTearOff) ); pWin->SetPopupModeEndHdl( LINK( this, ImplDockingWindowWrapper, PopupModeEnd ) ); pWin->SetText( GetWindow()->GetText() ); @@ -1146,7 +1146,7 @@ void ImplDockingWindowWrapper::StartPopupMode( ToolBox *pParentToolBox, sal_uLon // if the subtoolbar was opened via keyboard make sure that key events // will go into subtoolbar if( pParentToolBox->IsKeyEvent() ) - nFlags |= FLOATWIN_POPUPMODE_GRABFOCUS; + nFlags |= FloatWinPopupFlags::GrabFocus; mpFloatWin->StartPopupMode( pParentToolBox, nFlags ); GetWindow()->Show(); diff --git a/vcl/source/window/floatwin.cxx b/vcl/source/window/floatwin.cxx index 0e2f5cc459e3..f66f92e8cc58 100644 --- a/vcl/source/window/floatwin.cxx +++ b/vcl/source/window/floatwin.cxx @@ -123,7 +123,7 @@ void FloatingWindow::ImplInit( vcl::Window* pParent, WinBits nStyle ) mnPostId = 0; mnTitle = (nStyle & (WB_MOVEABLE | WB_POPUP)) ? FLOATWIN_TITLE_NORMAL : FLOATWIN_TITLE_NONE; mnOldTitle = mnTitle; - mnPopupModeFlags = 0; + mnPopupModeFlags = FloatWinPopupFlags::NONE; mbInPopupMode = false; mbPopupMode = false; mbPopupModeCanceled = false; @@ -159,7 +159,7 @@ FloatingWindow::FloatingWindow(vcl::Window* pParent, const OString& rID, const O , mpFirstPopupModeWin(0) , mpImplData(0) , mnPostId(0) - , mnPopupModeFlags(0) + , mnPopupModeFlags(FloatWinPopupFlags::NONE) , mnTitle(0) , mnOldTitle(0) , mbInPopupMode(false) @@ -218,13 +218,13 @@ void FloatingWindow::dispose() SystemWindow::dispose(); } -Point FloatingWindow::CalcFloatingPosition( vcl::Window* pWindow, const Rectangle& rRect, sal_uLong nFlags, sal_uInt16& rArrangeIndex ) +Point FloatingWindow::CalcFloatingPosition( vcl::Window* pWindow, const Rectangle& rRect, FloatWinPopupFlags nFlags, sal_uInt16& rArrangeIndex ) { return ImplCalcPos( pWindow, rRect, nFlags, rArrangeIndex ); } Point FloatingWindow::ImplCalcPos( vcl::Window* pWindow, - const Rectangle& rRect, sal_uLong nFlags, + const Rectangle& rRect, FloatWinPopupFlags nFlags, sal_uInt16& rArrangeIndex ) { // get window position @@ -254,43 +254,43 @@ Point FloatingWindow::ImplCalcPos( vcl::Window* pWindow, aScreenRect = Application::GetScreenPosSizePixel( Application::GetBestScreen( bRTL ? devRectRTL : devRect ) ); - sal_uInt16 nArrangeAry[5]; - sal_uInt16 nArrangeIndex; - Point e1,e2; // the common edge between the item rect and the floating window + FloatWinPopupFlags nArrangeAry[5]; + sal_uInt16 nArrangeIndex; + Point e1,e2; // the common edge between the item rect and the floating window - if ( nFlags & FLOATWIN_POPUPMODE_LEFT ) + if ( nFlags & FloatWinPopupFlags::Left ) { - nArrangeAry[0] = FLOATWIN_POPUPMODE_LEFT; - nArrangeAry[1] = FLOATWIN_POPUPMODE_RIGHT; - nArrangeAry[2] = FLOATWIN_POPUPMODE_UP; - nArrangeAry[3] = FLOATWIN_POPUPMODE_DOWN; - nArrangeAry[4] = FLOATWIN_POPUPMODE_LEFT; + nArrangeAry[0] = FloatWinPopupFlags::Left; + nArrangeAry[1] = FloatWinPopupFlags::Right; + nArrangeAry[2] = FloatWinPopupFlags::Up; + nArrangeAry[3] = FloatWinPopupFlags::Down; + nArrangeAry[4] = FloatWinPopupFlags::Left; } - else if ( nFlags & FLOATWIN_POPUPMODE_RIGHT ) + else if ( nFlags & FloatWinPopupFlags::Right ) { - nArrangeAry[0] = FLOATWIN_POPUPMODE_RIGHT; - nArrangeAry[1] = FLOATWIN_POPUPMODE_LEFT; - nArrangeAry[2] = FLOATWIN_POPUPMODE_UP; - nArrangeAry[3] = FLOATWIN_POPUPMODE_DOWN; - nArrangeAry[4] = FLOATWIN_POPUPMODE_RIGHT; + nArrangeAry[0] = FloatWinPopupFlags::Right; + nArrangeAry[1] = FloatWinPopupFlags::Left; + nArrangeAry[2] = FloatWinPopupFlags::Up; + nArrangeAry[3] = FloatWinPopupFlags::Down; + nArrangeAry[4] = FloatWinPopupFlags::Right; } - else if ( nFlags & FLOATWIN_POPUPMODE_UP ) + else if ( nFlags & FloatWinPopupFlags::Up ) { - nArrangeAry[0] = FLOATWIN_POPUPMODE_UP; - nArrangeAry[1] = FLOATWIN_POPUPMODE_DOWN; - nArrangeAry[2] = FLOATWIN_POPUPMODE_RIGHT; - nArrangeAry[3] = FLOATWIN_POPUPMODE_LEFT; - nArrangeAry[4] = FLOATWIN_POPUPMODE_UP; + nArrangeAry[0] = FloatWinPopupFlags::Up; + nArrangeAry[1] = FloatWinPopupFlags::Down; + nArrangeAry[2] = FloatWinPopupFlags::Right; + nArrangeAry[3] = FloatWinPopupFlags::Left; + nArrangeAry[4] = FloatWinPopupFlags::Up; } else { - nArrangeAry[0] = FLOATWIN_POPUPMODE_DOWN; - nArrangeAry[1] = FLOATWIN_POPUPMODE_UP; - nArrangeAry[2] = FLOATWIN_POPUPMODE_RIGHT; - nArrangeAry[3] = FLOATWIN_POPUPMODE_LEFT; - nArrangeAry[4] = FLOATWIN_POPUPMODE_DOWN; + nArrangeAry[0] = FloatWinPopupFlags::Down; + nArrangeAry[1] = FloatWinPopupFlags::Up; + nArrangeAry[2] = FloatWinPopupFlags::Right; + nArrangeAry[3] = FloatWinPopupFlags::Left; + nArrangeAry[4] = FloatWinPopupFlags::Down; } - if ( nFlags & FLOATWIN_POPUPMODE_NOAUTOARRANGE ) + if ( nFlags & FloatWinPopupFlags::NoAutoArrange ) nArrangeIndex = 4; else nArrangeIndex = 0; @@ -301,7 +301,7 @@ Point FloatingWindow::ImplCalcPos( vcl::Window* pWindow, switch ( nArrangeAry[nArrangeIndex] ) { - case FLOATWIN_POPUPMODE_LEFT: + case FloatWinPopupFlags::Left: aPos.X() = devRect.Left()-aSize.Width()+1; aPos.Y() = devRect.Top(); aPos.Y() -= pWindow->mpWindowImpl->mnTopBorder; @@ -326,7 +326,7 @@ Point FloatingWindow::ImplCalcPos( vcl::Window* pWindow, e2.Y()--; } break; - case FLOATWIN_POPUPMODE_RIGHT: + case FloatWinPopupFlags::Right: aPos = devRect.TopRight(); aPos.Y() -= pWindow->mpWindowImpl->mnTopBorder; if( bRTL ) // --- RTL --- we're comparing screen coordinates here @@ -350,7 +350,7 @@ Point FloatingWindow::ImplCalcPos( vcl::Window* pWindow, e2.Y()--; } break; - case FLOATWIN_POPUPMODE_UP: + case FloatWinPopupFlags::Up: aPos.X() = devRect.Left(); aPos.Y() = devRect.Top()-aSize.Height()+1; if ( aPos.Y() < aScreenRect.Top() ) @@ -366,7 +366,7 @@ Point FloatingWindow::ImplCalcPos( vcl::Window* pWindow, e2.X()--; } break; - case FLOATWIN_POPUPMODE_DOWN: + case FloatWinPopupFlags::Down: aPos = devRect.BottomLeft(); if ( aPos.Y()+aSize.Height() > aScreenRect.Bottom() ) bBreak = false; @@ -381,13 +381,14 @@ Point FloatingWindow::ImplCalcPos( vcl::Window* pWindow, e2.X()--; } break; + default: break; } // adjust if necessary - if ( bBreak && !(nFlags & FLOATWIN_POPUPMODE_NOAUTOARRANGE) ) + if ( bBreak && !(nFlags & FloatWinPopupFlags::NoAutoArrange) ) { - if ( (nArrangeAry[nArrangeIndex] == FLOATWIN_POPUPMODE_LEFT) || - (nArrangeAry[nArrangeIndex] == FLOATWIN_POPUPMODE_RIGHT) ) + if ( (nArrangeAry[nArrangeIndex] == FloatWinPopupFlags::Left) || + (nArrangeAry[nArrangeIndex] == FloatWinPopupFlags::Right) ) { if ( aPos.Y()+aSize.Height() > aScreenRect.Bottom() ) { @@ -496,7 +497,7 @@ FloatingWindow* FloatingWindow::ImplFindLastLevelFloat() do { - if ( pWin->GetPopupModeFlags() & FLOATWIN_POPUPMODE_NEWLEVEL ) + if ( pWin->GetPopupModeFlags() & FloatWinPopupFlags::NewLevel ) pLastFoundWin = pWin; pWin = pWin->mpNextFloat; @@ -526,7 +527,7 @@ IMPL_LINK_NOARG(FloatingWindow, ImplEndPopupModeHdl) { VclPtr<FloatingWindow> pThis(this); mnPostId = 0; - mnPopupModeFlags = 0; + mnPopupModeFlags = FloatWinPopupFlags::NONE; mbPopupMode = false; PopupModeEnd(); return 0; @@ -618,7 +619,7 @@ void FloatingWindow::SetTitleType( sal_uInt16 nTitle ) } } -void FloatingWindow::StartPopupMode( const Rectangle& rRect, sal_uLong nFlags ) +void FloatingWindow::StartPopupMode( const Rectangle& rRect, FloatWinPopupFlags nFlags ) { // avoid flickering if ( IsVisible() ) @@ -631,19 +632,19 @@ void FloatingWindow::StartPopupMode( const Rectangle& rRect, sal_uLong nFlags ) mnOldTitle = mnTitle; if ( ( mpWindowImpl->mnStyle & WB_POPUP ) && !GetText().isEmpty() ) SetTitleType( FLOATWIN_TITLE_POPUP ); - else if ( nFlags & FLOATWIN_POPUPMODE_ALLOWTEAROFF ) + else if ( nFlags & FloatWinPopupFlags::AllowTearOff ) SetTitleType( FLOATWIN_TITLE_TEAROFF ); else SetTitleType( FLOATWIN_TITLE_NONE ); // avoid close on focus change for decorated floating windows only if( mpWindowImpl->mbFrame && (GetStyle() & WB_MOVEABLE) ) - nFlags |= FLOATWIN_POPUPMODE_NOAPPFOCUSCLOSE; + nFlags |= FloatWinPopupFlags::NoAppFocusClose; // #102010# For debugging Accessibility static const char* pEnv = getenv("SAL_FLOATWIN_NOAPPFOCUSCLOSE" ); if( pEnv && *pEnv ) - nFlags |= FLOATWIN_POPUPMODE_NOAPPFOCUSCLOSE; + nFlags |= FloatWinPopupFlags::NoAppFocusClose; // compute window position according to flags and arrangement sal_uInt16 nArrangeIndex; @@ -691,7 +692,7 @@ void FloatingWindow::StartPopupMode( const Rectangle& rRect, sal_uLong nFlags ) ImplSVData* pSVData = ImplGetSVData(); mpNextFloat = pSVData->maWinData.mpFirstFloat; pSVData->maWinData.mpFirstFloat = this; - if( nFlags & FLOATWIN_POPUPMODE_GRABFOCUS ) + if( nFlags & FloatWinPopupFlags::GrabFocus ) { // force key input even without focus (useful for menus) mbGrabFocus = true; @@ -699,7 +700,7 @@ void FloatingWindow::StartPopupMode( const Rectangle& rRect, sal_uLong nFlags ) Show( true, SHOW_NOACTIVATE ); } -void FloatingWindow::StartPopupMode( ToolBox* pBox, sal_uLong nFlags ) +void FloatingWindow::StartPopupMode( ToolBox* pBox, FloatWinPopupFlags nFlags ) { // get selected button sal_uInt16 nItemId = pBox->GetDownItemId(); @@ -717,27 +718,27 @@ void FloatingWindow::StartPopupMode( ToolBox* pBox, sal_uLong nFlags ) aRect.SetPos( aPos ); nFlags |= - FLOATWIN_POPUPMODE_NOFOCUSCLOSE | -// FLOATWIN_POPUPMODE_NOMOUSECLOSE | - FLOATWIN_POPUPMODE_ALLMOUSEBUTTONCLOSE | -// FLOATWIN_POPUPMODE_NOMOUSERECTCLOSE | // #105968# floating toolboxes should close when clicked in (parent's) float rect - FLOATWIN_POPUPMODE_NOMOUSEUPCLOSE; -// | FLOATWIN_POPUPMODE_NOAPPFOCUSCLOSE; + FloatWinPopupFlags::NoFocusClose | +// FloatWinPopupFlags::NoMouseClose | + FloatWinPopupFlags::AllMouseButtonClose | +// FloatWinPopupFlags::NoMouseRectClose | // #105968# floating toolboxes should close when clicked in (parent's) float rect + FloatWinPopupFlags::NoMouseUpClose; +// | FloatWinPopupFlags::NoAppFocusClose; /* - * FLOATWIN_POPUPMODE_NOKEYCLOSE | + * FloatWinPopupFlags::NoKeyClose | * don't set since it disables closing floaters with escape */ // set Flags for positioning - if ( !(nFlags & (FLOATWIN_POPUPMODE_DOWN | FLOATWIN_POPUPMODE_UP | - FLOATWIN_POPUPMODE_LEFT | FLOATWIN_POPUPMODE_RIGHT | - FLOATWIN_POPUPMODE_NOAUTOARRANGE)) ) + if ( !(nFlags & (FloatWinPopupFlags::Down | FloatWinPopupFlags::Up | + FloatWinPopupFlags::Left | FloatWinPopupFlags::Right | + FloatWinPopupFlags::NoAutoArrange)) ) { if ( pBox->IsHorizontal() ) - nFlags |= FLOATWIN_POPUPMODE_DOWN; + nFlags |= FloatWinPopupFlags::Down; else - nFlags |= FLOATWIN_POPUPMODE_RIGHT; + nFlags |= FloatWinPopupFlags::Right; } // start FloatingMode @@ -761,11 +762,11 @@ void FloatingWindow::ImplEndPopupMode( sal_uInt16 nFlags, sal_uLong nFocusId ) pSVData->maWinData.mpFirstFloat = mpNextFloat; mpNextFloat = NULL; - sal_uLong nPopupModeFlags = mnPopupModeFlags; + FloatWinPopupFlags nPopupModeFlags = mnPopupModeFlags; // hide window again if it was not deleted if ( !(nFlags & FLOATWIN_POPUPMODEEND_TEAROFF) || - !(nPopupModeFlags & FLOATWIN_POPUPMODE_ALLOWTEAROFF) ) + !(nPopupModeFlags & FloatWinPopupFlags::AllowTearOff) ) { Show( false, SHOW_NOFOCUSCHANGE ); @@ -804,7 +805,7 @@ void FloatingWindow::ImplEndPopupMode( sal_uInt16 nFlags, sal_uLong nFocusId ) // close all other windows depending on parameter if ( nFlags & FLOATWIN_POPUPMODEEND_CLOSEALL ) { - if ( !(nPopupModeFlags & FLOATWIN_POPUPMODE_NEWLEVEL) ) + if ( !(nPopupModeFlags & FloatWinPopupFlags::NewLevel) ) { if ( pSVData->maWinData.mpFirstFloat ) { diff --git a/vcl/source/window/menu.cxx b/vcl/source/window/menu.cxx index 2e6d8c6a3dcb..762eaa264064 100644 --- a/vcl/source/window/menu.cxx +++ b/vcl/source/window/menu.cxx @@ -2811,28 +2811,28 @@ sal_uInt16 PopupMenu::Execute( vcl::Window* pExecWindow, const Rectangle& rRect, { ENSURE_OR_RETURN( pExecWindow, "PopupMenu::Execute: need a non-NULL window!", 0 ); - sal_uLong nPopupModeFlags = 0; + FloatWinPopupFlags nPopupModeFlags = FloatWinPopupFlags::NONE; if ( nFlags & POPUPMENU_EXECUTE_DOWN ) - nPopupModeFlags = FLOATWIN_POPUPMODE_DOWN; + nPopupModeFlags = FloatWinPopupFlags::Down; else if ( nFlags & POPUPMENU_EXECUTE_UP ) - nPopupModeFlags = FLOATWIN_POPUPMODE_UP; + nPopupModeFlags = FloatWinPopupFlags::Up; else if ( nFlags & POPUPMENU_EXECUTE_LEFT ) - nPopupModeFlags = FLOATWIN_POPUPMODE_LEFT; + nPopupModeFlags = FloatWinPopupFlags::Left; else if ( nFlags & POPUPMENU_EXECUTE_RIGHT ) - nPopupModeFlags = FLOATWIN_POPUPMODE_RIGHT; + nPopupModeFlags = FloatWinPopupFlags::Right; else - nPopupModeFlags = FLOATWIN_POPUPMODE_DOWN; + nPopupModeFlags = FloatWinPopupFlags::Down; if (nFlags & POPUPMENU_NOMOUSEUPCLOSE ) // allow popup menus to stay open on mouse button up - nPopupModeFlags |= FLOATWIN_POPUPMODE_NOMOUSEUPCLOSE; // useful if the menu was opened on mousebutton down (eg toolbox configuration) + nPopupModeFlags |= FloatWinPopupFlags::NoMouseUpClose; // useful if the menu was opened on mousebutton down (eg toolbox configuration) if (nFlags & POPUPMENU_NOHORZ_PLACEMENT) - nPopupModeFlags |= FLOATWIN_POPUPMODE_NOHORZPLACEMENT; + nPopupModeFlags |= FloatWinPopupFlags::NoHorzPlacement; return ImplExecute( pExecWindow, rRect, nPopupModeFlags, 0, false ); } -sal_uInt16 PopupMenu::ImplExecute( vcl::Window* pW, const Rectangle& rRect, sal_uLong nPopupModeFlags, Menu* pSFrom, bool bPreSelectFirst ) +sal_uInt16 PopupMenu::ImplExecute( vcl::Window* pW, const Rectangle& rRect, FloatWinPopupFlags nPopupModeFlags, Menu* pSFrom, bool bPreSelectFirst ) { if ( !pSFrom && ( PopupMenu::IsInExecute() || !GetItemCount() ) ) return 0; @@ -2866,11 +2866,11 @@ sal_uInt16 PopupMenu::ImplExecute( vcl::Window* pW, const Rectangle& rRect, sal_ WinBits nStyle = WB_BORDER; if (bRealExecute) - nPopupModeFlags |= FLOATWIN_POPUPMODE_NEWLEVEL; - nPopupModeFlags |= FLOATWIN_POPUPMODE_NOKEYCLOSE | FLOATWIN_POPUPMODE_ALLMOUSEBUTTONCLOSE; + nPopupModeFlags |= FloatWinPopupFlags::NewLevel; + nPopupModeFlags |= FloatWinPopupFlags::NoKeyClose | FloatWinPopupFlags::AllMouseButtonClose; // could be useful during debugging. - // nPopupModeFlags |= FLOATWIN_POPUPMODE_NOFOCUSCLOSE; + // nPopupModeFlags |= FloatWinPopupFlags::NoFocusClose; ImplDelData aDelData; pW->ImplAddDel( &aDelData ); @@ -2952,7 +2952,7 @@ sal_uInt16 PopupMenu::ImplExecute( vcl::Window* pW, const Rectangle& rRect, sal_ //mode is to place it somewhere it will fit. e.g. above, left, right. For //some cases, e.g. menubars, it's desirable to limit the options to //above/below and force the menu to scroll if it won't fit - if (nPopupModeFlags & FLOATWIN_POPUPMODE_NOHORZPLACEMENT) + if (nPopupModeFlags & FloatWinPopupFlags::NoHorzPlacement) { vcl::Window* pRef = pWin; if ( pRef->GetParent() ) @@ -2984,13 +2984,13 @@ sal_uInt16 PopupMenu::ImplExecute( vcl::Window* pW, const Rectangle& rRect, sal_ // #102158# menus must never grab the focus, otherwise // they will be closed immediately // from now on focus grabbing is only prohibited automatically if - // FLOATWIN_POPUPMODE_GRABFOCUS was set (which is done below), because some + // FloatWinPopupFlags::GrabFocus was set (which is done below), because some // floaters (like floating toolboxes) may grab the focus // pWin->GrabFocus(); if ( GetItemCount() ) { SalMenu* pMenu = ImplGetSalMenu(); - if( pMenu && bRealExecute && pMenu->ShowNativePopupMenu( pWin, aRect, nPopupModeFlags | FLOATWIN_POPUPMODE_GRABFOCUS ) ) + if( pMenu && bRealExecute && pMenu->ShowNativePopupMenu( pWin, aRect, nPopupModeFlags | FloatWinPopupFlags::GrabFocus ) ) { pWin->StopExecute(0); pWin->doShutdown(); @@ -3000,7 +3000,7 @@ sal_uInt16 PopupMenu::ImplExecute( vcl::Window* pW, const Rectangle& rRect, sal_ } else { - pWin->StartPopupMode( aRect, nPopupModeFlags | FLOATWIN_POPUPMODE_GRABFOCUS ); + pWin->StartPopupMode( aRect, nPopupModeFlags | FloatWinPopupFlags::GrabFocus ); } if( pSFrom ) { diff --git a/vcl/source/window/menubarwindow.cxx b/vcl/source/window/menubarwindow.cxx index 6a8de205b0de..942f184e8c3d 100644 --- a/vcl/source/window/menubarwindow.cxx +++ b/vcl/source/window/menubarwindow.cxx @@ -336,7 +336,7 @@ void MenuBarWindow::ImplCreatePopup( bool bPreSelectFirst ) // #99071# do not grab the focus, otherwise it will be restored to the menubar // when the frame is reactivated later //GrabFocus(); - pActivePopup->ImplExecute( this, Rectangle( aItemTopLeft, aItemBottomRight ), FLOATWIN_POPUPMODE_DOWN | FLOATWIN_POPUPMODE_NOHORZPLACEMENT, pMenu, bPreSelectFirst ); + pActivePopup->ImplExecute( this, Rectangle( aItemTopLeft, aItemBottomRight ), FloatWinPopupFlags::Down | FloatWinPopupFlags::NoHorzPlacement, pMenu, bPreSelectFirst ); // does not have a window, if aborted before or if there are no entries if ( pActivePopup->ImplGetFloatingWindow() ) pActivePopup->ImplGetFloatingWindow()->AddPopupModeWindow( this ); diff --git a/vcl/source/window/menufloatingwindow.cxx b/vcl/source/window/menufloatingwindow.cxx index f9340105152e..4345e16c2caf 100644 --- a/vcl/source/window/menufloatingwindow.cxx +++ b/vcl/source/window/menufloatingwindow.cxx @@ -282,8 +282,8 @@ IMPL_LINK_TYPED( MenuFloatingWindow, HighlightChanged, Timer*, pTimer, void ) { if ( pActivePopup && ( pActivePopup != pItemData->pSubMenu ) ) { - sal_uLong nOldFlags = GetPopupModeFlags(); - SetPopupModeFlags( GetPopupModeFlags() | FLOATWIN_POPUPMODE_NOAPPFOCUSCLOSE ); + FloatWinPopupFlags nOldFlags = GetPopupModeFlags(); + SetPopupModeFlags( GetPopupModeFlags() | FloatWinPopupFlags::NoAppFocusClose ); KillActivePopup(); SetPopupModeFlags( nOldFlags ); } @@ -321,9 +321,9 @@ IMPL_LINK_TYPED( MenuFloatingWindow, HighlightChanged, Timer*, pTimer, void ) // were for long in Activate Rescheduled and which should not be // displayed now. Menu* pTest = pActivePopup; - sal_uLong nOldFlags = GetPopupModeFlags(); - SetPopupModeFlags( GetPopupModeFlags() | FLOATWIN_POPUPMODE_NOAPPFOCUSCLOSE ); - sal_uInt16 nRet = pActivePopup->ImplExecute( this, Rectangle( aItemTopLeft, aItemBottomRight ), FLOATWIN_POPUPMODE_RIGHT, pMenu, pTimer == nullptr ); + FloatWinPopupFlags nOldFlags = GetPopupModeFlags(); + SetPopupModeFlags( GetPopupModeFlags() | FloatWinPopupFlags::NoAppFocusClose ); + sal_uInt16 nRet = pActivePopup->ImplExecute( this, Rectangle( aItemTopLeft, aItemBottomRight ), FloatWinPopupFlags::Right, pMenu, pTimer == nullptr ); SetPopupModeFlags( nOldFlags ); // nRet != 0, wenn es waerend Activate() abgeschossen wurde... diff --git a/vcl/source/window/winproc.cxx b/vcl/source/window/winproc.cxx index 0874091f37f2..2f5d8b54d332 100644 --- a/vcl/source/window/winproc.cxx +++ b/vcl/source/window/winproc.cxx @@ -76,7 +76,7 @@ static bool ImplHandleMouseFloatMode( vcl::Window* pChild, const Point& rMousePo HitTest nHitTest = HITTEST_OUTSIDE; FloatingWindow* pFloat = pSVData->maWinData.mpFirstFloat->ImplFloatHitTest( pChild, rMousePos, nHitTest ); FloatingWindow* pLastLevelFloat; - sal_uLong nPopupFlags; + FloatWinPopupFlags nPopupFlags; if ( nSVEvent == MouseNotifyEvent::MOUSEMOVE ) { if ( bMouseLeave ) @@ -105,7 +105,7 @@ static bool ImplHandleMouseFloatMode( vcl::Window* pChild, const Point& rMousePo } else if ( nHitTest == HITTEST_RECT ) { - if ( !(pFloat->GetPopupModeFlags() & FLOATWIN_POPUPMODE_NOMOUSERECTCLOSE) ) + if ( !(pFloat->GetPopupModeFlags() & FloatWinPopupFlags::NoMouseRectClose) ) pFloat->ImplSetMouseDown(); return true; } @@ -125,7 +125,7 @@ static bool ImplHandleMouseFloatMode( vcl::Window* pChild, const Point& rMousePo { pLastLevelFloat = pSVData->maWinData.mpFirstFloat->ImplFindLastLevelFloat(); nPopupFlags = pLastLevelFloat->GetPopupModeFlags(); - if ( !(nPopupFlags & FLOATWIN_POPUPMODE_NOMOUSEUPCLOSE) ) + if ( !(nPopupFlags & FloatWinPopupFlags::NoMouseUpClose) ) { pLastLevelFloat->EndPopupMode( FLOATWIN_POPUPMODEEND_CANCEL | FLOATWIN_POPUPMODEEND_CLOSEALL ); return true; @@ -139,9 +139,9 @@ static bool ImplHandleMouseFloatMode( vcl::Window* pChild, const Point& rMousePo { pLastLevelFloat = pSVData->maWinData.mpFirstFloat->ImplFindLastLevelFloat(); nPopupFlags = pLastLevelFloat->GetPopupModeFlags(); - if ( nPopupFlags & FLOATWIN_POPUPMODE_ALLMOUSEBUTTONCLOSE ) + if ( nPopupFlags & FloatWinPopupFlags::AllMouseButtonClose ) { - if ( (nPopupFlags & FLOATWIN_POPUPMODE_NOMOUSEUPCLOSE) && + if ( (nPopupFlags & FloatWinPopupFlags::NoMouseUpClose) && (nSVEvent == MouseNotifyEvent::MOUSEBUTTONUP) ) return true; pLastLevelFloat->EndPopupMode( FLOATWIN_POPUPMODEEND_CANCEL | FLOATWIN_POPUPMODEEND_CLOSEALL ); @@ -953,7 +953,7 @@ static bool ImplHandleKey( vcl::Window* pWindow, MouseNotifyEvent nSVEvent, if ( pSVData->maWinData.mpFirstFloat ) { FloatingWindow* pLastLevelFloat = pSVData->maWinData.mpFirstFloat->ImplFindLastLevelFloat(); - if ( !(pLastLevelFloat->GetPopupModeFlags() & FLOATWIN_POPUPMODE_NOKEYCLOSE) ) + if ( !(pLastLevelFloat->GetPopupModeFlags() & FloatWinPopupFlags::NoKeyClose) ) { sal_uInt16 nEscCode = aKeyCode.GetCode(); @@ -976,7 +976,7 @@ static bool ImplHandleKey( vcl::Window* pWindow, MouseNotifyEvent nSVEvent, if ( pSVData->maWinData.mpFirstFloat ) { FloatingWindow* pLastLevelFloat = pSVData->maWinData.mpFirstFloat->ImplFindLastLevelFloat(); - if ( !(pLastLevelFloat->GetPopupModeFlags() & FLOATWIN_POPUPMODE_NOKEYCLOSE) ) + if ( !(pLastLevelFloat->GetPopupModeFlags() & FloatWinPopupFlags::NoKeyClose) ) { sal_uInt16 nCode = aKeyCode.GetCode(); @@ -1651,7 +1651,7 @@ static void KillOwnPopups( vcl::Window* pWindow ) vcl::Window *pChild = pSVData->maWinData.mpFirstFloat; if ( pChild && pParent->ImplIsWindowOrChild( pChild, true ) ) { - if ( !(pSVData->maWinData.mpFirstFloat->GetPopupModeFlags() & FLOATWIN_POPUPMODE_NOAPPFOCUSCLOSE) ) + if ( !(pSVData->maWinData.mpFirstFloat->GetPopupModeFlags() & FloatWinPopupFlags::NoAppFocusClose) ) pSVData->maWinData.mpFirstFloat->EndPopupMode( FLOATWIN_POPUPMODEEND_CANCEL | FLOATWIN_POPUPMODEEND_CLOSEALL ); } } @@ -1916,7 +1916,7 @@ static void ImplHandleLoseFocus( vcl::Window* pWindow ) // is set, such that we do not show windows during the switch if ( pSVData->maWinData.mpFirstFloat ) { - if ( !(pSVData->maWinData.mpFirstFloat->GetPopupModeFlags() & FLOATWIN_POPUPMODE_NOAPPFOCUSCLOSE) ) + if ( !(pSVData->maWinData.mpFirstFloat->GetPopupModeFlags() & FloatWinPopupFlags::NoAppFocusClose) ) pSVData->maWinData.mpFirstFloat->EndPopupMode( FLOATWIN_POPUPMODEEND_CANCEL | FLOATWIN_POPUPMODEEND_CLOSEALL ); } diff --git a/vcl/unx/generic/window/salframe.cxx b/vcl/unx/generic/window/salframe.cxx index e16074b15b04..06d47483a9f2 100644 --- a/vcl/unx/generic/window/salframe.cxx +++ b/vcl/unx/generic/window/salframe.cxx @@ -2988,7 +2988,7 @@ long X11SalFrame::HandleMouseEvent( XEvent *pEvent ) if ( pSVData->maWinData.mpFirstFloat ) { static const char* pEnv = getenv( "SAL_FLOATWIN_NOAPPFOCUSCLOSE" ); - if ( !(pSVData->maWinData.mpFirstFloat->GetPopupModeFlags() & FLOATWIN_POPUPMODE_NOAPPFOCUSCLOSE) && !(pEnv && *pEnv) ) + if ( !(pSVData->maWinData.mpFirstFloat->GetPopupModeFlags() & FloatWinPopupFlags::NoAppFocusClose) && !(pEnv && *pEnv) ) pSVData->maWinData.mpFirstFloat->EndPopupMode( FLOATWIN_POPUPMODEEND_CANCEL | FLOATWIN_POPUPMODEEND_CLOSEALL ); } } @@ -3498,9 +3498,9 @@ long X11SalFrame::HandleFocusEvent( XFocusChangeEvent *pEvent ) if ((mpParent != NULL && nStyle_ == 0) && pSVData->maWinData.mpFirstFloat ) { - sal_uLong nMode = pSVData->maWinData.mpFirstFloat->GetPopupModeFlags(); + FloatWinPopupFlags nMode = pSVData->maWinData.mpFirstFloat->GetPopupModeFlags(); pSVData->maWinData.mpFirstFloat->SetPopupModeFlags( - nMode & ~(FLOATWIN_POPUPMODE_NOAPPFOCUSCLOSE)); + nMode & ~(FloatWinPopupFlags::NoAppFocusClose)); } return nRet; } diff --git a/vcl/unx/gtk/window/gtksalframe.cxx b/vcl/unx/gtk/window/gtksalframe.cxx index 357393328638..e349aa1a2e4b 100644 --- a/vcl/unx/gtk/window/gtksalframe.cxx +++ b/vcl/unx/gtk/window/gtksalframe.cxx @@ -3292,7 +3292,7 @@ gboolean GtkSalFrame::signalButton( GtkWidget*, GdkEventButton* pEvent, gpointer if ( pSVData->maWinData.mpFirstFloat ) { static const char* pEnv = getenv( "SAL_FLOATWIN_NOAPPFOCUSCLOSE" ); - if ( !(pSVData->maWinData.mpFirstFloat->GetPopupModeFlags() & FLOATWIN_POPUPMODE_NOAPPFOCUSCLOSE) && !(pEnv && *pEnv) ) + if ( !(pSVData->maWinData.mpFirstFloat->GetPopupModeFlags() & FloatWinPopupFlags::NoAppFocusClose) && !(pEnv && *pEnv) ) pSVData->maWinData.mpFirstFloat->EndPopupMode( FLOATWIN_POPUPMODEEND_CANCEL | FLOATWIN_POPUPMODEEND_CLOSEALL ); } } |