LibreOffice Module vcl (master)  1
Classes | Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
ToolBox Class Reference

#include <toolbox.hxx>

Inheritance diagram for ToolBox:
[legend]
Collaboration diagram for ToolBox:
[legend]

Classes

struct  ImplToolSize
 

Public Types

using ImplToolItems = std::vector< ImplToolItem >
 

Public Member Functions

virtual FactoryFunction GetUITestFactory () const override
 
void SetCurItemId (ToolBoxItemId CurID)
 
SAL_DLLPRIVATE void ImplFloatControl (bool bStart, FloatingWindow *pWindow)
 
SAL_DLLPRIVATE int ImplGetDragWidth () const
 
SAL_DLLPRIVATE void ImplUpdateDragArea () const
 
SAL_DLLPRIVATE void ImplCalcBorder (WindowAlign eAlign, tools::Long &rLeft, tools::Long &rTop, tools::Long &rRight, tools::Long &rBottom) const
 
SAL_DLLPRIVATE void ImplCheckUpdate ()
 
SAL_DLLPRIVATE void ImplDrawGrip (vcl::RenderContext &rRenderContext)
 
SAL_DLLPRIVATE void ImplDrawGradientBackground (vcl::RenderContext &rRenderContext)
 
SAL_DLLPRIVATE bool ImplDrawNativeBackground (vcl::RenderContext &rRenderContext)
 
SAL_DLLPRIVATE void ImplDrawTransparentBackground (const vcl::Region &rRegion)
 
SAL_DLLPRIVATE void ImplDrawBackground (vcl::RenderContext &rRenderContext, const tools::Rectangle &rRect)
 
SAL_DLLPRIVATE void ImplErase (vcl::RenderContext &rRenderContext, const tools::Rectangle &rRect, bool bHighlight, bool bHasOpenPopup=false)
 
SAL_DLLPRIVATE void ImplDrawBorder (vcl::RenderContext &rRenderContext)
 
SAL_DLLPRIVATE const ImplToolItemImplGetFirstClippedItem () const
 
SAL_DLLPRIVATE Size ImplCalcSize (ImplToolItems::size_type nCalcLines, sal_uInt16 nCalcMode=0)
 
SAL_DLLPRIVATE void ImplCalcFloatSizes ()
 
SAL_DLLPRIVATE Size ImplCalcFloatSize (ImplToolItems::size_type &rLines)
 
SAL_DLLPRIVATE void ImplCalcMinMaxFloatSize (Size &rMinSize, Size &rMaxSize)
 
SAL_DLLPRIVATE void ImplSetMinMaxFloatSize ()
 
SAL_DLLPRIVATE ImplToolItems::size_type ImplCalcLines (tools::Long nToolSize) const
 
SAL_DLLPRIVATE sal_uInt16 ImplTestLineSize (const Point &rPos) const
 
SAL_DLLPRIVATE void ImplLineSizing (const Point &rPos, tools::Rectangle &rRect, sal_uInt16 nLineMode)
 
SAL_DLLPRIVATE void ImplDrawMenuButton (vcl::RenderContext &rRenderContext, bool bHighlight)
 
SAL_DLLPRIVATE void ImplDrawButton (vcl::RenderContext &rRenderContext, const tools::Rectangle &rRect, sal_uInt16 highlight, bool bChecked, bool bEnabled, bool bIsWindow)
 
SAL_DLLPRIVATE ImplToolItems::size_type ImplCountLineBreaks () const
 
SAL_DLLPRIVATE ImplToolBoxPrivateDataImplGetToolBoxPrivateData () const
 
SAL_DLLPRIVATE void ApplyBackgroundSettings (vcl::RenderContext &, const StyleSettings &)
 
SAL_DLLPRIVATE void ApplyForegroundSettings (vcl::RenderContext &, const StyleSettings &)
 
 ToolBox (vcl::Window *pParent, WinBits nStyle=0)
 
 ToolBox (vcl::Window *pParent, const OString &rID, const OUString &rUIXMLDescription, const css::uno::Reference< css::frame::XFrame > &rFrame=css::uno::Reference< css::frame::XFrame >())
 
virtual ~ToolBox () override
 
virtual void dispose () override
 This is intended to be used to clear any locally held references to other Window-subclass objects. More...
 
virtual void Click ()
 
void DoubleClick ()
 
virtual void Activate () override
 
virtual void Deactivate () override
 
void Highlight ()
 
virtual void Select ()
 
virtual void MouseButtonDown (const MouseEvent &rMEvt) override
 
virtual void MouseButtonUp (const MouseEvent &rMEvt) override
 
virtual void MouseMove (const MouseEvent &rMEvt) override
 
virtual void Tracking (const TrackingEvent &rTEvt) override
 
virtual void Paint (vcl::RenderContext &rRenderContext, const tools::Rectangle &rRect) override
 
virtual void Resize () override
 
virtual void RequestHelp (const HelpEvent &rHEvt) override
 
virtual bool EventNotify (NotifyEvent &rNEvt) override
 
virtual void Command (const CommandEvent &rCEvt) override
 
virtual void StateChanged (StateChangedType nType) override
 
virtual void DataChanged (const DataChangedEvent &rDCEvt) override
 
virtual void LoseFocus () override
 
virtual void KeyInput (const KeyEvent &rKEvt) override
 
virtual void ToggleFloatingMode () override
 
virtual void StartDocking () override
 
virtual bool Docking (const Point &rPos, tools::Rectangle &rRect) override
 
virtual void EndDocking (const tools::Rectangle &rRect, bool bFloatMode) override
 
virtual void Resizing (Size &rSize) override
 
virtual Size GetOptimalSize () const override
 
virtual void doDeferredInit (WinBits nBits) override
 
virtual void queue_resize (StateChangedType eReason=StateChangedType::Layout) override
 
virtual void InsertItem (const OUString &rCommand, const css::uno::Reference< css::frame::XFrame > &rFrame, ToolBoxItemBits nBits, const Size &rRequestedSize, ImplToolItems::size_type nPos=APPEND)
 Insert a command (like '.uno:Save'). More...
 
void InsertItem (ToolBoxItemId nItemId, const Image &rImage, ToolBoxItemBits nBits=ToolBoxItemBits::NONE, ImplToolItems::size_type nPos=APPEND)
 
void InsertItem (ToolBoxItemId nItemId, const Image &rImage, const OUString &rText, ToolBoxItemBits nBits=ToolBoxItemBits::NONE, ImplToolItems::size_type nPos=APPEND)
 
void InsertItem (ToolBoxItemId nItemId, const OUString &rText, ToolBoxItemBits nBits=ToolBoxItemBits::NONE, ImplToolItems::size_type nPos=APPEND)
 
void InsertWindow (ToolBoxItemId nItemId, vcl::Window *pWindow, ToolBoxItemBits nBits=ToolBoxItemBits::NONE, ImplToolItems::size_type nPos=APPEND)
 
void InsertSpace ()
 
void InsertSeparator (ImplToolItems::size_type nPos=APPEND, sal_uInt16 nPixSize=0)
 
void InsertBreak (ImplToolItems::size_type nPos=APPEND)
 
void RemoveItem (ImplToolItems::size_type nPos)
 
void CopyItem (const ToolBox &rToolBox, ToolBoxItemId nItemId)
 
void Clear ()
 
void SetButtonType (ButtonType eNewType)
 
ButtonType GetButtonType () const
 
void SetToolboxButtonSize (ToolBoxButtonSize eSize)
 
ToolBoxButtonSize GetToolboxButtonSize () const
 
vcl::ImageType GetImageSize () const
 
void SetAlign (WindowAlign eNewAlign=WindowAlign::Top)
 
WindowAlign GetAlign () const
 
bool IsHorizontal () const
 
void SetLineCount (ImplToolItems::size_type nNewLines)
 
void ShowLine (bool bNext)
 
ImplToolItems::size_type GetItemCount () const
 
ToolBoxItemType GetItemType (ImplToolItems::size_type nPos) const
 
ImplToolItems::size_type GetItemPos (ToolBoxItemId nItemId) const
 
ImplToolItems::size_type GetItemPos (const Point &rPos) const
 
ToolBoxItemId GetItemId (ImplToolItems::size_type nPos) const
 
ToolBoxItemId GetItemId (const Point &rPos) const
 
ToolBoxItemId GetItemId (const OUString &rCommand) const
 Map the command name (like .uno:Save) back to item id. More...
 
tools::Rectangle GetItemRect (ToolBoxItemId nItemId)
 
tools::Rectangle GetItemPosRect (ImplToolItems::size_type nPos)
 
tools::Rectangle const & GetOverflowRect () const
 
Size GetItemContentSize (ToolBoxItemId nItemId)
 Returns size of the bitmap / text that is inside this toolbox item. More...
 
ToolBoxItemId GetCurItemId () const
 
ToolBoxItemId GetDownItemId () const
 
sal_uInt16 GetModifier () const
 
void SetItemBits (ToolBoxItemId nItemId, ToolBoxItemBits nBits)
 
ToolBoxItemBits GetItemBits (ToolBoxItemId nItemId) const
 
void SetItemExpand (ToolBoxItemId nItemId, bool bExpand)
 
void SetItemWindowNonInteractive (ToolBoxItemId nItemId, bool bNonInteractive)
 
void SetItemData (ToolBoxItemId nItemId, void *pNewData)
 
voidGetItemData (ToolBoxItemId nItemId) const
 
void SetItemImage (ToolBoxItemId nItemId, const Image &rImage)
 
Image GetItemImage (ToolBoxItemId nItemId) const
 
void SetItemImageAngle (ToolBoxItemId nItemId, Degree10 nAngle10)
 
void SetItemImageMirrorMode (ToolBoxItemId nItemId, bool bMirror)
 
void SetItemText (ToolBoxItemId nItemId, const OUString &rText)
 
const OUString & GetItemText (ToolBoxItemId nItemId) const
 
void SetItemWindow (ToolBoxItemId nItemId, vcl::Window *pNewWindow)
 
vcl::WindowGetItemWindow (ToolBoxItemId nItemId) const
 
ToolBoxItemId GetHighlightItemId () const
 
void EndSelection ()
 
void SetItemDown (ToolBoxItemId nItemId, bool bDown)
 
void SetItemState (ToolBoxItemId nItemId, TriState eState)
 
TriState GetItemState (ToolBoxItemId nItemId) const
 
void CheckItem (ToolBoxItemId nItemId, bool bCheck=true)
 
bool IsItemChecked (ToolBoxItemId nItemId) const
 
void EnableItem (ToolBoxItemId nItemId, bool bEnable=true)
 
bool IsItemEnabled (ToolBoxItemId nItemId) const
 
void TriggerItem (ToolBoxItemId nItemId)
 
void ShowItem (ToolBoxItemId nItemId, bool bVisible=true)
 Shows or hides items. More...
 
void HideItem (ToolBoxItemId nItemId)
 Convenience method to hide items (via ShowItem). More...
 
bool IsItemClipped (ToolBoxItemId nItemId) const
 
bool IsItemVisible (ToolBoxItemId nItemId) const
 
bool IsItemReallyVisible (ToolBoxItemId nItemId) const
 
void SetItemCommand (ToolBoxItemId nItemId, const OUString &rCommand)
 
OUString GetItemCommand (ToolBoxItemId nItemId) const
 
void SetQuickHelpText (ToolBoxItemId nItemId, const OUString &rText)
 
OUString GetQuickHelpText (ToolBoxItemId nItemId) const
 
void SetHelpText (ToolBoxItemId nItemId, const OUString &rText)
 
const OUString & GetHelpText (ToolBoxItemId nItemId) const
 
void SetHelpId (ToolBoxItemId nItemId, const OString &rHelpId)
 
Size CalcWindowSizePixel ()
 
Size CalcWindowSizePixel (ImplToolItems::size_type nCalcLines)
 
Size CalcWindowSizePixel (ImplToolItems::size_type nCalcLines, WindowAlign eAlign)
 
Size CalcFloatingWindowSizePixel ()
 
Size CalcFloatingWindowSizePixel (ImplToolItems::size_type nCalcLines)
 
Size CalcPopupWindowSizePixel ()
 
Size CalcMinimumWindowSizePixel ()
 
ImplToolItems::size_type GetFloatingLines () const
 
void SetStyle (WinBits nNewStyle)
 
WinBits GetStyle () const
 
void Lock (bool bLock)
 
