LibreOffice Module sfx2 (master) 1
Public Member Functions | Private Member Functions | Static Private Member Functions | Private Attributes | Friends | List of all members
SfxWorkWindow Class Referencefinal

#include <workwin.hxx>

Collaboration diagram for SfxWorkWindow:
[legend]

Public Member Functions

 SfxWorkWindow (vcl::Window *pWin, SfxFrame *pFrm, SfxFrame *pMaster)
 
 ~SfxWorkWindow ()
 
SfxBindingsGetBindings ()
 
vcl::WindowGetWindow () const
 
tools::Rectangle GetFreeArea (bool bAutoHide) const
 
void SetDockingAllowed (bool bSet)
 
void SetInternalDockingAllowed (bool bSet)
 
bool IsDockingAllowed () const
 
bool IsInternalDockingAllowed () const
 
void DataChanged_Impl ()
 
void ReleaseChild_Impl (vcl::Window &rWindow)
 
void ReleaseChild_Impl (const SfxDialogController &)
 
SfxChild_ImplRegisterChild_Impl (vcl::Window &rWindow, SfxChildAlignment eAlign)
 
SfxChild_ImplRegisterChild_Impl (std::shared_ptr< SfxDialogController > &rController, SfxChildAlignment eAlign)
 
void ShowChildren_Impl ()
 
void HideChildren_Impl ()
 
bool PrepareClose_Impl ()
 
void ArrangeChildren_Impl (bool bForce=true)
 
void DeleteControllers_Impl ()
 
void HidePopups_Impl (bool bHide, sal_uInt16 nId=0)
 
void ConfigChild_Impl (SfxChildIdentifier, SfxDockingConfig, sal_uInt16)
 
void MakeChildrenVisible_Impl (bool bVis)
 
void ArrangeAutoHideWindows (SfxSplitWindow *pSplit)
 
bool IsAutoHideMode (const SfxSplitWindow *pSplit)
 
void EndAutoShow_Impl (Point aPos)
 
void SetFullScreen_Impl (bool bSet)
 
void UpdateObjectBars_Impl ()
 
void UpdateObjectBars_Impl2 ()
 
void ResetObjectBars_Impl ()
 
void SetObjectBar_Impl (sal_uInt16 nPos, SfxVisibilityFlags nFlags, ToolbarId eId)
 
bool IsVisible_Impl () const
 
void MakeVisible_Impl (bool)
 
void Lock_Impl (bool)
 
void UpdateChildWindows_Impl ()
 
void ResetChildWindows_Impl ()
 
void SetChildWindowVisible_Impl (sal_uInt32, bool, SfxVisibilityFlags)
 
void ToggleChildWindow_Impl (sal_uInt16, bool)
 
bool HasChildWindow_Impl (sal_uInt16)
 
bool KnowsChildWindow_Impl (sal_uInt16)
 
void ShowChildWindow_Impl (sal_uInt16, bool bVisible, bool bSetFocus)
 
void SetChildWindow_Impl (sal_uInt16, bool bOn, bool bSetFocus)
 
SfxChildWindowGetChildWindow_Impl (sal_uInt16)
 
void InitializeChild_Impl (SfxChildWin_Impl *)
 
SfxSplitWindowGetSplitWindow_Impl (SfxChildAlignment)
 
bool IsVisible_Impl (SfxVisibilityFlags nMode) const
 
bool IsFloating (sal_uInt16 nId)
 
void SetActiveChild_Impl (vcl::Window *pChild)
 
const VclPtr< vcl::Window > & GetActiveChild_Impl () const
 
void ResetStatusBar_Impl ()
 
void SetStatusBar_Impl (StatusBarId eResId)
 
void UpdateStatusBar_Impl ()
 
css::uno::Reference< css::task::XStatusIndicator > GetStatusIndicator ()
 
css::uno::Reference< css::frame::XFrame > GetFrameInterface ()
 

Private Member Functions

void CreateChildWin_Impl (SfxChildWin_Impl *, bool)
 
void RemoveChildWin_Impl (SfxChildWin_Impl *)
 
void Sort_Impl ()
 
SfxChild_ImplFindChild_Impl (const vcl::Window *rWindow) const
 
bool RequestTopToolSpacePixel_Impl (SvBorder aBorder)
 
tools::Rectangle GetTopRect_Impl () const
 
SvBorder Arrange_Impl ()
 
void SaveStatus_Impl (SfxChildWindow *, const SfxChildWinInfo &)
 
