aboutsummaryrefslogtreecommitdiff
path: root/src/views/nodes/DocumentView.tsx
diff options
context:
space:
mode:
authormadelinegr <mgriswold99@gmail.com>2019-02-12 19:25:28 -0500
committermadelinegr <mgriswold99@gmail.com>2019-02-12 19:25:28 -0500
commit837509322d7e556830c57653828e223b06eb38a6 (patch)
tree0af1076c9535ba6cd912d331ec61bcef951563bb /src/views/nodes/DocumentView.tsx
parent1d667d19f5402dc9f9069e0a57008dac96f6de2a (diff)
fixed bugs with launching
Diffstat (limited to 'src/views/nodes/DocumentView.tsx')
-rw-r--r--src/views/nodes/DocumentView.tsx134
1 files changed, 0 insertions, 134 deletions
diff --git a/src/views/nodes/DocumentView.tsx b/src/views/nodes/DocumentView.tsx
deleted file mode 100644
index f955a8c39..000000000
--- a/src/views/nodes/DocumentView.tsx
+++ /dev/null
@@ -1,134 +0,0 @@
-import { observer } from "mobx-react";
-import React = require("react");
-import { computed } from "mobx";
-import { KeyStore, Key } from "../../fields/Key";
-import { NumberField } from "../../fields/NumberField";
-import { TextField } from "../../fields/TextField";
-import { DocumentViewModel } from "../../viewmodels/DocumentViewModel";
-import { ListField } from "../../fields/ListField";
-import { FieldTextBox } from "../nodes/FieldTextBox"
-import { FreeFormCanvas } from "../freeformcanvas/FreeFormCanvas"
-import { CollectionFreeFormView } from "../freeformcanvas/CollectionFreeFormView"
-import "./NodeView.scss"
-const JsxParser = require('react-jsx-parser').default;//TODO Why does this need to be imported like this?
-
-interface IProps {
- dvm: DocumentViewModel;
-}
-
-@observer
-export class DocumentView extends React.Component<IProps> {
- @computed
- get x(): number {
- return this.props.dvm.Doc.GetFieldValue(KeyStore.X, NumberField, Number(0));
- }
-
- @computed
- get y(): number {
- return this.props.dvm.Doc.GetFieldValue(KeyStore.Y, NumberField, Number(0));
- }
-
- set x(x: number) {
- this.props.dvm.Doc.SetFieldValue(KeyStore.X, x, NumberField)
- }
-
- set y(y: number) {
- this.props.dvm.Doc.SetFieldValue(KeyStore.Y, y, NumberField)
- }
-
- @computed
- get transform(): string {
- return `translate(${this.x}px, ${this.y}px)`;
- }
-
- @computed
- get width(): number {
- return this.props.dvm.Doc.GetFieldValue(KeyStore.Width, NumberField, Number(0));
- }
-
- @computed
- get height(): number {
- return this.props.dvm.Doc.GetFieldValue(KeyStore.Height, NumberField, Number(0));
- }
-
- @computed
- get layout(): string {
- return this.props.dvm.Doc.GetFieldValue(KeyStore.Layout, TextField, String("<p>Error loading layout data</p>"));
- }
-
- @computed
- get layoutKeys(): Key[] {
- return this.props.dvm.Doc.GetFieldValue(KeyStore.LayoutKeys, ListField, new Array<Key>());
- }
-
- @computed
- get layoutFields(): Key[] {
- return this.props.dvm.Doc.GetFieldValue(KeyStore.LayoutFields, ListField, new Array<Key>());
- }
-
- private _isPointerDown = false;
-
- onPointerDown = (e: React.PointerEvent): void => {
- e.stopPropagation();
- if (e.button === 2) {
- this._isPointerDown = true;
- document.removeEventListener("pointermove", this.onPointerMove);
- document.addEventListener("pointermove", this.onPointerMove);
- document.removeEventListener("pointerup", this.onPointerUp);
- document.addEventListener("pointerup", this.onPointerUp);
- }
- }
-
- onPointerUp = (e: PointerEvent): void => {
- e.stopPropagation();
- if (e.button === 2) {
- e.preventDefault();
- this._isPointerDown = false;
- document.removeEventListener("pointermove", this.onPointerMove);
- document.removeEventListener("pointerup", this.onPointerUp);
- }
- }
-
- onPointerMove = (e: PointerEvent): void => {
- e.stopPropagation();
- e.preventDefault();
- if (!this._isPointerDown) {
- return;
- }
- this.x += e.movementX;
- this.y += e.movementY;
- }
-
- render() {
- let doc = this.props.dvm.Doc;
- let bindings: any = {
- doc: doc
- };
- for (const key of this.layoutKeys) {
- bindings[key.Name + "Key"] = key;
- }
- for (const key of this.layoutFields) {
- let field = doc.GetField(key);
- if (field) {
- bindings[key.Name] = field.GetValue();
- }
- }
- return (
- <div className="node" style={{
- transform: this.transform,
- width: this.width,
- height: this.height
- }} onPointerDown={this.onPointerDown} onContextMenu={
- (e) => {
- e.preventDefault()
- }}>
- <JsxParser
- components={{ FieldTextBox, FreeFormCanvas, CollectionFreeFormView }}
- bindings={bindings}
- jsx={this.layout}
- />
- </div>
- );
- }
-
-} \ No newline at end of file