API  0.9.7
 All Classes Files Functions Variables Macros Groups Pages
CPObject Class Reference

The root class from which most classes are subclassed. More...

Inherited by CAAnimation, CALayer, CAMediaTimingFunction, CPAccordionViewItem, CPAlert, CPAnimation, CPAttributedString, CPBasePlatform, CPBasePlatformString, CPBezierPath, CPBinder, CPBundle, CPCharacterSet, CPCib, CPCibConnector, CPCoder, CPColor, CPColorPicker, CPColorSpace, CPController, CPControllerSelectionProxy, CPCookie, CPCursor, CPData, CPDate, CPDecimalNumberHandler, CPDelayedPerform, CPDictionary, CPDocumentController, CPDraggingInfo, CPDragServer, CPEnumerator, CPError, CPEvent, CPException, CPFlashMovie, CPFont, CPFontManager, CPFormatter, CPGradient, CPGraphicsContext, CPImage, CPIndexPath, CPIndexSet, CPInvocation, CPJSONPConnection, CPKeyBinding, CPLocale, CPMenu, CPMenuItem, CPNinePartImage, CPNotification, CPNotificationCenter, CPNull, CPNumber, CPOperation, CPOperationQueue, CPPasteboard, CPPlatformWindow, CPPredicateEditorRowTemplate, CPPropertyListSerialization, CPRadioGroup, CPResponder, CPRunLoop, CPScanner, CPScreen, CPShadow, CPSortDescriptor, CPSound, CPString, CPTableColumn, CPTabViewItem, CPTheme, CPThemeBlend, CPThreePartImage, CPTimer, CPTimeZone, CPToolbar, CPTreeNode, CPUndoManager, CPURL, CPURLConnection, CPURLRequest, CPURLResponse, CPUserDefaults, CPUserDefaultsStore, CPUserSessionManager, CPValue, CPValueTransformer, CPWebDAVManager, CPWebScriptObject, and CPWorkspace.

Detailed Description

The root class from which most classes are subclassed.

CPObject is the root class for most Cappuccino classes. Like in Objective-C,
you have to declare parent class explicitly in Objective-J, so your custom
classes should almost always subclass CPObject or one of its children.

CPObject provides facilities for class allocation and initialization,
querying runtime about parent classes and available selectors, using KVC
(key-value coding).

When you subclass CPObject, most of the time you override one selector - init.
It is called for default initialization of custom object. You must call
parent class init in your overridden code:
<pre>- (id)init

{ self = [super init]; if (self) { ... provide default initialization code for your object ... } return self; }

One more useful thing to override is description(). This selector
is used to provide developer-readable information about object. description
selector is often used with CPLog debugging:
<pre>- (CPString)description

{ return [CPString stringWithFormat:"<SomeClass d>", someValue]; } To get description value you can use %@ specifier everywhere where format specifiers are allowed:

var inst = [[SomeClass alloc] initWithSomeValue:10];
CPLog("Got some class: %", inst);
    would output:
    Got some class: <SomeClass 10> 

The documentation for this class was generated from the following file: