implement addMenuItem method

This commit is contained in:
laserpants 2016-04-18 10:36:40 +03:00
parent 52930a6132
commit d2e33cc17e
4 changed files with 27 additions and 7 deletions

View File

@ -7,12 +7,14 @@ MenuItem::MenuItem(QWidget *parent)
: FlatButton(parent)
{
setMinimumHeight(40);
//setStyleSheet("text-align: left;");
}
MenuItem::MenuItem(const QString &text, QWidget *parent)
: FlatButton(text, parent)
{
setMinimumHeight(40);
//setStyleSheet("text-align: left;");
}
MenuItem::~MenuItem()
@ -32,17 +34,22 @@ Menu::Menu(QWidget *parent)
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()
{
}
void Menu::addMenuItem(MenuItem *item)
{
layout()->addWidget(item);
}
void Menu::addMenuItem(const QString &text)
{
addMenuItem(new MenuItem(text));
}
void Menu::paintEvent(QPaintEvent *event)
{
QPainter painter(this);

View File

@ -22,6 +22,9 @@ public:
explicit Menu(QWidget *parent = 0);
~Menu();
void addMenuItem(MenuItem *item);
void addMenuItem(const QString &text);
protected:
void paintEvent(QPaintEvent *event);
};

View File

@ -13,12 +13,22 @@ MenuExamples::MenuExamples(QWidget *parent)
{
Menu *menu = new Menu;
menu->addMenuItem("Maps");
menu->addMenuItem("Books");
menu->addMenuItem("Flights");
menu->addMenuItem("Apps");
ExampleView *view = new ExampleView;
view->setWidget(menu);
Frame *frame = new Frame;
frame->setCodeSnippet(
"hello"
"Menu *menu = new Menu;\n"
"\n"
"menu->addMenuItem(\"Maps\");\n"
"menu->addMenuItem(\"Books\");\n"
"menu->addMenuItem(\"Flights\");\n"
"menu->addMenuItem(\"Apps\");\n"
);
frame->setWidget(view);

View File

@ -7,7 +7,7 @@
void Style::drawPrimitive(PrimitiveElement pe, const QStyleOption *opt, QPainter *p,
const QWidget *w) const
{
// qDebug() << pe;
qDebug() << pe;
switch (pe) {
case PE_FrameFocusRect: