diff options
Diffstat (limited to 'src/client/views/nodes/LinkEditor.tsx')
-rw-r--r-- | src/client/views/nodes/LinkEditor.tsx | 35 |
1 files changed, 27 insertions, 8 deletions
diff --git a/src/client/views/nodes/LinkEditor.tsx b/src/client/views/nodes/LinkEditor.tsx index 405574598..3f7b4bf2d 100644 --- a/src/client/views/nodes/LinkEditor.tsx +++ b/src/client/views/nodes/LinkEditor.tsx @@ -2,38 +2,57 @@ import { observable, computed, action } from "mobx"; import React = require("react"); import { SelectionManager } from "../../util/SelectionManager"; import { observer } from "mobx-react"; -import './LinkBox.scss' +import './LinkEditor.scss' import { KeyStore } from '../../../fields/KeyStore' import { props } from "bluebird"; import { DocumentView } from "./DocumentView"; import { Document } from "../../../fields/Document"; -import { ListField } from "../../../fields/ListField"; -import { DocumentManager } from "../../util/DocumentManager"; -import { LinkBox } from "./LinkBox"; +import { TextField } from "../../../fields/TextField"; +import { link } from "fs"; interface Props { - linkBox: LinkBox; linkDoc: Document; + showLinks: () => void; } @observer export class LinkEditor extends React.Component<Props> { + @observable private _nameInput: string = this.props.linkDoc.GetText(KeyStore.Title, ""); + @observable private _descriptionInput: string = this.props.linkDoc.GetText(KeyStore.LinkDescription, ""); + + onSaveButtonPressed = (e: React.PointerEvent): void => { console.log("view down"); e.stopPropagation(); + this.props.linkDoc.SetData(KeyStore.Title, this._nameInput, TextField); + this.props.linkDoc.SetData(KeyStore.LinkDescription, this._descriptionInput, TextField); + + this.props.showLinks(); } + + render() { return ( <div className="edit-container"> - <input className="name-input" type="text" placeholder="Name..."></input> - <input className="description-input" type="text" placeholder="Description"></input> - <div className="save-button"></div> + <input onChange={this.onNameChanged} className="name-input" type="text" value={this._nameInput} placeholder="Name . . ."></input> + <textarea onChange={this.onDescriptionChanged} className="description-input" value={this._descriptionInput} placeholder="Description . . ."></textarea> + <div className="save-button" onPointerDown={this.onSaveButtonPressed}>SAVE</div> </div> ) } + + @action + onNameChanged = (e: React.ChangeEvent<HTMLInputElement>) => { + this._nameInput = e.target.value; + } + + @action + onDescriptionChanged = (e: React.ChangeEvent<HTMLTextAreaElement>) => { + this._descriptionInput = e.target.value; + } }
\ No newline at end of file |