Home | History | Annotate | Download | only in table
      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:
     25   virtual ~TableGrouper() {}
     26 };
     27 
     28 }
     29 
     30 #endif  // UI_VIEWS_CONTROLS_TABLE_GROUP_TABLE_VIEW_H_
     31