20 #ifndef INCLUDED_VCL_STATUS_HXX
21 #define INCLUDED_VCL_STATUS_HXX
38 sal_uInt16 nPercent1, sal_uInt16 nPercent2, sal_uInt16 nPercentCount,
59 #define STATUSBAR_APPEND (sal_uInt16(0xFFFF))
60 #define STATUSBAR_ITEM_NOTFOUND (sal_uInt16(0xFFFF))
61 #define STATUSBAR_OFFSET (tools::Long(5))
92 SAL_DLLPRIVATE
void ImplInitSettings();
93 SAL_DLLPRIVATE
void ImplFormat();
94 SAL_DLLPRIVATE
bool ImplIsItemUpdate();
99 SAL_DLLPRIVATE
void ImplDrawProgress(
vcl::RenderContext& rRenderContext, sal_uInt16 nNewPerc);
100 SAL_DLLPRIVATE
void ImplCalcProgressRect();
101 SAL_DLLPRIVATE
tools::Rectangle ImplGetItemRectPos( sal_uInt16 nPos )
const;
102 SAL_DLLPRIVATE sal_uInt16 ImplGetFirstVisiblePos()
const;
109 WinBits nWinStyle = WB_BORDER | WB_RIGHT );
111 virtual void dispose()
override;
113 void AdjustItemWidthsForHiDPI();
117 virtual void Resize()
override;
126 void InsertItem( sal_uInt16 nItemId,
sal_uLong nWidth,
130 void RemoveItem( sal_uInt16 nItemId );
132 void ShowItem( sal_uInt16 nItemId );
133 void HideItem( sal_uInt16 nItemId );
134 bool IsItemVisible( sal_uInt16 nItemId )
const;
136 void RedrawItem( sal_uInt16 nItemId );
140 sal_uInt16 GetItemCount()
const;
141 sal_uInt16 GetItemId( sal_uInt16 nPos )
const;
142 sal_uInt16 GetItemId(
const Point& rPos )
const;
143 sal_uInt16 GetItemPos( sal_uInt16 nItemId )
const;
145 Point GetItemTextPos( sal_uInt16 nItemId )
const;
148 sal_uLong GetItemWidth( sal_uInt16 nItemId )
const;
151 tools::Long GetItemOffset( sal_uInt16 nItemId )
const;
154 void SetItemText( sal_uInt16 nItemId,
const OUString& rText,
int nCharsWidth = -1 );
155 const OUString& GetItemText( sal_uInt16 nItemId )
const;
157 void SetItemData( sal_uInt16 nItemId,
void* pNewData );
158 void* GetItemData( sal_uInt16 nItemId )
const;
160 void SetItemCommand( sal_uInt16 nItemId,
const OUString& rCommand );
161 OUString GetItemCommand( sal_uInt16 nItemId );
163 void SetHelpText( sal_uInt16 nItemId,
const OUString& rText );
164 const OUString&
GetHelpText( sal_uInt16 nItemId )
const;
171 void SetHelpId( sal_uInt16 nItemId,
const OString& rHelpId );
173 void StartProgressMode(
const OUString& rText );
174 void SetProgressValue( sal_uInt16 nPercent );
175 void EndProgressMode();
178 void SetText(
const OUString& rText )
override;
180 Size CalcWindowSizePixel()
const;
191 #endif // INCLUDED_VCL_STATUS_HXX
virtual void SetText(const OUString &rStr)
tools::Rectangle maPrgsFrameRect
virtual void MouseButtonDown(const MouseEvent &rMEvt)
const OUString & GetHelpText() const
const OUString & GetQuickHelpText() const
void SetAccessibleName(const OUString &rName)
void SetHelpId(const OString &)
virtual void dispose() override
This is intended to be used to clear any locally held references to other Window-subclass objects...
Link< StatusBar *, void > maDoubleClickHdl
void SetQuickHelpText(const OUString &rHelpText)
OUString GetAccessibleName() const
sal_uInt16 GetCurItemId() const
void SetDoubleClickHdl(const Link< StatusBar *, void > &rLink)
sal_uInt16 mnPercentCount
void SetHelpText(const OUString &rHelpText)
void DrawProgress(vcl::Window *pWindow, vcl::RenderContext &rRenderContext, const Point &rPos, tools::Long nOffset, tools::Long nPrgsWidth, tools::Long nPrgsHeight, sal_uInt16 nPercent1, sal_uInt16 nPercent2, sal_uInt16 nPercentCount, const tools::Rectangle &rFramePosSize)
void SetClickHdl(const Link< StatusBar *, void > &rLink)
virtual void ApplySettings(vcl::RenderContext &rRenderContext)
Some things multiple-inherit from VclAbstractDialog and OutputDevice, so we need to use virtual inher...
sal_uInt32 mnLastProgressPaint_ms
std::vector< std::unique_ptr< ImplStatusItem > > mvItemList
bool IsProgressMode() const
SAL_DLLPRIVATE void ImplInit(vcl::Window *pParent, WinBits nStyle, SystemParentData *pSystemParentData)
static void ImplDrawText(OutputDevice &rTargetDevice, const tools::Rectangle &rRect, const OUString &rOrigStr, DrawTextFlags nStyle, MetricVector *pVector, OUString *pDisplayText, vcl::ITextLayout &_rLayout)
virtual void Paint(vcl::RenderContext &rRenderContext, const tools::Rectangle &rRect)
std::unique_ptr< ImplData > mpImplData
Link< StatusBar *, void > maClickHdl
virtual void StateChanged(StateChangedType nStateChange)
Event to pass information for UserDraw() handling eg. in comboboxes.
virtual void RequestHelp(const HelpEvent &rHEvt)
virtual void DataChanged(const DataChangedEvent &rDCEvt)