Initial import of Cocoa code
This commit is contained in:
parent
7d3b181094
commit
f08ef9f1e8
17 changed files with 6685 additions and 0 deletions
111
cocoa/CurrentCostView.m
Normal file
111
cocoa/CurrentCostView.m
Normal file
|
@ -0,0 +1,111 @@
|
|||
//
|
||||
// CurrentCostView.m
|
||||
// Current Cost
|
||||
//
|
||||
// Created by Neil on 05/12/2008.
|
||||
// Copyright 2008 Neil Cowburn. All rights reserved.
|
||||
//
|
||||
|
||||
#import "CurrentCostView.h"
|
||||
|
||||
@interface CurrentCostView ()
|
||||
|
||||
- (void)drawStringCenteredIn:(NSRect)rect;
|
||||
- (void)prepareAttributes;
|
||||
|
||||
@end
|
||||
|
||||
@implementation CurrentCostView
|
||||
|
||||
@synthesize watts, temp, time;
|
||||
|
||||
- (id)initWithFrame:(NSRect)rect
|
||||
{
|
||||
if (![super initWithFrame:rect]) {
|
||||
return nil;
|
||||
}
|
||||
|
||||
[self prepareAttributes];
|
||||
watts = @"";
|
||||
time = @"00:00";
|
||||
temp = @"0˚C";
|
||||
|
||||
return self;
|
||||
}
|
||||
|
||||
- (void)dealloc
|
||||
{
|
||||
[watts release];
|
||||
[temp release];
|
||||
[time release];
|
||||
[attributes release];
|
||||
|
||||
[super dealloc];
|
||||
}
|
||||
|
||||
- (void)drawRect:(NSRect)rect
|
||||
{
|
||||
NSRect bounds = [self bounds];
|
||||
[[NSColor whiteColor] set];
|
||||
[self drawStringCenteredIn:bounds];
|
||||
|
||||
if (([[self window] firstResponder] == self) && [NSGraphicsContext currentContextDrawingToScreen]) {
|
||||
[NSGraphicsContext saveGraphicsState];
|
||||
NSSetFocusRingStyle(NSFocusRingOnly);
|
||||
[NSBezierPath fillRect:bounds];
|
||||
[NSGraphicsContext restoreGraphicsState];
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
- (BOOL)isOpaque
|
||||
{
|
||||
return NO;
|
||||
}
|
||||
|
||||
- (void)setWatts:(NSString *)power
|
||||
{
|
||||
power = [power copy];
|
||||
[watts release];
|
||||
watts = power;
|
||||
|
||||
[self setNeedsDisplay:YES];
|
||||
}
|
||||
|
||||
|
||||
- (BOOL)acceptsFirstResponder
|
||||
{
|
||||
return NO;
|
||||
}
|
||||
|
||||
- (BOOL)resignFirstResponder
|
||||
{
|
||||
[self setNeedsDisplay:YES];
|
||||
return NO;
|
||||
}
|
||||
|
||||
- (BOOL)becomeFirstResponder
|
||||
{
|
||||
[self setNeedsDisplay:YES];
|
||||
return NO;
|
||||
}
|
||||
|
||||
- (void)drawStringCenteredIn:(NSRect)rect
|
||||
{
|
||||
NSSize wattsSize = [watts sizeWithAttributes:attributes];
|
||||
|
||||
NSPoint origin;
|
||||
origin.x = rect.origin.x + (rect.size.width - wattsSize.width) / 2;
|
||||
origin.y = rect.origin.y + (rect.size.height - wattsSize.height) / 2;
|
||||
|
||||
[watts drawAtPoint:origin withAttributes:attributes];
|
||||
}
|
||||
|
||||
- (void)prepareAttributes
|
||||
{
|
||||
attributes = [[NSMutableDictionary alloc] init];
|
||||
[attributes setObject:[NSFont fontWithName:@"Helvetica" size:30] forKey:NSFontAttributeName];
|
||||
[attributes setObject:[NSColor blackColor] forKey:NSForegroundColorAttributeName];
|
||||
}
|
||||
|
||||
@end
|
Loading…
Add table
Add a link
Reference in a new issue