void EnableCustomize (bool bEnable=true)
 
bool IsCustomize () const
 
void SetClickHdl (const Link< ToolBox *, void > &rLink)
 
void SetDoubleClickHdl (const Link< ToolBox *, void > &rLink)
 
void SetDropdownClickHdl (const Link< ToolBox *, void > &rLink)
 
void SetActivateHdl (const Link< ToolBox *, void > &rLink)
 
void SetDeactivateHdl (const Link< ToolBox *, void > &rLink)
 
void SetSelectHdl (const Link< ToolBox *, void > &rLink)
 
void SetStateChangedHdl (const Link< StateChangedType const *, void > &aLink)
 
void SetDataChangedHdl (const Link< DataChangedEvent const *, void > &aLink)
 
void SetMenuButtonHdl (const Link< ToolBox *, void > &rLink)
 
void SetMenuType (ToolBoxMenuType aType=ToolBoxMenuType::Customize)
 
ToolBoxMenuType GetMenuType () const
 
bool IsMenuEnabled () const
 
PopupMenuGetMenu () const
 
void UpdateCustomMenu ()
 
void SetMenuExecuteHdl (const Link< ToolBox *, void > &rLink)
 
void ExecuteCustomMenu (const tools::Rectangle &rRect=tools::Rectangle())
 
bool IsKeyEvent () const
 
bool WillUsePopupMode () const
 
void WillUsePopupMode (bool b)
 
OUString GetDisplayText () const override
 
tools::Rectangle GetCharacterBounds (ToolBoxItemId nItemId, tools::Long nIndex)
 
tools::Long GetIndexForPoint (const Point &rPoint, ToolBoxItemId &rItemID)
 
Size GetDefaultImageSize () const
 
void ChangeHighlight (ImplToolItems::size_type nPos)
 
void SetToolbarLayoutMode (ToolBoxLayoutMode eLayout)
 
void statusChanged (const css::frame::FeatureStateEvent &rEvent)
 
void SetToolBoxTextPosition (ToolBoxTextPosition ePosition)
 
void SetLineSpacing (bool b)
 
virtual void DumpAsPropertyTree (tools::JsonWriter &) override
 Dumps itself and potentially its children to a property tree, to be written easily to JSON. More...
 
- Public Member Functions inherited from DockingWindow
bool isLayoutEnabled () const
 
void setOptimalLayoutSize ()
 
void ImplStartDocking (const Point &rPos)
 
SAL_DLLPRIVATE bool isDeferredInit () const
 
 DockingWindow (vcl::Window *pParent, WinBits nStyle)
 
 DockingWindow (vcl::Window *pParent, const OString &rID, const OUString &rUIXMLDescription, const css::uno::Reference< css::frame::XFrame > &rFrame=css::uno::Reference< css::frame::XFrame >())
 
virtual ~DockingWindow () override
 
virtual bool PrepareToggleFloatingMode ()
 
virtual bool Close ()
 
void SetMinOutputSizePixel (const Size &rSize)
 
const SizeGetMinOutputSizePixel () const
 
void SetMaxOutputSizePixel (const Size &rSize)
 
bool IsDocking () const
 
bool IsDockable () const
 
bool IsDockingCanceled () const
 
void SetFloatingMode (bool bFloatMode)
 
bool IsFloatingMode () const
 
SystemWindowGetFloatingWindow () const
 
void SetFloatingPos (const Point &rNewPos)
 
Point GetFloatingPos () const
 
void SetFloatStyle (WinBits nWinStyle)
 
WinBits GetFloatStyle () const
 
virtual void setPosSizePixel (tools::Long nX, tools::Long nY, tools::Long nWidth, tools::Long nHeight, PosSizeFlags nFlags=PosSizeFlags::All) override
 
Point GetPosPixel () const override
 
Size GetSizePixel () const override
 
void SetOutputSizePixel (const Size &rNewSize) override
 
Size GetOutputSizePixel () const
 
virtual void SetText (const OUString &rStr) override
 
virtual OUString GetText () const override
 
- Public Member Functions inherited from vcl::Window
 DECL_DLLPRIVATE_LINK (ImplHandlePaintHdl, Timer *, void)
 
 DECL_DLLPRIVATE_LINK (ImplGenerateMouseMoveHdl, void *, void)
 
 DECL_DLLPRIVATE_LINK (ImplTrackTimerHdl, Timer *, void)
 
 DECL_DLLPRIVATE_LINK (ImplAsyncFocusHdl, void *, void)
 
 DECL_DLLPRIVATE_LINK (ImplHandleResizeTimerHdl, Timer *, void)
 
SAL_DLLPRIVATE vcl::WindowImplGetFrameWindow () const
 
weld::WindowGetFrameWeld () const
 
vcl::WindowGetFrameWindow () const
 
SalFrameImplGetFrame () const
 
SAL_DLLPRIVATE ImplFrameDataImplGetFrameData ()
 
vcl::WindowImplGetWindow () const
 if this is a proxy return the client, otherwise itself More...
 
SAL_DLLPRIVATE ImplWinDataImplGetWinData () const
 
SAL_DLLPRIVATE vcl::WindowImplGetClientWindow () const
 
SAL_DLLPRIVATE vcl::WindowImplGetDlgWindow (sal_uInt16 n, GetDlgWindowType nType, sal_uInt16 nStart=0, sal_uInt16 nEnd=0xFFFF, sal_uInt16 *pIndex=nullptr)
 
SAL_DLLPRIVATE vcl::WindowImplGetParent () const
 
SAL_DLLPRIVATE vcl::WindowImplFindWindow (const Point &rFramePos)
 
SAL_DLLPRIVATE void ImplInvalidateFrameRegion (const vcl::Region *pRegion, InvalidateFlags nFlags)
 
SAL_DLLPRIVATE void ImplInvalidateOverlapFrameRegion (const vcl::Region &rRegion)
 
SAL_DLLPRIVATE bool ImplSetClipFlag (bool bSysObjOnlySmaller=false)
 
SAL_DLLPRIVATE bool ImplIsWindowOrChild (const vcl::Window *pWindow, bool bSystemWindow=false) const
 
SAL_DLLPRIVATE bool ImplIsChild (const vcl::Window *pWindow, bool bSystemWindow=false) const
 
SAL_DLLPRIVATE bool ImplIsFloatingWindow () const
 
SAL_DLLPRIVATE bool ImplIsPushButton () const
 
SAL_DLLPRIVATE bool ImplIsSplitter () const
 
SAL_DLLPRIVATE bool ImplIsOverlapWindow () const
 
SAL_DLLPRIVATE void ImplIsInTaskPaneList (bool mbIsInTaskList)
 
SAL_DLLPRIVATE WindowImplImplGetWindowImpl () const
 
SAL_DLLPRIVATE Point ImplFrameToOutput (const Point &rPos)
 
SAL_DLLPRIVATE void ImplGrabFocus (GetFocusFlags nFlags)
 
SAL_DLLPRIVATE void ImplGrabFocusToDocument (GetFocusFlags nFlags)
 
SAL_DLLPRIVATE void ImplInvertFocus (const tools::Rectangle &rRect)
 
SAL_DLLPRIVATE PointerStyle ImplGetMousePointer () const
 
SAL_DLLPRIVATE void ImplCallMouseMove (sal_uInt16 nMouseCode, bool bModChanged=false)
 
SAL_DLLPRIVATE void ImplGenerateMouseMove ()
 
SAL_DLLPRIVATE void ImplNotifyKeyMouseCommandEventListeners (NotifyEvent &rNEvt)
 
SAL_DLLPRIVATE void ImplNotifyIconifiedState (bool bIconified)
 
SAL_DLLPRIVATE void ImplUpdateAll ()
 
SAL_DLLPRIVATE void ImplControlFocus (GetFocusFlags nFlags=GetFocusFlags::NONE)
 
SAL_DLLPRIVATE void ImplMirrorFramePos (Point &pt) const
 
SAL_DLLPRIVATE void ImplPosSizeWindow (tools::Long nX, tools::Long nY, tools::Long nWidth, tools::Long nHeight, PosSizeFlags nFlags)
 
SAL_DLLPRIVATE void ImplCallResize ()
 
SAL_DLLPRIVATE void ImplCallMove ()
 
SAL_DLLPRIVATE void CompatGetFocus ()
 
SAL_DLLPRIVATE void CompatLoseFocus ()
 
SAL_DLLPRIVATE void CompatStateChanged (StateChangedType nStateChange)
 
SAL_DLLPRIVATE void CompatDataChanged (const DataChangedEvent &rDCEvt)
 
SAL_DLLPRIVATE bool CompatPreNotify (NotifyEvent &rNEvt)
 
SAL_DLLPRIVATE bool CompatNotify (NotifyEvent &rNEvt)
 
void IncModalCount ()
 
void DecModalCount ()
 
 Window (vcl::Window *pParent, WinBits nStyle=0)
 
virtual ~Window () override
 
::OutputDevice const * GetOutDev () const
 
::OutputDeviceGetOutDev ()
 
Color GetBackgroundColor () const
 
const WallpaperGetBackground () const
 
bool IsBackground () const
 
const MapModeGetMapMode () const
 
void SetBackground ()
 
void SetBackground (const Wallpaper &rBackground)
 
virtual void KeyUp (const KeyEvent &rKEvt)
 
virtual void PrePaint (vcl::RenderContext &rRenderContext)
 
virtual void PostPaint (vcl::RenderContext &rRenderContext)
 
void Erase (vcl::RenderContext &rRenderContext)
 
virtual void Draw (::OutputDevice *pDev, const Point &rPos, DrawFlags nFlags)
 
virtual void Move ()
 
virtual void GetFocus ()
 
virtual bool PreNotify (NotifyEvent &rNEvt)
 
void AddEventListener (const Link< VclWindowEvent &, void > &rEventListener)
 
void RemoveEventListener (const Link< VclWindowEvent &, void > &rEventListener)
 
void AddChildEventListener (const Link< VclWindowEvent &, void > &rEventListener)
 
void RemoveChildEventListener (const Link< VclWindowEvent &, void > &rEventListener)
 
ImplSVEventPostUserEvent (const Link< void *, void > &rLink, void *pCaller=nullptr, bool bReferenceLink=false)
 
void RemoveUserEvent (ImplSVEvent *nUserEvent)
 
LanguageType GetInputLanguage () const
 
void SetStyle (WinBits nStyle)
 
WinBits GetStyle () const
 
WinBits GetPrevStyle () const
 
void SetExtendedStyle (WindowExtendedStyle nExtendedStyle)
 
WindowExtendedStyle GetExtendedStyle () const
 
void SetType (WindowType nType)
 
WindowType GetType () const
 
bool IsSystemWindow () const
 
bool IsDockingWindow () const
 
bool IsDialog () const
 
bool IsMenuFloatingWindow () const
 
bool IsToolbarFloatingWindow () const
 
bool IsTopWindow () const
 
SystemWindowGetSystemWindow () const
 
bool SupportsDoubleBuffering () const
 Can the widget derived from this Window do the double-buffering via RenderContext properly? More...
 
void RequestDoubleBuffering (bool bRequest)
 Enable/disable double-buffering of the frame window and all its children. More...
 
void EnableAllResize ()
 
void SetBorderStyle (WindowBorderStyle nBorderStyle)
 
WindowBorderStyle GetBorderStyle () const
 
void GetBorder (sal_Int32 &rLeftBorder, sal_Int32 &rTopBorder, sal_Int32 &rRightBorder, sal_Int32 &rBottomBorder) const
 
Size CalcWindowSize (const Size &rOutSz) const
 
Size CalcOutputSize (const Size &rWinSz) const
 
tools::Long CalcTitleWidth () const
 
void EnableClipSiblings (bool bClipSiblings=true)
 
void EnableChildTransparentMode (bool bEnable=true)
 
bool IsChildTransparentModeEnabled () const
 
void SetMouseTransparent (bool bTransparent)
 
bool IsMouseTransparent () const
 
void SetPaintTransparent (bool bTransparent)
 
bool IsPaintTransparent () const
 
void SetDialogControlStart (bool bStart)
 
bool IsDialogControlStart () const
 
void SetDialogControlFlags (DialogControlFlags nFlags)
 
DialogControlFlags GetDialogControlFlags () const
 
PointerState GetPointerState ()
 
bool IsMouseOver () const
 
void SetInputContext (const InputContext &rInputContext)
 
