LibreOffice Module vcl (master) 1
salvtables.hxx
Go to the documentation of this file.
1/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4; fill-column: 100 -*- */
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#pragma once
10
11#include <vcl/weld.hxx>
12#include <vcl/svapp.hxx>
13#include <vcl/syswin.hxx>
14#include <vcl/settings.hxx>
15#include <vcl/virdev.hxx>
16#include <vcl/ctrl.hxx>
17#include <vcl/toolkit/edit.hxx>
18#include <vcl/formatter.hxx>
20#include <vcl/toolkit/fixed.hxx>
25#include <vcl/tabctrl.hxx>
26#include <vcl/layout.hxx>
30#include "calendar.hxx"
31#include "iconview.hxx"
32#include "listbox.hxx"
33#include "messagedialog.hxx"
34
35namespace vcl
36{
37class RoadmapWizard;
38};
39
41{
42protected:
43 std::unique_ptr<VclBuilder> m_xBuilder;
45
46public:
47 SalInstanceBuilder(vcl::Window* pParent, const OUString& rUIRoot, const OUString& rUIFile,
48 const css::uno::Reference<css::frame::XFrame>& rFrame
49 = css::uno::Reference<css::frame::XFrame>());
50
51 virtual std::unique_ptr<weld::MessageDialog> weld_message_dialog(const OUString& id) override;
52
53 virtual std::unique_ptr<weld::Dialog> weld_dialog(const OUString& id) override;
54
55 virtual std::unique_ptr<weld::Assistant> weld_assistant(const OUString& id) override;
56
57 virtual std::unique_ptr<weld::Window> create_screenshot_window() override;
58
59 virtual std::unique_ptr<weld::Widget> weld_widget(const OUString& id) override;
60
61 virtual std::unique_ptr<weld::Container> weld_container(const OUString& id) override;
62
63 virtual std::unique_ptr<weld::Box> weld_box(const OUString& id) override;
64
65 virtual std::unique_ptr<weld::Paned> weld_paned(const OUString& id) override;
66
67 virtual std::unique_ptr<weld::Frame> weld_frame(const OUString& id) override;
68
69 virtual std::unique_ptr<weld::ScrolledWindow>
70 weld_scrolled_window(const OUString& id, bool bUserManagedScrolling = false) override;
71
72 virtual std::unique_ptr<weld::Notebook> weld_notebook(const OUString& id) override;
73
74 virtual std::unique_ptr<weld::Button> weld_button(const OUString& id) override;
75
76 virtual std::unique_ptr<weld::MenuButton> weld_menu_button(const OUString& id) override;
77
78 virtual std::unique_ptr<weld::MenuToggleButton>
79 weld_menu_toggle_button(const OUString& id) override;
80
81 virtual std::unique_ptr<weld::LinkButton> weld_link_button(const OUString& id) override;
82
83 virtual std::unique_ptr<weld::ToggleButton> weld_toggle_button(const OUString& id) override;
84
85 virtual std::unique_ptr<weld::RadioButton> weld_radio_button(const OUString& id) override;
86
87 virtual std::unique_ptr<weld::CheckButton> weld_check_button(const OUString& id) override;
88
89 virtual std::unique_ptr<weld::Scale> weld_scale(const OUString& id) override;
90
91 virtual std::unique_ptr<weld::ProgressBar> weld_progress_bar(const OUString& id) override;
92
93 virtual std::unique_ptr<weld::Spinner> weld_spinner(const OUString& id) override;
94
95 virtual std::unique_ptr<weld::Image> weld_image(const OUString& id) override;
96
97 virtual std::unique_ptr<weld::Calendar> weld_calendar(const OUString& id) override;
98
99 virtual std::unique_ptr<weld::Entry> weld_entry(const OUString& id) override;
100
101 virtual std::unique_ptr<weld::SpinButton> weld_spin_button(const OUString& id) override;
102
103 virtual std::unique_ptr<weld::MetricSpinButton>
104 weld_metric_spin_button(const OUString& id, FieldUnit eUnit) override;
105
106 virtual std::unique_ptr<weld::FormattedSpinButton>
107 weld_formatted_spin_button(const OUString& id) override;
108
109 virtual std::unique_ptr<weld::ComboBox> weld_combo_box(const OUString& id) override;
110
111 virtual std::unique_ptr<weld::EntryTreeView>
112 weld_entry_tree_view(const OUString& containerid, const OUString& entryid,
113 const OUString& treeviewid) override;
114
115 virtual std::unique_ptr<weld::TreeView> weld_tree_view(const OUString& id) override;
116
117 virtual std::unique_ptr<weld::IconView> weld_icon_view(const OUString& id) override;
118
119 virtual std::unique_ptr<weld::Label> weld_label(const OUString& id) override;
120
121 virtual std::unique_ptr<weld::TextView> weld_text_view(const OUString& id) override;
122
123 virtual std::unique_ptr<weld::Expander> weld_expander(const OUString& id) override;
124
125 virtual std::unique_ptr<weld::DrawingArea>
126 weld_drawing_area(const OUString& id, const a11yref& rA11yImpl = nullptr,
127 FactoryFunction pUITestFactoryFunction = nullptr,
128 void* pUserData = nullptr) override;
129
130 virtual std::unique_ptr<weld::Menu> weld_menu(const OUString& id) override;
131
132 virtual std::unique_ptr<weld::Popover> weld_popover(const OUString& id) override;
133
134 virtual std::unique_ptr<weld::Toolbar> weld_toolbar(const OUString& id) override;
135
136 virtual std::unique_ptr<weld::Scrollbar> weld_scrollbar(const OUString& id) override;
137
138 virtual std::unique_ptr<weld::SizeGroup> create_size_group() override;
139
140 OUString get_current_page_help_id() const;
141
142 virtual ~SalInstanceBuilder() override;
143};
144
145class SAL_DLLPUBLIC_RTTI SalInstanceMenu final : public weld::Menu
146{
147private:
149
151 sal_uInt16 m_nLastId;
152
153 DECL_DLLPRIVATE_LINK(SelectMenuHdl, ::Menu*, bool);
154
155public:
156 SalInstanceMenu(PopupMenu* pMenu, bool bTakeOwnership);
157 virtual OUString popup_at_rect(weld::Widget* pParent, const tools::Rectangle& rRect,
158 weld::Placement ePlace = weld::Placement::Under) override;
159 virtual void set_sensitive(const OUString& rIdent, bool bSensitive) override;
160 virtual bool get_sensitive(const OUString& rIdent) const override;
161 virtual void set_active(const OUString& rIdent, bool bActive) override;
162 virtual bool get_active(const OUString& rIdent) const override;
163 virtual void set_label(const OUString& rIdent, const OUString& rLabel) override;
164 virtual OUString get_label(const OUString& rIdent) const override;
165 virtual void set_visible(const OUString& rIdent, bool bShow) override;
166 virtual void clear() override;
167 virtual void insert(int pos, const OUString& rId, const OUString& rStr,
168 const OUString* pIconName, VirtualDevice* pImageSurface,
169 const css::uno::Reference<css::graphic::XGraphic>& rImage,
170 TriState eCheckRadioFalse) override;
171 virtual void insert_separator(int pos, const OUString& rId) override;
172 virtual void set_item_help_id(const OUString& rIdent, const OUString& rHelpId) override;
173 virtual void remove(const OUString& rId) override;
174 virtual OUString get_id(int pos) const override;
175 virtual int n_children() const override;
176 PopupMenu* getMenu() const;
177 virtual ~SalInstanceMenu() override;
178};
179
181
182class SalInstanceWidget : public virtual weld::Widget
183{
184protected:
186 std::unique_ptr<SalFlashAttention> m_xFlashAttention;
188
189private:
190 DECL_LINK(EventListener, VclWindowEvent&, void);
191 DECL_LINK(KeyEventListener, VclWindowEvent&, bool);
192 DECL_LINK(MouseEventListener, VclWindowEvent&, void);
193 DECL_LINK(SettingsChangedHdl, VclWindowEvent&, void);
194 DECL_LINK(MnemonicActivateHdl, vcl::Window&, bool);
195
196 static void DoRecursivePaint(vcl::Window* pWindow, const Point& rPos, OutputDevice& rOutput);
197
204
205protected:
207
208 // we want the ability to mark key events as handled, so use this variant
209 // for those, we get all keystrokes in this case, so we will need to filter
210 // them later
211 void ensure_key_listener();
212
213 // we want the ability to know about mouse events that happen in our children
214 // so use this variant, we will need to filter them later
216
217 bool IsFirstFreeze() const { return m_nFreezeCount == 0; }
218 bool IsLastThaw() const { return m_nFreezeCount == 1; }
219
220 virtual void HandleEventListener(VclWindowEvent& rEvent);
221 virtual bool HandleKeyEventListener(VclWindowEvent& rEvent);
222 virtual void HandleMouseEventListener(VclWindowEvent& rEvent);
223
224public:
225 SalInstanceWidget(vcl::Window* pWidget, SalInstanceBuilder* pBuilder, bool bTakeOwnership);
226
227 virtual void set_sensitive(bool sensitive) override;
228
229 virtual bool get_sensitive() const override;
230
231 virtual bool get_visible() const override;
232
233 virtual bool is_visible() const override;
234
235 virtual void set_can_focus(bool bCanFocus) override;
236
237 virtual void grab_focus() override;
238
239 virtual bool has_focus() const override;
240
241 virtual bool is_active() const override;
242
243 virtual bool has_child_focus() const override;
244
245 virtual void show() override;
246
247 virtual void hide() override;
248
249 virtual void set_size_request(int nWidth, int nHeight) override;
250
251 virtual Size get_size_request() const override;
252
253 virtual Size get_preferred_size() const override;
254
255 virtual float get_approximate_digit_width() const override;
256
257 virtual int get_text_height() const override;
258
259 virtual Size get_pixel_size(const OUString& rText) const override;
260
261 virtual vcl::Font get_font() override;
262
263 virtual OUString get_buildable_name() const override;
264
265 virtual void set_buildable_name(const OUString& rId) override;
266
267 virtual void set_help_id(const OUString& rId) override;
268
269 virtual OUString get_help_id() const override;
270
271 virtual void set_grid_left_attach(int nAttach) override;
272
273 virtual int get_grid_left_attach() const override;
274
275 virtual void set_grid_width(int nCols) override;
276
277 virtual void set_grid_top_attach(int nAttach) override;
278
279 virtual int get_grid_top_attach() const override;
280
281 virtual void set_hexpand(bool bExpand) override;
282
283 virtual bool get_hexpand() const override;
284
285 virtual void set_vexpand(bool bExpand) override;
286
287 virtual bool get_vexpand() const override;
288
289 virtual void set_margin_top(int nMargin) override;
290
291 virtual void set_margin_bottom(int nMargin) override;
292
293 virtual void set_margin_start(int nMargin) override;
294
295 virtual void set_margin_end(int nMargin) override;
296
297 virtual int get_margin_top() const override;
298
299 virtual int get_margin_bottom() const override;
300
301 virtual int get_margin_start() const override;
302
303 virtual int get_margin_end() const override;
304
305 virtual void set_accessible_name(const OUString& rName) override;
306
307 virtual void set_accessible_description(const OUString& rDescription) override;
308
309 virtual OUString get_accessible_name() const override;
310
311 virtual OUString get_accessible_description() const override;
312
313 virtual void set_accessible_relation_labeled_by(weld::Widget* pLabel) override;
314
315 virtual void set_tooltip_text(const OUString& rTip) override;
316
317 virtual OUString get_tooltip_text() const override;
318
319 virtual void set_cursor_data(void* pData) override;
320
321 virtual void connect_focus_in(const Link<Widget&, void>& rLink) override;
322
323 virtual void connect_mnemonic_activate(const Link<Widget&, bool>& rLink) override;
324
325 virtual void connect_focus_out(const Link<Widget&, void>& rLink) override;
326
327 virtual void connect_size_allocate(const Link<const Size&, void>& rLink) override;
328
329 virtual void connect_mouse_press(const Link<const MouseEvent&, bool>& rLink) override;
330
331 virtual void connect_mouse_move(const Link<const MouseEvent&, bool>& rLink) override;
332
333 virtual void connect_mouse_release(const Link<const MouseEvent&, bool>& rLink) override;
334
335 virtual void connect_key_press(const Link<const KeyEvent&, bool>& rLink) override;
336
337 virtual void connect_key_release(const Link<const KeyEvent&, bool>& rLink) override;
338
339 virtual void connect_style_updated(const Link<Widget&, void>& rLink) override;
340
341 virtual bool get_extents_relative_to(const Widget& rRelative, int& x, int& y, int& width,
342 int& height) const override;
343
344 virtual void grab_add() override;
345
346 virtual bool has_grab() const override;
347
348 virtual void grab_remove() override;
349
350 virtual bool get_direction() const override;
351
352 virtual void set_direction(bool bRTL) override;
353
354 virtual void freeze() override;
355
356 virtual void thaw() override;
357
358 virtual void set_busy_cursor(bool bBusy) override;
359
360 virtual std::unique_ptr<weld::Container> weld_parent() const override;
361
362 virtual ~SalInstanceWidget() override;
363
364 vcl::Window* getWidget() const;
365
367
368 bool notify_events_disabled() const;
369
371
372 virtual void queue_resize() override;
373
374 virtual void help_hierarchy_foreach(const std::function<bool(const OUString&)>& func) override;
375
376 virtual OUString strip_mnemonic(const OUString& rLabel) const override;
377
378 virtual VclPtr<VirtualDevice> create_virtual_device() const override;
379
380 virtual css::uno::Reference<css::datatransfer::dnd::XDropTarget> get_drop_target() override;
381 virtual css::uno::Reference<css::datatransfer::clipboard::XClipboard>
382 get_clipboard() const override;
383
384 virtual void connect_get_property_tree(const Link<tools::JsonWriter&, void>& rLink) override;
385
386 virtual void get_property_tree(tools::JsonWriter& rJsonWriter) override;
387
388 virtual void call_attention_to() override;
389
390 virtual void set_stack_background() override;
391
392 virtual void set_title_background() override;
393
394 virtual void set_toolbar_background() override;
395
396 virtual void set_highlight_background() override;
397
398 virtual void set_background(const Color& rColor) override;
399
400 virtual void draw(OutputDevice& rOutput, const Point& rPos, const Size& rSizePixel) override;
401
403};
404
405class SalInstanceLabel : public SalInstanceWidget, public virtual weld::Label
406{
407private:
408 // Control instead of FixedText so we can also use this for
409 // SelectableFixedText which is derived from Edit. We just typically need
410 // [G|S]etText which exists in their shared baseclass
412
413public:
414 SalInstanceLabel(Control* pLabel, SalInstanceBuilder* pBuilder, bool bTakeOwnership);
415
416 virtual void set_label(const OUString& rText) override;
417
418 virtual OUString get_label() const override;
419
420 virtual void set_mnemonic_widget(Widget* pTarget) override;
421
422 virtual void set_label_type(weld::LabelType eType) override;
423
424 virtual void set_font(const vcl::Font& rFont) override;
425
426 virtual void set_font_color(const Color& rColor) override;
427};
428
430{
432
433public:
435 bool bTakeOwnership);
436 virtual void HandleEventListener(VclWindowEvent& rEvent) override;
437 virtual void connect_container_focus_changed(const Link<Container&, void>& rLink) override;
438 virtual void child_grab_focus() override;
439 virtual void move(weld::Widget* pWidget, weld::Container* pNewParent) override;
440 virtual css::uno::Reference<css::awt::XWindow> CreateChildFrame() override;
441};
442
444{
445private:
447
448 DECL_LINK(HelpHdl, vcl::Window&, bool);
449
450 void override_child_help(vcl::Window* pParent);
451
452 void clear_child_help(vcl::Window* pParent);
453
455
456 void implResetDefault(const vcl::Window* _pWindow);
457
458public:
459 SalInstanceWindow(vcl::Window* pWindow, SalInstanceBuilder* pBuilder, bool bTakeOwnership);
460
461 virtual void set_title(const OUString& rTitle) override;
462
463 virtual OUString get_title() const override;
464
465 void help();
466
467 virtual css::uno::Reference<css::awt::XWindow> GetXWindow() override;
468
469 virtual void resize_to_request() override;
470
471 virtual void set_modal(bool bModal) override;
472
473 virtual bool get_modal() const override;
474
475 virtual void window_move(int x, int y) override;
476
477 virtual Size get_size() const override;
478
479 virtual Point get_position() const override;
480
481 virtual tools::Rectangle get_monitor_workarea() const override;
482
483 virtual void set_centered_on_parent(bool /*bTrackGeometryRequests*/) override;
484
485 virtual bool get_resizable() const override;
486
487 virtual bool has_toplevel_focus() const override;
488
489 virtual void present() override;
490
491 virtual void change_default_widget(weld::Widget* pOld, weld::Widget* pNew) override;
492
493 virtual bool is_default_widget(const weld::Widget* pCandidate) const override;
494
495 virtual void set_window_state(const OUString& rStr) override;
496
497 virtual OUString get_window_state(vcl::WindowDataMask nMask) const override;
498
499 virtual SystemEnvData get_system_data() const override;
500
502
503 virtual VclPtr<VirtualDevice> screenshot() override;
504
505 virtual const vcl::ILibreOfficeKitNotifier* GetLOKNotifier() override;
506
507 virtual ~SalInstanceWindow() override;
508};
509
511{
512protected:
514
515private:
516 // for calc ref dialog that shrink to range selection widgets and resize back
518 std::vector<VclPtr<vcl::Window>> m_aHiddenWidgets; // vector of hidden Controls
519 tools::Long m_nOldEditWidthReq; // Original width request of the input field
520 sal_Int32 m_nOldBorderWidth; // border width for expanded dialog
521
522 DECL_LINK(PopupScreenShotMenuHdl, const CommandEvent&, bool);
523
524public:
525 SalInstanceDialog(::Dialog* pDialog, SalInstanceBuilder* pBuilder, bool bTakeOwnership);
526
527 virtual bool runAsync(std::shared_ptr<weld::DialogController> aOwner,
528 const std::function<void(sal_Int32)>& rEndDialogFn) override;
529
530 virtual bool runAsync(std::shared_ptr<Dialog> const& rxSelf,
531 const std::function<void(sal_Int32)>& rEndDialogFn) override;
532
533 virtual void collapse(weld::Widget* pEdit, weld::Widget* pButton) override;
534
535 virtual void undo_collapse() override;
536
537 virtual void
539
540 virtual int run() override;
541
542 virtual void response(int nResponse) override;
543
544 virtual void add_button(const OUString& rText, int nResponse,
545 const OUString& rHelpId = {}) override;
546
547 virtual void set_modal(bool bModal) override;
548
549 virtual bool get_modal() const override;
550
551 virtual weld::Button* weld_widget_for_response(int nResponse) override;
552
553 virtual void set_default_response(int nResponse) override;
554
555 virtual weld::Container* weld_content_area() override;
556};
557
559{
560protected:
562
563private:
564 std::vector<std::unique_ptr<SalInstanceContainer>> m_aPages;
565 std::vector<VclPtr<TabPage>> m_aAddedPages;
566 std::vector<int> m_aIds;
567 std::vector<VclPtr<VclGrid>> m_aAddedGrids;
569
570 int find_page(std::u16string_view rIdent) const;
571 int find_id(int nId) const;
572
573 DECL_LINK(OnRoadmapItemSelected, LinkParamNone*, void);
574 DECL_LINK(UpdateRoadmap_Hdl, Timer*, void);
575
576public:
578 bool bTakeOwnership);
579 virtual int get_current_page() const override;
580 virtual int get_n_pages() const override;
581 virtual OUString get_page_ident(int nPage) const override;
582 virtual OUString get_current_page_ident() const override;
583 virtual void set_current_page(int nPage) override;
584 virtual void set_current_page(const OUString& rIdent) override;
585 virtual void set_page_index(const OUString& rIdent, int nNewIndex) override;
586 virtual weld::Container* append_page(const OUString& rIdent) override;
587 virtual OUString get_page_title(const OUString& rIdent) const override;
588 virtual void set_page_title(const OUString& rIdent, const OUString& rTitle) override;
589 virtual void set_page_sensitive(const OUString& rIdent, bool bSensitive) override;
590 virtual void set_page_side_help_id(const OUString& rHelpId) override;
591 virtual void set_page_side_image(const OUString& rImage) override;
592 weld::Button* weld_widget_for_response(int nResponse) override;
593
594 virtual ~SalInstanceAssistant() override;
595};
596
597class WeldTextFilter final : public TextFilter
598{
599private:
601
602public:
603 WeldTextFilter(Link<OUString&, bool>& rInsertTextHdl);
604
605 virtual OUString filter(const OUString& rText) override;
606};
607
608class SalInstanceEntry : public SalInstanceWidget, public virtual weld::Entry
609{
610private:
612
613 DECL_LINK(ChangeHdl, Edit&, void);
614 DECL_LINK(CursorListener, VclWindowEvent&, void);
615 DECL_LINK(ActivateHdl, Edit&, bool);
616
618
619public:
620 SalInstanceEntry(::Edit* pEntry, SalInstanceBuilder* pBuilder, bool bTakeOwnership);
621
622 virtual void set_text(const OUString& rText) override;
623
624 virtual OUString get_text() const override;
625
626 virtual void set_width_chars(int nChars) override;
627
628 virtual int get_width_chars() const override;
629
630 virtual void set_max_length(int nChars) override;
631
632 virtual void select_region(int nStartPos, int nEndPos) override;
633
634 bool get_selection_bounds(int& rStartPos, int& rEndPos) override;
635
636 virtual void replace_selection(const OUString& rText) override;
637
638 virtual void set_position(int nCursorPos) override;
639
640 virtual int get_position() const override;
641
642 virtual void set_editable(bool bEditable) override;
643
644 virtual bool get_editable() const override;
645
646 virtual void set_overwrite_mode(bool bOn) override;
647
648 virtual bool get_overwrite_mode() const override;
649
650 virtual void set_message_type(weld::EntryMessageType eType) override;
651
652 virtual void set_font(const vcl::Font& rFont) override;
653
654 virtual void set_font_color(const Color& rColor) override;
655
656 virtual void connect_cursor_position(const Link<Entry&, void>& rLink) override;
657
658 virtual void set_placeholder_text(const OUString& rText) override;
659
660 Edit& getEntry();
661
662 void fire_signal_changed();
663
664 virtual void cut_clipboard() override;
665
666 virtual void copy_clipboard() override;
667
668 virtual void paste_clipboard() override;
669
670 virtual void set_alignment(TxtAlign eXAlign) override;
671
672 virtual ~SalInstanceEntry() override;
673};
674
676{
678
679protected:
681
682private:
683 DECL_LINK(UpDownHdl, SpinField&, void);
684 DECL_LINK(LoseFocusHdl, Control&, void);
685 DECL_LINK(OutputHdl, LinkParamNone*, bool);
686 DECL_LINK(InputHdl, sal_Int64*, TriState);
687 DECL_LINK(ActivateHdl, Edit&, bool);
688
689 double toField(sal_Int64 nValue) const;
690
691 sal_Int64 fromField(double fValue) const;
692
693public:
695 bool bTakeOwnership);
696
697 virtual sal_Int64 get_value() const override;
698
699 virtual void set_value(sal_Int64 value) override;
700
701 virtual void set_range(sal_Int64 min, sal_Int64 max) override;
702
703 virtual void get_range(sal_Int64& min, sal_Int64& max) const override;
704
705 virtual void set_increments(int step, int /*page*/) override;
706
707 virtual void get_increments(int& step, int& page) const override;
708
709 virtual void set_digits(unsigned int digits) override;
710
711 // SpinButton may be comprised of multiple subwidgets, consider the lot as
712 // one thing for focus
713 virtual bool has_focus() const override;
714
715 //off by default for direct SpinButtons, MetricSpinButton enables it
716 void SetUseThousandSep();
717
718 virtual unsigned int get_digits() const override;
719
720 virtual ~SalInstanceSpinButton() override;
721};
722
723//ComboBox and ListBox have similar apis, ComboBoxes in LibreOffice have an edit box and ListBoxes
724//don't. This distinction isn't there in Gtk. Use a template to sort this problem out.
725template <class vcl_type>
727{
728protected:
729 // owner for ListBox/ComboBox UserData
730 std::vector<std::shared_ptr<OUString>> m_aUserData;
734
735public:
736 SalInstanceComboBox(vcl_type* pComboBox, SalInstanceBuilder* pBuilder, bool bTakeOwnership)
737 : SalInstanceWidget(pComboBox, pBuilder, bTakeOwnership)
738 , m_xComboBox(pComboBox)
739 {
740 }
741
742 virtual int get_active() const override
743 {
744 const sal_Int32 nRet = m_xComboBox->GetSelectedEntryPos();
745 if (nRet == LISTBOX_ENTRY_NOTFOUND)
746 return -1;
747 return nRet;
748 }
749
750 const OUString* getEntryData(int index) const
751 {
752 return static_cast<const OUString*>(m_xComboBox->GetEntryData(index));
753 }
754
755 // ComboBoxes are comprised of multiple subwidgets, consider the lot as
756 // one thing for focus
757 virtual bool has_focus() const override
758 {
760 || (m_xMenuButton && (m_xMenuButton->HasFocus() || m_xMenuButton->InPopupMode()));
761 }
762
763 virtual OUString get_active_id() const override
764 {
765 sal_Int32 nPos = m_xComboBox->GetSelectedEntryPos();
766 const OUString* pRet;
768 pRet = getEntryData(m_xComboBox->GetSelectedEntryPos());
769 else
770 pRet = nullptr;
771 if (!pRet)
772 return OUString();
773 return *pRet;
774 }
775
776 virtual void set_active_id(const OUString& rStr) override
777 {
778 for (int i = 0; i < get_count(); ++i)
779 {
780 const OUString* pId = getEntryData(i);
781 if (!pId)
782 continue;
783 if (*pId == rStr)
784 m_xComboBox->SelectEntryPos(i);
785 }
786 }
787
788 virtual void set_active(int pos) override
789 {
790 assert(m_xComboBox->IsUpdateMode()
791 && "don't set_active when frozen, set_active after thaw. Note selection doesn't "
792 "survive a "
793 "freeze");
794 if (pos == -1)
795 {
796 m_xComboBox->SetNoSelection();
797 return;
798 }
799 m_xComboBox->SelectEntryPos(pos);
800 }
801
802 virtual OUString get_text(int pos) const override { return m_xComboBox->GetEntry(pos); }
803
804 virtual OUString get_id(int pos) const override
805 {
806 const OUString* pRet = getEntryData(pos);
807 if (!pRet)
808 return OUString();
809 return *pRet;
810 }
811
812 virtual void set_id(int row, const OUString& rId) override
813 {
814 m_aUserData.emplace_back(std::make_unique<OUString>(rId));
815 m_xComboBox->SetEntryData(row, m_aUserData.back().get());
816 }
817
818 virtual void insert_vector(const std::vector<weld::ComboBoxEntry>& rItems,
819 bool bKeepExisting) override
820 {
821 freeze();
822 if (!bKeepExisting)
823 clear();
824 for (const auto& rItem : rItems)
825 {
826 insert(-1, rItem.sString, rItem.sId.isEmpty() ? nullptr : &rItem.sId,
827 rItem.sImage.isEmpty() ? nullptr : &rItem.sImage, nullptr);
828 }
829 thaw();
830 }
831
832 virtual int get_count() const override { return m_xComboBox->GetEntryCount(); }
833
834 virtual int find_text(const OUString& rStr) const override
835 {
836 const sal_Int32 nRet = m_xComboBox->GetEntryPos(rStr);
837 if (nRet == LISTBOX_ENTRY_NOTFOUND)
838 return -1;
839 return nRet;
840 }
841
842 virtual int find_id(const OUString& rStr) const override
843 {
844 for (int i = 0; i < get_count(); ++i)
845 {
846 const OUString* pId = getEntryData(i);
847 if (!pId)
848 continue;
849 if (*pId == rStr)
850 return i;
851 }
852 return -1;
853 }
854
855 virtual void clear() override
856 {
857 m_xComboBox->Clear();
858 m_aUserData.clear();
859 }
860
861 virtual void make_sorted() override
862 {
863 m_xComboBox->SetStyle(m_xComboBox->GetStyle() | WB_SORT);
864 }
865
866 virtual bool get_popup_shown() const override { return m_xComboBox->IsInDropDown(); }
867
868 virtual void connect_popup_toggled(const Link<ComboBox&, void>& rLink) override
869 {
872 }
873
875 {
876 vcl::RenderContext* pRenderContext = pEvent->GetRenderContext();
877 auto nPos = pEvent->GetItemId();
878 const tools::Rectangle& rRect = pEvent->GetRect();
879 const OUString sId = get_id(nPos);
880 signal_custom_render(*pRenderContext, rRect, pEvent->IsSelected(), sId);
881 m_xComboBox->DrawEntry(*pEvent); // draw separator
882
883 if (m_xMenuButton && m_xMenuButton->IsVisible() && m_sMenuButtonRow == sId)
884 {
885 vcl::Window* pEventWindow = m_xComboBox->GetMainWindow();
886 if (m_xMenuButton->GetParent() != pEventWindow)
887 m_xMenuButton->SetParent(pEventWindow);
889 m_xMenuButton->SetSizePixel(Size(nButtonWidth, rRect.GetHeight()));
890 m_xMenuButton->SetPosPixel(Point(rRect.GetWidth() - nButtonWidth, rRect.Top()));
891 }
892 }
893
895 {
896 auto xRet = VclPtr<VirtualDevice>::Create();
897 xRet->SetBackground(Application::GetSettings().GetStyleSettings().GetFieldColor());
898 return xRet;
899 }
900
901 virtual void set_item_menu(const OUString& rIdent, weld::Menu* pMenu) override
902 {
903 SalInstanceMenu* pInstanceMenu = dynamic_cast<SalInstanceMenu*>(pMenu);
904
905 PopupMenu* pPopup = pInstanceMenu ? pInstanceMenu->getMenu() : nullptr;
906
907 if (!m_xMenuButton)
910
911 m_xMenuButton->SetPopupMenu(pPopup);
912 m_xMenuButton->Show(pPopup != nullptr);
913 m_sMenuButtonRow = rIdent;
914 }
915
916 int get_menu_button_width() const override
917 {
919 return 20 * (pDefault ? pDefault->GetDPIScaleFactor() : 1.0);
920 }
921
923 {
924 if (rEvent.GetId() == VclEventId::DropdownPreOpen
925 || rEvent.GetId() == VclEventId::DropdownClose)
926 {
928 return;
929 }
931 }
932};
933
935{
936private:
937 DECL_LINK(SelectHdl, ListBox&, void);
938
939public:
941 bool bTakeOwnership);
942
943 virtual OUString get_active_text() const override;
944
945 virtual void remove(int pos) override;
946
947 virtual void insert(int pos, const OUString& rStr, const OUString* pId,
948 const OUString* pIconName, VirtualDevice* pImageSurface) override;
949
950 virtual void insert_separator(int pos, const OUString& /*rId*/) override;
951
952 virtual bool has_entry() const override;
953
954 virtual bool changed_by_direct_pick() const override;
955
956 virtual void set_entry_message_type(weld::EntryMessageType /*eType*/) override;
957
958 virtual void set_entry_text(const OUString& /*rText*/) override;
959
960 virtual void select_entry_region(int /*nStartPos*/, int /*nEndPos*/) override;
961
962 virtual bool get_entry_selection_bounds(int& /*rStartPos*/, int& /*rEndPos*/) override;
963
964 virtual void set_entry_width_chars(int /*nChars*/) override;
965
966 virtual void set_entry_max_length(int /*nChars*/) override;
967
968 virtual void set_entry_completion(bool, bool bCaseSensitive = false) override;
969
970 virtual void set_entry_placeholder_text(const OUString&) override;
971
972 virtual void set_entry_editable(bool bEditable) override;
973
974 virtual void cut_entry_clipboard() override;
975
976 virtual void copy_entry_clipboard() override;
977
978 virtual void paste_entry_clipboard() override;
979
980 virtual void set_font(const vcl::Font& rFont) override;
981
982 virtual void set_entry_font(const vcl::Font&) override;
983
984 virtual vcl::Font get_entry_font() override;
985
986 virtual void set_custom_renderer(bool bOn) override;
987
988 virtual int get_max_mru_count() const override;
989
990 virtual void set_max_mru_count(int) override;
991
992 virtual OUString get_mru_entries() const override;
993
994 virtual void set_mru_entries(const OUString&) override;
995
996 virtual void HandleEventListener(VclWindowEvent& rEvent) override;
997
998 virtual ~SalInstanceComboBoxWithoutEdit() override;
999};
1000
1002{
1003private:
1004 DECL_LINK(ChangeHdl, Edit&, void);
1005 DECL_LINK(EntryActivateHdl, Edit&, bool);
1006 DECL_LINK(SelectHdl, ::ComboBox&, void);
1007 DECL_LINK(UserDrawHdl, UserDrawEvent*, void);
1010
1011public:
1013 bool bTakeOwnership);
1014
1015 virtual bool has_entry() const override;
1016
1017 virtual bool changed_by_direct_pick() const override;
1018
1019 virtual void set_entry_message_type(weld::EntryMessageType eType) override;
1020
1021 virtual OUString get_active_text() const override;
1022
1023 virtual void remove(int pos) override;
1024
1025 virtual void insert(int pos, const OUString& rStr, const OUString* pId,
1026 const OUString* pIconName, VirtualDevice* pImageSurface) override;
1027
1028 virtual void insert_separator(int pos, const OUString& /*rId*/) override;
1029
1030 virtual void set_entry_text(const OUString& rText) override;
1031
1032 virtual void set_entry_width_chars(int nChars) override;
1033
1034 virtual void set_entry_max_length(int nChars) override;
1035
1036 virtual void set_entry_completion(bool bEnable, bool bCaseSensitive = false) override;
1037
1038 virtual void set_entry_placeholder_text(const OUString& rText) override;
1039
1040 virtual void set_entry_editable(bool bEditable) override;
1041
1042 virtual void cut_entry_clipboard() override;
1043
1044 virtual void copy_entry_clipboard() override;
1045
1046 virtual void paste_entry_clipboard() override;
1047
1048 virtual void select_entry_region(int nStartPos, int nEndPos) override;
1049
1050 virtual bool get_entry_selection_bounds(int& rStartPos, int& rEndPos) override;
1051
1052 virtual void set_font(const vcl::Font& rFont) override;
1053
1054 virtual void set_entry_font(const vcl::Font& rFont) override;
1055
1056 virtual vcl::Font get_entry_font() override;
1057
1058 virtual void set_custom_renderer(bool bOn) override;
1059
1060 virtual int get_max_mru_count() const override;
1061
1062 virtual void set_max_mru_count(int nCount) override;
1063
1064 virtual OUString get_mru_entries() const override;
1065
1066 virtual void set_mru_entries(const OUString& rEntries) override;
1067
1068 virtual void HandleEventListener(VclWindowEvent& rEvent) override;
1069
1070 virtual void call_attention_to() override;
1071
1072 virtual ~SalInstanceComboBoxWithEdit() override;
1073};
1074
1076{
1077private:
1080
1081 DECL_LINK(ClickHdl, ::Button*, void);
1082
1083public:
1084 SalInstanceButton(::Button* pButton, SalInstanceBuilder* pBuilder, bool bTakeOwnership);
1085
1086 virtual void set_label(const OUString& rText) override;
1087
1088 virtual void set_image(VirtualDevice* pDevice) override;
1089
1090 virtual void set_image(const css::uno::Reference<css::graphic::XGraphic>& rImage) override;
1091
1092 virtual void set_from_icon_name(const OUString& rIconName) override;
1093
1094 virtual OUString get_label() const override;
1095
1096 virtual void set_font(const vcl::Font& rFont) override;
1097
1098 virtual void set_custom_button(VirtualDevice* pDevice) override;
1099
1100 virtual ~SalInstanceButton() override;
1101};
1102
1104{
1105private:
1107
1108 DECL_LINK(ToggleListener, VclWindowEvent&, void);
1109
1110public:
1111 SalInstanceToggleButton(PushButton* pButton, SalInstanceBuilder* pBuilder, bool bTakeOwnership)
1112 : SalInstanceButton(pButton, pBuilder, bTakeOwnership)
1113 , m_xToggleButton(pButton)
1114 {
1116 }
1117
1118 virtual void connect_toggled(const Link<Toggleable&, void>& rLink) override
1119 {
1120 assert(!m_aToggleHdl.IsSet());
1123 }
1124
1125 virtual void set_active(bool active) override
1126 {
1128 m_xToggleButton->Check(active);
1130 }
1131
1132 virtual bool get_active() const override { return m_xToggleButton->IsChecked(); }
1133
1134 virtual void set_inconsistent(bool inconsistent) override
1135 {
1139 }
1140
1141 virtual bool get_inconsistent() const override
1142 {
1144 }
1145
1146 virtual ~SalInstanceToggleButton() override
1147 {
1148 if (m_aToggleHdl.IsSet())
1150 LINK(this, SalInstanceToggleButton, ToggleListener));
1151 }
1152};
1153
1155{
1156private:
1158 mutable std::vector<std::shared_ptr<SalInstanceContainer>> m_aPages;
1159 std::map<OUString, std::pair<VclPtr<TabPage>, VclPtr<VclGrid>>> m_aAddedPages;
1160
1161 DECL_LINK(DeactivatePageHdl, TabControl*, bool);
1162 DECL_LINK(ActivatePageHdl, TabControl*, void);
1163
1164public:
1165 SalInstanceNotebook(TabControl* pNotebook, SalInstanceBuilder* pBuilder, bool bTakeOwnership);
1166
1167 virtual int get_current_page() const override;
1168
1169 virtual int get_page_index(const OUString& rIdent) const override;
1170
1171 virtual OUString get_page_ident(int nPage) const override;
1172
1173 virtual OUString get_current_page_ident() const override;
1174
1175 virtual weld::Container* get_page(const OUString& rIdent) const override;
1176
1177 virtual void set_current_page(int nPage) override;
1178
1179 virtual void set_current_page(const OUString& rIdent) override;
1180
1181 virtual void remove_page(const OUString& rIdent) override;
1182
1183 virtual void insert_page(const OUString& rIdent, const OUString& rLabel, int nPos) override;
1184
1185 virtual int get_n_pages() const override;
1186
1187 virtual OUString get_tab_label_text(const OUString& rIdent) const override;
1188
1189 virtual void set_tab_label_text(const OUString& rIdent, const OUString& rText) override;
1190
1191 virtual void set_show_tabs(bool bShow) override;
1192
1193 virtual ~SalInstanceNotebook() override;
1194};
1195
1197{
1198protected:
1200
1201public:
1203 bool bTakeOwnership);
1204
1205 virtual void set_primary_text(const OUString& rText) override;
1206
1207 virtual OUString get_primary_text() const override;
1208
1209 virtual void set_secondary_text(const OUString& rText) override;
1210
1211 virtual OUString get_secondary_text() const override;
1212
1213 virtual weld::Container* weld_message_area() override;
1214};
1215
1217{
1218private:
1221
1222 DECL_LINK(ClickHdl, FixedHyperlink&, void);
1223
1224public:
1225 SalInstanceLinkButton(FixedHyperlink* pButton, SalInstanceBuilder* pBuilder,
1226 bool bTakeOwnership)
1227 : SalInstanceWidget(pButton, pBuilder, bTakeOwnership)
1228 , m_xButton(pButton)
1229 {
1230 m_aOrigClickHdl = m_xButton->GetClickHdl();
1231 m_xButton->SetClickHdl(LINK(this, SalInstanceLinkButton, ClickHdl));
1232 }
1233
1234 virtual void set_label(const OUString& rText) override { m_xButton->SetText(rText); }
1235
1236 virtual OUString get_label() const override { return m_xButton->GetText(); }
1237
1238 virtual void set_uri(const OUString& rUri) override { m_xButton->SetURL(rUri); }
1239
1240 virtual OUString get_uri() const override { return m_xButton->GetURL(); }
1241
1242 virtual void set_label_wrap(bool wrap) override;
1243
1244 virtual ~SalInstanceLinkButton() override { m_xButton->SetClickHdl(m_aOrigClickHdl); }
1245};
1246
1248{
1249private:
1251
1252 DECL_LINK(ToggleHdl, CheckBox&, void);
1253
1254public:
1255 SalInstanceCheckButton(CheckBox* pButton, SalInstanceBuilder* pBuilder, bool bTakeOwnership);
1256
1257 virtual void set_active(bool active) override;
1258
1259 virtual bool get_active() const override;
1260
1261 virtual void set_inconsistent(bool inconsistent) override;
1262
1263 virtual bool get_inconsistent() const override;
1264
1265 virtual void set_label(const OUString& rText) override { SalInstanceButton::set_label(rText); }
1266
1267 virtual OUString get_label() const override { return SalInstanceButton::get_label(); }
1268
1269 virtual void set_label_wrap(bool wrap) override;
1270
1271 virtual ~SalInstanceCheckButton() override;
1272};
1273
1275{
1276private:
1278
1279 typedef std::pair<vcl::RenderContext&, const tools::Rectangle&> target_and_area;
1280 DECL_LINK(PaintHdl, target_and_area, void);
1281 DECL_LINK(ResizeHdl, const Size&, void);
1282 DECL_LINK(MousePressHdl, const MouseEvent&, bool);
1283 DECL_LINK(MouseMoveHdl, const MouseEvent&, bool);
1284 DECL_LINK(MouseReleaseHdl, const MouseEvent&, bool);
1285 DECL_LINK(KeyPressHdl, const KeyEvent&, bool);
1286 DECL_LINK(KeyReleaseHdl, const KeyEvent&, bool);
1287 DECL_LINK(StyleUpdatedHdl, VclDrawingArea&, void);
1288 DECL_LINK(CommandHdl, const CommandEvent&, bool);
1289 DECL_LINK(QueryTooltipHdl, tools::Rectangle&, OUString);
1290 DECL_LINK(GetSurroundingHdl, OUString&, int);
1291 DECL_LINK(DeleteSurroundingHdl, const Selection&, bool);
1292 DECL_LINK(StartDragHdl, VclDrawingArea*, bool);
1293
1294 // SalInstanceWidget has a generic listener for all these
1295 // events, ignore the ones we have specializations for
1296 // in VclDrawingArea
1297 virtual void HandleEventListener(VclWindowEvent& rEvent) override;
1298
1299 virtual void HandleMouseEventListener(VclWindowEvent& rEvent) override;
1300
1301 virtual bool HandleKeyEventListener(VclWindowEvent& /*rEvent*/) override;
1302
1303public:
1305 const a11yref& rAlly, FactoryFunction pUITestFactoryFunction,
1306 void* pUserData, bool bTakeOwnership);
1307
1308 virtual void queue_draw() override;
1309
1310 virtual void queue_draw_area(int x, int y, int width, int height) override;
1311
1312 virtual void connect_size_allocate(const Link<const Size&, void>& rLink) override;
1313
1314 virtual void connect_key_press(const Link<const KeyEvent&, bool>& rLink) override;
1315
1316 virtual void connect_key_release(const Link<const KeyEvent&, bool>& rLink) override;
1317
1318 virtual void connect_style_updated(const Link<Widget&, void>& rLink) override;
1319
1320 virtual void set_cursor(PointerStyle ePointerStyle) override;
1321
1322 virtual Point get_pointer_position() const override;
1323
1324 virtual void set_input_context(const InputContext& rInputContext) override;
1325
1326 virtual void im_context_set_cursor_location(const tools::Rectangle& rCursorRect,
1327 int nExtTextInputWidth) override;
1328
1329 virtual a11yref get_accessible_parent() override;
1330
1332
1333 virtual Point get_accessible_location_on_screen() override;
1334
1336 sal_uInt8 eDNDConstants) override;
1337
1338 virtual ~SalInstanceDrawingArea() override;
1339
1340 virtual OutputDevice& get_ref_device() override;
1341
1342 virtual void click(const Point& rPos) override;
1343
1344 virtual void dblclick(const Point& rPos) override;
1345
1346 virtual void mouse_up(const Point& rPos) override;
1347
1348 virtual void mouse_down(const Point& rPos) override;
1349
1350 virtual void mouse_move(const Point& rPos) override;
1351};
1352
1354{
1355protected:
1357 std::map<ToolBoxItemId, VclPtr<vcl::Window>> m_aFloats;
1358 std::map<ToolBoxItemId, VclPtr<PopupMenu>> m_aMenus;
1359
1361
1362 DECL_LINK(ClickHdl, ToolBox*, void);
1363 DECL_LINK(DropdownClick, ToolBox*, void);
1364 DECL_LINK(MenuToggleListener, VclWindowEvent&, void);
1365
1366public:
1367 SalInstanceToolbar(ToolBox* pToolBox, SalInstanceBuilder* pBuilder, bool bTakeOwnership);
1368
1369 virtual void set_item_sensitive(const OUString& rIdent, bool bSensitive) override;
1370
1371 virtual bool get_item_sensitive(const OUString& rIdent) const override;
1372
1373 virtual void set_item_visible(const OUString& rIdent, bool bVisible) override;
1374
1375 virtual void set_item_help_id(const OUString& rIdent, const OUString& rHelpId) override;
1376
1377 virtual bool get_item_visible(const OUString& rIdent) const override;
1378
1379 virtual void set_item_active(const OUString& rIdent, bool bActive) override;
1380
1381 virtual bool get_item_active(const OUString& rIdent) const override;
1382
1383 void set_menu_item_active(const OUString& rIdent, bool bActive) override;
1384
1385 bool get_menu_item_active(const OUString& rIdent) const override;
1386
1387 virtual void set_item_popover(const OUString& rIdent, weld::Widget* pPopover) override;
1388
1389 virtual void set_item_menu(const OUString& rIdent, weld::Menu* pMenu) override;
1390
1391 virtual void insert_item(int pos, const OUString& rId) override;
1392
1393 virtual void insert_separator(int pos, const OUString& /*rId*/) override;
1394
1395 virtual int get_n_items() const override;
1396
1397 virtual OUString get_item_ident(int nIndex) const override;
1398
1399 virtual void set_item_ident(int nIndex, const OUString& rIdent) override;
1400
1401 virtual void set_item_label(int nIndex, const OUString& rLabel) override;
1402
1403 virtual OUString get_item_label(const OUString& rIdent) const override;
1404
1405 virtual void set_item_label(const OUString& rIdent, const OUString& rLabel) override;
1406
1407 virtual void set_item_icon_name(const OUString& rIdent, const OUString& rIconName) override;
1408
1409 virtual void set_item_image_mirrored(const OUString& rIdent, bool bMirrored) override;
1410
1411 virtual void set_item_image(const OUString& rIdent,
1412 const css::uno::Reference<css::graphic::XGraphic>& rIcon) override;
1413
1414 virtual void set_item_image(const OUString& rIdent, VirtualDevice* pDevice) override;
1415
1416 virtual void set_item_image(int nIndex,
1417 const css::uno::Reference<css::graphic::XGraphic>& rIcon) override;
1418
1419 virtual void set_item_tooltip_text(int nIndex, const OUString& rTip) override;
1420
1421 virtual void set_item_tooltip_text(const OUString& rIdent, const OUString& rTip) override;
1422
1423 virtual OUString get_item_tooltip_text(const OUString& rIdent) const override;
1424
1425 virtual vcl::ImageType get_icon_size() const override;
1426
1427 virtual void set_icon_size(vcl::ImageType eType) override;
1428
1429 virtual sal_uInt16 get_modifier_state() const override;
1430
1431 virtual int get_drop_index(const Point& rPoint) const override;
1432
1433 virtual ~SalInstanceToolbar() override;
1434};
1435
1437{
1438private:
1441
1442 DECL_LINK(ChangeHdl, Edit&, void);
1443 DECL_LINK(VscrollHdl, ScrollBar*, void);
1444 DECL_LINK(CursorListener, VclWindowEvent&, void);
1445
1446public:
1448 bool bTakeOwnership);
1449
1450 virtual void set_text(const OUString& rText) override;
1451
1452 virtual void replace_selection(const OUString& rText) override;
1453
1454 virtual OUString get_text() const override;
1455
1456 bool get_selection_bounds(int& rStartPos, int& rEndPos) override;
1457
1458 virtual void select_region(int nStartPos, int nEndPos) override;
1459
1460 virtual void set_editable(bool bEditable) override;
1461 virtual bool get_editable() const override;
1462 virtual void set_max_length(int nChars) override;
1463
1464 virtual void set_monospace(bool bMonospace) override;
1465
1466 virtual void set_font(const vcl::Font& rFont) override;
1467
1468 virtual void set_font_color(const Color& rColor) override;
1469
1470 virtual void connect_cursor_position(const Link<TextView&, void>& rLink) override;
1471
1472 virtual bool can_move_cursor_with_up() const override;
1473
1474 virtual bool can_move_cursor_with_down() const override;
1475
1476 virtual void cut_clipboard() override;
1477
1478 virtual void copy_clipboard() override;
1479
1480 virtual void paste_clipboard() override;
1481
1482 virtual void set_alignment(TxtAlign eXAlign) override;
1483
1484 virtual int vadjustment_get_value() const override;
1485
1486 virtual void vadjustment_set_value(int value) override;
1487
1488 virtual int vadjustment_get_upper() const override;
1489
1490 virtual int vadjustment_get_lower() const override;
1491
1492 virtual int vadjustment_get_page_size() const override;
1493
1494 virtual bool has_focus() const override;
1495
1496 virtual ~SalInstanceTextView() override;
1497};
1498
1500{
1502 : iter(pOrig ? pOrig->iter : nullptr)
1503 {
1504 }
1506 : iter(pIter)
1507 {
1508 }
1509 virtual bool equal(const TreeIter& rOther) const override
1510 {
1511 return iter == static_cast<const SalInstanceTreeIter&>(rOther).iter;
1512 }
1514};
1515
1517{
1518protected:
1519 // owner for UserData
1520 std::vector<std::unique_ptr<OUString>> m_aUserData;
1524 // currently expanding parent that logically, but not currently physically,
1525 // contain placeholders
1527 // which columns should be custom rendered
1531
1532 DECL_LINK(SelectHdl, SvTreeListBox*, void);
1533 DECL_LINK(DeSelectHdl, SvTreeListBox*, void);
1534 DECL_LINK(DoubleClickHdl, SvTreeListBox*, bool);
1535 DECL_LINK(ExpandingHdl, SvTreeListBox*, bool);
1536 DECL_LINK(EndDragHdl, HeaderBar*, void);
1537 DECL_LINK(HeaderBarClickedHdl, HeaderBar*, void);
1538 DECL_LINK(ToggleHdl, SvLBoxButtonData*, void);
1539 DECL_LINK(ModelChangedHdl, SvTreeListBox*, void);
1540 DECL_LINK(StartDragHdl, SvTreeListBox*, bool);
1542 DECL_LINK(EditingEntryHdl, SvTreeListEntry*, bool);
1543 typedef std::pair<SvTreeListEntry*, OUString> IterString;
1544 DECL_LINK(EditedEntryHdl, IterString, bool);
1545 DECL_LINK(VisibleRangeChangedHdl, SvTreeListBox*, void);
1546 DECL_LINK(CompareHdl, const SvSortData&, sal_Int32);
1547 DECL_LINK(PopupMenuHdl, const CommandEvent&, bool);
1548 DECL_LINK(TooltipHdl, SvTreeListEntry*, OUString);
1549 DECL_LINK(CustomRenderHdl, svtree_render_args, void);
1551
1552 bool ExpandRow(const SalInstanceTreeIter& rIter);
1553
1554 // Each row has a cell for the expander image, (and an optional cell for a
1555 // checkbutton if enable_toggle_buttons has been called) which precede
1556 // index 0
1557 int to_internal_model(int col) const;
1558
1559 int to_external_model(int col) const;
1560
1561 bool IsDummyEntry(SvTreeListEntry* pEntry) const;
1562
1564
1565 static void set_font_color(SvTreeListEntry* pEntry, const Color& rColor);
1566
1567 void AddStringItem(SvTreeListEntry* pEntry, const OUString& rStr, int nCol);
1568
1569 void do_insert(const weld::TreeIter* pParent, int pos, const OUString* pStr,
1570 const OUString* pId, const OUString* pIconName,
1571 const VirtualDevice* pImageSurface, bool bChildrenOnDemand, weld::TreeIter* pRet,
1572 bool bIsSeparator);
1573
1575
1577
1578 void do_set_toggle(SvTreeListEntry* pEntry, TriState eState, int col);
1579
1580 static TriState do_get_toggle(SvTreeListEntry* pEntry, int col);
1581 static bool do_get_sensitive(SvTreeListEntry* pEntry, int col);
1582
1583 TriState get_toggle(SvTreeListEntry* pEntry, int col) const;
1584
1585 void set_toggle(SvTreeListEntry* pEntry, TriState eState, int col);
1586
1587 bool get_text_emphasis(SvTreeListEntry* pEntry, int col) const;
1588
1589 void set_header_item_width(const std::vector<int>& rWidths);
1590
1591public:
1592 SalInstanceTreeView(SvTabListBox* pTreeView, SalInstanceBuilder* pBuilder, bool bTakeOwnership);
1593
1594 virtual void connect_query_tooltip(const Link<const weld::TreeIter&, OUString>& rLink) override;
1595
1596 virtual void columns_autosize() override;
1597
1598 virtual void freeze() override;
1599
1600 virtual void thaw() override;
1601
1602 virtual void set_column_fixed_widths(const std::vector<int>& rWidths) override;
1603
1604 virtual void set_column_editables(const std::vector<bool>& rEditables) override;
1605
1606 virtual void set_centered_column(int nCol) override;
1607
1608 virtual int get_column_width(int nColumn) const override;
1609
1610 virtual OUString get_column_title(int nColumn) const override;
1611
1612 virtual void set_column_title(int nColumn, const OUString& rTitle) override;
1613
1614 virtual void set_column_custom_renderer(int nColumn, bool bEnable) override;
1615
1616 virtual void queue_draw() override;
1617
1618 virtual void show() override;
1619
1620 virtual void hide() override;
1621
1622 virtual void insert(const weld::TreeIter* pParent, int pos, const OUString* pStr,
1623 const OUString* pId, const OUString* pIconName,
1624 VirtualDevice* pImageSurface, bool bChildrenOnDemand,
1625 weld::TreeIter* pRet) override;
1626
1627 virtual void insert_separator(int pos, const OUString& /*rId*/) override;
1628
1629 virtual void
1630 bulk_insert_for_each(int nSourceCount,
1631 const std::function<void(weld::TreeIter&, int nSourceIndex)>& func,
1632 const weld::TreeIter* pParent = nullptr,
1633 const std::vector<int>* pFixedWidths = nullptr) override;
1634
1635 virtual void set_font_color(int pos, const Color& rColor) override;
1636
1637 virtual void set_font_color(const weld::TreeIter& rIter, const Color& rColor) override;
1638
1639 virtual void remove(int pos) override;
1640
1641 virtual int find_text(const OUString& rText) const override;
1642
1643 virtual int find_id(const OUString& rId) const override;
1644
1645 virtual void swap(int pos1, int pos2) override;
1646
1647 virtual void clear() override;
1648
1649 virtual int n_children() const override;
1650
1651 virtual int iter_n_children(const weld::TreeIter& rIter) const override;
1652
1653 virtual void select(int pos) override;
1654
1655 virtual int get_cursor_index() const override;
1656
1657 virtual void set_cursor(int pos) override;
1658
1659 virtual void scroll_to_row(int pos) override;
1660
1661 virtual bool is_selected(int pos) const override;
1662
1663 virtual void unselect(int pos) override;
1664
1665 virtual std::vector<int> get_selected_rows() const override;
1666
1667 OUString get_text(SvTreeListEntry* pEntry, int col) const;
1668
1669 virtual OUString get_text(int pos, int col = -1) const override;
1670
1671 void set_text(SvTreeListEntry* pEntry, const OUString& rText, int col);
1672
1673 virtual void set_text(int pos, const OUString& rText, int col = -1) override;
1674
1677
1678 void set_sensitive(SvTreeListEntry* pEntry, bool bSensitive, int col);
1679 bool get_sensitive(SvTreeListEntry* pEntry, int col) const;
1680
1681 virtual void set_sensitive(int pos, bool bSensitive, int col = -1) override;
1682
1683 virtual void set_sensitive(const weld::TreeIter& rIter, bool bSensitive, int col = -1) override;
1684
1685 virtual bool get_sensitive(int pos, int col) const override;
1686
1687 virtual bool get_sensitive(const weld::TreeIter& rIter, int col) const override;
1688
1689 virtual TriState get_toggle(int pos, int col = -1) const override;
1690
1691 virtual TriState get_toggle(const weld::TreeIter& rIter, int col = -1) const override;
1692
1693 virtual void enable_toggle_buttons(weld::ColumnToggleType eType) override;
1694
1695 virtual void set_toggle(int pos, TriState eState, int col = -1) override;
1696
1697 virtual void set_toggle(const weld::TreeIter& rIter, TriState eState, int col = -1) override;
1698
1699 virtual void set_clicks_to_toggle(int nToggleBehavior) override;
1700
1701 virtual void set_extra_row_indent(const weld::TreeIter& rIter, int nIndentLevel) override;
1702
1703 void set_text_emphasis(SvTreeListEntry* pEntry, bool bOn, int col = -1);
1704
1705 virtual void set_text_emphasis(const weld::TreeIter& rIter, bool bOn, int col) override;
1706
1707 virtual void set_text_emphasis(int pos, bool bOn, int col) override;
1708
1709 virtual bool get_text_emphasis(const weld::TreeIter& rIter, int col) const override;
1710
1711 virtual bool get_text_emphasis(int pos, int col) const override;
1712
1713 void set_text_align(SvTreeListEntry* pEntry, double fAlign, int col);
1714
1715 virtual void set_text_align(const weld::TreeIter& rIter, double fAlign, int col) override;
1716
1717 virtual void set_text_align(int pos, double fAlign, int col) override;
1718
1719 virtual void connect_editing(const Link<const weld::TreeIter&, bool>& rStartLink,
1720 const Link<const iter_string&, bool>& rEndLink) override;
1721
1722 virtual void start_editing(const weld::TreeIter& rIter) override;
1723
1724 virtual void end_editing() override;
1725
1726 void set_image(SvTreeListEntry* pEntry, const Image& rImage, int col);
1727
1728 virtual void set_image(int pos, const OUString& rImage, int col = -1) override;
1729
1730 virtual void set_image(int pos, const css::uno::Reference<css::graphic::XGraphic>& rImage,
1731 int col = -1) override;
1732
1733 virtual void set_image(int pos, VirtualDevice& rImage, int col = -1) override;
1734
1735 virtual void set_image(const weld::TreeIter& rIter, const OUString& rImage,
1736 int col = -1) override;
1737
1738 virtual void set_image(const weld::TreeIter& rIter,
1739 const css::uno::Reference<css::graphic::XGraphic>& rImage,
1740 int col = -1) override;
1741
1742 virtual void set_image(const weld::TreeIter& rIter, VirtualDevice& rImage,
1743 int col = -1) override;
1744
1745 const OUString* getEntryData(int index) const;
1746
1747 virtual OUString get_id(int pos) const override;
1748
1749 void set_id(SvTreeListEntry* pEntry, const OUString& rId);
1750
1751 virtual void set_id(int pos, const OUString& rId) override;
1752
1753 virtual int get_selected_index() const override;
1754
1755 virtual OUString get_selected_text() const override;
1756
1757 virtual OUString get_selected_id() const override;
1758
1759 virtual std::unique_ptr<weld::TreeIter> make_iterator(const weld::TreeIter* pOrig
1760 = nullptr) const override;
1761
1762 virtual void copy_iterator(const weld::TreeIter& rSource, weld::TreeIter& rDest) const override;
1763
1764 virtual bool get_selected(weld::TreeIter* pIter) const override;
1765
1766 virtual bool get_cursor(weld::TreeIter* pIter) const override;
1767
1768 virtual void set_cursor(const weld::TreeIter& rIter) override;
1769
1770 virtual bool get_iter_first(weld::TreeIter& rIter) const override;
1771
1772 virtual bool get_iter_abs_pos(weld::TreeIter& rIter, int nPos) const;
1773
1774 virtual bool iter_next_sibling(weld::TreeIter& rIter) const override;
1775
1776 virtual bool iter_previous_sibling(weld::TreeIter& rIter) const override;
1777
1778 virtual bool iter_next(weld::TreeIter& rIter) const override;
1779
1780 virtual bool iter_previous(weld::TreeIter& rIter) const override;
1781
1782 virtual bool iter_children(weld::TreeIter& rIter) const override;
1783
1784 virtual bool iter_parent(weld::TreeIter& rIter) const override;
1785
1786 virtual void remove(const weld::TreeIter& rIter) override;
1787
1788 virtual void select(const weld::TreeIter& rIter) override;
1789
1790 virtual void scroll_to_row(const weld::TreeIter& rIter) override;
1791
1792 virtual void unselect(const weld::TreeIter& rIter) override;
1793
1794 virtual int get_iter_depth(const weld::TreeIter& rIter) const override;
1795
1796 virtual bool iter_has_child(const weld::TreeIter& rIter) const override;
1797
1798 virtual bool get_row_expanded(const weld::TreeIter& rIter) const override;
1799
1800 virtual bool get_children_on_demand(const weld::TreeIter& rIter) const override;
1801
1802 virtual void set_children_on_demand(const weld::TreeIter& rIter,
1803 bool bChildrenOnDemand) override;
1804
1805 virtual void expand_row(const weld::TreeIter& rIter) override;
1806
1807 virtual void collapse_row(const weld::TreeIter& rIter) override;
1808
1809 virtual OUString get_text(const weld::TreeIter& rIter, int col = -1) const override;
1810
1811 virtual void set_text(const weld::TreeIter& rIter, const OUString& rText,
1812 int col = -1) override;
1813
1814 virtual OUString get_id(const weld::TreeIter& rIter) const override;
1815
1816 virtual void set_id(const weld::TreeIter& rIter, const OUString& rId) override;
1817
1819 sal_uInt8 eDNDConstants) override;
1820
1821 virtual void set_selection_mode(SelectionMode eMode) override;
1822
1823 virtual void all_foreach(const std::function<bool(weld::TreeIter&)>& func) override;
1824
1825 virtual void selected_foreach(const std::function<bool(weld::TreeIter&)>& func) override;
1826
1827 virtual void visible_foreach(const std::function<bool(weld::TreeIter&)>& func) override;
1828
1829 virtual void connect_visible_range_changed(const Link<weld::TreeView&, void>& rLink) override;
1830
1831 virtual void remove_selection() override;
1832
1833 virtual bool is_selected(const weld::TreeIter& rIter) const override;
1834
1835 virtual int get_iter_index_in_parent(const weld::TreeIter& rIter) const override;
1836
1837 virtual int iter_compare(const weld::TreeIter& a, const weld::TreeIter& b) const override;
1838
1839 virtual void move_subtree(weld::TreeIter& rNode, const weld::TreeIter* pNewParent,
1840 int nIndexInNewParent) override;
1841
1842 virtual int count_selected_rows() const override;
1843
1844 virtual int get_height_rows(int nRows) const override;
1845
1846 virtual void make_sorted() override;
1847
1848 virtual void set_sort_func(
1849 const std::function<int(const weld::TreeIter&, const weld::TreeIter&)>& func) override;
1850
1851 virtual void make_unsorted() override;
1852
1853 virtual void set_sort_order(bool bAscending) override;
1854
1855 virtual bool get_sort_order() const override;
1856
1857 virtual void set_sort_indicator(TriState eState, int col) override;
1858
1859 virtual TriState get_sort_indicator(int col) const override;
1860
1861 virtual int get_sort_column() const override;
1862
1863 virtual void set_sort_column(int nColumn) override;
1864
1866
1867 virtual bool get_dest_row_at_pos(const Point& rPos, weld::TreeIter* pResult, bool bDnDMode,
1868 bool bAutoScroll = true) override;
1869
1870 virtual void unset_drag_dest_row() override;
1871
1872 virtual tools::Rectangle get_row_area(const weld::TreeIter& rIter) const override;
1873
1874 virtual TreeView* get_drag_source() const override;
1875
1876 virtual int vadjustment_get_value() const override;
1877
1878 virtual void vadjustment_set_value(int nValue) override;
1879
1880 virtual void set_show_expanders(bool bShow) override;
1881
1882 virtual bool changed_by_hover() const override;
1883
1884 virtual ~SalInstanceTreeView() override;
1885};
1886
1888{
1889private:
1891
1892 DECL_LINK(ExpandedHdl, VclExpander&, void);
1893
1894public:
1895 SalInstanceExpander(VclExpander* pExpander, SalInstanceBuilder* pBuilder, bool bTakeOwnership);
1896
1897 virtual void set_label(const OUString& rText) override;
1898
1899 virtual OUString get_label() const override;
1900
1901 virtual bool get_expanded() const override;
1902
1903 virtual void set_expanded(bool bExpand) override;
1904
1905 virtual bool has_focus() const override;
1906
1907 virtual void grab_focus() override;
1908
1909 virtual ~SalInstanceExpander() override;
1910};
1911
1913{
1914private:
1915 // owner for UserData
1916 std::vector<std::unique_ptr<OUString>> m_aUserData;
1918
1919 DECL_LINK(SelectHdl, SvTreeListBox*, void);
1920 DECL_LINK(DeSelectHdl, SvTreeListBox*, void);
1921 DECL_LINK(DoubleClickHdl, SvTreeListBox*, bool);
1922 DECL_LINK(CommandHdl, const CommandEvent&, bool);
1923 DECL_LINK(TooltipHdl, SvTreeListEntry*, OUString);
1924 DECL_LINK(EntryAccessibleDescriptionHdl, SvTreeListEntry*, OUString);
1925 DECL_LINK(DumpElemToPropertyTreeHdl, const ::IconView::json_prop_query&, bool);
1926
1927public:
1928 SalInstanceIconView(::IconView* pIconView, SalInstanceBuilder* pBuilder, bool bTakeOwnership);
1929
1930 virtual int get_item_width() const override;
1931 virtual void set_item_width(int width) override;
1932
1933 virtual void freeze() override;
1934
1935 virtual void thaw() override;
1936
1937 virtual void insert(int pos, const OUString* pStr, const OUString* pId,
1938 const OUString* pIconName, weld::TreeIter* pRet) override;
1939
1940 virtual void insert(int pos, const OUString* pStr, const OUString* pId,
1941 const VirtualDevice* pIcon, weld::TreeIter* pRet) override;
1942
1943 virtual void insert_separator(int pos, const OUString* pId) override;
1944
1945 virtual void connect_query_tooltip(const Link<const weld::TreeIter&, OUString>& rLink) override;
1946
1947 virtual void
1949
1950 virtual OUString get_selected_id() const override;
1951
1952 virtual OUString get_selected_text() const override;
1953
1954 virtual int count_selected_items() const override;
1955
1956 virtual void select(int pos) override;
1957
1958 virtual void unselect(int pos) override;
1959
1960 virtual int n_children() const override;
1961
1962 virtual std::unique_ptr<weld::TreeIter> make_iterator(const weld::TreeIter* pOrig
1963 = nullptr) const override;
1964
1965 virtual bool get_selected(weld::TreeIter* pIter) const override;
1966
1967 virtual bool get_cursor(weld::TreeIter* pIter) const override;
1968
1969 virtual void set_cursor(const weld::TreeIter& rIter) override;
1970
1971 virtual bool get_iter_first(weld::TreeIter& rIter) const override;
1972
1973 virtual void scroll_to_item(const weld::TreeIter& rIter) override;
1974
1975 virtual void selected_foreach(const std::function<bool(weld::TreeIter&)>& func) override;
1976
1977 virtual OUString get_id(const weld::TreeIter& rIter) const override;
1978
1979 virtual OUString get_text(const weld::TreeIter& rIter) const override;
1980
1981 virtual void clear() override;
1982
1983 virtual ~SalInstanceIconView() override;
1984};
1985
1987{
1988private:
1990
1991 DECL_LINK(ToggleHdl, ::RadioButton&, void);
1992
1993public:
1995 bool bTakeOwnership);
1996
1997 virtual void set_active(bool active) override;
1998
1999 virtual bool get_active() const override;
2000
2001 virtual void set_image(VirtualDevice* pDevice) override;
2002
2003 virtual void set_image(const css::uno::Reference<css::graphic::XGraphic>& rImage) override;
2004
2005 virtual void set_from_icon_name(const OUString& rIconName) override;
2006
2007 virtual void set_inconsistent(bool /*inconsistent*/) override;
2008
2009 virtual bool get_inconsistent() const override;
2010
2011 virtual void set_label(const OUString& rText) override { SalInstanceButton::set_label(rText); }
2012
2013 virtual OUString get_label() const override { return SalInstanceButton::get_label(); }
2014
2015 virtual void set_label_wrap(bool wrap) override;
2016
2017 virtual ~SalInstanceRadioButton() override;
2018};
2019
2021{
2022private:
2024
2025public:
2026 SalInstanceFrame(VclFrame* pFrame, SalInstanceBuilder* pBuilder, bool bTakeOwnership);
2027
2028 virtual void set_label(const OUString& rText) override;
2029
2030 virtual OUString get_label() const override;
2031
2032 virtual std::unique_ptr<weld::Label> weld_label_widget() const override;
2033};
2034
2036{
2037protected:
2039 sal_uInt16 m_nLastId;
2040
2041 DECL_LINK(MenuSelectHdl, ::MenuButton*, void);
2042 DECL_LINK(ActivateHdl, ::MenuButton*, void);
2043
2044public:
2045 SalInstanceMenuButton(::MenuButton* pButton, SalInstanceBuilder* pBuilder, bool bTakeOwnership);
2046
2047 virtual void set_active(bool active) override;
2048
2049 virtual bool get_active() const override;
2050
2051 virtual void set_inconsistent(bool /*inconsistent*/) override;
2052
2053 virtual bool get_inconsistent() const override;
2054
2055 virtual void insert_item(int pos, const OUString& rId, const OUString& rStr,
2056 const OUString* pIconName, VirtualDevice* pImageSurface,
2057 TriState eCheckRadioFalse) override;
2058
2059 virtual void insert_separator(int pos, const OUString& rId) override;
2060
2061 virtual void set_item_sensitive(const OUString& rIdent, bool bSensitive) override;
2062
2063 virtual void remove_item(const OUString& rId) override;
2064
2065 virtual void clear() override;
2066
2067 virtual void set_item_active(const OUString& rIdent, bool bActive) override;
2068
2069 virtual void set_item_label(const OUString& rIdent, const OUString& rText) override;
2070
2071 virtual OUString get_item_label(const OUString& rIdent) const override;
2072
2073 virtual void set_item_visible(const OUString& rIdent, bool bShow) override;
2074
2075 virtual void set_popover(weld::Widget* pPopover) override;
2076
2077 virtual ~SalInstanceMenuButton() override;
2078};
2079
2081{
2082private:
2084
2085 DECL_LINK(PopupModeEndHdl, FloatingWindow*, void);
2086
2087 void ImplPopDown();
2088
2089public:
2090 SalInstancePopover(DockingWindow* pPopover, SalInstanceBuilder* pBuilder, bool bTakeOwnership);
2091
2093
2094 virtual void popup_at_rect(weld::Widget* pParent, const tools::Rectangle& rRect,
2095 weld::Placement ePlace = weld::Placement::Under) override;
2096
2097 virtual void popdown() override;
2098
2099 virtual void resize_to_request() override;
2100};
2101
2102class SalInstanceBox : public SalInstanceContainer, public virtual weld::Box
2103{
2104private:
2106
2107public:
2108 SalInstanceBox(VclBox* pContainer, SalInstanceBuilder* pBuilder, bool bTakeOwnership);
2109 virtual void reorder_child(weld::Widget* pWidget, int nNewPosition) override;
2110 virtual void sort_native_button_order() override;
2111};
2112
2113class SalInstanceImage : public SalInstanceWidget, public virtual weld::Image
2114{
2115private:
2117
2118public:
2119 SalInstanceImage(FixedImage* pImage, SalInstanceBuilder* pBuilder, bool bTakeOwnership);
2120
2121 virtual void set_from_icon_name(const OUString& rIconName) override;
2122
2123 virtual void set_image(VirtualDevice* pDevice) override;
2124
2125 virtual void set_image(const css::uno::Reference<css::graphic::XGraphic>& rImage) override;
2126};
2127
2129{
2130private:
2135
2136 DECL_LINK(VscrollHdl, ScrollBar*, void);
2137 DECL_LINK(HscrollHdl, ScrollBar*, void);
2138
2139 static void customize_scrollbars(ScrollBar& rScrollBar, const Color& rButtonTextColor,
2140 const Color& rBackgroundColor, const Color& rShadowColor,
2141 const Color& rFaceColor);
2142
2143public:
2145 bool bTakeOwnership, bool bUserManagedScrolling);
2146
2147 virtual void hadjustment_configure(int value, int lower, int upper, int step_increment,
2148 int page_increment, int page_size) override;
2149 virtual int hadjustment_get_value() const override;
2150 virtual void hadjustment_set_value(int value) override;
2151 virtual int hadjustment_get_upper() const override;
2152 virtual void hadjustment_set_upper(int upper) override;
2153 virtual int hadjustment_get_page_size() const override;
2154 virtual void hadjustment_set_page_size(int size) override;
2155 virtual void hadjustment_set_page_increment(int size) override;
2156 virtual void hadjustment_set_step_increment(int size) override;
2157 virtual void set_hpolicy(VclPolicyType eHPolicy) override;
2158 virtual VclPolicyType get_hpolicy() const override;
2159
2160 virtual void vadjustment_configure(int value, int lower, int upper, int step_increment,
2161 int page_increment, int page_size) override;
2162 virtual int vadjustment_get_value() const override;
2163 virtual void vadjustment_set_value(int value) override;
2164 virtual int vadjustment_get_upper() const override;
2165 virtual void vadjustment_set_upper(int upper) override;
2166 virtual int vadjustment_get_lower() const override;
2167 virtual void vadjustment_set_lower(int lower) override;
2168 virtual int vadjustment_get_page_size() const override;
2169 virtual void vadjustment_set_page_size(int size) override;
2170 virtual void vadjustment_set_page_increment(int size) override;
2171 virtual void vadjustment_set_step_increment(int size) override;
2172
2173 virtual void set_vpolicy(VclPolicyType eVPolicy) override;
2174 virtual VclPolicyType get_vpolicy() const override;
2175 virtual int get_scroll_thickness() const override;
2176 virtual void set_scroll_thickness(int nThickness) override;
2177 virtual void customize_scrollbars(const Color& rBackgroundColor, const Color& rShadowColor,
2178 const Color& rFaceColor) override;
2179 virtual ~SalInstanceScrolledWindow() override;
2180};
2181
2183{
2184private:
2186
2187 DECL_LINK(SelectHdl, ::Calendar*, void);
2188 DECL_LINK(ActivateHdl, ::Calendar*, void);
2189
2190public:
2191 SalInstanceCalendar(::Calendar* pCalendar, SalInstanceBuilder* pBuilder, bool bTakeOwnership)
2192 : SalInstanceWidget(pCalendar, pBuilder, bTakeOwnership)
2193 , m_xCalendar(pCalendar)
2194 {
2195 m_xCalendar->SetSelectHdl(LINK(this, SalInstanceCalendar, SelectHdl));
2196 m_xCalendar->SetActivateHdl(LINK(this, SalInstanceCalendar, ActivateHdl));
2197 }
2198
2199 virtual void set_date(const Date& rDate) override { m_xCalendar->SetCurDate(rDate); }
2200
2201 virtual Date get_date() const override { return m_xCalendar->GetFirstSelectedDate(); }
2202
2203 virtual ~SalInstanceCalendar() override
2204 {
2205 m_xCalendar->SetSelectHdl(Link<::Calendar*, void>());
2206 m_xCalendar->SetActivateHdl(Link<::Calendar*, void>());
2207 }
2208};
2209
2211 public virtual weld::FormattedSpinButton
2212{
2213private:
2217
2218 DECL_LINK(UpDownHdl, SpinField&, void);
2219 DECL_LINK(LoseFocusHdl, Control&, void);
2220
2221public:
2223 bool bTakeOwnership);
2224
2225 virtual void set_text(const OUString& rText) override;
2226
2227 virtual void connect_changed(const Link<weld::Entry&, void>& rLink) override;
2228
2229 virtual void connect_focus_out(const Link<weld::Widget&, void>& rLink) override;
2230
2231 virtual void SetFormatter(weld::EntryFormatter* pFormatter) override;
2232
2233 virtual void sync_value_from_formatter() override
2234 {
2235 // no-op for gen
2236 }
2237
2238 virtual void sync_range_from_formatter() override
2239 {
2240 // no-op for gen
2241 }
2242
2243 virtual void sync_increments_from_formatter() override
2244 {
2245 // no-op for gen
2246 }
2247
2248 virtual Formatter& GetFormatter() override;
2249
2250 virtual ~SalInstanceFormattedSpinButton() override;
2251};
2252
2253/* vim:set shiftwidth=4 softtabstop=4 expandtab cinoptions=b1,g0,N-s cinkeys+=0=break: */
static OutputDevice * GetDefaultDevice()
Get the default "device" (in this case the default window).
Definition: svapp.cxx:1043
static const AllSettings & GetSettings()
Gets the application's settings.
Definition: svapp.cxx:638
A widget used to choose from a list of items and which has an entry.
Definition: combobox.hxx:39
Definition: ctrl.hxx:80
Definition: edit.hxx:56
An idle is a timer to be scheduled immediately.
Definition: idle.hxx:35
Definition: image.hxx:40
A widget used to choose from a list of items and which has no entry.
Definition: lstbox.hxx:83
Definition: menu.hxx:116
Some things multiple-inherit from VclAbstractDialog and OutputDevice, so we need to use virtual inher...
Definition: outdev.hxx:170
float GetDPIScaleFactor() const
Definition: outdev.hxx:396
void Check(bool bCheck=true)
Definition: button.hxx:227
void setToggleButton(bool bIsToggleButton)
Definition: button.hxx:185
void SetState(TriState eState)
Definition: button.cxx:1653
TriState GetState() const
Definition: button.hxx:155
bool IsChecked() const
Definition: button.hxx:232
DECL_LINK(UpdateRoadmap_Hdl, Timer *, void)
virtual OUString get_page_title(const OUString &rIdent) const override
int find_id(int nId) const
VclPtr< vcl::RoadmapWizard > m_xWizard
Definition: salvtables.hxx:561
virtual void set_page_side_image(const OUString &rImage) override
virtual OUString get_page_ident(int nPage) const override
virtual ~SalInstanceAssistant() override
virtual OUString get_current_page_ident() const override
virtual weld::Container * append_page(const OUString &rIdent) override
virtual void set_current_page(int nPage) override
virtual void set_page_sensitive(const OUString &rIdent, bool bSensitive) override
std::vector< VclPtr< TabPage > > m_aAddedPages
Definition: salvtables.hxx:565
std::vector< std::unique_ptr< SalInstanceContainer > > m_aPages
Definition: salvtables.hxx:564
virtual void set_page_index(const OUString &rIdent, int nNewIndex) override
int find_page(std::u16string_view rIdent) const
std::vector< int > m_aIds
Definition: salvtables.hxx:566
DECL_LINK(OnRoadmapItemSelected, LinkParamNone *, void)
virtual void set_page_side_help_id(const OUString &rHelpId) override
std::vector< VclPtr< VclGrid > > m_aAddedGrids
Definition: salvtables.hxx:567
virtual void set_page_title(const OUString &rIdent, const OUString &rTitle) override
weld::Button * weld_widget_for_response(int nResponse) override
SalInstanceAssistant(vcl::RoadmapWizard *pDialog, SalInstanceBuilder *pBuilder, bool bTakeOwnership)
virtual int get_n_pages() const override
virtual int get_current_page() const override
virtual void reorder_child(weld::Widget *pWidget, int nNewPosition) override
SalInstanceBox(VclBox *pContainer, SalInstanceBuilder *pBuilder, bool bTakeOwnership)
VclPtr< VclBox > m_xBox
virtual void sort_native_button_order() override
virtual std::unique_ptr< weld::Dialog > weld_dialog(const OUString &id) override
virtual std::unique_ptr< weld::Image > weld_image(const OUString &id) override
virtual std::unique_ptr< weld::Toolbar > weld_toolbar(const OUString &id) override
virtual std::unique_ptr< weld::RadioButton > weld_radio_button(const OUString &id) override
virtual std::unique_ptr< weld::Popover > weld_popover(const OUString &id) override
virtual std::unique_ptr< weld::Expander > weld_expander(const OUString &id) override
virtual std::unique_ptr< weld::Scale > weld_scale(const OUString &id) override
virtual std::unique_ptr< weld::Paned > weld_paned(const OUString &id) override
virtual std::unique_ptr< weld::MetricSpinButton > weld_metric_spin_button(const OUString &id, FieldUnit eUnit) override
virtual std::unique_ptr< weld::ProgressBar > weld_progress_bar(const OUString &id) override
virtual std::unique_ptr< weld::Assistant > weld_assistant(const OUString &id) override
virtual std::unique_ptr< weld::LinkButton > weld_link_button(const OUString &id) override
virtual std::unique_ptr< weld::Widget > weld_widget(const OUString &id) override
SalInstanceBuilder(vcl::Window *pParent, const OUString &rUIRoot, const OUString &rUIFile, const css::uno::Reference< css::frame::XFrame > &rFrame=css::uno::Reference< css::frame::XFrame >())
virtual std::unique_ptr< weld::Container > weld_container(const OUString &id) override
virtual std::unique_ptr< weld::Button > weld_button(const OUString &id) override
virtual std::unique_ptr< weld::ToggleButton > weld_toggle_button(const OUString &id) override
virtual std::unique_ptr< weld::DrawingArea > weld_drawing_area(const OUString &id, const a11yref &rA11yImpl=nullptr, FactoryFunction pUITestFactoryFunction=nullptr, void *pUserData=nullptr) override
virtual std::unique_ptr< weld::MenuToggleButton > weld_menu_toggle_button(const OUString &id) override
virtual std::unique_ptr< weld::Scrollbar > weld_scrollbar(const OUString &id) override
virtual std::unique_ptr< weld::ScrolledWindow > weld_scrolled_window(const OUString &id, bool bUserManagedScrolling=false) override
virtual std::unique_ptr< weld::TreeView > weld_tree_view(const OUString &id) override
virtual ~SalInstanceBuilder() override
virtual std::unique_ptr< weld::Label > weld_label(const OUString &id) override
OUString get_current_page_help_id() const
virtual std::unique_ptr< weld::FormattedSpinButton > weld_formatted_spin_button(const OUString &id) override
VclPtr< vcl::Window > m_aOwnedToplevel
Definition: salvtables.hxx:44
virtual std::unique_ptr< weld::Frame > weld_frame(const OUString &id) override
virtual std::unique_ptr< weld::TextView > weld_text_view(const OUString &id) override
virtual std::unique_ptr< weld::EntryTreeView > weld_entry_tree_view(const OUString &containerid, const OUString &entryid, const OUString &treeviewid) override
virtual std::unique_ptr< weld::IconView > weld_icon_view(const OUString &id) override
virtual std::unique_ptr< weld::SpinButton > weld_spin_button(const OUString &id) override
virtual std::unique_ptr< weld::CheckButton > weld_check_button(const OUString &id) override
virtual std::unique_ptr< weld::Spinner > weld_spinner(const OUString &id) override
virtual std::unique_ptr< weld::Notebook > weld_notebook(const OUString &id) override
virtual std::unique_ptr< weld::Entry > weld_entry(const OUString &id) override
std::unique_ptr< VclBuilder > m_xBuilder
Definition: salvtables.hxx:43
virtual std::unique_ptr< weld::SizeGroup > create_size_group() override
virtual std::unique_ptr< weld::Calendar > weld_calendar(const OUString &id) override
virtual std::unique_ptr< weld::Menu > weld_menu(const OUString &id) override
virtual std::unique_ptr< weld::MessageDialog > weld_message_dialog(const OUString &id) override
virtual std::unique_ptr< weld::Window > create_screenshot_window() override
virtual std::unique_ptr< weld::MenuButton > weld_menu_button(const OUString &id) override
virtual std::unique_ptr< weld::ComboBox > weld_combo_box(const OUString &id) override
virtual std::unique_ptr< weld::Box > weld_box(const OUString &id) override
virtual void set_custom_button(VirtualDevice *pDevice) override
virtual void set_label(const OUString &rText) override
virtual void set_image(VirtualDevice *pDevice) override
virtual OUString get_label() const override
virtual void set_font(const vcl::Font &rFont) override
virtual ~SalInstanceButton() override
virtual void set_from_icon_name(const OUString &rIconName) override
SalInstanceButton(::Button *pButton, SalInstanceBuilder *pBuilder, bool bTakeOwnership)
VclPtr<::Button > m_xButton
Link<::Button *, void > const m_aOldClickHdl
DECL_LINK(ClickHdl, ::Button *, void)
virtual Date get_date() const override
VclPtr<::Calendar > m_xCalendar
virtual void set_date(const Date &rDate) override
virtual ~SalInstanceCalendar() override
DECL_LINK(SelectHdl, ::Calendar *, void)
SalInstanceCalendar(::Calendar *pCalendar, SalInstanceBuilder *pBuilder, bool bTakeOwnership)
DECL_LINK(ActivateHdl, ::Calendar *, void)
virtual void set_inconsistent(bool inconsistent) override
virtual bool get_active() const override
DECL_LINK(ToggleHdl, CheckBox &, void)
virtual void set_label(const OUString &rText) override
virtual void set_active(bool active) override
SalInstanceCheckButton(CheckBox *pButton, SalInstanceBuilder *pBuilder, bool bTakeOwnership)
virtual void set_label_wrap(bool wrap) override
virtual OUString get_label() const override
virtual ~SalInstanceCheckButton() override
virtual bool get_inconsistent() const override
VclPtr< CheckBox > m_xCheckButton
virtual void insert_separator(int pos, const OUString &) override
virtual void set_entry_placeholder_text(const OUString &rText) override
virtual bool has_entry() const override
virtual void set_mru_entries(const OUString &rEntries) override
DECL_LINK(UserDrawHdl, UserDrawEvent *, void)
virtual bool changed_by_direct_pick() const override
virtual void set_entry_completion(bool bEnable, bool bCaseSensitive=false) override
virtual void set_entry_editable(bool bEditable) override
virtual void cut_entry_clipboard() override
virtual void set_entry_width_chars(int nChars) override
virtual void insert(int pos, const OUString &rStr, const OUString *pId, const OUString *pIconName, VirtualDevice *pImageSurface) override
virtual void set_entry_message_type(weld::EntryMessageType eType) override
virtual void call_attention_to() override
virtual void set_entry_max_length(int nChars) override
virtual void copy_entry_clipboard() override
virtual OUString get_mru_entries() const override
virtual vcl::Font get_entry_font() override
SalInstanceComboBoxWithEdit(::ComboBox *pComboBox, SalInstanceBuilder *pBuilder, bool bTakeOwnership)
virtual ~SalInstanceComboBoxWithEdit() override
virtual void HandleEventListener(VclWindowEvent &rEvent) override
virtual bool get_entry_selection_bounds(int &rStartPos, int &rEndPos) override
DECL_LINK(SelectHdl, ::ComboBox &, void)
virtual void set_custom_renderer(bool bOn) override
virtual void paste_entry_clipboard() override
virtual void remove(int pos) override
virtual OUString get_active_text() const override
virtual void set_entry_text(const OUString &rText) override
DECL_LINK(EntryActivateHdl, Edit &, bool)
virtual int get_max_mru_count() const override
virtual void set_font(const vcl::Font &rFont) override
virtual void set_entry_font(const vcl::Font &rFont) override
virtual void select_entry_region(int nStartPos, int nEndPos) override
virtual void set_max_mru_count(int nCount) override
DECL_LINK(ChangeHdl, Edit &, void)
virtual void copy_entry_clipboard() override
virtual void set_max_mru_count(int) override
virtual void select_entry_region(int, int) override
virtual vcl::Font get_entry_font() override
virtual void remove(int pos) override
virtual void set_mru_entries(const OUString &) override
virtual void set_entry_completion(bool, bool bCaseSensitive=false) override
virtual void insert_separator(int pos, const OUString &) override
virtual void set_entry_placeholder_text(const OUString &) override
virtual bool changed_by_direct_pick() const override
virtual int get_max_mru_count() const override
virtual void set_entry_editable(bool bEditable) override
virtual void insert(int pos, const OUString &rStr, const OUString *pId, const OUString *pIconName, VirtualDevice *pImageSurface) override
virtual void set_entry_message_type(weld::EntryMessageType) override
virtual OUString get_active_text() const override
virtual void paste_entry_clipboard() override
virtual void set_entry_text(const OUString &) override
virtual void set_entry_font(const vcl::Font &) override
SalInstanceComboBoxWithoutEdit(ListBox *pListBox, SalInstanceBuilder *pBuilder, bool bTakeOwnership)
virtual void set_font(const vcl::Font &rFont) override
virtual OUString get_mru_entries() const override
virtual bool get_entry_selection_bounds(int &, int &) override
virtual ~SalInstanceComboBoxWithoutEdit() override
DECL_LINK(SelectHdl, ListBox &, void)
virtual void HandleEventListener(VclWindowEvent &rEvent) override
virtual void set_custom_renderer(bool bOn) override
virtual void cut_entry_clipboard() override
virtual void set_entry_width_chars(int) override
virtual void set_entry_max_length(int) override
virtual bool has_entry() const override
virtual void insert_vector(const std::vector< weld::ComboBoxEntry > &rItems, bool bKeepExisting) override
Definition: salvtables.hxx:818
std::vector< std::shared_ptr< OUString > > m_aUserData
Definition: salvtables.hxx:730
void CallHandleEventListener(VclWindowEvent &rEvent)
Definition: salvtables.hxx:922
virtual void set_id(int row, const OUString &rId) override
Definition: salvtables.hxx:812
virtual void make_sorted() override
Definition: salvtables.hxx:861
int get_menu_button_width() const override
Definition: salvtables.hxx:916
virtual OUString get_text(int pos) const override
Definition: salvtables.hxx:802
virtual void set_active(int pos) override
Definition: salvtables.hxx:788
virtual int get_count() const override
Definition: salvtables.hxx:832
virtual int get_active() const override
Definition: salvtables.hxx:742
virtual bool get_popup_shown() const override
Definition: salvtables.hxx:866
OUString m_sMenuButtonRow
Definition: salvtables.hxx:733
virtual int find_text(const OUString &rStr) const override
Definition: salvtables.hxx:834
VclPtr< vcl_type > m_xComboBox
Definition: salvtables.hxx:731
void call_signal_custom_render(UserDrawEvent *pEvent)
Definition: salvtables.hxx:874
virtual void clear() override
Definition: salvtables.hxx:855
virtual OUString get_id(int pos) const override
Definition: salvtables.hxx:804
virtual OUString get_active_id() const override
Definition: salvtables.hxx:763
const OUString * getEntryData(int index) const
Definition: salvtables.hxx:750
SalInstanceComboBox(vcl_type *pComboBox, SalInstanceBuilder *pBuilder, bool bTakeOwnership)
Definition: salvtables.hxx:736
VclPtr< VirtualDevice > create_render_virtual_device() const override
Definition: salvtables.hxx:894
virtual int find_id(const OUString &rStr) const override
Definition: salvtables.hxx:842
virtual void set_active_id(const OUString &rStr) override
Definition: salvtables.hxx:776
virtual void set_item_menu(const OUString &rIdent, weld::Menu *pMenu) override
Definition: salvtables.hxx:901
virtual bool has_focus() const override
Definition: salvtables.hxx:757
ScopedVclPtr< MenuButton > m_xMenuButton
Definition: salvtables.hxx:732
virtual void connect_popup_toggled(const Link< ComboBox &, void > &rLink) override
Definition: salvtables.hxx:868
virtual void connect_container_focus_changed(const Link< Container &, void > &rLink) override
virtual void child_grab_focus() override
virtual void HandleEventListener(VclWindowEvent &rEvent) override
SalInstanceContainer(vcl::Window *pContainer, SalInstanceBuilder *pBuilder, bool bTakeOwnership)
virtual void move(weld::Widget *pWidget, weld::Container *pNewParent) override
VclPtr< vcl::Window > m_xContainer
Definition: salvtables.hxx:431
virtual css::uno::Reference< css::awt::XWindow > CreateChildFrame() override
virtual bool runAsync(std::shared_ptr< weld::DialogController > aOwner, const std::function< void(sal_Int32)> &rEndDialogFn) override
virtual void SetInstallLOKNotifierHdl(const Link< void *, vcl::ILibreOfficeKitNotifier * > &rLink) override
tools::Long m_nOldEditWidthReq
Definition: salvtables.hxx:519
virtual void collapse(weld::Widget *pEdit, weld::Widget *pButton) override
virtual void set_default_response(int nResponse) override
DECL_LINK(PopupScreenShotMenuHdl, const CommandEvent &, bool)
virtual bool get_modal() const override
virtual weld::Button * weld_widget_for_response(int nResponse) override
virtual void response(int nResponse) override
SalInstanceDialog(::Dialog *pDialog, SalInstanceBuilder *pBuilder, bool bTakeOwnership)
VclPtr<::Dialog > m_xDialog
Definition: salvtables.hxx:513
VclPtr< vcl::Window > m_xRefEdit
Definition: salvtables.hxx:517
virtual void add_button(const OUString &rText, int nResponse, const OUString &rHelpId={}) override
virtual weld::Container * weld_content_area() override
virtual void set_modal(bool bModal) override
sal_Int32 m_nOldBorderWidth
Definition: salvtables.hxx:520
virtual void undo_collapse() override
virtual int run() override
std::vector< VclPtr< vcl::Window > > m_aHiddenWidgets
Definition: salvtables.hxx:518
SalInstanceDrawingArea(VclDrawingArea *pDrawingArea, SalInstanceBuilder *pBuilder, const a11yref &rAlly, FactoryFunction pUITestFactoryFunction, void *pUserData, bool bTakeOwnership)
DECL_LINK(KeyPressHdl, const KeyEvent &, bool)
DECL_LINK(StyleUpdatedHdl, VclDrawingArea &, void)
virtual void dblclick(const Point &rPos) override
virtual void HandleEventListener(VclWindowEvent &rEvent) override
virtual bool HandleKeyEventListener(VclWindowEvent &) override
std::pair< vcl::RenderContext &, const tools::Rectangle & > target_and_area
virtual a11yrelationset get_accessible_relation_set() override
virtual void mouse_up(const Point &rPos) override
virtual void enable_drag_source(rtl::Reference< TransferDataContainer > &rHelper, sal_uInt8 eDNDConstants) override
virtual ~SalInstanceDrawingArea() override
virtual void click(const Point &rPos) override
virtual OutputDevice & get_ref_device() override
DECL_LINK(MousePressHdl, const MouseEvent &, bool)
DECL_LINK(MouseMoveHdl, const MouseEvent &, bool)
DECL_LINK(CommandHdl, const CommandEvent &, bool)
virtual void connect_key_release(const Link< const KeyEvent &, bool > &rLink) override
DECL_LINK(PaintHdl, target_and_area, void)
DECL_LINK(DeleteSurroundingHdl, const Selection &, bool)
virtual Point get_pointer_position() const override
virtual void HandleMouseEventListener(VclWindowEvent &rEvent) override
virtual void mouse_down(const Point &rPos) override
virtual void mouse_move(const Point &rPos) override
DECL_LINK(MouseReleaseHdl, const MouseEvent &, bool)
virtual void queue_draw_area(int x, int y, int width, int height) override
virtual void connect_size_allocate(const Link< const Size &, void > &rLink) override
virtual Point get_accessible_location_on_screen() override
DECL_LINK(StartDragHdl, VclDrawingArea *, bool)
virtual void queue_draw() override
virtual void set_input_context(const InputContext &rInputContext) override
DECL_LINK(QueryTooltipHdl, tools::Rectangle &, OUString)
DECL_LINK(KeyReleaseHdl, const KeyEvent &, bool)
virtual void im_context_set_cursor_location(const tools::Rectangle &rCursorRect, int nExtTextInputWidth) override
virtual void set_cursor(PointerStyle ePointerStyle) override
VclPtr< VclDrawingArea > m_xDrawingArea
DECL_LINK(ResizeHdl, const Size &, void)
DECL_LINK(GetSurroundingHdl, OUString &, int)
virtual void connect_key_press(const Link< const KeyEvent &, bool > &rLink) override
virtual a11yref get_accessible_parent() override
virtual void connect_style_updated(const Link< Widget &, void > &rLink) override
virtual void set_editable(bool bEditable) override
virtual void set_font(const vcl::Font &rFont) override
virtual void connect_cursor_position(const Link< Entry &, void > &rLink) override
WeldTextFilter m_aTextFilter
Definition: salvtables.hxx:617
SalInstanceEntry(::Edit *pEntry, SalInstanceBuilder *pBuilder, bool bTakeOwnership)
bool get_selection_bounds(int &rStartPos, int &rEndPos) override
virtual bool get_overwrite_mode() const override
void fire_signal_changed()
virtual bool get_editable() const override
virtual void cut_clipboard() override
virtual void copy_clipboard() override
virtual void set_alignment(TxtAlign eXAlign) override
VclPtr<::Edit > m_xEntry
Definition: salvtables.hxx:611
virtual void paste_clipboard() override
DECL_LINK(ChangeHdl, Edit &, void)
virtual OUString get_text() const override
DECL_LINK(ActivateHdl, Edit &, bool)
virtual int get_width_chars() const override
virtual void set_position(int nCursorPos) override
virtual void set_placeholder_text(const OUString &rText) override
virtual void set_text(const OUString &rText) override
virtual ~SalInstanceEntry() override
virtual int get_position() const override
virtual void set_max_length(int nChars) override
virtual void set_width_chars(int nChars) override
virtual void replace_selection(const OUString &rText) override
virtual void select_region(int nStartPos, int nEndPos) override
virtual void set_message_type(weld::EntryMessageType eType) override
virtual void set_font_color(const Color &rColor) override
DECL_LINK(CursorListener, VclWindowEvent &, void)
virtual void set_overwrite_mode(bool bOn) override
virtual void grab_focus() override
SalInstanceExpander(VclExpander *pExpander, SalInstanceBuilder *pBuilder, bool bTakeOwnership)
virtual void set_expanded(bool bExpand) override
virtual OUString get_label() const override
virtual bool get_expanded() const override
VclPtr< VclExpander > m_xExpander
virtual ~SalInstanceExpander() override
DECL_LINK(ExpandedHdl, VclExpander &, void)
virtual void set_label(const OUString &rText) override
virtual bool has_focus() const override
Link< weld::Widget &, void > m_aLoseFocusHdl
virtual void sync_value_from_formatter() override
virtual void set_text(const OUString &rText) override
virtual void connect_changed(const Link< weld::Entry &, void > &rLink) override
weld::EntryFormatter * m_pFormatter
virtual Formatter & GetFormatter() override
DECL_LINK(LoseFocusHdl, Control &, void)
SalInstanceFormattedSpinButton(FormattedField *pButton, SalInstanceBuilder *pBuilder, bool bTakeOwnership)
DECL_LINK(UpDownHdl, SpinField &, void)
virtual void connect_focus_out(const Link< weld::Widget &, void > &rLink) override
virtual ~SalInstanceFormattedSpinButton() override
virtual void sync_increments_from_formatter() override
VclPtr< FormattedField > m_xButton
virtual void sync_range_from_formatter() override
virtual void SetFormatter(weld::EntryFormatter *pFormatter) override
virtual void set_label(const OUString &rText) override
virtual std::unique_ptr< weld::Label > weld_label_widget() const override
SalInstanceFrame(VclFrame *pFrame, SalInstanceBuilder *pBuilder, bool bTakeOwnership)
virtual OUString get_label() const override
VclPtr< VclFrame > m_xFrame
virtual int count_selected_items() const override
virtual OUString get_selected_text() const override
virtual void unselect(int pos) override
virtual void selected_foreach(const std::function< bool(weld::TreeIter &)> &func) override
VclPtr<::IconView > m_xIconView
virtual int n_children() const override
virtual OUString get_selected_id() const override
virtual OUString get_id(const weld::TreeIter &rIter) const override
virtual void connect_get_property_tree_elem(const Link< const weld::json_prop_query &, bool > &rLink) override
virtual void select(int pos) override
virtual void set_cursor(const weld::TreeIter &rIter) override
DECL_LINK(TooltipHdl, SvTreeListEntry *, OUString)
DECL_LINK(CommandHdl, const CommandEvent &, bool)
virtual bool get_iter_first(weld::TreeIter &rIter) const override
DECL_LINK(EntryAccessibleDescriptionHdl, SvTreeListEntry *, OUString)
virtual ~SalInstanceIconView() override
std::vector< std::unique_ptr< OUString > > m_aUserData
DECL_LINK(DumpElemToPropertyTreeHdl, const ::IconView::json_prop_query &, bool)
DECL_LINK(DeSelectHdl, SvTreeListBox *, void)
virtual void set_item_width(int width) override
virtual void clear() override
DECL_LINK(SelectHdl, SvTreeListBox *, void)
virtual std::unique_ptr< weld::TreeIter > make_iterator(const weld::TreeIter *pOrig=nullptr) const override
virtual void freeze() override
virtual void thaw() override
virtual OUString get_text(const weld::TreeIter &rIter) const override
DECL_LINK(DoubleClickHdl, SvTreeListBox *, bool)
virtual int get_item_width() const override
virtual void scroll_to_item(const weld::TreeIter &rIter) override
virtual void connect_query_tooltip(const Link< const weld::TreeIter &, OUString > &rLink) override
virtual void insert_separator(int pos, const OUString *pId) override
virtual bool get_selected(weld::TreeIter *pIter) const override
SalInstanceIconView(::IconView *pIconView, SalInstanceBuilder *pBuilder, bool bTakeOwnership)
virtual bool get_cursor(weld::TreeIter *pIter) const override
virtual void insert(int pos, const OUString *pStr, const OUString *pId, const OUString *pIconName, weld::TreeIter *pRet) override
VclPtr< FixedImage > m_xImage
virtual void set_from_icon_name(const OUString &rIconName) override
SalInstanceImage(FixedImage *pImage, SalInstanceBuilder *pBuilder, bool bTakeOwnership)
virtual void set_image(VirtualDevice *pDevice) override
VclPtr< Control > m_xLabel
Definition: salvtables.hxx:411
virtual void set_mnemonic_widget(Widget *pTarget) override
SalInstanceLabel(Control *pLabel, SalInstanceBuilder *pBuilder, bool bTakeOwnership)
virtual void set_font_color(const Color &rColor) override
virtual void set_label_type(weld::LabelType eType) override
virtual void set_font(const vcl::Font &rFont) override
virtual void set_label(const OUString &rText) override
virtual OUString get_label() const override
DECL_LINK(ClickHdl, FixedHyperlink &, void)
VclPtr< FixedHyperlink > m_xButton
virtual void set_uri(const OUString &rUri) override
virtual void set_label_wrap(bool wrap) override
SalInstanceLinkButton(FixedHyperlink *pButton, SalInstanceBuilder *pBuilder, bool bTakeOwnership)
virtual void set_label(const OUString &rText) override
virtual OUString get_label() const override
Link< FixedHyperlink &, void > m_aOrigClickHdl
virtual ~SalInstanceLinkButton() override
virtual OUString get_uri() const override
virtual bool get_inconsistent() const override
virtual void set_item_active(const OUString &rIdent, bool bActive) override
virtual void set_item_sensitive(const OUString &rIdent, bool bSensitive) override
virtual bool get_active() const override
virtual void clear() override
virtual void set_popover(weld::Widget *pPopover) override
SalInstanceMenuButton(::MenuButton *pButton, SalInstanceBuilder *pBuilder, bool bTakeOwnership)
virtual ~SalInstanceMenuButton() override
virtual void set_active(bool active) override
virtual void remove_item(const OUString &rId) override
virtual OUString get_item_label(const OUString &rIdent) const override
virtual void set_item_label(const OUString &rIdent, const OUString &rText) override
DECL_LINK(ActivateHdl, ::MenuButton *, void)
DECL_LINK(MenuSelectHdl, ::MenuButton *, void)
virtual void insert_item(int pos, const OUString &rId, const OUString &rStr, const OUString *pIconName, VirtualDevice *pImageSurface, TriState eCheckRadioFalse) override
virtual void set_inconsistent(bool) override
virtual void set_item_visible(const OUString &rIdent, bool bShow) override
VclPtr<::MenuButton > m_xMenuButton
virtual void insert_separator(int pos, const OUString &rId) override
sal_uInt16 m_nLastId
Definition: salvtables.hxx:151
DECL_DLLPRIVATE_LINK(SelectMenuHdl, ::Menu *, bool)
VclPtr< PopupMenu > m_xMenu
Definition: salvtables.hxx:148
PopupMenu * getMenu() const
Definition: salvtables.cxx:979
virtual OUString get_secondary_text() const override
virtual weld::Container * weld_message_area() override
virtual void set_secondary_text(const OUString &rText) override
virtual OUString get_primary_text() const override
virtual void set_primary_text(const OUString &rText) override
VclPtr<::MessageDialog > m_xMessageDialog
SalInstanceMessageDialog(::MessageDialog *pDialog, SalInstanceBuilder *pBuilder, bool bTakeOwnership)
virtual OUString get_tab_label_text(const OUString &rIdent) const override
virtual void set_tab_label_text(const OUString &rIdent, const OUString &rText) override
virtual int get_page_index(const OUString &rIdent) const override
virtual void set_show_tabs(bool bShow) override
virtual OUString get_page_ident(int nPage) const override
std::vector< std::shared_ptr< SalInstanceContainer > > m_aPages
virtual void set_current_page(int nPage) override
virtual ~SalInstanceNotebook() override
virtual void remove_page(const OUString &rIdent) override
VclPtr< TabControl > m_xNotebook
virtual int get_current_page() const override
virtual OUString get_current_page_ident() const override
virtual weld::Container * get_page(const OUString &rIdent) const override
DECL_LINK(ActivatePageHdl, TabControl *, void)
DECL_LINK(DeactivatePageHdl, TabControl *, bool)
virtual int get_n_pages() const override
std::map< OUString, std::pair< VclPtr< TabPage >, VclPtr< VclGrid > > > m_aAddedPages
virtual void insert_page(const OUString &rIdent, const OUString &rLabel, int nPos) override
SalInstanceNotebook(TabControl *pNotebook, SalInstanceBuilder *pBuilder, bool bTakeOwnership)
SalInstancePopover(DockingWindow *pPopover, SalInstanceBuilder *pBuilder, bool bTakeOwnership)
virtual void popup_at_rect(weld::Widget *pParent, const tools::Rectangle &rRect, weld::Placement ePlace=weld::Placement::Under) override
virtual void resize_to_request() override
virtual void popdown() override
DECL_LINK(PopupModeEndHdl, FloatingWindow *, void)
VclPtr< DockingWindow > m_xPopover
VclPtr<::RadioButton > m_xRadioButton
virtual void set_label(const OUString &rText) override
virtual void set_active(bool active) override
virtual void set_inconsistent(bool) override
virtual void set_label_wrap(bool wrap) override
virtual OUString get_label() const override
DECL_LINK(ToggleHdl, ::RadioButton &, void)
virtual void set_from_icon_name(const OUString &rIconName) override
virtual bool get_inconsistent() const override
virtual void set_image(VirtualDevice *pDevice) override
virtual bool get_active() const override
virtual ~SalInstanceRadioButton() override
SalInstanceRadioButton(::RadioButton *pButton, SalInstanceBuilder *pBuilder, bool bTakeOwnership)
virtual ~SalInstanceScrolledWindow() override
virtual int hadjustment_get_upper() const override
virtual int vadjustment_get_value() const override
virtual int vadjustment_get_lower() const override
static void customize_scrollbars(ScrollBar &rScrollBar, const Color &rButtonTextColor, const Color &rBackgroundColor, const Color &rShadowColor, const Color &rFaceColor)
virtual void hadjustment_set_step_increment(int size) override
virtual VclPolicyType get_vpolicy() const override
virtual void vadjustment_set_step_increment(int size) override
virtual void set_scroll_thickness(int nThickness) override
virtual void vadjustment_set_page_increment(int size) override
virtual VclPolicyType get_hpolicy() const override
virtual void hadjustment_set_page_increment(int size) override
SalInstanceScrolledWindow(VclScrolledWindow *pScrolledWindow, SalInstanceBuilder *pBuilder, bool bTakeOwnership, bool bUserManagedScrolling)
virtual void vadjustment_configure(int value, int lower, int upper, int step_increment, int page_increment, int page_size) override
virtual void set_hpolicy(VclPolicyType eHPolicy) override
virtual void vadjustment_set_page_size(int size) override
virtual void vadjustment_set_upper(int upper) override
virtual void vadjustment_set_lower(int lower) override
virtual void vadjustment_set_value(int value) override
virtual void hadjustment_configure(int value, int lower, int upper, int step_increment, int page_increment, int page_size) override
DECL_LINK(HscrollHdl, ScrollBar *, void)
virtual int get_scroll_thickness() const override
virtual int hadjustment_get_page_size() const override
Link< ScrollBar *, void > m_aOrigHScrollHdl
virtual int vadjustment_get_page_size() const override
virtual void set_vpolicy(VclPolicyType eVPolicy) override
virtual void hadjustment_set_page_size(int size) override
virtual void hadjustment_set_upper(int upper) override
virtual int hadjustment_get_value() const override
DECL_LINK(VscrollHdl, ScrollBar *, void)
virtual void hadjustment_set_value(int value) override
VclPtr< VclScrolledWindow > m_xScrolledWindow
virtual int vadjustment_get_upper() const override
Link< ScrollBar *, void > m_aOrigVScrollHdl
DECL_LINK(UpDownHdl, SpinField &, void)
virtual void set_increments(int step, int) override
SalInstanceSpinButton(FormattedField *pButton, SalInstanceBuilder *pBuilder, bool bTakeOwnership)
Formatter & m_rFormatter
Definition: salvtables.hxx:680
DECL_LINK(ActivateHdl, Edit &, bool)
virtual bool has_focus() const override
virtual unsigned int get_digits() const override
DECL_LINK(LoseFocusHdl, Control &, void)
virtual sal_Int64 get_value() const override
virtual void get_range(sal_Int64 &min, sal_Int64 &max) const override
VclPtr< FormattedField > m_xButton
Definition: salvtables.hxx:677
sal_Int64 fromField(double fValue) const
DECL_LINK(OutputHdl, LinkParamNone *, bool)
virtual void get_increments(int &step, int &page) const override
virtual void set_digits(unsigned int digits) override
virtual void set_range(sal_Int64 min, sal_Int64 max) override
virtual void set_value(sal_Int64 value) override
DECL_LINK(InputHdl, sal_Int64 *, TriState)
virtual ~SalInstanceSpinButton() override
double toField(sal_Int64 nValue) const
DECL_LINK(VscrollHdl, ScrollBar *, void)
virtual OUString get_text() const override
virtual void set_font_color(const Color &rColor) override
virtual bool can_move_cursor_with_up() const override
virtual int vadjustment_get_upper() const override
VclPtr< VclMultiLineEdit > m_xTextView
virtual void set_alignment(TxtAlign eXAlign) override
virtual void select_region(int nStartPos, int nEndPos) override
virtual bool has_focus() const override
virtual ~SalInstanceTextView() override
virtual void cut_clipboard() override
SalInstanceTextView(VclMultiLineEdit *pTextView, SalInstanceBuilder *pBuilder, bool bTakeOwnership)
virtual void copy_clipboard() override
virtual int vadjustment_get_page_size() const override
Link< ScrollBar *, void > m_aOrigVScrollHdl
virtual void set_text(const OUString &rText) override
bool get_selection_bounds(int &rStartPos, int &rEndPos) override
DECL_LINK(CursorListener, VclWindowEvent &, void)
virtual void set_max_length(int nChars) override
virtual int vadjustment_get_value() const override
virtual void paste_clipboard() override
virtual void set_monospace(bool bMonospace) override
virtual void set_font(const vcl::Font &rFont) override
virtual int vadjustment_get_lower() const override
virtual void vadjustment_set_value(int value) override
virtual void set_editable(bool bEditable) override
virtual void connect_cursor_position(const Link< TextView &, void > &rLink) override
virtual bool get_editable() const override
DECL_LINK(ChangeHdl, Edit &, void)
virtual bool can_move_cursor_with_down() const override
virtual void replace_selection(const OUString &rText) override
virtual ~SalInstanceToggleButton() override
virtual bool get_inconsistent() const override
virtual void connect_toggled(const Link< Toggleable &, void > &rLink) override
virtual void set_active(bool active) override
DECL_LINK(ToggleListener, VclWindowEvent &, void)
SalInstanceToggleButton(PushButton *pButton, SalInstanceBuilder *pBuilder, bool bTakeOwnership)
VclPtr< PushButton > m_xToggleButton
virtual void set_inconsistent(bool inconsistent) override
virtual bool get_active() const override
virtual void set_item_popover(const OUString &rIdent, weld::Widget *pPopover) override
VclPtr< ToolBox > m_xToolBox
virtual void set_item_visible(const OUString &rIdent, bool bVisible) override
DECL_LINK(MenuToggleListener, VclWindowEvent &, void)
virtual void set_icon_size(vcl::ImageType eType) override
virtual OUString get_item_ident(int nIndex) const override
virtual void set_item_active(const OUString &rIdent, bool bActive) override
void set_menu_item_active(const OUString &rIdent, bool bActive) override
virtual void set_item_help_id(const OUString &rIdent, const OUString &rHelpId) override
virtual int get_drop_index(const Point &rPoint) const override
SalInstanceToolbar(ToolBox *pToolBox, SalInstanceBuilder *pBuilder, bool bTakeOwnership)
virtual bool get_item_active(const OUString &rIdent) const override
OUString m_sStartShowIdent
virtual void insert_item(int pos, const OUString &rId) override
virtual void set_item_label(int nIndex, const OUString &rLabel) override
virtual OUString get_item_label(const OUString &rIdent) const override
virtual void set_item_image(const OUString &rIdent, const css::uno::Reference< css::graphic::XGraphic > &rIcon) override
virtual void insert_separator(int pos, const OUString &) override
virtual void set_item_menu(const OUString &rIdent, weld::Menu *pMenu) override
virtual void set_item_icon_name(const OUString &rIdent, const OUString &rIconName) override
virtual void set_item_image_mirrored(const OUString &rIdent, bool bMirrored) override
DECL_LINK(ClickHdl, ToolBox *, void)
std::map< ToolBoxItemId, VclPtr< PopupMenu > > m_aMenus
bool get_menu_item_active(const OUString &rIdent) const override
virtual ~SalInstanceToolbar() override
virtual int get_n_items() const override
virtual vcl::ImageType get_icon_size() const override
virtual OUString get_item_tooltip_text(const OUString &rIdent) const override
DECL_LINK(DropdownClick, ToolBox *, void)
virtual bool get_item_sensitive(const OUString &rIdent) const override
virtual void set_item_tooltip_text(int nIndex, const OUString &rTip) override
virtual sal_uInt16 get_modifier_state() const override
virtual bool get_item_visible(const OUString &rIdent) const override
virtual void set_item_sensitive(const OUString &rIdent, bool bSensitive) override
std::map< ToolBoxItemId, VclPtr< vcl::Window > > m_aFloats
virtual void set_item_ident(int nIndex, const OUString &rIdent) override
virtual void queue_draw() override
virtual void connect_visible_range_changed(const Link< weld::TreeView &, void > &rLink) override
virtual void copy_iterator(const weld::TreeIter &rSource, weld::TreeIter &rDest) const override
DECL_LINK(EditedEntryHdl, IterString, bool)
DECL_LINK(CustomMeasureHdl, svtree_measure_args, Size)
virtual void unset_drag_dest_row() override
SvTabListBox & getTreeView()
virtual void remove_selection() override
virtual void move_subtree(weld::TreeIter &rNode, const weld::TreeIter *pNewParent, int nIndexInNewParent) override
DECL_LINK(VisibleRangeChangedHdl, SvTreeListBox *, void)
virtual void visible_foreach(const std::function< bool(weld::TreeIter &)> &func) override
DECL_LINK(PopupMenuHdl, const CommandEvent &, bool)
void set_image(SvTreeListEntry *pEntry, const Image &rImage, int col)
virtual void set_sort_column(int nColumn) override
DECL_LINK(ToggleHdl, SvLBoxButtonData *, void)
virtual int find_id(const OUString &rId) const override
void set_toggle(SvTreeListEntry *pEntry, TriState eState, int col)
void InvalidateModelEntry(SvTreeListEntry *pEntry)
virtual void show() override
virtual void columns_autosize() override
virtual void set_children_on_demand(const weld::TreeIter &rIter, bool bChildrenOnDemand) override
virtual void end_editing() override
virtual void enable_toggle_buttons(weld::ColumnToggleType eType) override
virtual void remove(int pos) override
virtual void scroll_to_row(int pos) override
virtual std::unique_ptr< weld::TreeIter > make_iterator(const weld::TreeIter *pOrig=nullptr) const override
SalInstanceTreeView(SvTabListBox *pTreeView, SalInstanceBuilder *pBuilder, bool bTakeOwnership)
void AddStringItem(SvTreeListEntry *pEntry, const OUString &rStr, int nCol)
virtual int get_height_rows(int nRows) const override
virtual OUString get_column_title(int nColumn) const override
virtual bool get_children_on_demand(const weld::TreeIter &rIter) const override
virtual int n_children() const override
virtual bool iter_has_child(const weld::TreeIter &rIter) const override
virtual TreeView * get_drag_source() const override
void set_header_item_width(const std::vector< int > &rWidths)
virtual bool get_iter_abs_pos(weld::TreeIter &rIter, int nPos) const
DECL_LINK(StartDragHdl, SvTreeListBox *, bool)
static TriState do_get_toggle(SvTreeListEntry *pEntry, int col)
virtual bool is_selected(int pos) const override
DECL_LINK(DeSelectHdl, SvTreeListBox *, void)
virtual void start_editing(const weld::TreeIter &rIter) override
void do_set_toggle(SvTreeListEntry *pEntry, TriState eState, int col)
SvLBoxButtonData m_aCheckButtonData
void set_text_align(SvTreeListEntry *pEntry, double fAlign, int col)
virtual OUString get_selected_id() const override
void set_id(SvTreeListEntry *pEntry, const OUString &rId)
virtual void insert_separator(int pos, const OUString &) override
virtual void set_column_title(int nColumn, const OUString &rTitle) override
virtual void freeze() override
virtual bool iter_previous(weld::TreeIter &rIter) const override
virtual void set_clicks_to_toggle(int nToggleBehavior) override
virtual int get_selected_index() const override
virtual bool iter_previous_sibling(weld::TreeIter &rIter) const override
virtual bool changed_by_hover() const override
TriState get_toggle(SvTreeListEntry *pEntry, int col) const
DECL_LINK(HeaderBarClickedHdl, HeaderBar *, void)
virtual void swap(int pos1, int pos2) override
virtual bool iter_next_sibling(weld::TreeIter &rIter) const override
virtual bool get_selected(weld::TreeIter *pIter) const override
virtual void make_unsorted() override
virtual void connect_query_tooltip(const Link< const weld::TreeIter &, OUString > &rLink) override
virtual int vadjustment_get_value() const override
virtual void all_foreach(const std::function< bool(weld::TreeIter &)> &func) override
DECL_LINK(TooltipHdl, SvTreeListEntry *, OUString)
virtual void set_selection_mode(SelectionMode eMode) override
DECL_LINK(DoubleClickHdl, SvTreeListBox *, bool)
SvLBoxButtonData m_aRadioButtonData
virtual int find_text(const OUString &rText) const override
virtual void unselect(int pos) override
virtual int iter_compare(const weld::TreeIter &a, const weld::TreeIter &b) const override
DECL_LINK(CustomRenderHdl, svtree_render_args, void)
SvTreeListEntry * GetPlaceHolderChild(SvTreeListEntry *pEntry) const
VclPtr< SvTabListBox > m_xTreeView
virtual int get_sort_column() const override
void set_text(SvTreeListEntry *pEntry, const OUString &rText, int col)
virtual void set_sort_order(bool bAscending) override
virtual void select(int pos) override
DECL_LINK(ModelChangedHdl, SvTreeListBox *, void)
virtual void enable_drag_source(rtl::Reference< TransferDataContainer > &rHelper, sal_uInt8 eDNDConstants) override
virtual ~SalInstanceTreeView() override
DECL_LINK(ExpandingHdl, SvTreeListBox *, bool)
virtual bool iter_children(weld::TreeIter &rIter) const override
static bool do_get_sensitive(SvTreeListEntry *pEntry, int col)
static void set_font_color(SvTreeListEntry *pEntry, const Color &rColor)
int to_external_model(int col) const
virtual int get_iter_index_in_parent(const weld::TreeIter &rIter) const override
virtual int count_selected_rows() const override
virtual int get_column_width(int nColumn) const override
o3tl::sorted_vector< SvTreeListEntry * > m_aExpandingPlaceHolderParents
virtual bool iter_next(weld::TreeIter &rIter) const override
virtual void set_cursor(int pos) override
virtual OUString get_selected_text() const override
std::vector< std::unique_ptr< OUString > > m_aUserData
virtual void set_sort_indicator(TriState eState, int col) override
OUString get_text(SvTreeListEntry *pEntry, int col) const
virtual void set_column_custom_renderer(int nColumn, bool bEnable) override
DECL_LINK(EndDragHdl, HeaderBar *, void)
virtual void clear() override
virtual void insert(const weld::TreeIter *pParent, int pos, const OUString *pStr, const OUString *pId, const OUString *pIconName, VirtualDevice *pImageSurface, bool bChildrenOnDemand, weld::TreeIter *pRet) override
virtual TriState get_sort_indicator(int col) const override
virtual bool get_sensitive() const override
Definition: salvtables.cxx:370
bool IsDummyEntry(SvTreeListEntry *pEntry) const
virtual bool get_sort_order() const override
virtual void set_column_editables(const std::vector< bool > &rEditables) override
virtual bool iter_parent(weld::TreeIter &rIter) const override
DECL_STATIC_LINK(SalInstanceTreeView, FinishDragHdl, SvTreeListBox *, void)
virtual void expand_row(const weld::TreeIter &rIter) override
void set_text_emphasis(SvTreeListEntry *pEntry, bool bOn, int col=-1)
std::pair< SvTreeListEntry *, OUString > IterString
o3tl::sorted_vector< int > m_aCustomRenders
virtual int get_iter_depth(const weld::TreeIter &rIter) const override
const OUString * getEntryData(int index) const
virtual void thaw() override
virtual void set_centered_column(int nCol) override
virtual void connect_editing(const Link< const weld::TreeIter &, bool > &rStartLink, const Link< const iter_string &, bool > &rEndLink) override
virtual void set_extra_row_indent(const weld::TreeIter &rIter, int nIndentLevel) override
virtual bool get_row_expanded(const weld::TreeIter &rIter) const override
virtual bool get_iter_first(weld::TreeIter &rIter) const override
bool ExpandRow(const SalInstanceTreeIter &rIter)
virtual int iter_n_children(const weld::TreeIter &rIter) const override
int to_internal_model(int col) const
void set_sensitive(SvTreeListEntry *pEntry, bool bSensitive, int col)
virtual int get_cursor_index() const override
virtual tools::Rectangle get_row_area(const weld::TreeIter &rIter) const override
DECL_LINK(SelectHdl, SvTreeListBox *, void)
virtual OUString get_id(int pos) const override
virtual void bulk_insert_for_each(int nSourceCount, const std::function< void(weld::TreeIter &, int nSourceIndex)> &func, const weld::TreeIter *pParent=nullptr, const std::vector< int > *pFixedWidths=nullptr) override
virtual void make_sorted() override
virtual bool get_cursor(weld::TreeIter *pIter) const override
virtual void set_show_expanders(bool bShow) override
virtual std::vector< int > get_selected_rows() const override
virtual void vadjustment_set_value(int nValue) override
virtual void collapse_row(const weld::TreeIter &rIter) override
void update_checkbutton_column_width(SvTreeListEntry *pEntry)
virtual void hide() override
DECL_LINK(CompareHdl, const SvSortData &, sal_Int32)
void do_insert(const weld::TreeIter *pParent, int pos, const OUString *pStr, const OUString *pId, const OUString *pIconName, const VirtualDevice *pImageSurface, bool bChildrenOnDemand, weld::TreeIter *pRet, bool bIsSeparator)
virtual bool get_dest_row_at_pos(const Point &rPos, weld::TreeIter *pResult, bool bDnDMode, bool bAutoScroll=true) override
bool get_text_emphasis(SvTreeListEntry *pEntry, int col) const
virtual void selected_foreach(const std::function< bool(weld::TreeIter &)> &func) override
virtual void set_column_fixed_widths(const std::vector< int > &rWidths) override
virtual void set_sort_func(const std::function< int(const weld::TreeIter &, const weld::TreeIter &)> &func) override
DECL_LINK(EditingEntryHdl, SvTreeListEntry *, bool)
virtual OUString get_tooltip_text() const override
Definition: salvtables.cxx:512
virtual void set_help_id(const OUString &rId) override
Definition: salvtables.cxx:435
virtual css::uno::Reference< css::datatransfer::dnd::XDropTarget > get_drop_target() override
Definition: salvtables.cxx:689
virtual void HandleEventListener(VclWindowEvent &rEvent)
Definition: salvtables.cxx:733
DECL_LINK(MnemonicActivateHdl, vcl::Window &, bool)
DECL_LINK(EventListener, VclWindowEvent &, void)
virtual int get_margin_start() const override
Definition: salvtables.cxx:475
virtual void set_stack_background() override
Definition: salvtables.cxx:710
SalInstanceWidget(vcl::Window *pWidget, SalInstanceBuilder *pBuilder, bool bTakeOwnership)
Definition: salvtables.cxx:355
virtual int get_grid_top_attach() const override
Definition: salvtables.cxx:453
virtual int get_margin_top() const override
Definition: salvtables.cxx:471
virtual int get_grid_left_attach() const override
Definition: salvtables.cxx:444
virtual void set_title_background() override
Definition: salvtables.cxx:715
virtual void connect_style_updated(const Link< Widget &, void > &rLink) override
Definition: salvtables.cxx:587
virtual bool get_hexpand() const override
Definition: salvtables.cxx:457
virtual void connect_mouse_press(const Link< const MouseEvent &, bool > &rLink) override
Definition: salvtables.cxx:547
virtual bool has_focus() const override
Definition: salvtables.cxx:393
virtual void hide() override
Definition: salvtables.cxx:401
virtual void set_size_request(int nWidth, int nHeight) override
Definition: salvtables.cxx:403
virtual int get_margin_bottom() const override
Definition: salvtables.cxx:473
virtual void set_background(const Color &rColor) override
Definition: salvtables.cxx:339
virtual void set_busy_cursor(bool bBusy) override
Definition: salvtables.cxx:632
virtual void show() override
Definition: salvtables.cxx:399
virtual vcl::Font get_font() override
Definition: salvtables.cxx:429
virtual void set_margin_top(int nMargin) override
Definition: salvtables.cxx:463
virtual void queue_resize() override
Definition: salvtables.cxx:645
void ensure_key_listener()
Definition: salvtables.cxx:319
const bool m_bTakeOwnership
Definition: salvtables.hxx:198
virtual void connect_size_allocate(const Link< const Size &, void > &rLink) override
Definition: salvtables.cxx:541
virtual void set_vexpand(bool bExpand) override
Definition: salvtables.cxx:459
virtual void connect_get_property_tree(const Link< tools::JsonWriter &, void > &rLink) override
Definition: salvtables.cxx:700
DECL_LINK(MouseEventListener, VclWindowEvent &, void)
virtual void connect_mouse_release(const Link< const MouseEvent &, bool > &rLink) override
Definition: salvtables.cxx:559
virtual void set_grid_top_attach(int nAttach) override
Definition: salvtables.cxx:448
virtual bool has_child_focus() const override
Definition: salvtables.cxx:397
virtual void set_direction(bool bRTL) override
Definition: salvtables.cxx:616
virtual void get_property_tree(tools::JsonWriter &rJsonWriter) override
Definition: salvtables.cxx:705
virtual Size get_size_request() const override
Definition: salvtables.cxx:409
virtual void set_sensitive(bool sensitive) override
Definition: salvtables.cxx:368
virtual std::unique_ptr< weld::Container > weld_parent() const override
vcl::Window * getWidget() const
Definition: salvtables.cxx:663
void ensure_mouse_listener()
Definition: salvtables.cxx:330
virtual void help_hierarchy_foreach(const std::function< bool(const OUString &)> &func) override
DECL_LINK(SettingsChangedHdl, VclWindowEvent &, void)
bool IsLastThaw() const
Definition: salvtables.hxx:218
virtual void freeze() override
Definition: salvtables.cxx:618
virtual void set_tooltip_text(const OUString &rTip) override
Definition: salvtables.cxx:507
virtual css::uno::Reference< css::datatransfer::clipboard::XClipboard > get_clipboard() const override
Definition: salvtables.cxx:695
virtual void set_margin_bottom(int nMargin) override
Definition: salvtables.cxx:465
virtual void set_accessible_description(const OUString &rDescription) override
Definition: salvtables.cxx:484
virtual OUString strip_mnemonic(const OUString &rLabel) const override
Definition: salvtables.cxx:671
virtual int get_margin_end() const override
Definition: salvtables.cxx:477
SalInstanceBuilder * m_pBuilder
Definition: salvtables.hxx:187
bool notify_events_disabled() const
Definition: salvtables.cxx:667
virtual bool get_vexpand() const override
Definition: salvtables.cxx:461
virtual ~SalInstanceWidget() override
Definition: salvtables.cxx:647
virtual void connect_key_press(const Link< const KeyEvent &, bool > &rLink) override
Definition: salvtables.cxx:565
virtual bool is_visible() const override
Definition: salvtables.cxx:374
virtual void connect_mnemonic_activate(const Link< Widget &, bool > &rLink) override
Definition: salvtables.cxx:529
static void DoRecursivePaint(vcl::Window *pWindow, const Point &rPos, OutputDevice &rOutput)
virtual void set_grid_width(int nCols) override
Definition: salvtables.cxx:446
virtual void call_attention_to() override
Definition: salvtables.cxx:683
virtual OUString get_help_id() const override
Definition: salvtables.cxx:437
std::unique_ptr< SalFlashAttention > m_xFlashAttention
Definition: salvtables.hxx:186
virtual bool is_active() const override
Definition: salvtables.cxx:395
virtual bool get_extents_relative_to(const Widget &rRelative, int &x, int &y, int &width, int &height) const override
Definition: salvtables.cxx:596
virtual void set_hexpand(bool bExpand) override
Definition: salvtables.cxx:455
virtual bool has_grab() const override
Definition: salvtables.cxx:610
virtual bool get_sensitive() const override
Definition: salvtables.cxx:370
virtual void grab_focus() override
Definition: salvtables.cxx:386
virtual int get_text_height() const override
Definition: salvtables.cxx:421
void enable_notify_events()
Definition: salvtables.cxx:669
virtual void set_grid_left_attach(int nAttach) override
Definition: salvtables.cxx:439
virtual void set_margin_start(int nMargin) override
Definition: salvtables.cxx:467
virtual void set_accessible_name(const OUString &rName) override
Definition: salvtables.cxx:479
virtual void set_margin_end(int nMargin) override
Definition: salvtables.cxx:469
virtual OUString get_accessible_description() const override
Definition: salvtables.cxx:491
virtual void set_highlight_background() override
Definition: salvtables.cxx:726
DECL_LINK(KeyEventListener, VclWindowEvent &, bool)
virtual void connect_key_release(const Link< const KeyEvent &, bool > &rLink) override
Definition: salvtables.cxx:571
virtual void grab_add() override
Definition: salvtables.cxx:608
virtual void set_accessible_relation_labeled_by(weld::Widget *pLabel) override
Definition: salvtables.cxx:496
virtual void set_buildable_name(const OUString &rId) override
Definition: salvtables.cxx:433
void ensure_event_listener()
Definition: salvtables.cxx:307
SystemWindow * getSystemWindow()
Definition: salvtables.cxx:731
virtual void HandleMouseEventListener(VclWindowEvent &rEvent)
Definition: salvtables.cxx:754
virtual void draw(OutputDevice &rOutput, const Point &rPos, const Size &rSizePixel) override
virtual bool get_visible() const override
Definition: salvtables.cxx:372
virtual OUString get_accessible_name() const override
Definition: salvtables.cxx:489
virtual float get_approximate_digit_width() const override
Definition: salvtables.cxx:416
virtual void thaw() override
Definition: salvtables.cxx:625
VclPtr< vcl::Window > m_xWidget
Definition: salvtables.hxx:185
virtual void connect_mouse_move(const Link< const MouseEvent &, bool > &rLink) override
Definition: salvtables.cxx:553
void disable_notify_events()
Definition: salvtables.cxx:665
virtual OUString get_buildable_name() const override
Definition: salvtables.cxx:431
virtual void connect_focus_in(const Link< Widget &, void > &rLink) override
Definition: salvtables.cxx:523
virtual void set_cursor_data(void *pData) override
Definition: salvtables.cxx:514
bool IsFirstFreeze() const
Definition: salvtables.hxx:217
virtual bool get_direction() const override
Definition: salvtables.cxx:614
virtual Size get_pixel_size(const OUString &rText) const override
Definition: salvtables.cxx:423
virtual void connect_focus_out(const Link< Widget &, void > &rLink) override
Definition: salvtables.cxx:535
virtual void set_toolbar_background() override
Definition: salvtables.cxx:720
virtual Size get_preferred_size() const override
Definition: salvtables.cxx:414
virtual VclPtr< VirtualDevice > create_virtual_device() const override
Definition: salvtables.cxx:676
virtual void set_can_focus(bool bCanFocus) override
Definition: salvtables.cxx:376
virtual void grab_remove() override
Definition: salvtables.cxx:612
virtual bool HandleKeyEventListener(VclWindowEvent &rEvent)
Definition: salvtables.cxx:803
virtual bool has_toplevel_focus() const override
virtual VclPtr< VirtualDevice > screenshot() override
virtual Point get_position() const override
void clear_child_help(vcl::Window *pParent)
virtual void present() override
virtual void set_window_state(const OUString &rStr) override
virtual void set_modal(bool bModal) override
virtual css::uno::Reference< css::awt::XWindow > GetXWindow() override
virtual void set_centered_on_parent(bool) override
VclPtr< vcl::Window > m_xWindow
Definition: salvtables.hxx:446
virtual void resize_to_request() override
virtual void change_default_widget(weld::Widget *pOld, weld::Widget *pNew) override
SalInstanceWindow(vcl::Window *pWindow, SalInstanceBuilder *pBuilder, bool bTakeOwnership)
virtual SystemEnvData get_system_data() const override
virtual bool get_modal() const override
virtual OUString get_window_state(vcl::WindowDataMask nMask) const override
virtual bool is_default_widget(const weld::Widget *pCandidate) const override
virtual OUString get_title() const override
virtual bool get_resizable() const override
virtual weld::ScreenShotCollection collect_screenshot_data() override
void recursively_unset_default_buttons()
virtual void window_move(int x, int y) override
virtual ~SalInstanceWindow() override
virtual void set_title(const OUString &rTitle) override
void override_child_help(vcl::Window *pParent)
virtual const vcl::ILibreOfficeKitNotifier * GetLOKNotifier() override
virtual tools::Rectangle get_monitor_workarea() const override
void implResetDefault(const vcl::Window *_pWindow)
virtual Size get_size() const override
DECL_LINK(HelpHdl, vcl::Window &, bool)
Definition: timer.hxx:27
A toolbar: contains all those icons, typically below the menu bar.
Definition: toolbox.hxx:74
Event to pass information for UserDraw() handling eg. in comboboxes.
Definition: event.hxx:222
vcl::RenderContext * GetRenderContext() const
Definition: event.hxx:241
bool IsSelected() const
Definition: event.hxx:244
const tools::Rectangle & GetRect() const
Definition: event.hxx:242
sal_uInt16 GetItemId() const
Definition: event.hxx:243
static VclPtr< reference_type > Create(Arg &&... arg)
A construction helper for VclPtr.
Definition: vclptr.hxx:127
VclEventId GetId() const
Definition: vclevent.hxx:185
WeldTextFilter(Link< OUString &, bool > &rInsertTextHdl)
virtual OUString filter(const OUString &rText) override
Link< OUString &, bool > & m_rInsertTextHdl
Definition: salvtables.hxx:600
constexpr tools::Long GetWidth() const
constexpr tools::Long Top() const
constexpr tools::Long GetHeight() const
wizard for a roadmap
Definition: wizdlg.hxx:65
void RemoveEventListener(const Link< VclWindowEvent &, void > &rEventListener)
Definition: event.cxx:312
bool HasChildPathFocus(bool bSystemWindow=false) const
Definition: window.cxx:3004
void AddEventListener(const Link< VclWindowEvent &, void > &rEventListener)
Definition: event.cxx:307
A widget used to choose from a list of items.
Definition: weld.hxx:713
virtual void insert(int pos, const OUString &rStr, const OUString *pId, const OUString *pIconName, VirtualDevice *pImageSurface)=0
void signal_custom_render(vcl::RenderContext &rDevice, const tools::Rectangle &rRect, bool bSelected, const OUString &rId)
Definition: weld.hxx:736
virtual void connect_popup_toggled(const Link< ComboBox &, void > &rLink)
Definition: weld.hxx:816
virtual void signal_popup_toggled()
Definition: weld.hxx:733
virtual void remove(const OUString &rId)=0
virtual OUString get_label(const OUString &rIdent) const =0
virtual void set_visible(const OUString &rIdent, bool bVisible)=0
virtual void clear()=0
virtual void set_label(const OUString &rIdent, const OUString &rLabel)=0
virtual int n_children() const =0
virtual OUString popup_at_rect(weld::Widget *pParent, const tools::Rectangle &rRect, Placement ePlace=Placement::Under)=0
virtual void insert(int pos, const OUString &rId, const OUString &rStr, const OUString *pIconName, VirtualDevice *pImageSurface, const css::uno::Reference< css::graphic::XGraphic > &rImage, TriState eCheckRadioFalse)=0
virtual bool get_sensitive(const OUString &rIdent) const =0
virtual void set_sensitive(const OUString &rIdent, bool bSensitive)=0
virtual void insert_separator(int pos, const OUString &rId)=0
virtual OUString get_id(int pos) const =0
virtual void set_item_help_id(const OUString &rIdent, const OUString &rHelpId)=0
virtual bool get_active(const OUString &rIdent) const =0
virtual void set_active(const OUString &rIdent, bool bActive)=0
virtual void connect_toggled(const Link< Toggleable &, void > &rLink)
Definition: weld.hxx:1579
Link< Toggleable &, void > m_aToggleHdl
Definition: weld.hxx:1536
FieldUnit
TriState
TRISTATE_FALSE
TRISTATE_INDET
std::function< std::unique_ptr< UIObject >(vcl::Window *)> FactoryFunction
sal_uInt16 nPos
#define LISTBOX_ENTRY_NOTFOUND
Definition: lstbox.hxx:37
int i
index
long Long
ImageType
Definition: vclenum.hxx:280
WindowDataMask
Definition: windowstate.hxx:43
ColumnToggleType
Definition: weld.hxx:895
Placement
Definition: weld.hxx:2390
std::tuple< tools::JsonWriter &, const TreeIter &, std::string_view > json_prop_query
Definition: weld.hxx:1385
EntryMessageType
Definition: weld.hxx:703
LabelType
Definition: weld.hxx:2182
std::vector< ScreenShotEntry > ScreenShotCollection
Definition: weld.hxx:522
PointerStyle
Definition: ptrstyle.hxx:26
SalInstanceTreeIter(const SalInstanceTreeIter *pOrig)
SalInstanceTreeIter(SvTreeListEntry *pIter)
SvTreeListEntry * iter
virtual bool equal(const TreeIter &rOther) const override
const tools::Long nButtonWidth
std::tuple< vcl::RenderContext &, const tools::Rectangle &, const SvTreeListEntry & > svtree_render_args
std::pair< vcl::RenderContext &, const SvTreeListEntry & > svtree_measure_args
unsigned char sal_uInt8
OUString sId
SelectionMode
Definition: vclenum.hxx:26
VclPolicyType
Definition: vclenum.hxx:243
TxtAlign
Definition: vclenum.hxx:316
css::uno::Reference< css::accessibility::XAccessibleRelationSet > a11yrelationset
Definition: weld.hxx:52
css::uno::Reference< css::accessibility::XAccessible > a11yref
Definition: weld.hxx:51
WinBits const WB_NOPOINTERFOCUS
Definition: wintypes.hxx:155
WinBits const WB_FLATBUTTON
Definition: wintypes.hxx:186
WinBits const WB_SORT
Definition: wintypes.hxx:158
size_t pos