Commit 32ca85fb1861cee6ff01dd1a496d6e674f427674
1 parent
09ff5ae5
Exists in
master
and in
7 other branches
--no commit message
Showing
1 changed file
with
56 additions
and
6 deletions
Show diff stats
classesjs/classe_util.js
| ... | ... | @@ -1293,8 +1293,8 @@ i3GEO.util = { |
| 1293 | 1293 | if(!aguarde){aguarde = true;} |
| 1294 | 1294 | var head,script, tipojanela = i3GEO.janela.ESTILOAGUARDE; |
| 1295 | 1295 | if(!$i(id) || id === ""){ |
| 1296 | - i3GEO.janela.ESTILOAGUARDE = "reduzida"; | |
| 1297 | - i3GEO.janela.abreAguarde(id+"aguarde","Carregando JS"); | |
| 1296 | + //i3GEO.janela.ESTILOAGUARDE = "reduzida"; | |
| 1297 | + //i3GEO.janela.abreAguarde(id+"aguarde","Carregando JS"); | |
| 1298 | 1298 | head= document.getElementsByTagName('head')[0]; |
| 1299 | 1299 | script= document.createElement('script'); |
| 1300 | 1300 | script.type= 'text/javascript'; |
| ... | ... | @@ -2045,10 +2045,17 @@ i3GEO.util = { |
| 2045 | 2045 | */ |
| 2046 | 2046 | dialogoFerramenta: function(mensagem,dir,nome){ |
| 2047 | 2047 | if(typeof(console) !== 'undefined'){console.info(mensagem);} |
| 2048 | + var js = i3GEO.configura.locaplic+"/ferramentas/"+dir+"/index.js.php"; | |
| 2048 | 2049 | if(!$i("i3GEOF."+nome+"_script")){ |
| 2049 | - var js = i3GEO.configura.locaplic+"/ferramentas/"+dir+"/index.js.php"; | |
| 2050 | - i3GEO.util.scriptTag(js,"i3GEOF."+nome+".criaJanelaFlutuante()","i3GEOF."+nome+"_script"); | |
| 2050 | + i3GEO.janela.ESTILOAGUARDE = "reduzida"; | |
| 2051 | + i3GEO.util.multiStep( | |
| 2052 | + [i3GEO.janela.abreAguarde,i3GEO.util.scriptTag], | |
| 2053 | + [["i3GEOF."+nome+"_script"+"aguarde","Carregando JS"],[js,"i3GEOF."+nome+".criaJanelaFlutuante()","i3GEOF."+nome+"_script"]], | |
| 2054 | + function(){} | |
| 2055 | + ); | |
| 2051 | 2056 | } |
| 2057 | + else | |
| 2058 | + {i3GEO.util.scriptTag(js,"i3GEOF."+nome+".criaJanelaFlutuante()","i3GEOF."+nome+"_script");} | |
| 2052 | 2059 | }, |
| 2053 | 2060 | /* |
| 2054 | 2061 | Function: intersectaBox |
| ... | ... | @@ -2269,7 +2276,50 @@ i3GEO.util = { |
| 2269 | 2276 | var txt = "¬" + matriz.join("¬") + "¬"; |
| 2270 | 2277 | var er = new RegExp ("¬" + x + "¬", "gim"); |
| 2271 | 2278 | return ( (txt.match (er)) ? true : false ); |
| 2272 | - } | |
| 2279 | + }, | |
| 2280 | + timedProcessArray: function(items,process,callback){ | |
| 2281 | + var todo = items.concat(); | |
| 2282 | + setTimeout(function() { | |
| 2283 | + var start = +new Date(); | |
| 2284 | + do{ | |
| 2285 | + process(todo.shift()); | |
| 2286 | + } while (todo.length > 0 && (+new date() - start < 50)); | |
| 2287 | + if (todo.length > 0){ | |
| 2288 | + setTimeout(arguments.callee,25); | |
| 2289 | + } | |
| 2290 | + else{ | |
| 2291 | + callback(items); | |
| 2292 | + } | |
| 2293 | + },25); | |
| 2294 | + }, | |
| 2295 | + /* | |
| 2296 | + Function: multiStep | |
| 2297 | + | |
| 2298 | + Implementa a técnica de particionamento para execussão de funções no modo assíncrono | |
| 2299 | + | |
| 2300 | + Conforme página 144 do livro "Javascript de alto desempenho, Nicholas Zakas | |
| 2301 | + | |
| 2302 | + Parâmetros: | |
| 2303 | + | |
| 2304 | + steps {array} - funções que serão executadas | |
| 2305 | + | |
| 2306 | + args {array} - array de arrays com os argumentos de cada função | |
| 2307 | + | |
| 2308 | + callback {function} - função que será executada ao terminar os processos | |
| 2309 | + */ | |
| 2310 | + multiStep: function(steps,args,callback){ | |
| 2311 | + var tasks = steps.concat();//cria um clone | |
| 2312 | + setTimeout(function(){ | |
| 2313 | + var task = tasks.shift(), | |
| 2314 | + a = args.shift(); | |
| 2315 | + task.apply(null, a || []); | |
| 2316 | + if(tasks.length > 0){ | |
| 2317 | + setTimeout(arguments.callee,25); | |
| 2318 | + } else { | |
| 2319 | + callback(); | |
| 2320 | + } | |
| 2321 | + },25); | |
| 2322 | + } | |
| 2273 | 2323 | }; |
| 2274 | 2324 | //++++++++++++++++++++++++++++++++++++ |
| 2275 | 2325 | // YUI ACCORDION |
| ... | ... | @@ -2418,7 +2468,7 @@ try{ |
| 2418 | 2468 | animation.animate(); |
| 2419 | 2469 | } |
| 2420 | 2470 | } |
| 2421 | - }; | |
| 2471 | + } | |
| 2422 | 2472 | } |
| 2423 | 2473 | catch(e){} |
| 2424 | 2474 | // | ... | ... |