Add a proxy model class with filter logic, and use it as the model for events ListView.
Filtering events in JS is too slow with >20,000 events. This moves the event data model into C++.