void FlushPendingChildSizes ()
 

Static Private Member Functions

static bool IsPluginMode (SfxObjectShell const *pObjShell)
 

Private Attributes

std::vector< sal_uInt16 > aSortedList
 
SfxStatBar_Impl aStatBar
 
std::vector< SfxObjectBar_ImplaObjBarList
 
tools::Rectangle aClientArea
 
tools::Rectangle aUpperClientArea
 
VclPtr< SfxSplitWindowpSplit [SFX_SPLITWINDOWS_MAX]
 
std::vector< std::unique_ptr< SfxChild_Impl > > aChildren
 
std::vector< std::unique_ptr< SfxChildWin_Impl > > aChildWins
 
SfxBindingspBindings
 
VclPtr< vcl::WindowpWorkWin
 
VclPtr< vcl::WindowpActiveChild
 
SfxVisibilityFlags nUpdateMode
 
sal_uInt16 nChildren
 
SfxVisibilityFlags nOrigMode
 
bool bSorted: 1
 
bool bDockingAllowed: 1
 
bool bInternalDockingAllowed: 1
 
bool bAllChildrenVisible: 1
 
bool bIsFullScreen: 1
 
bool bShowStatusBar: 1
 
sal_Int32 m_nLock
 
css::uno::Reference< css::lang::XComponent > m_xLayoutManagerListener
 
SfxFramepMasterFrame
 
SfxFramepFrame
 

Friends

class LayoutManagerListener
 

Detailed Description

Definition at line 184 of file workwin.hxx.

Constructor & Destructor Documentation

◆ SfxWorkWindow()

SfxWorkWindow::SfxWorkWindow ( vcl::Window pWin,
SfxFrame pFrm,
SfxFrame pMaster 
)

◆ ~SfxWorkWindow()

SfxWorkWindow::~SfxWorkWindow ( )

Definition at line 515 of file workwin.cxx.

References aChildren, DBG_ASSERT, m_xLayoutManagerListener, p, pSplit, and ReleaseChild_Impl().

Member Function Documentation

◆ Arrange_Impl()

SvBorder SfxWorkWindow::Arrange_Impl ( )
private

◆ ArrangeAutoHideWindows()

void SfxWorkWindow::ArrangeAutoHideWindows ( SfxSplitWindow pSplit)

◆ ArrangeChildren_Impl()

void SfxWorkWindow::ArrangeChildren_Impl ( bool  bForce = true)

◆ ConfigChild_Impl()

void SfxWorkWindow::ConfigChild_Impl ( SfxChildIdentifier  eChild,
SfxDockingConfig  eConfig,
sal_uInt16  nId 
)

◆ CreateChildWin_Impl()

void SfxWorkWindow::CreateChildWin_Impl ( SfxChildWin_Impl pCW,
bool  bSetFocus 
)
private

◆ DataChanged_Impl()

void SfxWorkWindow::DataChanged_Impl ( )

Definition at line 2429 of file workwin.cxx.

References ArrangeChildren_Impl().

Referenced by SfxFrameWindow_Impl::DataChanged().

◆ DeleteControllers_Impl()

void SfxWorkWindow::DeleteControllers_Impl ( )

◆ EndAutoShow_Impl()

void SfxWorkWindow::EndAutoShow_Impl ( Point  aPos)

Definition at line 2251 of file workwin.cxx.

References tools::Rectangle::Contains(), p, and pSplit.

Referenced by SfxFrameWindow_Impl::PreNotify().

◆ FindChild_Impl()

SfxChild_Impl * SfxWorkWindow::FindChild_Impl ( const vcl::Window rWindow) const
private

Definition at line 947 of file workwin.cxx.

References aChildren, nCount, nPos, and SfxChild_Impl::pWin.

Referenced by HidePopups_Impl(), and RegisterChild_Impl().

◆ FlushPendingChildSizes()

void SfxWorkWindow::FlushPendingChildSizes ( )
private

Definition at line 689 of file workwin.cxx.

References aChildren, i, and SfxChild_Impl::pWin.

Referenced by Arrange_Impl().

◆ GetActiveChild_Impl()

const VclPtr< vcl::Window > & SfxWorkWindow::GetActiveChild_Impl ( ) const
inline

Definition at line 289 of file workwin.hxx.

References pActiveChild.

◆ GetBindings()

SfxBindings & SfxWorkWindow::GetBindings ( )
inline

