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

#import <CPApplication.h>

+ Inheritance diagram for CPApplication:

Instance Methods

(void) - abortModal
 
(void) - activateIgnoringOtherApps:
 
(CPImage- applicationIconImage
 
(CPArray) - arguments
 
(CPModalSession) - beginModalSessionForWindow:
 
(void) - beginSheet:modalForWindow:modalDelegate:didEndSelector:contextInfo:
 
(CPEvent- currentEvent
 
(void) - deactivate
 
(id) - delegate
 
(void) - doCommandBySelector:
 
(void) - endSheet:
 
(void) - endSheet:returnCode:
 
(void) - finishLaunching
 
(void) - hide:
 
(void) - hideOtherApplications:
 
(id) - init
 
(void) - isActive
 
(CPWindow- keyWindow
 
(CPMenu- mainMenu
 
(CPWindow- mainWindow
 
(CPWindow- modalWindow
 
(CPDictionary- namedArguments
 
(CPArray) - orderedWindows
 
(void) - orderFrontColorPanel:
 
(void) - orderFrontStandardAboutPanel:
 
(void) - orderFrontStandardAboutPanelWithOptions:
 
(void) - replyToApplicationShouldTerminate:
 
(void) - run
 
(void) - runModalForWindow:
 
(void) - runModalSession:
 
(BOOL) - sendAction:to:from:
 
(void) - sendEvent:
 
(void) - setApplicationIconImage:
 
(void) - setArguments:
 
(void) - setCallback:forNextEventMatchingMask:untilDate:inMode:dequeue:
 
(void) - setDelegate:
 
(void) - setMainMenu:
 
(void) - setMenu:
 
(void) - setTarget:selector:forNextEventMatchingMask:untilDate:inMode:dequeue:
 
(void) - setThemeBlend:
 
(void) - stopModal
 
(void) - stopModalWithCode:
 
(id) - targetForAction:
 
(id) - targetForAction:to:from:
 
(void) - terminate:
 
(CPThemeBlend- themeBlend
 
(BOOL) - tryToPerform:with:
 
(CPArray) - windows
 
(CPWindow- windowWithWindowNumber:
 

Class Methods

(CPString+ defaultThemeName
 
(CPApplication+ sharedApplication
 

Detailed Description

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 CPApplicationMain function. A simple example looks like this:

function main(args, namedArgs)
{
    CPApplicationMain(args, namedArgs);
}

-(void)applicationDidFinishLaunching:(CPNotification)aNotification; Sent from the notification center after the app initializes, but before receiving events.

Parameters
aNotificationcontains information about the event

-(void)applicationWillFinishLaunching:(CPNotification)aNotification; Sent from the notification center before the app is initialized.

Parameters
aNotificationcontains information about the event

Starts the GUI and Cappuccino frameworks. This function should be called from the main() function of your program.

Returns
void

Definition at line 2 of file CPApplication.h.

Method Documentation

- (void) abortModal
implementation

Aborts the event loop started by -runModalForWindow:

Definition at line 510 of file CPApplication.j.

- (void) activateIgnoringOtherApps: (BOOL)  shouldIgnoreOtherApps
implementation

Definition at line 414 of file CPApplication.j.

- (CPImage) applicationIconImage
implementation

Returns the application icon image. By default this is pulled from the CPApplicationIcon key of info.plist.

Returns
CPImage - Your application icon image.

Definition at line 289 of file CPApplication.j.

- (CPArray) arguments
implementation

Returns and array of slash seperated arugments to your application. These values are pulled from your window location hash.

For exampled if your application loaded:

index.html#280north/cappuccino/issues

The follow array would be returned:

["280north", "cappuccino", "issues"]
Returns
CPArray - The array of arguments.

Definition at line 1019 of file CPApplication.j.

- (CPModalSession) beginModalSessionForWindow: (CPWindow aWindow
implementation

Sets up a modal session with theWindow.

Parameters
aWindowthe window to set up the modal session for

Definition at line 519 of file CPApplication.j.

- (void) beginSheet: (CPWindow aSheet
modalForWindow: (CPWindow aWindow
modalDelegate: (id)  aModalDelegate
didEndSelector: (SEL)  didEndSelector
contextInfo: (id)  contextInfo 
implementation

Displays a window as a sheet.

Parameters
aSheetthe window to display as a sheet
aWindowthe window that will hold the sheet as a child
aModalDelegate
didEndSelector
contextInfo

Definition at line 951 of file CPApplication.j.

- (CPEvent) currentEvent
implementation

Returns the last event recieved by your application.

Definition at line 936 of file CPApplication.j.

- (void) deactivate
implementation

Definition at line 424 of file CPApplication.j.

+ (CPString) defaultThemeName
implementation

Definition at line 1186 of file CPApplication.j.

- (id) delegate
implementation

Returns the application's delegate. The app can only have one delegate at a time.

Definition at line 181 of file CPApplication.j.

- (void) doCommandBySelector: (SEL)  aSelector
implementation

If the delegate responds to the given selector it will call the method on the delegate, otherwise the method will be passed to CPResponder.

Definition at line 623 of file CPApplication.j.

- (void) endSheet: (CPWindow sheet
implementation

Ends a sheet and sends the return code "0".

Parameters
sheet- The CPWindow object (sheet) that should be dismissed.

Definition at line 998 of file CPApplication.j.

- (void) endSheet: (CPWindow sheet
returnCode: (int)  returnCode 
implementation

Ends a sheet modal. The following are predefined return codes:

CPRunStoppedResponse
CPRunAbortedResponse
CPRunContinuesResponse
Parameters
sheet- The window object (sheet) to dismiss.
returnCode- The return code to send to the delegate. You can use one of the return codes above or a custom value that you define.

Definition at line 976 of file CPApplication.j.

- (void) finishLaunching
implementation

This method is called by -run before the event loop begins. When it successfully completes, it posts the notification CPApplicationDidFinishLaunchingNotification. If you override -finishLaunching, the subclass method should invoke the superclass method.

Definition at line 192 of file CPApplication.j.

- (void) hide: (id)  aSender
implementation

Definition at line 680 of file CPApplication.j.

- (void) hideOtherApplications: (id)  aSender
implementation

Definition at line 439 of file CPApplication.j.

- (id) init
implementation

Initializes the Document based application with basic menu functions. Functions are New, Open, Undo, Redo, Save, Cut, Copy, Paste.

Returns
the initialized application

Definition at line 106 of file CPApplication.j.

- (void) isActive
implementation

Definition at line 434 of file CPApplication.j.

- (CPWindow) keyWindow
implementation

Returns the key window.

Definition at line 634 of file CPApplication.j.

- (CPMenu) mainMenu
implementation

Returns the application's main menu

Definition at line 689 of file CPApplication.j.

- (CPWindow) mainWindow
implementation

Returns the main window.

Definition at line 642 of file CPApplication.j.

- (CPWindow) modalWindow
implementation

Returns the window for the current modal session. If there is no modal session, it returns nil.

Definition at line 548 of file CPApplication.j.

- (CPDictionary) namedArguments
implementation

Returns a dictionary of the window location named arguments. For example if your location was:

index.html?owner=280north&repo=cappuccino&type=issues

a CPDictionary with the keys:

owner, repo, type

and respective values:

280north, cappuccino, issues

Will be returned.

Definition at line 1106 of file CPApplication.j.

- (CPArray) orderedWindows
implementation

Returns an array of visible CPWindow objects, ordered by their front to back order on the screen.

Definition at line 671 of file CPApplication.j.

- (void) orderFrontColorPanel: (id)  aSender
implementation

Opens the shared color panel.

Parameters
aSender

Definition at line 723 of file CPApplication.j.

- (void) orderFrontStandardAboutPanel: (id)  sender
implementation

Opens the standard about panel with no options.

Definition at line 304 of file CPApplication.j.

- (void) orderFrontStandardAboutPanelWithOptions: (CPDictionary options
implementation

Opens the standard about panel. This method takes a single argument options. Options is a dictionary that can contain any of the following keys:

ApplicationName - The name of your application.
ApplicationIcon - Application icon image.
Version - The full version of your application
ApplicationVersion - The shorter version number of your application.
Copyright - Human readable copyright information.

If you choose not the include any of the above keys, they will default to the following respective keys in your info.plist file.

CPBundleName
CPApplicationIcon (through a call to -applicationIconImage, see documentation for that method for more details)
CPBundleVersion
CPBundleShortVersionString
CPHumanReadableCopyright
Parameters
options- A dictionary with the aboe listed keys. You can pass nil to default to your plist values.

Definition at line 333 of file CPApplication.j.

- (void) replyToApplicationShouldTerminate: (BOOL)  terminate
implementation

Definition at line 405 of file CPApplication.j.

- (void) run
implementation

Calls -finishLaunching method which results in starting the main event loop.

Definition at line 448 of file CPApplication.j.

- (void) runModalForWindow: (CPWindow aWindow
implementation

Starts a modal event loop for aWindow

Parameters
aWindowthe window to start the event loop for

Definition at line 458 of file CPApplication.j.

- (void) runModalSession: (CPModalSession)  aModalSession
implementation

Runs a modal session

Parameters
CPModalSessionthe session to run

Definition at line 528 of file CPApplication.j.

- (BOOL) sendAction: (SEL)  anAction
to: (id)  aTarget
from: (id)  aSender 
implementation

Sends an action to a target.

Parameters
anActionthe action to send
aTargetthe target for the action
aSenderthe action sender
Returns
YES

Definition at line 763 of file CPApplication.j.

- (void) sendEvent: (CPEvent anEvent
implementation

Dispatches events to other objects.

Parameters
anEventthe event to dispatch

Definition at line 567 of file CPApplication.j.

- (void) setApplicationIconImage: (CPImage anImage
implementation

Sets the applications icon image. This image is used in the default "About" window. By default this value is pulled from the CPApplicationIcon key in your info.plist file.

Parameters
anImage- The image to set.

Definition at line 280 of file CPApplication.j.

- (void) setArguments: (CPArray)  args
implementation

Sets the arguments of your application. That is, set the slash seperated values of an array as the window location hash.

For example if you pass an array:

["280north", "cappuccino", "issues"]

The new window location would be

index.html#280north/cappuccino/issues
Parameters
args- An array of arguments.

Definition at line 1044 of file CPApplication.j.

- (void) setCallback: (Function)  aCallback
forNextEventMatchingMask: (unsigned int)  aMask
untilDate: (CPDate anExpiration
inMode: (CPString aMode
dequeue: (BOOL)  shouldDequeue 
implementation

Fires a callback function when an event matching a given mask occurs.

If multiple callbacks are set which match the same event, later callbacks take priority over earlier callbacks, unless a new callback is set while an existing callback is being processed in which case it's given the same priority as the currently processing callback.

Parameters
aCallbackA js function to be fired. aMask An event mask for the next event.
anExpirationThe date for which this callback expires (not implemented).
inMode(not implemented).
shouldDequeueYES to remove the event from the queue after calling the callback, NO to deliver it normally.

Definition at line 906 of file CPApplication.j.

- (void) setDelegate: (id)  aDelegate
implementation

Sets the delegate for this application. The delegate will receive various notifications caused by user interactions during the application's run. The delegate can choose to react to these events.

Parameters
aDelegatethe delegate object

Definition at line 131 of file CPApplication.j.

- (void) setMainMenu: (CPMenu aMenu
implementation

Sets the main menu for the application

Parameters
aMenuthe menu to set for the application

Definition at line 698 of file CPApplication.j.

- (void) setMenu: (CPMenu aMenu
implementation

Definition at line 703 of file CPApplication.j.

- (void) setTarget: (id)  aTarget
selector: (SEL)  aSelector
forNextEventMatchingMask: (unsigned int)  aMask
untilDate: (CPDate anExpiration
inMode: (CPString aMode
dequeue: (BOOL)  shouldDequeue 
implementation

Assigns a target and action for the next event matching a given event mask. The callback method called will be passed the CPEvent when it fires.

If multiple callbacks are set which match the same event, later callbacks take priority over earlier callbacks, unless a new callback is set while an existing callback is being processed in which case it's given the same priority as the currently processing callback.

Parameters
aTargetThe target object for the callback.
aSelectorThe selector which should be called on the target object.
aMaskThe mask for a given event which should trigger the callback.
anExpirationThe date for which the callback expires (not implemented).
aMode(not implemented).
shouldDequeueYES to remove the event from the queue after calling the callback, NO to deliver it normally.

Definition at line 928 of file CPApplication.j.

- (void) setThemeBlend: (CPThemeBlend aValue
implementation

Synthesized accessor method.

Provided by category CPApplication(CPSynthesizedAccessors).

Definition at line 1444 of file CPApplication.j.

+ (CPApplication) sharedApplication
implementation

Returns the singleton instance of the running application. If it doesn't exist, it will be created, and then returned.

Returns
the application singleton

Definition at line 93 of file CPApplication.j.

- (void) stopModal
implementation

Stops the modal event loop

Definition at line 502 of file CPApplication.j.

- (void) stopModalWithCode: (int)  aCode
implementation

Stops the event loop started by -runModalForWindow: and sets the code that -runModalForWindow: will return.

Parameters
aCodethe return code for the modal event

Definition at line 468 of file CPApplication.j.

- (id) targetForAction: (SEL)  anAction
implementation

Looks for a target that can handle the specified action. Checks for a target in the following order:

  1. a responder from the key window
  2. a responder from the main window
  3. the CPApplication instance
  4. the application delegate
  5. the document controller
Parameters
anActionthe action to handle
Returns
a target that can respond, or nil if no match could be found

Definition at line 864 of file CPApplication.j.

- (id) targetForAction: (SEL)  anAction
to: (id)  aTarget
from: (id)  aSender 
implementation

Finds a target for the specified action. If the action is nil, returns nil. If the target is not nil, aTarget is returned. Otherwise, it calls -targetForAction: to search for a target.

Parameters
anActionthe action to find a target for
aTargetif not nil, this will be returned not used
Returns
a target for the action

Definition at line 786 of file CPApplication.j.

- (void) terminate: (id)  aSender
implementation

Definition at line 256 of file CPApplication.j.

- (CPThemeBlend) themeBlend
implementation

Synthesized accessor method.

Provided by category CPApplication(CPSynthesizedAccessors).

Definition at line 1436 of file CPApplication.j.

- (BOOL) tryToPerform: (SEL)  anAction
with: (id)  anObject 
implementation

Tries to perform the action with an argument. Performs the action on itself (if it responds to it), then tries to perform the action on the delegate.

Parameters
anActionthe action to perform.
anObjectthe argument for the action method
Returns
YES if the action was performed

Definition at line 738 of file CPApplication.j.

- (CPArray) windows
implementation

Returns an array of the application's CPWindows

Definition at line 662 of file CPApplication.j.

- (CPWindow) windowWithWindowNumber: (int)  aWindowNumber
implementation

Returns the CPWindow object corresponding to aWindowNumber.

Definition at line 650 of file CPApplication.j.


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