// -*- 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 (C) 1995 Matthias Ettrich
- * 1996-1998 The LyX Team.
- *
- *======================================================*/
-
-#ifndef _INSET_TOC_H
-#define _INSET_TOC_H
-
-#ifdef __GNUG__
-#pragma interface
-#endif
+ * \author Lars Gullik Bjønnes
+ *
+ * Full author contact details are available in file CREDITS.
+ */
+
+#ifndef INSET_TOC_H
+#define INSET_TOC_H
#include "insetcommand.h"
-#include "gettext.h"
-// Created by Lgb 970527
-/** Used to insert table of contents
- */
-class InsetTOC: public InsetCommand {
+namespace lyx {
+
+
+/// Used to insert table of contents and similar lists
+class InsetTOC : public InsetCommand {
public:
///
- InsetTOC(): InsetCommand("tableofcontents") {}
+ explicit InsetTOC(InsetCommandParams const &);
///
- InsetTOC(Buffer *b): InsetCommand("tableofcontents"),owner(b){}
- ///
- Inset* Clone() { return new InsetTOC(owner); }
- ///
- LString getScreenLabel() const { return _("Table of Contents"); }
- /// On edit, we open the TOC pop-up
- void Edit(int, int);
- ///
- unsigned char Editable() const {
- return 1;
- }
+ docstring const getScreenLabel(Buffer const &) const;
///
- bool Display() const { return true; }
+ EDITABLE editable() const { return IS_EDITABLE; }
///
- Inset::Code LyxCode() const { return Inset::TOC_CODE; }
+ InsetBase::Code lyxCode() const;
///
- int Linuxdoc(LString &file);
+ bool display() const { return true; }
///
- int DocBook(LString &file);
-private:
+ int plaintext(Buffer const &, odocstream &,
+ OutputParams const &) const;
///
- Buffer *owner;
+ int docbook(Buffer const &, odocstream &,
+ OutputParams const &) const;
+private:
+ virtual std::auto_ptr<InsetBase> doClone() const;
};
+
+} // namespace lyx
+
#endif