1 // Copyright (c) 2011 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.
5 #import <Cocoa/Cocoa.h>
9 // HyperlinkTextView is an NSTextView subclass for unselectable, linkable text.
10 // This subclass doesn't show the text caret or IBeamCursor, whereas the base
11 // class NSTextView displays both with full keyboard accessibility enabled.
12 @interface HyperlinkTextView
: NSTextView
{
14 BOOL acceptsFirstResponder_
;
15 BOOL drawsBackgroundUsingSuperview_
;
18 @
property(nonatomic
, assign
) BOOL drawsBackgroundUsingSuperview
;
20 // Convenience function that sets the |HyperlinkTextView| contents to the
21 // specified |message| with a hypertext style |link| inserted at |linkOffset|.
22 // Uses the supplied |font|, |messageColor|, and |linkColor|.
23 - (void)setMessageAndLink
:(NSString
*)message
24 withLink
:(NSString
*)link
25 atOffset
:(NSUInteger
)linkOffset
27 messageColor
:(NSColor
*)messageColor
28 linkColor
:(NSColor
*)linkColor
;
30 // Set the |message| displayed by the HyperlinkTextView, using |font| and
32 - (void)setMessage
:(NSString
*)message
33 withFont
:(NSFont
*)font
34 messageColor
:(NSColor
*)messageColor
;
36 // Marks a |range| within the given message as link, associating it with
37 // a |name| that is passed to the delegate's textView:clickedOnLink:atIndex:.
38 - (void)addLinkRange
:(NSRange
)range
40 linkColor
:(NSColor
*)linkColor
;
42 // This is YES (by default) if the view accepts first responder status.
43 - (void)setAcceptsFirstResponder
:(BOOL
)acceptsFirstResponder
;