This file is indexed.

/usr/include/scribus/hruler.h is in scribus 1.4.0.dfsg+r17300-1.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
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
/*
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.
*/
/***************************************************************************
						hruler.h  -  description
							-------------------
	begin                : Tue Apr 10 2001
	copyright            : (C) 2001 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 HRULER_H
#define HRULER_H

#include <QWidget>

#include "scribusapi.h"
#include "styles/paragraphstyle.h"

class PageItem;

class QPaintEvent;
class QMouseEvent;
class PrefsManager;
class RulerGesture;
class ScribusView;
class ScribusDoc;
class ScribusMainWindow;

/** \brief Horizontal ruler
\author Franz Schmid
*/
class SCRIBUS_API Hruler : public QWidget
{
	Q_OBJECT

public:
	Hruler(ScribusView *pa, ScribusDoc *doc);
	~Hruler() {};

private:
	bool textEditMode;
	double ColGap;
	double lineCorr;
	int Cols;
	double RExtra;
	double Extra;
	double Indent;
	double First;
	double RMargin;
	bool Revers;
	QList<ParagraphStyle::TabRecord> TabValues;
	PageItem * currItem;

	double ItemPos;
	double ItemEndPos;
	double offs;

public:	
	double ruleSpacing();
	void setItem(PageItem * item);
	void textMode(bool state) { textEditMode = state; }
	double textBase() const; // left text edge in canvas coord
	double textWidth() const;
	double textPosToCanvas(double x) const;
	int textPosToLocal(double x) const;
	double localToTextPos(int x) const;
	void shift(double pos); // using canvas coord
	void shiftRel(double dist); // using canvas coord
	double offset() const { return offs; }

private:
	int findRulerHandle(QPoint mp, double grabRadius);

	virtual void paintEvent(QPaintEvent *e);
	virtual void mousePressEvent(QMouseEvent *m);
	virtual void mouseReleaseEvent(QMouseEvent *);
	virtual void mouseMoveEvent(QMouseEvent *m);
	virtual void enterEvent(QEvent *m);
	virtual void leaveEvent(QEvent *m);
 
	void drawMarks(QPainter& p);
	void drawTextMarks(double pos, double endPos, QPainter& p);
	void drawMarker(QPainter& p);

	void drawNumber(QString num, int startx, int starty, QPainter & p);
	void UpdateTabList();

	int Markp;
	int oldMark;
	bool Mpressed;
	int ActCol;
	int ActTab;
	double Scaling;
	int RulerCode;
	int MouseX;

	ScribusDoc *currDoc;
	ScribusView *currView;
	
public slots: // Public slots
	/** \brief draw mark
	\param where where to draw */
	void Draw(int where);
	void unitChange();

signals:
	void DocChanged(bool);
	void MarkerMoved(double base, double xp);

private:
	double iter, iter2;
	double cor;
	int whereToDraw;
	bool drawMark;
	PrefsManager *prefsManager;
	RulerGesture* rulerGesture;
};

#endif