diff --git a/sigmajs/sigmajs-tests.ts b/sigmajs/sigmajs-tests.ts index da4b100a8..7163471a6 100644 --- a/sigmajs/sigmajs-tests.ts +++ b/sigmajs/sigmajs-tests.ts @@ -14,6 +14,10 @@ module SigmaJsTests { container: container }); + s.bind('clickNode', (e) => { + s.refresh(); + }); + var N = 100; var E = 500; // Generate a random graph: @@ -41,4 +45,21 @@ module SigmaJsTests { sigma.plugins.dragNodes(s, s.renderers[0]); s.renderers[0].resize(); s.refresh(); + + sigma.parsers.json('myGraph.json', s, () => { + s.refresh(); + }); + + sigma.parsers.gexf('myGraph.gexf', s, () => { + s.refresh(); + }); + + s.configForceAtlas2({ + worker: true + }); + + s.isForceAtlas2Running(); + s.killForceAtlas2(); + s.startForceAtlas2(); + s.stopForceAtlas2(); } diff --git a/sigmajs/sigmajs.d.ts b/sigmajs/sigmajs.d.ts index 2d04deda0..dae23464f 100644 --- a/sigmajs/sigmajs.d.ts +++ b/sigmajs/sigmajs.d.ts @@ -28,9 +28,18 @@ declare module SigmaJs{ target: string; } + interface JsonParser { + (target: string, sigma: Sigma, callback: (graph: Sigma) => void): void; + } + + interface GexfParser { + (target: string, sigma: Sigma, callback: (graph: Sigma) => void): void; + } + interface Graph { addEdge(edge: Edge): Graph; addNode(node: Node): Graph; + addMethod(name: string, method: (input: any) => any): void; clear(): Graph; degree(id: string): number; degree(id: string, type: string): number; @@ -56,6 +65,11 @@ declare module SigmaJs{ y?: number; } + interface Parsers { + json: JsonParser; + gexf: GexfParser; + } + interface Plugins { dragNodes: DragNodes; } @@ -75,12 +89,21 @@ declare module SigmaJs{ interface Sigma { addRenderer(): Renderer; addRenderer(configs: RendererConfigs): Renderer; + bind(event: string, callback: (e: any) => void): void; graph: Graph; killRenderer(renderer: string): Sigma; killRenderer(renderer: Renderer): Sigma; kill(): void; refresh(): void; renderers: Renderer[]; + + // forceAtlas2 layout + configForceAtlas2(configs: { [key: string]: any }): void; + isForceAtlas2Running(): boolean; + killForceAtlas2(): void; + startForceAtlas2(): void; + startForceAtlas2(configs: { [key: string]: any }): void; + stopForceAtlas2(): void; } interface SigmaConfigs { @@ -98,6 +121,7 @@ declare module SigmaJs{ new(container: Element): Sigma; new(configuration: SigmaConfigs): Sigma; classes:Classes; + parsers: Parsers; plugins: Plugins; }