X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Finsets%2Finsetlatexaccent.h;h=018eb86d181c03fab67a187bae5cf2d2a09f0882;hb=3c8aba3b556871fb1100a2f98cd93d5d4e3f70c9;hp=0295d89f1c69dd818d7d990550a0e1f123d68166;hpb=0eccdd1c3613e5170deb77b22174dd0afde833e9;p=lyx.git diff --git a/src/insets/insetlatexaccent.h b/src/insets/insetlatexaccent.h index 0295d89f1c..018eb86d18 100644 --- a/src/insets/insetlatexaccent.h +++ b/src/insets/insetlatexaccent.h @@ -1,15 +1,15 @@ // -*- 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 +#ifndef INSET_LATEX_ACCENT_H +#define INSET_LATEX_ACCENT_H #ifdef __GNUG__ #pragma interface @@ -27,52 +27,50 @@ 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(); /// + explicit InsetLatexAccent(string const & string); /// - InsetLatexAccent(InsetLatexAccent const&); + int ascent(Painter &, LyXFont const &) const; /// - ~InsetLatexAccent(); + int descent(Painter &, LyXFont const &) const; /// - int Ascent(LyXFont const &font) const; + int width(Painter &, LyXFont const &) const; /// - int Descent(LyXFont const &font) const; + void draw(Painter &, LyXFont const &, int baseline, float & x) 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(Painter &, LyXFont const & font, + int baseline, float & x) const; /// - void Write(FILE *file); + void Write(std::ostream &) const; /// - void Read(LyXLex &lex); + void Read(LyXLex & lex); /// - int Latex(FILE *file, signed char fragile); + int Latex(std::ostream &, bool fragile, bool free_spc) const; /// - int Latex(string &file, signed char fragile); + int Ascii(std::ostream &) const; /// - int Linuxdoc(string &file); + int Linuxdoc(std::ostream &) const; /// - int DocBook(string &file); + int DocBook(std::ostream &) const; /// bool Deletable() const; /// bool DirectWrite() const; /// - Inset* Clone(); + Inset * Clone() const; /// Inset::Code LyxCode()const; /// - bool IsEqual(Inset* other); - /// inline bool CanDisplay(); -private: /// all the accent types enum ACCENT_TYPES{ /// @@ -118,7 +116,8 @@ private: /// LSLASH }; - +private: + friend std::ostream & operator<<(std::ostream &, ACCENT_TYPES); /// Check if we know the modifier and can display it ok on screen. void checkContents(); /// @@ -128,14 +127,14 @@ 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() @@ -144,4 +143,3 @@ bool InsetLatexAccent::CanDisplay() } #endif -