Skip to content

Latest commit

 

History

History
 
 

ComplexBrowser

{\rtf1\ansi\ansicpg1252\cocoartf980
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\vieww9000\viewh8400\viewkind0
\pard\tx960\tx1920\tx2880\tx3840\tx4800\tx5760\tx6720\tx7680\tx8640\tx9600\ql\qnatural

\f0\b\fs36 \cf0 ComplexBrowser\
\
\pard\tx960\tx1920\tx2880\tx3840\tx4800\tx5760\tx6720\tx7680\tx8640\tx9600\ql\qnatural

\b0\fs24 \cf0 ComplexBrowser is a more advanced version of SimpleBrowser. It extends on the SimpleBrowser example by adding more customization. It only supports the new SnowLeopard item-based browser API, but it is possible to use the same concepts with the old API. It demonstrates header views, preview views, custom cells, and drag and drop.\
\
\pard\tx960\tx1920\tx2880\tx3840\tx4800\tx5760\tx6720\tx7680\tx8640\tx9600\ql\qnatural

\b\fs28 \cf0 AppController.h/.m\
\
\pard\tx960\tx1920\tx2880\tx3840\tx4800\tx5760\tx6720\tx7680\tx8640\tx9600\ql\qnatural

\b0\fs24 \cf0 The AppController class lives in the MainMenu.xib. It is set as the delegate for the main NSApplication instance, and the delegate for the NSBrowser. It also has a single outlet set to the browser.  This class contains the root delegate implementation to provide data for the browser, and implements drag and drop.\
\
\pard\tx960\tx1920\tx2880\tx3840\tx4800\tx5760\tx6720\tx7680\tx8640\tx9600\ql\qnatural

\b\fs28 \cf0 FileSystemNode.h/.m\
\
\pard\tx960\tx1920\tx2880\tx3840\tx4800\tx5760\tx6720\tx7680\tx8640\tx9600\ql\qnatural

\b0\fs24 \cf0 This class is a simple wrapper around the file system. Its main purpose is to cache the children for a given NSURL. We do this in order to get a consistent children count. \
\
\pard\tx960\tx1920\tx2880\tx3840\tx4800\tx5760\tx6720\tx7680\tx8640\tx9600\ql\qnatural

\b\fs28 \cf0 FileSystemBrowserCell.h/.m
\fs24 \
\
\pard\tx960\tx1920\tx2880\tx3840\tx4800\tx5760\tx6720\tx7680\tx8640\tx9600\ql\qnatural

\b0 \cf0 A simple custom cell that draws the file system icon at the appropriate location.\
\
}