19 #ifndef __CANVAS_TABLE_H__
20 #define __CANVAS_TABLE_H__
22 #include <unordered_map>
43 void set_margin (
double top,
double right = -1.0,
double bottom = -1.0,
double left = -1.0);
46 void set_border_width (
double w) { set_outline_width (w); }
49 void set_collapse_on_hide (
bool);
60 Index (uint32_t xv, uint32_t yv) : x (xv), y (yv) {}
63 return x == other.
x && y == other.
y;
128 std::size_t operator() (Table::Index
const & i)
const {
130 return ((uint64_t) i.x << 32) | i.y;
137 typedef std::unordered_map<Index, CellInfo, index_hash>
Cells;
150 AxisInfo() : expanders (0), shrinkers (0), natural_size (0), expand (0), shrink (0), user_size (0), occupied (false), spacing (0) {}
void size_request(double &w, double &h) const
bool ignore_child_changes
void attach(Item *, uint32_t upper_left_x, uint32_t upper_right_y, PackOptions row_options=PackOptions(0), PackOptions col_options=PackOptions(0), FourDimensions padding=FourDimensions(0.))
void attach_with_span(Item *, uint32_t upper_left_x, uint32_t upper_left_y, uint32_t hspan, uint32_t vspan, PackOptions row_options=PackOptions(0), PackOptions col_options=PackOptions(0), FourDimensions padding=FourDimensions(0.))
void set_row_size(uint32_t row, Distance)
void set_col_size(uint32_t row, Distance)
void set_col_spacing(Distance s)
void set_row_homogenous(bool)
void set_padding(FourDimensions const &padding)
void set_row_spacing(Distance s)
void set_col_homogenous(bool)
void compute_bounding_box() const
void size_allocate_children(Rect const &r)
void child_changed(bool bbox_changed)
std::unordered_map< Index, CellInfo, index_hash > Cells
Duple compute(Rect const &)
void set_homogenous(bool)
void attach(Item *, uint32_t upper_left_x, uint32_t upper_left_y, uint32_t lower_right_x, uint32_t lower_right_y, PackOptions row_options=PackOptions(0), PackOptions col_options=PackOptions(0), FourDimensions padding=FourDimensions(0.))
std::vector< AxisInfo > AxisInfos
bool operator==(const ProcessorSelection &a, const ProcessorSelection &b)
CellInfo(Item *i, PackOptions ro, PackOptions co, Index const &ul, Index const &lr, FourDimensions const &p)
Index(uint32_t xv, uint32_t yv)