21#ifndef GCC_TEXT_ART_TABLE_H
22#define GCC_TEXT_ART_TABLE_H
43 return m_str == other.m_str;
136 int topmost_new_row =
m_size.h;
138 for (
unsigned i = 0;
i < num;
i++)
140 return topmost_new_row;
241 return m_cell_sizes.m_col_widths.m_requirements[table_x];
size< class canvas > size_t
Definition canvas.h:41
coord< class canvas > coord_t
Definition canvas.h:42
const table_cell_content & get_content() const
Definition table.h:115
rect_t m_rect
Definition table.h:120
table_cell_content m_content
Definition table.h:121
x_align m_x_align
Definition table.h:122
canvas::size_t get_min_canvas_size() const
Definition table.h:105
friend class table
Definition table.h:118
friend class table_cell_sizes
Definition table.h:119
void paint_cell_contents_to_canvas(canvas &canvas, canvas::coord_t offset, const table_geometry &tg) const
Definition table.cc:59
bool one_by_one_p() const
Definition table.h:100
y_align m_y_align
Definition table.h:123
cell_placement(rect_t rect, table_cell_content &&content, x_align x_align, y_align y_align)
Definition table.h:89
styled_string m_str
Definition table.h:52
bool operator==(const table_cell_content &other) const
Definition table.h:41
canvas::size_t get_canvas_size() const
Definition table.h:46
table_cell_content()
Definition table.h:38
canvas::size_t m_size
Definition table.h:53
void paint_to_canvas(canvas &canvas, canvas::coord_t top_left) const
Definition table.cc:43
void pass_2(const table &table)
Definition table.cc:471
table_dimension_sizes & m_row_heights
Definition table.h:216
canvas::size_t get_canvas_size(const table::rect_t &rect) const
Definition table.cc:523
void pass_1(const table &table)
Definition table.cc:456
table_dimension_sizes & m_col_widths
Definition table.h:215
table_cell_sizes(table_dimension_sizes &col_widths, table_dimension_sizes &row_heights)
Definition table.h:203
int table_x_to_canvas_x(int table_x) const
Definition table.cc:590
int table_y_to_canvas_y(int table_y) const
Definition table.cc:602
std::vector< int > m_col_start_x
Definition table.h:254
int get_col_width(int table_x) const
Definition table.h:239
canvas::size_t m_canvas_size
Definition table.h:251
void recalc_coords()
Definition table.cc:552
table_geometry(const table &table, table_cell_sizes &cell_sizes)
Definition table.cc:542
canvas::coord_t table_to_canvas(table::coord_t table_coord) const
Definition table.cc:580
std::vector< int > m_row_start_y
Definition table.h:257
table_cell_sizes & m_cell_sizes
Definition table.h:250
const canvas::size_t get_canvas_size() const
Definition table.h:233
canvas::size_t get_canvas_size(const table::rect_t &rect) const
Definition table.h:244
const cell_placement * get_placement_at(coord_t coord) const
Definition table.cc:226
void set_cell_span(rect_t span, table_cell_content &&content, enum x_align x_align=x_align::CENTER, enum y_align y_align=y_align::CENTER)
Definition table.cc:133
size_t m_size
Definition table.h:190
int add_rows(unsigned num)
Definition table.h:134
void maybe_set_cell_span(rect_t span, table_cell_content &&content, enum x_align x_align=x_align::CENTER, enum y_align y_align=y_align::CENTER)
Definition table.cc:155
void paint_cell_contents_to_canvas(canvas &canvas, canvas::coord_t offset, const table_geometry &tg) const
Definition table.cc:443
range< class table > range_t
Definition table.h:81
directions get_connections(int table_x, int table_y) const
Definition table.cc:271
friend class table_cell_sizes
Definition table.h:188
array2< int, size_t, coord_t > m_occupancy
Definition table.h:192
void add_other_table(table &&other, table::coord_t offset)
Definition table.cc:213
int get_occupancy_safe(coord_t coord) const
Definition table.cc:235
rect< class table > rect_t
Definition table.h:82
table & operator=(const table &)=delete
canvas to_canvas(const theme &theme, const style_manager &sm) const
Definition table.cc:172
size< class table > size_t
Definition table.h:79
void debug() const
Definition table.cc:200
std::vector< cell_placement > m_placements
Definition table.h:191
void paint_to_canvas(canvas &canvas, canvas::coord_t offset, const table_geometry &tg, const theme &theme) const
Definition table.cc:186
coord< class table > coord_t
Definition table.h:80
const size_t & get_size() const
Definition table.h:132
void paint_cell_borders_to_canvas(canvas &canvas, canvas::coord_t offset, const table_geometry &tg, const theme &theme) const
Definition table.cc:338
table(size_t size)
Definition table.cc:114
int add_row()
Definition table.h:143
table(const table &)=delete
void set_cell(coord_t coord, table_cell_content &&content, enum x_align x_align=x_align::CENTER, enum y_align y_align=y_align::CENTER)
Definition table.cc:123
static struct table_elt * table[HASH_SIZE]
Definition cse.cc:470
Definition diagnostics/context.h:57
y_align
Definition types.h:490
@ CENTER
Definition types.h:492
x_align
Definition types.h:483
@ CENTER
Definition types.h:485
i
Definition poly-int.h:776
Definition ira-emit.cc:158
table_dimension_sizes m_row_heights
Definition table.h:268
simple_table_geometry(const table &table)
Definition table.cc:612
table_dimension_sizes m_col_widths
Definition table.h:267
table_cell_sizes m_cell_sizes
Definition table.h:269
table_geometry m_tg
Definition table.h:270
std::vector< int > m_requirements
Definition table.h:68
table_dimension_sizes(unsigned num)
Definition table.cc:51
void require(unsigned idx, int amount)
Definition table.h:63