Widget Fixes

This commit is contained in:
IlyaShurupov 2024-10-18 00:21:57 +03:00 committed by Ilya Shurupov
parent 8c4ba37e59
commit b1ba1c2975
7 changed files with 75 additions and 42 deletions

View file

@ -16,7 +16,7 @@ void ScrollableLayout::updateLayout(bool vertical) {
if (!scroller || !content) return;
updateWidgetRects(getArea(), content, scroller);
updateWidgetRects(getArea().relative(), content, scroller);
}
void ScrollableLayout::updateWidgetRects(const RectF& area, Widget* content, ScrollableBarWidget* scroller) const {

View file

@ -1,4 +1,5 @@
#include "FloatingWidget.hpp"
#include "ScrollableLayout.hpp"
using namespace tp;
@ -47,3 +48,25 @@ const FloatingLayout* FloatingWidget::layout() const {
return dynamic_cast<const FloatingLayout*>(Widget::getLayout());
}
FloatingMenu::FloatingMenu() : FloatingWidget() {
setDebug("float menu", { 0.0, 0.9, 0.1, 0.7 });
// addChild(&mMenuLayout);
addChild(&mHeader);
addChild(&mBodyLayout);
mHeader.setText("Menu");
mHeader.setSizePolicy(SizePolicy::Expanding, SizePolicy::Minimal);
mBodyLayout.setSizePolicy(SizePolicy::Expanding, SizePolicy::Expanding);
mBodyLayout.setLayout(new ScrollableLayout(&mBodyLayout));
mBodyLayout.addChild(&mScrollBar);
mBodyLayout.addChild(&mContentWidget);
mContentWidget.setSizePolicy(SizePolicy::Minimal, SizePolicy::Minimal);
// getLayout()->setLayoutPolicy(LayoutPolicy::Vertical);
// mBodyLayout.getLayout()->setLayoutPolicy(LayoutPolicy::Vertical);
}