Skip to content

Commit a1b619e

Browse files
committed
feat: 使用终端创建节点时显示节点id
1 parent d0bf60a commit a1b619e

File tree

2 files changed

+9
-4
lines changed

2 files changed

+9
-4
lines changed

crates/project_graph/src/stage/structs.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ pub trait EntityTrait {
1111
fn render(&self, rc: &mut RenderContext);
1212
}
1313

14-
#[derive(knus::Decode, Debug)]
14+
#[derive(knus::Decode, Debug, Clone)]
1515
pub struct Text {
1616
#[knus(argument, default = nanoid!())]
1717
id: String,
@@ -68,7 +68,7 @@ impl EntityTrait for Text {
6868
}
6969
}
7070

71-
#[derive(knus::Decode)]
71+
#[derive(knus::Decode, Clone)]
7272
#[enum_dispatch(EntityTrait)]
7373
pub enum Entity {
7474
Text(Text),

crates/project_graph/src/terminal.rs

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
11
use egui::Margin;
22

3-
use crate::stage::{Stage, structs::Entity};
3+
use crate::stage::{
4+
Stage,
5+
structs::{Entity, EntityTrait},
6+
};
47

58
pub struct Terminal {
69
input: String,
@@ -78,7 +81,9 @@ impl Terminal {
7881
match knus::parse::<Vec<Entity>>("terminal_input.kdl", &self.input) {
7982
Ok(doc) => {
8083
for entity in doc {
81-
stage.context.add(entity.into());
84+
stage.context.add(entity.clone());
85+
self.history
86+
.push(HistoryItem::Out(entity.id().to_string()));
8287
}
8388
}
8489
Err(e) => {

0 commit comments

Comments
 (0)