const InputContextGetInputContext () const
 
void PostExtTextInputEvent (VclEventId nType, const OUString &rText)
 
void EndExtTextInput ()
 
void SetCursorRect (const tools::Rectangle *pRect=nullptr, tools::Long nExtTextInputWidth=0)
 
const tools::RectangleGetCursorRect () const
 
tools::Long GetCursorExtTextInputWidth () const
 
void SetCompositionCharRect (const tools::Rectangle *pRect, tools::Long nCompositionLength, bool bVertical=false)
 
void UpdateSettings (const AllSettings &rSettings, bool bChild=false)
 
void NotifyAllChildren (DataChangedEvent &rDCEvt)
 
void SetPointFont (vcl::RenderContext &rRenderContext, const vcl::Font &rFont)
 
vcl::Font GetPointFont (vcl::RenderContext const &rRenderContext) const
 
void SetZoomedPointFont (vcl::RenderContext &rRenderContext, const vcl::Font &rFont)
 
tools::Long GetDrawPixel (::OutputDevice const *pDev, tools::Long nPixels) const
 
vcl::Font GetDrawPixelFont (::OutputDevice const *pDev) const
 
void SetControlFont ()
 
void SetControlFont (const vcl::Font &rFont)
 
vcl::Font GetControlFont () const
 
bool IsControlFont () const
 
void ApplyControlFont (vcl::RenderContext &rRenderContext, const vcl::Font &rDefaultFont)
 
void SetControlForeground ()
 
void SetControlForeground (const Color &rColor)
 
const ColorGetControlForeground () const
 
bool IsControlForeground () const
 
void ApplyControlForeground (vcl::RenderContext &rRenderContext, const Color &rDefaultColor)
 
void SetControlBackground ()
 
void SetControlBackground (const Color &rColor)
 
const ColorGetControlBackground () const
 
bool IsControlBackground () const
 
void ApplyControlBackground (vcl::RenderContext &rRenderContext, const Color &rDefaultColor)
 
void SetParentClipMode (ParentClipMode nMode=ParentClipMode::NONE)
 
ParentClipMode GetParentClipMode () const
 
void SetWindowRegionPixel ()
 
void SetWindowRegionPixel (const vcl::Region &rRegion)
 
vcl::Region GetWindowClipRegionPixel () const
 
vcl::Region GetPaintRegion () const
 
bool IsInPaint () const
 
void ExpandPaintClipRegion (const vcl::Region &rRegion)
 
void SetParent (vcl::Window *pNewParent)
 
vcl::WindowGetParent () const
 
DialogGetParentDialog () const
 
bool IsAncestorOf (const vcl::Window &rWindow) const
 
void Show (bool bVisible=true, ShowFlags nFlags=ShowFlags::NONE)
 
void Hide ()
 
bool IsVisible () const
 
bool IsReallyVisible () const
 
bool IsReallyShown () const
 
bool IsInInitShow () const
 
void Enable (bool bEnable=true, bool bChild=true)
 
void Disable (bool bChild=true)
 
bool IsEnabled () const
 
void EnableInput (bool bEnable=true, bool bChild=true)
 
void EnableInput (bool bEnable, const vcl::Window *pExcludeWindow)
 
bool IsInputEnabled () const
 
void AlwaysEnableInput (bool bAlways, bool bChild=true)
 Override EnableInput. More...
 
bool IsAlwaysEnableInput () const
 returns the current AlwaysEnableInput state More...
 
bool IsInModalMode () const
 A window is in modal mode if one of its children or subchildren is a running modal window (a modal dialog) More...
 
void SetActivateMode (ActivateModeFlags nMode)
 
ActivateModeFlags GetActivateMode () const
 
void ToTop (ToTopFlags nFlags=ToTopFlags::NONE)
 
void SetZOrder (vcl::Window *pRefWindow, ZOrderFlags nFlags)
 
void EnableAlwaysOnTop (bool bEnable=true)
 
bool IsAlwaysOnTopEnabled () const
 
virtual void SetPosPixel (const Point &rNewPos)
 
virtual void SetSizePixel (const Size &rNewSize)
 
virtual void SetPosSizePixel (const Point &rNewPos, const Size &rNewSize)
 
bool IsDefaultPos () const
 
bool IsDefaultSize () const
 
Point GetOffsetPixelFrom (const vcl::Window &rWindow) const
 
Point OutputToScreenPixel (const Point &rPos) const
 
Point ScreenToOutputPixel (const Point &rPos) const
 
Point OutputToNormalizedScreenPixel (const Point &rPos) const
 
Point NormalizedScreenToOutputPixel (const Point &rPos) const
 
Point OutputToAbsoluteScreenPixel (const Point &rPos) const
 
Point AbsoluteScreenToOutputPixel (const Point &rPos) const
 
tools::Rectangle GetDesktopRectPixel () const
 
tools::Rectangle GetWindowExtentsRelative (const vcl::Window *pRelativeWindow) const
 
bool IsScrollable () const
 
virtual void Scroll (tools::Long nHorzScroll, tools::Long nVertScroll, ScrollFlags nFlags=ScrollFlags::NONE)
 
void Scroll (tools::Long nHorzScroll, tools::Long nVertScroll, const tools::Rectangle &rRect, ScrollFlags nFlags=ScrollFlags::NONE)
 
virtual void Invalidate (InvalidateFlags nFlags=InvalidateFlags::NONE)
 
virtual void Invalidate (const tools::Rectangle &rRect, InvalidateFlags nFlags=InvalidateFlags::NONE)
 
virtual void Invalidate (const vcl::Region &rRegion, InvalidateFlags nFlags=InvalidateFlags::NONE)
 
virtual void LogicInvalidate (const tools::Rectangle *pRectangle)
 Notification about some rectangle of the output device got invalidated.Used for the main document window. More...
 
virtual void PixelInvalidate (const tools::Rectangle *pRectangle)
 Notification about some rectangle of the output device got invalidated. More...
 
void Validate ()
 
bool HasPaintEvent () const
 
void PaintImmediately ()
 
void EnableDocking (bool bEnable=true)
 
void EnablePaint (bool bEnable)
 
bool IsPaintEnabled () const
 
void SetUpdateMode (bool bUpdate)
 
bool IsUpdateMode () const
 
void SetParentUpdateMode (bool bUpdate)
 
void GrabFocus ()
 
bool HasFocus () const
 
bool HasChildPathFocus (bool bSystemWindow=false) const
 
bool IsActive () const
 
bool HasActiveChildFrame () const
 
GetFocusFlags GetGetFocusFlags () const
 
void GrabFocusToDocument ()
 
VclPtr< vcl::WindowGetFocusedWindow () const
 
void SetFakeFocus (bool bFocus)
 Set this when you need to act as if the window has focus even if it doesn't. More...
 
bool IsCompoundControl () const
 
void CaptureMouse ()
 
void ReleaseMouse ()
 
bool IsMouseCaptured () const
 
void SetPointer (PointerStyle)
 
PointerStyle GetPointer () const
 
void EnableChildPointerOverwrite (bool bOverwrite)
 
void SetPointerPosPixel (const Point &rPos)
 
Point GetPointerPosPixel ()
 
Point GetLastPointerPosPixel ()
 
void SetLastMousePos (const Point &rPos)
 Similar to SetPointerPosPixel(), but sets the frame data's last mouse position instead. More...
 
void ShowPointer (bool bVisible)
 
void EnterWait ()
 
void LeaveWait ()
 
bool IsWait () const
 
void SetCursor (vcl::Cursor *pCursor)
 
vcl::CursorGetCursor () const
 
void SetZoom (const Fraction &rZoom)
 
const FractionGetZoom () const
 
bool IsZoom () const
 
tools::Long CalcZoom (tools::Long n) const
 
virtual const WallpaperGetDisplayBackground () const
 
void SetHelpText (const OUString &rHelpText)
 
const OUString & GetHelpText () const
 
void SetQuickHelpText (const OUString &rHelpText)
 
const OUString & GetQuickHelpText () const
 
void SetHelpId (const OString &)
 
const OString & GetHelpId () const
 
sal_uInt16 GetChildCount () const
 
vcl::WindowGetChild (sal_uInt16 nChild) const
 
vcl::WindowGetWindow (GetWindowType nType) const
 
bool IsChild (const vcl::Window *pWindow) const
 
bool IsWindowOrChild (const vcl::Window *pWindow, bool bSystemWindow=false) const
 
SAL_DLLPRIVATE void CollectChildren (::std::vector< vcl::Window * > &rAllChildren)
 Add all children to rAllChildren recursively. More...
 
virtual void ShowFocus (const tools::Rectangle &rRect)
 
void HideFocus ()
 
void DrawSelectionBackground (const tools::Rectangle &rRect, sal_uInt16 highlight, bool bChecked, bool bDrawBorder)
 
void ShowTracking (const tools::Rectangle &rRect, ShowTrackFlags nFlags=ShowTrackFlags::Small)
 
void HideTracking ()
 
void InvertTracking (const tools::Rectangle &rRect, ShowTrackFlags nFlags)
 
void StartTracking (StartTrackingFlags nFlags=StartTrackingFlags::NONE)
 
void EndTracking (TrackingEventFlags nFlags=TrackingEventFlags::NONE)
 
bool IsTracking () const
 
void StartAutoScroll (StartAutoScrollFlags nFlags)
 
void EndAutoScroll ()
 
bool HandleScrollCommand (const CommandEvent &rCmd, ScrollBar *pHScrl, ScrollBar *pVScrl)
 
virtual const SystemEnvDataGetSystemData () const
 
virtual css::uno::Reference< css::awt::XWindowPeer > GetComponentInterface (bool bCreate=true)
 
void SetComponentInterface (css::uno::Reference< css::awt::XWindowPeer > const &xIFace)
 
void SetLOKNotifier (const vcl::ILibreOfficeKitNotifier *pNotifier, bool bParent=false)
 Interface to register for dialog / window tunneling. More...
 
const vcl::ILibreOfficeKitNotifier * GetLOKNotifier () const
 
vcl::LOKWindowId GetLOKWindowId () const
 
VclPtr< vcl::WindowGetParentWithLOKNotifier ()
 Find the nearest parent with LOK Notifier; can be itself if this Window has LOK notifier set. More...
 
void ReleaseLOKNotifier ()
 Indicate that LOK is not going to use this dialog any more. More...
 
virtual void LogicMouseButtonDown (const MouseEvent &)
 Same as MouseButtonDown(), but coordinates are in logic unit. used for LOK. More...
 
virtual void LogicMouseButtonUp (const MouseEvent &)
 Same as MouseButtonUp(), but coordinates are in logic unit. used for LOK. More...
 
virtual void LogicMouseMove (const MouseEvent &)
 Same as MouseMove(), but coordinates are in logic unit. used for LOK. More...
 
void RecordLayoutData (vcl::ControlLayoutData *pLayout, const tools::Rectangle &rRect)
 
VCLXWindowGetWindowPeer () const
 
void SetWindowPeer (css::uno::Reference< css::awt::XWindowPeer > const &xPeer, VCLXWindow *pVCLXWindow)
 
bool IsCreatedWithToolkit () const
 
void SetCreatedWithToolkit (bool b)
 
css::uno::Reference< css::datatransfer::dnd::XDropTarget > GetDropTarget ()
 
css::uno::Reference< css::datatransfer::dnd::XDragSource > GetDragSource ()
 
css::uno::Reference< css::datatransfer::dnd::XDragGestureRecognizer > GetDragGestureRecognizer ()
 
css::uno::Reference< css::datatransfer::clipboard::XClipboard > GetClipboard ()
 
void SetClipboard (css::uno::Reference< css::datatransfer::clipboard::XClipboard > const &xClipboard)
 Sets a custom clipboard for the window's frame, instead of creating it on-demand using css::datatransfer::clipboard::SystemClipboard. More...
 
void set_height_request (sal_Int32 nHeightRequest)
 
sal_Int32 get_height_request () const
 
void set_width_request (sal_Int32 nWidthRequest)
 
sal_Int32 get_width_request () const
 
Size get_preferred_size () const
 
VclAlign get_halign () const
 
void set_halign (VclAlign eAlign)
 
VclAlign get_valign () const
 
void set_valign (VclAlign eAlign)
 
bool get_hexpand () const
 
void set_hexpand (bool bExpand)
 
bool get_vexpand () const
 
