aboutsummaryrefslogtreecommitdiff
path: root/include/cru/ui/helper/BorderStyle.hpp
blob: 0ec0d9ee2130ef37a744d4dfa3c61dabb6256383 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#pragma once
#include "cru/ui/Base.hpp"

#include <optional>

namespace cru::ui::helper {
struct BorderStyleOfClickState {
  BorderStyleOfClickState(std::optional<BorderStyle> focus = std::nullopt,
                          std::optional<BorderStyle> not_focus = std::nullopt)
      : focus(std::move(focus)), not_focus(std::move(not_focus)) {}

  std::optional<BorderStyle> focus;
  std::optional<BorderStyle> not_focus;
};

struct BorderStyleList {
  BorderStyle default_one;
  std::optional<BorderStyleOfClickState> normal;
  std::optional<BorderStyleOfClickState> hover;
  std::optional<BorderStyleOfClickState> press;
  std::optional<BorderStyleOfClickState> press_inactive;
};
}  // namespace cru::ui::helper