15 lines
590 B
Zig
15 lines
590 B
Zig
//! Общий интерфейс инструмента. Реализации живут в каталоге tools/.
|
|
|
|
const Point2_f = @import("models/basic_models.zig").Point2_f;
|
|
|
|
/// Контекст вызова: холст и точка в координатах документа.
|
|
pub const ToolContext = struct {
|
|
canvas: *anyopaque,
|
|
document_point: Point2_f,
|
|
};
|
|
|
|
/// Интерфейс инструмента: один метод — клик по холсту в позиции курсора.
|
|
pub const Tool = struct {
|
|
onClick: *const fn (*const ToolContext) void,
|
|
};
|