This file is indexed.

/usr/include/scribus/serializer.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
/*
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.
*/
/***************************************************************************
                          serializer.h  -  description
                             -------------------
    begin                : Sat May 5 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 SERIALIZER_H
#define SERIALIZER_H

#include <QString>
#include <QFile>
#include <QByteArray>
#include "scribusapi.h"
#include "selection.h"
#include "desaxe/saxio.h"
#include "desaxe/digester.h"

/**
  * This class reads/writes Scribus datastructures from/to SAX streams 
  * (was done by ScribusXML before). It also serves as a testbed for the new
  * Scribus 1.4 file format
  *
  * Currently it also holds to old methods which are used to read/write text 
  * from/to a file.
  *
  * @author Andreas Vox
  */

class ScribusDoc;
class ColorList;

class SCRIBUS_API Serializer : public desaxe::Digester {
public: 

	/** Construct a Serializer object which can be used to (de)serialize Scribus
		elements. Since it has Digester as a superclass, a Serializer object can
	    also be used where a SaxHandler is required as argument, eg. the saxx() method.
	 */
	Serializer(ScribusDoc& doc);
	/**
	  Writes all objects in selection to handler as a fragment. Needed styles and colors
	  are included.
	*/
	static void serializeObjects(const Selection& objects, SaxHandler& handler);
	/**
	  Reads objects from the given QString which must represent a fragment, imports them
	  into the document and returns a (nonGUI) selection to it.
	*/
	Selection deserializeObjects(const QByteArray & xml);
	/**
	  Reads objects from the given QFile which must represent a fragment, imports them
	  into the document and returns a (nonGUI) selection to it.
	 */
	Selection deserializeObjects(const QFile & xml);

	Selection cloneObjects(const Selection& objects);
	
	/** Legacy method to read plain text for a textframe */
	static bool readWithEncoding(const QString& filename, const QString& encoding, 
								 QString & txt);
	/** Legacy method to write plain text from a textframe */
	static bool writeWithEncoding(const QString& filename, const QString& encoding, 
								  const QString& txt);

private:
	ScribusDoc& m_Doc;
	ColorList backUpColors;
	Selection importCollection();
	void updateGradientColors(const ColorList& colors);
};

#endif