]> git.lyx.org Git - lyx.git/blob - src/insets/insetlabel.h
229103330c8240d734e0f3c2239f778c01d44878
[lyx.git] / src / insets / insetlabel.h
1 // -*- C++ -*-
2 /* This file is part of*
3  * ======================================================
4  *
5  *           LyX, The Document Processor
6  *       
7  *          Copyright (C) 1995 Matthias Ettrich
8  *                       1995-1998 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         ~InsetLabel();
31         ///
32         Inset* Clone();
33         ///
34         Inset::Code LyxCode() const { return Inset::LABEL_CODE; }
35         ///
36         int GetNumberOfLabels() const;
37         ///
38         string getLabel(int) const;
39         ///
40         string getScreenLabel() const { return getContents(); }
41         ///
42         unsigned char Editable() const { return 0; }
43         ///
44         int Latex(FILE *file, signed char fragile);
45         ///
46         int Latex(string &file, signed char fragile);
47         ///
48         int Linuxdoc(string &file);
49         ///
50         int DocBook(string &file);
51 private:
52         /// This function escapes 8-bit characters
53         string escape(string const &) const;
54 };
55
56 #endif