рефакторинг небольшой

This commit is contained in:
2026-02-25 21:27:02 +03:00
parent 9202b527e4
commit 5c9ec3167a
8 changed files with 25 additions and 42 deletions

View File

@@ -3,7 +3,7 @@ const dvui = @import("dvui");
const dvui_ext = @import("dvui_ext.zig");
const Canvas = @import("../Canvas.zig");
const Rect_i = @import("../models/basic_models.zig").Rect_i;
const tool_interface = @import("../tool_interface.zig");
const Tool = @import("../Tool.zig");
pub fn canvasView(canvas: *Canvas, content_rect_scale: dvui.RectScale) void {
var textured = dvui_ext.texturedBox(content_rect_scale, dvui.Rect.all(20));
@@ -163,11 +163,11 @@ fn handleCanvasMouse(canvas: *Canvas, scroll: anytype) void {
canvas.cursor_document_point = if (canvas.isContentPointOnDocument(content_pt, natural_scale)) doc_pt else null;
if (canvas.cursor_document_point) |point| {
if (canvas.toolbar.currentDescriptor()) |desc| {
var ctx = tool_interface.ToolContext{
var ctx = Tool.ToolContext{
.canvas = canvas,
.document_point = point,
};
desc.implementation.onClick(&ctx);
desc.implementation.onCanvasClick(&ctx);
}
}
},
@@ -198,7 +198,7 @@ fn drawToolbar(canvas: *Canvas) void {
const is_selected = (canvas.toolbar.selected_index == i);
const opts: dvui.Options = .{
.id_extra = i,
.color_fill = if (is_selected) dvui.Color.transparent else undefined,
.color_fill = if (is_selected) dvui.themeGet().fill else undefined,
};
if (dvui.buttonIcon(@src(), tool_desc.name, tool_desc.icon_tvg, .{}, .{}, opts)) {
canvas.toolbar.select(i);