event.getRenderable()

Questions, tips and tricks and techniques for scripting in Servoy

event.getRenderable()

Postby Hans Nieuwenhuis » Wed May 18, 2011 9:25 pm

is there a sample available for the use of

event.getRenderable()
Hans Nieuwenhuis
Betagraphics
http://www.deltics.nl
http://www.betagraphics.nl

Servoy Version 7.3.1
Java version 1.7.0.x
Database Oracle 11g
User avatar
Hans Nieuwenhuis
 
Posts: 1026
Joined: Thu Apr 12, 2007 12:36 pm
Location: Hengelo, The Netherlands

Re: event.getRenderable()

Postby Joas » Thu May 19, 2011 11:09 am

I don't think there is sample code attached yet, but to give a small example:

Code: Select all
function onRender(event) {
   var _element = event.getRenderable();
   
   if (_element.getName() == "btn_edit") {
      var _record = event.getRecord();
      _element.enabled = (_record.is_active);
   }
}


The result is that the "btn_edit" is only enabled for active records.
Joas de Haan
Yield Software Development
Need help on your project? yieldsd.com
User avatar
Joas
Site Admin
 
Posts: 842
Joined: Mon Mar 20, 2006 4:07 pm
Location: Leusden, NL

Re: event.getRenderable()

Postby Hans Nieuwenhuis » Thu May 19, 2011 12:01 pm

Did you test this code in the latest version (6.0.0 b3 - build 1210) ?

When I use the method :

Code: Select all
function onRender1(event) {
   
      var _element = event.getRenderable();
      
      if (_element.getName() == "pers_achternaam") {
         /** @type JSRecord<db:/udm/test1> */         
         var _record = event.getRecord();
         if (_record.pers_achternaam == 'M.' ){
               _element.enabled = false;
         }
         else {
               _element.enabled = true;
         }
           
      }
}


I get the following error for each record in the form :
(Line 27 is var _element = event.getRenderable();)

Code: Select all
com.servoy.j2db.ui.DataRendererOnRenderWrapper cannot be cast to com.servoy.j2db.ui.IScriptRenderMethods
Wrapped java.lang.ClassCastException: com.servoy.j2db.ui.DataRendererOnRenderWrapper cannot be cast to com.servoy.j2db.ui.IScriptRenderMethods (F:\ServoyPrograms\servoy6_workspace\testOnRender\forms\test2.js#27)
   at F:\ServoyPrograms\servoy6_workspace\testOnRender\forms\test2.js:27 (onRender1)
Hans Nieuwenhuis
Betagraphics
http://www.deltics.nl
http://www.betagraphics.nl

Servoy Version 7.3.1
Java version 1.7.0.x
Database Oracle 11g
User avatar
Hans Nieuwenhuis
 
Posts: 1026
Joined: Thu Apr 12, 2007 12:36 pm
Location: Hengelo, The Netherlands

Re: event.getRenderable()

Postby Joas » Thu May 19, 2011 12:53 pm

You're right, unfortunately there is an issue with getRenderable in b3.
R&D is already aware of this and working on fixing it.
Joas de Haan
Yield Software Development
Need help on your project? yieldsd.com
User avatar
Joas
Site Admin
 
Posts: 842
Joined: Mon Mar 20, 2006 4:07 pm
Location: Leusden, NL


Return to Methods

Who is online

Users browsing this forum: No registered users and 17 guests