diff --git a/src/Gui/Network/TabMenu.cpp b/src/Gui/Network/TabMenu.cpp index 479e977..0e0a7ec 100644 --- a/src/Gui/Network/TabMenu.cpp +++ b/src/Gui/Network/TabMenu.cpp @@ -8,12 +8,13 @@ #include #include #include +#include enzo::ui::TabMenu::TabMenu(QWidget *parent, Qt::WindowFlags f) : QWidget(parent, f) { std::cout << "ctor\n"; - searchBar_ = new QLineEdit("hello world"); + searchBar_ = new QLineEdit(); auto box = new QVBoxLayout(this); box->addWidget(searchBar_); @@ -28,6 +29,7 @@ void enzo::ui::TabMenu::showOnMouse(float dx, float dy) std::cout << "showing\n"; QPoint cursorPos = mapToParent(mapFromGlobal(QCursor::pos())); std::cout << "tab menu pos: " << cursorPos.x() << " " << cursorPos.y() << "\n"; + searchBar_->clear(); move(cursorPos + QPoint(dx, dy)); show(); setFocus(); @@ -74,3 +76,11 @@ bool enzo::ui::TabMenu::event(QEvent *event) } +void enzo::ui::TabMenu::resizeEvent(QResizeEvent *event) +{ + QPainterPath path; + constexpr float radius = 10; + path.addRoundedRect(contentsRect(), radius, radius); + QRegion region = QRegion(path.toFillPolygon().toPolygon()); + this->setMask(region); +} diff --git a/src/Gui/Network/TabMenu.h b/src/Gui/Network/TabMenu.h index 2a8deee..81677d1 100644 --- a/src/Gui/Network/TabMenu.h +++ b/src/Gui/Network/TabMenu.h @@ -24,5 +24,6 @@ private: protected: void focusOutEvent(QFocusEvent *event) override; bool event(QEvent *event) override; + void resizeEvent(QResizeEvent *event) override; }; }