X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Finsets%2Finsetbib.h;h=a478f646f9f0061e10f7ca4d0d7588d104786563;hb=3c8aba3b556871fb1100a2f98cd93d5d4e3f70c9;hp=b0dfb75d2fd213d1348f3c77e9985d06c02b083e;hpb=0eccdd1c3613e5170deb77b22174dd0afde833e9;p=lyx.git diff --git a/src/insets/insetbib.h b/src/insets/insetbib.h index b0dfb75d2f..a478f646f9 100644 --- a/src/insets/insetbib.h +++ b/src/insets/insetbib.h @@ -1,16 +1,16 @@ // -*- C++ -*- /* This file is part of* - * ====================================================== + * ====================================================== * * LyX, The Document Processor * - * Copyright (C) 1995 Matthias Ettrich - * Copyright (C) 1995-1998 The LyX Team. + * Copyright 1995 Matthias Ettrich + * Copyright 1995-2000 The LyX Team. * - *======================================================*/ + * ====================================================== */ -#ifndef _INSET_BIB_H -#define _INSET_BIB_H +#ifndef INSET_BIB_H +#define INSET_BIB_H #ifdef __GNUG__ #pragma interface @@ -18,29 +18,40 @@ #include "insetcommand.h" -// Created by Alejandro 970222 - +class Buffer; /** Used to insert citations */ class InsetCitation: public InsetCommand { public: /// - InsetCitation(): InsetCommand("cite") { } + InsetCitation() : InsetCommand("cite") {} /// - InsetCitation(string const & key, string const & note=string()); + explicit + InsetCitation(string const & key, string const & note = string()); /// ~InsetCitation(); /// - Inset* Clone() { return new InsetCitation(contents, options); } + Inset * Clone() const { + return new InsetCitation(contents, options); + } /// string getScreenLabel()const; /// - void Edit(int, int); + void Edit(BufferView *, int x, int y, unsigned int button); /// - unsigned char Editable() const { - return 1; + EDITABLE Editable() const { + return IS_EDITABLE; } + /// + struct Holder { + InsetCitation * inset; + BufferView * view; + }; + +private: + /// + Holder holder; }; @@ -52,24 +63,26 @@ public: class InsetBibKey: public InsetCommand { public: /// - InsetBibKey(): InsetCommand("bibitem") { counter = 1; } + InsetBibKey() : InsetCommand("bibitem") { counter = 1; } /// - InsetBibKey(string const & key, string const & label=string()); + explicit + InsetBibKey(string const & key, string const & label = string()); /// - InsetBibKey(InsetBibKey const*); + explicit + InsetBibKey(InsetBibKey const *); /// ~InsetBibKey(); /// - Inset* Clone() { return new InsetBibKey(this); } + Inset * Clone() const { return new InsetBibKey(this); } /// Currently \bibitem is used as a LyX2.x command, so we need this method. - void Write(FILE *); + void Write(std::ostream &) const; /// virtual string getScreenLabel() const; /// - void Edit(int, int); + void Edit(BufferView *, int x, int y, unsigned int button); /// - unsigned char Editable() const { - return 1; + EDITABLE Editable() const { + return IS_EDITABLE; } /// A user can't neither insert nor delete this inset bool Deletable() const { @@ -79,10 +92,18 @@ public: void setCounter(int); /// int getCounter() const { return counter; } + /// + struct Holder { + InsetBibKey * inset; + BufferView * view; + }; private: /// int counter; + + /// + Holder holder; }; @@ -91,14 +112,17 @@ public: class InsetBibtex: public InsetCommand { public: /// - InsetBibtex(): InsetCommand("BibTeX") { owner = 0; } + InsetBibtex() : InsetCommand("BibTeX") { owner = 0; } /// InsetBibtex(string const & dbase, string const & style, Buffer *); + /// + ~InsetBibtex(); + /// - ~InsetBibtex(); - /// - Inset* Clone() { return new InsetBibtex(contents, options, 0); } + Inset * Clone() const { + return new InsetBibtex(contents, options, 0); + } /// Inset::Code LyxCode() const { @@ -107,27 +131,33 @@ public: /// string getScreenLabel() const; /// - void Edit(int, int); + void Edit(BufferView *, int x, int y, unsigned int button); /// - int Latex(FILE *, signed char); + int Latex(std::ostream &, bool fragile, bool freespace) const; /// - int Latex(string &file, signed char fragile); + string getKeys(char delim); /// - string getKeys(); - /// - unsigned char Editable() const { - return 1; + EDITABLE Editable() const { + return IS_EDITABLE; } /// - bool addDatabase(string const&); + bool addDatabase(string const &); /// - bool delDatabase(string const&); + bool delDatabase(string const &); /// - bool Display() const { return true; } + bool display() const { return true; } + + struct Holder { + InsetBibtex * inset; + BufferView * view; + }; + private: /// - Buffer *owner; -}; + mutable Buffer * owner; + /// + Holder holder; +}; #endif