var _prompt = "Infomation";
var _ask = "Question";
var _webTimeout = "Access timeout because the server is busy or network failure";
var _needsave = "The SPL file has changed. Do you want to save it?";
var _inputfilename = "Please input filename";
var currFile;
var canSave = false;
var dataFileChanged = false;
function alertError( xhr, type, errorThrown ) {
if( type == "abort" ) $.messager.alert( "Error", "Server abort", "error" );
//else $.messager.alert( "Error", xhr.status + " " + type + ":" + errorThrown, "error" );
else $.messager.alert( "Error", _webTimeout, "error" );
}
function loadSplxFile( splx ) {
currFile = splx;
loadDfx();
}
function loadDfx() {
var fname = currFile;
var share = "0";
dfxFrame.loadDfx( fname, share );
//���������ļ�
$.ajax( { type: "POST", url: server + "?d=" + new Date().getTime(),
data: { action: "loadDatafile", dfx: fname },
success: function( msg ) {
if( msg.indexOf( "error:" ) == 0 ) {
alert( msg.substring( 6 ) );
return;
}
if( msg == "" ) return;
var datas = eval( "(" + msg + ")" );
for( var i = 0; i < datas.length; i++ ) {
var dfname = datas[i].name;
var dfdata = datas[i].data;
addDataTab( dfname, dfdata );
}
},
error:function(xhr,type,errorThrown){
alertError( xhr, type, errorThrown );
}
} );
}
function hideDatafileTools() {
if( !canSave ) {
$('#dataTab').tabs( "hideTool" );
}
}
function showDatafileTools() {
if( canSave ) {
$('#dataTab').tabs( "showTool" );
}
}
function saveDfx( flag ) {
dfxFrame.saveDfx( currFile, "", flag );
dfxFrame.raqGrid.changed = false;
dataFileChanged = false;
}
function autoSave() {
if( !canSave ) return;
if( !dfxFrame.raqGrid.changed && !dataFileChanged ) return;
dfxFrame.saveDfx( currFile, "", 0 );
dfxFrame.raqGrid.changed = false;
dataFileChanged = false;
}
function _saveDialogOpened( ) {
var dlg = $('#_savedlg');
var ww = 500;
var hh = 140;
dlg.dialog('resize',{width:ww,height:hh});
dlg.dialog('move',{top:$(document).scrollTop() + (document.body.clientHeight - hh )*0.5,left:$(document).scrollLeft() + (document.body.clientWidth - ww )*0.5});
}
function _saveFile( ) {
var s = $('#dfxname').textbox( "getValue" );
if( s.trim().length == 0 ) {
alert( _inputfilename );
return;
}
var oldname = $('#olddfxname')[0].value;
$("#_savedlg").dialog( "close" );
dfxFrame.saveDfx( s, oldname );
dfxFrame.raqGrid.changed = false;
}
var currArgs, currRunFlag, gridArgs;
function openArgsTable( flag, args ) {
currRunFlag = flag;
currArgs = args;
var s = "
";
$("#argsTbl").html( s );
$("#_argsdlg").dialog( "open" );
}
function _argsDialogOpened( ) {
var dlg = $('#_argsdlg');
var ww = 360;
var hh = 110 + 30 * currArgs.length;
dlg.dialog('resize',{width:ww,height:hh});
dlg.dialog('move',{top:$(document).scrollTop() + (document.body.clientHeight - hh )*0.5,left:$(document).scrollLeft() + (document.body.clientWidth - ww )*0.5});
}
function _argsInputed( ) {
var tbl = $("#argsTbl")[0];
for( var i = 0; i < tbl.rows.length; i++ ) {
var pvalue = tbl.rows[i].cells[1].childNodes[0].value;
currArgs[i].value = pvalue;
}
$("#_argsdlg").dialog( "close" );
dfxFrame.runDfx( currRunFlag, currArgs );
}
function _insertRow() {
if( dfxFrame.raqGrid.editTD == null ) {
alert( _selectCurrCell );
return;
}
var rowno = dfxFrame.raqGrid.editTD.parentNode.rowIndex + 1;
dfxFrame.zsRowCol( rowno, 0, "insertRow" );
}
function _deleteRow() {
if( dfxFrame.raqGrid.editTD == null ) {
alert( _selectCurrCell );
return;
}
var rowno = dfxFrame.raqGrid.editTD.parentNode.rowIndex + 1;
dfxFrame.zsRowCol( rowno, 0, "deleteRow" );
}
function _insertCol() {
if( dfxFrame.raqGrid.editTD == null ) {
alert( _selectCurrCell );
return;
}
var colno = dfxFrame.raqGrid.editTD.cellIndex + 1;
dfxFrame.zsRowCol( 0, colno, "insertCol" );
}
function _deleteCol() {
if( dfxFrame.raqGrid.editTD == null ) {
alert( _selectCurrCell );
return;
}
var colno = dfxFrame.raqGrid.editTD.cellIndex + 1;
dfxFrame.zsRowCol( 0, colno, "deleteCol" );
}
function openArgsEditTable() {
$("#_argseditdlg").dialog( "open" );
if( gridArgs == null ) {
gridArgs = {};
gridArgs.needInput = false;
gridArgs.paramCount = 0;
gridArgs.args = [];
}
if( gridArgs != null ) {
if( gridArgs.needInput ) document.getElementById( "needInputBox" ).checked = true;
else document.getElementById( "needInputBox" ).checked = false;
if( gridArgs.args != null ) {
var data = [];
for( var i = 0; i < gridArgs.args.length; i++ ) {
var p = {};
var arg = gridArgs.args[i];
p.name = arg.name;
p.value = arg.value;
p.remark = arg.remark;
data[i] = p;
}
$("#argsEditTbl").datagrid( "loadData", data );
}
}
}
function _argsEditDialogOpened( ) {
var dlg = $('#_argseditdlg');
var ww = 540;
var hh = 300;
dlg.dialog('resize',{width:ww,height:hh});
dlg.dialog('move',{top:$(document).scrollTop() + (document.body.clientHeight - hh )*0.5,left:$(document).scrollLeft() + (document.body.clientWidth - ww )*0.5});
}
function _argsEdited( ) {
var currrow = $("#argsEditTbl").datagrid( "getSelected" );
if( currrow != null ) {
var rowIndex = $("#argsEditTbl").datagrid( "getRowIndex", currrow );
$("#argsEditTbl").datagrid( "endEdit", rowIndex );
}
if( gridArgs == null ) gridArgs = {};
if( document.getElementById( "needInputBox" ).checked ) gridArgs.needInput = true;
else gridArgs.needInput = false;
var data = $("#argsEditTbl").datagrid( "getData" );
gridArgs.paramCount = data.rows.length;
gridArgs.args = data.rows;
for( var i = 0; i < gridArgs.args.length; i++ ) {
var name = gridArgs.args[i].name;
if( name == null || name.trim() == "" ) {
alert( _inputArgName );
return;
}
}
$("#_argseditdlg").dialog( "close" );
}
function _addArg() {
$("#argsEditTbl").datagrid( "appendRow", {} );
}
function _delArg() {
var currrow = $("#argsEditTbl").datagrid( "getSelected" );
if( currrow == null ) {
alert( _selectARow );
return;
}
var rowIndex = $("#argsEditTbl").datagrid( "getRowIndex", currrow );
$("#argsEditTbl").datagrid( "deleteRow", rowIndex );
}
function addDataTab( datafileName, datas ) {
if( datafileName == null ) {
datafileName = window.prompt( 'Please input data file name', 'data1.txt' );
}
if( datafileName == null || datafileName.trim().length == 0 ) {
alert( 'Not input data file name!' );
return;
}
if( datas == null ) datas = "";
var datatab = $('#dataTab');
var zhidu = "";
if( !canSave ) zhidu = " readonly";
datatab.tabs( 'add',{
title: datafileName,
content: 'Input data lines:'
+ '
',
closable: false
});
dataFileChanged = true;
}
function removeDataTab() {
var datatab = $('#dataTab');
var tab = datatab.tabs('getSelected');
if (tab){
var index = datatab.tabs('getTabIndex', tab);
datatab.tabs('close', index);
}
dataFileChanged = true;
}
function cloneDfx() {
dfxFrame.saveDfx( "null.splx", "", 1 );
}
function getDataFiles() {
var dfs = [];
var datatab = $('#dataTab');
var tabs = datatab.tabs( "tabs" );
if( tabs.length == 0 ) return dfs;
var size = 0;
for( var i = 0; i < tabs.length; i++ ) {
var tab = datatab.tabs( "getTab",i );
var dfname = tab.panel("options").title;
var data = tab.panel("body")[0].childNodes[0].childNodes[1].value;
var df = {};
df.name = dfname;
df.data = data;
dfs[i] = df;
size += data.length;
}
if( size > 10240 ) return [{error:"The size of Data files exceed 10KB"}];
return dfs;
}
function lockEditing() {
$.ajax( { type: "POST", url: server + "?d=" + new Date().getTime(),
data: { action: "lockEditing", splx: currFile }, async: false,
success: function( msg ) {
if( msg.indexOf( "error:" ) == 0 ) {
alert( msg.substring( 6 ) );
return;
}
},
error:function(xhr,type,errorThrown){
alertError( xhr, type, errorThrown );
}
} );
dfxFrame.saveDfx( currFile, "", 1 );
dfxFrame.raqGrid.changed = false;
dataFileChanged = false;
}