]> git.lyx.org Git - lyx.git/blob - src/insets/inset.h
fix crash after removing a table row (again due to uncorrected cursor
[lyx.git] / src / insets / inset.h
1 // -*- C++ -*-
2 /**
3  * \file inset.h
4  * This file is part of LyX, the document processor.
5  * Licence details can be found in the file COPYING.
6  *
7  * \author Alejandro Aguilar Sierra
8  * \author Jürgen Vigna
9  * \author Lars Gullik Bjønnes
10  * \author Matthias Ettrich
11  *
12  * Full author contact details are available in file CREDITS.
13  */
14
15 #ifndef INSETOLD_H
16 #define INSETOLD_H
17
18 #include "insetbase.h"
19 #include "dimension.h"
20
21 class LColor_color;
22 class UpdatableInset;
23
24
25 /// Insets
26 class InsetOld : public InsetBase {
27 public:
28         ///
29         enum {
30                 ///
31                 TEXT_TO_INSET_OFFSET = 2
32         };
33
34         ///
35         InsetOld();
36         ///
37         InsetOld(InsetOld const & in);
38         ///
39         int ascent() const;
40         ///
41         int descent() const;
42         ///
43         int width() const;
44
45         ///
46         void setInsetName(std::string const & s) { name_ = s; }
47         ///
48         std::string const & getInsetName() const { return name_; }
49         ///
50         virtual void setBackgroundColor(LColor_color);
51         ///
52         LColor_color backgroundColor() const;
53         /// set x/y drawing position cache
54         void setPosCache(PainterInfo const &, int, int) const;
55         /// returns the actual scroll-value
56         virtual int scroll(bool recursive = true) const;
57
58         ///
59         bool forceDefaultParagraphs(InsetBase const * inset) const;
60 protected:
61         ///
62         mutable int scx;
63         ///
64         mutable Dimension dim_;
65
66 private:
67         ///
68         std::string name_;
69         /** We store the LColor::color value as an int to get LColor.h out
70          *  of the header file.
71          */
72         int background_color_;
73 };
74
75
76 /** \c InsetOld_code is a wrapper for InsetOld::Code.
77  *  It can be forward-declared and passed as a function argument without
78  *  having to expose inset.h.
79  */
80 class InsetOld_code {
81         InsetOld::Code val_;
82 public:
83         InsetOld_code(InsetOld::Code val) : val_(val) {}
84         operator InsetOld::Code() const { return val_; }
85 };
86
87 #endif