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