Symbian.org/preview/script/lib/widget.js
changeset 12 d3fff58a7af9
parent 11 aaba47256eea
child 13 3a1db8573f1e
--- 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 <embed> 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<widget.sysInfo.length; i++){
-				if(provider == "power"){
-					switch(eventType){
-						case "chargerconnected" : 
-												  widget.sysInfo[i].chargerconnected = data;
-												  if(typeof widget.sysInfo[i].onchargerconnected != 'undefined'){
-												  	// widget.sysInfo[i].onchargerconnected();
-													setTimeout(widget.sysInfo[i].onchargerconnected, 0);
-												  }
-												  break;
-
-						case "chargelevel" 		:
-												  widget.sysInfo[i].chargelevel = data;
-												  if(typeof widget.sysInfo[i].onchargelevel != 'undefined'){
-												  	// widget.sysInfo[i].onchargelevel();
-													setTimeout(widget.sysInfo[i].onchargelevel, 0);
-												  }
-												 break;
-					}
-				}
-			}
-		}
-	}
-	
-	//	make TRUE widget.js script loaded
-	window.parent.NOKIA.scriptsLoaded.widget = true;
-}
-
-(function(){
-
-	//	attach the System-Info api specific functionality
-	_BRIDGE_REF.helper.addEvent(window, 'load', function(){
-		widget.enableSystemApi();
-		
-	});
-
-	if (_BRIDGE_REF.nokia) {
-		_BRIDGE_REF.nokia.menu.lsk_event = function(){
-			_BRIDGE_REF.nokia.emulator.child.menu.show();
-		};
-		
-		//	Add THIS window Reference on FRAME WINDOW
-		//	NOKIA.emulator.child object reference
-		_BRIDGE_REF.nokia.emulator.child = window;
-		_BRIDGE_REF.nokia.menu.init();
-	}	
-})()