mirror of
https://github.com/cappuccino/cappuccino.git
synced 2026-11-01 21:07:36 +00:00
Fixing spelling mistakes
This commit is contained in:
1 parent
2aa806e52a
commit
6a942630e4
57 files changed
+401
-403
No files matched your search
@@ -69,7 +69,7 @@
|
||||
@class CPAccordionView
|
||||
|
||||
<p>CPAccordionView provides a container for CPAccordionViewItem objects and manages layout state
|
||||
for all sublayout items.</p>
|
||||
for all sub-layout items.</p>
|
||||
|
||||
<strong>Example</strong><br />
|
||||
<pre>
|
||||
|
||||
+1
-1
@@ -6,7 +6,7 @@
|
||||
* Copyright 2008, Jake MacMullin.
|
||||
*
|
||||
* 11/10/2008 Ross Boucher
|
||||
* - Make it conform to style guidelines, general cleanup and ehancements
|
||||
* - Make it conform to style guidelines, general cleanup and enhancements
|
||||
* 11/10/2010 Antoine Mercadal
|
||||
* - Enhancements, better compliance with Cocoa API
|
||||
*
|
||||
|
||||
@@ -57,7 +57,7 @@ CPRunContinuesResponse = -1002;
|
||||
@ingroup appkit
|
||||
@class CPApplication
|
||||
|
||||
CPApplication is THE way to start up the Cappucino framework for your application to use.
|
||||
CPApplication is THE way to start up the Cappuccino framework for your application to use.
|
||||
Every GUI application has exactly one instance of CPApplication (or of a custom subclass of
|
||||
CPApplication). Your program's main() function can create that instance by calling the
|
||||
\c CPApplicationMain function. A simple example looks like this:
|
||||
|
||||
@@ -1,5 +1,3 @@
|
||||
|
||||
|
||||
/*
|
||||
* CPArrayController.j
|
||||
* AppKit
|
||||
@@ -191,7 +189,7 @@
|
||||
|
||||
/*!
|
||||
Sets whether the controller should try to avoid an empty selection.
|
||||
@param BOOL aFlag - YES if the reciver should attempt to avoid an empty selection, otherwise NO.
|
||||
@param BOOL aFlag - YES if the receiver should attempt to avoid an empty selection, otherwise NO.
|
||||
*/
|
||||
- (void)setAvoidsEmptySelection:(BOOL)value
|
||||
{
|
||||
@@ -340,7 +338,7 @@
|
||||
|
||||
/*!
|
||||
Returns the content array of the controller.
|
||||
@return id the content array of the reciever
|
||||
@return id the content array of the receiver
|
||||
*/
|
||||
- (id)contentArray
|
||||
{
|
||||
@@ -348,7 +346,7 @@
|
||||
}
|
||||
|
||||
/*!
|
||||
Returns the content of the reciever as a CPSet.
|
||||
Returns the content of the receiver as a CPSet.
|
||||
|
||||
@return id - the content of the controller as a set.
|
||||
*/
|
||||
@@ -464,7 +462,7 @@
|
||||
}
|
||||
|
||||
/*!
|
||||
Returns the predicate used by the controller to filter the contents of the reciever.
|
||||
Returns the predicate used by the controller to filter the contents of the receiver.
|
||||
If no predicate is set nil is returned.
|
||||
|
||||
@return CPPredicate the predicate used by the controller
|
||||
@@ -522,7 +520,7 @@
|
||||
/*!
|
||||
Sets the selected index
|
||||
|
||||
@param unsided anIndex - the new index to select
|
||||
@param unsigned anIndex - the new index to select
|
||||
@return BOOL - Returns YES if the selection was changed, otherwise NO.
|
||||
*/
|
||||
- (BOOL)setSelectionIndex:(unsigned)index
|
||||
@@ -735,7 +733,7 @@
|
||||
}
|
||||
|
||||
/*!
|
||||
Adds an object at a given index to the reciever's collection.
|
||||
Adds an object at a given index to the receiver's collection.
|
||||
|
||||
@param id anObject - The object to add to the collection.
|
||||
@param int anIndex - The index to insert the object at.
|
||||
@@ -772,7 +770,7 @@
|
||||
}
|
||||
|
||||
/*!
|
||||
Removes a given object from the reciever's collection.
|
||||
Removes a given object from the receiver's collection.
|
||||
|
||||
@param id anObject - The object to remove from the collection.
|
||||
*/
|
||||
|
||||
@@ -38,7 +38,7 @@ var DefaultLineWidth = 1.0;
|
||||
@class CPBezierPath
|
||||
|
||||
A CPBezierPath allows you to create paths for drawing to the screen using a simpler API than CoreGraphics.
|
||||
Paths can form any shape, including regular polgyons like squares and triangles; circles, arcs; or complex
|
||||
Paths can form any shape, including regular polygons like squares and triangles; circles, arcs; or complex
|
||||
line segments.
|
||||
|
||||
A path can be stroked and filled using the relevant method. The currently active fill and stroke color will
|
||||
|
||||
+1
-1
@@ -235,7 +235,7 @@ CPGrooveBorder = 3;
|
||||
switch (_boxType)
|
||||
{
|
||||
case CPBoxSeparator:
|
||||
// NSBox does not include a horitontal flag for the seperator type. We have to determine
|
||||
// NSBox does not include a horizontal flag for the seperator type. We have to determine
|
||||
// the type of seperator to draw by the width and height of the frame.
|
||||
if (CGRectGetWidth(bounds) === 5.0)
|
||||
return [self _drawVerticalSeperatorInRect:bounds];
|
||||
|
||||
+1
-1
@@ -125,7 +125,7 @@ var cachedBlackColor,
|
||||
}
|
||||
|
||||
/*!
|
||||
@deprecated in favor of colorWithWhite:apha:
|
||||
@deprecated in favor of colorWithWhite:alpha:
|
||||
|
||||
Creates a new color object with \c white for the RGB components.
|
||||
For the alpha component, a value of 1.0 is opaque, and 0.0 means completely transparent.
|
||||
|
||||
+12
-12
@@ -273,7 +273,7 @@ var CPControlBlackColor = [CPColor blackColor];
|
||||
}
|
||||
|
||||
/*!
|
||||
Returns YES if the reciever tracks the mouse outside the frame, otherwise NO.
|
||||
Returns YES if the receiver tracks the mouse outside the frame, otherwise NO.
|
||||
*/
|
||||
- (BOOL)tracksMouseOutsideOfFrame
|
||||
{
|
||||
@@ -338,8 +338,8 @@ var CPControlBlackColor = [CPColor blackColor];
|
||||
}
|
||||
|
||||
/*!
|
||||
Perform a click on the reciever.
|
||||
@param sender - The sender.
|
||||
Perform a click on the receiver.
|
||||
@param sender - The sender object
|
||||
*/
|
||||
- (void)performClick:(id)sender
|
||||
{
|
||||
@@ -365,7 +365,7 @@ var CPControlBlackColor = [CPColor blackColor];
|
||||
|
||||
/*!
|
||||
@ignore
|
||||
Fired when the button timer finished usually after the user his enter.
|
||||
Fired when the button timer finished, usually after the user hits enter.
|
||||
*/
|
||||
- (void)unhighlightButtonTimerDidFinish:(id)sender
|
||||
{
|
||||
@@ -433,7 +433,7 @@ var CPControlBlackColor = [CPColor blackColor];
|
||||
}
|
||||
|
||||
/*!
|
||||
Set's the receiver's object value
|
||||
Sets the receiver's object value
|
||||
*/
|
||||
- (void)setObjectValue:(id)anObject
|
||||
{
|
||||
@@ -470,7 +470,7 @@ var CPControlBlackColor = [CPColor blackColor];
|
||||
}
|
||||
|
||||
/*!
|
||||
Set's the receiver's double value
|
||||
Sets the receiver's double value
|
||||
*/
|
||||
- (void)setDoubleValue:(double)anObject
|
||||
{
|
||||
@@ -487,7 +487,7 @@ var CPControlBlackColor = [CPColor blackColor];
|
||||
}
|
||||
|
||||
/*!
|
||||
Set's the receiver's int value
|
||||
Sets the receiver's int value
|
||||
*/
|
||||
- (void)setIntValue:(int)anObject
|
||||
{
|
||||
@@ -504,7 +504,7 @@ var CPControlBlackColor = [CPColor blackColor];
|
||||
}
|
||||
|
||||
/*!
|
||||
Set's the receiver's int value
|
||||
Sets the receiver's int value
|
||||
*/
|
||||
- (void)setIntegerValue:(int)anObject
|
||||
{
|
||||
@@ -520,7 +520,7 @@ var CPControlBlackColor = [CPColor blackColor];
|
||||
}
|
||||
|
||||
/*!
|
||||
Set's the receiver's string value
|
||||
Sets the receiver's string value
|
||||
*/
|
||||
- (void)setStringValue:(CPString)anObject
|
||||
{
|
||||
@@ -665,7 +665,7 @@ var CPControlBlackColor = [CPColor blackColor];
|
||||
}
|
||||
|
||||
/*!
|
||||
Sets teh text color of the receiver.
|
||||
Sets the text color of the receiver.
|
||||
@param aColor - A CPColor object.
|
||||
*/
|
||||
- (void)setTextColor:(CPColor)aColor
|
||||
@@ -777,7 +777,7 @@ var CPControlBlackColor = [CPColor blackColor];
|
||||
}
|
||||
|
||||
/*!
|
||||
Sets teh enabled status of the control.
|
||||
Sets the enabled status of the control.
|
||||
Controls that are not enabled can not be used by the user and are sent the CPThemeStateDisabled theme state.
|
||||
@param BOOL - YES if the control should be enabled, otherwise NO.
|
||||
*/
|
||||
@@ -819,7 +819,7 @@ var CPControlBlackColor = [CPColor blackColor];
|
||||
}
|
||||
|
||||
/*!
|
||||
Returns YEs if the control is highlighted, otherwise NO.
|
||||
Returns YES if the control is highlighted, otherwise NO.
|
||||
*/
|
||||
- (BOOL)isHighlighted
|
||||
{
|
||||
|
||||
+2
-2
@@ -88,7 +88,7 @@ var CPDocumentUntitledCount = 0;
|
||||
@class CPDocument
|
||||
|
||||
CPDocument is used to represent a document/file in a Cappuccino application.
|
||||
In a document-based application, generally multiple documents are open simutaneously
|
||||
In a document-based application, generally multiple documents are open simultaneously
|
||||
(multiple text documents, slide presentations, spreadsheets, etc.), and multiple
|
||||
CPDocuments should be used to represent this.
|
||||
*/
|
||||
@@ -208,7 +208,7 @@ var CPDocumentUntitledCount = 0;
|
||||
throws an exception.
|
||||
@param aType the format of the data
|
||||
@param anError not used
|
||||
@throws CPUnsupportedMethodException if this method hasn't been overriden by the subclass
|
||||
@throws CPUnsupportedMethodException if this method hasn't been overridden by the subclass
|
||||
@return the document data
|
||||
*/
|
||||
- (CPData)dataOfType:(CPString)aType error:({CPError})anError
|
||||
|
||||
@@ -177,7 +177,7 @@ var CPSharedDocumentController = nil;
|
||||
@param aType the document type
|
||||
@param aDelegate the delegate to notify
|
||||
@param aSelector the selector to notify with
|
||||
@param aContextInfo the context infomration passed to the delegate
|
||||
@param aContextInfo the context information passed to the delegate
|
||||
*/
|
||||
- (CPDocument)makeDocumentWithContentsOfURL:(CPURL)anAbsoluteURL ofType:(CPString)aType delegate:(id)aDelegate didReadSelector:(SEL)aSelector contextInfo:(id)aContextInfo
|
||||
{
|
||||
|
||||
+1
-1
@@ -495,7 +495,7 @@ var _CPEventPeriodicEventPeriod = 0,
|
||||
return _DOMEvent;
|
||||
}
|
||||
|
||||
// Getting Scroll Wheel Event Infomration
|
||||
// Getting Scroll Wheel Event Information
|
||||
/*!
|
||||
Returns the change in the x-axis for a mouse event.
|
||||
*/
|
||||
|
||||
@@ -52,7 +52,7 @@ var _CPMenuBarVisible = NO,
|
||||
@class CPMenu
|
||||
|
||||
Menus provide the user with a list of actions and/or submenus. Submenus themselves are full fledged menus
|
||||
and so a heirarchical structure appears.
|
||||
and so a hierarchical structure appears.
|
||||
*/
|
||||
@implementation CPMenu : CPObject
|
||||
{
|
||||
|
||||
@@ -449,7 +449,7 @@ CPOffState
|
||||
return _mixedStateImage;
|
||||
}
|
||||
|
||||
// Managing Subemenus
|
||||
// Managing Submenus
|
||||
/*!
|
||||
Sets the submenu for this item
|
||||
@param aMenu the submenu
|
||||
@@ -648,7 +648,7 @@ CPControlKeyMask
|
||||
}
|
||||
|
||||
/*!
|
||||
Sets the title of the menu item and the mnemonic character. The mnemonic chracter should be preceded by an '&'.
|
||||
Sets the title of the menu item and the mnemonic character. The mnemonic character should be preceded by an '&'.
|
||||
@param aTitle the title string with a denoted mnemonic
|
||||
*/
|
||||
- (void)setTitleWithMnemonicLocation:(CPString)aTitle
|
||||
|
||||
@@ -73,7 +73,7 @@
|
||||
/*!
|
||||
Inits and returns a CPObjectController object with the given content.
|
||||
|
||||
@param id aContent - The object the conroller will use.
|
||||
@param id aContent - The object the controller will use.
|
||||
@return id the CPObjectConroller instance.
|
||||
*/
|
||||
- (id)initWithContent:(id)aContent
|
||||
@@ -152,7 +152,7 @@
|
||||
}
|
||||
|
||||
/*!
|
||||
Overridden by a subclass that require control over the creation of new objects.
|
||||
Overridden by a subclass that require control over the creation of new objects.
|
||||
*/
|
||||
- (void)prepareContent
|
||||
{
|
||||
@@ -209,7 +209,7 @@
|
||||
|
||||
/*!
|
||||
Removes a given object from the controller.
|
||||
@param id anObject - The object to remove from the reciver.
|
||||
@param id anObject - The object to remove from the receiver.
|
||||
*/
|
||||
- (void)removeObject:(id)anObject
|
||||
{
|
||||
@@ -258,7 +258,7 @@
|
||||
|
||||
/*!
|
||||
Sets whether the controller allows for the editing of the content.
|
||||
@param BOOL shouldBeEditable - YES if the content should be editable, otherwise NO.
|
||||
@param BOOL shouldBeEditable - YES if the content should be editable, otherwise NO.
|
||||
*/
|
||||
- (void)setEditable:(BOOL)shouldBeEditable
|
||||
{
|
||||
|
||||
+20
-20
@@ -83,7 +83,7 @@ var CPOutlineViewCoalesceSelectionNotificationStateOff = 0,
|
||||
@ingroup appkit
|
||||
@class CPOutlineView
|
||||
|
||||
CPOutlineView is a subclass of CPTableView that inherates the row and column format to display hierarchial data.
|
||||
CPOutlineView is a subclass of CPTableView that inherits the row and column format to display hierarchal data.
|
||||
The outlineview adds the ability to expand and collapse items. This is useful for browsing a tree like structure such as directories or a filesystem.
|
||||
|
||||
Like the tableview, an outlineview uses a data source to supply its data. For this reason you must implement a couple data source methods (documented in setDataSource:)
|
||||
@@ -184,10 +184,10 @@ var CPOutlineViewCoalesceSelectionNotificationStateOff = 0,
|
||||
|
||||
Sorting:
|
||||
- (void)outlineView:(CPOutlineView)outlineView sortDescriptorsDidChange:(CPArray)oldDescriptors;
|
||||
The outlineview will call this method if you click the tableheader. You should sort the datasource based off of the new sort descriptors and reload the data
|
||||
The outlineview will call this method if you click the table header. You should sort the datasource based off of the new sort descriptors and reload the data
|
||||
|
||||
Drag and Drop:
|
||||
In order for the outlineview to recieve drops dont forget to first register the tableview for drag types like you do with every other view
|
||||
In order for the outlineview to receive drops don't forget to first register the tableview for drag types like you do with every other view
|
||||
|
||||
- (BOOL)outlineView:(CPOutlineView)outlineView acceptDrop:(id < CPDraggingInfo >)info item:(id)item childIndex:(CPInteger)index;
|
||||
Return YES if the operation was successful otherwise return NO.
|
||||
@@ -195,12 +195,12 @@ var CPOutlineViewCoalesceSelectionNotificationStateOff = 0,
|
||||
To get this data use the draggingPasteboard method on the CPDraggingInfo object.
|
||||
|
||||
- (CPDragOperation)outlineView:(CPOutlineView)outlineView validateDrop:(id < CPDraggingInfo >)info proposedItem:(id)item proposedChildIndex:(CPInteger)index;
|
||||
Return the drag operation (move, copy, etc) that should be performaned if a registered drag type is over the tableview
|
||||
Return the drag operation (move, copy, etc) that should be performed if a registered drag type is over the tableview
|
||||
The data source can retarget a drop if you want by calling -(void)setDropItem:(id)anItem dropChildIndex:(int)anIndex;
|
||||
|
||||
- (BOOL)outlineView:(CPOutlineView)outlineView writeItems:(CPArray)items toPasteboard:(CPPasteboard)pboard;
|
||||
Returns YES if the drop operation is allowed otherwise NO.
|
||||
This method is invoked by the outlineview after a drag should begin, but before it is started. If you dont want the drag to being return NO.
|
||||
This method is invoked by the outlineview after a drag should begin, but before it is started. If you don't want the drag to being return NO.
|
||||
If you want the drag to begin you should return YES and place the drag data on the pboard.
|
||||
</pre>
|
||||
*/
|
||||
@@ -336,7 +336,7 @@ var CPOutlineViewCoalesceSelectionNotificationStateOff = 0,
|
||||
|
||||
// When shouldExpandChildren is YES, we need to make sure we're collecting
|
||||
// selection notifications so that exactly one IsChanging and one DidChange
|
||||
// is sent as needed, for the totallity of the operation.
|
||||
// is sent as needed, for the totality of the operation.
|
||||
var isTopLevel = NO;
|
||||
if (!_coalesceSelectionNotificationState)
|
||||
{
|
||||
@@ -486,7 +486,7 @@ var CPOutlineViewCoalesceSelectionNotificationStateOff = 0,
|
||||
/*!
|
||||
Returns the item at a given row index. If no item exists nil is returned.
|
||||
|
||||
@param aRow - The rown index you want to find the item at.
|
||||
@param aRow - The row index you want to find the item at.
|
||||
@return id - The item at a given index.
|
||||
*/
|
||||
- (id)itemAtRow:(CPInteger)aRow
|
||||
@@ -515,7 +515,7 @@ var CPOutlineViewCoalesceSelectionNotificationStateOff = 0,
|
||||
|
||||
/*!
|
||||
Sets the table column you want to display the disclosure button in.
|
||||
If you do not want an outline column pass nil.
|
||||
If you do not want an outline column pass nil.
|
||||
@param aTableColumn - The CPTableColumn you want to use for hierarchical data.
|
||||
*/
|
||||
- (void)setOutlineTableColumn:(CPTableColumn)aTableColumn
|
||||
@@ -559,9 +559,9 @@ var CPOutlineViewCoalesceSelectionNotificationStateOff = 0,
|
||||
}
|
||||
|
||||
/*!
|
||||
Returns the indentation level for a given row. If the row is invalid CPNotFound is returned. Rows that are nto indented return 0.
|
||||
Returns the indentation level for a given row. If the row is invalid CPNotFound is returned. Rows that are not indented return 0.
|
||||
|
||||
@param aRow - the row of the reciever
|
||||
@param aRow - the row of the receiver
|
||||
@return int - the indentation level of aRow.
|
||||
*/
|
||||
- (CPInteger)levelForRow:(CPInteger)aRow
|
||||
@@ -596,7 +596,7 @@ var CPOutlineViewCoalesceSelectionNotificationStateOff = 0,
|
||||
}
|
||||
|
||||
/*!
|
||||
Sets the layout behaviour of disclosure button. If you pass NO the disclosure button will always align itself to the left of the outline column.
|
||||
Sets the layout behavior of disclosure button. If you pass NO the disclosure button will always align itself to the left of the outline column.
|
||||
|
||||
@param indentationMarkerShouldFollowDataView - Pass YES if the disclosure control should be indented along with the dataview, otherwise NO.
|
||||
*/
|
||||
@@ -612,7 +612,7 @@ var CPOutlineViewCoalesceSelectionNotificationStateOff = 0,
|
||||
}
|
||||
|
||||
/*!
|
||||
Returns the layout behaviour of the disclosure buttons.
|
||||
Returns the layout behavior of the disclosure buttons.
|
||||
|
||||
@return BOOL - YES if the disclosure control indents itself with the dataview, otherwise NO if the control is always aligned to the left of the outline column
|
||||
*/
|
||||
@@ -624,7 +624,7 @@ var CPOutlineViewCoalesceSelectionNotificationStateOff = 0,
|
||||
/*!
|
||||
Returns the parent item for a given item. If the item is a top level root object nil is returned.
|
||||
|
||||
@param anItem - The item of the reciver.
|
||||
@param anItem - The item of the receiver.
|
||||
@return id - The parent item of anItem. If no parent exists (the item is a root item) nil is returned.
|
||||
*/
|
||||
- (id)parentForItem:(id)anItem
|
||||
@@ -668,7 +668,7 @@ var CPOutlineViewCoalesceSelectionNotificationStateOff = 0,
|
||||
If the item is not expandable a CGZeroRect is returned.
|
||||
Subclasses can return a CGZeroRect to prevent the disclosure control from being displayed.
|
||||
|
||||
@param aRow - The row of the reciever
|
||||
@param aRow - The row of the receiver
|
||||
@return CGRect - The rect of the disclosure button at aRow.
|
||||
*/
|
||||
- (CGRect)frameOfOutlineDisclosureControlAtRow:(CPInteger)aRow
|
||||
@@ -710,7 +710,7 @@ var CPOutlineViewCoalesceSelectionNotificationStateOff = 0,
|
||||
Called when the user resizes a column in the outlineview.
|
||||
|
||||
- (void)outlineViewItemDidCollapse:(CPNotification)notification;
|
||||
Called when the user collapses an item in teh outlineview.
|
||||
Called when the user collapses an item in the outlineview.
|
||||
|
||||
- (void)outlineViewItemDidExpand:(CPNotification)notification;
|
||||
Called when the user expands an item in the outlineview.
|
||||
@@ -763,7 +763,7 @@ var CPOutlineViewCoalesceSelectionNotificationStateOff = 0,
|
||||
This delegate method will be passed your 'item' object and expects you to return an integer height.
|
||||
NOTE: this should only be implemented if rows will be different heights, if you want to set a height for ALL of your rows see -setRowHeight:
|
||||
|
||||
@param aDelegate - the delegate object you wish to set for the reciever.
|
||||
@param aDelegate - the delegate object you wish to set for the receiver.
|
||||
<pre>
|
||||
*/
|
||||
- (void)setDelegate:(id)aDelegate
|
||||
@@ -948,7 +948,7 @@ var CPOutlineViewCoalesceSelectionNotificationStateOff = 0,
|
||||
_disclosureControlData = nil;
|
||||
_disclosureControlQueue = [];
|
||||
|
||||
// fIXME: reall?
|
||||
// fIXME: really?
|
||||
[self reloadData];
|
||||
}
|
||||
|
||||
@@ -961,7 +961,7 @@ var CPOutlineViewCoalesceSelectionNotificationStateOff = 0,
|
||||
}
|
||||
|
||||
/*!
|
||||
Adds a new table column to the reciever. If this is the first column added it will automatically be set to the outline column.
|
||||
Adds a new table column to the receiver. If this is the first column added it will automatically be set to the outline column.
|
||||
Also see -setOutlineTableColumn:
|
||||
NOTE: This behavior deviates from cocoa slightly.
|
||||
@param CPTableColumn aTableColumn - The table column to add.
|
||||
@@ -985,7 +985,7 @@ var CPOutlineViewCoalesceSelectionNotificationStateOff = 0,
|
||||
}
|
||||
/*!
|
||||
@ignore
|
||||
We overide this because we need a special behaviour for the outline column
|
||||
We override this because we need a special behavior for the outline column
|
||||
*/
|
||||
- (CGRect)frameOfDataViewAtColumn:(CPInteger)aColumn row:(CPInteger)aRow
|
||||
{
|
||||
@@ -999,7 +999,7 @@ var CPOutlineViewCoalesceSelectionNotificationStateOff = 0,
|
||||
|
||||
/*!
|
||||
@ignore
|
||||
we need to offset the dataview and add the dislosure triangle
|
||||
we need to offset the dataview and add the disclosure triangle
|
||||
*/
|
||||
- (CPView)_dragViewForColumn:(int)theColumnIndex event:(CPEvent)theDragEvent offset:(CPPointPointer)theDragViewOffset
|
||||
{
|
||||
|
||||
@@ -150,7 +150,7 @@ CPPopUpButtonStatePullsDown = CPThemeState("pulls-down");
|
||||
|
||||
/*!
|
||||
Adds a new menu item with the specified title.
|
||||
@param the new menu item's tite
|
||||
@param the new menu item's title
|
||||
*/
|
||||
- (void)addItemWithTitle:(CPString)aTitle
|
||||
{
|
||||
@@ -159,7 +159,7 @@ CPPopUpButtonStatePullsDown = CPThemeState("pulls-down");
|
||||
|
||||
/*!
|
||||
Adds multiple new menu items with the titles specified in the provided array.
|
||||
@param titles an arry of names for the new items
|
||||
@param titles an array of names for the new items
|
||||
*/
|
||||
- (void)addItemsWithTitles:(CPArray)titles
|
||||
{
|
||||
@@ -172,7 +172,7 @@ CPPopUpButtonStatePullsDown = CPThemeState("pulls-down");
|
||||
|
||||
/*!
|
||||
Inserts a new item with the specified title and index location.
|
||||
@param aTitle the new itme's title
|
||||
@param aTitle the new item's title
|
||||
@param anIndex the item's index in the menu
|
||||
*/
|
||||
- (void)insertItemWithTitle:(CPString)aTitle atIndex:(int)anIndex
|
||||
@@ -433,7 +433,7 @@ CPPopUpButtonStatePullsDown = CPThemeState("pulls-down");
|
||||
|
||||
/*!
|
||||
Returns the index of the item with the specified title or CPNotFound.
|
||||
@param aTitle the item's titel
|
||||
@param aTitle the item's title
|
||||
*/
|
||||
- (int)indexOfItemWithTitle:(CPString)aTitle
|
||||
{
|
||||
@@ -475,7 +475,7 @@ CPPopUpButtonStatePullsDown = CPThemeState("pulls-down");
|
||||
}
|
||||
|
||||
/*!
|
||||
Sets the preffered edge of the button to display the
|
||||
Sets the preferred edge of the button to display the
|
||||
pop-up when there is a limited amount of screen space.
|
||||
By default, the pop-up should draw on top of the button.
|
||||
*/
|
||||
@@ -738,7 +738,7 @@ CPPopUpButtonStatePullsDown = CPThemeState("pulls-down");
|
||||
|
||||
- (void)rightMouseDown:(CPEvent)anEvent
|
||||
{
|
||||
// Disable standard CPView behaviour which incorrectly displays the menu as a 'context menu'.
|
||||
// Disable standard CPView behavior which incorrectly displays the menu as a 'context menu'.
|
||||
}
|
||||
|
||||
- (void)_popUpItemAction:(id)aSender
|
||||
|
||||
@@ -120,7 +120,7 @@ var CPProgressIndicatorSpinningStyleColors = nil,
|
||||
|
||||
CPProgressIndicatorStyleSizes = [];
|
||||
|
||||
// Bar Sttyle
|
||||
// Bar Style
|
||||
var prefixes = [
|
||||
CPProgressIndicatorClassName + @"BezelBorder" + CPProgressIndicatorStyleIdentifiers[CPProgressIndicatorBarStyle],
|
||||
CPProgressIndicatorClassName + @"Bar" + CPProgressIndicatorStyleIdentifiers[CPProgressIndicatorBarStyle],
|
||||
@@ -290,7 +290,7 @@ var CPProgressIndicatorSpinningStyleColors = nil,
|
||||
}
|
||||
|
||||
/*
|
||||
Not yet impemented.
|
||||
Not yet implemented.
|
||||
*/
|
||||
- (CPControlTint)controlTint
|
||||
{
|
||||
|
||||
@@ -506,7 +506,7 @@
|
||||
}
|
||||
|
||||
/*!
|
||||
Sets whether the scroll view hides its scoll bars when not needed.
|
||||
Sets whether the scroll view hides its scroll bars when not needed.
|
||||
@param autohidesScrollers \c YES causes the scroll bars
|
||||
to be hidden when not needed.
|
||||
*/
|
||||
@@ -796,7 +796,7 @@
|
||||
|
||||
/*!
|
||||
Sets the vertical page scroll amount.
|
||||
@param aPageScroll the new vertcal page scroll amount
|
||||
@param aPageScroll the new vertical page scroll amount
|
||||
*/
|
||||
- (void)setVerticalPageScroll:(float)aPageScroll
|
||||
{
|
||||
|
||||
@@ -361,9 +361,9 @@ CPSegmentSwitchTrackingMomentary = 2;
|
||||
}
|
||||
|
||||
/*!
|
||||
Enables/diables the specified segment.
|
||||
Enables/disables the specified segment.
|
||||
@param isEnabled \c YES enables the segment
|
||||
@param aSegment the segment to enable/disble
|
||||
@param aSegment the segment to enable/disable
|
||||
@throws CPRangeException if \c aSegment is out of bounds
|
||||
*/
|
||||
- (void)setEnabled:(BOOL)isEnabled forSegment:(unsigned)aSegment
|
||||
|
||||
+1
-1
@@ -384,7 +384,7 @@ CPCircularSlider = 1;
|
||||
|
||||
/*!
|
||||
@ignore
|
||||
shoudl we have _continuous?
|
||||
should we have _continuous?
|
||||
*/
|
||||
- (void)setContinuous:(BOOL)flag
|
||||
{
|
||||
|
||||
+3
-3
@@ -77,7 +77,7 @@ CPSoundPlayBackStatePause = 2;
|
||||
Initialize with the sound contents of the URL represented by aFile.
|
||||
|
||||
@param aFile CPString the path of the sound
|
||||
@param byRef ignored (Cocoa compatibibility)
|
||||
@param byRef ignored (Cocoa compatibility)
|
||||
*/
|
||||
- (id)initWithContentsOfFile:(CPString)aFile byReference:(BOOL)byRef
|
||||
{
|
||||
@@ -94,7 +94,7 @@ CPSoundPlayBackStatePause = 2;
|
||||
Initialize with the sound contents of the file located at aURL.
|
||||
|
||||
@param aURL CPURL containing the URL of the sound
|
||||
@param byRef ignored (Cocoa compatibibility)
|
||||
@param byRef ignored (Cocoa compatibility)
|
||||
*/
|
||||
- (id)initWithContentsOfURL:(CPURL)aURL byReference:(BOOL)byRef
|
||||
{
|
||||
@@ -105,7 +105,7 @@ CPSoundPlayBackStatePause = 2;
|
||||
Initialize with the sound contents of someData.
|
||||
|
||||
@param someData CPData containing the sound
|
||||
@param byRef ignored (Cocoa compatibibility)
|
||||
@param byRef ignored (Cocoa compatibility)
|
||||
*/
|
||||
- (id)initWithData:(CPData)someData
|
||||
{
|
||||
|
||||
+12
-12
@@ -36,7 +36,7 @@ var CPSplitViewHorizontalImage = nil,
|
||||
@class CPSplitView
|
||||
|
||||
CPSplitView is a view that allows you to stack several subviews vertically or horizontally. The user is given divider to resize the subviews.
|
||||
The divider indicies are zero-based. So the divider on the top (or left for vertical dividers) will be index 0.
|
||||
The divider indices are zero-based. So the divider on the top (or left for vertical dividers) will be index 0.
|
||||
|
||||
CPSplitView can be supplied a delegate to provide control over the resizing of the splitview and subviews. Those methods are documented in setDelegate:
|
||||
|
||||
@@ -124,7 +124,7 @@ var CPSplitViewHorizontalImage = nil,
|
||||
|
||||
/*!
|
||||
Sets if the splitview dividers are vertical.
|
||||
@param shouldBeVertical - YES if the splitview diverers should be vertical, otherwise NO.
|
||||
@param shouldBeVertical - YES if the splitview dividers should be vertical, otherwise NO.
|
||||
*/
|
||||
- (void)setVertical:(BOOL)shouldBeVertical
|
||||
{
|
||||
@@ -169,7 +169,7 @@ var CPSplitViewHorizontalImage = nil,
|
||||
|
||||
/*!
|
||||
Use to find if the diver is a larger pane splitter.
|
||||
@return BOOL - YES if the divers are the larger pane splitters. Otherwise NO.
|
||||
@return BOOL - YES if the divers are the larger pane splitters. Otherwise NO.
|
||||
*/
|
||||
- (BOOL)isPaneSplitter
|
||||
{
|
||||
@@ -256,7 +256,7 @@ var CPSplitViewHorizontalImage = nil,
|
||||
}
|
||||
}
|
||||
/*!
|
||||
Draws the divder at a given rect.
|
||||
Draws the divider at a given rect.
|
||||
@param aRect - the rect of the divider to draw.
|
||||
*/
|
||||
- (void)drawDividerInRect:(CGRect)aRect
|
||||
@@ -706,7 +706,7 @@ var CPSplitViewHorizontalImage = nil,
|
||||
}
|
||||
|
||||
/*!
|
||||
Sets the delegate of the reciver.
|
||||
Sets the delegate of the receiver.
|
||||
Possible delegate methods to implement are listed below.
|
||||
|
||||
<pre>
|
||||
@@ -714,7 +714,7 @@ var CPSplitViewHorizontalImage = nil,
|
||||
Notifies the delegate when the subviews have resized.
|
||||
|
||||
- (void)splitViewWillResizeSubviews:(CPSplitView)aSplitView;
|
||||
Notifies the delegate when the subviews wil be resized.
|
||||
Notifies the delegate when the subviews will be resized.
|
||||
|
||||
- (CGRect)splitView:(CPSplitView)aSplitView effectiveRect:(CGRect)aRect forDrawnRect:(CGRect)aDrawnRect ofDividerAtIndex:(int)aDividerIndex;
|
||||
Lets the delegate specify a different rect for which the user can drag the splitView divider.
|
||||
@@ -723,25 +723,25 @@ var CPSplitViewHorizontalImage = nil,
|
||||
Lets the delegate specify an additional rect for which the user can drag the splitview divider.
|
||||
|
||||
- (BOOL)splitView:(CPSplitView)aSplitView canCollapseSubview:(CPView)aSubview;
|
||||
Notifies teh delegate that the splitview is about to be collapsed. This usally happens when the user
|
||||
Notifies the delegate that the splitview is about to be collapsed. This usually happens when the user
|
||||
Double clicks on the divider. Return YES if the subview can be collapsed, otherwise NO.
|
||||
|
||||
- (BOOL)splitView:(CPSplitView)aSplitView shouldCollapseSubview:(CPView)aSubview;
|
||||
Notifies teh delegate that the splitview is about to be collapsed. This usally happens when the user
|
||||
Notifies the delegate that the splitview is about to be collapsed. This usually happens when the user
|
||||
Double clicks on the divider. Return YES if the subview should be collapsed, otherwise NO.
|
||||
|
||||
- (float)splitView:(CPSplitView)aSpiltView constrainSplitPosition:(float)proposedPosition ofSubviewAt:(int)subviewIndex;
|
||||
Allows the delegate to constrain the subview beings resized. This method is called continiously as the user resizes the divider.
|
||||
Allows the delegate to constrain the subview beings resized. This method is called continuously as the user resizes the divider.
|
||||
For example if the subview needs to have a width which is a multiple of a certain number you could return that multiple with this method.
|
||||
|
||||
- (float)splitView:(CPSplitView)aSplitView constrainMinCoordinate:(float)proposedMin ofSubviewAt:(int)subviewIndex;
|
||||
Allows the delegate to constrain the minimum position of a subview.
|
||||
|
||||
- (float)splitView:(CPSplitView)aSplitView constrainMaxCoordinate:(float)proposedMax ofSubviewAt:(int)subviewIndex;
|
||||
Allows teh delegate to constraing the maximum position of a subview.
|
||||
Allows the delegate to constrain the maximum position of a subview.
|
||||
|
||||
- (void)splitView:(CPSplitView)aSplitView resizeSubviewsWithOldSize:(CGSize)oldSize;
|
||||
Allows the splitview to specify a custom resizing behaviour. This is called when the splitview is resized.
|
||||
Allows the splitview to specify a custom resizing behavior. This is called when the splitview is resized.
|
||||
The sum of the views and the sum of the dividers should be equal to the size of the splitview.
|
||||
</pre>
|
||||
|
||||
@@ -781,7 +781,7 @@ var CPSplitViewHorizontalImage = nil,
|
||||
parameters of the button bar, and will override any currently set values.
|
||||
|
||||
@param CPButtonBar - The supplied button bar.
|
||||
@param unsiged int - The divider index the button bar will be assigned to.
|
||||
@param unsigned int - The divider index the button bar will be assigned to.
|
||||
*/
|
||||
- (void)setButtonBar:(CPButtonBar)aButtonBar forDividerAtIndex:(unsigned)dividerIndex
|
||||
{
|
||||
|
||||
+1
-1
@@ -152,7 +152,7 @@ var CPStepperButtonsSize = CPSizeMake(19, 13);
|
||||
}
|
||||
|
||||
/*! set the current value of the stepper
|
||||
@param aValue a float contaning the value
|
||||
@param aValue a float containing the value
|
||||
*/
|
||||
- (void)setDoubleValue:(float)aValue
|
||||
{
|
||||
|
||||
@@ -145,8 +145,8 @@ CPPressedTab = 2;
|
||||
|
||||
// Assigning an Auxiliary View
|
||||
/*!
|
||||
Sets the tab's auxillary view.
|
||||
@param anAuxillaryView the new auxillary view
|
||||
Sets the tab's auxiliary view.
|
||||
@param anAuxiliaryView the new auxiliary view
|
||||
*/
|
||||
- (void)setAuxiliaryView:(CPView)anAuxiliaryView
|
||||
{
|
||||
@@ -154,7 +154,7 @@ CPPressedTab = 2;
|
||||
}
|
||||
|
||||
/*!
|
||||
Returns the tab's auxillary view
|
||||
Returns the tab's auxiliary view
|
||||
*/
|
||||
- (CPView)auxiliaryView
|
||||
{
|
||||
|
||||
@@ -37,9 +37,9 @@ CPTableColumnUserResizingMask = 1 << 1;
|
||||
@class CPTableColumn
|
||||
|
||||
A CPTableColumn contains a dataview to display for its column of the CPTableView.
|
||||
A CPTableColumn determines its own size constrains and resizing behaviour.
|
||||
A CPTableColumn determines its own size constrains and resizing behavior.
|
||||
|
||||
The default dataview is a CPTextField but you can set it to any view you'd like. See -setDataView: for documentaion including theme states.
|
||||
The default dataview is a CPTextField but you can set it to any view you'd like. See -setDataView: for documentation including theme states.
|
||||
|
||||
To customize the text of the column header you can simply call setStringValue: on the headerview of a table column.
|
||||
For example: [[myTableColumn headerView] setStringValue:"My Title"];
|
||||
@@ -253,7 +253,7 @@ CPTableColumnUserResizingMask = 1 << 1;
|
||||
/*!
|
||||
<pre>
|
||||
Set the resizing mask of the column.
|
||||
By default the column can be resized automatically with the tableview and manaully by the user
|
||||
By default the column can be resized automatically with the tableview and manually by the user
|
||||
|
||||
Possible masking values are:
|
||||
CPTableColumnNoResizing
|
||||
@@ -335,7 +335,7 @@ CPTableColumnUserResizingMask = 1 << 1;
|
||||
When you set a dataview and it is added to the tableview the theme state will be set to CPThemeStateTableDataView
|
||||
When the dataview becomes selected the theme state will be set to CPThemeStateSelectedDataView.
|
||||
|
||||
If the dataview shows up in a group row of the tablview the theme state will be set to CPThemeStateGroupRow.
|
||||
If the dataview shows up in a group row of the tableview the theme state will be set to CPThemeStateGroupRow.
|
||||
|
||||
You should overide setThemeState: and unsetThemeState: to handle these theme state changes in your dataview.
|
||||
|
||||
@@ -490,7 +490,7 @@ CPTableColumnUserResizingMask = 1 << 1;
|
||||
}
|
||||
|
||||
/*!
|
||||
If NO the tablecolumn will no longer be visisble in the tableview
|
||||
If NO the tablecolumn will no longer be visible in the tableview
|
||||
If YES the tablecolumn will be visible in the tableview.
|
||||
*/
|
||||
- (void)setHidden:(BOOL)shouldBeHidden
|
||||
@@ -574,12 +574,12 @@ CPTableColumnUserResizingMask = 1 << 1;
|
||||
}
|
||||
|
||||
/*!
|
||||
Binds the reciever to an object.
|
||||
Binds the receiver to an object.
|
||||
|
||||
@param CPString aBinding - The binding you wish to make. Typically CPValueBinding.
|
||||
@param id anObject - The object to bind the reciever to.
|
||||
@param CPString aKeyPath - The key path you wish to bind the reciver to.
|
||||
@param CPDictionary options - A dictionary of options for the binding. This paramater is optional, pass nil if you do not wish to use it.
|
||||
@param id anObject - The object to bind the receiver to.
|
||||
@param CPString aKeyPath - The key path you wish to bind the receiver to.
|
||||
@param CPDictionary options - A dictionary of options for the binding. This parameter is optional, pass nil if you do not wish to use it.
|
||||
*/
|
||||
- (void)bind:(CPString)aBinding toObject:(id)anObject withKeyPath:(CPString)aKeyPath options:(CPDictionary)options
|
||||
{
|
||||
|
||||
+30
-30
@@ -317,7 +317,7 @@ CPTableViewFirstColumnOnlyAutoresizingStyle = 5;
|
||||
|
||||
/*!
|
||||
@ignore
|
||||
FIX ME: we have a lot of redundent init stuff in initWithFrame: and initWithCoder: we should move it all into here.
|
||||
FIX ME: we have a lot of redundant init stuff in initWithFrame: and initWithCoder: we should move it all into here.
|
||||
we should do a full audit of all the initializers before 1.0
|
||||
*/
|
||||
- (void)_init
|
||||
@@ -382,14 +382,14 @@ CPTableViewFirstColumnOnlyAutoresizingStyle = 5;
|
||||
/*!
|
||||
<pre>
|
||||
Sets the receiver's data source to a given object.
|
||||
The data source implements various methods for handeling the tableview's data when bindings are not used.
|
||||
The data source implements various methods for handling the tableview's data when bindings are not used.
|
||||
|
||||
Methonds include:
|
||||
Methods include:
|
||||
- (int)numberOfRowsInTableView:(CPTableView)aTableView;
|
||||
Returns the number of rows in the tableview
|
||||
|
||||
- (id)tableView:(CPTableView)aTableView objectValueForTableColumn:(CPTableColumn)aColumn row:(int)aRowIndex;
|
||||
Returns the object value for each dataview. Each dataview will be sent a setObjectValue: method which will contai
|
||||
Returns the object value for each dataview. Each dataview will be sent a setObjectValue: method which will contain
|
||||
the object you return from this datasource method.
|
||||
|
||||
Editing:
|
||||
@@ -401,15 +401,15 @@ CPTableViewFirstColumnOnlyAutoresizingStyle = 5;
|
||||
The tableview will call this method if you click the tableheader. You should sort the datasource based off of the new sort descriptors and reload the data
|
||||
|
||||
Drag and Drop:
|
||||
In order for the tableview to recieve drops dont forget to first register the tableview for drag types like you do with every other view
|
||||
In order for the tableview to receive drops don't forget to first register the tableview for drag types like you do with every other view
|
||||
|
||||
- (CPDragOperation)tableView:(CPTableView)aTableView validateDrop:(CPDraggingInfo)info proposedRow:(int)row proposedDropOperation:(CPTableViewDropOperation)operation;
|
||||
Return the drag operation (move, copy, etc) that should be performaned if a registered drag type is over the tableview
|
||||
Return the drag operation (move, copy, etc) that should be performed if a registered drag type is over the tableview
|
||||
The data source can retarget a drop if you want by calling -(void)setDropRow:(int)aRow dropOperation:(CPTableViewDropOperation)anOperation;
|
||||
|
||||
- (BOOL)tableView:(CPTableView)aTableView writeRowsWithIndexes:(CPIndexSet)rowIndexes toPasteboard:(CPPasteboard)pboard;
|
||||
Returns YES if the drop operation is allowed otherwise NO.
|
||||
This method is invoked by the tabeview after a drag should begin, but before it is started. If you dont want the drag to being return NO.
|
||||
This method is invoked by the tableview after a drag should begin, but before it is started. If you don't want the drag to being return NO.
|
||||
If you want the drag to begin you should return YES and place the drag data on the pboard.
|
||||
|
||||
- (BOOL)tableView:(CPTableView)aTableView acceptDrop:(CPDraggingInfo)info row:(int)row dropOperation:(CPTableViewDropOperation)operation;
|
||||
@@ -630,7 +630,7 @@ CPTableViewFirstColumnOnlyAutoresizingStyle = 5;
|
||||
Sets the width and height between dataviews.
|
||||
This value is (3.0, 2.0) by default.
|
||||
|
||||
@param aSize a CGSize object that degined the space between the cells
|
||||
@param aSize a CGSize object that defines the space between the cells
|
||||
*/
|
||||
- (void)setIntercellSpacing:(CGSize)aSize
|
||||
{
|
||||
@@ -709,7 +709,7 @@ CPTableViewFirstColumnOnlyAutoresizingStyle = 5;
|
||||
}
|
||||
|
||||
/*!
|
||||
Sets the colors for the rows as they alternate. The number of colors can be arbitrary. By deafult these colors are white and light blue.
|
||||
Sets the colors for the rows as they alternate. The number of colors can be arbitrary. By default these colors are white and light blue.
|
||||
@param anArray an array of CPColors
|
||||
*/
|
||||
|
||||
@@ -927,7 +927,7 @@ CPTableViewFirstColumnOnlyAutoresizingStyle = 5;
|
||||
|
||||
/*!
|
||||
@ignore
|
||||
Interally used to set a column that will be dragged
|
||||
Internally used to set a column that will be dragged
|
||||
*/
|
||||
- (void)_setDraggedColumn:(CPTableColumn)aColumn
|
||||
{
|
||||
@@ -1399,7 +1399,7 @@ CPTableViewFirstColumnOnlyAutoresizingStyle = 5;
|
||||
*/
|
||||
- (void)editColumn:(CPInteger)columnIndex row:(CPInteger)rowIndex withEvent:(CPEvent)theEvent select:(BOOL)flag
|
||||
{
|
||||
// FIX ME: Cocoa documenation says all this should be called in THIS method:
|
||||
// FIX ME: Cocoa documentation says all this should be called in THIS method:
|
||||
// sets up the field editor, and sends selectWithFrame:inView:editor:delegate:start:length: and editWithFrame:inView:editor:delegate:event: to the field editor's NSCell object with the NSTableView as the text delegate.
|
||||
|
||||
if (![self isRowSelected:rowIndex])
|
||||
@@ -1474,7 +1474,7 @@ CPTableViewFirstColumnOnlyAutoresizingStyle = 5;
|
||||
Sets the headerview for the tableview. This is the container view for the table column header views.
|
||||
This view also handles events for resizing and dragging.
|
||||
|
||||
If you dont want your tableview to have a headerview you should pass nil. (also see setCornerView:)
|
||||
If you don't want your tableview to have a headerview you should pass nil. (also see setCornerView:)
|
||||
If you're looking to customize the header text of a column see CPTableColumn's -(CPView)headerView; method.
|
||||
*/
|
||||
- (void)setHeaderView:(CPView)aHeaderView
|
||||
@@ -1919,7 +1919,7 @@ CPTableViewFirstColumnOnlyAutoresizingStyle = 5;
|
||||
i = 0;
|
||||
|
||||
// find resizable columns
|
||||
// FIX ME: we could cache resizableColumns after this loop and reuse it durring the resize
|
||||
// FIX ME: we could cache resizableColumns after this loop and reuse it during the resize
|
||||
for (; i < count; i++)
|
||||
{
|
||||
var tableColumn = _tableColumns[i];
|
||||
@@ -2285,7 +2285,7 @@ CPTableViewFirstColumnOnlyAutoresizingStyle = 5;
|
||||
Called when the tableview is about to display a dataview
|
||||
|
||||
- (BOOL)tableView:(CPTableView)tableView isGroupRow:(int)row;
|
||||
Group rows are a way to seperate a groups of data in a tableview. Return YES if the given row is a group row, otherwise NO.
|
||||
Group rows are a way to separate a groups of data in a tableview. Return YES if the given row is a group row, otherwise NO.
|
||||
|
||||
Editing Cells
|
||||
- (BOOL)tableView:(CPTableView)aTableView shouldEditTableColumn:(CPTableColumn)aTableColumn row:(int)rowIndex;
|
||||
@@ -2310,7 +2310,7 @@ CPTableViewFirstColumnOnlyAutoresizingStyle = 5;
|
||||
NOTE: this is only called via user interaction
|
||||
|
||||
- (void)tableViewSelectionIsChanging:(CPNotification)aNotification
|
||||
Inform the delegate that the tableview is in the process of chaning the selection.
|
||||
Inform the delegate that the tableview is in the process of chaining the selection.
|
||||
This usually happens when the user is dragging their mouse across rows.
|
||||
NOTE: this is only called via user interaction
|
||||
|
||||
@@ -2324,7 +2324,7 @@ CPTableViewFirstColumnOnlyAutoresizingStyle = 5;
|
||||
Return YES if the column at a given index should move to a new column index, otherwise NO.
|
||||
|
||||
- (void)tableView:(CPTableView)tableView didDragTableColumn:(CPTableColumn)tableColumn;
|
||||
Notifies the delegate that the tableview drag occured. This is send on mouse up.
|
||||
Notifies the delegate that the tableview drag occurred. This is send on mouse up.
|
||||
|
||||
- (void)tableViewColumnDidMove:(CPNotification)aNotification;
|
||||
Notifies the delegate that a tablecolumn was moved by the user.
|
||||
@@ -2685,7 +2685,7 @@ CPTableViewFirstColumnOnlyAutoresizingStyle = 5;
|
||||
@param dragRows an index set with the dragged row indexes
|
||||
@param theTableColumns an array of the table columns which are being dragged
|
||||
@param dragEvent the event which initiated the drag
|
||||
@param offset a point at wihch to set the drag image to be offset from the cursor
|
||||
@param offset a point at which to set the drag image to be offset from the cursor
|
||||
|
||||
@return CPImage an image to use for the drag feedback
|
||||
*/
|
||||
@@ -2695,14 +2695,14 @@ CPTableViewFirstColumnOnlyAutoresizingStyle = 5;
|
||||
}
|
||||
|
||||
/*!
|
||||
Computes and returns a view to use for dragging. By default this is a slighly transparent copy of the dataviews which are being dragged.
|
||||
You can override this in a subclas to show different dragging feedback. Additionally you can return nil from this method and implement:
|
||||
Computes and returns a view to use for dragging. By default this is a slightly transparent copy of the dataviews which are being dragged.
|
||||
You can override this in a subclass to show different dragging feedback. Additionally you can return nil from this method and implement:
|
||||
- (CPImage)dragImageForRowsWithIndexes:tableColumns:event:offset: - if you want to return a simple image.
|
||||
|
||||
@param dragRows an index set with the dragged row indexes
|
||||
@param theTableColumns an array of the table columns which are being dragged
|
||||
@param dragEvent the event which initiated the drag
|
||||
@param offset a point at wihch to set the drag image to be offset from the cursor
|
||||
@param offset a point at which to set the drag image to be offset from the cursor
|
||||
|
||||
@return CPView a view used as the dragging feedback
|
||||
*/
|
||||
@@ -2795,12 +2795,12 @@ CPTableViewFirstColumnOnlyAutoresizingStyle = 5;
|
||||
}
|
||||
|
||||
/*!
|
||||
Sets the default operation mask for the drag behaviour of the table view.
|
||||
Sets the default operation mask for the drag behavior of the table view.
|
||||
NOTE: isLocal is not implemented.
|
||||
*/
|
||||
- (void)setDraggingSourceOperationMask:(CPDragOperation)mask forLocal:(BOOL)isLocal
|
||||
{
|
||||
//ignoral local for the time being since only one capp app can run at a time...
|
||||
//ignore local for the time being since only one capp app can run at a time...
|
||||
_dragOperationDefaultMask = mask;
|
||||
}
|
||||
|
||||
@@ -2828,7 +2828,7 @@ CPTableViewFirstColumnOnlyAutoresizingStyle = 5;
|
||||
/*!
|
||||
<pre>
|
||||
Sets the feedback style for when the table is the destination of a drag operation.
|
||||
This style is used to determine how the tableview looks when it is the reciever of a drag and drop operation.
|
||||
This style is used to determine how the tableview looks when it is the receiver of a drag and drop operation.
|
||||
|
||||
Can be:
|
||||
CPTableViewDraggingDestinationFeedbackStyleNone
|
||||
@@ -3285,7 +3285,7 @@ CPTableViewFirstColumnOnlyAutoresizingStyle = 5;
|
||||
if ([sender isKindOfClass:[CPTextField class]])
|
||||
[sender setBezeled:NO];
|
||||
|
||||
[self reloadDataForRowIndexes:[CPIndexSet indexSetWithIndex:sender.tableViewEditedRowIndex]
|
||||
[self reloadDataForRowIndexes:[CPIndexSet indexSetWithIndex:sender.tableViewEditedRowIndex]
|
||||
columnIndexes:[CPIndexSet indexSetWithIndex:[_tableColumns indexOfObject:sender.tableViewEditedColumnObj]]];
|
||||
|
||||
[[self window] makeFirstResponder:self];
|
||||
@@ -3602,7 +3602,7 @@ CPTableViewFirstColumnOnlyAutoresizingStyle = 5;
|
||||
|
||||
var normalSelectionHighlightColor = [self selectionHighlightColor];
|
||||
|
||||
// dont do these lookups if there are no group rows
|
||||
// don't do these lookups if there are no group rows
|
||||
if ([_groupRows count])
|
||||
{
|
||||
var topGroupLineColor = [CPColor colorWithCalibratedWhite:212.0 / 255.0 alpha:1.0],
|
||||
@@ -3786,7 +3786,7 @@ CPTableViewFirstColumnOnlyAutoresizingStyle = 5;
|
||||
*/
|
||||
- (void)drawRow:(CPInteger)row clipRect:(CGRect)rect
|
||||
{
|
||||
// This method does currently nothing in cappuccino. Can be overriden by subclasses.
|
||||
// This method does currently nothing in cappuccino. Can be overridden by subclasses.
|
||||
|
||||
}
|
||||
|
||||
@@ -3874,7 +3874,7 @@ CPTableViewFirstColumnOnlyAutoresizingStyle = 5;
|
||||
{
|
||||
var row = [self rowAtPoint:aPoint];
|
||||
|
||||
//if the user clicks outside a row then deslect everything
|
||||
//if the user clicks outside a row then deselect everything
|
||||
if (row < 0 && _allowsEmptySelection)
|
||||
[self selectRowIndexes:[CPIndexSet indexSet] byExtendingSelection:NO];
|
||||
|
||||
@@ -3964,7 +3964,7 @@ CPTableViewFirstColumnOnlyAutoresizingStyle = 5;
|
||||
tableColumns = [_tableColumns objectsAtIndexes:_exposedColumns];
|
||||
|
||||
// We deviate from the default Cocoa implementation here by asking for a view in stead of an image
|
||||
// We support both, but the view prefered over the image because we can mimic the rows we are dragging
|
||||
// We support both, but the view preferred over the image because we can mimic the rows we are dragging
|
||||
// by re-creating the data views for the dragged rows
|
||||
var view = [self dragViewForRowsWithIndexes:_draggedRowIndexes
|
||||
tableColumns:tableColumns
|
||||
@@ -4446,7 +4446,7 @@ CPTableViewFirstColumnOnlyAutoresizingStyle = 5;
|
||||
var character = [anEvent charactersIgnoringModifiers],
|
||||
modifierFlags = [anEvent modifierFlags];
|
||||
|
||||
// Check for the key events manually, as opossed to waiting for CPWindow to sent the actual actio message
|
||||
// Check for the key events manually, as opposed to waiting for CPWindow to sent the actual action message
|
||||
// in _processKeyboardUIKey:, because we might not want to handle the arrow events.
|
||||
if (character === CPUpArrowFunctionKey || character === CPDownArrowFunctionKey)
|
||||
{
|
||||
@@ -4472,7 +4472,7 @@ CPTableViewFirstColumnOnlyAutoresizingStyle = 5;
|
||||
|
||||
/*!
|
||||
@ignore
|
||||
Selection behaviour depends on two things:
|
||||
Selection behavior depends on two things:
|
||||
_lastSelectedRow and the anchored selection (the last row selected by itself)
|
||||
*/
|
||||
- (void)_moveSelectionWithEvent:(CPEvent)theEvent upward:(BOOL)shouldGoUpward
|
||||
|
||||
@@ -531,7 +531,7 @@ CPTextFieldStatePlaceholder = CPThemeState("placeholder");
|
||||
element.style.top = topPoint;
|
||||
element.style.left = (_CGRectGetMinX(contentRect) - 1) + "px"; // why -1?
|
||||
element.style.width = _CGRectGetWidth(contentRect) + "px";
|
||||
element.style.height = font._lineHeight + "px"; // private ivar for the line height of the DOM text at this particaulr size
|
||||
element.style.height = font._lineHeight + "px"; // private ivar for the line height of the DOM text at this particular size
|
||||
|
||||
_DOMElement.appendChild(element);
|
||||
|
||||
@@ -720,8 +720,8 @@ CPTextFieldStatePlaceholder = CPThemeState("placeholder");
|
||||
/*!
|
||||
Invoke the action specified by aSelector on the current responder.
|
||||
|
||||
This is implemented by CPResponder and by default it passes any unrecignized
|
||||
actions on to the next responder but text fields appearently aren't supposed
|
||||
This is implemented by CPResponder and by default it passes any unrecognized
|
||||
actions on to the next responder but text fields apparently aren't supposed
|
||||
to do that according to this documentation by Apple:
|
||||
|
||||
http://developer.apple.com/mac/library/documentation/cocoa/reference/NSTextInputClient_Protocol/Reference/Reference.html#//apple_ref/occ/intfm/NSTextInputClient/doCommandBySelector:
|
||||
|
||||
@@ -179,7 +179,7 @@ var CPThemeStateAutoCompleting = @"CPThemeStateAutoCompleting",
|
||||
token = [self _inputElement].value;
|
||||
|
||||
// Make sure the user typed an actual token to prevent the previous token from being emptied
|
||||
// If the input area is empty, we want to fallback to the normal behaviour, resigning first responder or select the next or previous key view
|
||||
// If the input area is empty, we want to fallback to the normal behavior, resigning first responder or select the next or previous key view
|
||||
if (!token || token === @"")
|
||||
{
|
||||
if (DOMEvent && DOMEvent.keyCode === CPTabKeyCode)
|
||||
@@ -198,7 +198,7 @@ var CPThemeStateAutoCompleting = @"CPThemeStateAutoCompleting",
|
||||
var objectValue = [self objectValue];
|
||||
|
||||
// Remove the uncompleted token and add the token string.
|
||||
// Explicitely remove the last object because the array contains strings and removeObject uses isEqual to compare objects
|
||||
// Explicitly remove the last object because the array contains strings and removeObject uses isEqual to compare objects
|
||||
if (shouldRemoveLastObject)
|
||||
[objectValue removeObjectAtIndex:_selectedRange.location];
|
||||
|
||||
@@ -455,7 +455,7 @@ var CPThemeStateAutoCompleting = @"CPThemeStateAutoCompleting",
|
||||
- (CPArray)_tokens
|
||||
{
|
||||
// We return super here because objectValue uses this method
|
||||
// If we called self we would loop infinitly
|
||||
// If we called self we would loop infinitely
|
||||
return [super objectValue];
|
||||
}
|
||||
|
||||
@@ -633,7 +633,7 @@ var CPThemeStateAutoCompleting = @"CPThemeStateAutoCompleting",
|
||||
|
||||
CPTokenFieldTextDidChangeValue = [CPTokenFieldInputOwner stringValue];
|
||||
|
||||
// Update the selectedIndex if necesary
|
||||
// Update the selectedIndex if necessary
|
||||
var index = [[CPTokenFieldInputOwner autocompleteView] selectedRow];
|
||||
|
||||
if (aDOMEvent.keyCode === CPUpArrowKeyCode)
|
||||
@@ -665,7 +665,7 @@ var CPThemeStateAutoCompleting = @"CPThemeStateAutoCompleting",
|
||||
aDOMEvent.stopPropagation();
|
||||
aDOMEvent.cancelBubble = true;
|
||||
|
||||
// Only resign first responder if we weren't autocompleting
|
||||
// Only resign first responder if we weren't auto-completing
|
||||
if (![CPTokenFieldInputOwner hasThemeState:CPThemeStateAutoCompleting])
|
||||
{
|
||||
if (aDOMEvent && aDOMEvent.keyCode === CPReturnKeyCode)
|
||||
@@ -1129,7 +1129,7 @@ var CPThemeStateAutoCompleting = @"CPThemeStateAutoCompleting",
|
||||
return [];
|
||||
}
|
||||
|
||||
// // Alows the delegate to provide a string to be displayed as a proxy for the given represented object.
|
||||
// // Allows the delegate to provide a string to be displayed as a proxy for the given represented object.
|
||||
// // If you return nil or do not implement this method, then representedObject is displayed as the string.
|
||||
- (CPString)tokenField:(CPTokenField)tokenField displayStringForRepresentedObject:(id)representedObject
|
||||
{
|
||||
|
||||
+1
-1
@@ -464,7 +464,7 @@ var CPToolbarIdentifierKey = @"CPToolbarIdentifierKey",
|
||||
// Because we don't know if a delegate will be set later (it is optional
|
||||
// as of OS X 10.5), we need to call -_reloadToolbarItems here.
|
||||
// In order to load any toolbar items that may have been configured in the
|
||||
// Cib. Unfortunatelly this means that if there is a delegate
|
||||
// Cib. Unfortunately this means that if there is a delegate
|
||||
// specified, it will be read later and the resulting call to -setDelegate:
|
||||
// will cause -_reloadToolbarItems] to run again :-(
|
||||
// FIXME: Can we make this better?
|
||||
|
||||
+4
-4
@@ -705,7 +705,7 @@ var CPViewFlags = { },
|
||||
Sets the frame size of the receiver to the dimensions and origin of the provided rectangle in the coordinate system
|
||||
of the superview. The method also posts an CPViewFrameDidChangeNotification to the notification
|
||||
center if the receiver is configured to do so. If the frame is the same as the current frame, the method simply
|
||||
returns (and no notificaion is posted).
|
||||
returns (and no notification is posted).
|
||||
@param aFrame the rectangle specifying the new origin and size of the receiver
|
||||
*/
|
||||
- (void)setFrame:(CGRect)aFrame
|
||||
@@ -1735,7 +1735,7 @@ setBoundsOrigin:
|
||||
@param aLocation the lower-left corner coordinate of \c anImage
|
||||
@param mouseOffset the distance from the \c -mouseDown: location and the current location
|
||||
@param anEvent the \c -mouseDown: that triggered the drag
|
||||
@param aPastebaord the pasteboard that holds the drag data
|
||||
@param aPasteboard the pasteboard that holds the drag data
|
||||
@param aSourceObject the drag operation controller
|
||||
@param slideBack Whether the image should 'slide back' if the drag is rejected
|
||||
*/
|
||||
@@ -1750,7 +1750,7 @@ setBoundsOrigin:
|
||||
@param aLocation the top-left corner coordinate of \c aView
|
||||
@param mouseOffset the distance from the \c -mouseDown: location and the current location
|
||||
@param anEvent the \c -mouseDown: that triggered the drag
|
||||
@param aPastebaord the pasteboard that holds the drag data
|
||||
@param aPasteboard the pasteboard that holds the drag data
|
||||
@param aSourceObject the drag operation controller
|
||||
@param slideBack Whether the view should 'slide back' if the drag is rejected
|
||||
*/
|
||||
@@ -2100,7 +2100,7 @@ setBoundsOrigin:
|
||||
|
||||
/*!
|
||||
Scrolls the clip view to a specified point
|
||||
@param the clip view to scoll
|
||||
@param the clip view to scroll
|
||||
@param the point to scroll to
|
||||
*/
|
||||
- (void)scrollClipView:(CPClipView)aClipView toPoint:(CGPoint)aPoint
|
||||
|
||||
@@ -62,7 +62,7 @@ CPViewAnimationFadeOutEffect = @"CPViewAnimationFadeOutEffect";
|
||||
|
||||
If you pass nil instead of an array of dictionaries you should later call setViewAnimations:
|
||||
|
||||
@param viewAnimtions - An array of CPDictionaries for each animation.
|
||||
@param viewAnimations - An array of CPDictionaries for each animation.
|
||||
*/
|
||||
- (id)initWithViewAnimations:(CPArray)viewAnimations
|
||||
{
|
||||
|
||||
+15
-15
@@ -48,7 +48,7 @@ CPWebViewScrollNative = 2;
|
||||
|
||||
CPWebView is a class which allows you to display arbitrary HTML or embed a webpage inside your application.
|
||||
|
||||
It's imporant to note that the same origin policy applies to this view. That is, you will have limited control over this view
|
||||
It's important to note that the same origin policy applies to this view. That is, you will have limited control over this view
|
||||
if the webpage being displayed is not located on the same origin (protocol, domain, and port) as the application.
|
||||
*/
|
||||
|
||||
@@ -244,7 +244,7 @@ CPWebViewScrollNative = 2;
|
||||
}
|
||||
|
||||
/*!
|
||||
Sets the scroll mode of the reciver. This could be CPWebViewScrollAppKit or CPWebViewScrollNative.
|
||||
Sets the scroll mode of the receiver. This could be CPWebViewScrollAppKit or CPWebViewScrollNative.
|
||||
*/
|
||||
- (void)setScrollMode:(int)aScrollMode
|
||||
{
|
||||
@@ -413,7 +413,7 @@ CPWebViewScrollNative = 2;
|
||||
|
||||
/*!
|
||||
Tells the webview to navigate to the previous page.
|
||||
@return BOOL - YES if the reciver was able to go back, otherwise NO.
|
||||
@return BOOL - YES if the receiver was able to go back, otherwise NO.
|
||||
*/
|
||||
- (BOOL)goBack
|
||||
{
|
||||
@@ -432,8 +432,8 @@ CPWebViewScrollNative = 2;
|
||||
}
|
||||
|
||||
/*!
|
||||
Tells the reciever to go forward in page history.
|
||||
@return - YES if the reciever was able to go forward, otherwise NO.
|
||||
Tells the receiver to go forward in page history.
|
||||
@return - YES if the receiver was able to go forward, otherwise NO.
|
||||
*/
|
||||
- (BOOL)goForward
|
||||
{
|
||||
@@ -453,7 +453,7 @@ CPWebViewScrollNative = 2;
|
||||
|
||||
/*!
|
||||
Checks to see if the webview has a history stack you can navigate back through.
|
||||
@return BOOL - YES if the reciver can navigate backward through history, otherwise NO.
|
||||
@return BOOL - YES if the receiver can navigate backward through history, otherwise NO.
|
||||
*/
|
||||
- (BOOL)canGoBack
|
||||
{
|
||||
@@ -462,7 +462,7 @@ CPWebViewScrollNative = 2;
|
||||
|
||||
/*!
|
||||
Checks to see if the webview has a history stack you can navigate forward through.
|
||||
@return BOOL - YES if the reciver can navigate forward through history, otherwise NO.
|
||||
@return BOOL - YES if the receiver can navigate forward through history, otherwise NO.
|
||||
*/
|
||||
- (BOOL)canGoForward
|
||||
{
|
||||
@@ -535,7 +535,7 @@ CPWebViewScrollNative = 2;
|
||||
|
||||
@param DOMElement - An Element.
|
||||
@param pseudoElement - A pseudoElement.
|
||||
@reutn DOMCSSStyleDeclaration - The computed style for an element.
|
||||
@return DOMCSSStyleDeclaration - The computed style for an element.
|
||||
*/
|
||||
- (DOMCSSStyleDeclaration)computedStyleForElement:(DOMElement)element pseudoElement:(CPString)pseudoElement
|
||||
{
|
||||
@@ -571,7 +571,7 @@ CPWebViewScrollNative = 2;
|
||||
// IBActions
|
||||
|
||||
/*!
|
||||
Used with the target/action mechonism to automatically set the webviews mainFrameURL to the senders stringValue.
|
||||
Used with the target/action mechanism to automatically set the webviews mainFrameURL to the senders stringValue.
|
||||
@param sender - the sender of the action. Should respond to -stringValue.
|
||||
*/
|
||||
- (@action)takeStringURLFrom:(id)sender
|
||||
@@ -580,7 +580,7 @@ CPWebViewScrollNative = 2;
|
||||
}
|
||||
|
||||
/*!
|
||||
Same as -goBack but takes a sender as a parm.
|
||||
Same as -goBack but takes a sender as a param.
|
||||
@param sender - the sender of the action.
|
||||
*/
|
||||
- (@action)goBack:(id)sender
|
||||
@@ -589,7 +589,7 @@ CPWebViewScrollNative = 2;
|
||||
}
|
||||
|
||||
/*!
|
||||
Same as -goForward but takes a sender as a parm.
|
||||
Same as -goForward but takes a sender as a param.
|
||||
@param sender - the sender of the action.
|
||||
*/
|
||||
- (@action)goForward:(id)sender
|
||||
@@ -703,7 +703,7 @@ CPWebViewScrollNative = 2;
|
||||
}
|
||||
|
||||
/*!
|
||||
Call a method with arguments on the reciever.
|
||||
Call a method with arguments on the receiver.
|
||||
@param methodName - The method that should be called.
|
||||
@param args - An array of arguments to pass to the method call.
|
||||
*/
|
||||
@@ -724,20 +724,20 @@ CPWebViewScrollNative = 2;
|
||||
Evaluates a string of javascript and returns the result.
|
||||
|
||||
@param script - The script to run.
|
||||
@retrun - The result of the evaluation. undefined is returned if nothing else is.
|
||||
@return - The result of the evaluation. undefined is returned if nothing else is.
|
||||
*/
|
||||
- (id)evaluateWebScript:(CPString)script
|
||||
{
|
||||
try {
|
||||
return _window.eval(script);
|
||||
} catch (e) {
|
||||
// FIX ME: if we fail inside here, shouldnt we return an exception?
|
||||
// FIX ME: if we fail inside here, shouldn't we return an exception?
|
||||
}
|
||||
return undefined;
|
||||
}
|
||||
|
||||
/*!
|
||||
Returns the recievers Window object.
|
||||
Returns the receivers Window object.
|
||||
*/
|
||||
- (Window)window
|
||||
{
|
||||
|
||||
+16
-16
@@ -540,7 +540,7 @@ CPTexturedBackgroundWindowMask
|
||||
}
|
||||
|
||||
/*!
|
||||
Sets the reciever as a full platform window. If you pass YES the CPWindow instance will fill the entier browser content area,
|
||||
Sets the receiver as a full platform window. If you pass YES the CPWindow instance will fill the entire browser content area,
|
||||
otherwise the CPWindow will be a window inside of your browser window which the user can drag around, and resize (if you allow).
|
||||
|
||||
@param BOOL - YES if the window should fill the browser window, otherwise NO.
|
||||
@@ -668,9 +668,9 @@ CPTexturedBackgroundWindowMask
|
||||
/*!
|
||||
Sets the frame of the window.
|
||||
|
||||
@param aFrame - A CGRect of the new frame for the reciever.
|
||||
@param aFrame - A CGRect of the new frame for the receiver.
|
||||
@param shouldDisplay - YES if the window should call setNeedsDisplay otherwise NO.
|
||||
@param shouldAniamte - YES if the window should animate to it's new size and position, otherwise NO.
|
||||
@param shouldAnimate - YES if the window should animate to it's new size and position, otherwise NO.
|
||||
*/
|
||||
- (void)setFrame:(CGRect)aFrame display:(BOOL)shouldDisplay animate:(BOOL)shouldAnimate
|
||||
{
|
||||
@@ -1146,7 +1146,7 @@ CPTexturedBackgroundWindowMask
|
||||
}
|
||||
|
||||
/*!
|
||||
Sets the shadow style of the reciever.
|
||||
Sets the shadow style of the receiver.
|
||||
Values are:
|
||||
<pre>
|
||||
CPWindowShadowStyleStandard
|
||||
@@ -1154,7 +1154,7 @@ CPTexturedBackgroundWindowMask
|
||||
CPWindowShadowStylePanel
|
||||
</pre>
|
||||
|
||||
@param aStyle - The new shadow style of the reciever.
|
||||
@param aStyle - The new shadow style of the receiver.
|
||||
*/
|
||||
- (void)setShadowStyle:(unsigned)aStyle
|
||||
{
|
||||
@@ -1676,7 +1676,7 @@ CPTexturedBackgroundWindowMask
|
||||
@param aLocation the lower-left corner coordinate of \c anImage
|
||||
@param mouseOffset the distance from the \c -mouseDown: location and the current location
|
||||
@param anEvent the \c -mouseDown: that triggered the drag
|
||||
@param aPastebaord the pasteboard that holds the drag data
|
||||
@param aPasteboard the pasteboard that holds the drag data
|
||||
@param aSourceObject the drag operation controller
|
||||
@param slideBack Whether the image should 'slide back' if the drag is rejected
|
||||
*/
|
||||
@@ -1713,7 +1713,7 @@ CPTexturedBackgroundWindowMask
|
||||
@param aLocation the lower-left corner coordinate of \c aView
|
||||
@param mouseOffset the distance from the \c -mouseDown: location and the current location
|
||||
@param anEvent the \c -mouseDown: that triggered the drag
|
||||
@param aPastebaord the pasteboard that holds the drag data
|
||||
@param aPasteboard the pasteboard that holds the drag data
|
||||
@param aSourceObject the drag operation controller
|
||||
@param slideBack Whether the view should 'slide back' if the drag is rejected
|
||||
*/
|
||||
@@ -1864,7 +1864,7 @@ CPTexturedBackgroundWindowMask
|
||||
}
|
||||
|
||||
/*!
|
||||
Restores a mimized window to it's original size.
|
||||
Restores a minimized window to it's original size.
|
||||
*/
|
||||
- (void)deminiaturize:(id)sender
|
||||
{
|
||||
@@ -2504,7 +2504,7 @@ CPTexturedBackgroundWindowMask
|
||||
}
|
||||
|
||||
/*!
|
||||
Returns the default button of the reciever.
|
||||
Returns the default button of the receiver.
|
||||
NOTE: This method is deprecated. Use defaultButton instead.
|
||||
*/
|
||||
- (CPButton)defaultButtonCell
|
||||
@@ -2514,7 +2514,7 @@ CPTexturedBackgroundWindowMask
|
||||
|
||||
/*!
|
||||
Sets the default button for the window.
|
||||
This is equivilant to setting the the key equivilant of the button to "return".
|
||||
This is equivalent to setting the the key equivalent of the button to "return".
|
||||
Additionally this will turn your button blue (with the Aristo theme).
|
||||
@param aButton - The button that should become default.
|
||||
*/
|
||||
@@ -2533,7 +2533,7 @@ CPTexturedBackgroundWindowMask
|
||||
}
|
||||
|
||||
/*!
|
||||
Returns the default button of the reciever.
|
||||
Returns the default button of the receiver.
|
||||
*/
|
||||
- (CPButton)defaultButton
|
||||
{
|
||||
@@ -2541,7 +2541,7 @@ CPTexturedBackgroundWindowMask
|
||||
}
|
||||
|
||||
/*!
|
||||
Sets the default button key equivilant to "return".
|
||||
Sets the default button key equivalent to "return".
|
||||
*/
|
||||
- (void)enableKeyEquivalentForDefaultButton
|
||||
{
|
||||
@@ -2549,7 +2549,7 @@ CPTexturedBackgroundWindowMask
|
||||
}
|
||||
|
||||
/*!
|
||||
Sets the default button key equivilant to "return".
|
||||
Sets the default button key equivalent to "return".
|
||||
NOTE: this method is deprecated. Use enableKeyEquivalentForDefaultButton instead.
|
||||
*/
|
||||
- (void)enableKeyEquivalentForDefaultButtonCell
|
||||
@@ -2558,7 +2558,7 @@ CPTexturedBackgroundWindowMask
|
||||
}
|
||||
|
||||
/*!
|
||||
Removes the key equivilant for the default button.
|
||||
Removes the key equivalent for the default button.
|
||||
*/
|
||||
- (void)disableKeyEquivalentForDefaultButton
|
||||
{
|
||||
@@ -2566,7 +2566,7 @@ CPTexturedBackgroundWindowMask
|
||||
}
|
||||
|
||||
/*!
|
||||
Removes the key equivilant for the default button.
|
||||
Removes the key equivalent for the default button.
|
||||
Note: this method is deprecated. Use disableKeyEquivalentForDefaultButton instead.
|
||||
*/
|
||||
- (void)disableKeyEquivalentForDefaultButtonCell
|
||||
@@ -2710,7 +2710,7 @@ var keyViewComparator = function(lhs, rhs, context)
|
||||
}
|
||||
|
||||
/*!
|
||||
Converts aPoint from the parent platform window coordiante system to the windows coordinate system.
|
||||
Converts aPoint from the parent platform window coordinate system to the windows coordinate system.
|
||||
*/
|
||||
- (CGPoint)convertPlatformWindowToBase:(CGPoint)aPoint
|
||||
{
|
||||
|
||||
@@ -62,7 +62,7 @@
|
||||
/*!
|
||||
Initializes the controller with a window.
|
||||
@param aWindow the window to control
|
||||
@return the initialzed window controller
|
||||
@return the initialized window controller
|
||||
*/
|
||||
- (id)initWithWindow:(CPWindow)aWindow
|
||||
{
|
||||
@@ -82,7 +82,7 @@
|
||||
}
|
||||
|
||||
/*!
|
||||
Initializes the controller with a Capppuccino Interface Builder name.
|
||||
Initializes the controller with a Cappuccino Interface Builder name.
|
||||
@param aWindowCibName the cib name of the window to control
|
||||
@return the initialized window controller
|
||||
*/
|
||||
|
||||
+148
-148
@@ -64,54 +64,54 @@ var CALayerRegisteredRunLoopUpdates = nil;
|
||||
@implementation CALayer : CPObject
|
||||
{
|
||||
// Modifying the Layer Geometry
|
||||
|
||||
|
||||
CGRect _frame;
|
||||
CGRect _bounds;
|
||||
CGPoint _position;
|
||||
unsigned _zPosition;
|
||||
CGPoint _anchorPoint;
|
||||
|
||||
|
||||
CGAffineTransform _affineTransform;
|
||||
CGAffineTransform _sublayerTransform;
|
||||
CGAffineTransform _sublayerTransformForSublayers;
|
||||
|
||||
|
||||
CGRect _backingStoreFrame;
|
||||
CGRect _standardBackingStoreFrame;
|
||||
|
||||
|
||||
BOOL _hasSublayerTransform;
|
||||
BOOL _hasCustomBackingStoreFrame;
|
||||
|
||||
|
||||
// Style Attributes
|
||||
|
||||
|
||||
float _opacity;
|
||||
BOOL _isHidden;
|
||||
CPColor _backgroundColor;
|
||||
|
||||
|
||||
// Managing Layer Hierarchy
|
||||
|
||||
|
||||
CALayer _superlayer;
|
||||
CPMutableArray _sublayers;
|
||||
|
||||
// Updating Layer Display
|
||||
|
||||
|
||||
unsigned _runLoopUpdateMask;
|
||||
BOOL _needsDisplayOnBoundsChange;
|
||||
|
||||
// Modifying the Delegate
|
||||
|
||||
|
||||
id _delegate;
|
||||
|
||||
|
||||
BOOL _delegateRespondsToDisplayLayerSelector;
|
||||
BOOL _delegateRespondsToDrawLayerInContextSelector;
|
||||
|
||||
|
||||
// DOM Implementation
|
||||
|
||||
|
||||
DOMElement _DOMElement;
|
||||
DOMElement _DOMContentsElement;
|
||||
id _contents;
|
||||
CGContext _context;
|
||||
CPView _owningView;
|
||||
|
||||
|
||||
CGAffineTransform _transformToLayer;
|
||||
CGAffineTransform _transformFromLayer;
|
||||
}
|
||||
@@ -130,14 +130,14 @@ var CALayerRegisteredRunLoopUpdates = nil;
|
||||
- (id)init
|
||||
{
|
||||
self = [super init];
|
||||
|
||||
|
||||
if (self)
|
||||
{
|
||||
_frame = CGRectMakeZero();
|
||||
|
||||
|
||||
_backingStoreFrame = CGRectMakeZero();
|
||||
_standardBackingStoreFrame = CGRectMakeZero();
|
||||
|
||||
|
||||
_bounds = CGRectMakeZero();
|
||||
_position = CGPointMakeZero();
|
||||
_zPosition = 0.0;
|
||||
@@ -147,15 +147,15 @@ var CALayerRegisteredRunLoopUpdates = nil;
|
||||
|
||||
_transformToLayer = CGAffineTransformMakeIdentity(); // FIXME? does it matter?
|
||||
_transformFromLayer = CGAffineTransformMakeIdentity();
|
||||
|
||||
|
||||
_opacity = 1.0;
|
||||
_isHidden = NO;
|
||||
_masksToBounds = NO;
|
||||
|
||||
|
||||
_sublayers = [];
|
||||
|
||||
|
||||
_DOMElement = document.createElement("div");
|
||||
|
||||
|
||||
_DOMElement.style.overflow = "visible";
|
||||
_DOMElement.style.position = "absolute";
|
||||
_DOMElement.style.visibility = "visible";
|
||||
@@ -165,7 +165,7 @@ var CALayerRegisteredRunLoopUpdates = nil;
|
||||
_DOMElement.style.width = "0px";
|
||||
_DOMElement.style.height = "0px";
|
||||
}
|
||||
|
||||
|
||||
return self;
|
||||
}
|
||||
|
||||
@@ -182,20 +182,20 @@ var CALayerRegisteredRunLoopUpdates = nil;
|
||||
var oldOrigin = _bounds.origin;
|
||||
|
||||
_bounds = _CGRectMakeCopy(aBounds);
|
||||
|
||||
|
||||
if (_hasSublayerTransform)
|
||||
_CALayerUpdateSublayerTransformForSublayers(self);
|
||||
|
||||
|
||||
// _hasSublayerTransform == true will handle this for us.
|
||||
/*else if (!CGPointEqualToPoint(_bounds.origin, oldOrigin))
|
||||
{
|
||||
var index = _sublayers.length;
|
||||
|
||||
|
||||
// FIXME: This should climb the layer tree down.
|
||||
while (index--)
|
||||
_CALayerRecalculateGeometry(_sublayers[index], CALayerGeometryPositionMask);
|
||||
}*/
|
||||
|
||||
|
||||
_CALayerRecalculateGeometry(self, CALayerGeometryBoundsMask);
|
||||
}
|
||||
|
||||
@@ -215,9 +215,9 @@ var CALayerRegisteredRunLoopUpdates = nil;
|
||||
{
|
||||
if (CGPointEqualToPoint(_position, aPosition))
|
||||
return;
|
||||
|
||||
|
||||
_position = _CGPointMakeCopy(aPosition);
|
||||
|
||||
|
||||
_CALayerRecalculateGeometry(self, CALayerGeometryPositionMask);
|
||||
}
|
||||
|
||||
@@ -237,9 +237,9 @@ var CALayerRegisteredRunLoopUpdates = nil;
|
||||
{
|
||||
if (_zPosition == aZPosition)
|
||||
return;
|
||||
|
||||
|
||||
_zPosition = aZPosition;
|
||||
|
||||
|
||||
[self registerRunLoopUpdateWithMask:CALayerZPositionUpdateMask];
|
||||
}
|
||||
|
||||
@@ -252,18 +252,18 @@ var CALayerRegisteredRunLoopUpdates = nil;
|
||||
anAnchorPoint = _CGPointMakeCopy(anAnchorPoint);
|
||||
anAnchorPoint.x = MIN(1.0, MAX(0.0, anAnchorPoint.x));
|
||||
anAnchorPoint.y = MIN(1.0, MAX(0.0, anAnchorPoint.y));
|
||||
|
||||
|
||||
if (CGPointEqualToPoint(_anchorPoint, anAnchorPoint))
|
||||
return;
|
||||
|
||||
|
||||
_anchorPoint = anAnchorPoint;
|
||||
|
||||
|
||||
if (_hasSublayerTransform)
|
||||
_CALayerUpdateSublayerTransformForSublayers(self);
|
||||
|
||||
if (_owningView)
|
||||
_position = CGPointMake(_CGRectGetWidth(_bounds) * _anchorPoint.x, _CGRectGetHeight(_bounds) * _anchorPoint.y);
|
||||
|
||||
|
||||
_CALayerRecalculateGeometry(self, CALayerGeometryAnchorPointMask);
|
||||
}
|
||||
|
||||
@@ -283,9 +283,9 @@ var CALayerRegisteredRunLoopUpdates = nil;
|
||||
{
|
||||
if (CGAffineTransformEqualToTransform(_affineTransform, anAffineTransform))
|
||||
return;
|
||||
|
||||
|
||||
_affineTransform = _CGAffineTransformMakeCopy(anAffineTransform);
|
||||
|
||||
|
||||
_CALayerRecalculateGeometry(self, CALayerGeometryAffineTransformMask);
|
||||
}
|
||||
|
||||
@@ -307,16 +307,16 @@ var CALayerRegisteredRunLoopUpdates = nil;
|
||||
return;
|
||||
|
||||
var hadSublayerTransform = _hasSublayerTransform;
|
||||
|
||||
|
||||
_sublayerTransform = _CGAffineTransformMakeCopy(anAffineTransform);
|
||||
_hasSublayerTransform = !_CGAffineTransformIsIdentity(_sublayerTransform);
|
||||
|
||||
|
||||
if (_hasSublayerTransform)
|
||||
{
|
||||
_CALayerUpdateSublayerTransformForSublayers(self);
|
||||
|
||||
var index = _sublayers.length;
|
||||
|
||||
|
||||
// FIXME: This should climb the layer tree down.
|
||||
while (index--)
|
||||
_CALayerRecalculateGeometry(_sublayers[index], CALayerGeometryParentSublayerTransformMask);
|
||||
@@ -353,23 +353,23 @@ var CALayerRegisteredRunLoopUpdates = nil;
|
||||
/*!
|
||||
Returns the layer's frame.
|
||||
|
||||
The frame defines the bounding box of the layer: the smallest
|
||||
possible rectangle that could fit this layer after transform
|
||||
The frame defines the bounding box of the layer: the smallest
|
||||
possible rectangle that could fit this layer after transform
|
||||
properties are applied in superlayer coordinates.
|
||||
*/
|
||||
- (CGRect)frame
|
||||
{
|
||||
if (!_frame)
|
||||
_frame = [self convertRect:_bounds toLayer:_superlayer];
|
||||
|
||||
|
||||
return _frame;
|
||||
}
|
||||
|
||||
/*!
|
||||
The Backing Store Frame specifies the frame of the actual backing
|
||||
store used to contain this layer. Naturally, by default it is the
|
||||
same as the frame, however, users can specify their own custom
|
||||
Backing Store Frame in order to speed up certain operations, such as
|
||||
store used to contain this layer. Naturally, by default it is the
|
||||
same as the frame, however, users can specify their own custom
|
||||
Backing Store Frame in order to speed up certain operations, such as
|
||||
live transformation.
|
||||
@return the backing store frame
|
||||
*/
|
||||
@@ -385,7 +385,7 @@ var CALayerRegisteredRunLoopUpdates = nil;
|
||||
- (void)setBackingStoreFrame:(CGRect)aFrame
|
||||
{
|
||||
_hasCustomBackingStoreFrame = (aFrame != nil);
|
||||
|
||||
|
||||
if (aFrame == nil)
|
||||
aFrame = CGRectMakeCopy(_standardBackingStoreFrame);
|
||||
else
|
||||
@@ -393,23 +393,23 @@ var CALayerRegisteredRunLoopUpdates = nil;
|
||||
if (_superlayer)
|
||||
{
|
||||
aFrame = [_superlayer convertRect:aFrame toLayer:nil];
|
||||
|
||||
|
||||
var bounds = [_superlayer bounds],
|
||||
frame = [_superlayer convertRect:bounds toLayer:nil];
|
||||
|
||||
|
||||
aFrame.origin.x -= _CGRectGetMinX(frame);
|
||||
aFrame.origin.y -= _CGRectGetMinY(frame);
|
||||
}
|
||||
else
|
||||
aFrame = CGRectMakeCopy(aFrame);
|
||||
}
|
||||
|
||||
|
||||
if (!CGPointEqualToPoint(_backingStoreFrame.origin, aFrame.origin))
|
||||
[self registerRunLoopUpdateWithMask:CALayerFrameOriginUpdateMask];
|
||||
|
||||
|
||||
if (!CGSizeEqualToSize(_backingStoreFrame.size, aFrame.size))
|
||||
[self registerRunLoopUpdateWithMask:CALayerFrameSizeUpdateMask];
|
||||
|
||||
|
||||
_backingStoreFrame = aFrame;
|
||||
}
|
||||
|
||||
@@ -431,9 +431,9 @@ var CALayerRegisteredRunLoopUpdates = nil;
|
||||
{
|
||||
if (_contents == contents)
|
||||
return;
|
||||
|
||||
|
||||
_contents = contents;
|
||||
|
||||
|
||||
[self composite];
|
||||
}
|
||||
|
||||
@@ -445,26 +445,26 @@ var CALayerRegisteredRunLoopUpdates = nil;
|
||||
{
|
||||
if (USE_BUFFER && !_contents || !_context)
|
||||
return;
|
||||
|
||||
|
||||
CGContextClearRect(_context, _CGRectMake(0.0, 0.0, _CGRectGetWidth(_backingStoreFrame), _CGRectGetHeight(_backingStoreFrame)));
|
||||
|
||||
|
||||
// Recomposite
|
||||
var transform = _transformFromLayer;
|
||||
|
||||
|
||||
if (_superlayer)
|
||||
{
|
||||
var superlayerTransform = _CALayerGetTransform(_superlayer, nil),
|
||||
superlayerOrigin = CGPointApplyAffineTransform(_superlayer._bounds.origin, superlayerTransform);
|
||||
|
||||
|
||||
transform = CGAffineTransformConcat(transform, superlayerTransform);
|
||||
|
||||
|
||||
transform.tx -= superlayerOrigin.x;
|
||||
transform.ty -= superlayerOrigin.y;
|
||||
}
|
||||
|
||||
transform.tx -= _CGRectGetMinX(_backingStoreFrame);
|
||||
transform.ty -= _CGRectGetMinY(_backingStoreFrame);
|
||||
|
||||
|
||||
CGContextSaveGState(_context);
|
||||
CGContextConcatCTM(_context, transform);//_transformFromView);
|
||||
if (USE_BUFFER)
|
||||
@@ -485,18 +485,18 @@ var CALayerRegisteredRunLoopUpdates = nil;
|
||||
if (!_context)
|
||||
{
|
||||
_context = CGBitmapGraphicsContextCreate();
|
||||
|
||||
|
||||
_DOMContentsElement = _context.DOMElement;
|
||||
|
||||
|
||||
_DOMContentsElement.style.zIndex = -100;
|
||||
|
||||
_DOMContentsElement.style.overflow = "hidden";
|
||||
_DOMContentsElement.style.position = "absolute";
|
||||
_DOMContentsElement.style.visibility = "visible";
|
||||
|
||||
|
||||
_DOMContentsElement.width = ROUND(_CGRectGetWidth(_backingStoreFrame));
|
||||
_DOMContentsElement.height = ROUND(_CGRectGetHeight(_backingStoreFrame));
|
||||
|
||||
|
||||
_DOMContentsElement.style.top = "0px";
|
||||
_DOMContentsElement.style.left = "0px";
|
||||
_DOMContentsElement.style.width = ROUND(_CGRectGetWidth(_backingStoreFrame)) + "px";
|
||||
@@ -504,23 +504,23 @@ var CALayerRegisteredRunLoopUpdates = nil;
|
||||
|
||||
_DOMElement.appendChild(_DOMContentsElement);
|
||||
}
|
||||
|
||||
|
||||
if (USE_BUFFER)
|
||||
{
|
||||
if (_delegateRespondsToDisplayLayerSelector)
|
||||
return [_delegate displayInLayer:self];
|
||||
|
||||
|
||||
if (_CGRectGetWidth(_backingStoreFrame) == 0.0 || _CGRectGetHeight(_backingStoreFrame) == 0.0)
|
||||
return;
|
||||
|
||||
|
||||
if (!_contents)
|
||||
_contents = CABackingStoreCreate();
|
||||
|
||||
|
||||
CABackingStoreSetSize(_contents, _bounds.size);
|
||||
|
||||
|
||||
[self drawInContext:CABackingStoreGetContext(_contents)];
|
||||
}
|
||||
|
||||
|
||||
[self composite];
|
||||
}
|
||||
|
||||
@@ -535,7 +535,7 @@ var CALayerRegisteredRunLoopUpdates = nil;
|
||||
CGContextSetFillColor(aContext, _backgroundColor);
|
||||
CGContextFillRect(aContext, _bounds);
|
||||
}
|
||||
|
||||
|
||||
if (_delegateRespondsToDrawLayerInContextSelector)
|
||||
[_delegate drawLayer:self inContext:aContext];
|
||||
}
|
||||
@@ -559,9 +559,9 @@ var CALayerRegisteredRunLoopUpdates = nil;
|
||||
{
|
||||
if (_opacity == anOpacity)
|
||||
return;
|
||||
|
||||
|
||||
_opacity = anOpacity;
|
||||
|
||||
|
||||
_DOMElement.style.opacity = anOpacity;
|
||||
_DOMElement.style.filter = "alpha(opacity=" + anOpacity * 100 + ")";
|
||||
}
|
||||
@@ -600,7 +600,7 @@ var CALayerRegisteredRunLoopUpdates = nil;
|
||||
{
|
||||
if (_masksToBounds == masksToBounds)
|
||||
return;
|
||||
|
||||
|
||||
_masksToBounds = masksToBounds;
|
||||
_DOMElement.style.overflow = _masksToBounds ? "hidden" : "visible";
|
||||
}
|
||||
@@ -612,7 +612,7 @@ var CALayerRegisteredRunLoopUpdates = nil;
|
||||
- (void)setBackgroundColor:(CPColor)aColor
|
||||
{
|
||||
_backgroundColor = aColor;
|
||||
|
||||
|
||||
[self setNeedsDisplay];
|
||||
}
|
||||
|
||||
@@ -665,10 +665,10 @@ if (_DOMContentsElement && aLayer._zPosition > _DOMContentsElement.style.zIndex)
|
||||
{
|
||||
if (_owningView)
|
||||
[_owningView setLayer:nil];
|
||||
|
||||
|
||||
if (!_superlayer)
|
||||
return;
|
||||
|
||||
|
||||
_superlayer._DOMElement.removeChild(_DOMElement);
|
||||
[_superlayer._sublayers removeObject:self];
|
||||
|
||||
@@ -684,24 +684,24 @@ if (_DOMContentsElement && aLayer._zPosition > _DOMContentsElement.style.zIndex)
|
||||
{
|
||||
if (!aLayer)
|
||||
return;
|
||||
|
||||
|
||||
var superlayer = [aLayer superlayer];
|
||||
|
||||
|
||||
if (superlayer == self)
|
||||
{
|
||||
var index = [_sublayers indexOfObjectIdenticalTo:aLayer];
|
||||
|
||||
if (index == anIndex)
|
||||
return;
|
||||
|
||||
|
||||
[_sublayers removeObjectAtIndex:index];
|
||||
|
||||
|
||||
if (index < anIndex)
|
||||
--anIndex;
|
||||
}
|
||||
else if (superlayer != nil)
|
||||
[aLayer removeFromSuperlayer];
|
||||
|
||||
|
||||
ADJUST_CONTENTS_ZINDEX(aLayer);
|
||||
|
||||
[_sublayers insertObject:aLayer atIndex:anIndex];
|
||||
@@ -710,9 +710,9 @@ if (_DOMContentsElement && aLayer._zPosition > _DOMContentsElement.style.zIndex)
|
||||
_DOMElement.appendChild(DOM(aLayer));
|
||||
else
|
||||
_DOMElement.insertBefore(DOM(aLayer), _sublayers[anIndex + 1]._DOMElement);
|
||||
|
||||
|
||||
aLayer._superlayer = self;
|
||||
|
||||
|
||||
if (self != superlayer)
|
||||
_CALayerRecalculateGeometry(aLayer, 0xFFFFFFF);
|
||||
}
|
||||
@@ -726,7 +726,7 @@ if (_DOMContentsElement && aLayer._zPosition > _DOMContentsElement.style.zIndex)
|
||||
- (void)insertSublayer:(CALayer)aLayer below:(CALayer)aSublayer
|
||||
{
|
||||
var index = aSublayer ? [_sublayers indexOfObjectIdenticalTo:aSublayer] : 0;
|
||||
|
||||
|
||||
[self insertSublayer:aLayer atIndex:index == CPNotFound ? _sublayers.length : index];
|
||||
}
|
||||
|
||||
@@ -754,16 +754,16 @@ if (_DOMContentsElement && aLayer._zPosition > _DOMContentsElement.style.zIndex)
|
||||
{
|
||||
if (aSublayer == aLayer)
|
||||
return;
|
||||
|
||||
|
||||
// FIXME: EXCEPTION
|
||||
if (aSublayer._superlayer != self)
|
||||
{
|
||||
alert("EXCEPTION");
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
ADJUST_CONTENTS_ZINDEX(aLayer);
|
||||
|
||||
|
||||
[_sublayers replaceObjectAtIndex:[_sublayers indexOfObjectIdenticalTo:aSublayer] withObject:aLayer];
|
||||
_DOMElement.replaceChild(DOM(aSublayer), DOM(aLayer));
|
||||
}
|
||||
@@ -782,13 +782,13 @@ if (_DOMContentsElement && aLayer._zPosition > _DOMContentsElement.style.zIndex)
|
||||
|
||||
if (mask & CALayerDOMUpdateMask)
|
||||
_CALayerUpdateDOM(layer, mask);
|
||||
|
||||
|
||||
if (mask & CALayerDisplayUpdateMask)
|
||||
[layer display];
|
||||
|
||||
|
||||
else if (mask & CALayerFrameSizeUpdateMask || mask & CALayerCompositeUpdateMask)
|
||||
[layer composite];
|
||||
|
||||
|
||||
layer._runLoopUpdateMask = 0;
|
||||
}
|
||||
window.loop= false;
|
||||
@@ -803,11 +803,11 @@ if (_DOMContentsElement && aLayer._zPosition > _DOMContentsElement.style.zIndex)
|
||||
if (CALayerRegisteredRunLoopUpdates == nil)
|
||||
{
|
||||
CALayerRegisteredRunLoopUpdates = {};
|
||||
|
||||
|
||||
[[CPRunLoop currentRunLoop] performSelector:@selector(runLoopUpdateLayers)
|
||||
target:CALayer argument:nil order:0 modes:[CPDefaultRunLoopMode]];
|
||||
}
|
||||
|
||||
|
||||
_runLoopUpdateMask |= anUpdateMask;
|
||||
CALayerRegisteredRunLoopUpdates[[self UID]] = self;
|
||||
}
|
||||
@@ -846,7 +846,7 @@ if (_DOMContentsElement && aLayer._zPosition > _DOMContentsElement.style.zIndex)
|
||||
}
|
||||
|
||||
/*!
|
||||
Marks the specified rectange as needing to be redrawn.
|
||||
Marks the specified rectangle as needing to be redrawn.
|
||||
@param aRect the area that needs to be redrawn.
|
||||
*/
|
||||
- (void)setNeedsDisplayInRect:(CGRect)aRect
|
||||
@@ -890,8 +890,8 @@ if (_DOMContentsElement && aLayer._zPosition > _DOMContentsElement.style.zIndex)
|
||||
}
|
||||
|
||||
/*!
|
||||
Converts the rectangle from the receier's coordinate system to the specified layer's coordinate system.
|
||||
@param aRect the rectange to convert
|
||||
Converts the rectangle from the receiver's coordinate system to the specified layer's coordinate system.
|
||||
@param aRect the rectangle to convert
|
||||
@param aLayer the layer coordinate system to convert to
|
||||
@return the converted rectangle
|
||||
*/
|
||||
@@ -919,21 +919,21 @@ if (_DOMContentsElement && aLayer._zPosition > _DOMContentsElement.style.zIndex)
|
||||
{
|
||||
if (_isHidden)
|
||||
return nil;
|
||||
|
||||
|
||||
var point = CGPointApplyAffineTransform(aPoint, _transformToLayer);
|
||||
//alert(point.x + " " + point.y);
|
||||
|
||||
|
||||
if (!_CGRectContainsPoint(_bounds, point))
|
||||
return nil;
|
||||
|
||||
|
||||
var layer = nil,
|
||||
index = _sublayers.length;
|
||||
|
||||
|
||||
// FIXME: this should take into account zPosition.
|
||||
while (index--)
|
||||
if (layer = [_sublayers[index] hitTest:point])
|
||||
return layer;
|
||||
|
||||
|
||||
return self;
|
||||
}
|
||||
|
||||
@@ -946,12 +946,12 @@ if (_DOMContentsElement && aLayer._zPosition > _DOMContentsElement.style.zIndex)
|
||||
{
|
||||
if (_delegate == aDelegate)
|
||||
return;
|
||||
|
||||
|
||||
_delegate = aDelegate;
|
||||
|
||||
|
||||
_delegateRespondsToDisplayLayerSelector = [_delegate respondsToSelector:@selector(displayLayer:)];
|
||||
_delegateRespondsToDrawLayerInContextSelector = [_delegate respondsToSelector:@selector(drawLayer:inContext:)];
|
||||
|
||||
|
||||
if (_delegateRespondsToDisplayLayerSelector || _delegateRespondsToDrawLayerInContextSelector)
|
||||
[self setNeedsDisplay];
|
||||
}
|
||||
@@ -968,15 +968,15 @@ if (_DOMContentsElement && aLayer._zPosition > _DOMContentsElement.style.zIndex)
|
||||
- (void)_setOwningView:(CPView)anOwningView
|
||||
{
|
||||
_owningView = anOwningView;
|
||||
|
||||
|
||||
if (_owningView)
|
||||
{
|
||||
_owningView = anOwningView;
|
||||
|
||||
|
||||
_bounds.size = CGSizeMakeCopy([_owningView bounds].size);
|
||||
_position = CGPointMake(_CGRectGetWidth(_bounds) * _anchorPoint.x, _CGRectGetHeight(_bounds) * _anchorPoint.y);
|
||||
}
|
||||
|
||||
|
||||
_CALayerRecalculateGeometry(self, CALayerGeometryPositionMask | CALayerGeometryBoundsMask);
|
||||
}
|
||||
|
||||
@@ -985,7 +985,7 @@ if (_DOMContentsElement && aLayer._zPosition > _DOMContentsElement.style.zIndex)
|
||||
{
|
||||
_bounds.size = CGSizeMakeCopy([_owningView bounds].size);
|
||||
_position = CGPointMake(_CGRectGetWidth(_bounds) * _anchorPoint.x, _CGRectGetHeight(_bounds) * _anchorPoint.y);
|
||||
|
||||
|
||||
_CALayerRecalculateGeometry(self, CALayerGeometryPositionMask | CALayerGeometryBoundsMask);
|
||||
}
|
||||
|
||||
@@ -993,20 +993,20 @@ if (_DOMContentsElement && aLayer._zPosition > _DOMContentsElement.style.zIndex)
|
||||
- (void)_update
|
||||
{
|
||||
window.loop = true;
|
||||
|
||||
|
||||
var mask = _runLoopUpdateMask;
|
||||
|
||||
if (mask & CALayerDOMUpdateMask)
|
||||
_CALayerUpdateDOM(self, mask);
|
||||
|
||||
|
||||
if (mask & CALayerDisplayUpdateMask)
|
||||
[self display];
|
||||
|
||||
|
||||
else if (mask & CALayerFrameSizeUpdateMask || mask & CALayerCompositeUpdateMask)
|
||||
[self composite];
|
||||
|
||||
|
||||
_runLoopUpdateMask = 0;
|
||||
|
||||
|
||||
window.loop = false;
|
||||
}
|
||||
|
||||
@@ -1018,7 +1018,7 @@ function _CALayerUpdateSublayerTransformForSublayers(aLayer)
|
||||
anchorPoint = aLayer._anchorPoint,
|
||||
translateX = _CGRectGetWidth(bounds) * anchorPoint.x,
|
||||
translateY = _CGRectGetHeight(bounds) * anchorPoint.y;
|
||||
|
||||
|
||||
aLayer._sublayerTransformForSublayers = CGAffineTransformConcat(
|
||||
CGAffineTransformMakeTranslation(-translateX, -translateY),
|
||||
CGAffineTransformConcat(aLayer._sublayerTransform,
|
||||
@@ -1028,27 +1028,27 @@ function _CALayerUpdateSublayerTransformForSublayers(aLayer)
|
||||
function _CALayerUpdateDOM(aLayer, aMask)
|
||||
{
|
||||
var DOMElementStyle = aLayer._DOMElement.style;
|
||||
|
||||
|
||||
if (aMask & CALayerZPositionUpdateMask)
|
||||
DOMElementStyle.zIndex = aLayer._zPosition;
|
||||
|
||||
|
||||
var frame = aLayer._backingStoreFrame;
|
||||
|
||||
|
||||
if (aMask & CALayerFrameOriginUpdateMask)
|
||||
{
|
||||
DOMElementStyle.top = ROUND(_CGRectGetMinY(frame)) + "px";
|
||||
DOMElementStyle.left = ROUND(_CGRectGetMinX(frame)) + "px";
|
||||
}
|
||||
|
||||
|
||||
if (aMask & CALayerFrameSizeUpdateMask)
|
||||
{
|
||||
var width = MAX(0.0, ROUND(_CGRectGetWidth(frame))),
|
||||
height = MAX(0.0, ROUND(_CGRectGetHeight(frame))),
|
||||
DOMContentsElement = aLayer._DOMContentsElement;
|
||||
|
||||
|
||||
DOMElementStyle.width = width + "px";
|
||||
DOMElementStyle.height = height + "px";
|
||||
|
||||
|
||||
if (DOMContentsElement)
|
||||
{
|
||||
DOMContentsElement.width = width;
|
||||
@@ -1070,7 +1070,7 @@ function _CALayerRecalculateGeometry(aLayer, aGeometryChange)
|
||||
affineTransform = aLayer._affineTransform,
|
||||
backingStoreFrameSize = _CGSizeMakeCopy(aLayer._backingStoreFrame),
|
||||
hasCustomBackingStoreFrame = aLayer._hasCustomBackingStoreFrame;
|
||||
|
||||
|
||||
// Go to anchor, transform, go back to bounds.
|
||||
aLayer._transformFromLayer = CGAffineTransformConcat(
|
||||
CGAffineTransformMakeTranslation(-width * anchorPoint.x - _CGRectGetMinX(aLayer._bounds), -height * anchorPoint.y - _CGRectGetMinY(aLayer._bounds)),
|
||||
@@ -1082,68 +1082,68 @@ function _CALayerRecalculateGeometry(aLayer, aGeometryChange)
|
||||
// aLayer._transformFromLayer = CGAffineTransformConcat(aLayer._transformFromLayer, superlayer._sublayerTransformForSublayers);
|
||||
_CGAffineTransformConcatTo(aLayer._transformFromLayer, superlayer._sublayerTransformForSublayers, aLayer._transformFromLayer);
|
||||
}
|
||||
|
||||
|
||||
aLayer._transformToLayer = CGAffineTransformInvert(aLayer._transformFromLayer);
|
||||
|
||||
//aLayer._transformFromLayer.tx = ROUND(aLayer._transformFromLayer.tx);
|
||||
//aLayer._transformFromLayer.ty = ROUND(aLayer._transformFromLayer.ty);
|
||||
|
||||
|
||||
aLayer._frame = nil;
|
||||
aLayer._standardBackingStoreFrame = [aLayer convertRect:bounds toLayer:nil];
|
||||
|
||||
|
||||
if (superlayer)
|
||||
{
|
||||
var bounds = [superlayer bounds],
|
||||
frame = [superlayer convertRect:bounds toLayer:nil];
|
||||
|
||||
|
||||
aLayer._standardBackingStoreFrame.origin.x -= _CGRectGetMinX(frame);
|
||||
aLayer._standardBackingStoreFrame.origin.y -= _CGRectGetMinY(frame);
|
||||
}
|
||||
|
||||
// We used to use CGRectIntegral here, but what we actually want, is the largest integral
|
||||
// rect that would ever contain this box, since for any width/height, there are 2 (4)
|
||||
// rect that would ever contain this box, since for any width/height, there are 2 (4)
|
||||
// possible integral rects for it depending on it's position. It's OK that this is sometimes
|
||||
// bigger than the "optimal" bounding integral rect since that doesn't change drawing.
|
||||
|
||||
|
||||
var origin = aLayer._standardBackingStoreFrame.origin,
|
||||
size = aLayer._standardBackingStoreFrame.size;
|
||||
|
||||
|
||||
origin.x = FLOOR(origin.x);
|
||||
origin.y = FLOOR(origin.y);
|
||||
size.width = CEIL(size.width) + 1.0;
|
||||
size.height = CEIL(size.height) + 1.0;
|
||||
|
||||
|
||||
// FIXME: This avoids the central issue that a position change is sometimes a display and sometimes
|
||||
// a div move, and sometimes both.
|
||||
|
||||
|
||||
// Only use this frame if we don't currently have a custom backing store frame.
|
||||
if (!hasCustomBackingStoreFrame)
|
||||
{
|
||||
var backingStoreFrame = CGRectMakeCopy(aLayer._standardBackingStoreFrame);
|
||||
|
||||
// These values get rounded in the DOM, so don't both updating them if they're
|
||||
|
||||
// These values get rounded in the DOM, so don't both updating them if they're
|
||||
// not going to be different after rounding.
|
||||
if (ROUND(_CGRectGetMinX(backingStoreFrame)) != ROUND(_CGRectGetMinX(aLayer._backingStoreFrame)) ||
|
||||
ROUND(_CGRectGetMinY(backingStoreFrame)) != ROUND(_CGRectGetMinY(aLayer._backingStoreFrame)))
|
||||
[aLayer registerRunLoopUpdateWithMask:CALayerFrameOriginUpdateMask];
|
||||
|
||||
|
||||
// Any change in size due to a geometry change is purely due to rounding error.
|
||||
if ((_CGRectGetWidth(backingStoreFrame) != ROUND(_CGRectGetWidth(aLayer._backingStoreFrame)) ||
|
||||
_CGRectGetHeight(backingStoreFrame) != ROUND(_CGRectGetHeight(aLayer._backingStoreFrame))))
|
||||
[aLayer registerRunLoopUpdateWithMask:CALayerFrameSizeUpdateMask];
|
||||
|
||||
|
||||
aLayer._backingStoreFrame = backingStoreFrame;
|
||||
}
|
||||
|
||||
if (aGeometryChange & CALayerGeometryBoundsMask && aLayer._needsDisplayOnBoundsChange)
|
||||
[aLayer setNeedsDisplay];
|
||||
// We need to recomposite if we have a custom backing store frame, OR
|
||||
// We need to recompose if we have a custom backing store frame, OR
|
||||
// If the change is not solely composed of position and anchor points changes.
|
||||
// Anchor point and position changes simply move the object, requiring
|
||||
// Anchor point and position changes simply move the object, requiring
|
||||
// no re-rendering.
|
||||
else if (hasCustomBackingStoreFrame || (aGeometryChange & ~(CALayerGeometryPositionMask | CALayerGeometryAnchorPointMask)))
|
||||
[aLayer setNeedsComposite];
|
||||
|
||||
|
||||
var sublayers = aLayer._sublayers,
|
||||
index = 0,
|
||||
count = sublayers.length;
|
||||
@@ -1155,45 +1155,45 @@ function _CALayerRecalculateGeometry(aLayer, aGeometryChange)
|
||||
function _CALayerGetTransform(fromLayer, toLayer)
|
||||
{
|
||||
var transform = CGAffineTransformMakeIdentity();
|
||||
|
||||
|
||||
if (fromLayer)
|
||||
{
|
||||
var layer = fromLayer;
|
||||
|
||||
// If we have a fromLayer, "climb up" the layer tree until
|
||||
|
||||
// If we have a fromLayer, "climb up" the layer tree until
|
||||
// we hit the root node or we hit the toLayer.
|
||||
while (layer && layer != toLayer)
|
||||
{
|
||||
var transformFromLayer = layer._transformFromLayer;
|
||||
|
||||
|
||||
//transform = CGAffineTransformConcat(transform, layer._transformFromLayer);
|
||||
_CGAffineTransformConcatTo(transform, transformFromLayer, transform);
|
||||
|
||||
|
||||
layer = layer._superlayer;
|
||||
}
|
||||
|
||||
|
||||
// If we hit toLayer, then we're done.
|
||||
if (layer == toLayer)
|
||||
return transform;
|
||||
}
|
||||
|
||||
|
||||
var layers = [],
|
||||
layer = toLayer;
|
||||
|
||||
|
||||
while (layer)
|
||||
{
|
||||
layers.push(layer);
|
||||
layer = layer._superlayer;
|
||||
}
|
||||
|
||||
|
||||
var index = layers.length;
|
||||
|
||||
|
||||
while (index--)
|
||||
{
|
||||
var transformToLayer = layers[index]._transformToLayer;
|
||||
|
||||
|
||||
_CGAffineTransformConcatTo(transform, transformToLayer, transform);
|
||||
}
|
||||
|
||||
|
||||
return transform;
|
||||
}
|
||||
@@ -47,7 +47,7 @@ function CGColorGetConstantColor(aColorName)
|
||||
}
|
||||
|
||||
/*!
|
||||
This function is for source compatability.
|
||||
This function is for source compatibility.
|
||||
*/
|
||||
function CGColorRetain(aColor)
|
||||
{
|
||||
@@ -55,7 +55,7 @@ function CGColorRetain(aColor)
|
||||
}
|
||||
|
||||
/*!
|
||||
This function is for source compatability.
|
||||
This function is for source compatibility.
|
||||
*/
|
||||
function CGColorRelease()
|
||||
{
|
||||
|
||||
@@ -79,7 +79,7 @@ kCGBlendModePlusLighter = 27;
|
||||
*/
|
||||
|
||||
/*!
|
||||
This function is just here for source compatability.
|
||||
This function is just here for source compatibility.
|
||||
It does nothing.
|
||||
@group CGContext
|
||||
*/
|
||||
@@ -88,7 +88,7 @@ function CGContextRelease()
|
||||
}
|
||||
|
||||
/*!
|
||||
This function is just here for source compatability.
|
||||
This function is just here for source compatibility.
|
||||
It does nothing.
|
||||
@param aContext a CGContext
|
||||
@return CGContext the context
|
||||
@@ -466,7 +466,7 @@ function CGContextTranslateCTM(aContext, tx, ty)
|
||||
/*!
|
||||
Sets the current offset, and blur for shadows in core graphics drawing operations
|
||||
@param aContext the CGContext of the shadow
|
||||
@param aSize a CGSize indicating the offset of the shaodw
|
||||
@param aSize a CGSize indicating the offset of the shadow
|
||||
@param aBlur a float indicating the blur radius
|
||||
@return void
|
||||
*/
|
||||
@@ -483,7 +483,7 @@ function CGContextSetShadow(aContext, aSize, aBlur)
|
||||
/*!
|
||||
Sets the current offset, blur, and color for shadows in core graphics drawing operations
|
||||
@param aContext the CGContext of the shadow
|
||||
@param aSize a CGSize indicating the offset of the shaodw
|
||||
@param aSize a CGSize indicating the offset of the shadow
|
||||
@param aBlur a float indicating the blur radius
|
||||
@param aColor a CPColor object indicating the color of the shadow
|
||||
@return void
|
||||
@@ -652,7 +652,7 @@ function CGContextSetStrokeColor(aContext, aColor)
|
||||
Fills a rounded rectangle.
|
||||
@param aContext the CGContext to draw into
|
||||
@param aRect the base rectangle
|
||||
@param aRadius the distance from the rectange corner to the rounded corner
|
||||
@param aRadius the distance from the rectangle corner to the rounded corner
|
||||
@param ne set it to \c YES for a rounded northeast corner
|
||||
@param se set it to \c YES for a rounded southeast corner
|
||||
@param sw set it to \c YES for a rounded southwest corner
|
||||
@@ -671,7 +671,7 @@ function CGContextFillRoundedRectangleInRect(aContext, aRect, aRadius, ne, se, s
|
||||
Strokes a rounded rectangle.
|
||||
@param aContext the CGContext to draw into
|
||||
@param aRect the base rectangle
|
||||
@param aRadius the distance from the rectange corner to the rounded corner
|
||||
@param aRadius the distance from the rectangle corner to the rounded corner
|
||||
@param ne set it to \c YES for a rounded northeast corner
|
||||
@param se set it to \c YES for a rounded southeast corner
|
||||
@param sw set it to \c YES for a rounded southwest corner
|
||||
|
||||
@@ -33,7 +33,7 @@
|
||||
@brief A mutable character string with attributes.
|
||||
|
||||
A character string with sets of attributes that apply to single or ranges of
|
||||
characters. The attributes are containted within a CPDictionary class.
|
||||
characters. The attributes are contained within a CPDictionary class.
|
||||
Attributes can be any name/value pair. The data type of the value is not
|
||||
restricted.
|
||||
This class is mutable.
|
||||
@@ -795,11 +795,11 @@
|
||||
|
||||
/*!
|
||||
@class CPMutableAttributedString
|
||||
@ingroup compatability
|
||||
@ingroup compatibility
|
||||
|
||||
This class is just an empty subclass of CPAttributedString.
|
||||
CPAttributedString already implements mutable methods and
|
||||
this class only exists for source compatability.
|
||||
this class only exists for source compatibility.
|
||||
*/
|
||||
@implementation CPMutableAttributedString : CPAttributedString
|
||||
|
||||
|
||||
@@ -350,13 +350,13 @@ _CPCharacterSetTrimAtEnd = 1 << 2;
|
||||
@implementation CPString (CPCharacterSetAdditions)
|
||||
|
||||
/*!
|
||||
Tokenizes the receiver string using the charactes
|
||||
Tokenizes the receiver string using the characters
|
||||
in a given set. For example, if the receiver is:
|
||||
\c "Baku baku to jest skład."
|
||||
and the set is [CPCharacterSet whitespaceCharacterSet]
|
||||
the returned array would contain:
|
||||
<pre> ["Baku", "baku", "to", "jest", "", "skład."] </pre>
|
||||
Adjacent occurences of the separator characters produce empty strings in the result.
|
||||
Adjacent occurrences of the separator characters produce empty strings in the result.
|
||||
@author Arkadiusz Młynarczyk <arek@tupux.com>
|
||||
@param A character set containing the characters to use to split the receiver. Must not be nil.
|
||||
@return An CPArray object containing substrings from the receiver that have been divided by characters in separator.
|
||||
|
||||
@@ -146,7 +146,7 @@
|
||||
|
||||
/*!
|
||||
Called after an object is unarchived in case a different object should be used in place of it.
|
||||
The defaut method returns \c self. Interested subclasses should override this.
|
||||
The default method returns \c self. Interested subclasses should override this.
|
||||
@param aDecoder
|
||||
@return the original object or it's substitute.
|
||||
*/
|
||||
|
||||
+14
-14
@@ -112,8 +112,8 @@ function CPDecimalMakeWithString(string, locale)
|
||||
// (?:[eE]([+\-]?)(\d+))? - optional exponent part plus number in group
|
||||
// group 0: string, 1: sign, 2: integer, 3: decimal, 4: exponent sign, 5: exponent
|
||||
|
||||
// Note: this doesnt accept .01 for example, should it?
|
||||
// If yes simply add '?' after integer part group, ie ([+\-]?)((?:0|[1-9]\d*)?)
|
||||
// Note: this doesn't accept .01 for example, should it?
|
||||
// If yes simply add '?' after integer part group, i.e. ([+\-]?)((?:0|[1-9]\d*)?)
|
||||
var matches = string.match(/^([+\-]?)((?:0|[1-9]\d*))(?:\.(\d*))?(?:[eE]([+\-]?)(\d+))?$/);
|
||||
if (!matches)
|
||||
return CPDecimalMakeNaN();
|
||||
@@ -170,7 +170,7 @@ function CPDecimalMakeWithString(string, locale)
|
||||
|
||||
/*!
|
||||
@ingroup foundation
|
||||
Creates a CPDecimal object from a given matissa and exponent. The sign is taken from the sign of the mantissa. This cant do a full 34 digit mantissa representation as JS's 32 bits or 64bit binary FP numbers cant represent that. So use the CPDecimalMakeWithString if you want longer mantissa.
|
||||
Creates a CPDecimal object from a given mantissa and exponent. The sign is taken from the sign of the mantissa. This cant do a full 34 digit mantissa representation as JS's 32 bits or 64bit binary FP numbers cant represent that. So use the CPDecimalMakeWithString if you want longer mantissa.
|
||||
@param mantissa the mantissa (though see above note)
|
||||
@param exponent the exponent
|
||||
@return A CPDecimal object, or nil on error.
|
||||
@@ -267,7 +267,7 @@ function _CPDecimalMakeMinimum()
|
||||
*/
|
||||
function CPDecimalIsZero(dcm)
|
||||
{
|
||||
// exponent doesnt matter as long as mantissa = 0
|
||||
// exponent doesn't matter as long as mantissa = 0
|
||||
if (!dcm._isNaN)
|
||||
{
|
||||
for (var i = 0; i < dcm._mantissa.length; i++)
|
||||
@@ -288,7 +288,7 @@ function CPDecimalIsZero(dcm)
|
||||
function CPDecimalIsOne(dcm)
|
||||
{
|
||||
CPDecimalCompact(dcm);
|
||||
// exponent doesnt matter as long as mantissa = 0
|
||||
// exponent doesn't matter as long as mantissa = 0
|
||||
if (!dcm._isNaN)
|
||||
{
|
||||
if (dcm._mantissa && (dcm._mantissa.length == 1) && (dcm._mantissa[0] == 1))
|
||||
@@ -354,7 +354,7 @@ function CPDecimalCopy(dcm)
|
||||
|
||||
/*!
|
||||
@ingroup foundation
|
||||
Compare two CPDecimal objects. Order is left to right (ie Ascending would
|
||||
Compare two CPDecimal objects. Order is left to right (i.e. Ascending would
|
||||
mean left is smaller than right operand).
|
||||
@param leftOperand the left CPDecimal
|
||||
@param rightOperand the right CPDecimal
|
||||
@@ -548,7 +548,7 @@ function CPDecimalAdd(result, leftOperand, rightOperand, roundingMode, longMode)
|
||||
|
||||
var normerror = CPDecimalNormalize(n1, n2, roundingMode, longMode);
|
||||
|
||||
// below is equiv of simple compare
|
||||
// below is equiv. of simple compare
|
||||
var comp = 0,
|
||||
ll = n1._mantissa.length,
|
||||
lr = n2._mantissa.length;
|
||||
@@ -804,8 +804,8 @@ function _SimpleDivide(result, leftOperand, rightOperand, roundingMode)
|
||||
// Zeros must be added while enough digits are fetched to do the
|
||||
// subtraction, but first time round this just add zeros at the
|
||||
// start of the number , increases k, and hence reduces
|
||||
// the avaialble precision. To solve this only inc k/add zeros if
|
||||
// this isnt first time round.
|
||||
// the available precision. To solve this only inc k/add zeros if
|
||||
// this isn't first time round.
|
||||
if (!firsttime)
|
||||
{
|
||||
k++;
|
||||
@@ -910,7 +910,7 @@ function CPDecimalDivide(result, leftOperand, rightOperand, roundingMode)
|
||||
return error;
|
||||
}
|
||||
|
||||
// Simple multiply O(n^2) , replace with something faster, likee divide-n-conquer algo?
|
||||
// Simple multiply O(n^2) , replace with something faster, like divide-n-conquer algo?
|
||||
function _SimpleMultiply(result, leftOperand, rightOperand, roundingMode, powerMode)
|
||||
{
|
||||
var error = CPCalculationNoError,
|
||||
@@ -1025,7 +1025,7 @@ function CPDecimalMultiply(result, leftOperand, rightOperand, roundingMode, powe
|
||||
n1._isNegative = NO;
|
||||
n2._isNegative = NO;
|
||||
|
||||
// below is equiv of simple compare
|
||||
// below is equiv. of simple compare
|
||||
var comp = 0,
|
||||
ll = n1._mantissa.length,
|
||||
lr = n2._mantissa.length;
|
||||
@@ -1157,7 +1157,7 @@ function CPDecimalPower(result, dcm, power, roundingMode)
|
||||
/*!
|
||||
@ingroup foundation
|
||||
Normalises 2 CPDecimals. Normalisation is the process of modifying a
|
||||
numbers manitssa to ensure that both CPDecimals have the same exponent.
|
||||
numbers mantissa to ensure that both CPDecimals have the same exponent.
|
||||
@param dcm1 the first CPDecimal
|
||||
@param dcm2 the second CPDecimal
|
||||
@param roundingMode the rounding mode for the operation
|
||||
@@ -1403,7 +1403,7 @@ function CPDecimalCompact(dcm)
|
||||
return;
|
||||
}
|
||||
// leading zeros, when exponent is zero these mean we need to move our decimal point to compact
|
||||
// if exp is zero does it make sense to have them? dont think so so delete them
|
||||
// if exp is zero does it make sense to have them? don't think so so delete them
|
||||
while (dcm._mantissa[0] === 0)
|
||||
{
|
||||
Array.prototype.shift.call(dcm._mantissa);
|
||||
@@ -1416,7 +1416,7 @@ function CPDecimalCompact(dcm)
|
||||
if (dcm._exponent + 1 > CPDecimalMaxExponent)
|
||||
{
|
||||
// TODO: test case for this
|
||||
// overflow if we compact anymore, so dont
|
||||
// overflow if we compact anymore, so don't
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -156,7 +156,7 @@ var CPDefaultDcmHandler = nil;
|
||||
CPDecimalNumberHandler this will throw exceptions accordingly with
|
||||
formatted error messages.
|
||||
@param operation the selector of the method of the operation being
|
||||
performed when the exception occured
|
||||
performed when the exception occurred
|
||||
@param error the actual error type. From the \e
|
||||
CPCalculationError enum: CPCalculationNoError,
|
||||
CPCalculationLossOfPrecision, CPCalculationOverflow,
|
||||
@@ -165,7 +165,7 @@ var CPDefaultDcmHandler = nil;
|
||||
calculation that caused the exception
|
||||
@param rightOperand the CPDecimalNumber right-hand side operand used in the
|
||||
calculation that caused the exception
|
||||
@return if appropriate a CPDecimalNumber is returned (either the maxumum,
|
||||
@return if appropriate a CPDecimalNumber is returned (either the maximum,
|
||||
minimum or NaN values), or nil
|
||||
*/
|
||||
- (CPDecimalNumber)exceptionDuringOperation:(SEL)operation error:(CPCalculationError)error leftOperand:(CPDecimalNumber)leftOperand rightOperand:(CPDecimalNumber)rightOperand
|
||||
@@ -174,12 +174,12 @@ var CPDefaultDcmHandler = nil;
|
||||
{
|
||||
case CPCalculationNoError: break;
|
||||
case CPCalculationOverflow: if (_raiseOnOverflow)
|
||||
[CPException raise:CPDecimalNumberOverflowException reason:("A CPDecimalNumber overflow has occured. (Left operand= '" + [leftOperand descriptionWithLocale:nil] + "' Right operand= '" + [rightOperand descriptionWithLocale:nil] + "' Selector= '" + operation + "')") ];
|
||||
[CPException raise:CPDecimalNumberOverflowException reason:("A CPDecimalNumber overflow has occurred. (Left operand= '" + [leftOperand descriptionWithLocale:nil] + "' Right operand= '" + [rightOperand descriptionWithLocale:nil] + "' Selector= '" + operation + "')") ];
|
||||
else
|
||||
return [CPDecimalNumber notANumber];
|
||||
break;
|
||||
case CPCalculationUnderflow: if (_raiseOnUnderflow)
|
||||
[CPException raise:CPDecimalNumberUnderflowException reason:("A CPDecimalNumber underflow has occured. (Left operand= '" + [leftOperand descriptionWithLocale:nil] + "' Right operand= '" + [rightOperand descriptionWithLocale:nil] + "' Selector= '" + operation + "')") ];
|
||||
[CPException raise:CPDecimalNumberUnderflowException reason:("A CPDecimalNumber underflow has occurred. (Left operand= '" + [leftOperand descriptionWithLocale:nil] + "' Right operand= '" + [rightOperand descriptionWithLocale:nil] + "' Selector= '" + operation + "')") ];
|
||||
else
|
||||
return [CPDecimalNumber notANumber];
|
||||
break;
|
||||
@@ -187,11 +187,11 @@ var CPDefaultDcmHandler = nil;
|
||||
[CPException raise:CPDecimalNumberExactnessException reason:("A CPDecimalNumber has been rounded off during a calculation. (Left operand= '" + [leftOperand descriptionWithLocale:nil] + "' Right operand= '" + [rightOperand descriptionWithLocale:nil] + "' Selector= '" + operation + "')") ];
|
||||
break;
|
||||
case CPCalculationDivideByZero: if (_raiseOnDivideByZero)
|
||||
[CPException raise:CPDecimalNumberDivideByZeroException reason:("A CPDecimalNumber divide by zero has occured. (Left operand= '" + [leftOperand descriptionWithLocale:nil] + "' Right operand= '" + [rightOperand descriptionWithLocale:nil] + "' Selector= '" + operation + "')") ];
|
||||
[CPException raise:CPDecimalNumberDivideByZeroException reason:("A CPDecimalNumber divide by zero has occurred. (Left operand= '" + [leftOperand descriptionWithLocale:nil] + "' Right operand= '" + [rightOperand descriptionWithLocale:nil] + "' Selector= '" + operation + "')") ];
|
||||
else
|
||||
return [CPDecimalNumber notANumber]; // Div by zero returns NaN
|
||||
break;
|
||||
default: [CPException raise:CPInvalidArgumentException reason:("An unknown CPDecimalNumber error has occured. (Left operand= '" + [leftOperand descriptionWithLocale:nil] + "' Right operand= '" + [rightOperand descriptionWithLocale:nil] + "' Selector= '" + operation + "')") ];
|
||||
default: [CPException raise:CPInvalidArgumentException reason:("An unknown CPDecimalNumber error has occurred. (Left operand= '" + [leftOperand descriptionWithLocale:nil] + "' Right operand= '" + [rightOperand descriptionWithLocale:nil] + "' Selector= '" + operation + "')") ];
|
||||
}
|
||||
|
||||
return nil;
|
||||
@@ -249,7 +249,7 @@ var CPDecimalNumberHandlerRoundingModeKey = @"CPDecimalNumberHandlerRoundi
|
||||
@ingroup foundation
|
||||
@brief Decimal floating point number
|
||||
|
||||
This class represents a decimal floating point number and the relavent
|
||||
This class represents a decimal floating point number and the relevant
|
||||
mathematical operations to go with it. It guarantees accuracy up to 38
|
||||
digits in the mantissa/coefficient and can handle numbers in the range:
|
||||
+/- 99999999999999999999999999999999999999 x 10^(127/-128)
|
||||
@@ -457,7 +457,7 @@ var CPDecimalNumberHandlerRoundingModeKey = @"CPDecimalNumberHandlerRoundi
|
||||
}
|
||||
|
||||
/*!
|
||||
Returns a new CPDecimalNumer with the maximum permissable decimal number
|
||||
Returns a new CPDecimalNumber with the maximum permissible decimal number
|
||||
value. Note: this is different to the number Cocoa returns. See
|
||||
CPDecimalNumber class description for details.
|
||||
@return a new CPDecimalNumber object
|
||||
@@ -468,7 +468,7 @@ var CPDecimalNumberHandlerRoundingModeKey = @"CPDecimalNumberHandlerRoundi
|
||||
}
|
||||
|
||||
/*!
|
||||
Returns a new CPDecimalNumer with the minimum permissable decimal number
|
||||
Returns a new CPDecimalNumber with the minimum permissible decimal number
|
||||
value. Note: this is different to the number Cocoa returns. See
|
||||
CPDecimalNumber class description for details.
|
||||
@return a new CPDecimalNumber object
|
||||
@@ -479,7 +479,7 @@ var CPDecimalNumberHandlerRoundingModeKey = @"CPDecimalNumberHandlerRoundi
|
||||
}
|
||||
|
||||
/*!
|
||||
Returns a new CPDecimalNumer initialised to \e NaN.
|
||||
Returns a new CPDecimalNumber initialised to \e NaN.
|
||||
@return a new CPDecimalNumber object
|
||||
*/
|
||||
+ (CPDecimalNumber)notANumber
|
||||
@@ -488,7 +488,7 @@ var CPDecimalNumberHandlerRoundingModeKey = @"CPDecimalNumberHandlerRoundi
|
||||
}
|
||||
|
||||
/*!
|
||||
Returns a new CPDecimalNumer initialised to zero (0.0).
|
||||
Returns a new CPDecimalNumber initialised to zero (0.0).
|
||||
@return a new CPDecimalNumber object
|
||||
*/
|
||||
+ (CPDecimalNumber)zero
|
||||
@@ -497,7 +497,7 @@ var CPDecimalNumberHandlerRoundingModeKey = @"CPDecimalNumberHandlerRoundi
|
||||
}
|
||||
|
||||
/*!
|
||||
Returns a new CPDecimalNumer initialised to one (1.0).
|
||||
Returns a new CPDecimalNumber initialised to one (1.0).
|
||||
@return a new CPDecimalNumber object
|
||||
*/
|
||||
+ (CPDecimalNumber)one
|
||||
@@ -663,7 +663,7 @@ var CPDecimalNumberHandlerRoundingModeKey = @"CPDecimalNumberHandlerRoundi
|
||||
|
||||
/*!
|
||||
Returns a new CPDecimalNumber object with the result of multiplying the
|
||||
receiver object by (10 ^ \c power). If overflow, underflowor loss of
|
||||
receiver object by (10 ^ \c power). If overflow, underflow or loss of
|
||||
precision occurs then the consequence depends on the CPDecimalNumberHandler
|
||||
object \e behavior.
|
||||
@param power the power of 10 to multiply the receiver by
|
||||
@@ -740,7 +740,7 @@ var CPDecimalNumberHandlerRoundingModeKey = @"CPDecimalNumberHandlerRoundi
|
||||
}
|
||||
|
||||
/*!
|
||||
Compare the reciever CPDecimalNumber to \c aNumber. This is a CPNumber or
|
||||
Compare the receiver CPDecimalNumber to \c aNumber. This is a CPNumber or
|
||||
subclass. Returns \e CPOrderedDescending, \e CPOrderedAscending or
|
||||
\e CPOrderedSame.
|
||||
@param aNumber an object of kind CPNumber to compare against.
|
||||
@@ -755,7 +755,7 @@ var CPDecimalNumberHandlerRoundingModeKey = @"CPDecimalNumberHandlerRoundi
|
||||
}
|
||||
|
||||
/*!
|
||||
The objective C type string. For compatability reasons
|
||||
The objective C type string. For compatibility reasons
|
||||
@return returns a CPString containing "d"
|
||||
*/
|
||||
- (CPString)objCType
|
||||
@@ -924,7 +924,7 @@ var CPDecimalNumberHandlerRoundingModeKey = @"CPDecimalNumberHandlerRoundi
|
||||
|
||||
// CPNumber inherited methods
|
||||
/*!
|
||||
Compare the reciever CPDecimalNumber to \c aNumber and return \e YES if
|
||||
Compare the receiver CPDecimalNumber to \c aNumber and return \e YES if
|
||||
equal.
|
||||
@param aNumber an object of kind CPNumber to compare against.
|
||||
@return a boolean
|
||||
|
||||
@@ -345,7 +345,7 @@
|
||||
@return A new array containing the keys corresponding to all occurrences of anObject in the receiver. If no object matching anObject is found, returns an empty array.
|
||||
|
||||
Each object in the receiver is sent an isEqual: message to determine if it's equal to anObject.
|
||||
If the check for isEqual fails a check is made to see if the two objects are the same object. This provides compatability for JSObjects.
|
||||
If the check for isEqual fails a check is made to see if the two objects are the same object. This provides compatibility for JSObjects.
|
||||
*/
|
||||
- (CPArray)allKeysForObject:(id)anObject
|
||||
{
|
||||
@@ -594,11 +594,11 @@
|
||||
|
||||
/*!
|
||||
@class CPMutableDictionary
|
||||
@ingroup compatability
|
||||
@ingroup compatibility
|
||||
|
||||
This class is just an empty subclass of CPDictionary.
|
||||
CPDictionary already implements mutable methods and
|
||||
this class only exists for source compatability.
|
||||
this class only exists for source compatibility.
|
||||
*/
|
||||
@implementation CPMutableDictionary : CPDictionary
|
||||
|
||||
|
||||
@@ -70,7 +70,7 @@
|
||||
this method if you want the dollar signs in displayed strings removed for editing.
|
||||
|
||||
@param anObject the object for which to return an editing string
|
||||
@return CPString object that is used for editing the textual represntation of an object
|
||||
@return CPString object that is used for editing the textual representation of an object
|
||||
*/
|
||||
- (CPString)editingStringForObjectValue:(id)anObject
|
||||
{
|
||||
@@ -89,7 +89,7 @@
|
||||
|
||||
@param anObject if conversion is successful, upon return contains the object created from the string
|
||||
@param aString the string to parse.
|
||||
@param anError if non-nil, if there is an error durring the conversion, upon return contains an CPString object that describes the problem.
|
||||
@param anError if non-nil, if there is an error during the conversion, upon return contains an CPString object that describes the problem.
|
||||
@return BOOL YES if the conversion from the string to a view content object was successful, otherwise NO.
|
||||
*/
|
||||
- (BOOL)getObjectValue:(id)anObject forString:(CPString)aString errorDescription:(CPString)anError
|
||||
@@ -117,7 +117,7 @@
|
||||
|
||||
@param aPartialString the text currently in the view.
|
||||
@param aNewString if aPartialString needs to be modified, upon return contains the replacement string.
|
||||
@param anError if non-nil, if validation fails contains a CPString object that desibes the problem.
|
||||
@param anError if non-nil, if validation fails contains a CPString object that describes the problem.
|
||||
@return YES if aPartialString is an acceptable value, otherwise NO.
|
||||
*/
|
||||
- (BOOL)isPartialStringValid:(CPString)aPartialString newEditingString:(CPString)aNewString errorDescription:(CPString)anError
|
||||
@@ -141,7 +141,7 @@
|
||||
@param aProposedSelectedRange The selection range that will be used if the string is accepted or replaced.
|
||||
@param originalString The original string, before the proposed change.
|
||||
@param originalSelectedRange The selection range over which the change is to take place.
|
||||
@param error If non-nil, if validation fails contains an CPString object that descibes the problem.
|
||||
@param error If non-nil, if validation fails contains an CPString object that describes the problem.
|
||||
@return YES if aPartialString is acceptable, otherwise NO.
|
||||
|
||||
*/
|
||||
|
||||
@@ -159,7 +159,7 @@
|
||||
var rangesCount = _ranges.length,
|
||||
otherRanges = anIndexSet._ranges;
|
||||
|
||||
// If we have a discrepency in the number of ranges or the number of indexes,
|
||||
// If we have a discrepancy in the number of ranges or the number of indexes,
|
||||
// simply return NO.
|
||||
if (rangesCount !== otherRanges.length || _count !== anIndexSet._count)
|
||||
return NO;
|
||||
@@ -215,7 +215,7 @@
|
||||
}
|
||||
|
||||
/*!
|
||||
Returns \c YES if the receving index set contains all the indices in the argument.
|
||||
Returns \c YES if the receiving index set contains all the indices in the argument.
|
||||
@param anIndexSet the set of indices to check for in the receiving index set
|
||||
*/
|
||||
- (BOOL)containsIndexes:(CPIndexSet)anIndexSet
|
||||
@@ -836,7 +836,7 @@ var CPIndexSetCountKey = @"CPIndexSetCountKey",
|
||||
/*!
|
||||
Creates a deep copy of the index set. The returned copy
|
||||
is mutable. The reason for the two copy methods is for
|
||||
source compatability with GNUStep code.
|
||||
source compatibility with GNUStep code.
|
||||
@return the index set copy
|
||||
*/
|
||||
- (id)copy
|
||||
@@ -847,7 +847,7 @@ var CPIndexSetCountKey = @"CPIndexSetCountKey",
|
||||
/*!
|
||||
Creates a deep copy of the index set. The returned copy
|
||||
is mutable. The reason for the two copy methods is for
|
||||
source compatability with GNUStep code.
|
||||
source compatibility with GNUStep code.
|
||||
@return the index set copy
|
||||
*/
|
||||
- (id)mutableCopy
|
||||
@@ -859,11 +859,11 @@ var CPIndexSetCountKey = @"CPIndexSetCountKey",
|
||||
|
||||
/*!
|
||||
@class CPMutableIndexSet
|
||||
@ingroup compatability
|
||||
@ingroup compatibility
|
||||
|
||||
This class is an empty of subclass of CPIndexSet.
|
||||
CPIndexSet already implements mutable methods, and
|
||||
this class only exists for source compatability.
|
||||
this class only exists for source compatibility.
|
||||
*/
|
||||
@implementation CPMutableIndexSet : CPIndexSet
|
||||
|
||||
|
||||
@@ -773,7 +773,7 @@ var kvoNewAndOld = CPKeyValueObservingOptionNew | CPKeyValueObservingOpti
|
||||
if (setMutationKind)
|
||||
{
|
||||
//old and new values for unordered to-many relationships can only be calculated before
|
||||
//set precalculated hidden new value as soon as "didChangeValue..." is called!
|
||||
//set recalculated hidden new value as soon as "didChangeValue..." is called!
|
||||
var newValue = changes[_CPKeyValueChangeSetMutationNewValueKey];
|
||||
[changes setValue:newValue forKey:CPKeyValueChangeNewKey];
|
||||
|
||||
|
||||
@@ -83,7 +83,7 @@ var _CPKeyedArchiverStringClass = Nil,
|
||||
|
||||
@delegate -(void)archiverDidFinish:(CPKeyedArchiver)archiver;
|
||||
Called when the archiver finishes encoding.
|
||||
@param archiver the arhiver that finished encoding
|
||||
@param archiver the archiver that finished encoding
|
||||
|
||||
@delegate -(id)archiver:(CPKeyedArchiver)archiver willEncodeObject:(id)object;
|
||||
Called when an object is about to be encoded. Allows the delegate to replace
|
||||
@@ -370,7 +370,7 @@ var _CPKeyedArchiverStringClass = Nil,
|
||||
}
|
||||
|
||||
/*!
|
||||
Encdoes an object
|
||||
Encodes an object
|
||||
@param anObject the object to encode
|
||||
@param aKey the key to associate with the object
|
||||
*/
|
||||
|
||||
@@ -89,7 +89,7 @@ var CPArrayClass = Ni
|
||||
@delegate -(id)unarchiver:(CPKeyedUnarchiver)unarchiver didDecodeObject:(id)object;
|
||||
Called when the unarchiver decodes an object.
|
||||
@param unarchiver the unarchiver doing the decoding
|
||||
@param object the decoded objec
|
||||
@param object the decoded object
|
||||
@return a substitute to use for the decoded object. This can be the same object argument provide,
|
||||
another object or \c nil.
|
||||
|
||||
|
||||
@@ -74,7 +74,7 @@ var CPNotificationDefaultCenter = nil;
|
||||
Adds an object as an observer. The observer will receive notifications with the specified name
|
||||
and/or containing the specified object (depending on if they are \c nil.
|
||||
@param anObserver the observing object
|
||||
@param aSelector the message sent to the observer when a notification occurrs
|
||||
@param aSelector the message sent to the observer when a notification occurs
|
||||
@param aNotificationName the name of the notification the observer wants to watch
|
||||
@param anObject the object in the notification the observer wants to watch
|
||||
*/
|
||||
|
||||
@@ -30,7 +30,7 @@ var CPNumberUIDs = new CFMutableDictionary();
|
||||
@ingroup foundation
|
||||
@brief A bridged object to native Javascript numbers.
|
||||
|
||||
This class primarily exists for source compatability. The JavaScript
|
||||
This class primarily exists for source compatibility. The JavaScript
|
||||
\c Number type can be changed on the fly based on context,
|
||||
so there is no need to call any of these methods.
|
||||
|
||||
|
||||
@@ -35,7 +35,7 @@
|
||||
|
||||
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 overriden code:
|
||||
parent class init in your overridden code:
|
||||
<pre>- (id)init
|
||||
{
|
||||
self = [super init];
|
||||
@@ -126,7 +126,7 @@ CPLog(@"Got some class: %@", inst);
|
||||
}
|
||||
|
||||
/*!
|
||||
Not necessary to call in Objective-J. Only exists for code compatability.
|
||||
Not necessary to call in Objective-J. Only exists for code compatibility.
|
||||
*/
|
||||
- (void)dealloc
|
||||
{
|
||||
@@ -188,7 +188,7 @@ CPLog(@"Got some class: %@", inst);
|
||||
|
||||
/*!
|
||||
Returns \c YES if the receiver is of the \c aClass class type.
|
||||
@param aClass the class to test the receiper
|
||||
@param aClass the class to test the receiver
|
||||
*/
|
||||
- (BOOL)isMemberOfClass:(Class)aClass
|
||||
{
|
||||
@@ -273,7 +273,7 @@ CPLog(@"Got some class: %@", inst);
|
||||
/*!
|
||||
Returns the method signature for the provided selector.
|
||||
@param aSelector the selector for which to find the method signature
|
||||
@return the selector's methd signature
|
||||
@return the selector's method signature
|
||||
*/
|
||||
- (CPMethodSignature)methodSignatureForSelector:(SEL)aSelector
|
||||
{
|
||||
|
||||
@@ -280,7 +280,7 @@ var cpOperationMainQueue = nil;
|
||||
}
|
||||
|
||||
/*!
|
||||
Convenience method for one system wide singelton queue. Returns the same queue as currentQueue.
|
||||
Convenience method for one system wide singleton queue. Returns the same queue as currentQueue.
|
||||
*/
|
||||
+ (CPOperationQueue)mainQueue
|
||||
{
|
||||
@@ -294,7 +294,7 @@ var cpOperationMainQueue = nil;
|
||||
}
|
||||
|
||||
/*!
|
||||
Convenience method for one system wide singelton queue. Returns the same queue as mainQueue.
|
||||
Convenience method for one system wide singleton queue. Returns the same queue as mainQueue.
|
||||
*/
|
||||
+ (CPOperationQueue)currentQueue
|
||||
{
|
||||
|
||||
@@ -111,7 +111,7 @@
|
||||
// Using sort descriptors
|
||||
/*!
|
||||
Compares two objects.
|
||||
@param lhsObject the left hand side object to compre
|
||||
@param lhsObject the left hand side object to compare
|
||||
@param rhsObject the right hand side object to compare
|
||||
@return the comparison result
|
||||
*/
|
||||
|
||||
@@ -207,8 +207,8 @@ var CPStringRegexSpecialCharacters = [
|
||||
// Combining strings
|
||||
|
||||
/*!
|
||||
Returns a string made by appending to the reciever a string constructed from a given format
|
||||
string and the floowing arguments
|
||||
Returns a string made by appending to the receiver a string constructed from a given format
|
||||
string and the following arguments
|
||||
@param format the format string in printf-style.
|
||||
@return the initialized CPString
|
||||
*/
|
||||
@@ -316,7 +316,7 @@ var CPStringRegexSpecialCharacters = [
|
||||
Finds the range of characters in the receiver where the specified string exists. If the string
|
||||
does not exist in the receiver, the range \c length will be 0.
|
||||
@param aString the string to search for in the receiver
|
||||
@return the range of charactrs in the receiver
|
||||
@return the range of characters in the receiver
|
||||
*/
|
||||
- (CPRange)rangeOfString:(CPString)aString
|
||||
{
|
||||
@@ -392,7 +392,7 @@ var CPStringRegexSpecialCharacters = [
|
||||
}
|
||||
|
||||
/*!
|
||||
Returns a new string in which all occurrences of a target string in the reciever are replaced by
|
||||
Returns a new string in which all occurrences of a target string in the receiver are replaced by
|
||||
another given string.
|
||||
@param target The string to replace.
|
||||
@param replacement the string with which to replace the \c target
|
||||
@@ -587,7 +587,7 @@ var CPStringRegexSpecialCharacters = [
|
||||
Returns a string containing characters the receiver and a given string have in common, starting from
|
||||
the beginning of each up to the first characters that aren't equivalent.
|
||||
@param aString the string with which to compare the receiver
|
||||
@param aMask options for comparision
|
||||
@param aMask options for comparison
|
||||
*/
|
||||
- (CPString)commonPrefixWithString:(CPString)aString options:(int)aMask
|
||||
{
|
||||
|
||||
@@ -131,7 +131,7 @@
|
||||
}
|
||||
|
||||
/*!
|
||||
Returns a dictionar of the http header fields
|
||||
Returns a dictionary of the http header fields
|
||||
*/
|
||||
- (CPDictionary)allHTTPHeaderFields
|
||||
{
|
||||
|
||||
@@ -32,7 +32,7 @@
|
||||
/*!
|
||||
@class CPURLResponse
|
||||
@ingroup foundation
|
||||
@brief Protocol agnostic information about a request to a specifc URL.
|
||||
@brief Protocol agnostic information about a request to a specific URL.
|
||||
|
||||
Contains protocol agnostic information about a request to a specific URL.
|
||||
*/
|
||||
|
||||
@@ -91,7 +91,7 @@ var transformerMap = [CPDictionary dictionary];
|
||||
|
||||
@end
|
||||
|
||||
// builtin transformers
|
||||
// built-in transformers
|
||||
|
||||
@implementation CPNegateBooleanTransformer : CPValueTransformer
|
||||
{
|
||||
|
||||
Reference in new issue
Block a user