Refresh Array of Images- Google Script -


i want able clear whole array of images click of button , reload array updated values. cannot work clearing vertpanel. can done somehow resetting data? appreciated.

var maximgs = 6;      // number of images in grid var colurl = 0;       // column containing url var colname = 2;      // column containing name var colattr = 1;      // column containing attributes  function doget(e) { var app = uiapp.createapplication().settitle('not here'); var abspanel = app.createabsolutepanel().setstyleattribute('padding','25px'); var grid = app.creategrid(8, 8);  var titlelabel = app.createlabel('not here'); titlelabel.setstyleattribute('margin-left','85px'); titlelabel.setstyleattribute("font-size", "135%"); titlelabel.setstyleattribute("font-weight", "bold"); var insertlabel = app.createlabel('which schedule? (insert document key)'); var inserttxtbox = app.createtextbox().setid('txtbox').setname('ttbox').setmaxlength(44); var loadbtn = app.createbutton('load pictures').setid('loadbtn'); var resetbtn = app.createbutton('refresh').setid('rbtn').setvisible(false); var daylabel = app.createlabel('select day'); var mon = "p - mon" var tues = "p - tues" var wed = "p - wed" var thurs = "p - thurs" var fri = "p - fri" var daylistbox = app.createlistbox().setwidth('140px').setid('day').setname('sday') daylistbox.additem(mon); daylistbox.additem(tues); daylistbox.additem(wed); daylistbox.additem(thurs); daylistbox.additem(fri);  // borrowed https://sites.google.com/site/scriptsexamples/learn-by-example/uiapp-examples-    code-snippets/progress-indicators var spinner = app.createimage('https://dl.dropboxusercontent.com/u/211279/loading3t.gif')                             .setvisible(false)                             .setid('spinner'); // client handler loadbtn start spinner when button clicked // server handler stop spinner when done loading pictures var loadspinner = app.createclienthandler()               .fortargets(spinner)               .setvisible(true); loadbtn.addclickhandler(loadspinner);    var loadhandler = app.createserverhandler('loadpics'); loadhandler.addcallbackelement(abspanel); loadbtn.addclickhandler(loadhandler);  grid .setwidget(1, 0, insertlabel) .setwidget(1, 1, inserttxtbox) .setwidget(2, 0, daylabel) .setwidget(2, 1, daylistbox) .setwidget(3, 1, loadbtn) .setwidget(3, 2, resetbtn) .setwidget(2, 2, spinner) .setcellspacing(5);  (var img = 0, row = 5; img < maximgs; img++) { var image = app.createimage().setpixelsize(350, 350).setid('image' + img); var imagename = app.createlabel('name').setid('name'+img); var imageattr = app.createlabel('attr').setid('attr'+img);    var vertpan = app.createverticalpanel().add(imagename).add(imageattr).add(image).setstyleattributes({'padding':'15px','borderstyle':'solid','border-radius':'15px','background':'silver'}).setvisible(false).setid('vertpanel'+img);  grid.setwidget(row + math.floor(img / 4), 1 + (img % 4), vertpan)  }  abspanel.add(titlelabel);  abspanel.add(grid);  app.add(abspanel);   return app;  }    function loadpics(e) {  var app = uiapp.getactiveapplication();  var ss = spreadsheetapp.openbyid(e.parameter.ttbox);  var list = ss.getsheetbyname(e.parameter.sday);  var data = list.getrange("a121:c230").getvalues().splice(1); // whole spreadsheet, without  headers   (var row = 0, img = 0; row < data.length && img < maximgs; row++) {  var rowdata = data[row];  if (rowdata[0] != '') {   var image = app.getelementbyid('image' + img);   var imagename = app.getelementbyid('name'+img);   var imageattr = app.getelementbyid('attr'+img);   var vertpan = app.getelementbyid('vertpanel'+img).setvisible(true);   image.seturl(rowdata[colurl])        .settitle(rowdata[colname].tostring() === '' ? 'image'+img : rowdata[colname]);   imagename.settext(rowdata[colname]).setstyleattribute("font-size", "150%");   imageattr.settext(rowdata[colattr]);   img++;   }  }   // done loading, hide spinner  app.getelementbyid('spinner').setvisible(false);  return app;  } 

better define grid , add abspanel, in handler function, call image grid id , use method clear(); clear grid. , reconstruct new images.

i hope trying say.

in doget() function use

var imggrid = app.creategrid(1,1).setid('imggrid'); abspanel.add(imggrid); 

in handler function use

var imggrid = app.getelementbyid('imggrid').clear(); imggrid.resize(row, column); //now manipulate grid show new images