◆ GetChildWindow_Impl()

SfxChildWindow * SfxWorkWindow::GetChildWindow_Impl ( sal_uInt16  nId)

◆ GetFrameInterface()

css::uno::Reference< css::frame::XFrame > SfxWorkWindow::GetFrameInterface ( )

◆ GetFreeArea()

tools::Rectangle SfxWorkWindow::GetFreeArea ( bool  bAutoHide) const

◆ GetSplitWindow_Impl()

SfxSplitWindow * SfxWorkWindow::GetSplitWindow_Impl ( SfxChildAlignment  eAlign)

◆ GetStatusIndicator()

Reference< css::task::XStatusIndicator > SfxWorkWindow::GetStatusIndicator ( )

◆ GetTopRect_Impl()

tools::Rectangle SfxWorkWindow::GetTopRect_Impl ( ) const
private

◆ GetWindow()

vcl::Window * SfxWorkWindow::GetWindow ( ) const
inline

Definition at line 232 of file workwin.hxx.

References pWorkWin.

Referenced by SfxDockingWindow::CalcAlignment(), and SfxApplication::GetTopWindow().

◆ HasChildWindow_Impl()

bool SfxWorkWindow::HasChildWindow_Impl ( sal_uInt16  nId)

◆ HideChildren_Impl()

void SfxWorkWindow::HideChildren_Impl ( )

◆ HidePopups_Impl()

void SfxWorkWindow::HidePopups_Impl ( bool  bHide,
sal_uInt16  nId = 0 
)

◆ InitializeChild_Impl()

void SfxWorkWindow::InitializeChild_Impl ( SfxChildWin_Impl pCW)

◆ IsAutoHideMode()

bool SfxWorkWindow::IsAutoHideMode ( const SfxSplitWindow pSplit)

Definition at line 2240 of file workwin.cxx.

References SfxSplitWindow::IsAutoHide(), and pSplit.

Referenced by IMPL_LINK().

◆ IsDockingAllowed()

bool SfxWorkWindow::IsDockingAllowed ( ) const
inline

◆ IsFloating()

bool SfxWorkWindow::IsFloating ( sal_uInt16  nId)

◆ IsInternalDockingAllowed()

bool SfxWorkWindow::IsInternalDockingAllowed ( ) const
inline

◆ IsPluginMode()

bool SfxWorkWindow::IsPluginMode ( SfxObjectShell const *  pObjShell)
staticprivate

◆ IsVisible_Impl() [1/2]

bool SfxWorkWindow::IsVisible_Impl ( ) const

◆ IsVisible_Impl() [2/2]

bool SfxWorkWindow::IsVisible_Impl ( SfxVisibilityFlags  nMode) const

Definition at line 1074 of file workwin.cxx.

References Client, Invisible, nOrigMode, nUpdateMode, Server, and Standard.

◆ KnowsChildWindow_Impl()

bool SfxWorkWindow::KnowsChildWindow_Impl ( sal_uInt16  nId)

◆ Lock_Impl()

void SfxWorkWindow::Lock_Impl ( bool  bLock)

◆ MakeChildrenVisible_Impl()

void SfxWorkWindow::MakeChildrenVisible_Impl ( bool  bVis)

◆ MakeVisible_Impl()

void SfxWorkWindow::MakeVisible_Impl ( bool  bVis)

◆ PrepareClose_Impl()

bool SfxWorkWindow::PrepareClose_Impl ( )

Definition at line 863 of file workwin.cxx.

References aChildWins, and SfxChildWindow::QueryClose().

◆ RegisterChild_Impl() [1/2]

SfxChild_Impl * SfxWorkWindow::RegisterChild_Impl ( std::shared_ptr< SfxDialogController > &  rController,
SfxChildAlignment  eAlign 
)

Definition at line 895 of file workwin.cxx.

References aChildren, bSorted, DBG_ASSERT, nChildren, and SfxChildAlignValid().

◆ RegisterChild_Impl() [2/2]

SfxChild_Impl * SfxWorkWindow::RegisterChild_Impl ( vcl::Window rWindow,
SfxChildAlignment  eAlign 
)

◆ ReleaseChild_Impl() [1/2]

void SfxWorkWindow::ReleaseChild_Impl ( const SfxDialogController rController)

Definition at line 928 of file workwin.cxx.

References aChildren, bSorted, nChildren, nPos, and SfxChild_Impl::xController.

◆ ReleaseChild_Impl() [2/2]

void SfxWorkWindow::ReleaseChild_Impl ( vcl::Window rWindow)

◆ RemoveChildWin_Impl()

void SfxWorkWindow::RemoveChildWin_Impl ( SfxChildWin_Impl pCW)
private

◆ RequestTopToolSpacePixel_Impl()

bool SfxWorkWindow::RequestTopToolSpacePixel_Impl ( SvBorder  aBorder)
private

◆ ResetChildWindows_Impl()

void SfxWorkWindow::ResetChildWindows_Impl ( )

Definition at line 2089 of file workwin.cxx.

References aChildWins.

Referenced by SfxDispatcher::Update_Impl().

◆ ResetObjectBars_Impl()

void SfxWorkWindow::ResetObjectBars_Impl ( )

Definition at line 1045 of file workwin.cxx.

References aChildWins, aObjBarList, and n.

Referenced by SfxDispatcher::Update_Impl().

◆ ResetStatusBar_Impl()

void SfxWorkWindow::ResetStatusBar_Impl ( )

Definition at line 1444 of file workwin.cxx.

References aStatBar, SfxStatBar_Impl::eId, and None.

Referenced by DeleteControllers_Impl(), and SfxDispatcher::Update_Impl().

◆ SaveStatus_Impl()

void SfxWorkWindow::SaveStatus_Impl ( SfxChildWindow pChild,
const SfxChildWinInfo rInfo 
)
private

◆ SetActiveChild_Impl()

void SfxWorkWindow::SetActiveChild_Impl ( vcl::Window pChild)

Definition at line 2424 of file workwin.cxx.

References pActiveChild.

Referenced by SfxSplitWindow::SetActiveWindow_Impl().

◆ SetChildWindow_Impl()

void SfxWorkWindow::SetChildWindow_Impl ( sal_uInt16  nId,
bool  bOn,
bool  bSetFocus 
)

◆ SetChildWindowVisible_Impl()

void SfxWorkWindow::SetChildWindowVisible_Impl ( sal_uInt32  lId,
bool  bEnabled,
SfxVisibilityFlags  nMode 
)

◆ SetDockingAllowed()

void SfxWorkWindow::SetDockingAllowed ( bool  bSet)
inline

Definition at line 235 of file workwin.hxx.

References bDockingAllowed.

Referenced by SfxFrame::SetPresentationMode().

◆ SetFullScreen_Impl()

void SfxWorkWindow::SetFullScreen_Impl ( bool  bSet)
inline

Definition at line 262 of file workwin.hxx.

References bIsFullScreen.

Referenced by SfxViewFrame::MiscExec_Impl().

◆ SetInternalDockingAllowed()

void SfxWorkWindow::SetInternalDockingAllowed ( bool  bSet)
inline

Definition at line 237 of file workwin.hxx.

References bInternalDockingAllowed.

Referenced by SfxBaseController::ConnectSfxFrame_Impl().

◆ SetObjectBar_Impl()

void SfxWorkWindow::SetObjectBar_Impl ( sal_uInt16  nPos,
SfxVisibilityFlags  nFlags,
ToolbarId  eId 
)

◆ SetStatusBar_Impl()

void SfxWorkWindow::SetStatusBar_Impl ( StatusBarId  eResId)

Definition at line 1449 of file workwin.cxx.

References aStatBar, bShowStatusBar, SfxStatBar_Impl::eId, IsVisible_Impl(), and None.

◆ ShowChildren_Impl()

void SfxWorkWindow::ShowChildren_Impl ( )

◆ ShowChildWindow_Impl()

void SfxWorkWindow::ShowChildWindow_Impl ( sal_uInt16  nId,
bool  bVisible,
bool  bSetFocus 
)

◆ Sort_Impl()

void SfxWorkWindow::Sort_Impl ( )
private

◆ ToggleChildWindow_Impl()

void SfxWorkWindow::ToggleChildWindow_Impl ( sal_uInt16  nId,
bool  bSetFocus 
)

◆ UpdateChildWindows_Impl()

void SfxWorkWindow::UpdateChildWindows_Impl ( )

◆ UpdateObjectBars_Impl()

void SfxWorkWindow::UpdateObjectBars_Impl ( )

◆ UpdateObjectBars_Impl2()

void SfxWorkWindow::UpdateObjectBars_Impl2 ( )

◆ UpdateStatusBar_Impl()

void SfxWorkWindow::UpdateStatusBar_Impl ( )