void set_vexpand (bool bExpand)
 
bool get_expand () const
 
void set_expand (bool bExpand)
 
bool get_fill () const
 
void set_fill (bool bFill)
 
void set_border_width (sal_Int32 nBorderWidth)
 
sal_Int32 get_border_width () const
 
void set_margin_start (sal_Int32 nWidth)
 
sal_Int32 get_margin_start () const
 
void set_margin_end (sal_Int32 nWidth)
 
sal_Int32 get_margin_end () const
 
void set_margin_top (sal_Int32 nWidth)
 
sal_Int32 get_margin_top () const
 
void set_margin_bottom (sal_Int32 nWidth)
 
sal_Int32 get_margin_bottom () const
 
VclPackType get_pack_type () const
 
void set_pack_type (VclPackType ePackType)
 
sal_Int32 get_padding () const
 
void set_padding (sal_Int32 nPadding)
 
sal_Int32 get_grid_width () const
 
void set_grid_width (sal_Int32 nCols)
 
sal_Int32 get_grid_left_attach () const
 
void set_grid_left_attach (sal_Int32 nAttach)
 
sal_Int32 get_grid_height () const
 
void set_grid_height (sal_Int32 nRows)
 
sal_Int32 get_grid_top_attach () const
 
void set_grid_top_attach (sal_Int32 nAttach)
 
bool get_secondary () const
 
void set_secondary (bool bSecondary)
 
bool get_non_homogeneous () const
 
void set_non_homogeneous (bool bNonHomogeneous)
 
virtual bool set_property (const OString &rKey, const OUString &rValue)
 
bool set_font_attribute (const OString &rKey, const OUString &rValue)
 
void add_to_size_group (const std::shared_ptr< VclSizeGroup > &xGroup)
 
void remove_from_all_size_groups ()
 
void add_mnemonic_label (FixedText *pLabel)
 
void remove_mnemonic_label (FixedText *pLabel)
 
const std::vector< VclPtr< FixedText > > & list_mnemonic_labels () const
 
void reorderWithinParent (sal_uInt16 nNewPosition)
 
void set_id (const OUString &rID)
 Sets an ID. More...
 
const OUString & get_id () const
 Get the ID of the window. More...
 
void EnableNativeWidget (bool bEnable=true)
 
bool IsNativeWidgetEnabled () const
 
void PaintToDevice (::OutputDevice *pDevice, const Point &rPos)
 
KeyIndicatorState GetIndicatorState () const
 Query the states of keyboard indicators - Caps Lock, Num Lock and Scroll Lock. More...
 
void SimulateKeyPress (sal_uInt16 nKeyCode) const
 
virtual OUString GetSurroundingText () const
 
virtual Selection GetSurroundingTextSelection () const
 
virtual bool DeleteSurroundingText (const Selection &rSelection)
 
virtual bool IsChart () const
 
void SetHelpHdl (const Link< vcl::Window &, bool > &rLink)
 
void SetMnemonicActivateHdl (const Link< vcl::Window &, bool > &rLink)
 
void SetModalHierarchyHdl (const Link< bool, void > &rLink)
 
void SetDumpAsPropertyTreeHdl (const Link< tools::JsonWriter &, void > &rLink)
 
Size GetOutputSizePixel () const
 
tools::Rectangle GetOutputRectPixel () const
 
Point LogicToPixel (const Point &rLogicPt) const
 
Size LogicToPixel (const Size &rLogicSize) const
 
tools::Rectangle LogicToPixel (const tools::Rectangle &rLogicRect) const
 
vcl::Region LogicToPixel (const vcl::Region &rLogicRegion) const
 
Point LogicToPixel (const Point &rLogicPt, const MapMode &rMapMode) const
 
Size LogicToPixel (const Size &rLogicSize, const MapMode &rMapMode) const
 
tools::Rectangle LogicToPixel (const tools::Rectangle &rLogicRect, const MapMode &rMapMode) const
 
Point PixelToLogic (const Point &rDevicePt) const
 
Size PixelToLogic (const Size &rDeviceSize) const
 
tools::Rectangle PixelToLogic (const tools::Rectangle &rDeviceRect) const
 
tools::PolyPolygon PixelToLogic (const tools::PolyPolygon &rDevicePolyPoly) const
 
vcl::Region PixelToLogic (const vcl::Region &rDeviceRegion) const
 
Point PixelToLogic (const Point &rDevicePt, const MapMode &rMapMode) const
 
Size PixelToLogic (const Size &rDeviceSize, const MapMode &rMapMode) const
 
tools::Rectangle PixelToLogic (const tools::Rectangle &rDeviceRect, const MapMode &rMapMode) const
 
Size LogicToLogic (const Size &rSzSource, const MapMode *pMapModeSource, const MapMode *pMapModeDest) const
 
const AllSettingsGetSettings () const
 
void SetSettings (const AllSettings &rSettings)
 
void SetSettings (const AllSettings &rSettings, bool bChild)
 
tools::Rectangle GetTextRect (const tools::Rectangle &rRect, const OUString &rStr, DrawTextFlags nStyle=DrawTextFlags::WordBreak, TextRectInfo *pInfo=nullptr, const vcl::ITextLayout *_pTextLayout=nullptr) const
 
float GetDPIScaleFactor () const
 
tools::Long GetOutOffXPixel () const
 
tools::Long GetOutOffYPixel () const
 
void EnableMapMode (bool bEnable=true)
 
bool IsMapModeEnabled () const
 
void SetMapMode ()
 
void SetMapMode (const MapMode &rNewMapMode)
 
virtual void EnableRTL (bool bEnable=true)
 
bool IsRTLEnabled () const
 
void SetFont (const vcl::Font &rNewFont)
 
const vcl::FontGetFont () const
 
tools::Long GetTextWidth (const OUString &rStr, sal_Int32 nIndex=0, sal_Int32 nLen=-1, vcl::TextLayoutCache const *=nullptr, SalLayoutGlyphs const *const pLayoutCache=nullptr) const
 Width of the text. More...
 
tools::Long GetTextHeight () const
 Height where any character of the current font fits; in logic coordinates. More...
 
float approximate_digit_width () const
 
void SetTextColor (const Color &rColor)
 
const ColorGetTextColor () const
 
void SetTextFillColor ()
 
void SetTextFillColor (const Color &rColor)
 
Color GetTextFillColor () const
 
bool IsTextFillColor () const
 
void SetTextLineColor ()
 
void SetTextLineColor (const Color &rColor)
 
const ColorGetTextLineColor () const
 
bool IsTextLineColor () const
 
void SetOverlineColor ()
 
void SetOverlineColor (const Color &rColor)
 
const ColorGetOverlineColor () const
 
bool IsOverlineColor () const
 
void SetTextAlign (TextAlign eAlign)
 
TextAlign GetTextAlign () const
 
bool IsNativeControlSupported (ControlType nType, ControlPart nPart) const
 Query the platform layer for control support. More...
 
bool GetNativeControlRegion (ControlType nType, ControlPart nPart, const tools::Rectangle &rControlRegion, ControlState nState, const ImplControlValue &aValue, tools::Rectangle &rNativeBoundingRegion, tools::Rectangle &rNativeContentRegion) const
 Query the native control's actual drawing region (including adornment) More...
 
css::uno::Reference< css::accessibility::XAccessible > GetAccessible (bool bCreate=true)
 
virtual css::uno::Reference< css::accessibility::XAccessible > CreateAccessible ()
 
void SetAccessible (const css::uno::Reference< css::accessibility::XAccessible > &)
 
vcl::WindowGetAccessibleParentWindow () const
 
sal_uInt16 GetAccessibleChildWindowCount ()
 
vcl::WindowGetAccessibleChildWindow (sal_uInt16 n)
 
void SetAccessibleRole (sal_uInt16 nRole)
 
sal_uInt16 GetAccessibleRole () const
 
void SetAccessibleName (const OUString &rName)
 
OUString GetAccessibleName () const
 
void SetAccessibleDescription (const OUString &rDescr)
 
OUString GetAccessibleDescription () const
 
void SetAccessibleRelationLabeledBy (vcl::Window *pLabeledBy)
 
vcl::WindowGetAccessibleRelationLabeledBy () const
 
void SetAccessibleRelationLabelFor (vcl::Window *pLabelFor)
 
vcl::WindowGetAccessibleRelationLabelFor () const
 
void SetAccessibleRelationMemberOf (vcl::Window *pMemberOf)
 
vcl::WindowGetAccessibleRelationMemberOf () const
 
bool IsAccessibilityEventsSuppressed (bool bTraverseParentPath=true)
 
void SetAccessibilityEventsSuppressed (bool bSuppressed)
 
KeyEvent GetActivationKey () const
 
- Public Member Functions inherited from VclReferenceBase
void acquire () const
 
void release () const
 
sal_Int32 getRefCount () const
 
void disposeOnce ()
 
bool isDisposed () const
 
- Public Member Functions inherited from VclBuilderContainer
 VclBuilderContainer ()
 
virtual ~VclBuilderContainer ()
 
void disposeBuilder ()
 
void setDeferredProperties ()
 

Static Public Member Functions

static SAL_DLLPRIVATE int ImplGetDragWidth (const vcl::RenderContext &rRenderContext, bool bHorz)
 
static SAL_DLLPRIVATE int ImplGetDragWidth (const vcl::Window &rWindow, bool bHorz)
 
static SAL_DLLPRIVATE void ImplDrawGrip (vcl::RenderContext &rRenderContext, const tools::Rectangle &aDragArea, int nDragWidth, WindowAlign eAlign, bool bHorz)
 
static SAL_DLLPRIVATE void ImplDrawConstantBackground (vcl::RenderContext &rRenderContext, const vcl::Region &rRegion, bool bIsInPopupMode)
 
static SAL_DLLPRIVATE ImplToolItems::size_type ImplFindItemPos (const ImplToolItem *pItem, const ImplToolItems &rList)
 
static bool AlwaysLocked ()
 
static Size GetDefaultImageSize (ToolBoxButtonSize eToolBoxButtonSize)
 
- Static Public Member Functions inherited from vcl::Window
static SAL_DLLPRIVATE void ImplInitAppFontData (vcl::Window const *pWindow)
 
static SAL_DLLPRIVATE void ImplCalcSymbolRect (tools::Rectangle &rRect)
 
static DockingManagerGetDockingManager ()
 
static VclPtr< vcl::WindowSaveFocus ()
 
static void EndSaveFocus (const VclPtr< vcl::Window > &xFocusWin)
 
static VclPtr< vcl::WindowFindLOKWindow (vcl::LOKWindowId nWindowId)
 Find an existing Window based on the LOKWindowId. More...
 
static bool IsLOKWindowsEmpty ()
 check if LOK Window container is empty More...
 
static OUString GetNonMnemonicString (const OUString &rStr)
 

Static Public Attributes

static constexpr auto APPEND = std::numeric_limits<ImplToolItems::size_type>::max()
 
static constexpr auto ITEM_NOTFOUND = std::numeric_limits<ImplToolItems::size_type>::max()
 

Protected Member Functions

virtual void ApplySettings (vcl::RenderContext &rRenderContext) override
 
- Protected Member Functions inherited from DockingWindow
SAL_DLLPRIVATE void SetIdleDebugName (const char *pDebugName)
 
SAL_DLLPRIVATE void ImplInit (vcl::Window *pParent, WinBits nStyle)
 
SAL_DLLPRIVATE void ImplInitSettings ()
 
SAL_DLLPRIVATE void DoInitialLayout ()
 
void loadUI (vcl::Window *pParent, const OString &rID, const OUString &rUIXMLDescription, const css::uno::Reference< css::frame::XFrame > &rFrame)
 
 DockingWindow (WindowType nType)
 
- Protected Member Functions inherited from vcl::Window
SAL_DLLPRIVATE void ImplInit (vcl::Window *pParent, WinBits nStyle, SystemParentData *pSystemParentData)
 
SAL_DLLPRIVATE Point ImplOutputToFrame (const Point &rPos)
 
SAL_DLLPRIVATE void ImplInvalidateParentFrameRegion (vcl::Region &rRegion)
 
SAL_DLLPRIVATE void ImplValidateFrameRegion (const vcl::Region *rRegion, ValidateFlags nFlags)
 
SAL_DLLPRIVATE void ImplValidate ()
 
