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_CONTROLS_SEPARATOR_H_
6#define UI_VIEWS_CONTROLS_SEPARATOR_H_
7
8#include <string>
9
10#include "ui/views/view.h"
11
12namespace views {
13
14// The Separator class is a view that shows a line used to visually separate
15// other views.
16
17class VIEWS_EXPORT Separator : public View {
18 public:
19  enum Orientation {
20    HORIZONTAL,
21    VERTICAL
22  };
23
24  // The separator's class name.
25  static const char kViewClassName[];
26
27  explicit Separator(Orientation orientation);
28  virtual ~Separator();
29
30  // Overridden from View:
31  virtual gfx::Size GetPreferredSize() OVERRIDE;
32  virtual void GetAccessibleState(ui::AccessibleViewState* state) OVERRIDE;
33  virtual void Paint(gfx::Canvas* canvas) OVERRIDE;
34  virtual const char* GetClassName() const OVERRIDE;
35
36 private:
37  const Orientation orientation_;
38
39  DISALLOW_COPY_AND_ASSIGN(Separator);
40};
41
42}  // namespace views
43
44#endif  // UI_VIEWS_CONTROLS_SEPARATOR_H_
45