14#include <egt/canvas.h>
15#include <egt/detail/meta.h>
17#include <egt/slider.h>
54 Policy vertical_policy = Policy::as_needed)
noexcept;
62 Policy horizontal_policy = Policy::as_needed,
63 Policy vertical_policy = Policy::as_needed)
noexcept;
72 Policy horizontal_policy = Policy::as_needed,
73 Policy vertical_policy = Policy::as_needed)
noexcept;
81 Policy horizontal_policy = Policy::as_needed,
82 Policy vertical_policy = Policy::as_needed)
noexcept;
153 this->offset(
Point(offset, m_offset.y()));
168 this->offset(
Point(m_offset.x(), offset));
181 if (detail::change_if_diff<>(m_horizontal_policy, policy))
195 if (detail::change_if_diff<>(m_vertical_policy, policy))
209 if (detail::change_if_diff<>(m_slider_dim, dim))
232 damage(rect + m_offset);
240 return m_hscrollable;
246 return m_vscrollable;
252 const auto& r = offset_range();
254 m_hscrollable = (m_horizontal_policy == Policy::always) ||
255 (m_horizontal_policy == Policy::as_needed && r.width() > 0);
256 m_vscrollable = (m_vertical_policy == Policy::always) ||
257 (m_vertical_policy == Policy::as_needed && r.height() > 0);
276 bool m_hscrollable{
false};
279 bool m_vscrollable{
false};
297 Policy m_horizontal_policy{Policy::as_needed};
300 Policy m_vertical_policy{Policy::as_needed};
A Frame is a Widget that has children widgets.
Definition frame.h:45
Drawing interface for 2D graphics.
Definition painter.h:45
Abstract base serializer class.
Definition serialize.h:34
std::list< std::tuple< std::string, std::string, Serializer::Attributes > > Properties
Definition serialize.h:47
This is a slider that can be used to select integer value from a range.
Definition slider.h:475
int DefaultDim
Define the default dimension type used for geometry.
Definition geometry.h:34
EGT framework namespace.
Definition animation.h:24
A single event that has information about the event and state for the event.
Definition event.h:255