implement Menu layout
This commit is contained in:
parent
96360a2310
commit
52930a6132
|
@ -1,11 +1,54 @@
|
||||||
#include <QWidget>
|
#include <QWidget>
|
||||||
|
#include <QVBoxLayout>
|
||||||
|
#include <QPainter>
|
||||||
#include "menu.h"
|
#include "menu.h"
|
||||||
|
|
||||||
|
MenuItem::MenuItem(QWidget *parent)
|
||||||
|
: FlatButton(parent)
|
||||||
|
{
|
||||||
|
setMinimumHeight(40);
|
||||||
|
}
|
||||||
|
|
||||||
|
MenuItem::MenuItem(const QString &text, QWidget *parent)
|
||||||
|
: FlatButton(text, parent)
|
||||||
|
{
|
||||||
|
setMinimumHeight(40);
|
||||||
|
}
|
||||||
|
|
||||||
|
MenuItem::~MenuItem()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
Menu::Menu(QWidget *parent)
|
Menu::Menu(QWidget *parent)
|
||||||
: QWidget(parent)
|
: QWidget(parent)
|
||||||
{
|
{
|
||||||
|
QVBoxLayout *layout = new QVBoxLayout;
|
||||||
|
setLayout(layout);
|
||||||
|
|
||||||
|
layout->setMargin(0);
|
||||||
|
layout->setSpacing(0);
|
||||||
|
|
||||||
|
QSizePolicy policy;
|
||||||
|
policy.setHorizontalPolicy(QSizePolicy::Expanding);
|
||||||
|
policy.setVerticalPolicy(QSizePolicy::Maximum);
|
||||||
|
setSizePolicy(policy);
|
||||||
|
|
||||||
|
layout->addWidget(new MenuItem("Item #1"));
|
||||||
|
layout->addWidget(new MenuItem("Item #2"));
|
||||||
|
layout->addWidget(new MenuItem("Item #3"));
|
||||||
|
layout->addWidget(new MenuItem("Item #4"));
|
||||||
}
|
}
|
||||||
|
|
||||||
Menu::~Menu()
|
Menu::~Menu()
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void Menu::paintEvent(QPaintEvent *event)
|
||||||
|
{
|
||||||
|
QPainter painter(this);
|
||||||
|
|
||||||
|
painter.fillRect(rect(), Qt::white);
|
||||||
|
painter.drawRect(rect().adjusted(0, 0, -1, -1));
|
||||||
|
|
||||||
|
QWidget::paintEvent(event);
|
||||||
|
}
|
||||||
|
|
|
@ -2,6 +2,17 @@
|
||||||
#define MENU_H
|
#define MENU_H
|
||||||
|
|
||||||
#include <QWidget>
|
#include <QWidget>
|
||||||
|
#include "flatbutton.h"
|
||||||
|
|
||||||
|
class MenuItem : public FlatButton
|
||||||
|
{
|
||||||
|
Q_OBJECT
|
||||||
|
|
||||||
|
public:
|
||||||
|
explicit MenuItem(QWidget *parent = 0);
|
||||||
|
explicit MenuItem(const QString &text, QWidget *parent = 0);
|
||||||
|
~MenuItem();
|
||||||
|
};
|
||||||
|
|
||||||
class Menu : public QWidget
|
class Menu : public QWidget
|
||||||
{
|
{
|
||||||
|
@ -10,6 +21,9 @@ class Menu : public QWidget
|
||||||
public:
|
public:
|
||||||
explicit Menu(QWidget *parent = 0);
|
explicit Menu(QWidget *parent = 0);
|
||||||
~Menu();
|
~Menu();
|
||||||
|
|
||||||
|
protected:
|
||||||
|
void paintEvent(QPaintEvent *event);
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // MENU_H
|
#endif // MENU_H
|
||||||
|
|
Loading…
Reference in New Issue