LibreOffice Module sfx2 (master) 1
Classes | Namespaces | Macros | Typedefs | Enumerations | Functions | Variables
childwin.hxx File Reference
#include <memory>
#include <sal/config.h>
#include <sfx2/dllapi.h>
#include <sal/types.h>
#include <o3tl/typed_flags_set.hxx>
#include <vcl/window.hxx>
#include <sfx2/chalign.hxx>
#include <sfx2/basedlgs.hxx>
Include dependency graph for childwin.hxx:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  o3tl::typed_flags< SfxChildWindowFlags >
 
struct  SfxChildWinInfo
 
struct  SfxChildWinFactory
 
class  SfxChildWindow
 

Namespaces

namespace  com
 
namespace  com::sun
 
namespace  com::sun::star
 
namespace  com::sun::star::frame
 
namespace  o3tl
 

Macros

#define CHILDWIN_NOPOS   USHRT_MAX
 
#define SFX_DECL_CHILDWINDOW(Class)
 
#define SFX_DECL_CHILDWINDOW_WITHID(Class)
 
#define SFX_IMPL_CHILDWINDOW(Class, MyID)    SFX_IMPL_POS_CHILDWINDOW(Class, MyID, CHILDWIN_NOPOS)
 
#define SFX_IMPL_CHILDWINDOW_WITHID(Class, MyID)    SFX_IMPL_POS_CHILDWINDOW_WITHID(Class, MyID, CHILDWIN_NOPOS)
 
#define SFX_IMPL_POS_CHILDWINDOW(Class, MyID, Pos)
 
#define SFX_IMPL_POS_CHILDWINDOW_WITHID(Class, MyID, Pos)
 
#define SFX_IMPL_MODELESSDIALOGCONTOLLER(Class, MyID)
 
#define SFX_IMPL_MODELESSDIALOGCONTOLLER_WITHID(Class, MyID)
 
#define SFX_IMPL_DOCKINGWINDOW(Class, MyID)
 
#define SFX_IMPL_DOCKINGWINDOW_WITHID(Class, MyID)
 

Typedefs

typedef std::unique_ptr< SfxChildWindow >(* SfxChildWinCtor) (vcl::Window *pParentWindow, sal_uInt16 nId, SfxBindings *pBindings, SfxChildWinInfo *pInfo)
 

Enumerations

enum class  SfxChildWindowFlags {
  NONE = 0x000 ,
  FORCEDOCK = 0x004 ,
  TASK = 0x010 ,
  CANTGETFOCUS = 0x020 ,
  ALWAYSAVAILABLE = 0x040 ,
  NEVERHIDE = 0x080 ,
  NEVERCLONE = 0x100
}
 

Functions

SFX2_DLLPUBLIC bool ParentIsFloatingWindow (const vcl::Window *pParent)
 
bool GetPosSizeFromString (std::u16string_view rStr, Point &rPos, Size &rSize)
 
bool GetSplitSizeFromString (std::u16string_view rStr, Size &rSize)
 

Variables

const int nCloseResponseToJustHide = -42
 

Macro Definition Documentation

◆ CHILDWIN_NOPOS

#define CHILDWIN_NOPOS   USHRT_MAX

Definition at line 58 of file childwin.hxx.

◆ SFX_DECL_CHILDWINDOW

#define SFX_DECL_CHILDWINDOW (   Class)
Value:
public : \
static std::unique_ptr<SfxChildWindow> CreateImpl(vcl::Window *pParent, sal_uInt16 nId, \
SfxBindings *pBindings, SfxChildWinInfo* pInfo ); \
static void RegisterChildWindow (bool bVisible=false, SfxModule *pMod=nullptr, SfxChildWindowFlags nFlags=SfxChildWindowFlags::NONE); \
virtual SfxChildWinInfo GetInfo() const override
SfxChildWindowFlags
Definition: childwin.hxx:42

Definition at line 160 of file childwin.hxx.

◆ SFX_DECL_CHILDWINDOW_WITHID

#define SFX_DECL_CHILDWINDOW_WITHID (   Class)
Value:
static sal_uInt16 GetChildWindowId ()\
#define SFX_DECL_CHILDWINDOW(Class)
Definition: childwin.hxx:160

Definition at line 167 of file childwin.hxx.

◆ SFX_IMPL_CHILDWINDOW

#define SFX_IMPL_CHILDWINDOW (   Class,
  MyID 
)     SFX_IMPL_POS_CHILDWINDOW(Class, MyID, CHILDWIN_NOPOS)

Definition at line 171 of file childwin.hxx.

◆ SFX_IMPL_CHILDWINDOW_WITHID

#define SFX_IMPL_CHILDWINDOW_WITHID (   Class,
  MyID 
)     SFX_IMPL_POS_CHILDWINDOW_WITHID(Class, MyID, CHILDWIN_NOPOS)

Definition at line 174 of file childwin.hxx.

◆ SFX_IMPL_DOCKINGWINDOW

#define SFX_IMPL_DOCKINGWINDOW (   Class,
  MyID 
)
Value:
SFX_IMPL_CHILDWINDOW(Class, MyID) \
SfxChildWinInfo Class::GetInfo() const \
{ \
SfxChildWinInfo aInfo = SfxChildWindow::GetInfo(); \
static_cast<SfxDockingWindow*>(GetWindow())->FillInfo( aInfo ); \
return aInfo; }
#define SFX_IMPL_CHILDWINDOW(Class, MyID)
Definition: childwin.hxx:171
virtual SfxChildWinInfo GetInfo() const
Definition: childwin.cxx:304

Definition at line 213 of file childwin.hxx.

◆ SFX_IMPL_DOCKINGWINDOW_WITHID

#define SFX_IMPL_DOCKINGWINDOW_WITHID (   Class,
  MyID 
)
Value:
SfxChildWinInfo Class::GetInfo() const \
{ \
SfxChildWinInfo aInfo = SfxChildWindow::GetInfo(); \
static_cast<SfxDockingWindow*>(GetWindow())->FillInfo( aInfo ); \
return aInfo; }
#define SFX_IMPL_CHILDWINDOW_WITHID(Class, MyID)
Definition: childwin.hxx:174

Definition at line 221 of file childwin.hxx.

◆ SFX_IMPL_MODELESSDIALOGCONTOLLER

#define SFX_IMPL_MODELESSDIALOGCONTOLLER (   Class,
  MyID 
)
Value:
SFX_IMPL_CHILDWINDOW(Class, MyID) \
SfxChildWinInfo Class::GetInfo() const \
{ \
SfxChildWinInfo aInfo = SfxChildWindow::GetInfo(); \
static_cast<const SfxModelessDialogController*>(GetController().get())->FillInfo( aInfo ); \
return aInfo; }
virtual std::shared_ptr< SfxDialogController > GetController() override
css::uno::Reference< css::linguistic2::XProofreadingIterator > get(css::uno::Reference< css::uno::XComponentContext > const &context)

Definition at line 197 of file childwin.hxx.

◆ SFX_IMPL_MODELESSDIALOGCONTOLLER_WITHID

#define SFX_IMPL_MODELESSDIALOGCONTOLLER_WITHID (   Class,
  MyID 
)
Value:
SfxChildWinInfo Class::GetInfo() const \
{ \
SfxChildWinInfo aInfo = SfxChildWindow::GetInfo(); \
static_cast<const SfxModelessDialogController*>(GetController().get())->FillInfo( aInfo ); \
return aInfo; }

Definition at line 205 of file childwin.hxx.

◆ SFX_IMPL_POS_CHILDWINDOW

#define SFX_IMPL_POS_CHILDWINDOW (   Class,
  MyID,
  Pos 
)
Value:
std::unique_ptr<SfxChildWindow> Class::CreateImpl( vcl::Window *pParent, \
sal_uInt16 nId, SfxBindings *pBindings, SfxChildWinInfo* pInfo ) \
{ \
return std::make_unique<Class>(pParent, nId, pBindings, pInfo);\
} \
void Class::RegisterChildWindow (bool bVis, SfxModule *pMod, SfxChildWindowFlags nFlags) \
{ \
SfxChildWinFactory aFact( \
Class::CreateImpl, MyID, Pos ); \
aFact.aInfo.nFlags |= nFlags; \
aFact.aInfo.bVisible = bVis; \
}
static void RegisterChildWindow(SfxModule *, const SfxChildWinFactory &)
Definition: childwin.cxx:618

Definition at line 177 of file childwin.hxx.

◆ SFX_IMPL_POS_CHILDWINDOW_WITHID

#define SFX_IMPL_POS_CHILDWINDOW_WITHID (   Class,
  MyID,
  Pos 
)
Value:
SFX_IMPL_POS_CHILDWINDOW(Class, MyID, Pos) \
sal_uInt16 Class::GetChildWindowId () \
{ return MyID; } \
#define SFX_IMPL_POS_CHILDWINDOW(Class, MyID, Pos)
Definition: childwin.hxx:177

Definition at line 192 of file childwin.hxx.

Typedef Documentation

◆ SfxChildWinCtor

typedef std::unique_ptr< SfxChildWindow >(* SfxChildWinCtor) (vcl::Window *pParentWindow, sal_uInt16 nId, SfxBindings *pBindings, SfxChildWinInfo *pInfo)

Definition at line 80 of file childwin.hxx.

Enumeration Type Documentation

◆ SfxChildWindowFlags

enum class SfxChildWindowFlags
strong
Enumerator
NONE 
FORCEDOCK 
TASK 
CANTGETFOCUS 
ALWAYSAVAILABLE 
NEVERHIDE 
NEVERCLONE 

Definition at line 41 of file childwin.hxx.

Function Documentation

◆ GetPosSizeFromString()

bool GetPosSizeFromString ( std::u16string_view  rStr,
Point rPos,
Size rSize 
)

◆ GetSplitSizeFromString()

bool GetSplitSizeFromString ( std::u16string_view  rStr,
Size rSize 
)

◆ ParentIsFloatingWindow()

SFX2_DLLPUBLIC bool ParentIsFloatingWindow ( const vcl::Window pParent)

Definition at line 415 of file childwin.cxx.

References vcl::Window::GetType().

Variable Documentation

◆ nCloseResponseToJustHide

const int nCloseResponseToJustHide = -42