This file is indexed.

/usr/include/qgis/qgscustomlayerorderwidget.h is in libqgis-dev 2.18.17+dfsg-1.

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
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
/***************************************************************************
  qgscustomlayerorderwidget.h
  --------------------------------------
  Date                 : May 2014
  Copyright            : (C) 2014 by Martin Dobias
  Email                : wonder dot sk at gmail dot 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 QGSCUSTOMLAYERORDERWIDGET_H
#define QGSCUSTOMLAYERORDERWIDGET_H

#include <QWidget>
#include <QAbstractListModel>

class CustomLayerOrderModel;
class QgsLayerTreeMapCanvasBridge;
class QgsLayerTreeNode;

class QCheckBox;
class QListView;

/**
  \ingroup gui
 * The QgsCustomLayerOrderWidget class provides a list box where the user can define
 * custom order for drawing of layers. It also features a checkbox for enabling
 * or disabling the custom order. Any changes made by the user are automatically
 * propagated to the assigned QgsLayerTreeMapCanvasBridge. Also, any updates
 * to the layer tree cause refresh of the list.
 *
 * @see QgsLayerTreeMapCanvasBridge
 * @note added in 2.4
 */
class GUI_EXPORT QgsCustomLayerOrderWidget : public QWidget
{
    Q_OBJECT
  public:
    explicit QgsCustomLayerOrderWidget( QgsLayerTreeMapCanvasBridge* bridge, QWidget *parent = nullptr );

  signals:

  protected slots:
    void bridgeHasCustomLayerOrderChanged( bool state );
    void bridgeCustomLayerOrderChanged( const QStringList& order );
    void nodeVisibilityChanged( QgsLayerTreeNode* node, Qt::CheckState state );

    void modelUpdated();

  protected:
    QgsLayerTreeMapCanvasBridge* mBridge;

    QCheckBox* mChkOverride;
    CustomLayerOrderModel* mModel;
    QListView* mView;
};


///@cond PRIVATE
class CustomLayerOrderModel : public QAbstractListModel
{
    Q_OBJECT

  public:
    CustomLayerOrderModel( QgsLayerTreeMapCanvasBridge* bridge, QObject* parent = nullptr );

    int rowCount( const QModelIndex & ) const override;

    QVariant data( const QModelIndex &index, int role ) const override;

    bool setData( const QModelIndex &index, const QVariant &value, int role ) override;

    Qt::ItemFlags flags( const QModelIndex &index ) const override;

    Qt::DropActions supportedDropActions() const override;

    QStringList mimeTypes() const override;

    QMimeData* mimeData( const QModelIndexList& indexes ) const override;

    bool dropMimeData( const QMimeData *data, Qt::DropAction action, int row, int column, const QModelIndex &parent ) override;

    bool removeRows( int row, int count, const QModelIndex& parent ) override;

    void refreshModel( const QStringList& order );

    QStringList order() const { return mOrder; }

    void updateLayerVisibility( const QString& layerId );

  protected:
    QgsLayerTreeMapCanvasBridge* mBridge;
    QStringList mOrder;
};
/// @endcond

#endif // QGSCUSTOMLAYERORDERWIDGET_H