Friends And Related Function Documentation

◆ LayoutManagerListener

friend class LayoutManagerListener
friend

Definition at line 186 of file workwin.hxx.

Referenced by SfxWorkWindow().

Member Data Documentation

◆ aChildren

std::vector<std::unique_ptr<SfxChild_Impl> > SfxWorkWindow::aChildren
private

◆ aChildWins

std::vector<std::unique_ptr<SfxChildWin_Impl> > SfxWorkWindow::aChildWins
private

◆ aClientArea

tools::Rectangle SfxWorkWindow::aClientArea
private

◆ aObjBarList

std::vector< SfxObjectBar_Impl > SfxWorkWindow::aObjBarList
private

◆ aSortedList

std::vector<sal_uInt16> SfxWorkWindow::aSortedList
private

Definition at line 188 of file workwin.hxx.

Referenced by Arrange_Impl(), ConfigChild_Impl(), MakeChildrenVisible_Impl(), and Sort_Impl().

◆ aStatBar

SfxStatBar_Impl SfxWorkWindow::aStatBar
private

Definition at line 189 of file workwin.hxx.

Referenced by ResetStatusBar_Impl(), SetStatusBar_Impl(), and UpdateStatusBar_Impl().

◆ aUpperClientArea

tools::Rectangle SfxWorkWindow::aUpperClientArea
private

Definition at line 192 of file workwin.hxx.

Referenced by Arrange_Impl(), and ArrangeAutoHideWindows().

◆ bAllChildrenVisible

bool SfxWorkWindow::bAllChildrenVisible
private

Definition at line 207 of file workwin.hxx.

Referenced by MakeChildrenVisible_Impl(), and UpdateChildWindows_Impl().

◆ bDockingAllowed

bool SfxWorkWindow::bDockingAllowed
private

Definition at line 205 of file workwin.hxx.

Referenced by IsDockingAllowed(), SetDockingAllowed(), and SfxWorkWindow().

◆ bInternalDockingAllowed

bool SfxWorkWindow::bInternalDockingAllowed
private

◆ bIsFullScreen

bool SfxWorkWindow::bIsFullScreen
private

◆ bShowStatusBar

bool SfxWorkWindow::bShowStatusBar
private

Definition at line 209 of file workwin.hxx.

Referenced by SetStatusBar_Impl(), SfxWorkWindow(), and UpdateStatusBar_Impl().

◆ bSorted

bool SfxWorkWindow::bSorted
private

◆ m_nLock

sal_Int32 SfxWorkWindow::m_nLock
private

◆ m_xLayoutManagerListener

css::uno::Reference< css::lang::XComponent > SfxWorkWindow::m_xLayoutManagerListener
private

Definition at line 211 of file workwin.hxx.

Referenced by SfxWorkWindow(), and ~SfxWorkWindow().

◆ nChildren

sal_uInt16 SfxWorkWindow::nChildren
private

◆ nOrigMode

SfxVisibilityFlags SfxWorkWindow::nOrigMode
private

Definition at line 203 of file workwin.hxx.

Referenced by IsVisible_Impl(), MakeVisible_Impl(), and SfxWorkWindow().

◆ nUpdateMode

SfxVisibilityFlags SfxWorkWindow::nUpdateMode
private

◆ pActiveChild

VclPtr<vcl::Window> SfxWorkWindow::pActiveChild
private

Definition at line 200 of file workwin.hxx.

Referenced by GetActiveChild_Impl(), and SetActiveChild_Impl().

◆ pBindings

SfxBindings* SfxWorkWindow::pBindings
private

Definition at line 198 of file workwin.hxx.

Referenced by GetBindings(), InitializeChild_Impl(), and SfxWorkWindow().

◆ pFrame

SfxFrame* SfxWorkWindow::pFrame
private

Definition at line 213 of file workwin.hxx.

Referenced by ArrangeChildren_Impl(), and UpdateObjectBars_Impl().

◆ pMasterFrame

SfxFrame* SfxWorkWindow::pMasterFrame
private

Definition at line 212 of file workwin.hxx.

Referenced by ArrangeChildren_Impl(), and GetTopRect_Impl().

◆ pSplit

VclPtr<SfxSplitWindow> SfxWorkWindow::pSplit[SFX_SPLITWINDOWS_MAX]
private

◆ pWorkWin

VclPtr<vcl::Window> SfxWorkWindow::pWorkWin
private

The documentation for this class was generated from the following files: