This file is indexed.

/usr/include/qgis/qgsfieldproxymodel.h is in libqgis-dev 2.4.0-1+b1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
/***************************************************************************
   qgsfieldproxymodel.h
    --------------------------------------
   Date                 : 01.04.2014
   Copyright            : (C) 2014 Denis Rouzaud
   Email                : denis.rouzaud@gmail.com
***************************************************************************
*                                                                         *
*   This program is free software; you can redistribute it and/or modify  *
*   it under the terms of the GNU General Public License as published by  *
*   the Free Software Foundation; either version 2 of the License, or     *
*   (at your option) any later version.                                   *
*                                                                         *
***************************************************************************/

#ifndef QGSFIELDPROXYMODEL_H
#define QGSFIELDPROXYMODEL_H

#include <QSortFilterProxyModel>

#include "qgsfieldmodel.h"

/**
 * @brief The QgsFieldProxyModel class provides an easy to use model to display the list of fields of a layer.
 * @note added in 2.3
 */
class GUI_EXPORT QgsFieldProxyModel : public QSortFilterProxyModel
{
    Q_OBJECT
    Q_FLAGS( Filters )

  public:
    enum Filter
    {
      String = 1,
      Int = 2,
      LongLong = 4,
      Double = 8,
      Numeric = Int | LongLong | Double,
      Date = 16,
      All = Numeric | Date | String
    };
    Q_DECLARE_FLAGS( Filters, Filter )

    /**
     * @brief QgsFieldProxModel creates a proxy model with a QgsFieldModel as source model.
     * It can be used to filter the fields based on their types.
     */
    explicit QgsFieldProxyModel( QObject *parent = 0 );

    //! sourceFieldModel returns the QgsFieldModel used in this QSortFilterProxyModel
    QgsFieldModel* sourceFieldModel() { return mModel; }

    /**
     * @brief setFilters set flags that affect how fields are filtered
     * @param filters are Filter flags
     * @note added in 2.3
     */
    QgsFieldProxyModel* setFilters( Filters filters );
    const Filters& filters() const { return mFilters; }

  private:
    Filters mFilters;
    QgsFieldModel* mModel;

    // QSortFilterProxyModel interface
  public:
    bool filterAcceptsRow( int source_row, const QModelIndex &source_parent ) const;
    bool lessThan( const QModelIndex &left, const QModelIndex &right ) const;
};

Q_DECLARE_OPERATORS_FOR_FLAGS( QgsFieldProxyModel::Filters )

#endif // QGSFIELDPROXYMODEL_H