]> git.lyx.org Git - lyx.git/blob - src/insets/insetlabel.h
6137b5b07b0617d7f143c8eba5a52c41e7a18e6b
[lyx.git] / src / insets / insetlabel.h
1 // -*- C++ -*-
2 /* This file is part of*
3  * ======================================================
4  *
5  *           LyX, The Document Processor
6  *       
7  *           Copyright 1995 Matthias Ettrich
8  *           Copyright 1995-1999 The LyX Team
9  *
10  * ====================================================== */
11
12 #ifndef INSET_LABEL_H
13 #define INSET_LABEL_H
14
15 #ifdef __GNUG__
16 #pragma interface
17 #endif
18
19 #include "insetcommand.h"
20 #include "LString.h"
21
22 ///
23 class InsetLabel : public InsetCommand {
24 public:
25         ///
26         InsetLabel(string const & cmd);
27         ///
28         InsetLabel() : InsetCommand("label") {}
29         ///
30         Inset * Clone() const;
31         ///
32         Inset::Code LyxCode() const { return Inset::LABEL_CODE; }
33         ///
34         int GetNumberOfLabels() const;
35         ///
36         string getLabel(int) const;
37         ///
38         string getScreenLabel() const { return getContents(); }
39         ///
40         unsigned char Editable() const { return 0; }
41         ///
42         int Latex(FILE * file, signed char fragile);
43         ///
44         int Latex(string & file, signed char fragile);
45         ///
46         int Linuxdoc(string & file);
47         ///
48         int DocBook(string & file);
49 private:
50         /// This function escapes 8-bit characters
51         string escape(string const &) const;
52 };
53
54 #endif