#import @protocol SS_PreferencePaneProtocol // preferencePanes is called whenever the calling application wants to instantiate preference panes. // This method returns an array of preference pane instances. This array is autoreleased, // so the calling application needs to retain whatever it wants to keep. // If no instances were generated, this returns nil. + (NSArray *)preferencePanes; // paneView returns a preference pane's view. This must not be nil. - (NSView *)paneView; // paneName returns the name associated with a preference pane's view. // This is used as the label of the pane's toolbar item in the Preferences window, // and as the title of the Preferences window when the pane is selected. // This must not be nil or an empty string. - (NSString *)paneName; // paneIcon returns a preference pane's icon as an NSImage. // The icon will be scaled to the default size for a toolbar icon (if necessary), // and shown in the toolbar in the Preferences window. - (NSImage *)paneIcon; // paneToolTip returns the ToolTip to be used for a preference pane's icon in the // Preferences window's toolbar. You can return nil or an empty string to disable // the ToolTip for this preference pane. - (NSString *)paneToolTip; // allowsHorizontalResizing and allowsVerticalResizing determine whether the Preferences window // will be resizable in the respective directions when the receiver is the visible preference // pane. The initial size of the receiver's view will be used as the minimum size of the // Preferences window. - (BOOL)allowsHorizontalResizing; - (BOOL)allowsVerticalResizing; @end