This file is indexed.

/usr/include/FL/Fl_Chart.H is in libfltk1.3-dev 1.3.3-7.

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
//
// "$Id: Fl_Chart.H 8864 2011-07-19 04:49:30Z greg.ercolano $"
//
// Forms chart header file for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998-2010 by Bill Spitzak and others.
//
// This library is free software. Distribution and use rights are outlined in
// the file "COPYING" which should have been included with this file.  If this
// file is missing or damaged, see the license at:
//
//     http://www.fltk.org/COPYING.php
//
// Please report all bugs and problems on the following page:
//
//     http://www.fltk.org/str.php
//

/* \file
   Fl_Chart widget . */

#ifndef Fl_Chart_H
#define Fl_Chart_H

#ifndef Fl_Widget_H
#include "Fl_Widget.H"
#endif

// values for type()
#define FL_BAR_CHART		0	/**< type() for Bar Chart variant */
#define FL_HORBAR_CHART		1	/**< type() for Horizontal Bar Chart variant */
#define FL_LINE_CHART		2	/**< type() for Line Chart variant */
#define FL_FILL_CHART		3	/**< type() for Fill Line Chart variant */
#define FL_SPIKE_CHART		4	/**< type() for Spike Chart variant */
#define FL_PIE_CHART		5	/**< type() for Pie Chart variant */
#define FL_SPECIALPIE_CHART	6	/**< type() for Special Pie Chart variant */

#define FL_FILLED_CHART  FL_FILL_CHART	/**< for compatibility */

#define FL_CHART_MAX		128	/**< max entries per chart */
#define FL_CHART_LABEL_MAX	18	/**< max label length for entry */

/** For internal use only */
struct FL_CHART_ENTRY {
   float val;				/**< For internal use only. */
   unsigned col;			/**< For internal use only. */
   char str[FL_CHART_LABEL_MAX+1];	/**< For internal use only. */
};

/**
  \class Fl_Chart
  \brief Fl_Chart displays simple charts.
  It is provided for Forms compatibility.

  \image html charts.png  
  \image latex charts.png  "Fl_Chart" width=10cm
  \todo Refactor Fl_Chart::type() information.

  The type of an Fl_Chart object can be set using type(uchar t) to:
  \li \c FL_BAR_CHART: Each sample value is drawn as a vertical bar.
  \li \c FL_FILLED_CHART: The chart is filled from the bottom of the graph
         to the sample values.
  \li \c FL_HORBAR_CHART: Each sample value is drawn as a horizontal bar.
  \li \c FL_LINE_CHART: The chart is drawn as a polyline with vertices at
         each sample value.
  \li \c FL_PIE_CHART: A pie chart is drawn with each sample value being
         drawn as a proportionate slice in the circle.
  \li \c FL_SPECIALPIE_CHART: Like \c FL_PIE_CHART, but the first slice is
         separated from the pie.
  \li \c FL_SPIKE_CHART: Each sample value is drawn as a vertical line.
 */
class FL_EXPORT Fl_Chart : public Fl_Widget {
    int numb;
    int maxnumb;
    int sizenumb;
    FL_CHART_ENTRY *entries;
    double min,max;
    uchar autosize_;
    Fl_Font textfont_;
    Fl_Fontsize textsize_;
    Fl_Color textcolor_;
protected:
    void draw();
public:
    Fl_Chart(int X, int Y, int W, int H, const char *L = 0);

    ~Fl_Chart();

    void clear();

    void add(double val, const char *str = 0, unsigned col = 0);

    void insert(int ind, double val, const char *str = 0, unsigned col = 0);

    void replace(int ind, double val, const char *str = 0, unsigned col = 0);

    /**
      Gets the lower and upper bounds of the chart values.
      \param[out] a, b are set to lower, upper
     */
    void bounds(double *a,double *b) const {*a = min; *b = max;}

    void bounds(double a,double b);

    /**
      Returns the number of data values in the chart.
     */
    int size() const {return numb;}

    void size(int W, int H) { Fl_Widget::size(W, H); }

    /**
      Gets the maximum number of data values for a chart.
     */
    int maxsize() const {return maxnumb;}

    void maxsize(int m);

    /** Gets the chart's text font */
    Fl_Font textfont() const {return textfont_;}
    /** Sets the chart's text font to \p s. */
    void textfont(Fl_Font s) {textfont_ = s;}

    /** Gets the chart's text size */
    Fl_Fontsize textsize() const {return textsize_;}
    /** gets the chart's text size to \p s. */
    void textsize(Fl_Fontsize s) {textsize_ = s;}

    /** Gets the chart's text color */
    Fl_Color textcolor() const {return textcolor_;}
    /** gets the chart's text color to \p n. */
    void textcolor(Fl_Color n) {textcolor_ = n;}

    /**
      Get whether the chart will automatically adjust the bounds of the chart.
      \returns non-zero if auto-sizing is enabled and zero if disabled.
     */
    uchar autosize() const {return autosize_;}

    /**
      Set whether the chart will automatically adjust the bounds of the chart.
      \param[in] n non-zero to enable automatic resizing, zero to disable.
     */
    void autosize(uchar n) {autosize_ = n;}
};

#endif

//
// End of "$Id: Fl_Chart.H 8864 2011-07-19 04:49:30Z greg.ercolano $".
//