Here is my hack to do such thing easily :
I edited the ProcessPageEditImageSelect.module to add two protected vars : $thumbWidth and $thumbHeight and i change the ___execute() function like so :
foreach($images as $image) {
//$width = $image->width();
$thumb = $image->size($this->thumbWidth, $this->thumbHeight);
if($width > $this->maxImageWidth) $width = $this->maxImageWidth;
$out .= "\n\t<li><a href='./edit?file={$image->basename}&modal=1&id={$this->page->id}&winwidth=$winwidth'>" .
"<img src='{$thumb->url}' width='{$this->thumbWidth}' alt=\"{$image->description}\" /></a></li>";
}
i used the size() function to change the image width and height, to create a thumbnail and instead of using $image->url i use $thumb-url
Just after that, i change my css to make <li> element float in order to get a grid of elements :
#select_images li {
float: left;
margin: 0 5px 5px 0;
}
see the attached image for an example of use.
There is just a one problem, if the picture is smaller than the thumbnail width and height, the size function will make a pixelazed version wich isn't good, in such case, the function have to add a blank space to make a correct thumb.