diff --git a/sigmajs/sigmajs-tests.ts b/sigmajs/sigmajs-tests.ts index da4b100a8..7f00edee7 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,12 @@ 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(); + }); } diff --git a/sigmajs/sigmajs.d.ts b/sigmajs/sigmajs.d.ts index 2d04deda0..487e42486 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 { + gexf: GexfParser; + json: JsonParser; + } + interface Plugins { dragNodes: DragNodes; } @@ -75,6 +89,7 @@ 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; @@ -99,6 +114,7 @@ declare module SigmaJs{ new(configuration: SigmaConfigs): Sigma; classes:Classes; plugins: Plugins; + parsers: Parsers; } interface Settings {