| Index: views/controls/button/text_button.h
|
| diff --git a/views/controls/button/text_button.h b/views/controls/button/text_button.h
|
| index 4257f0a32c400e599f80d3a615e502126f0ad7f7..5953a34c1712c3b094debd2ebfd844bc1a62d76a 100644
|
| --- a/views/controls/button/text_button.h
|
| +++ b/views/controls/button/text_button.h
|
| @@ -1,4 +1,4 @@
|
| -// Copyright (c) 2006-2008 The Chromium Authors. All rights reserved.
|
| +// Copyright (c) 2010 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.
|
|
|
| @@ -71,6 +71,19 @@ class TextButtonBorder : public Border {
|
| ////////////////////////////////////////////////////////////////////////////////
|
| class TextButton : public CustomButton {
|
| public:
|
| + // Enumeration of how the prefix ('&') character is processed. The default
|
| + // is |PREFIX_NONE|.
|
| + enum PrefixType {
|
| + // No special processing is done.
|
| + PREFIX_NONE,
|
| +
|
| + // The character following the prefix character is not rendered specially.
|
| + PREFIX_HIDE,
|
| +
|
| + // The character following the prefix character is underlined.
|
| + PREFIX_SHOW
|
| + };
|
| +
|
| TextButton(ButtonListener* listener, const std::wstring& text);
|
| virtual ~TextButton();
|
|
|
| @@ -88,6 +101,8 @@ class TextButton : public CustomButton {
|
|
|
| void set_alignment(TextAlignment alignment) { alignment_ = alignment; }
|
|
|
| + void set_prefix_type(PrefixType type) { prefix_type_ = type; }
|
| +
|
| // Sets the icon.
|
| void SetIcon(const SkBitmap& icon);
|
| SkBitmap icon() const { return icon_; }
|
| @@ -136,7 +151,6 @@ class TextButton : public CustomButton {
|
| static const SkColor kHoverColor;
|
|
|
| protected:
|
| - virtual bool OnMousePressed(const MouseEvent& e);
|
| virtual void Paint(gfx::Canvas* canvas);
|
|
|
| // Called when enabled or disabled state changes, or the colors for those
|
| @@ -144,6 +158,10 @@ class TextButton : public CustomButton {
|
| virtual void UpdateColor();
|
|
|
| private:
|
| + // Updates text_size_ and max_text_size_ from the current text/font. This is
|
| + // invoked when the font or text changes.
|
| + void UpdateTextSize();
|
| +
|
| // The text string that is displayed in the button.
|
| std::wstring text_;
|
|
|
| @@ -189,6 +207,8 @@ class TextButton : public CustomButton {
|
| // Whether or not to show the highlighted (i.e. hot) state.
|
| bool show_highlighted_;
|
|
|
| + PrefixType prefix_type_;
|
| +
|
| DISALLOW_COPY_AND_ASSIGN(TextButton);
|
| };
|
|
|
|
|