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.
4
5#ifndef UI_VIEWS_CONTROLS_TABLE_TABLE_GROUPER_H_
6#define UI_VIEWS_CONTROLS_TABLE_TABLE_GROUPER_H_
7
8namespace views {
9
10struct GroupRange {
11  int start;
12  int length;
13};
14
15// TableGrouper is used by TableView to group a set of rows and treat them
16// as one. Rows that fall in the same group are selected together and sorted
17// together.
18class TableGrouper {
19 public:
20  virtual void GetGroupRange(int model_index, GroupRange* range) = 0;
21
22 protected:
23  virtual ~TableGrouper() {}
24};
25
26}
27
28#endif  // UI_VIEWS_CONTROLS_TABLE_GROUP_TABLE_VIEW_H_
29