/usr/include/vtkQtChartLayer.h is in libvtk5-qt4-dev 5.8.0-14.1ubuntu3.
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 | /*=========================================================================
Program: Visualization Toolkit
Module: vtkQtChartLayer.h
Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
All rights reserved.
See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
This software is distributed WITHOUT ANY WARRANTY; without even
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE. See the above copyright notice for more information.
=========================================================================*/
/*-------------------------------------------------------------------------
Copyright 2008 Sandia Corporation.
Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation,
the U.S. Government retains certain rights in this software.
-------------------------------------------------------------------------*/
/// \file vtkQtChartLayer.h
/// \date February 1, 2008
#ifndef _vtkQtChartLayer_h
#define _vtkQtChartLayer_h
#include "vtkQtChartExport.h"
#include <QObject>
#include <QGraphicsItem>
#include "vtkQtChartGraphicsItemTypes.h" // needed for enum
class vtkQtChartAxis;
class vtkQtChartLayerDomain;
class vtkQtChartArea;
class QPainter;
/// \class vtkQtChartLayer
/// \brief
/// The vtkQtChartLayer class is the base class for all chart
/// drawing layers.
class VTKQTCHART_EXPORT vtkQtChartLayer : public QObject, public QGraphicsItem
{
Q_OBJECT
public:
enum AxesCorner
{
BottomLeft = 0, ///< Uses the bottom and left axes.
BottomRight, ///< Uses the bottom and right axes.
TopLeft, ///< Uses the top and left axes.
TopRight ///< Uses the top and right axes.
};
enum {Type = vtkQtChart_LayerType};
public:
vtkQtChartLayer();
virtual ~vtkQtChartLayer() {}
virtual int type() const {return vtkQtChartLayer::Type;}
/// \brief
/// Gets the chart area containing this layer.
/// \return
/// A pointer to the chart area.
vtkQtChartArea *getChartArea() const {return this->ChartArea;}
/// \brief
/// Sets the chart area that contains this layer.
///
/// The chart area will call this method when the layer is added to
/// it. The layer can overload this method to perform any setup it
/// needs to.
///
/// \param area The new chart area.
virtual void setChartArea(vtkQtChartArea *area) {this->ChartArea = area;}
/// \brief
/// Gets the chart layer's domain.
///
/// The layer should use the \c mergeDomain method of the \c domain
/// parameter to add its domains. The domains from all of the chart
/// layers will be combined using the \c domain object.
///
/// \param domain Used to return the chart layer's domain.
virtual void getLayerDomain(vtkQtChartLayerDomain &domain) const;
/// \brief
/// Used to layout the chart layer.
///
/// Use the \c AxisDomain from the relevant axes to determine if
/// the chart data can be displayed. The domain priority for the
/// axes can override a layer's desired domain.
///
/// \param area The area the chart should occupy.
virtual void layoutChart(const QRectF &area)=0;
/// \brief
/// Used to filter items while drawing.
///
/// Items can be filtered in two ways. First, this method can
/// return true to skip drawing the item. Second, the painter can
/// be modified to clip the item. The default implementation simply
/// returns false.
///
/// \note
/// The painter is in scene coordinates when passed in. It will
/// be transformed to item coordinates after this call. To clip
/// in item coordinates, use the item's paint method.
/// \param item One of the layer's child items.
/// \param painter The painter used to draw the item.
/// \return
/// True if the item should not be drawn.
virtual bool drawItemFilter(QGraphicsItem *item, QPainter *painter);
/// \brief
/// Gets the help text for the given location.
///
/// When the chart receives a help event, the layers are searched,
/// in order, for help text at the help event location. If a layer
/// has an item at the location, it should return true.
///
/// \param point The help location in scene coordinates.
/// \param text Used to return the help text.
/// \return
/// True if help text is found for the given location.
virtual bool getHelpText(const QPointF &point, QString &text);
/// Notifies the chart layer that a resize interaction has started.
virtual void startInteractiveResize() {}
/// Notifies the chart layer that a resize interaction has finished.
virtual void finishInteractiveResize() {}
signals:
/// Emitted when the layer layout needs to be calculated.
void layoutNeeded();
/// \brief
/// Emitted when the axis range for the layer has changed.
/// \note
/// This signal should be emitted before the \c layoutNeeded
/// signal to be effective.
void rangeChanged();
protected:
vtkQtChartArea *ChartArea; ///< Stores the containing chart area.
};
#endif
|