diff --git a/src/req/renderer/views/circularGenomeBuilderView/circularGenomeBuilderView.tsx b/src/req/renderer/views/circularGenomeBuilderView/circularGenomeBuilderView.tsx index ac748a8ad..0f44f3603 100644 --- a/src/req/renderer/views/circularGenomeBuilderView/circularGenomeBuilderView.tsx +++ b/src/req/renderer/views/circularGenomeBuilderView/circularGenomeBuilderView.tsx @@ -22,6 +22,7 @@ import {FigureSelectOverlay} from "./containers/overlays/figureSelectOverlay"; import {appBar} from "./containers/styles/appBar"; import {EditFigureNameOverlay} from "./containers/overlays/editFigureName"; import { CircularGenomeEditCache, CircularGenomeEditOpts, CircularGenomeEditAction } from './editCache/cirularGenomeEditCache'; +import { changeName } from './editCache/changeName'; export interface CircularGenomeBuilderViewState { figureSelectOvelayOpen: boolean; @@ -43,6 +44,8 @@ export interface CircularGenomeBuilderViewProps { export class CircularGenomeBuilderView extends React.Component { public editCaches : {[index : string] : CircularGenomeEditCache | undefined} = {}; + + private changeName : (figure : CircularFigure,name : string) => void; public constructor(props: CircularGenomeBuilderViewProps) { super(props); @@ -58,6 +61,7 @@ export class CircularGenomeBuilderView extends React.Component { - figure.name = value; - }, - afterCommit : () => { - this.saveFigures(); - }, - rollback : (newFigure : CircularFigure,oldFigure : CircularFigure) => { - newFigure.name = oldFigure.name; - } - } - ); - + this.changeName(figure,value); } }} onClose={()=> diff --git a/src/req/renderer/views/circularGenomeBuilderView/editCache/changeName.ts b/src/req/renderer/views/circularGenomeBuilderView/editCache/changeName.ts new file mode 100644 index 000000000..e9754a774 --- /dev/null +++ b/src/req/renderer/views/circularGenomeBuilderView/editCache/changeName.ts @@ -0,0 +1,19 @@ +import { CircularFigure } from "../../../circularFigure/circularFigure"; +import { CircularGenomeBuilderView } from '../circularGenomeBuilderView'; + +export function changeName(this: CircularGenomeBuilderView, figure: CircularFigure, name: string): void { + this.maybePushEdit( + figure, { + description: `Change name from ${figure.name} to ${name}`, + commit: (figure: CircularFigure) => { + figure.name = name; + }, + afterCommit: () => { + this.saveFigures(); + }, + rollback: (newFigure: CircularFigure, oldFigure: CircularFigure) => { + newFigure.name = oldFigure.name; + } + } + ); +}