Return Widget::children() by reference.

This commit is contained in:
Jared Boone 2016-02-07 11:24:25 -08:00
parent 2b6bc03408
commit 5a66c68861
2 changed files with 9 additions and 5 deletions

View file

@ -94,7 +94,7 @@ public:
virtual bool on_key(const KeyEvent event);
virtual bool on_encoder(const EncoderEvent event);
virtual bool on_touch(const TouchEvent event);
virtual const std::vector<Widget*> children() const;
virtual const std::vector<Widget*>& children() const;
virtual Context& context() const;
@ -136,6 +136,8 @@ private:
.highlighted = false,
.visible = false,
};
static const std::vector<Widget*> no_children;
};
class View : public Widget {
@ -154,7 +156,7 @@ public:
void add_child(Widget* const widget);
void add_children(const std::vector<Widget*>& children);
void remove_child(Widget* const widget);
const std::vector<Widget*> children() const override;
const std::vector<Widget*>& children() const override;
virtual std::string title() const;