20 #ifndef INCLUDED_VCL_INC_SALOBJ_HXX
21 #define INCLUDED_VCL_INC_SALOBJ_HXX
25 #include <com/sun/star/uno/Sequence.hxx>
36 bool m_bMouseTransparent:1,
39 SalObject() : m_pInst( nullptr ), m_pCallback( nullptr ), m_bMouseTransparent( false ), m_bEraseBackground( true ) {}
42 virtual void ResetClipRegion() = 0;
43 virtual void BeginSetClipRegion( sal_uInt32 nRects ) = 0;
45 virtual void EndSetClipRegion() = 0;
48 virtual void Show(
bool bVisible ) = 0;
62 { m_pInst = pInst; m_pCallback = pProc; }
64 {
if (m_pCallback) m_pCallback( m_pInst, nEvent ); }
67 { m_bMouseTransparent = bMouseTransparent; }
69 {
return m_bMouseTransparent; }
72 { m_bEraseBackground = bEnable; }
74 {
return m_bEraseBackground; }
77 #endif // INCLUDED_VCL_INC_SALOBJ_HXX
SALOBJECTPROC m_pCallback
bool IsMouseTransparent() const
void(* SALOBJECTPROC)(SystemChildWindow *pInst, SalObjEvent nEvent)
void CallCallback(SalObjEvent nEvent)
virtual void Enable(bool)
VclPtr< SystemChildWindow > m_pInst
virtual Size GetOptimalSize() const
void SetMouseTransparent(bool bMouseTransparent)
#define VCL_PLUGIN_PUBLIC
A SalFrame is a system window (e.g. an X11 window).
bool IsEraseBackgroundEnabled() const
virtual void Reparent(SalFrame *)
virtual void SetLeaveEnterBackgrounds(const css::uno::Sequence< css::uno::Any > &, const css::uno::Sequence< css::uno::Any > &)
void SetCallback(SystemChildWindow *pInst, SALOBJECTPROC pProc)
virtual void SetForwardKey(bool)
void EnableEraseBackground(bool bEnable)