mirror of
https://github.com/slint-ui/slint.git
synced 2025-08-04 18:58:36 +00:00
Add support for using own properties in PopupWindow's x and y properties
This allows positioning popup windows in a way that takes their width/height into account.
This commit is contained in:
parent
ec87f555e9
commit
419042f476
12 changed files with 133 additions and 81 deletions
|
@ -105,12 +105,14 @@ public:
|
|||
slint_windowrc_set_component(&inner, &item_tree_rc);
|
||||
}
|
||||
|
||||
template<typename Component, typename Parent>
|
||||
void show_popup(const Parent *parent_component, cbindgen_private::Point p, bool close_on_click,
|
||||
cbindgen_private::ItemRc parent_item) const
|
||||
template<typename Component, typename Parent, typename XGetter, typename YGetter>
|
||||
void show_popup(const Parent *parent_component, XGetter x_getter, YGetter y_getter,
|
||||
bool close_on_click, cbindgen_private::ItemRc parent_item) const
|
||||
{
|
||||
auto popup = Component::create(parent_component).into_dyn();
|
||||
cbindgen_private::slint_windowrc_show_popup(&inner, &popup, p, close_on_click,
|
||||
auto popup = Component::create(parent_component);
|
||||
cbindgen_private::Point p { x_getter(popup), y_getter(popup) };
|
||||
auto popup_dyn = popup.into_dyn();
|
||||
cbindgen_private::slint_windowrc_show_popup(&inner, &popup_dyn, p, close_on_click,
|
||||
&parent_item);
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue