// -*- C++ -*-
-/* This file is part of*
- * ======================================================
+/**
+ * \file insettoc.h
+ * This file is part of LyX, the document processor.
+ * Licence details can be found in the file COPYING.
*
- * LyX, The Document Word Processor
- *
- * Copyright 1995 Matthias Ettrich
- * Copyright 1996-1999 The LyX Team.
- *
- * ====================================================== */
+ * \author Lars Gullik Bjønnes
+ *
+ * Full author contact details are available in file CREDITS.
+ */
#ifndef INSET_TOC_H
#define INSET_TOC_H
-#ifdef __GNUG__
-#pragma interface
-#endif
#include "insetcommand.h"
-#include "gettext.h"
-// Created by Lgb 970527
+class MetricsInfo;
+
/** 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(int, int);
- ///
- unsigned char Editable() const {
- return 1;
+ InsetTOC(InsetCommandParams const &);
+ ///
+ ~InsetTOC();
+ ///
+ virtual std::auto_ptr<InsetBase> clone() const {
+ return std::auto_ptr<InsetBase>(new InsetTOC(params()));
}
///
- bool display() const { return true; }
+ void metrics(MetricsInfo &, Dimension &) const;
+ ///
+ void draw(PainterInfo & pi, int x, int y) const;
+ ///
+ dispatch_result localDispatch(FuncRequest const & cmd);
+ ///
+ std::string const getScreenLabel(Buffer const &) const;
+ ///
+ EDITABLE editable() const { return IS_EDITABLE; }
///
- Inset::Code LyxCode() const { return Inset::TOC_CODE; }
+ InsetOld::Code lyxCode() const;
///
- int Linuxdoc(string & file) const;
+ int ascii(Buffer const &, std::ostream &, int linelen) const;
///
- int DocBook(string & file) const;
-private:
+ int linuxdoc(Buffer const &, std::ostream &) const;
///
- Buffer * owner;
+ int docbook(Buffer const &, std::ostream &, bool mixcont) const;
};
#endif