SAL_DLLPRIVATE void ImplMoveInvalidateRegion (const tools::Rectangle &rRect, tools::Long nHorzScroll, tools::Long nVertScroll, bool bChildren)
 
SAL_DLLPRIVATE void ImplMoveAllInvalidateRegions (const tools::Rectangle &rRect, tools::Long nHorzScroll, tools::Long nVertScroll, bool bChildren)
 
SAL_DLLPRIVATE vcl::WindowImplGetBorderWindow () const
 
SAL_DLLPRIVATE void ImplInvalidate (const vcl::Region *rRegion, InvalidateFlags nFlags)
 
virtual WindowHitTest ImplHitTest (const Point &rFramePos)
 
SAL_DLLPRIVATE void ImplSetMouseTransparent (bool bTransparent)
 
SAL_DLLPRIVATE void ImplScroll (const tools::Rectangle &rRect, tools::Long nHorzScroll, tools::Long nVertScroll, ScrollFlags nFlags)
 
SAL_DLLPRIVATE bool ImplSetClipFlagChildren (bool bSysObjOnlySmaller)
 
SAL_DLLPRIVATE bool ImplSetClipFlagOverlapWindows (bool bSysObjOnlySmaller=false)
 
SAL_DLLPRIVATE void PushPaintHelper (PaintHelper *pHelper, vcl::RenderContext &rRenderContext)
 
SAL_DLLPRIVATE void PopPaintHelper (PaintHelper const *pHelper)
 
 Window (WindowType nType)
 
void SetCompoundControl (bool bCompound)
 
void CallEventListeners (VclEventId nEvent, void *pData=nullptr)
 
virtual void ImplAdjustNWFSizes ()
 
SAL_DLLPRIVATE float approximate_char_width () const
 
SAL_DLLPRIVATE vcl::WindowgetLegacyNonLayoutAccessibleRelationMemberOf () const
 
SAL_DLLPRIVATE vcl::WindowgetLegacyNonLayoutAccessibleRelationLabeledBy () const
 
SAL_DLLPRIVATE vcl::WindowgetLegacyNonLayoutAccessibleRelationLabelFor () const
 
virtual vcl::WindowgetAccessibleRelationLabelFor () const
 
virtual sal_uInt16 getDefaultAccessibleRole () const
 
virtual OUString getDefaultAccessibleName () const
 
void InvalidateSizeCache ()
 clear OptimalSize cache More...
 
- Protected Member Functions inherited from VclReferenceBase
 VclReferenceBase ()
 
virtual ~VclReferenceBase ()
 

Private Member Functions

SAL_DLLPRIVATE void InvalidateItem (ImplToolItems::size_type nPosition)
 
SAL_DLLPRIVATE void InvalidateSpin (bool bInvalidateUpper=true, bool bInvalidateLower=true)
 
SAL_DLLPRIVATE void InvalidateMenuButton ()
 
SAL_DLLPRIVATE void ImplInitToolBoxData ()
 
SAL_DLLPRIVATE void ImplInit (vcl::Window *pParent, WinBits nStyle)
 
SAL_DLLPRIVATE void ImplInitSettings (bool bFont, bool bForeground, bool bBackground)
 
SAL_DLLPRIVATE ImplToolItemImplGetItem (ToolBoxItemId nId) const
 
SAL_DLLPRIVATE bool ImplCalcItem ()
 
SAL_DLLPRIVATE ImplToolItems::size_type ImplCalcBreaks (tools::Long nWidth, tools::Long *pMaxLineWidth, bool bCalcHorz) const
 
SAL_DLLPRIVATE void ImplFormat (bool bResize=false)
 
SAL_DLLPRIVATE void ImplDrawSpin (vcl::RenderContext &rRenderContext)
 
SAL_DLLPRIVATE void ImplDrawSeparator (vcl::RenderContext &rRenderContext, ImplToolItems::size_type nPos, const tools::Rectangle &rRect)
 
SAL_DLLPRIVATE void ImplDrawItem (vcl::RenderContext &rRenderContext, ImplToolItems::size_type nPos, sal_uInt16 nHighlight)
 
SAL_DLLPRIVATE void ImplInvalidate (bool bNewCalc=false, bool bFullPaint=false)
 
SAL_DLLPRIVATE void ImplUpdateItem (ImplToolItems::size_type nIndex=ITEM_NOTFOUND)
 
SAL_DLLPRIVATE bool ImplHandleMouseMove (const MouseEvent &rMEvt, bool bRepeat=false)
 
SAL_DLLPRIVATE bool ImplHandleMouseButtonUp (const MouseEvent &rMEvt, bool bCancel=false)
 
SAL_DLLPRIVATE void ImplChangeHighlight (ImplToolItem const *pItem, bool bNoGrabFocus=false)
 
SAL_DLLPRIVATE bool ImplChangeHighlightUpDn (bool bUp, bool bNoCycle=false)
 
SAL_DLLPRIVATE ImplToolItems::size_type ImplGetItemLine (ImplToolItem const *pCurrentItem)
 
SAL_DLLPRIVATE ImplToolItemImplGetFirstValidItem (ImplToolItems::size_type nLine)
 
SAL_DLLPRIVATE bool ImplOpenItem (vcl::KeyCode aKeyCode)
 
SAL_DLLPRIVATE bool ImplActivateItem (vcl::KeyCode aKeyCode)
 
SAL_DLLPRIVATE void ImplShowFocus ()
 
SAL_DLLPRIVATE void ImplHideFocus ()
 
SAL_DLLPRIVATE void ImplUpdateInputEnable ()
 
SAL_DLLPRIVATE void ImplFillLayoutData ()
 
SAL_DLLPRIVATE bool ImplHasClippedItems ()
 
SAL_DLLPRIVATE Point ImplGetPopupPosition (const tools::Rectangle &rRect) const
 
SAL_DLLPRIVATE bool ImplIsFloatingMode () const
 
SAL_DLLPRIVATE bool ImplIsInPopupMode () const
 
SAL_DLLPRIVATE const OUString & ImplGetHelpText (ToolBoxItemId nItemId) const
 
SAL_DLLPRIVATE Size ImplGetOptimalFloatingSize ()
 
SAL_DLLPRIVATE bool ImplHasExternalMenubutton ()
 
SAL_DLLPRIVATE void ImplDrawFloatwinBorder (vcl::RenderContext &rRenderContext, ImplToolItem const *pItem)
 
 DECL_DLLPRIVATE_LINK (ImplUpdateHdl, Timer *, void)
 
 DECL_DLLPRIVATE_LINK (ImplCustomMenuListener, VclMenuEvent &, void)
 
 DECL_DLLPRIVATE_LINK (ImplDropdownLongClickHdl, Timer *, void)
 
 ToolBox (const ToolBox &)=delete
 
ToolBoxoperator= (const ToolBox &)=delete
 

Private Attributes

std::unique_ptr< ImplToolBoxPrivateDatampData
 
std::vector< ImplToolSizemaFloatSizes
 
std::unique_ptr< IdlempIdle
 
tools::Rectangle maUpperRect
 
tools::Rectangle maLowerRect
 
tools::Rectangle maPaintRect
 
VclPtr< FloatingWindowmpFloatWin
 
tools::Long mnDX
 
tools::Long mnDY
 
tools::Long mnMaxItemWidth
 
tools::Long mnMaxItemHeight
 
tools::Long mnWinHeight
 
tools::Long mnLeftBorder
 
tools::Long mnTopBorder
 
tools::Long mnRightBorder
 
tools::Long mnBottomBorder
 
tools::Long mnLastResizeDY
 
tools::Long mnActivateCount
 
Degree10 mnImagesRotationAngle
 
ToolBoxItemId mnLastFocusItemId
 
ToolBoxItemId mnHighItemId
 
ToolBoxItemId mnCurItemId
 
ToolBoxItemId mnDownItemId
 
ImplToolItems::size_type mnCurPos
 
ImplToolItems::size_type mnLines
 
ImplToolItems::size_type mnCurLine
 
ImplToolItems::size_type mnCurLines
 
ImplToolItems::size_type mnVisLines
 
ImplToolItems::size_type mnFloatLines
 
ImplToolItems::size_type mnDockLines
 
sal_uInt16 mnMouseModifier
 
bool mbDrag:1
 
bool mbUpper:1
 
bool mbLower:1
 
bool mbIn:1
 
bool mbCalc:1
 
bool mbFormat:1
 
bool mbFullPaint:1
 
bool mbHorz:1
 
bool mbScroll:1
 
bool mbLastFloatMode:1
 
bool mbCustomize:1
 
bool mbDragging:1
 
bool mbIsKeyEvent:1
 
bool mbChangingHighlight:1
 
bool mbImagesMirrored:1
 
bool mbLineSpacing:1
 
bool mbIsArranged:1
 
WindowAlign meAlign
 
WindowAlign meDockAlign
 
ButtonType meButtonType
 
PointerStyle meLastStyle
 
WinBits mnWinStyle
 
ToolBoxLayoutMode meLayoutMode
 
ToolBoxTextPosition meTextPosition
 
Link< ToolBox *, voidmaClickHdl
 
Link< ToolBox *, voidmaDoubleClickHdl
 
Link< ToolBox *, voidmaActivateHdl
 
Link< ToolBox *, voidmaDeactivateHdl
 
Link< ToolBox *, voidmaSelectHdl
 
Link< ToolBox *, voidmaMenuButtonHdl
 
Link< StateChangedType const *, voidmaStateChangedHandler
 
Link< DataChangedEvent const *, voidmaDataChangedHandler
 
rtl::Reference< VclStatusListener< ToolBox > > mpStatusListener
 StatusListener. More...
 

Friends

class FloatingWindow
 
class ImplTBDragMgr
 

Additional Inherited Members

- Protected Attributes inherited from DockingWindow
bool mbIsDeferredInit
 
VclPtr< vcl::WindowmpDialogParent
 
- Protected Attributes inherited from VclBuilderContainer
std::unique_ptr< VclBuilderm_pUIBuilder
 

Detailed Description

Definition at line 82 of file toolbox.hxx.

Member Typedef Documentation

using ToolBox::ImplToolItems = std::vector<ImplToolItem>

Definition at line 88 of file toolbox.hxx.

Constructor & Destructor Documentation

ToolBox::ToolBox ( const ToolBox )
privatedelete
ToolBox::ToolBox ( vcl::Window pParent,
WinBits  nStyle = 0 
)

Definition at line 1274 of file toolbox.cxx.

References ImplInit(), ImplInitToolBoxData(), and TOOLBOX.

ToolBox::ToolBox ( vcl::Window pParent,
const OString &  rID,
const OUString &  rUIXMLDescription,
const css::uno::Reference< css::frame::XFrame > &  rFrame = css::uno::Reference<css::frame::XFrame>() 
)
ToolBox::~ToolBox ( )
overridevirtual

Definition at line 1300 of file toolbox.cxx.

References VclReferenceBase::disposeOnce().

Member Function Documentation

void ToolBox::Activate ( )
overridevirtual
bool ToolBox::AlwaysLocked ( )
static
void ToolBox::ApplyBackgroundSettings ( vcl::RenderContext rRenderContext,
const StyleSettings rStyleSettings 
)
void ToolBox::ApplyForegroundSettings ( vcl::RenderContext rRenderContext,
const StyleSettings rStyleSettings 
)
void ToolBox::ApplySettings ( vcl::RenderContext rRenderContext)
overrideprotectedvirtual
Size ToolBox::CalcFloatingWindowSizePixel ( )

Definition at line 4106 of file toolbox.cxx.

References ImplCountLineBreaks().

Referenced by CalcPopupWindowSizePixel().

Size ToolBox::CalcFloatingWindowSizePixel ( ImplToolItems::size_type  nCalcLines)

Definition at line 4113 of file toolbox.cxx.

References ImplCalcFloatSize(), mbFormat, and mpData.

Size ToolBox::CalcMinimumWindowSizePixel ( )
Size ToolBox::CalcPopupWindowSizePixel ( )
Size ToolBox::CalcWindowSizePixel ( )
inline
Size ToolBox::CalcWindowSizePixel ( ImplToolItems::size_type  nCalcLines)

Definition at line 4061 of file toolbox.cxx.

References ImplCalcSize().

Size ToolBox::CalcWindowSizePixel ( ImplToolItems::size_type  nCalcLines,
WindowAlign  eAlign 
)

Definition at line 4066 of file toolbox.cxx.

