Files
twui/lib/UIKit/TUINSView+Accessibility.m
Justin Spahr-Summers 6c0d74f92a Remove unused imports
2012-08-10 21:52:20 -07:00

71 lines
2.1 KiB
Objective-C

//
// TUINSView+Accessibility.m
// TwUI
//
// Created by Josh Abernathy on 7/28/11.
// Copyright 2011 __MyCompanyName__. All rights reserved.
//
#import "TUINSView+Accessibility.h"
@implementation TUINSView (Accessibility)
- (id)accessibilityHitTest:(NSPoint)point
{
NSPoint windowPoint = [[self window] convertScreenToBase:point];
NSPoint localPoint = [self convertPoint:windowPoint fromView:nil];
return [self.rootView accessibilityHitTest:localPoint];
}
- (BOOL)accessibilityIsIgnored
{
return YES;
}
- (NSArray *)accessibilityAttributeNames
{
static NSArray *attributes = nil;
if(attributes == nil) {
attributes = [[NSArray alloc] initWithObjects:NSAccessibilityChildrenAttribute, NSAccessibilityParentAttribute, NSAccessibilityWindowAttribute, NSAccessibilityTopLevelUIElementAttribute, NSAccessibilityPositionAttribute, NSAccessibilitySizeAttribute, nil];
}
return attributes;
}
- (id)accessibilityAttributeValue:(NSString *)attribute
{
if([attribute isEqualToString:NSAccessibilityChildrenAttribute]) {
return [NSArray arrayWithObject:self.rootView];
} else if([attribute isEqualToString:NSAccessibilityParentAttribute]) {
return NSAccessibilityUnignoredAncestor(self.superview);
} else if([attribute isEqualToString:NSAccessibilityWindowAttribute]) {
return [self.superview accessibilityAttributeValue:NSAccessibilityWindowAttribute];
} else if([attribute isEqualToString:NSAccessibilityTopLevelUIElementAttribute]) {
return [self.superview accessibilityAttributeValue:NSAccessibilityTopLevelUIElementAttribute];
} else if([attribute isEqualToString:NSAccessibilityPositionAttribute]) {
return [NSValue valueWithPoint:[[self window] convertBaseToScreen:[self convertPoint:self.bounds.origin toView:nil]]];
} else if([attribute isEqualToString:NSAccessibilitySizeAttribute]) {
return [NSValue valueWithSize:self.bounds.size];
} else {
return nil;
}
}
- (BOOL)accessibilityIsAttributeSettable:(NSString *)attribute
{
return NO;
}
- (NSArray *)accessibilityActionNames
{
return [NSArray array];
}
- (id)accessibilityFocusedUIElement
{
return NSAccessibilityUnignoredAncestor(self);
}
@end