diff -r aaba47256eea -r d3fff58a7af9 Symbian.org/preview/script/lib/widget.js --- a/Symbian.org/preview/script/lib/widget.js Tue Jul 21 12:22:37 2009 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,301 +0,0 @@ -/** - * widget object constructor - * @param {void} - * widget() - * @return {void} - */ - -if (typeof window.widget == "undefined" || !window.widget) { - window.widget = { - author : 'Nokia WRT Emulation Library', - // widget identifier, dummy value - identifier: 14021981, - isrotationsupported: true, - - // widget event triggers - onshow: null, - onhide: null, - - sysInfo: [], - onload: null, - opacity: 50, - interval: 20, - isFront: false, - preferenceArray: [], - preferenceKey: 0 - }; - - - /** - * Launches the browser with the specified url - * @param {String} url - * openURL() - * @return {Void} - */ - widget.openURL = function(url){ - if (url) { - window.open(url, "New Widget Window", 'height=200 width=250'); - } - } - - - /** - * Returns previously stored preference associated with the specified key - * @param {String} Key preference value to be fetch - * preferenceForKey() - * @return {String} Value - */ - widget.preferenceForKey = function(key){ - - var name = key; //"Nokia_WRT#" + this.path + "#" + key; - - var result = _BRIDGE_REF.helper.readCookie(name); - return result; - } - - - /** - * Stores the key associated with the specified preference - * @param {String} Preference value to be stored - * @param {String} Key Preference value associated to - * setPreferenceForKey() - * @return {Void} - */ - widget.setPreferenceForKey = function(preference, key){ - var value; - //Specifying null for the preference parameter removes the specified key from the preferences - if (key == null) { - if (this.preferenceKey > 0) { - this.preferenceKey--; - } - //delete from cookies - } - value = key;//"Nokia_WRT#" + this.path + "#" + key; - this.preferenceArray[this.preferenceKey] = value; - - _BRIDGE_REF.helper.createCookie(value, preference, 240000); - this.preferenceKey++; - - //save cookie for cookies - _BRIDGE_REF.helper.updateMainCookie(document); - } - - - - /** - * Toggle between Tabbed navigation mode or Cursor mode - * @param {Boolean} Value - * setNavigationEnabled() - * @return {Void} - */ - widget.setNavigationEnabled = function(bool){ - //This function can not be used on preview browser - } - - - - /** - * Open S0-Application identified by UID along with the specified params - * @param {Integer} Uid hexadecimal value to a specified application - * @param {String} Value - * openApplication() - * @return {Void} - */ - widget.openApplication = function(Uid, param){ - alert("openApplication function won't be simulated in this application"); - } - - - - /** - * Prepares the Widget.to do transition to specified transitionState - * @param {String} Value Transition state - * prepareForTransition() - * @return {Void} - */ - widget.prepareForTransition = function(transitionState){ - this.isFront = ("" + transitionState).toLowerCase() != "toback"; - window.document.getElementsByTagName("body")[0].style.opacity = "0.3"; - } - - - - - /** - * Does the animation to make the transition between the specified transitionState - * @param {Void} - * performTransition() - * @return {Void} - */ - widget.performTransition = function(){ - var _self = this; - this.opacity = 0; - this.interval = window.setInterval(function(){ - _self.opacity += 0.2; - if (_self.opacity > 1) { - _self.opacity = 1; - } - window.document.getElementsByTagName("body")[0].style.opacity = _self.opacity + ""; - if (_self.opacity >= 1) { - window.clearInterval(_self.interval); - window.document.getElementsByTagName("body")[0].style.opacity = "1"; - } - //do nothing - }, 50); - //do nothing - } - - - - - - /** - * Set the preferred screen orientation to landscape. - * The display will flip if the phone display orientation - * is portrait and the phone supports landscape mode. - * @param {Void} - * setDisplayLandscape() - * @return {Void} - */ - widget.setDisplayLandscape = function(){ - try { - if (this.isrotationsupported && _BRIDGE_REF.nokia.emulator.orientationSupports()) { - _BRIDGE_REF.nokia.emulator.setMode('landscape'); - } - } - catch (e) { - } - } - - - - - /** - * Set the preferred screen orientation to portrait. - * The display will flip if the phone display orientation - * is landscape and the phone supports portrait mode. - * @param {Void} - * setDisplayPortrait() - * @return {Void} - */ - widget.setDisplayPortrait = function(){ - try { - if (this.isrotationsupported && _BRIDGE_REF.nokia.emulator.orientationSupports()) { - _BRIDGE_REF.nokia.emulator.setMode('portrait'); - } - } - catch (e) { - } - } - - /** - * Allows the definition of a function to be called - * when a Widget.is displayed - * @param {Void} - * onshow() - * @return {Void} - */ - widget.onshow = function(){ - // to be implemented - } - - - - - /** - * Allows the definition of a function to be called - * when a Widget.sent into the background (hidden) - * @param {Void} - * onhide() - * @return {Void} - */ - widget.onhide = function(){ - // to be implemented - } - - - - /** - * This function returns the System API if sysinfo is included in document embed - */ - widget.enableSystemApi = function(){ - - // Identify, and Attach System-Info-Object properties - try { - var parentIframeRef = window.parent.frames[0]; - if (typeof parentIframeRef == 'object') { - if (parentIframeRef.document.embeds.length > 0) { - for (var i = 0; i < parentIframeRef.document.embeds.length; i++) { - //match the system Info API embed tag - if (parentIframeRef.document.embeds[i].type == 'application/x-systeminfo-widget') { - new systemAPI(parentIframeRef.document.embeds[i]); -// widget.sysInfo = parentIframeRef.document.embeds[i]; - - // hide the object - parentIframeRef.document.embeds[i].style.display='none'; - - // push the reference object into widget - widget.sysInfo.push(parentIframeRef.document.embeds[i]); - } - } - } - } - } - catch (e) { - alert('Error in attachSysInfo: ' + e); - } - } - - /** - * - */ - - widget.triggerListener = function(provider, eventType, data){ - if(widget.sysInfo.length){ - for(var i=0; i