Add ICU message format support
[chromium-blink-merge.git] / ui / views / examples / tabbed_pane_example.h
blob79a1f42ff79f0cddd7cade63c717f377ffb4d308
1 // Copyright (c) 2012 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 #ifndef UI_VIEWS_EXAMPLES_TABBED_PANE_EXAMPLE_H_
6 #define UI_VIEWS_EXAMPLES_TABBED_PANE_EXAMPLE_H_
8 #include <string>
10 #include "base/macros.h"
11 #include "ui/views/controls/button/button.h"
12 #include "ui/views/controls/tabbed_pane/tabbed_pane_listener.h"
13 #include "ui/views/examples/example_base.h"
15 namespace views {
16 class TabbedPane;
18 namespace examples {
20 // A TabbedPane example tests adding and selecting tabs.
21 class VIEWS_EXAMPLES_EXPORT TabbedPaneExample : public ExampleBase,
22 public ButtonListener,
23 public TabbedPaneListener {
24 public:
25 TabbedPaneExample();
26 ~TabbedPaneExample() override;
28 // ExampleBase:
29 void CreateExampleView(View* container) override;
31 private:
32 // ButtonListener:
33 void ButtonPressed(Button* sender, const ui::Event& event) override;
35 // TabbedPaneListener:
36 void TabSelectedAt(int index) override;
38 // Print the status of the tab in the status area.
39 void PrintStatus();
41 void AddButton(const std::string& label);
43 // The tabbed pane to be tested.
44 TabbedPane* tabbed_pane_;
46 // Control buttons to add and select tabs.
47 Button* add_;
48 Button* add_at_;
49 Button* select_at_;
51 DISALLOW_COPY_AND_ASSIGN(TabbedPaneExample);
54 } // namespace examples
55 } // namespace views
57 #endif // UI_VIEWS_EXAMPLES_TABBED_PANE_EXAMPLE_H_