This file is indexed.

/usr/include/OpenMS/VISUAL/AxisWidget.h is in libopenms-dev 1.11.1-5.

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
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
// --------------------------------------------------------------------------
//                   OpenMS -- Open-Source Mass Spectrometry
// --------------------------------------------------------------------------
// Copyright The OpenMS Team -- Eberhard Karls University Tuebingen,
// ETH Zurich, and Freie Universitaet Berlin 2002-2013.
//
// This software is released under a three-clause BSD license:
//  * Redistributions of source code must retain the above copyright
//    notice, this list of conditions and the following disclaimer.
//  * Redistributions in binary form must reproduce the above copyright
//    notice, this list of conditions and the following disclaimer in the
//    documentation and/or other materials provided with the distribution.
//  * Neither the name of any author or any participating institution
//    may be used to endorse or promote products derived from this software
//    without specific prior written permission.
// For a full list of authors, refer to the file AUTHORS.
// --------------------------------------------------------------------------
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
// ARE DISCLAIMED. IN NO EVENT SHALL ANY OF THE AUTHORS OR THE CONTRIBUTING
// INSTITUTIONS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
// EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
// OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
// WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
// OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// --------------------------------------------------------------------------
// $Maintainer: Timo Sachsenberg$
// $Authors: Marc Sturm $
// --------------------------------------------------------------------------

#ifndef OPENMS_VISUAL_AXISWIDGET_H
#define OPENMS_VISUAL_AXISWIDGET_H

// QT
#include <QtGui/QWidget>
class QPaintEvent;

// OpenMS
#include <OpenMS/CONCEPT/Types.h>
#include <OpenMS/DATASTRUCTURES/String.h>
#include <OpenMS/MATH/MISC/MathFunctions.h>
#include <OpenMS/VISUAL/AxisPainter.h>

namespace OpenMS
{
  /**
      @brief Widget that represents an axis of a graph.

      Additional to ticks and tick values a label e.g. the unit can be displayed.
      It supports both linear and logarithmic scale.

      @image html AxisWidget.png
      The above image shows a horizontal example axis.

      @ingroup Visual
  */
  class OPENMS_GUI_DLLAPI AxisWidget :
    public QWidget
  {
    Q_OBJECT

public:
    ///Type definitions
    //@{
    ///Vector of vector of doubles that defines the grid
    typedef std::vector<std::vector<DoubleReal> > GridVector;

    /// constructor
    AxisWidget(AxisPainter::Alignment alignment, const char * legend = "", QWidget * parent = 0);

    /// destructor
    virtual ~AxisWidget();

    /// sets the margin on the top/right side (default is 0)
    void setMargin(UInt size);

    /// returns the margin
    UInt margin();

    /// enable the display of the legend (default true)
    void showLegend(bool show_legend);

    /// returns true if legend is shown
    bool isLegendShown() const;

    /// sets the legend text
    void setLegend(const String & legend);

    /// returns the actual legend text
    const String & getLegend();

    /// returns the currently used grid lines
    const GridVector & gridLines();

    /// sets the axis to logarithmic scale
    void setLogScale(bool is_log);

    /// returns true if the axis has logarithmic scale
    bool isLogScale();

    /// set true to display the axis label in inverse order (left to right or bottom to top)
    void setInverseOrientation(bool inverse_orientation);

    /// returns if the axis label is displayed in inverse order
    bool hasInverseOrientation();

    /// set true to allow for shortened numbers (with k/M/G units) on the axis label
    void setAllowShortNumbers(bool short_nums);

    /// returns the minimum value displayed on the axis
    DoubleReal getAxisMinimum() const;

    /// returns the maximum value displayed on the axis
    DoubleReal getAxisMaximum() const;

    /// Actual painting takes place here
    void paint(QPainter * painter, QPaintEvent * e);

public slots:

    ///sets min/max of the axis
    void setAxisBounds(DoubleReal min, DoubleReal max);

    /// set maximum number of tick levels ('1' or '2', default: '2')
    void setTickLevel(UInt level);

protected:
    /// Vector that defines the position of the ticks/gridlines and the shown values on axis
    GridVector grid_line_;

    /// format of axis scale (linear or logarithmic)
    bool is_log_;

    /// display of legend enabled or not
    bool show_legend_;

    /// Position of the axis (right, left, top, down as defined in ALIGNMENT_ENUM)
    AxisPainter::Alignment alignment_;

    /// true if axis label are displayed in inverse order (left to right or bottom to top)
    bool is_inverse_orientation_;

    /// margin of axis
    UInt margin_;

    /// minimum value on the axis
    DoubleReal min_;

    /// maximum value on the axis
    DoubleReal max_;

    /// text/unit on axis
    String legend_;

    /// maximum number of tick levels (default=2)
    UInt tick_level_;

    /// true if k/M/G units can be used
    bool allow_short_numbers_;

    /// Reimplemented Qt event (calls paint with "this")
    void paintEvent(QPaintEvent *);
  };
} // namespace OpenMS

#endif