Index: chrome/browser/ui/cocoa/find_bar_text_field_cell.mm |
=================================================================== |
--- chrome/browser/ui/cocoa/find_bar_text_field_cell.mm (revision 71508) |
+++ chrome/browser/ui/cocoa/find_bar_text_field_cell.mm (working copy) |
@@ -1,119 +0,0 @@ |
-// Copyright (c) 2009 The Chromium Authors. All rights reserved. |
-// Use of this source code is governed by a BSD-style license that can be |
-// found in the LICENSE file. |
- |
-#import "chrome/browser/ui/cocoa/find_bar_text_field_cell.h" |
- |
-#include "app/l10n_util.h" |
-#include "base/logging.h" |
-#include "base/string_number_conversions.h" |
-#include "base/string_util.h" |
-#include "base/sys_string_conversions.h" |
-#include "grit/generated_resources.h" |
- |
-namespace { |
- |
-const CGFloat kBaselineAdjust = 1.0; |
- |
-// How far to offset the keyword token into the field. |
-const NSInteger kResultsXOffset = 3; |
- |
-// How much width (beyond text) to add to the keyword token on each |
-// side. |
-const NSInteger kResultsTokenInset = 3; |
- |
-// How far to shift bounding box of hint down from top of field. |
-// Assumes -setFlipped:YES. |
-const NSInteger kResultsYOffset = 4; |
- |
-// How far the editor insets itself, for purposes of determining if |
-// decorations need to be trimmed. |
-const CGFloat kEditorHorizontalInset = 3.0; |
- |
-// Conveniences to centralize width+offset calculations. |
-CGFloat WidthForResults(NSAttributedString* resultsString) { |
- return kResultsXOffset + ceil([resultsString size].width) + |
- 2 * kResultsTokenInset; |
-} |
- |
-} // namespace |
- |
-@implementation FindBarTextFieldCell |
- |
-- (CGFloat)baselineAdjust { |
- return kBaselineAdjust; |
-} |
- |
-- (CGFloat)cornerRadius { |
- return 4.0; |
-} |
- |
-- (StyledTextFieldCellRoundedFlags)roundedFlags { |
- return StyledTextFieldCellRoundedLeft; |
-} |
- |
-// @synthesize doesn't seem to compile for this transition. |
-- (NSAttributedString*)resultsString { |
- return resultsString_.get(); |
-} |
- |
-// Convenience for the attributes used in the right-justified info |
-// cells. Sets the background color to red if |foundMatches| is YES. |
-- (NSDictionary*)resultsAttributes:(BOOL)foundMatches { |
- scoped_nsobject<NSMutableParagraphStyle> style( |
- [[NSMutableParagraphStyle alloc] init]); |
- [style setAlignment:NSRightTextAlignment]; |
- |
- return [NSDictionary dictionaryWithObjectsAndKeys: |
- [self font], NSFontAttributeName, |
- [NSColor lightGrayColor], NSForegroundColorAttributeName, |
- [NSColor whiteColor], NSBackgroundColorAttributeName, |
- style.get(), NSParagraphStyleAttributeName, |
- nil]; |
-} |
- |
-- (void)setActiveMatch:(NSInteger)current of:(NSInteger)total { |
- NSString* results = |
- base::SysUTF16ToNSString(l10n_util::GetStringFUTF16( |
- IDS_FIND_IN_PAGE_COUNT, |
- base::IntToString16(current), |
- base::IntToString16(total))); |
- resultsString_.reset([[NSAttributedString alloc] |
- initWithString:results |
- attributes:[self resultsAttributes:(total > 0)]]); |
-} |
- |
-- (void)clearResults { |
- resultsString_.reset(nil); |
-} |
- |
-- (NSRect)textFrameForFrame:(NSRect)cellFrame { |
- NSRect textFrame([super textFrameForFrame:cellFrame]); |
- if (resultsString_) |
- textFrame.size.width -= WidthForResults(resultsString_); |
- return textFrame; |
-} |
- |
-// Do not show the I-beam cursor over the results label. |
-- (NSRect)textCursorFrameForFrame:(NSRect)cellFrame { |
- return [self textFrameForFrame:cellFrame]; |
-} |
- |
-- (void)drawResultsWithFrame:(NSRect)cellFrame inView:(NSView*)controlView { |
- DCHECK(resultsString_); |
- |
- NSRect textFrame = [self textFrameForFrame:cellFrame]; |
- NSRect infoFrame(NSMakeRect(NSMaxX(textFrame), |
- cellFrame.origin.y + kResultsYOffset, |
- ceil([resultsString_ size].width), |
- cellFrame.size.height - kResultsYOffset)); |
- [resultsString_.get() drawInRect:infoFrame]; |
-} |
- |
-- (void)drawInteriorWithFrame:(NSRect)cellFrame inView:(NSView*)controlView { |
- if (resultsString_) |
- [self drawResultsWithFrame:cellFrame inView:controlView]; |
- [super drawInteriorWithFrame:cellFrame inView:controlView]; |
-} |
- |
-@end |