36 typedef std::unique_ptr<neogfx::label> label_ptr;
37 typedef std::unique_ptr<neogfx::check_box> check_box_ptr;
38 class item_container :
public widget<>
50 static constexpr scalar DEFAULT_PADDING = 5.0;
54 group_box(std::string
const& aText = std::string());
61 void set_checkable(
bool aCheckable,
bool aUpdateItemsEnabledState =
false);
62 const neogfx::label&
label()
const;
71 template <
typename LayoutT,
typename... Args>
74 set_item_layout(to_abstract(make_ref<LayoutT>(std::forward<Args>(args)...)));
92 void update_widgets();
96 std::variant<std::monostate, label_ptr, check_box_ptr> iTitle;
97 item_container iItemContainer;
void set_checkable(bool aCheckable, bool aUpdateItemsEnabledState=false)
group_box(std::string const &aText=std::string())
virtual color fill_color() const
group_box(i_layout &aLayout, std::string const &aText=std::string())
void set_item_layout(i_layout &aItemLayout)
virtual void set_fill_color(const optional_color &aFillColor)
color palette_color(color_role aColorRole) const override
bool has_check_box() const
virtual double fill_opacity() const
i_string const & text() const
neogfx::size_policy size_policy() const override
group_box(i_widget &aParent, std::string const &aText=std::string())
const neogfx::label & label() const
void set_text(i_string const &aText)
virtual color border_color() const
const i_layout & item_layout() const
neogfx::check_box & check_box()
void set_item_layout(i_ref_ptr< i_layout > const &aItemLayout)
bool is_checkable() const
virtual bool has_fill_color() const
virtual void set_border_color(const optional_color &aBorderColor)
virtual bool has_border_color() const
LayoutT & with_item_layout(Args &&... args)
const neogfx::check_box & check_box() const
virtual void set_fill_opacity(double aFillOpacity)
#define define_property(category, type, name, calculator,...)