Website/static/slides/cse562sp2015/20-LowLevelLayout/assets/player/ScriptManager.js

1 line
25 KiB
JavaScript
Raw Normal View History

2016-02-11 09:37:51 -05:00
var kShowSizeDidChangeEvent="ScriptManager:ShowSizeDidChangeEvent";var kScriptDidDownloadEvent="ScriptManager:ScriptDidDownloadEvent";var kScriptDidNotDownloadEvent="ScriptManager:ScriptDidNotDownloadEvent";var kSlideDidDownloadEvent="SlideManager:SlideDidDownloadEvent";var kSlideDidNotDownloadEvent="SlideManager:SlideDidNotDownloadEvent";var ScriptManager=Class.create({initialize:function(a){this.script=null;this.showUrl=a;this.slideManager=null;document.observe(kSlideDidDownloadEvent,this.handleSlideDidDownloadEvent.bind(this));document.observe(kSlideDidNotDownloadEvent,this.handleSlideDidDownloadEvent.bind(this))},handleSlideDidDownloadEvent:function(d){var l=true;for(var m in this.slideManager.slides){if(this.slideManager.slides.hasOwnProperty(m)){if(!this.slideManager.slides[m].downloaded){l=false;break}}}if(l){this.script.events=[];this.script.originalEvents=[];this.script.slideIndexFromSceneIndexLookup={};this.script.sceneIndexFromSlideIndexLookup={};this.script.slides={};this.script.originalSlides={};var n,h,j,g,k=0,b=0,a=0;for(var m in this.slideManager.slides){if(this.slideManager.slides.hasOwnProperty(m)){j=this.slideManager.slides[m].script;g=this.slideManager.slides[m].originalScript;n=j.events;h=g.events;this.script.slides[m]=j;this.script.originalSlides[m]=g;this.script.sceneIndexFromSlideIndexLookup[k]=b;for(var f=0,e=n.length;f<e;f++){this.script.events.push(n[f]);this.script.originalEvents.push(h[f]);this.script.slideIndexFromSceneIndexLookup[a]=k;a+=1}k+=1;b=a}}this.script.numScenes=this.script.events.length;this.script.lastSceneIndex=this.script.numScenes-1;this.script.lastSlideIndex=this.script.slideList.length-1;this.script.originalSlideWidth=this.script.slideWidth;this.script.originalSlideHeight=this.script.slideHeight;if(browserPrefix==="ms"){this.adjustScriptForIE()}else{this.adjustScript()}if(this.delegate.setViewScale){this.applyScaleFactor();this.delegate.setViewScale(this.scaleFactor)}if(this.delegate.isUsingPreloadedFont&&this.delegate.isUsingPreloadedFont()){var c=document.createElement("style");c.type="text/css";c.appendChild(document.createTextNode(this.delegate.getFontFamilyDefinitionsCssString()));document.getElementsByTagName("head")[0].appendChild(c)}else{this.getFontFamilyDefinitionsCssString()}document.fire(kScriptDidDownloadEvent,{script:this.script,delegate:this.delegate});document.fire(kShowSizeDidChangeEvent,{width:this.script.slideWidth,height:this.script.slideHeight})}},getFontFamilyDefinitionsCssString:function(){if(typeof(GSFT)==="undefined"){GSFT={}}GSFT.FontFamilyDefinitionsJsonp=GSFT.FontFamilyDefinitionsJsonp||{};GSFT.FontFamilyDefinitionsJsonp.urlPrefix="https://www.icloud.com";GSFT.FontFamilyDefinitionsJsonp.cssStringDictReady=function(d){var g="";var f=gShowController.scriptManager.script.fonts;var c=document.createElement("style");c.type="text/css";for(var b=0,e=f.length;b<e;b++){var a=f[b];if(d[a]){g=g+d[a]}}c.appendChild(document.createTextNode(g));document.getElementsByTagName("head")[0].appendChild(c)};(function(){var a=document.createElement("script");a.src=GSFT.FontFamilyDefinitionsJsonp.urlPrefix+"/iw/fonts/font_family_definitions_jsonp.json";document.getElementsByTagName("head")[0].appendChild(a)})()},adjustScript:function(){for(var c=0,f=this.script.events.length;c<f;c++){var d=this.script.events[c];var e=this.script.originalEvents[c];for(var h=0,o=d.effects.length;h<o;h++){var s=d.effects[h];var m=e.effects[h];this.adjustEffects(s,m);this.adjustEmphasisBuilds(s,m);if(isMacOS&&isChrome){this.adjustEffectsForChrome(s,m)}if(browserPrefix==="moz"){this.adjustEffectsForFirefox(s,m)}}for(var h=0,b=d.hyperlinks.length;h<b;h++){var q=d.hyperlinks[h];var n=e.hyperlinks[h];for(var r in q.events){var k=q.events[r];var l=n.events[r];for(var g=0,o=k.effects.length;g<o;g++){var p=k.effects[g];var a=l.effects[g];this.adjustEffects(p,a);this.adjustEmphasisBuilds(p,a);if(isMacOS&&isChrome){this.adjustEffectsForChrome(s,m)}if(browserPrefix==="moz"){this.adjustEffectsForFirefox(s,m)}}}}}},adjustEffects:function(k,h){switch(k.name){case"apple:doorway":var j=h.baseLayer.layers