]> git.lyx.org Git - lyx.git/blob - src/DepTable.h
fix the smallcaps drawing, move xfont metrics functions out from LyXFont, move non...
[lyx.git] / src / DepTable.h
1 // -*- C++ -*-
2 /* This file is part of
3  * ====================================================== 
4  * 
5  *           LyX, The Document Processor
6  *           Copyright 1995 Matthias Ettrich
7  *           Copyright 1995-2000 The LyX Team.
8  *        
9  *           This file is Copyright 1996-2000
10  *           Lars Gullik Bjønnes
11  *
12  * ====================================================== 
13  */
14
15 #ifndef DEP_TABLE_H
16 #define DEP_TABLE_H
17
18 #include "LString.h"
19 #include <map>
20
21 #ifdef __GNUG__
22 #pragma interface
23 #endif
24
25 ///
26 class DepTable {
27 public:
28         /** This one is a little bit harder since we need the absolute
29           filename. Should we insert files with .sty .cls etc as
30           extension? */
31         void insert(string const & f,
32                     bool upd = false,
33                     unsigned long one = 0,
34                     unsigned long two = 0);
35         ///
36         void update();
37
38         ///
39         void write(string const & f) const;
40         ///
41         void read(string const & f);
42         /// returns true if any of the files has changed
43         bool sumchange() const;
44         /// return true if fil has changed.
45         bool haschanged(string const & fil) const;
46         /// return true if a file with extension ext has changed.
47         bool extchanged(string const & ext) const;
48         ///
49         bool exist(string const & fil) const;
50         ///
51         void remove_files_with_extension(string const &);
52 private:
53         ///
54         typedef std::map<string,
55                 std::pair<unsigned long, unsigned long> > DepList;
56         ///
57         DepList deplist;
58 };
59
60 #endif