You will need to write both in JDom and in the component model.
JDom can display the control, but its role is limited to this.
JDom :
Extends a normal combo to a multi-checkable list.
-> html.form.input.select.multi (new class)
Override only few things to make a control sending an ARRAY in post.
In Component list model:
(Write the maximum you can in the super class)
In this list model in general, receive this array and set the filter state var, this is already done automatically :
Change the filter type to 'array' in the list model constructor.(not tested, but should work)
Then in prepareQuery, create the SQL filter.
For this particular purpose, a super-function could be awesome. (Such as 'propagateAccesses' SQL creation)
Hope it helps.