• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1// Copyright (c) 2013 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#import "ui/base/cocoa/view_description.h"
6
7#if !NDEBUG
8
9@implementation NSView (CrDebugging)
10
11- (NSString*)cr_recursiveDescriptionWithPrefix:(NSString*)prefix {
12  NSString* description =
13      [NSString stringWithFormat:@"%@ <%@ %p, frame=%@, hidden=%d>\n",
14          prefix, [self class], self, NSStringFromRect([self frame]),
15          [self isHidden]];
16  prefix = [prefix stringByAppendingString:@"--"];
17
18  for (NSView* subview in [self subviews]) {
19    description = [description stringByAppendingString:
20        [subview cr_recursiveDescriptionWithPrefix:prefix]];
21  }
22  return description;
23}
24
25- (NSString*)cr_recursiveDescription {
26  return [self cr_recursiveDescriptionWithPrefix:@""];
27}
28
29@end
30
31#endif  // !NDEBUG
32