private void decodeSelection ( final FacesContext context , final Sheet sheet , final String jsonSelection ) { if ( LangUtils . isValueBlank ( jsonSelection ) ) { return ; } try { // data comes in: [ [row, col, oldValue, newValue] ... ] final JSONArray array = new JSONArray ( jsonSelection ) ; sheet . setSelectedRow ( array . getInt ( 0 ) ) ; sheet . setSelectedColumn ( sheet . getMappedColumn ( array . getInt ( 1 ) ) ) ; sheet . setSelectedLastRow ( array . getInt ( 2 ) ) ; sheet . setSelectedLastColumn ( array . getInt ( 3 ) ) ; sheet . setSelection ( jsonSelection ) ; } catch ( final JSONException e ) { throw new FacesException ( "Failed parsing Ajax JSON message for cell selection event:" + e . getMessage ( ) , e ) ; } }
Decodes the user Selection JSON data