This file is indexed.

/usr/include/scribus/fpointarray.h is in scribus-dev 1.4.6+dfsg-2.

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
/*
For general Scribus (>=1.3.2) copyright and licensing information please refer
to the COPYING file provided with the program. Following this notice may exist
a copyright and/or license notice that predates the release of Scribus 1.3.2
for which a new license (GPL+exception) is in place.
*/
/***************************************************************************
                          fpointarray.h  -  description
                             -------------------
    begin                : Mit Jul 24 2002
    copyright            : (C) 2002 by Franz Schmid
    email                : Franz.Schmid@altmuehlnet.de
 ***************************************************************************/

/***************************************************************************
 *                                                                         *
 *   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 FPOINTARRAY_H
#define FPOINTARRAY_H

#include <QMatrix>
#include <QPainterPath>
#include <QPoint>
#include <QPointF>
#include <QVector>

#include "fpoint.h"
#include "scribusapi.h"

/**
  *@author Franz Schmid
  */

struct SVGState;

class SCRIBUS_API FPointArray : private QVector<FPoint>
{
public: 
	FPointArray() : count(0), svgState(NULL) {};
	FPointArray(int size) : QVector<FPoint>(size), count(size), svgState(NULL) {};
	FPointArray(const FPointArray &a) : QVector<FPoint>(a), count(a.count), svgState(NULL) {};
	uint size() const { return count; };
	bool resize(uint newCount);
	void setPoint(uint i, double x, double y) { Iterator p = begin(); p+=i; p->xp = x; p->yp = y; };
	void setPoint(uint i, FPoint p) {	setPoint(i, p.xp, p.yp); };
	bool setPoints( int nPoints, double firstx, double firsty, ... );
	bool putPoints( int index, int nPoints, double firstx, double firsty,  ... );
	bool putPoints( int index, int nPoints, const FPointArray & from, int fromIndex = 0 );
	void point(uint i, double *x, double *y) const;
	const FPoint & point(uint i)  const{ ConstIterator p = begin(); p+=i; return *p; };
	QPoint pointQ(uint i) const;
	QPointF pointQF(uint i) const;
	void translate( double dx, double dy );
	void scale( double sx, double sy );
	FPoint WidthHeight() const;
	void map(QMatrix m);
	FPointArray &operator=( const FPointArray &a );
	FPointArray copy() const;
	void setMarker();
	void addPoint(double x, double y);
	void addPoint(FPoint p);
	bool hasLastQuadPoint(double x1, double y1, double x2, double y2, double x3, double y3, double x4, double y4) const;
	void addQuadPoint(double x1, double y1, double x2, double y2, double x3, double y3, double x4, double y4);
	void addQuadPoint(FPoint p1, FPoint p2, FPoint p3, FPoint p4);
	double lenPathSeg(int seg) const;
	double lenPathDist(int seg, double t1, double t2) const;
	void pointTangentNormalAt( int seg, double t, FPoint* p, FPoint* tn, FPoint* n ) const;
	void pointDerivativesAt( int seg, double t, FPoint* p, FPoint* d1, FPoint* d2 ) const;
	bool operator==(const FPointArray &rhs) const;
	bool operator!=(const FPointArray &rhs) const;
	~FPointArray();
	void svgInit();
	void svgMoveTo(double x, double y);
	void svgLineTo(double x, double y);
	//void svgCurveTo(double x1, double y1, double x2, double y2);
	void svgCurveToCubic(double x1, double y1, double x2, double y2, double x3, double y3);
	void svgArcTo(double r1, double r2, double angle, bool largeArcFlag, bool sweepFlag, double x1, double y1);
	void svgClosePath();
	void calculateArc(bool relative, double &curx, double &cury, double angle, double x, double y, double r1, double r2, bool largeArcFlag, bool sweepFlag);
	bool parseSVG(const QString& svgPath);
	QString svgPath() const;
	QPainterPath toQPainterPath(bool closed);
	void fromQPainterPath(QPainterPath &path);
private:
	uint count;
	SVGState * svgState;
};

#endif