20#ifndef INCLUDED_VCL_CTRL_HXX
21#define INCLUDED_VCL_CTRL_HXX
23#include <rtl/ustring.hxx>
58 tools::Long GetIndexForPoint(
const Point& rPoint )
const;
92 SAL_DLLPRIVATE
void ImplInitControlData();
99 virtual void FillLayoutData()
const;
102 void AppendLayoutData(
const Control& rSubControl )
const;
105 void CreateLayoutData()
const;
107 bool HasLayoutData()
const;
121 bool ImplCallEventListenersAndHandler(
122 VclEventId nEvent, std::function<
void()>
const & callHandler
125 void CallEventListeners(
VclEventId nEvent,
void* pData =
nullptr );
138 std::vector< tools::Rectangle >* _pVector, OUString* _pDisplayText,
139 const Size* i_pDeviceSize =
nullptr )
const;
143 Size* o_pDeviceSize =
nullptr )
const;
150 void ImplInitSettings();
155 SAL_DLLPRIVATE
void ImplClearLayoutData()
const;
179 virtual void dispose()
override;
181 virtual void EnableRTL (
bool bEnable =
true )
override;
183 virtual bool EventNotify(
NotifyEvent& rNEvt )
override;
185 virtual void Resize()
override;
188 virtual void SetText(
const OUString& rStr )
override;
190 virtual OUString GetDisplayText()
const override;
195 tools::Long GetIndexForPoint(
const Point& rPoint )
const;
219 void SetLayoutDataParent(
const Control* pParent )
const;
221 virtual Size GetOptimalSize()
const override;
226 void SetReferenceDevice(
OutputDevice* _referenceDevice );
229 vcl::Font GetUnzoomedControlPointFont()
const;
230 void SetShowAccelerator (
bool val);
std::optional< vcl::ControlLayoutData > mxLayoutData
Link< Control &, void > maLoseFocusHdl
VclPtr< OutputDevice > mpReferenceDevice
Control(const Control &)=delete
bool HasControlFocus() const
determines whether the control currently has the focus
void SetLoseFocusHdl(const Link< Control &, void > &rLink)
Some things multiple-inherit from VclAbstractDialog and OutputDevice, so we need to use virtual inher...
virtual void SetText(const OUString &rStr) override
std::vector< tools::Rectangle > m_aUnicodeBoundRects
std::vector< tools::Long > m_aLineIndices
VclPtr< const Control > m_pParent