References ImplCalcSize(), TB_CALCMODE_HORZ, and TB_CALCMODE_VERT.

void ToolBox::ChangeHighlight ( ImplToolItems::size_type  nPos)
void ToolBox::CheckItem ( ToolBoxItemId  nItemId,
bool  bCheck = true 
)
inline

Definition at line 522 of file toolbox.hxx.

References SetItemState(), TRISTATE_FALSE, and TRISTATE_TRUE.

Referenced by SalInstanceToolbar::set_item_active().

void ToolBox::Clear ( )
void ToolBox::Click ( )
virtual
void ToolBox::Command ( const CommandEvent rCEvt)
overridevirtual
void ToolBox::CopyItem ( const ToolBox rToolBox,
ToolBoxItemId  nItemId 
)
void ToolBox::DataChanged ( const DataChangedEvent rDCEvt)
overridevirtual
void ToolBox::Deactivate ( )
overridevirtual
ToolBox::DECL_DLLPRIVATE_LINK ( ImplUpdateHdl  ,
Timer ,
void   
)
private
ToolBox::DECL_DLLPRIVATE_LINK ( ImplCustomMenuListener  ,
VclMenuEvent ,
void   
)
private
ToolBox::DECL_DLLPRIVATE_LINK ( ImplDropdownLongClickHdl  ,
Timer ,
void   
)
private
void ToolBox::dispose ( void  )
overridevirtual

This is intended to be used to clear any locally held references to other Window-subclass objects.

Reimplemented from DockingWindow.

Definition at line 1305 of file toolbox.cxx.

References Cancel, VclPtr< reference_type >::clear(), Deactivate(), DockingWindow::dispose(), FloatingWindow::EndPopupMode(), ImplGetSVData(), ImplSVData::maCtrlData, mnActivateCount, mpData, mpFloatWin, mpIdle, mpStatusListener, and ImplSVCtrlData::mpTBDragMgr.

bool ToolBox::Docking ( const Point rPos,
tools::Rectangle rRect 
)
overridevirtual
void ToolBox::doDeferredInit ( WinBits  nBits)
overridevirtual

Reimplemented from DockingWindow.

Definition at line 1261 of file toolbox.cxx.

References ImplInit(), DockingWindow::mbIsDeferredInit, and DockingWindow::mpDialogParent.

void ToolBox::DoubleClick ( )
void ToolBox::DumpAsPropertyTree ( tools::JsonWriter rJsonWriter)
overridevirtual
void ToolBox::EnableCustomize ( bool  bEnable = true)

Definition at line 4170 of file toolbox.cxx.

References mbCustomize.

void ToolBox::EnableItem ( ToolBoxItemId  nItemId,
bool  bEnable = true 
)
void ToolBox::EndDocking ( const tools::Rectangle rRect,
bool  bFloatMode 
)
overridevirtual
void ToolBox::EndSelection ( )
bool ToolBox::EventNotify ( NotifyEvent rNEvt)
overridevirtual
void ToolBox::ExecuteCustomMenu ( const tools::Rectangle rRect = tools::Rectangle())
WindowAlign ToolBox::GetAlign ( ) const
inline
ButtonType ToolBox::GetButtonType ( ) const
inline

Definition at line 336 of file toolbox.hxx.

tools::Rectangle ToolBox::GetCharacterBounds ( ToolBoxItemId  nItemId,
tools::Long  nIndex 
)

Definition at line 1414 of file toolbox2.cxx.

References i, ImplFillLayoutData(), and mpData.

ToolBoxItemId ToolBox::GetCurItemId ( ) const
inline

Definition at line 365 of file toolbox.hxx.

Referenced by ToolBoxUIObject::get_action(), and ToolBoxUIObject::get_state().

Size ToolBox::GetDefaultImageSize ( ToolBoxButtonSize  eToolBoxButtonSize)
static
Size ToolBox::GetDefaultImageSize ( ) const

Definition at line 661 of file toolbox2.cxx.

References GetToolboxButtonSize().

Referenced by ImplCalcItem().

OUString ToolBox::GetDisplayText ( ) const
overridevirtual

Reimplemented from vcl::Window.

Definition at line 1407 of file toolbox2.cxx.

References ImplFillLayoutData(), and mpData.

ToolBoxItemId ToolBox::GetDownItemId ( ) const
inline

Definition at line 366 of file toolbox.hxx.

Referenced by FloatingWindow::StartPopupMode().

ToolBox::ImplToolItems::size_type ToolBox::GetFloatingLines ( ) const
inline

Definition at line 537 of file toolbox.hxx.

References mnFloatLines.

const OUString & ToolBox::GetHelpText ( ToolBoxItemId  nItemId) const

Definition at line 1369 of file toolbox2.cxx.

References ImplGetHelpText().

ToolBoxItemId ToolBox::GetHighlightItemId ( ) const
inline

Definition at line 387 of file toolbox.hxx.

ImageType ToolBox::GetImageSize ( ) const

Definition at line 630 of file toolbox2.cxx.

References Large, mpData, and Size32.

Referenced by SalInstanceToolbar::get_icon_size(), and InsertItem().

tools::Long ToolBox::GetIndexForPoint ( const Point rPoint,
ToolBoxItemId rItemID 
)

Definition at line 1433 of file toolbox2.cxx.

References i, ImplFillLayoutData(), mpData, and nIndex.

ToolBoxItemBits ToolBox::GetItemBits ( ToolBoxItemId  nItemId) const
OUString ToolBox::GetItemCommand ( ToolBoxItemId  nItemId) const
Size ToolBox::GetItemContentSize ( ToolBoxItemId  nItemId)

Returns size of the bitmap / text that is inside this toolbox item.

Definition at line 758 of file toolbox2.cxx.

References GetItemPos(), ImplFormat(), mbCalc, mbFormat, mpData, and nPos.

ToolBox::ImplToolItems::size_type ToolBox::GetItemCount ( ) const
void * ToolBox::GetItemData ( ToolBoxItemId  nItemId) const

Definition at line 933 of file toolbox2.cxx.

References ImplGetItem(), and ImplToolItem::mpUserData.

ToolBoxItemId ToolBox::GetItemId ( ImplToolItems::size_type  nPos) const
ToolBoxItemId ToolBox::GetItemId ( const Point rPos) const

Definition at line 746 of file toolbox2.cxx.

References BUTTON, and mpData.

ToolBoxItemId ToolBox::GetItemId ( const OUString &  rCommand) const

Map the command name (like .uno:Save) back to item id.

Definition at line 770 of file toolbox2.cxx.

References mpData.

Image ToolBox::GetItemImage ( ToolBoxItemId  nItemId) const

Definition at line 1034 of file toolbox2.cxx.

References ImplGetItem(), and ImplToolItem::maImage.

Referenced by DecoToolBox::calcMinSize().

ToolBox::ImplToolItems::size_type ToolBox::GetItemPos ( ToolBoxItemId  nItemId) const
ToolBox::ImplToolItems::size_type ToolBox::GetItemPos ( const Point rPos) const

Definition at line 729 of file toolbox2.cxx.

References ITEM_NOTFOUND, and mpData.

tools::Rectangle ToolBox::GetItemPosRect ( ImplToolItems::size_type  nPos)

Definition at line 842 of file toolbox2.cxx.

References ImplFormat(), mbCalc, mbFormat, and mpData.

Referenced by GetItemRect().

tools::Rectangle ToolBox::GetItemRect ( ToolBoxItemId  nItemId)
TriState ToolBox::GetItemState ( ToolBoxItemId  nItemId) const

Definition at line 1225 of file toolbox2.cxx.

References ImplGetItem(), ImplToolItem::meState, and TRISTATE_FALSE.

Referenced by IsItemChecked().

const OUString & ToolBox::GetItemText ( ToolBoxItemId  nItemId) const
ToolBoxItemType ToolBox::GetItemType ( ImplToolItems::size_type  nPos) const

Definition at line 712 of file toolbox2.cxx.

References DONTKNOW, and mpData.

vcl::Window * ToolBox::GetItemWindow ( ToolBoxItemId  nItemId) const

Definition at line 1095 of file toolbox2.cxx.

References ImplGetItem(), and ImplToolItem::mpWindow.

Referenced by DumpAsPropertyTree().

PopupMenu * ToolBox::GetMenu ( ) const

Definition at line 1497 of file toolbox2.cxx.

References mpData.

Referenced by ExecuteCustomMenu(), and UpdateCustomMenu().

ToolBoxMenuType ToolBox::GetMenuType ( ) const

Definition at line 1487 of file toolbox2.cxx.

References mpData.

Referenced by CalcMinimumWindowSizePixel(), ExecuteCustomMenu(), and ImplSetMinMaxFloatSize().

sal_uInt16 ToolBox::GetModifier ( ) const
inline

Definition at line 367 of file toolbox.hxx.

Referenced by SalInstanceToolbar::get_modifier_state().

Size ToolBox::GetOptimalSize ( ) const
overridevirtual
tools::Rectangle const & ToolBox::GetOverflowRect ( ) const

Definition at line 853 of file toolbox2.cxx.

References mpData.

Referenced by FloatingWindow::StartPopupMode().

OUString ToolBox::GetQuickHelpText ( ToolBoxItemId  nItemId) const
WinBits ToolBox::GetStyle ( ) const
inline

Definition at line 446 of file toolbox.hxx.

Referenced by CalcMinimumWindowSizePixel(), ImplErase(), and ToolBox().

ToolBoxButtonSize ToolBox::GetToolboxButtonSize ( ) const

Definition at line 625 of file toolbox2.cxx.

References mpData.

Referenced by GetDefaultImageSize(), ImplCalcItem(), and SalInstanceToolbar::set_icon_size().

FactoryFunction ToolBox::GetUITestFactory ( ) const
overridevirtual

Reimplemented from vcl::Window.

Definition at line 359 of file toolbox2.cxx.

References ToolBoxUIObject::create().

void ToolBox::HideItem ( ToolBoxItemId  nItemId)
inline

Convenience method to hide items (via ShowItem).

Definition at line 408 of file toolbox.hxx.

Referenced by VclBuilder::makeObject().

void ToolBox::Highlight ( )

Definition at line 354 of file toolbox2.cxx.

References vcl::Window::CallEventListeners(), and ToolboxHighlight.

Referenced by ImplHandleMouseMove(), and MouseButtonDown().

bool ToolBox::ImplActivateItem ( vcl::KeyCode  aKeyCode)
private
void ToolBox::ImplCalcBorder ( WindowAlign  eAlign,
tools::Long rLeft,
tools::Long rTop,
tools::Long rRight,
tools::Long rBottom 
) const
ToolBox::ImplToolItems::size_type ToolBox::ImplCalcBreaks ( tools::Long  nWidth,
tools::Long pMaxLineWidth,
bool  bCalcHorz 
) const
private
Size ToolBox::ImplCalcFloatSize ( ImplToolItems::size_type &  rLines)
void ToolBox::ImplCalcFloatSizes ( )
bool ToolBox::ImplCalcItem ( )
private
ToolBox::ImplToolItems::size_type ToolBox::ImplCalcLines ( tools::Long  nToolSize) const
void ToolBox::ImplCalcMinMaxFloatSize ( Size rMinSize,
Size rMaxSize 
)
Size ToolBox::ImplCalcSize ( ImplToolItems::size_type  nCalcLines,
sal_uInt16  nCalcMode = 0 
)
void ToolBox::ImplChangeHighlight ( ImplToolItem const *  pItem,
bool  bNoGrabFocus = false 
)
private
bool ToolBox::ImplChangeHighlightUpDn ( bool  bUp,
bool  bNoCycle = false 
)
private
void ToolBox::ImplCheckUpdate ( )
ToolBox::ImplToolItems::size_type ToolBox::ImplCountLineBreaks ( ) const

Definition at line 4072 of file toolbox.cxx.

References BREAK, and mpData.

Referenced by CalcFloatingWindowSizePixel(), and CalcPopupWindowSizePixel().

