LibreOffice Module vcl (master) 1
weldutils.hxx
Go to the documentation of this file.
1/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2/*
3 * This file is part of the LibreOffice project.
4 *
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
8 */
9
10#ifndef INCLUDED_VCL_WELDUTILS_HXX
11#define INCLUDED_VCL_WELDUTILS_HXX
12
13#include <com/sun/star/awt/XWindow.hpp>
14#include <com/sun/star/frame/XDispatch.hpp>
15#include <com/sun/star/frame/XFrame.hpp>
16#include <com/sun/star/frame/XStatusListener.hpp>
17#include <com/sun/star/uno/Reference.hxx>
20#include <tools/time.hxx>
21#include <vcl/dllapi.h>
22#include <vcl/formatter.hxx>
23#include <vcl/timer.hxx>
24#include <vcl/transfer.hxx>
25#include <vcl/weld.hxx>
26
27class CalendarWrapper;
28
29namespace vcl
30{
31class Window;
32}
33
34namespace weld
35{
37
39{
40private:
43
50
51public:
52 TransportAsXWindow(weld::Widget* pWeldWidget, weld::Builder* pWeldWidgetBuilder = nullptr)
53 : m_pWeldWidget(pWeldWidget)
54 , m_pWeldWidgetBuilder(pWeldWidgetBuilder)
55 {
56 }
57
58 weld::Widget* getWidget() const { return m_pWeldWidget; }
59
60 weld::Builder* getBuilder() const { return m_pWeldWidgetBuilder; }
61
62 virtual void clear()
63 {
64 m_pWeldWidget = nullptr;
65 m_pWeldWidgetBuilder = nullptr;
66 }
67
68 // css::awt::XWindow
69 void SAL_CALL setPosSize(sal_Int32, sal_Int32, sal_Int32, sal_Int32, sal_Int16) override
70 {
71 throw css::uno::RuntimeException("not implemented");
72 }
73
74 css::awt::Rectangle SAL_CALL getPosSize() override
75 {
76 throw css::uno::RuntimeException("not implemented");
77 }
78
79 void SAL_CALL setVisible(sal_Bool bVisible) override { m_pWeldWidget->set_visible(bVisible); }
80
81 void SAL_CALL setEnable(sal_Bool bSensitive) override
82 {
83 m_pWeldWidget->set_sensitive(bSensitive);
84 }
85
86 void SAL_CALL setFocus() override { m_pWeldWidget->grab_focus(); }
87
88 void SAL_CALL
89 addWindowListener(const css::uno::Reference<css::awt::XWindowListener>& rListener) override
90 {
91 std::unique_lock g(m_aMutex);
92 m_aWindowListeners.addInterface(g, rListener);
93 }
94
95 void SAL_CALL
96 removeWindowListener(const css::uno::Reference<css::awt::XWindowListener>& rListener) override
97 {
98 std::unique_lock g(m_aMutex);
99 m_aWindowListeners.removeInterface(g, rListener);
100 }
101
102 void SAL_CALL
103 addFocusListener(const css::uno::Reference<css::awt::XFocusListener>& rListener) override
104 {
105 std::unique_lock g(m_aMutex);
106 m_aFocusListeners.addInterface(g, rListener);
107 }
108
109 void SAL_CALL
110 removeFocusListener(const css::uno::Reference<css::awt::XFocusListener>& rListener) override
111 {
112 std::unique_lock g(m_aMutex);
113 m_aFocusListeners.removeInterface(g, rListener);
114 }
115
116 void SAL_CALL
117 addKeyListener(const css::uno::Reference<css::awt::XKeyListener>& rListener) override
118 {
119 std::unique_lock g(m_aMutex);
120 m_aKeyListeners.addInterface(g, rListener);
121 }
122
123 void SAL_CALL
124 removeKeyListener(const css::uno::Reference<css::awt::XKeyListener>& rListener) override
125 {
126 std::unique_lock g(m_aMutex);
127 m_aKeyListeners.removeInterface(g, rListener);
128 }
129
130 void SAL_CALL
131 addMouseListener(const css::uno::Reference<css::awt::XMouseListener>& rListener) override
132 {
133 std::unique_lock g(m_aMutex);
134 m_aMouseListeners.addInterface(g, rListener);
135 }
136
137 void SAL_CALL
138 removeMouseListener(const css::uno::Reference<css::awt::XMouseListener>& rListener) override
139 {
140 std::unique_lock g(m_aMutex);
141 m_aMouseListeners.removeInterface(g, rListener);
142 }
143
145 const css::uno::Reference<css::awt::XMouseMotionListener>& rListener) override
146 {
147 std::unique_lock g(m_aMutex);
148 m_aMotionListeners.addInterface(g, rListener);
149 }
150
152 const css::uno::Reference<css::awt::XMouseMotionListener>& rListener) override
153 {
154 std::unique_lock g(m_aMutex);
155 m_aMotionListeners.removeInterface(g, rListener);
156 }
157
158 void SAL_CALL
159 addPaintListener(const css::uno::Reference<css::awt::XPaintListener>& rListener) override
160 {
161 std::unique_lock g(m_aMutex);
162 m_aPaintListeners.addInterface(g, rListener);
163 }
164
165 void SAL_CALL
166 removePaintListener(const css::uno::Reference<css::awt::XPaintListener>& rListener) override
167 {
168 std::unique_lock g(m_aMutex);
169 m_aPaintListeners.removeInterface(g, rListener);
170 }
171};
172
173// don't export to avoid duplicate WeakImplHelper definitions with MSVC
174class SAL_DLLPUBLIC_TEMPLATE WidgetStatusListener_Base
175 : public cppu::WeakImplHelper<css::frame::XStatusListener>
176{
177};
178
180{
181public:
182 WidgetStatusListener(weld::Widget* widget, const OUString& rCommand);
183
184private:
188 css::uno::Reference<css::frame::XDispatch> mxDispatch;
189 css::util::URL maCommandURL;
190 css::uno::Reference<css::frame::XFrame> mxFrame;
191
192public:
193 SAL_DLLPRIVATE void SAL_CALL
194 statusChanged(const css::frame::FeatureStateEvent& rEvent) override;
195
196 SAL_DLLPRIVATE void SAL_CALL disposing(const css::lang::EventObject& /*Source*/) override;
197
198 const css::uno::Reference<css::frame::XFrame>& getFrame() const { return mxFrame; }
199
200 void startListening();
201
202 void dispose();
203};
204
206{
207public:
210
211 weld::Entry& get_widget() { return m_rEntry; }
212
213 // public Formatter overrides, drives interactions with the Entry
214 SAL_DLLPRIVATE virtual Selection GetEntrySelection() const override;
215 SAL_DLLPRIVATE virtual OUString GetEntryText() const override;
216 SAL_DLLPRIVATE virtual void SetEntryText(const OUString& rText, const Selection& rSel) override;
217 SAL_DLLPRIVATE virtual void SetEntryTextColor(const Color* pColor) override;
218 SAL_DLLPRIVATE virtual SelectionOptions GetEntrySelectionOptions() const override;
219 SAL_DLLPRIVATE virtual void FieldModified() override;
220
221 // public Formatter overrides, drives optional SpinButton settings
222 SAL_DLLPRIVATE virtual void ClearMinValue() override;
223 SAL_DLLPRIVATE virtual void SetMinValue(double dMin) override;
224 SAL_DLLPRIVATE virtual void ClearMaxValue() override;
225 SAL_DLLPRIVATE virtual void SetMaxValue(double dMin) override;
226
227 SAL_DLLPRIVATE virtual void SetSpinSize(double dStep) override;
228
229 void SetEntrySelectionOptions(SelectionOptions eOptions) { m_eOptions = eOptions; }
230
231 /* EntryFormatter will set listeners to "changed" and "focus-out" of the
232 Entry so users that want to add their own listeners to those must set
233 them through this formatter and not directly on that entry.
234
235 If EntryFormatter is used with a weld::FormattedSpinButton this is
236 handled transparently by the FormattedSpinButton for the user and the
237 handlers can be set on the FormattedSpinButton
238 */
239 void connect_changed(const Link<weld::Entry&, void>& rLink) { m_aModifyHdl = rLink; }
240 void connect_focus_out(const Link<weld::Widget&, void>& rLink) { m_aFocusOutHdl = rLink; }
241
242 SAL_DLLPRIVATE virtual ~EntryFormatter() override;
243
244private:
251 DECL_DLLPRIVATE_LINK(FocusOutHdl, weld::Widget&, void);
252 SAL_DLLPRIVATE void Init();
253
254 // private Formatter overrides
255 SAL_DLLPRIVATE virtual void UpdateCurrentValue(double dCurrentValue) override;
256};
257
259{
260public:
263
264 SAL_DLLPRIVATE virtual ~DoubleNumericFormatter() override;
265
266private:
267 SAL_DLLPRIVATE virtual bool CheckText(const OUString& sText) const override;
268
269 SAL_DLLPRIVATE virtual void FormatChanged(FORMAT_CHANGE_TYPE nWhat) override;
270 SAL_DLLPRIVATE void ResetConformanceTester();
271
272 std::unique_ptr<validation::NumberValidator> m_pNumberValidator;
273};
274
276{
277public:
280
281 void SetUseThousandSep(bool b);
282 void SetCurrencySymbol(const OUString& rStr);
283
284 SAL_DLLPRIVATE virtual ~LongCurrencyFormatter() override;
285
286private:
287 DECL_DLLPRIVATE_LINK(FormatOutputHdl, LinkParamNone*, bool);
288 DECL_DLLPRIVATE_LINK(ParseInputHdl, sal_Int64*, TriState);
289
290 SAL_DLLPRIVATE void Init();
291
294};
295
297{
298public:
299 TimeFormatter(weld::Entry& rEntry);
301
302 void SetExtFormat(ExtTimeFieldFormat eFormat);
303 void SetDuration(bool bDuration);
304 void SetTimeFormat(TimeFieldFormat eTimeFormat);
305
306 void SetMin(const tools::Time& rNewMin);
307 void SetMax(const tools::Time& rNewMax);
308
309 void SetTime(const tools::Time& rNewTime);
311
312 virtual ~TimeFormatter() override;
313
314private:
315 DECL_DLLPRIVATE_LINK(FormatOutputHdl, LinkParamNone*, bool);
316 DECL_DLLPRIVATE_LINK(ParseInputHdl, sal_Int64*, TriState);
317 DECL_DLLPRIVATE_LINK(CursorChangedHdl, weld::Entry&, void);
318
319 SAL_DLLPRIVATE void Init();
320
321 SAL_DLLPRIVATE static tools::Time ConvertValue(int nValue);
322 SAL_DLLPRIVATE static int ConvertValue(const tools::Time& rTime);
323
324 SAL_DLLPRIVATE OUString FormatNumber(int nValue) const;
325
329};
330
332{
333public:
334 DateFormatter(weld::Entry& rEntry);
335
336 void SetMin(const Date& rNewMin);
337 void SetMax(const Date& rNewMax);
338
339 void SetDate(const Date& rNewDate);
340 Date GetDate();
341
342 void SetExtDateFormat(ExtDateFieldFormat eFormat);
343 void SetShowDateCentury(bool bShowCentury);
344
345 virtual ~DateFormatter() override;
346
347private:
348 DECL_DLLPRIVATE_LINK(FormatOutputHdl, LinkParamNone*, bool);
349 DECL_DLLPRIVATE_LINK(ParseInputHdl, sal_Int64*, TriState);
350 DECL_DLLPRIVATE_LINK(CursorChangedHdl, weld::Entry&, void);
351
352 SAL_DLLPRIVATE void Init();
353 SAL_DLLPRIVATE CalendarWrapper& GetCalendarWrapper() const;
354
355 SAL_DLLPRIVATE OUString FormatNumber(int nValue) const;
356
358 mutable std::unique_ptr<CalendarWrapper> m_xCalendarWrapper;
359};
360
362{
363public:
366
367 weld::Entry& get_widget() { return m_rEntry; }
368
369 void SetMask(const OString& rEditMask, const OUString& rLiteralMask);
370 void SetStrictFormat(bool bStrict);
371 void ReformatAll();
372
373 /* PatternFormatter will set listeners to "changed", "focus-out", "focus-in"
374 and "key-press" of the Entry so users that want to add their own listeners
375 to those must set them through this formatter and not directly on that entry.
376 */
377 void connect_changed(const Link<weld::Entry&, void>& rLink) { m_aModifyHdl = rLink; }
378 void connect_focus_out(const Link<weld::Widget&, void>& rLink) { m_aFocusOutHdl = rLink; }
379 void connect_focus_in(const Link<weld::Widget&, void>& rLink) { m_aFocusInHdl = rLink; }
380 void connect_key_press(const Link<const KeyEvent&, bool>& rLink) { m_aKeyPressHdl = rLink; }
381
382 SAL_DLLPRIVATE void Modify();
383
384private:
394 OString m_aEditMask;
396
397 SAL_DLLPRIVATE void EntryGainFocus();
398 SAL_DLLPRIVATE void EntryLostFocus();
401 DECL_DLLPRIVATE_LINK(FocusOutHdl, weld::Widget&, void);
402 DECL_DLLPRIVATE_LINK(KeyInputHdl, const KeyEvent&, bool);
403};
404
406 : public std::enable_shared_from_this<ButtonPressRepeater>
407{
408private:
414
415 DECL_DLLPRIVATE_LINK(MousePressHdl, const MouseEvent&, bool);
416 DECL_DLLPRIVATE_LINK(MouseReleaseHdl, const MouseEvent&, bool);
417 DECL_DLLPRIVATE_LINK(RepeatTimerHdl, Timer*, void);
418
419public:
421 const Link<const CommandEvent&, void>& rContextLink
423 void Stop() { m_aRepeat.Stop(); }
424 bool IsModKeyPressed() const { return m_bModKey; }
425};
426
427/*
428 If a TreeView is used as a list, rather than a tree, and DnD should just
429 reorder rows, then this can be used to implement that.
430
431 Because the TreeView doesn't want or need subnodes, the drop target can be
432 simply visually indicated as being between rows (the issue of a final drop
433 location of a child of the drop target doesn't arise), and the meaning of
434 what a drop before or after the last row should do is unambiguous.
435*/
436class VCL_DLLPUBLIC ReorderingDropTarget : public DropTargetHelper
437{
439
440protected:
441 virtual sal_Int8 AcceptDrop(const AcceptDropEvent& rEvt) override;
442 virtual sal_Int8 ExecuteDrop(const ExecuteDropEvent& rEvt) override;
443
444public:
446};
447
448// get the row the iterator is on
449VCL_DLLPUBLIC size_t GetAbsPos(const weld::TreeView& rTreeView, const weld::TreeIter& rIter);
450
451// an entry is visible if all parents are expanded
452VCL_DLLPUBLIC bool IsEntryVisible(const weld::TreeView& rTreeView, const weld::TreeIter& rIter);
453
454// A Parent's Children are turned into Children of the Parent which comes next in hierarchy
456 const weld::TreeIter& rParent);
457
458// return the min height of a weld::Entry
460
461// return the weld::Window of the SalFrame rOutWin is in, and convert rRect
462// from relative to rOutWin to relative to that weld::Window suitable for use
463// with popup_at_rect
465
466// Use Application::GetDefaultDevice to set the PointFont rFont to the OutputDevice
467VCL_DLLPUBLIC void SetPointFont(OutputDevice& rDevice, const vcl::Font& rFont);
468}
469
470#endif
471
472/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
An auto-timer is a multi-shot timer re-emitting itself at interval until destroyed or stopped.
Definition: timer.hxx:67
Some things multiple-inherit from VclAbstractDialog and OutputDevice, so we need to use virtual inher...
Definition: outdev.hxx:170
void Stop()
Definition: scheduler.cxx:599
Definition: timer.hxx:27
sal_Int32 addInterface(std::unique_lock< std::mutex > &rGuard, const css::uno::Reference< ListenerT > &rxIFace)
sal_Int32 removeInterface(std::unique_lock< std::mutex > &rGuard, const css::uno::Reference< ListenerT > &rxIFace)
bool IsModKeyPressed() const
Definition: weldutils.hxx:424
weld::Button & m_rButton
Definition: weldutils.hxx:409
const Link< const CommandEvent &, void > m_aContextLink
Definition: weldutils.hxx:412
const Link< Button &, void > m_aLink
Definition: weldutils.hxx:411
DECL_DLLPRIVATE_LINK(MouseReleaseHdl, const MouseEvent &, bool)
DECL_DLLPRIVATE_LINK(RepeatTimerHdl, Timer *, void)
DECL_DLLPRIVATE_LINK(MousePressHdl, const MouseEvent &, bool)
DECL_DLLPRIVATE_LINK(CursorChangedHdl, weld::Entry &, void)
std::unique_ptr< CalendarWrapper > m_xCalendarWrapper
Definition: weldutils.hxx:358
DECL_DLLPRIVATE_LINK(FormatOutputHdl, LinkParamNone *, bool)
DECL_DLLPRIVATE_LINK(ParseInputHdl, sal_Int64 *, TriState)
ExtDateFieldFormat m_eFormat
Definition: weldutils.hxx:357
virtual SAL_DLLPRIVATE ~DoubleNumericFormatter() override
std::unique_ptr< validation::NumberValidator > m_pNumberValidator
Definition: weldutils.hxx:272
Link< weld::Entry &, void > m_aModifyHdl
Definition: weldutils.hxx:247
DECL_DLLPRIVATE_LINK(FocusOutHdl, weld::Widget &, void)
weld::Entry & m_rEntry
Definition: weldutils.hxx:245
weld::Entry & get_widget()
Definition: weldutils.hxx:211
DECL_DLLPRIVATE_LINK(ModifyHdl, weld::Entry &, void)
void connect_focus_out(const Link< weld::Widget &, void > &rLink)
Definition: weldutils.hxx:240
void SetEntrySelectionOptions(SelectionOptions eOptions)
Definition: weldutils.hxx:229
void connect_changed(const Link< weld::Entry &, void > &rLink)
Definition: weldutils.hxx:239
SelectionOptions m_eOptions
Definition: weldutils.hxx:249
weld::FormattedSpinButton * m_pSpinButton
Definition: weldutils.hxx:246
Link< weld::Widget &, void > m_aFocusOutHdl
Definition: weldutils.hxx:248
DECL_DLLPRIVATE_LINK(ParseInputHdl, sal_Int64 *, TriState)
DECL_DLLPRIVATE_LINK(FormatOutputHdl, LinkParamNone *, bool)
void connect_key_press(const Link< const KeyEvent &, bool > &rLink)
Definition: weldutils.hxx:380
Link< weld::Entry &, void > m_aModifyHdl
Definition: weldutils.hxx:386
Link< weld::Widget &, void > m_aFocusInHdl
Definition: weldutils.hxx:387
void connect_focus_in(const Link< weld::Widget &, void > &rLink)
Definition: weldutils.hxx:379
Link< const KeyEvent &, bool > m_aKeyPressHdl
Definition: weldutils.hxx:389
void connect_changed(const Link< weld::Entry &, void > &rLink)
Definition: weldutils.hxx:377
DECL_DLLPRIVATE_LINK(FocusOutHdl, weld::Widget &, void)
Link< weld::Widget &, void > m_aFocusOutHdl
Definition: weldutils.hxx:388
void connect_focus_out(const Link< weld::Widget &, void > &rLink)
Definition: weldutils.hxx:378
DECL_DLLPRIVATE_LINK(ModifyHdl, weld::Entry &, void)
DECL_DLLPRIVATE_LINK(FocusInHdl, weld::Widget &, void)
weld::Entry & get_widget()
Definition: weldutils.hxx:367
DECL_DLLPRIVATE_LINK(KeyInputHdl, const KeyEvent &, bool)
weld::Entry & m_rEntry
Definition: weldutils.hxx:385
weld::TreeView & m_rTreeView
Definition: weldutils.hxx:438
TimeFormat m_eTimeFormat
Definition: weldutils.hxx:327
DECL_DLLPRIVATE_LINK(FormatOutputHdl, LinkParamNone *, bool)
DECL_DLLPRIVATE_LINK(ParseInputHdl, sal_Int64 *, TriState)
TimeFieldFormat m_eFormat
Definition: weldutils.hxx:326
DECL_DLLPRIVATE_LINK(CursorChangedHdl, weld::Entry &, void)
css::awt::Rectangle SAL_CALL getPosSize() override
Definition: weldutils.hxx:74
void SAL_CALL addPaintListener(const css::uno::Reference< css::awt::XPaintListener > &rListener) override
Definition: weldutils.hxx:159
weld::Widget * getWidget() const
Definition: weldutils.hxx:58
void SAL_CALL setVisible(sal_Bool bVisible) override
Definition: weldutils.hxx:79
comphelper::OInterfaceContainerHelper4< css::awt::XFocusListener > m_aFocusListeners
Definition: weldutils.hxx:46
comphelper::OInterfaceContainerHelper4< css::awt::XMouseMotionListener > m_aMotionListeners
Definition: weldutils.hxx:48
void SAL_CALL addFocusListener(const css::uno::Reference< css::awt::XFocusListener > &rListener) override
Definition: weldutils.hxx:103
void SAL_CALL setPosSize(sal_Int32, sal_Int32, sal_Int32, sal_Int32, sal_Int16) override
Definition: weldutils.hxx:69
TransportAsXWindow(weld::Widget *pWeldWidget, weld::Builder *pWeldWidgetBuilder=nullptr)
Definition: weldutils.hxx:52
virtual void clear()
Definition: weldutils.hxx:62
comphelper::OInterfaceContainerHelper4< css::awt::XMouseListener > m_aMouseListeners
Definition: weldutils.hxx:47
void SAL_CALL setEnable(sal_Bool bSensitive) override
Definition: weldutils.hxx:81
void SAL_CALL removePaintListener(const css::uno::Reference< css::awt::XPaintListener > &rListener) override
Definition: weldutils.hxx:166
comphelper::OInterfaceContainerHelper4< css::awt::XWindowListener > m_aWindowListeners
Definition: weldutils.hxx:44
void SAL_CALL removeWindowListener(const css::uno::Reference< css::awt::XWindowListener > &rListener) override
Definition: weldutils.hxx:96
weld::Builder * m_pWeldWidgetBuilder
Definition: weldutils.hxx:42
void SAL_CALL setFocus() override
Definition: weldutils.hxx:86
void SAL_CALL removeMouseListener(const css::uno::Reference< css::awt::XMouseListener > &rListener) override
Definition: weldutils.hxx:138
weld::Widget * m_pWeldWidget
Definition: weldutils.hxx:41
weld::Builder * getBuilder() const
Definition: weldutils.hxx:60
void SAL_CALL addWindowListener(const css::uno::Reference< css::awt::XWindowListener > &rListener) override
Definition: weldutils.hxx:89
comphelper::OInterfaceContainerHelper4< css::awt::XKeyListener > m_aKeyListeners
Definition: weldutils.hxx:45
void SAL_CALL removeMouseMotionListener(const css::uno::Reference< css::awt::XMouseMotionListener > &rListener) override
Definition: weldutils.hxx:151
void SAL_CALL addKeyListener(const css::uno::Reference< css::awt::XKeyListener > &rListener) override
Definition: weldutils.hxx:117
void SAL_CALL addMouseListener(const css::uno::Reference< css::awt::XMouseListener > &rListener) override
Definition: weldutils.hxx:131
comphelper::OInterfaceContainerHelper4< css::awt::XPaintListener > m_aPaintListeners
Definition: weldutils.hxx:49
void SAL_CALL removeFocusListener(const css::uno::Reference< css::awt::XFocusListener > &rListener) override
Definition: weldutils.hxx:110
void SAL_CALL removeKeyListener(const css::uno::Reference< css::awt::XKeyListener > &rListener) override
Definition: weldutils.hxx:124
void SAL_CALL addMouseMotionListener(const css::uno::Reference< css::awt::XMouseMotionListener > &rListener) override
Definition: weldutils.hxx:144
css::uno::Reference< css::frame::XDispatch > mxDispatch
The widget on which actions are performed.
Definition: weldutils.hxx:188
css::util::URL maCommandURL
Definition: weldutils.hxx:189
css::uno::Reference< css::frame::XFrame > mxFrame
Definition: weldutils.hxx:190
const css::uno::Reference< css::frame::XFrame > & getFrame() const
Definition: weldutils.hxx:198
virtual void grab_focus()=0
virtual void set_sensitive(bool sensitive)=0
virtual void set_visible(bool visible)
Definition: weld.hxx:109
void Init()
#define VCL_DLLPUBLIC
Definition: dllapi.h:29
OUString FormatNumber(sal_uInt32 nNum, SvxNumType nFormat, LanguageType nLang=LANGUAGE_NONE)
FORMAT_CHANGE_TYPE
Definition: formatter.hxx:77
TriState
std::mutex m_aMutex
AutoTimer m_aRepeat
Any GetTime(const OUString &val)
void dispose()
sal_Int64 ConvertValue(sal_Int64 nValue, sal_Int64 mnBaseValue, sal_uInt16 nDecDigits, FieldUnit eInUnit, FieldUnit eOutUnit)
Definition: field.cxx:1027
void RemoveParentKeepChildren(weld::TreeView &rTreeView, const weld::TreeIter &rParent)
Definition: weldutils.cxx:118
void SetPointFont(OutputDevice &rDevice, const vcl::Font &rFont)
Definition: weldutils.cxx:620
size_t GetAbsPos(const weld::TreeView &rTreeView, const weld::TreeIter &rIter)
Definition: builder.cxx:408
int GetMinimumEditHeight()
Definition: weldutils.cxx:492
weld::Window * GetPopupParent(vcl::Window &rOutWin, tools::Rectangle &rRect)
Definition: weldutils.cxx:607
bool IsEntryVisible(const weld::TreeView &rTreeView, const weld::TreeIter &rIter)
Definition: builder.cxx:426
comphelper::WeakComponentImplHelper< css::awt::XWindow > TransportAsXWindow_Base
Definition: weldutils.hxx:36
SelectionOptions
Definition: settings.hxx:179
bool bVisible
unsigned char sal_Bool
signed char sal_Int8
TimeFormat
Definition: vclenum.hxx:122
ExtDateFieldFormat
Definition: vclenum.hxx:135
TimeFieldFormat
Definition: vclenum.hxx:28
ExtTimeFieldFormat
Definition: vclenum.hxx:127