blob: f88ec157e73457517236922309ea82d7b9e1c022 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
#pragma once
#include "control.hpp"
namespace cru::ui {
class ContentControl : public Control {
protected:
ContentControl();
public:
ContentControl(const ContentControl& other) = delete;
ContentControl(ContentControl&& other) = delete;
ContentControl& operator=(const ContentControl& other) = delete;
ContentControl& operator=(ContentControl&& other) = delete;
~ContentControl() override;
const std::vector<Control*>& GetChildren() const override final {
return child_vector_;
}
Control* GetChild() const { return child_; }
void SetChild(Control* child);
protected:
virtual void OnChildChanged(Control* old_child, Control* new_child);
private:
std::vector<Control*> child_vector_;
Control*& child_;
};
} // namespace cru::ui
|