|
YODAU 1.0
YEAR OF THE DEPEND ADULT UNDERGARMENT
|
Main stream layout widget: grid plus optional focused view. More...
#include <frontend/include/widgets/board.hpp>


Public Member Functions | |
| board (QWidget *parent=nullptr) | |
| Construct the board widget. | |
| grid_view * | grid_mode () const |
| Access the grid view (thumbnail mode). | |
| stream_cell * | active_cell () const |
| Get the currently active (focused) stream cell, if any. | |
| void | set_active_stream (const QString &name) |
| Make a stream active by name. | |
| void | clear_active () |
| Clear active mode and return the active cell to the grid. | |
| stream_cell * | take_active_cell () |
| Detach and return the active cell without putting it back to grid. | |
Private Attributes | |
| grid_view * | grid |
| Grid view holding all non-active stream cells. | |
| QWidget * | active_container |
| Container widget for the active stream view. | |
| QVBoxLayout * | active_layout |
| Layout inside active_container. | |
| stream_cell * | active_tile |
| Currently active stream cell (reparented into active container). | |
Main stream layout widget: grid plus optional focused view.
The board maintains two display modes simultaneously:
Ownership model:
|
explicit |
Construct the board widget.
Creates:
| parent | Optional parent widget. |
Definition at line 8 of file board.cpp.
References active_layout, active_tile, and grid.
| stream_cell * board::active_cell | ( | ) | const |
Get the currently active (focused) stream cell, if any.
Definition at line 32 of file board.cpp.
References active_tile.
Referenced by controller::active_cell_checked(), controller::apply_template_preview(), controller::on_active_edit_mode_changed(), controller::on_active_labels_enabled_changed(), controller::on_active_line_params_changed(), controller::on_active_line_undo_requested(), controller::on_active_stream_selected(), controller::sync_active_cell_lines(), and controller::tile_for_stream_name().

| void board::clear_active | ( | ) |
Clear active mode and return the active cell to the grid.
If no stream is active, this is a no-op.
Definition at line 66 of file board.cpp.
References active_layout, active_tile, grid, grid_view::put_stream_cell(), and stream_cell::set_active().
Referenced by controller::on_active_stream_selected().


| grid_view * board::grid_mode | ( | ) | const |
| void board::set_active_stream | ( | const QString & | name | ) |
Make a stream active by name.
If a different stream is already active, it is returned to the grid first. The requested cell is taken from the grid, reparented into the active container, marked active, and enlarged.
If name is empty or not found in grid, the call is ignored.
| name | Name of the stream to focus. |
Definition at line 34 of file board.cpp.
References active_layout, active_tile, stream_cell::get_name(), grid, grid_view::put_stream_cell(), stream_cell::set_active(), and grid_view::take_stream_cell().
Referenced by controller::on_active_stream_selected().


| stream_cell * board::take_active_cell | ( | ) |
Detach and return the active cell without putting it back to grid.
The returned cell:
After this call there is no active stream.
Definition at line 80 of file board.cpp.
References active_layout, active_tile, and stream_cell::set_active().
Referenced by controller::handle_show_stream_changed().


|
private |
|
private |
Layout inside active_container.
Definition at line 111 of file board.hpp.
Referenced by board(), clear_active(), set_active_stream(), and take_active_cell().
|
private |
Currently active stream cell (reparented into active container).
Definition at line 115 of file board.hpp.
Referenced by active_cell(), board(), clear_active(), set_active_stream(), and take_active_cell().
|
private |
Grid view holding all non-active stream cells.
Definition at line 105 of file board.hpp.
Referenced by board(), clear_active(), grid_mode(), and set_active_stream().