lyx_mirror/src/insets/insettoc.h

63 lines
1.3 KiB
C
Raw Normal View History

// -*- C++ -*-
/* This file is part of*
* ======================================================
*
* LyX, The Document Word Processor
*
* Copyright 1995 Matthias Ettrich
* Copyright 1996-1999 The LyX Team.
*
* ====================================================== */
#ifndef INSET_TOC_H
#define INSET_TOC_H
#ifdef __GNUG__
#pragma interface
#endif
#include "insetcommand.h"
#include "gettext.h"
class Buffer;
/** Used to insert table of contents
*/
class InsetTOC : public InsetCommand {
public:
///
InsetTOC() : InsetCommand("tableofcontents") {}
///
InsetTOC(Buffer * b) : InsetCommand("tableofcontents"), owner(b) {}
///
Inset * Clone() const { return new InsetTOC(owner); }
///
string getScreenLabel() const { return _("Table of Contents"); }
/// On edit, we open the TOC pop-up
void Edit(BufferView * bv, int, int, unsigned int);
///
unsigned char Editable() const {
return 1;
}
///
bool display() const { return true; }
///
Inset::Code LyxCode() const { return Inset::TOC_CODE; }
#ifdef USE_OSTREAM_ONLY
///
int Linuxdoc(ostream &) const;
///
int DocBook(ostream &) const;
#else
///
int Linuxdoc(string & file) const;
///
int DocBook(string & file) const;
#endif
private:
///
Buffer * owner;
};
#endif