User Tools

Site Tools


sample_code:img_toggle_button

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

sample_code:img_toggle_button [2014/12/06 21:15]
stevegarman
sample_code:img_toggle_button [2015/01/13 17:55]
Line 1: Line 1:
-====== Image button toggle ====== 
-This code was written in response to a request for a Toggle Image Button. 
- 
-The main body of the code is the function  
-    CreateImageToggle(img1,img2) 
-The images can be passed either as file-paths or as images 
-The sample code passes one of each. 
- 
-The first image decides the size of the button. 
- 
-In case it is not obvious, the actual toggling is done in the OnTouchDown handler. 
- 
-You could move this to any of the OnTouch events but be aware that some of them (such as SetOnTouch) may fire more often than you expect. 
-===== The code ===== 
-<code javascript toggle.js> 
-//Called when application is started. 
-function  OnStart() 
-{     // Create layout 
-       
-  lay  =  app.CreateLayout( "linear",  "VCenter,FillXY" );             // Create resized first image for the button 
-       
-  var  pauseImg  =  app.CreateImage( "/Sys/Img/Droid1.png", 0.1, -1);        //Create the button with OnTouchDown event 
-       
-  btn  =  CreateImageToggle(pauseImg,  "/Sys/Img/Droid2.png" ) ;     
-  btn.SetOnTouchDown(btnToggle);         
-  lay.AddChild( btn );         //Add layout to app.     
-       
-  app.AddLayout( lay ); 
-} 
- 
-function  btnToggle(ev) 
-{    
-  this.Toggle  =  ! this.Toggle;    
-  if (this.Toggle) 
-  {       
-    this.SetImage(this.imgTrue);       
-    app.ShowPopup("Playing");    
-  }  
-  else 
-  {       
-    this.SetImage(this.imgFalse);       
-    app.ShowPopup("Paused");    
-  } 
-} 
- 
-function  CreateImageToggle(img1, img2) 
-{   // accepts images or file-paths 
-     //img1 represents false, img2 true(toggled) 
-     
-  if  (typeof  img1  ==  "string" 
-  {      
-    img1  =  app.CreateImage(img1);   
-  }   
-  if  (typeof  img2  ==  "undefined") 
-  {     
-    img2  =  img1;   
-  }  
-  else  if  (typeof  img2  ==  "string" 
-  {     
-    img2  =  app.CreateImage(img2, img1.GetWidth(), img1.GetHeight());   
-  }   
-  var  obj  =  app.CreateImage(null, img1.GetWidth(), img1.GetHeight());   
-  obj.SetImage(img1)   obj.Toggle  =  false;   
-  obj.imgFalse  =  img1   obj.imgTrue  =  img2   
-  return  obj 
-} 
-</code> 
-===== Note ===== 
-This code has had only rudimentary testing. You may well be able to improve it 
  
sample_code/img_toggle_button.txt · Last modified: 2015/01/13 17:55 (external edit)