mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-09-22 07:57:22 +00:00
0d43ba149a
For one, it still contains a few things that are already in CVS (the 'brown paperbag' changes). Secondly, this changes the ParagraphList to a std::vector but does not yet take full advantage of it except removing LyXText::parOffset() and similar. I had an extensive talk with my profiler and we are happy nevertheless. This also moves almost all Cut&Paste specific stuff from text.C to CutAndPaste.C. Much smaller interface now... Namespace CutAndPaste is now lyx::cap::. Was inconsistent with the rest.... Make ParagraphList a proper class. We'll need this later for a specialized erase/insert. Remove some unneeded prototypes and function declarations Use ParameterStruct directly instead of ShareContainer<ParameterStruct> Inline a few accesses to CursorSlice members as suggested by the profiler. Fix commandline conversion crash reported by Kayvan. Replace PosIterator by DocumentIterator. The latter can also iterate through math and nested text in math... Remove math specific hack from Documentiterator Derive InsetCollapsable from InsetText instead of using an InsetText member. This give us the opportunity to get rid of the InsetOld::owner_ backpointer. Cosmetics in CutAndPaste.C and cursor.C. Fix nasty crash (popping slices off an empty selection anchor). Add a few asserts. Remove all 'manual' update calls. We do now one per user interaction which is completely sufficient. git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@8527 a592a061-630c-0410-9148-cb99ea01b6c8
96 lines
1.8 KiB
C++
96 lines
1.8 KiB
C++
// -*- C++ -*-
|
|
/**
|
|
* \file inset.h
|
|
* This file is part of LyX, the document processor.
|
|
* Licence details can be found in the file COPYING.
|
|
*
|
|
* \author Alejandro Aguilar Sierra
|
|
* \author Jürgen Vigna
|
|
* \author Lars Gullik Bjønnes
|
|
* \author Matthias Ettrich
|
|
*
|
|
* Full author contact details are available in file CREDITS.
|
|
*/
|
|
|
|
#ifndef INSETOLD_H
|
|
#define INSETOLD_H
|
|
|
|
#include "insetbase.h"
|
|
#include "dimension.h"
|
|
|
|
class LColor_color;
|
|
class UpdatableInset;
|
|
|
|
|
|
/// Insets
|
|
class InsetOld : public InsetBase {
|
|
public:
|
|
///
|
|
enum {
|
|
///
|
|
TEXT_TO_INSET_OFFSET = 2
|
|
};
|
|
|
|
///
|
|
InsetOld();
|
|
///
|
|
InsetOld(InsetOld const & in);
|
|
///
|
|
int ascent() const;
|
|
///
|
|
int descent() const;
|
|
///
|
|
int width() const;
|
|
|
|
///
|
|
void setInsetName(std::string const & s) { name_ = s; }
|
|
///
|
|
std::string const & getInsetName() const { return name_; }
|
|
///
|
|
virtual void setBackgroundColor(LColor_color);
|
|
///
|
|
LColor_color backgroundColor() const;
|
|
/// set x/y drawing position cache
|
|
void setPosCache(PainterInfo const &, int, int) const;
|
|
///
|
|
int xo() const { return xo_; }
|
|
///
|
|
int yo() const { return yo_; }
|
|
/// returns the actual scroll-value
|
|
virtual int scroll(bool recursive = true) const;
|
|
|
|
///
|
|
bool forceDefaultParagraphs(InsetBase const * inset) const;
|
|
protected:
|
|
///
|
|
mutable int xo_;
|
|
///
|
|
mutable int yo_;
|
|
///
|
|
mutable int scx;
|
|
///
|
|
mutable Dimension dim_;
|
|
|
|
private:
|
|
///
|
|
std::string name_;
|
|
/** We store the LColor::color value as an int to get LColor.h out
|
|
* of the header file.
|
|
*/
|
|
int background_color_;
|
|
};
|
|
|
|
|
|
/** \c InsetOld_code is a wrapper for InsetOld::Code.
|
|
* It can be forward-declared and passed as a function argument without
|
|
* having to expose inset.h.
|
|
*/
|
|
class InsetOld_code {
|
|
InsetOld::Code val_;
|
|
public:
|
|
InsetOld_code(InsetOld::Code val) : val_(val) {}
|
|
operator InsetOld::Code() const { return val_; }
|
|
};
|
|
|
|
#endif
|