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.
4
5#ifndef UI_VIEWS_EXAMPLES_RADIO_BUTTON_EXAMPLE_H_
6#define UI_VIEWS_EXAMPLES_RADIO_BUTTON_EXAMPLE_H_
7
8#include <string>
9
10#include "base/basictypes.h"
11#include "base/compiler_specific.h"
12#include "ui/views/controls/button/button.h"
13#include "ui/views/examples/example_base.h"
14
15namespace views {
16
17class LabelButton;
18class RadioButton;
19
20namespace examples {
21
22class RadioButtonExample : public ExampleBase, public ButtonListener {
23 public:
24  RadioButtonExample();
25  virtual ~RadioButtonExample();
26
27  // Overridden from ExampleBase:
28  virtual void CreateExampleView(View* container) OVERRIDE;
29
30 private:
31  // Overridden from ButtonListener:
32  virtual void ButtonPressed(Button* sender, const ui::Event& event) OVERRIDE;
33
34  // Group of 3 radio buttons.
35  RadioButton* radio_buttons_[3];
36
37  // Control button to select radio buttons, and show the status of buttons.
38  LabelButton* select_;
39  LabelButton* status_;
40
41  // The number of times the button is pressed.
42  int count_;
43
44  DISALLOW_COPY_AND_ASSIGN(RadioButtonExample);
45};
46
47}  // namespace examples
48}  // namespace views
49
50#endif  // UI_VIEWS_EXAMPLES_RADIO_BUTTON_EXAMPLE_H_
51