void ToolBox::ImplDrawBackground ( vcl::RenderContext rRenderContext,
const tools::Rectangle rRect 
)
void ToolBox::ImplDrawBorder ( vcl::RenderContext rRenderContext)
void ToolBox::ImplDrawButton ( vcl::RenderContext rRenderContext,
const tools::Rectangle rRect,
sal_uInt16  highlight,
bool  bChecked,
bool  bEnabled,
bool  bIsWindow 
)
void ToolBox::ImplDrawConstantBackground ( vcl::RenderContext rRenderContext,
const vcl::Region rRegion,
bool  bIsInPopupMode 
)
static
void ToolBox::ImplDrawFloatwinBorder ( vcl::RenderContext rRenderContext,
ImplToolItem const *  pItem 
)
private
void ToolBox::ImplDrawGradientBackground ( vcl::RenderContext rRenderContext)
void ToolBox::ImplDrawGrip ( vcl::RenderContext rRenderContext,
const tools::Rectangle aDragArea,
int  nDragWidth,
WindowAlign  eAlign,
bool  bHorz 
)
static
void ToolBox::ImplDrawGrip ( vcl::RenderContext rRenderContext)
void ToolBox::ImplDrawItem ( vcl::RenderContext rRenderContext,
ImplToolItems::size_type  nPos,
sal_uInt16  nHighlight 
)
private

Definition at line 2559 of file toolbox.cxx.

References BUTTON, Checked, COL_WHITE, ColorTransform, ImplToolItem::DetermineButtonDrawStyle(), determineButtonType(), Disable, DontKnow, OutputDevice::DrawCtrlText(), OutputDevice::DrawImage(), DROPDOWN, DROPDOWNONLY, ImplToolItem::GetDropDownRect(), StyleSettings::GetFaceColor(), OutputDevice::GetFont(), vcl::Window::GetOutDev(), OutputDevice::GetSettings(), StyleSettings::GetShadowColor(), tools::Rectangle::GetSize(), Image::GetSizePixel(), AllSettings::GetStyleSettings(), vcl::Window::GetTextHeight(), tools::Rectangle::getWidth(), Size::Height(), ImplCheckUpdate(), ImplDrawButton(), ImplDrawDropdownArrow(), ImplDrawFloatwinBorder(), ImplDrawSeparator(), ImplErase(), ImplIsFloatingMode(), tools::Rectangle::IsEmpty(), vcl::Window::IsEnabled(), tools::Rectangle::Left(), LEFT, ImplToolItem::maImage, ImplToolItem::maRect, ImplToolItem::maText, ImplToolItem::mbEnabled, mbHorz, ImplToolItem::mbShowWindow, ImplToolItem::mbVisibleText, meAlign, meButtonType, ImplToolItem::meState, meTextPosition, ImplToolItem::meType, ImplToolItem::mnBits, mnDownItemId, ImplToolItem::mnId, mpData, mpFloatWin, NONE, Point, Pressed, Right, SEPARATOR, OutputDevice::SetFillColor(), OutputDevice::SetFont(), vcl::Window::SetFont(), vcl::Font::SetOrientation(), SMALLBUTTON_HSIZE, SMALLBUTTON_OFF_NORMAL_X, SMALLBUTTON_OFF_NORMAL_Y, SMALLBUTTON_VSIZE, TB_IMAGETEXTOFFSET, tools::Rectangle::Top(), tools::Rectangle::TopLeft(), TRISTATE_INDET, TRISTATE_TRUE, and Size::Width().

Referenced by Paint().

void ToolBox::ImplDrawMenuButton ( vcl::RenderContext rRenderContext,
bool  bHighlight 
)
bool ToolBox::ImplDrawNativeBackground ( vcl::RenderContext rRenderContext)
void ToolBox::ImplDrawSeparator ( vcl::RenderContext rRenderContext,
ImplToolItems::size_type  nPos,
const tools::Rectangle rRect 
)
private
void ToolBox::ImplDrawSpin ( vcl::RenderContext rRenderContext)
private
void ToolBox::ImplDrawTransparentBackground ( const vcl::Region rRegion)

Definition at line 444 of file toolbox.cxx.

References vcl::Window::Invalidate(), mpData, NoClipChildren, and Update.

Referenced by ImplDrawBackground().

void ToolBox::ImplErase ( vcl::RenderContext rRenderContext,
const tools::Rectangle rRect,
bool  bHighlight,
bool  bHasOpenPopup = false 
)
void ToolBox::ImplFillLayoutData ( )
private
ToolBox::ImplToolItems::size_type ToolBox::ImplFindItemPos ( const ImplToolItem pItem,
const ImplToolItems rList 
)
static

Definition at line 4546 of file toolbox.cxx.

References ITEM_NOTFOUND, and nPos.

Referenced by ImplChangeHighlight(), and ImplChangeHighlightUpDn().

void ToolBox::ImplFloatControl ( bool  bStart,
FloatingWindow pWindow 
)
void ToolBox::ImplFormat ( bool  bResize = false)
private

Definition at line 1896 of file toolbox.cxx.

References tools::Rectangle::Bottom(), DockingManager::GetDockingWindowWrapper(), ImplDockingWindowWrapper::GetDragArea(), Size::Height(), ImplCalcBorder(), ImplCalcBreaks(), ImplCalcItem(), ImplCalcLines(), ImplGetDockingManager(), ImplGetOptimalFloatingSize(), ImplHasExternalMenubutton(), ImplIsFloatingMode(), ImplIsInPopupMode(), ImplUpdateDragArea(), vcl::Window::Invalidate(), IsMenuEnabled(), vcl::Window::IsVisible(), tools::Rectangle::Left(), Locked, maFloatSizes, ImplToolItem::maItemSize, maLowerRect, maPaintRect, ImplToolItem::maRect, maUpperRect, mbFormat, mbFullPaint, mbHorz, mbIsArranged, mbLineSpacing, mbScroll, meAlign, meLayoutMode, mnBottomBorder, mnCurLine, mnCurLines, mnDX, mnDY, mnFloatLines, mnLeftBorder, mnLines, mnMaxItemHeight, mnMaxItemWidth, mnRightBorder, mnTopBorder, mnVisLines, mnWinHeight, mnWinStyle, mpData, Point, tools::Rectangle::Right(), tools::Rectangle::SetBottom(), tools::Rectangle::SetLeft(), DockingWindow::SetOutputSizePixel(), tools::Rectangle::SetRight(), tools::Rectangle::SetTop(), TB_BORDER_OFFSET1, TB_BORDER_OFFSET2, TB_LINESPACING, TB_MAXNOSCROLL, TB_MENUBUTTON_OFFSET, TB_SPIN_OFFSET, TB_SPIN_SIZE, tools::Rectangle::Top(), tools::Rectangle::Union(), WB_BORDER, and Size::Width().

Referenced by GetItemContentSize(), GetItemPosRect(), GetItemRect(), ImplChangeHighlight(), ImplHasClippedItems(), KeyInput(), MouseButtonDown(), Paint(), Resize(), SetMenuType(), SetStyle(), ShowLine(), StateChanged(), and ToggleFloatingMode().

int ToolBox::ImplGetDragWidth ( ) const
int ToolBox::ImplGetDragWidth ( const vcl::RenderContext rRenderContext,
bool  bHorz 
)
static
int ToolBox::ImplGetDragWidth ( const vcl::Window rWindow,
bool  bHorz 
)
static

Definition at line 121 of file toolbox.cxx.

References vcl::Window::GetOutDev(), and ImplGetDragWidth().

const ImplToolItem * ToolBox::ImplGetFirstClippedItem ( ) const

Definition at line 627 of file toolbox.cxx.

References mpData.

Referenced by ImplChangeHighlightUpDn().

ImplToolItem * ToolBox::ImplGetFirstValidItem ( ImplToolItems::size_type  nLine)
private

it->mbEnabled ||

Definition at line 4515 of file toolbox.cxx.

References BUTTON, ImplIsFixedControl(), mnCurLines, and mpData.

Referenced by KeyInput().

const OUString & ToolBox::ImplGetHelpText ( ToolBoxItemId  nItemId) const
private
ImplToolItem * ToolBox::ImplGetItem ( ToolBoxItemId  nId) const
private
ToolBox::ImplToolItems::size_type ToolBox::ImplGetItemLine ( ImplToolItem const *  pCurrentItem)
private

Definition at line 4501 of file toolbox.cxx.

References mpData.

Referenced by ImplChangeHighlight().

Size ToolBox::ImplGetOptimalFloatingSize ( )
private
Point ToolBox::ImplGetPopupPosition ( const tools::Rectangle rRect) const
private
SAL_DLLPRIVATE ImplToolBoxPrivateData* ToolBox::ImplGetToolBoxPrivateData ( ) const
inline

Definition at line 263 of file toolbox.hxx.

Referenced by vcl::Window::GetDisplayBackground().

bool ToolBox::ImplHandleMouseButtonUp ( const MouseEvent rMEvt,
bool  bCancel = false 
)
private
bool ToolBox::ImplHandleMouseMove ( const MouseEvent rMEvt,
bool  bRepeat = false 
)
private
bool ToolBox::ImplHasClippedItems ( )
private

Definition at line 1507 of file toolbox2.cxx.

References ImplFormat(), and mpData.

Referenced by ImplChangeHighlightUpDn(), ImplDrawMenuButton(), MouseButtonDown(), and MouseMove().

bool ToolBox::ImplHasExternalMenubutton ( )
private
void ToolBox::ImplHideFocus ( )
private
void ToolBox::ImplInit ( vcl::Window pParent,
WinBits  nStyle 
)
private
void ToolBox::ImplInitSettings ( bool  bFont,
bool  bForeground,
bool  bBackground 
)
private
void ToolBox::ImplInitToolBoxData ( )
private
void ToolBox::ImplInvalidate ( bool  bNewCalc = false,
bool  bFullPaint = false 
)
private
bool ToolBox::ImplIsFloatingMode ( ) const
private
bool ToolBox::ImplIsInPopupMode ( ) const
private
void ToolBox::ImplLineSizing ( const Point rPos,
tools::Rectangle rRect,
sal_uInt16  nLineMode 
)
bool ToolBox::ImplOpenItem ( vcl::KeyCode  aKeyCode)
private
void ToolBox::ImplSetMinMaxFloatSize ( )
void ToolBox::ImplShowFocus ( )
private
sal_uInt16 ToolBox::ImplTestLineSize ( const Point rPos) const
void ToolBox::ImplUpdateDragArea ( ) const
void ToolBox::ImplUpdateInputEnable ( )
private

Definition at line 1383 of file toolbox2.cxx.

References mpData.

Referenced by EnableItem(), and ImplInvalidate().

void ToolBox::ImplUpdateItem ( ImplToolItems::size_type  nIndex = ITEM_NOTFOUND)
private
void ToolBox::InsertBreak ( ImplToolItems::size_type  nPos = APPEND)
void ToolBox::InsertItem ( const OUString &  rCommand,
const css::uno::Reference< css::frame::XFrame > &  rFrame,
ToolBoxItemBits  nBits,
const Size rRequestedSize,
ImplToolItems::size_type  nPos = APPEND 
)
virtual
void ToolBox::InsertItem ( ToolBoxItemId  nItemId,
const Image rImage,
ToolBoxItemBits  nBits = ToolBoxItemBits::NONE,
ImplToolItems::size_type  nPos = APPEND 
)
void ToolBox::InsertItem ( ToolBoxItemId  nItemId,
const Image rImage,
const OUString &  rText,
ToolBoxItemBits  nBits = ToolBoxItemBits::NONE,
ImplToolItems::size_type  nPos = APPEND 
)
void ToolBox::InsertItem ( ToolBoxItemId  nItemId,
const OUString &  rText,
ToolBoxItemBits  nBits = ToolBoxItemBits::NONE,
ImplToolItems::size_type  nPos = APPEND 
)
void ToolBox::InsertSeparator ( ImplToolItems::size_type  nPos = APPEND,
sal_uInt16  nPixSize = 0 
)
void ToolBox::InsertSpace ( )
void ToolBox::InsertWindow ( ToolBoxItemId  nItemId,
vcl::Window pWindow,
ToolBoxItemBits  nBits = ToolBoxItemBits::NONE,
ImplToolItems::size_type  nPos = APPEND 
)
void ToolBox::InvalidateItem ( ImplToolItems::size_type  nPosition)
private
void ToolBox::InvalidateMenuButton ( )
private

Definition at line 3416 of file toolbox.cxx.

References vcl::Window::Invalidate(), and mpData.

Referenced by EventNotify(), ImplChangeHighlightUpDn(), ImplHideFocus(), and MouseMove().

void ToolBox::InvalidateSpin ( bool  bInvalidateUpper = true,
bool  bInvalidateLower = true 
)
private
bool ToolBox::IsCustomize ( ) const
inline

Definition at line 454 of file toolbox.hxx.

bool ToolBox::IsHorizontal ( ) const
inline
bool ToolBox::IsItemChecked ( ToolBoxItemId  nItemId) const
inline

Definition at line 527 of file toolbox.hxx.

References GetItemState(), and TRISTATE_TRUE.

Referenced by SalInstanceToolbar::get_item_active().

bool ToolBox::IsItemClipped ( ToolBoxItemId  nItemId) const

Definition at line 1289 of file toolbox2.cxx.

References ImplGetItem(), and ImplToolItem::IsClipped().

bool ToolBox::IsItemEnabled ( ToolBoxItemId  nItemId) const
bool ToolBox::IsItemReallyVisible ( ToolBoxItemId  nItemId) const
bool ToolBox::IsItemVisible ( ToolBoxItemId  nItemId) const
bool ToolBox::IsKeyEvent ( ) const
inline

Definition at line 489 of file toolbox.hxx.

Referenced by ImplDockingWindowWrapper::StartPopupMode().

bool ToolBox::IsMenuEnabled ( ) const
void ToolBox::KeyInput ( const KeyEvent rKEvt)
overridevirtual
void ToolBox::Lock ( bool  bLock)
void ToolBox::LoseFocus ( )
overridevirtual

Reimplemented from vcl::Window.

Definition at line 4175 of file toolbox.cxx.

References ImplChangeHighlight(), and vcl::Window::LoseFocus().

void ToolBox::MouseButtonDown ( const MouseEvent rMEvt)
overridevirtual
void ToolBox::MouseButtonUp ( const MouseEvent rMEvt)
overridevirtual
void ToolBox::MouseMove ( const MouseEvent rMEvt)
overridevirtual
ToolBox& ToolBox::operator= ( const ToolBox )
privatedelete
void ToolBox::Paint ( vcl::RenderContext rRenderContext,
const tools::Rectangle rRect 
)
overridevirtual
void ToolBox::queue_resize ( StateChangedType  eReason = StateChangedType::Layout)
overridevirtual

Reimplemented from DockingWindow.

Definition at line 1269 of file toolbox.cxx.

Referenced by SalInstanceToolbar::set_icon_size().

void ToolBox::RemoveItem ( ImplToolItems::size_type  nPos)
void ToolBox::RequestHelp ( const HelpEvent rHEvt)
overridevirtual
void ToolBox::Resize ( )
overridevirtual
void ToolBox::Resizing ( Size rSize)
overridevirtual
void ToolBox::Select ( )
virtual
void ToolBox::SetActivateHdl ( const Link< ToolBox *, void > &  rLink)
inline

Definition at line 464 of file toolbox.hxx.

void ToolBox::SetAlign ( WindowAlign  eNewAlign = WindowAlign::Top)
void ToolBox::SetButtonType ( ButtonType  eNewType)

Definition at line 603 of file toolbox2.cxx.

References ImplInvalidate(), and meButtonType.

void ToolBox::SetClickHdl ( const Link< ToolBox *, void > &  rLink)
inline

Definition at line 461 of file toolbox.hxx.

void ToolBox::SetCurItemId ( ToolBoxItemId  CurID)
inline

Definition at line 92 of file toolbox.hxx.

Referenced by ToolBoxUIObject::execute().

void ToolBox::SetDataChangedHdl ( const Link< DataChangedEvent const *, void > &  aLink)
inline

Definition at line 468 of file toolbox.hxx.

void ToolBox::SetDeactivateHdl ( const Link< ToolBox *, void > &  rLink)
inline

Definition at line 465 of file toolbox.hxx.

void ToolBox::SetDoubleClickHdl ( const Link< ToolBox *, void > &  rLink)
inline

Definition at line 462 of file toolbox.hxx.

void ToolBox::SetDropdownClickHdl ( const Link< ToolBox *, void > &  rLink)
void ToolBox::SetHelpId ( ToolBoxItemId  nItemId,
const OString &  rHelpId 
)
void ToolBox::SetHelpText ( ToolBoxItemId  nItemId,
const OUString &  rText 
)

Definition at line 1361 of file toolbox2.cxx.

References ImplGetItem(), and ImplToolItem::maHelpText.

void ToolBox::SetItemBits ( ToolBoxItemId  nItemId,
ToolBoxItemBits  nBits 
)

Definition at line 872 of file toolbox2.cxx.

References AUTOSIZE, DROPDOWN, GetItemCount(), GetItemPos(), ImplInvalidate(), LEFT, mpData, and nPos.

void ToolBox::SetItemCommand ( ToolBoxItemId  nItemId,
const OUString &  rCommand 
)
void ToolBox::SetItemData ( ToolBoxItemId  nItemId,
void pNewData 
)

Definition at line 922 of file toolbox2.cxx.

References GetItemPos(), ImplUpdateItem(), mpData, and nPos.

void ToolBox::SetItemDown ( ToolBoxItemId  nItemId,
bool  bDown 
)
void ToolBox::SetItemExpand ( ToolBoxItemId  nItemId,
bool  bExpand 
)
void ToolBox::SetItemImage ( ToolBoxItemId  nItemId,
const Image rImage 
)
void ToolBox::SetItemImageAngle ( ToolBoxItemId  nItemId,
Degree10  nAngle10 
)
void ToolBox::SetItemImageMirrorMode ( ToolBoxItemId  nItemId,
bool  bMirror 
)
void ToolBox::SetItemState ( ToolBoxItemId  nItemId,
TriState  eState 
)
void ToolBox::SetItemText ( ToolBoxItemId  nItemId,
const OUString &  rText 
)
void ToolBox::SetItemWindow ( ToolBoxItemId  nItemId,
vcl::Window pNewWindow 
)
void ToolBox::SetItemWindowNonInteractive ( ToolBoxItemId  nItemId,
bool  bNonInteractive 
)

Definition at line 889 of file toolbox2.cxx.

References GetItemCount(), GetItemPos(), mpData, and nPos.

void ToolBox::SetLineCount ( ImplToolItems::size_type  nNewLines)

Definition at line 692 of file toolbox2.cxx.

References vcl::Window::Invalidate(), and mnLines.

Referenced by EndDocking().

void ToolBox::SetLineSpacing ( bool  b)
inline

Definition at line 517 of file toolbox.hxx.

void ToolBox::SetMenuButtonHdl ( const Link< ToolBox *, void > &  rLink)
inline

Definition at line 469 of file toolbox.hxx.

void ToolBox::SetMenuExecuteHdl ( const Link< ToolBox *, void > &  rLink)

Definition at line 1502 of file toolbox2.cxx.

References mpData.

void ToolBox::SetMenuType ( ToolBoxMenuType  aType = ToolBoxMenuType::Customize)
void ToolBox::SetQuickHelpText ( ToolBoxItemId  nItemId,
const OUString &  rText 
)
void ToolBox::SetSelectHdl ( const Link< ToolBox *, void > &  rLink)
inline
void ToolBox::SetStateChangedHdl ( const Link< StateChangedType const *, void > &  aLink)
inline

Definition at line 467 of file toolbox.hxx.

void ToolBox::SetStyle ( WinBits  nNewStyle)

Definition at line 3874 of file toolbox.cxx.

References ImplFormat(), ImplIsFloatingMode(), mbFormat, mbScroll, mnWinStyle, and WB_SCROLL.

void ToolBox::SetToolbarLayoutMode ( ToolBoxLayoutMode  eLayout)

Definition at line 4833 of file toolbox.cxx.

References meLayoutMode.

void ToolBox::SetToolboxButtonSize ( ToolBoxButtonSize  eSize)

Definition at line 615 of file toolbox2.cxx.

References mbCalc, mbFormat, and mpData.

Referenced by SalInstanceToolbar::set_icon_size().

void ToolBox::SetToolBoxTextPosition ( ToolBoxTextPosition  ePosition)

Definition at line 4839 of file toolbox.cxx.

References meTextPosition.

void ToolBox::ShowItem ( ToolBoxItemId  nItemId,
bool  bVisible = true 
)
void ToolBox::ShowLine ( bool  bNext)

Definition at line 2861 of file toolbox.cxx.

References ImplFormat(), mbFormat, and mnCurLine.

Referenced by Command(), and ImplHandleMouseButtonUp().

void ToolBox::StartDocking ( )
overridevirtual

Reimplemented from DockingWindow.

Definition at line 3934 of file toolbox.cxx.

References ImplIsFloatingMode(), mbLastFloatMode, meAlign, meDockAlign, mnDockLines, mnLines, and DockingWindow::StartDocking().

Referenced by MouseButtonDown().

void ToolBox::StateChanged ( StateChangedType  nType)
overridevirtual
void ToolBox::statusChanged ( const css::frame::FeatureStateEvent &  rEvent)
void ToolBox::ToggleFloatingMode ( )
overridevirtual
void ToolBox::Tracking ( const TrackingEvent rTEvt)
overridevirtual
void ToolBox::TriggerItem ( ToolBoxItemId  nItemId)

Definition at line 4183 of file toolbox.cxx.

References ImplActivateItem(), and mnHighItemId.

void ToolBox::UpdateCustomMenu ( )
bool ToolBox::WillUsePopupMode ( ) const

Definition at line 1723 of file toolbox2.cxx.

References mpData.

void ToolBox::WillUsePopupMode ( bool  b)

Definition at line 1728 of file toolbox2.cxx.

References mpData.

Friends And Related Function Documentation

friend class FloatingWindow
friend

Definition at line 84 of file toolbox.hxx.

friend class ImplTBDragMgr
friend

Definition at line 85 of file toolbox.hxx.

Member Data Documentation

constexpr auto ToolBox::APPEND = std::numeric_limits<ImplToolItems::size_type>::max()
static
constexpr auto ToolBox::ITEM_NOTFOUND = std::numeric_limits<ImplToolItems::size_type>::max()
static
Link<ToolBox *, void> ToolBox::maActivateHdl
private

Definition at line 165 of file toolbox.hxx.

Referenced by Activate().

Link<ToolBox *, void> ToolBox::maClickHdl
private

Definition at line 163 of file toolbox.hxx.

Referenced by Click().

Link<DataChangedEvent const *, void> ToolBox::maDataChangedHandler
private

Definition at line 170 of file toolbox.hxx.

Referenced by DataChanged().

Link<ToolBox *, void> ToolBox::maDeactivateHdl
private

Definition at line 166 of file toolbox.hxx.

Referenced by Deactivate().

Link<ToolBox *, void> ToolBox::maDoubleClickHdl
private

Definition at line 164 of file toolbox.hxx.

Referenced by DoubleClick().

std::vector<ImplToolSize> ToolBox::maFloatSizes
private
tools::Rectangle ToolBox::maLowerRect
private
Link<ToolBox *, void> ToolBox::maMenuButtonHdl
private

Definition at line 168 of file toolbox.hxx.

Referenced by ImplOpenItem(), and MouseButtonDown().

tools::Rectangle ToolBox::maPaintRect
private

Definition at line 113 of file toolbox.hxx.

Referenced by ImplFormat(), ImplUpdateItem(), and RemoveItem().

Link<ToolBox *, void> ToolBox::maSelectHdl
private

Definition at line 167 of file toolbox.hxx.

Referenced by Select().

Link<StateChangedType const *, void> ToolBox::maStateChangedHandler
private

Definition at line 169 of file toolbox.hxx.

Referenced by StateChanged().

tools::Rectangle ToolBox::maUpperRect
private
bool ToolBox::mbCalc
private
bool ToolBox::mbChangingHighlight
private

Definition at line 139 of file toolbox.hxx.

Referenced by ImplActivateItem(), ImplChangeHighlight(), ImplInitToolBoxData(), and KeyInput().

bool ToolBox::mbCustomize
private

Definition at line 139 of file toolbox.hxx.

Referenced by EnableCustomize(), and ImplInitToolBoxData().

bool ToolBox::mbDrag
private
bool ToolBox::mbDragging
private
bool ToolBox::mbFormat
private
bool ToolBox::mbFullPaint
private

Definition at line 139 of file toolbox.hxx.

Referenced by ImplFormat(), ImplInitToolBoxData(), and Paint().

bool ToolBox::mbHorz
private
bool ToolBox::mbImagesMirrored
private

Definition at line 139 of file toolbox.hxx.

Referenced by ImplInitToolBoxData(), and statusChanged().

bool ToolBox::mbIn
private