diff options
| author | bob <bcz@cs.brown.edu> | 2019-02-27 14:32:56 -0500 |
|---|---|---|
| committer | bob <bcz@cs.brown.edu> | 2019-02-27 14:32:56 -0500 |
| commit | 42b2b9df4e502986d630df40e12f78d7fa54667b (patch) | |
| tree | 4a1bc328f7a7a037c0de0f672685b35973722901 /src/fields | |
| parent | 498f915675c1a7e6a3c3b332a2ecc77222bb4785 (diff) | |
| parent | 7fb76d3609a012e5cb6342872b66993771696996 (diff) | |
merged with master. fixed select on load.
Diffstat (limited to 'src/fields')
| -rw-r--r-- | src/fields/Document.ts | 5 | ||||
| -rw-r--r-- | src/fields/KeyStore.ts | 3 | ||||
| -rw-r--r-- | src/fields/WebField.ts | 30 |
3 files changed, 35 insertions, 3 deletions
diff --git a/src/fields/Document.ts b/src/fields/Document.ts index 6193ea56c..5b91de6ed 100644 --- a/src/fields/Document.ts +++ b/src/fields/Document.ts @@ -8,6 +8,7 @@ import { ListField } from "./ListField"; import { Server } from "../client/Server"; import { Types } from "../server/Message"; import { UndoManager } from "../client/util/UndoManager"; +import { HtmlField } from "./HtmlField"; export class Document extends Field { public fields: ObservableMap<string, { key: Key, field: Field }> = new ObservableMap(); @@ -125,6 +126,10 @@ export class Document extends Field { return vval; } + GetHtml(key: Key, defaultVal: string): string { + return this.GetData(key, HtmlField, defaultVal); + } + GetNumber(key: Key, defaultVal: number): number { return this.GetData(key, NumberField, defaultVal); } diff --git a/src/fields/KeyStore.ts b/src/fields/KeyStore.ts index 662574396..a3b39735d 100644 --- a/src/fields/KeyStore.ts +++ b/src/fields/KeyStore.ts @@ -26,7 +26,4 @@ export namespace KeyStore { export const Caption = new Key("Caption"); export const ActiveFrame = new Key("ActiveFrame"); export const DocumentText = new Key("DocumentText"); - //determines whether doc views will be selected when they are first loaded - //currently only implemented for FormattedTextView - export const SelectOnLoaded = new Key("SelectOnLoaded"); } diff --git a/src/fields/WebField.ts b/src/fields/WebField.ts new file mode 100644 index 000000000..8f945d686 --- /dev/null +++ b/src/fields/WebField.ts @@ -0,0 +1,30 @@ +import { BasicField } from "./BasicField"; +import { Field, FieldId } from "./Field"; +import { Types } from "../server/Message"; + +export class WebField extends BasicField<URL> { + constructor(data: URL | undefined = undefined, id?: FieldId, save: boolean = true) { + super(data == undefined ? new URL("https://crossorigin.me/" + "https://cs.brown.edu/") : data, save, id); + } + + toString(): string { + return this.Data.href; + } + + ToScriptString(): string { + return `new WebField("${this.Data}")`; + } + + Copy(): Field { + return new WebField(this.Data); + } + + ToJson(): { type: Types, data: URL, _id: string } { + return { + type: Types.Web, + data: this.Data, + _id: this.Id + } + } + +}
\ No newline at end of file |
