Улучшайки
This commit is contained in:
@@ -74,7 +74,7 @@ fn objectTreeRow(open_doc: *WindowContext.OpenDocument, obj: *Object, depth: u32
|
|||||||
.{ .id_extra = row_id, .expand = .horizontal },
|
.{ .id_extra = row_id, .expand = .horizontal },
|
||||||
);
|
);
|
||||||
|
|
||||||
if (is_selected or hovered) {
|
if (hovered) {
|
||||||
const delete_opts: dvui.Options = .{
|
const delete_opts: dvui.Options = .{
|
||||||
.id_extra = row_id +% 1,
|
.id_extra = row_id +% 1,
|
||||||
.margin = dvui.Rect{ .x = 4 },
|
.margin = dvui.Rect{ .x = 4 },
|
||||||
@@ -114,7 +114,11 @@ fn objectTree(ctx: *WindowContext) void {
|
|||||||
if (object_callback) |callback| {
|
if (object_callback) |callback| {
|
||||||
switch (callback) {
|
switch (callback) {
|
||||||
.select => |obj| {
|
.select => |obj| {
|
||||||
|
if (open_doc.selected_object == obj) {
|
||||||
|
open_doc.selected_object = null;
|
||||||
|
} else {
|
||||||
open_doc.selected_object = obj;
|
open_doc.selected_object = obj;
|
||||||
|
}
|
||||||
},
|
},
|
||||||
.delete => |obj| {
|
.delete => |obj| {
|
||||||
_ = doc.removeObject(obj);
|
_ = doc.removeObject(obj);
|
||||||
@@ -136,7 +140,9 @@ pub fn leftPanel(ctx: *WindowContext) void {
|
|||||||
.{ .dir = .vertical },
|
.{ .dir = .vertical },
|
||||||
.{
|
.{
|
||||||
.expand = .vertical,
|
.expand = .vertical,
|
||||||
|
// Фиксированная ширина левой панели
|
||||||
.min_size_content = .{ .w = 220 },
|
.min_size_content = .{ .w = 220 },
|
||||||
|
.max_size_content = .{ .h = undefined, .w = 220 },
|
||||||
.background = true,
|
.background = true,
|
||||||
.padding = padding,
|
.padding = padding,
|
||||||
},
|
},
|
||||||
@@ -199,10 +205,14 @@ pub fn leftPanel(ctx: *WindowContext) void {
|
|||||||
},
|
},
|
||||||
);
|
);
|
||||||
{
|
{
|
||||||
dvui.label(@src(), "Objects", .{}, .{});
|
dvui.label(@src(), "Objects", .{}, .{ .font = .{
|
||||||
|
.id = dvui.themeGet().font_heading.id,
|
||||||
|
.line_height_factor = dvui.themeGet().font_heading.line_height_factor,
|
||||||
|
.size = dvui.themeGet().font_heading.size + 8,
|
||||||
|
}, .gravity_x = 0.5 });
|
||||||
var scroll = dvui.scrollArea(
|
var scroll = dvui.scrollArea(
|
||||||
@src(),
|
@src(),
|
||||||
.{ .vertical = .auto },
|
.{ .vertical = .auto, .horizontal = .auto },
|
||||||
.{ .expand = .both, .background = false },
|
.{ .expand = .both, .background = false },
|
||||||
);
|
);
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user