]> git.lyx.org Git - lyx.git/blobdiff - src/insets/insetindex.h
* src/LyXAction.C: mark goto-clear-bookmark as working without buffer
[lyx.git] / src / insets / insetindex.h
index a7946b9f364c23221d938cbc92d4969d58644e8c..638825412cce397fb9d05c75d51952896eddf3c6 100644 (file)
@@ -1,89 +1,68 @@
 // -*- 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 (C) 1995 Matthias Ettrich
- *                        1996-1998 LyX Team
- * 
- *======================================================*/
+ * \author Lars Gullik Bjønnes
+ *
+ * Full author contact details are available in file CREDITS.
+ */
 
-#ifndef _INSET_INDEX_H
-#define _INSET_INDEX_H
+#ifndef INSET_INDEX_H
+#define INSET_INDEX_H
 
-#ifdef __GNUG__
-#pragma interface
-#endif
 
 #include "insetcommand.h"
 
-class Buffer;
-struct LaTeXFeatures;
 
-// Created by Lgb 970227
+namespace lyx {
 
+class LaTeXFeatures;
 
-/** Used to insert index labels  
+/** Used to insert index labels
   */
-class InsetIndex: public InsetCommand {
+class InsetIndex : public InsetCommand {
 public:
        ///
-       InsetIndex(): InsetCommand("index") {;}
+       InsetIndex(InsetCommandParams const &);
        ///
-       InsetIndex(LString const & key);
+       docstring const getScreenLabel(Buffer const &) const;
        ///
-       ~InsetIndex();
+       EDITABLE editable() const { return IS_EDITABLE; }
        ///
-       Inset *Clone() { return new InsetIndex(contents);}
+       InsetBase::Code lyxCode() const;
        ///
-       void Edit(int, int);
-       ///
-       unsigned char Editable() const
-       {
-               return 1;
+       int docbook(Buffer const &, odocstream &,
+                   OutputParams const &) const;
+private:
+       virtual std::auto_ptr<InsetBase> doClone() const {
+               return std::auto_ptr<InsetBase>(new InsetIndex(params()));
        }
-       ///
-       LString getScreenLabel() const;
 };
 
 
-class InsetPrintIndex: public InsetCommand {
+class InsetPrintIndex : public InsetCommand {
 public:
        ///
-       InsetPrintIndex();
-       ///
-       InsetPrintIndex(Buffer*);
-       ///
-       ~InsetPrintIndex();
+       InsetPrintIndex(InsetCommandParams const &);
        /// 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;
-       }
-       ///
-       bool Display() const { return true; }
+       InsetBase::Code lyxCode() const;
        ///
-       Inset::Code LyxCode() const;
+       bool display() const { return true; }
        ///
-       LString getScreenLabel() const;
+       docstring const getScreenLabel(Buffer const &) const;
 private:
-       ///
-       Buffer *owner;
+       virtual std::auto_ptr<InsetBase> doClone() const {
+               return std::auto_ptr<InsetBase>(new InsetPrintIndex(params()));
+       }
 };
 
-// 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;
-       void *vdata;
-       long ldata;
-};
 
-extern FD_index_form *index_form;
+} // namespace lyx
+
 #endif