| module.exports = function ( graph ){ |
| |
| var directInputModule = {}; |
| var inputContainer = d3.select("#DirectInputContent"); |
| inputContainer.style("top", "0"); |
| inputContainer.style("position", "absolute"); |
| var textArea = d3.select("#directInputTextArea"); |
| var visibleContainer = false; |
| |
| inputContainer.style("border", "1px solid black"); |
| inputContainer.style("padding", "5px"); |
| inputContainer.style("background", "#fff"); |
| |
| |
| |
| directInputModule.handleDirectUpload = function (){ |
| |
| var text = textArea.node().value; |
| var jsonOBJ; |
| try { |
| jsonOBJ = JSON.parse(text); |
| graph.options().loadingModule().directInput(text); |
| |
| if ( jsonOBJ.class.length > 0 ) { |
| directInputModule.setDirectInputMode(false); |
| } |
| } |
| catch ( e ) { |
| try { |
| |
| graph.options().loadingModule().initializeLoader(); |
| graph.options().loadingModule().requestServerTimeStampForDirectInput( |
| graph.options().ontologyMenu().callbackLoad_Ontology_From_DirectInput, text |
| ); |
| } catch ( error2 ) { |
| console.log("Error " + error2); |
| d3.select("#Error_onLoad").classed("hidden", false); |
| d3.select("#Error_onLoad").node().innerHTML = "Failed to convert the input!"; |
| } |
| } |
| }; |
| |
| directInputModule.handleCloseButton = function (){ |
| directInputModule.setDirectInputMode(false); |
| }; |
| |
| directInputModule.updateLayout = function (){ |
| var w = graph.options().width(); |
| var h = graph.options().height(); |
| textArea.style("width", 0.4 * w + "px"); |
| textArea.style("height", 0.7 * h + "px"); |
| }; |
| |
| directInputModule.setDirectInputMode = function ( val ){ |
| if ( !val ) { |
| visibleContainer = !visibleContainer; |
| } |
| else { |
| visibleContainer = val; |
| } |
| |
| directInputModule.updateLayout(); |
| d3.select("#Error_onLoad").classed("hidden", true); |
| inputContainer.classed("hidden", !visibleContainer); |
| }; |
| |
| |
| d3.select("#directUploadBtn").on("click", directInputModule.handleDirectUpload); |
| d3.select("#close_directUploadBtn").on("click", directInputModule.handleCloseButton); |
| |
| return directInputModule; |
| }; |
|
|
|
|
|
|