intanto è tutto javascript (da non confondersi con java) o meglio dhtml

e si basa su quanto spiegato in questo articolo

la possibilità di cambiare numero di colonne non è implementato neanche sul sito dell' autore quindi l' hanno fatto loro
e dovresti smontare il codice (lavoro a prima vista non indifferente) per capire come hanno fatto