From bcb251b36c4515ade7dbcb269d60451e1899c85d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=BB=84=E8=AF=97=E6=B4=A5?= <2723065175@qq.com> Date: Mon, 30 Aug 2021 01:35:26 +0000 Subject: [PATCH] =?UTF-8?q?!1600=20=E4=BC=98=E5=8C=96:=E6=A8=A1=E6=9D=BF?= =?UTF-8?q?=E8=AE=BE=E8=AE=A1=E6=97=B6,=E5=8F=82=E6=95=B0=E9=94=81?= =?UTF-8?q?=E5=AE=9A=E5=90=8E,=E8=A1=A8=E8=BE=BE=E5=BC=8F=E4=B8=8D?= =?UTF-8?q?=E8=83=BD=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/DatabaseServices/Template/Param/TemplateParam.ts | 11 ++++++++--- src/UI/Components/RightPanel/TemplateParamPanel.tsx | 1 + src/UI/Components/Template/TemplateActionDiglog.tsx | 1 + src/UI/Components/Template/TemplateDetail.tsx | 2 +- src/UI/Components/Template/TemplateList.tsx | 1 + src/UI/Components/Template/TemplateParamList.tsx | 7 ++++++- .../Store/RightPanelStore/TemplateParamPanelStore.ts | 3 ++- src/UI/Store/TemplateEditorStore.ts | 2 +- 8 files changed, 21 insertions(+), 7 deletions(-) diff --git a/src/DatabaseServices/Template/Param/TemplateParam.ts b/src/DatabaseServices/Template/Param/TemplateParam.ts index bab297215..b947332c8 100644 --- a/src/DatabaseServices/Template/Param/TemplateParam.ts +++ b/src/DatabaseServices/Template/Param/TemplateParam.ts @@ -35,6 +35,8 @@ export class TemplateParam @AutoRecord option: any[]; @AutoRecord actions: TemplateAction[]; @AutoRecord parent: TemplateRecord; + @AutoRecord isLock = false; + constructor() { //监听 @@ -177,11 +179,14 @@ export class TemplateParam this.actions.length = 0; for (let i = 0; i < count; i++) this.actions.push(file.ReadObject()); + + if (ver > 1) + this.isLock = file.Read(); } //对象将自身数据写入到文件. WriteFile(file: CADFiler) { - file.Write(1); + file.Write(2); file.Write(this.name); file.Write(this.expr); file.Write(this.value); @@ -193,8 +198,8 @@ export class TemplateParam file.Write(this.option); file.Write(this.actions.length); for (let action of this.actions) - { file.WriteObject(action); - } + + file.Write(this.isLock); } } diff --git a/src/UI/Components/RightPanel/TemplateParamPanel.tsx b/src/UI/Components/RightPanel/TemplateParamPanel.tsx index a079c716c..b7705c3d6 100644 --- a/src/UI/Components/RightPanel/TemplateParamPanel.tsx +++ b/src/UI/Components/RightPanel/TemplateParamPanel.tsx @@ -557,6 +557,7 @@ export class TemplateParamDetail extends React.Component<{}> { value={par.expr as string} onChange={e => par.expr = e.target.value as string} onBlur={(e) => { this.ChangeInputUIClass(par); }} + disabled={par.isLock} /> ); diff --git a/src/UI/Components/Template/TemplateActionDiglog.tsx b/src/UI/Components/Template/TemplateActionDiglog.tsx index 91805a8ab..db9151ecf 100644 --- a/src/UI/Components/Template/TemplateActionDiglog.tsx +++ b/src/UI/Components/Template/TemplateActionDiglog.tsx @@ -297,6 +297,7 @@ export class TempalteActionDialog extends React.Component { className={Classes.INPUT} value={par.expr as string} onChange={e => par.expr = e.target.value} - disabled={disabledKeys.includes(par.name)} + disabled={disabledKeys.includes(par.name) || par.isLock} onBlur={e => { if (this.props.onBlur) diff --git a/src/UI/Components/Template/TemplateList.tsx b/src/UI/Components/Template/TemplateList.tsx index 1f26f8530..c883b8963 100644 --- a/src/UI/Components/Template/TemplateList.tsx +++ b/src/UI/Components/Template/TemplateList.tsx @@ -132,6 +132,7 @@ export class TemplateList extends React.Component { value: p.value, description: p.description, expr: p.expr, + isLock: p.isLock }; })); diff --git a/src/UI/Components/Template/TemplateParamList.tsx b/src/UI/Components/Template/TemplateParamList.tsx index a2db4bc45..3a9fcc339 100644 --- a/src/UI/Components/Template/TemplateParamList.tsx +++ b/src/UI/Components/Template/TemplateParamList.tsx @@ -104,7 +104,11 @@ export default class TemplateParamList extends React.Component opt.isLock = !opt.isLock} + onChange={() => + { + opt.isLock = !opt.isLock; + this.updateTempalteParam(opt); + }} /> @@ -271,6 +275,7 @@ export default class TemplateParamList extends React.Component diff --git a/src/UI/Store/RightPanelStore/TemplateParamPanelStore.ts b/src/UI/Store/RightPanelStore/TemplateParamPanelStore.ts index 392d7fad0..d6d092cbe 100644 --- a/src/UI/Store/RightPanelStore/TemplateParamPanelStore.ts +++ b/src/UI/Store/RightPanelStore/TemplateParamPanelStore.ts @@ -427,7 +427,8 @@ export class TemplateParamPanelStore value: p.value, description: p.description, expr: isNaN(Number(p.expr)) ? p.expr : FixedNotZero(p.expr, 2), - isValidExpr: true + isValidExpr: true, + isLock: p.isLock }; })); } diff --git a/src/UI/Store/TemplateEditorStore.ts b/src/UI/Store/TemplateEditorStore.ts index af1c8b332..e80ac1c45 100644 --- a/src/UI/Store/TemplateEditorStore.ts +++ b/src/UI/Store/TemplateEditorStore.ts @@ -35,7 +35,7 @@ export class TempalteEditorStore extends Singleton implements IConfigStore value: FixedNotZero(par.value, 2), description: par.description, expr: par.expr, - isLock: false + isLock: par.isLock }); } }