18#ifndef LIBTEEUI_BUTTON_H_
19#define LIBTEEUI_BUTTON_H_
39 bool roundTopRight,
bool roundBottomLeft,
bool roundBottomRight)
48 const ConvexObjectInfo* coBegin,
const ConvexObjectInfo* coEnd);
67template <
typename Derived,
typename convexElemCount = std::
integral_constant<
size_t, 0>,
68 typename convexObjectCapacity = std::
integral_constant<
size_t, 10>>
83 template <
typename Context>
91 convexElemCount::value >=
92 std::tuple_size<
decltype(Derived::button_drawable_objects)>::value,
93 "Reserved convex element count must be greater or equal to the number of given convex "
94 "objects. Set count by passing ConvexObjectCount(n) to BEGIN_ELEMENT as third "
100 constexpr const size_t convex_object_count =
101 std::tuple_size<
decltype(Derived::button_drawable_objects)>::value;
103 for (
size_t i = 0; i < convex_object_count; ++i) {
113#define CornerRadius(radius) static const constexpr auto button_radius = radius
115#define ButtonColor(color) static const constexpr auto button_color = color
117#define RoundTopLeft static const constexpr bool button_round_top_left = true
118#define RoundTopRight static const constexpr bool button_round_top_right = true
119#define RoundBottomLeft static const constexpr bool button_round_bottom_left = true
120#define RoundBottomRight static const constexpr bool button_round_bottom_right = true
127#define ConvexObjectCount(n) std::integral_constant<size_t, n>
129#define ConvexObjects(convex_objects) \
130 static constexpr const auto button_drawable_objects = convex_objects
132#define ConvexObjectColor(color) static constexpr const auto button_drawable_object_color = color
constexpr const PxPoint * begin() const
Definition: utils.h:657
constexpr const PxPoint * end() const
Definition: utils.h:658
uint32_t Color
Definition: utils.h:594
constexpr void initConvexObjectArray(const Context &context, ConvexObject< capacity >(&out)[size], const Tuple &t, std::index_sequence< I... >)
Definition: utils.h:939
Box< pxs > bounds_
Definition: utils.h:895