Progress bar using timing statistics.

This commit is contained in:
2015-06-28 17:41:59 +02:00
parent 5bd8c87f27
commit 47ca2920d7
3 changed files with 67 additions and 5 deletions

View File

@@ -78,14 +78,19 @@ $formFields.=RenderFieldCombo(MultiLang::GetString("Resolution"),"ddlResolution"
$formFields.=RenderFieldCombo(MultiLang::GetString("Format"),"ddlFormat",$Formats,$Format); $formFields.=RenderFieldCombo(MultiLang::GetString("Format"),"ddlFormat",$Formats,$Format);
$formFields.=RenderFieldCombo(MultiLang::GetString("Size"),"ddlSize",MultiLang::ApplyArrayKeys($Sizes),$Size); $formFields.=RenderFieldCombo(MultiLang::GetString("Size"),"ddlSize",MultiLang::ApplyArrayKeys($Sizes),$Size);
//$formFields.=RenderFieldCheckText("Cropping","chkCrop",$Crop,"txtCropFuzz",$CropFuzz); //$formFields.=RenderFieldCheckText("Cropping","chkCrop",$Crop,"txtCropFuzz",$CropFuzz);
$formFields.=RenderFieldButton("","btnScan",MultiLang::GetString("Scan"),"Element_SetVisibility('divLoadBack',true);"); $formFields.=RenderFieldButton("","btnScan",MultiLang::GetString("Scan"),"ShowProgressDialog();");
$formFields.=RenderHidden("hidScanDevice",$Scanner["ScanDevice"]); $formFields.=RenderHidden("hidScanDevice",$Scanner["ScanDevice"]);
$formFields.=RenderHidden("hidScanModel",$Scanner["ScanModel"]); $formFields.=RenderHidden("hidScanModel",$Scanner["ScanModel"]);
$columns=""; $columns="";
$columns.=renderDiv("divColLeft",$formFields); $columns.=renderDiv("divColLeft",$formFields);
$columns.=renderDiv("divColRight",RenderDocument($DestFile)); $columns.=renderDiv("divColRight",RenderDocument($DestFile));
$columns.=RenderCommandLog(); $columns.=RenderCommandLog();
$columns.=RenderDiv("divLoadBack",RenderDiv("divLoading",MultiLang::GetString("Loading"),"divLoading"),"divLoadBack","display:none;"); $columns.=RenderDiv("divLoadBack",
RenderDiv("divLoading",
MultiLang::GetString("Loading").
RenderDiv("divProgressCont",RenderDiv("divProgressBar","","divProgressBar"),"divProgressCont"),
"divLoading"),
"divLoadBack","display:none;");
echo RenderForm("frmMain",$columns); echo RenderForm("frmMain",$columns);

View File

@@ -24,3 +24,41 @@ function Element_ToggleVisibility(element){
} }
} }
function DropDown_GetValue(dropdown){
return dropdown.options[dropdown.selectedIndex].value;
}
function ShowProgressDialog(){
var divLoadBack=GetElement("divLoadBack");
var divLoading=GetElement("divLoading");
var hidScanDevice=GetElement("hidScanDevice");
var ddlResolution=GetElement("ddlResolution");
var ddlFormat=GetElement("ddlFormat");
var ddlSize=GetElement("ddlSize");
Element_SetVisibility("divLoadBack",true);
var keyValue=
hidScanDevice.value+"_"+
DropDown_GetValue(ddlResolution)+"_"+
DropDown_GetValue(ddlFormat)+"_"+
DropDown_GetValue(ddlSize);
var startTime=new Date().getTime() / 1000;
var estimatedTime=0;
if(timings.hasOwnProperty(keyValue)){
estimatedTime=timings[keyValue];
}
var divProgressBar=GetElement("divProgressBar");
var timerFunction=function(){
var timeNow=new Date().getTime() / 1000;
var value=(timeNow-startTime)/estimatedTime;
if(value>1.0){value=1.0;}
if(value<0){value=0;}
divProgressBar.style.width=parseInt(value*100)+"%";
window.setTimeout(timerFunction,300);
};
window.setTimeout(timerFunction,300);
}

View File

@@ -141,11 +141,30 @@ form{
line-height: 30px; line-height: 30px;
width: 150px; width: 150px;
text-align: center; text-align: center;
height: 50px; height: 75px;
margin: -25px auto 0px -75px; margin: -37px auto 0px -75px;
background-image: url("images/loading.gif"); background-image: url("images/loading.gif");
background-repeat: no-repeat; background-repeat: no-repeat;
background-position: 25px; background-position: 25px 20px;
}
.divProgressCont{
position:absolute;
top: 40px;
left: 12px;
width: 125px;
height: 20px;
box-sizing: border-box;
border: solid 1px black;
}
.divProgressBar{
position:absolute;
top: 0;
left: 0;
height: 18px;
background-color: black;
box-sizing: border-box;
} }
.width100px { .width100px {