// -*- C++ -*-
-/* This file is part of*
- * ======================================================
+/**
+ * \file insetindex.h
+ * This file is part of LyX, the document processor.
+ * Licence details can be found in the file COPYING.
*
- * LyX, The Document 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_INDEX_H
#define INSET_INDEX_H
-#ifdef __GNUG__
-#pragma interface
-#endif
#include "insetcommand.h"
-class Buffer;
struct LaTeXFeatures;
-// Created by Lgb 970227
-
-
-/** Used to insert index labels
+/** Used to insert index labels
*/
-class InsetIndex: public InsetCommand {
+class InsetIndex : public InsetCommand {
public:
///
- InsetIndex(): InsetCommand("index") {;}
- ///
- InsetIndex(string const & key);
+ InsetIndex(InsetCommandParams const &);
///
~InsetIndex();
///
- Inset * Clone() { return new InsetIndex(contents);}
+ virtual std::auto_ptr<InsetBase> clone() const {
+ return std::auto_ptr<InsetBase>(new InsetIndex(params()));
+ }
+ ///
+ dispatch_result localDispatch(FuncRequest const & cmd);
///
- void Edit(int, int);
+ string const getScreenLabel(Buffer const *) const;
///
- unsigned char Editable() const
- {
- return 1;
- }
+ EDITABLE editable() const { return IS_EDITABLE; }
///
- string getScreenLabel() const;
+ InsetOld::Code lyxCode() const;
+ ///
+ int docbook(Buffer const *, std::ostream &, bool mixcont) const;
};
-class InsetPrintIndex: public InsetCommand {
+class InsetPrintIndex : public InsetCommand {
public:
///
- InsetPrintIndex();
- ///
- InsetPrintIndex(Buffer *);
+ InsetPrintIndex(InsetCommandParams const &);
///
~InsetPrintIndex();
+ ///
+ virtual std::auto_ptr<InsetBase> clone() const {
+ return std::auto_ptr<InsetBase>(new InsetPrintIndex(params()));
+ }
+ ///
+ //dispatch_result localDispatch(FuncRequest const & cmd);
/// Updates needed features for this inset.
- void Validate(LaTeXFeatures & features) const;
+ void validate(LaTeXFeatures & features) const;
///
- void Edit(int, int) {}
+ EDITABLE editable() const { return NOT_EDITABLE; }
///
- unsigned char Editable() const{
- return 1;
- }
+ InsetOld::Code lyxCode() const;
///
- bool Display() const { return true; }
+ string const getScreenLabel(Buffer const *) const;
///
- Inset::Code LyxCode() const;
+ void metrics(MetricsInfo &, Dimension &) const;
///
- string getScreenLabel() const;
+ void draw(PainterInfo & pi, int x, int y) const;
private:
///
- Buffer * owner;
-};
-
-// this was shifted here rather than a separate
-// file because its little and only need by
-// insetindex.C and lyx_gui_misc.C ARRae 981020
-struct FD_index_form {
- FL_FORM * index_form;
- FL_OBJECT * key;
+ mutable unsigned int center_indent_;
};
-extern FD_index_form * index_form;
#endif