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_TABLE_TABLE_VIEW_OBSERVER_H_
6#define UI_VIEWS_CONTROLS_TABLE_TABLE_VIEW_OBSERVER_H_
7
8#include "ui/events/keycodes/keyboard_codes.h"
9#include "ui/views/views_export.h"
10
11namespace views {
12
13class TableView;
14class TableView2;
15
16// TableViewObserver is notified about the TableView selection.
17class VIEWS_EXPORT TableViewObserver {
18 public:
19  virtual ~TableViewObserver() {}
20
21  // Invoked when the selection changes.
22  virtual void OnSelectionChanged() = 0;
23
24  // Optional method invoked when the user double clicks on the table.
25  virtual void OnDoubleClick() {}
26
27  // Optional method invoked when the user middle clicks on the table.
28  virtual void OnMiddleClick() {}
29
30  // Optional method invoked when the user hits a key with the table in focus.
31  virtual void OnKeyDown(ui::KeyboardCode virtual_keycode) {}
32};
33
34}  // namespace views
35
36#endif  // UI_VIEWS_CONTROLS_TABLE_TABLE_VIEW_OBSERVER_H_
37