diff options
author | Steve Block <steveblock@google.com> | 2010-09-29 17:32:26 +0100 |
---|---|---|
committer | Steve Block <steveblock@google.com> | 2010-09-29 17:35:08 +0100 |
commit | 68513a70bcd92384395513322f1b801e7bf9c729 (patch) | |
tree | 161b50f75a5921d61731bb25e730005994fcec85 /WebKit/mac/WebView/WebDashboardRegion.mm | |
parent | fd5c6425ce58eb75211be7718d5dee960842a37e (diff) | |
download | external_webkit-68513a70bcd92384395513322f1b801e7bf9c729.zip external_webkit-68513a70bcd92384395513322f1b801e7bf9c729.tar.gz external_webkit-68513a70bcd92384395513322f1b801e7bf9c729.tar.bz2 |
Merge WebKit at r67908: Initial merge by Git
Change-Id: I43a553e7b3299b28cb6ee8aa035ed70fe342b972
Diffstat (limited to 'WebKit/mac/WebView/WebDashboardRegion.mm')
-rw-r--r-- | WebKit/mac/WebView/WebDashboardRegion.mm | 93 |
1 files changed, 93 insertions, 0 deletions
diff --git a/WebKit/mac/WebView/WebDashboardRegion.mm b/WebKit/mac/WebView/WebDashboardRegion.mm new file mode 100644 index 0000000..c44977a --- /dev/null +++ b/WebKit/mac/WebView/WebDashboardRegion.mm @@ -0,0 +1,93 @@ +/* + * Copyright (C) 2004 Apple Inc. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE COMPUTER, INC. OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY + * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import "WebDashboardRegion.h" + +#import <wtf/UnusedParam.h> + +#if ENABLE(DASHBOARD_SUPPORT) + +@implementation WebDashboardRegion + +- initWithRect:(NSRect)r clip:(NSRect)c type:(WebDashboardRegionType)t +{ + self = [super init]; + rect = r; + clip = c; + type = t; + return self; +} + +- (id)copyWithZone:(NSZone *)unusedZone +{ + UNUSED_PARAM(unusedZone); + + return [self retain]; +} + +- (NSRect)dashboardRegionClip +{ + return clip; +} + +- (NSRect)dashboardRegionRect +{ + return rect; +} + +- (WebDashboardRegionType)dashboardRegionType +{ + return type; +} + +static const char* typeName(WebDashboardRegionType type) +{ + switch (type) { + case WebDashboardRegionTypeNone: + return "None"; + case WebDashboardRegionTypeCircle: + return "Circle"; + case WebDashboardRegionTypeRectangle: + return "Rectangle"; + case WebDashboardRegionTypeScrollerRectangle: + return "ScrollerRectangle"; + } + return "Unknown"; +} + +- (NSString *)description +{ + return [NSString stringWithFormat:@"rect:%@ clip:%@ type:%s", NSStringFromRect(rect), NSStringFromRect(clip), typeName(type)]; +} + +// FIXME: Overriding isEqual: without overriding hash will cause trouble if this ever goes into a NSSet or is the key in an NSDictionary. +- (BOOL)isEqual:(id)other +{ + return NSEqualRects(rect, [other dashboardRegionRect]) && NSEqualRects(clip, [other dashboardRegionClip]) && type == [other dashboardRegionType]; +} + +@end + +#endif |