summaryrefslogtreecommitdiffstats
path: root/scribus/desaxe/uniqueid.h
blob: 519d9c96d5dd0776d3860db35e73d7600c26f0c6 (plain)
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
/*
 *  saxfilter.h
 *  
 *
 *  Created by Andreas Vox on 21.09.06.
 *  Copyright 2006 under GPL2. All rights reserved.
 *
 */



#ifndef DESAXE_UNIQUEID_H
#define DESAXE_UNIQUEID_H

#include <set>
#include "saxfilter.h"

/**
 *  This filter suppresses the output of   
 */
class UniqueID : public SaxFilter {
public:
	UniqueID(SaxHandler* delegate) : SaxFilter(delegate), seenIDs(), level(0)  {}
	virtual void begin(const Xml_string& tag, Xml_attr attr);
	virtual void end(const Xml_string& tag);
	virtual void chars(const Xml_string& text);
private:
	std::set<Xml_string> seenIDs;
	int level;
};

#endif