##// END OF EJS Templates
Added placeAt() method to BuildContext
cin -
r14:9e546fe36fdd v1.0.0-rc7 default
parent child
Show More
@@ -1,7 +1,9
1 import { isNull, mixin, argumentNotNull } from "@implab/core-amd/safe";
1 import { isNull, mixin, argumentNotNull } from "@implab/core-amd/safe";
2 import { isPlainObject, isNode, isBuildContext } from "./traits";
2 import { isPlainObject, isNode, isBuildContext, DojoNodePosition, BuildContext } from "./traits";
3
3
4 export abstract class BuildContextBase {
4 import dom = require("dojo/dom-construct");
5
6 export abstract class BuildContextBase implements BuildContext {
5 _attrs = {};
7 _attrs = {};
6
8
7 _children = new Array();
9 _children = new Array();
@@ -57,6 +59,10 export abstract class BuildContextBase {
57 return this._getDomElement();
59 return this._getDomElement();
58 }
60 }
59
61
62 placeAt(refNode: string | Node, position?: DojoNodePosition) {
63 dom.place(this.getDomElement(), refNode, position);
64 }
65
60 abstract _addChild(child: any): void;
66 abstract _addChild(child: any): void;
61
67
62 abstract _setAttrs(attrs: object): void;
68 abstract _setAttrs(attrs: object): void;
@@ -2,9 +2,12 import _WidgetBase = require("dijit/_Wid
2
2
3 type _WidgetBaseConstructor = typeof _WidgetBase;
3 type _WidgetBaseConstructor = typeof _WidgetBase;
4
4
5 export type DojoNodePosition = "first" | "after" | "before" | "last" | "replace" | "only" | number;
5
6
6 export interface BuildContext {
7 export interface BuildContext {
7 getDomElement(): HTMLElement;
8 getDomElement(): HTMLElement;
9
10 placeAt(refNode: string | Node, position?: DojoNodePosition): void;
8 }
11 }
9
12
10 export function isNode(el: any): el is HTMLElement {
13 export function isNode(el: any): el is HTMLElement {
@@ -2,7 +2,7
2 "extends": "../tsconfig",
2 "extends": "../tsconfig",
3 "compilerOptions": {
3 "compilerOptions": {
4 "baseUrl": ".",
4 "baseUrl": ".",
5 "rootDir": "ts",
5 //"rootDir": "ts",
6 "rootDirs": [
6 "rootDirs": [
7 "ts",
7 "ts",
8 "typings",
8 "typings",
General Comments 0
You need to be logged in to leave comments. Login now