73 struct no_root : std::logic_error {
no_root() : std::logic_error(
"neogfx::i_widget::no_root") {} };
74 struct no_surface : std::logic_error {
no_surface() : std::logic_error(
"neogfx::i_widget::no_surface") {} };
76 struct not_child : std::logic_error {
not_child() : std::logic_error(
"neogfx::i_widget::not_child") {} };
83 struct no_layout : std::logic_error {
no_layout() : std::logic_error(
"neogfx::i_widget::no_layout") {} };
114 virtual widget_list::const_iterator
last()
const = 0;
115 virtual widget_list::iterator
last() = 0;
116 virtual widget_list::const_iterator
find(
const i_widget& aChild,
bool aThrowIfNotFound =
true)
const = 0;
117 virtual widget_list::iterator
find(
const i_widget& aChild,
bool aThrowIfNotFound =
true) = 0;
175 virtual bool update(
bool aIncludeNonClient =
false) = 0;
202 virtual const neogfx::font&
font()
const = 0;
203 virtual void set_font(optional_font
const& aFont) = 0;
209 virtual bool show(
bool aVisible) = 0;
215 virtual bool entered(
bool aChildEntered =
false)
const = 0;
231 virtual bool set_focus(focus_reason aFocusReason = focus_reason::Other) = 0;
257 template <
typename WidgetType,
typename... Args>
260 auto newWidget = std::make_shared<WidgetType>(std::forward<Args>(args)...);
302 remove(aChild, aSingular, ref);
442 template <
typename WidgetType,
typename... OtherBases>
448 template <
typename... Args>
point_type top_left() const
virtual const i_widget & as_widget() const =0
bool is_managing_layout() const override
layout_manager(Args &&... aArgs)
logical_coordinate_system
basic_mouse_event< mouse_event_location::NonClient > non_client_mouse_event
#define declare_event(declName,...)