Alec Flett wrote:
* The grid's mechanism for accessing Items in the Collection may end up being fairly different, and it is very important to get this right to be able to handle very large collections in the grid. A grid can make grid-specific assumptions about which items are on screen.

Actually, the CollectionCanvas has moved towards something closer to the grid - at least, it maintains a separate list of the on-screen items...

A grid doesn't have to maintain a list of on-screen items. The grid just has to ask for the nth item in the list when it is drawing that item. The grid never has to look at two items at the same time, or do domain specific calculations to figure out what items to draw. The grid can be very smart about only looking at items that are in the update region, etc. I believe the wx grid implementation is actually pretty smart about this -- it might be worth spelunking through that code for ideas before your swag session.

The calendar, on the other hand, needs to look at items to see if they are overlapping, etc. Some of the month views that we talked about need to look at all of the events for a particular day when drawing that day to do neat things with information design.

The calendar can also be smart about what it draws (much of which you have already done) -- just noting that its worth taking advantage of grid-specific constraints.

I think its possible that we could develop the grid with a slight variation on what Bryan is suggesting:

         CollectionCanvas
           /        \
   CollectionGrid  GraphicalCanvas
                      \
                      CalendarCanvas

so basically, CollectionCanvas might get some of its stuff broken out into GraphicalCanvas that might only be relevant to the CalendarCanvas

Makes sense to me.

Cheers,
Katie
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

Open Source Applications Foundation "Dev" mailing list
http://lists.osafoundation.org/mailman/listinfo/dev

Reply via email to