ironflow.gui.canvas_widgets.base module

Shared code among various canvas widgets.

class ironflow.gui.canvas_widgets.base.CanvasWidget(x: Number, y: Number, parent: FlowCanvas | CanvasWidget, layout: Layout, selected: bool = False, title: Optional[str] = None)[source]

Bases: ABC

Parent class for all “widgets” that exist inside the scope of the flow canvas.

add_widget(widget: CanvasWidget) None[source]
add_x_y(dx_in: Union[int, float], dy_in: Union[int, float]) None[source]
property canvas: Canvas
property color: str
deselect() None[source]
deselect_all() None[source]
draw() None[source]
draw_shape() None[source]
abstract draw_title() None[source]
property flow: Flow
property flow_canvas: FlowCanvas
get_element_at_xy(x_in: Union[int, float], y_in: Union[int, float]) ironflow.gui.canvas_widgets.base.CanvasWidget | None[source]
property gui: GUI
property height: int
is_here(x_in: Union[int, float], y_in: Union[int, float]) bool[source]
abstract on_click(last_selected_object: Optional[CanvasWidget]) ironflow.gui.canvas_widgets.base.CanvasWidget | None[source]
on_double_click() ironflow.gui.canvas_widgets.base.CanvasWidget | None[source]
select() None[source]
property selected
set_x_y(x_in: Union[int, float], y_in: Union[int, float]) None[source]
property width: int
property x: Union[int, float]
property y: Union[int, float]
class ironflow.gui.canvas_widgets.base.HideableWidget(x: Number, y: Number, parent: FlowCanvas | CanvasWidget, layout: Layout, selected: bool = False, title: Optional[str] = None, visible: bool = True, hidden_x: Optional[Number] = None, hidden_y: Optional[Number] = None)[source]

Bases: CanvasWidget, ABC

draw() None[source]
property hidden_x: Union[int, float]
property hidden_y: Union[int, float]
hide()[source]
is_here(x_in: Union[int, float], y_in: Union[int, float]) bool[source]
show()[source]
property x: Union[int, float]
property y: Union[int, float]