Created
June 1, 2009 22:53
-
-
Save boucher/121856 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| /* | |
| * AppController.j | |
| * toolbar | |
| * | |
| * Created by __Me__ on __Date__. | |
| * Copyright 2008 __MyCompanyName__. All rights reserved. | |
| */ | |
| @import <Foundation/CPObject.j> | |
| @import <AppKit/CPBezierPath.j> | |
| @implementation AppController : CPObject | |
| { | |
| } | |
| - (void)applicationDidFinishLaunching:(CPNotification)aNotification | |
| { | |
| var theWindow = [[CPWindow alloc] initWithContentRect:CGRectMakeZero() styleMask:CPBorderlessBridgeWindowMask], | |
| contentView = [theWindow contentView]; | |
| var toolbar = [[CPToolbar alloc] initWithIdentifier:"Posts"] ; | |
| var toolbarDelegate = [[ToolbarDelegate alloc] init] ; | |
| [toolbar setDelegate:toolbarDelegate] ; | |
| [toolbar setVisible:YES] ; | |
| [theWindow setToolbar:toolbar] ; | |
| [theWindow orderFront:self]; | |
| // Uncomment the following line to turn on the standard menu bar. | |
| [CPMenu setMenuBarVisible:YES]; | |
| } | |
| @end | |
| var AddToolbarItemIdentifier = "AddToolbarItemIdentifier", | |
| EditToolbarItemIdentifier = "EditToolbarItemIdentifier", | |
| RemoveToolbarItemIdentifier = "RemoveToolbarItemIdentifier"; | |
| @implementation ToolbarDelegate : CPObject | |
| { | |
| } | |
| - (CPArray)toolbarAllowedItemIdentifiers:(CPToolbar)aToolbar | |
| { | |
| return [AddToolbarItemIdentifier, RemoveToolbarItemIdentifier, EditToolbarItemIdentifier]; | |
| } | |
| - (CPArray)toolbarDefaultItemIdentifiers:(CPToolbar)aToolbar | |
| { | |
| return [AddToolbarItemIdentifier, RemoveToolbarItemIdentifier, EditToolbarItemIdentifier]; | |
| } | |
| - (CPToolbarItem)toolbar:(CPToolbar)aToolbar itemForItemIdentifier:(CPString)anItemIdentifier willBeInsertedIntoToolbar:(BOOL)aFlag | |
| { | |
| var toolbarItem = [[CPToolbarItem alloc] initWithItemIdentifier:anItemIdentifier]; | |
| var mainBundle = [CPBundle mainBundle]; | |
| if (anItemIdentifier === AddToolbarItemIdentifier) | |
| { | |
| [toolbarItem setLabel:"Add blog post"]; | |
| [toolbarItem setMinSize:CGSizeMake(32, 32)]; | |
| [toolbarItem setMaxSize:CGSizeMake(32, 32)]; | |
| } | |
| else if (anItemIdentifier === RemoveToolbarItemIdentifier) | |
| { | |
| [toolbarItem setLabel:"Remove blog post"]; | |
| [toolbarItem setMinSize:CGSizeMake(32, 32)]; | |
| [toolbarItem setMaxSize:CGSizeMake(32, 32)]; | |
| } | |
| else if (anItemIdentifier === EditToolbarItemIdentifier) | |
| { | |
| var textField = [[CPTextField alloc] initWithFrame:CGRectMakeZero()]; | |
| [textField setEditable:YES]; | |
| [textField setBezeled:YES]; | |
| [textField setStringValue:@"search meeeeeee"]; | |
| [textField sizeToFit]; | |
| [textField setTarget:self]; | |
| [textField setAction:@selector(returnPressed:)]; | |
| [toolbarItem setView:textField]; | |
| [toolbarItem setLabel:"Search blog posts"]; | |
| [toolbarItem setMinSize:CGSizeMake(150, 32)]; | |
| [toolbarItem setMaxSize:CGSizeMake(150, 32)]; | |
| } | |
| return toolbarItem; | |
| } | |
| - (void)returnPressed:(id)sender | |
| { | |
| CPLogConsole("Object value: <"+[sender objectValue]+">", "info"); | |
| CPLogConsole("String value: <"+[sender stringValue]+">", "info"); | |
| } | |
| @end |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment