X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Finsets%2Finsetlatexaccent.h;h=4d4713b39acbb944d24f1bcb46086dc9316495da;hb=4a5b7a5952ad2381fcdf4830511293e184c7c5a1;hp=024ef9fe991589fec5d620569a5729934a279c80;hpb=35584afc1162dec2cf9fff79305e95cb3b75aefb;p=lyx.git diff --git a/src/insets/insetlatexaccent.h b/src/insets/insetlatexaccent.h index 024ef9fe99..4d4713b39a 100644 --- a/src/insets/insetlatexaccent.h +++ b/src/insets/insetlatexaccent.h @@ -1,12 +1,12 @@ // -*- C++ -*- /* This file is part of* - * ====================================================== + * ====================================================== * * LyX, The Document Processor * - * Copyright (C) 1995 Matthias Ettrich + * Copyright 1995 Matthias Ettrich * - *======================================================*/ + * ====================================================== */ #ifndef INSET_LATEX_ACCENT_H #define INSET_LATEX_ACCENT_H @@ -15,7 +15,7 @@ #pragma interface #endif -#include "lyxinset.h" +#include "inset.h" #include "LString.h" #include "lyxlex.h" @@ -27,52 +27,54 @@ it also can handle other special characters (e.g. Hstroke) Initiated by Ivan Schreter, later modified by Lgb. */ -class InsetLatexAccent: public Inset { +class InsetLatexAccent : public Inset { public: /// - InsetLatexAccent(); + InsetLatexAccent(); /// + explicit InsetLatexAccent(string const & string); /// - InsetLatexAccent(InsetLatexAccent const&); + int ascent(BufferView *, LyXFont const &) const; /// - ~InsetLatexAccent(); + int descent(BufferView *, LyXFont const &) const; /// - int Ascent(LyXFont const &font) const; + int width(BufferView *, LyXFont const &) const; /// - int Descent(LyXFont const &font) const; + void draw(BufferView *, LyXFont const &, int, float &, bool) const; /// - int Width(LyXFont const &font) const; + int lbearing(LyXFont const & font) const; /// - bool DisplayISO8859_9(LyXFont font, LyXScreen &scr, - int baseline, float &x); + int rbearing(LyXFont const & font) const; /// - void Draw(LyXFont font, LyXScreen &scr, int baseline, float &x); + bool displayISO8859_9(BufferView *, LyXFont const & font, + int baseline, float & x) const; /// - void Write(FILE *file); + void write(Buffer const *, std::ostream &) const; /// - void Read(LyXLex &lex); + void read(Buffer const *, LyXLex & lex); /// - int Latex(FILE *file, signed char fragile); + int latex(Buffer const *, std::ostream &, + bool fragile, bool free_spc) const; /// - int Latex(string &file, signed char fragile); + int ascii(Buffer const *, std::ostream &, int linelen) const; /// - int Linuxdoc(string &file); + int linuxdoc(Buffer const *, std::ostream &) const; /// - int DocBook(string &file); + int docbook(Buffer const *, std::ostream &) const; /// - bool Deletable() const; + bool deletable() const; /// - bool DirectWrite() const; + bool directWrite() const; /// - Inset* Clone(); + virtual Inset * clone(Buffer const &, bool same_id = false) const; /// - Inset::Code LyxCode()const; + Inset::Code lyxCode()const; /// - bool IsEqual(Inset* other); - /// - inline bool CanDisplay(); -private: + inline bool canDisplay(); + // should this inset be handled like a normal charater + bool isChar() const { return true; } + /// all the accent types enum ACCENT_TYPES{ /// @@ -118,8 +120,8 @@ private: /// LSLASH }; - - friend ostream & operator<<(ostream &, ACCENT_TYPES); +private: + friend std::ostream & operator<<(std::ostream &, ACCENT_TYPES); /// Check if we know the modifier and can display it ok on screen. void checkContents(); /// @@ -129,20 +131,20 @@ private: /// modifier type ACCENT_TYPES modtype; - /// remove dot from 'i' and 'j' or transform l,L into lslash,LSLaSH + /// remove dot from 'i' and 'j' or transform l, L into lslash, LSLaSH bool remdot; /// add something to ascent - accent at the top bool plusasc; /// add something to descent - underlined char bool plusdesc; /// international char - char ic; + mutable char ic; }; -bool InsetLatexAccent::CanDisplay() + +bool InsetLatexAccent::canDisplay() { return candisp; } #endif -