5#ifndef FTXUI_DOM_SELECTION_HPP
6#define FTXUI_DOM_SELECTION_HPP
22class FTXUI_EXPORT(DOM) Selection {
25 Selection(
int start_x,
int start_y,
int end_x,
int end_y);
27 const Box& GetBox()
const;
29 Selection SaturateHorizontal(Box box);
30 Selection SaturateVertical(Box box);
31 bool IsEmpty()
const {
return empty_; }
33 void AddPart(std::string_view part,
int y,
int left,
int right);
34 std::string GetParts() {
return parts_.str(); }
37 Selection(
int start_x,
int start_y,
int end_x,
int end_y, Selection* parent);
39 const int start_x_ = 0;
40 const int start_y_ = 0;
44 Selection*
const parent_ =
this;
45 const bool empty_ =
true;
46 std::stringstream parts_;