R – How to create a Keynote-like interface in Cocoa and IB

cocoainterface-buildermacos

the app I want to create will have an interface very like Keynote, with a list of pages on the left and one page in full on the right. These kinds of interfaces are very common yet I don't know how to do them in Interface Builder.

Are there any ready-made components? Apple doesn't offer any, afaik. Or does every developer recreate this from scratch?

I only need a general idea or tutorial, no finished code.

Thanks in advance!!

Best Answer

If you're referring to a scrollable list of same-size thumbnails, use NSCollectionView / NSCollectionViewItem. Should be very easy: the item would just display a thumbnail image based on your document editor view's current state. In 10.6, it got some drag and drop support, if I remember correctly from WWDC '09, so you can drag-reorder your pages this way, too.

For the editor side, the collection view would only work if all your pages are the same size, as it doesn't allow for variable-sized items. If all your "pages" are the same size, though, the collection view should actually work for this too.