]> git.lyx.org Git - lyx.git/blobdiff - src/insets/insetindex.h
The speed patch: redraw only rows that have changed
[lyx.git] / src / insets / insetindex.h
index e3b4caa7fbf89e5703ba13c3b1b468513ab3585f..8dc585a1577ecd60cc231488999efcea4133dc64 100644 (file)
@@ -6,7 +6,7 @@
  *
  * \author Lars Gullik Bjønnes
  *
- * Full author contact details are available in file CREDITS
+ * Full author contact details are available in file CREDITS.
  */
 
 #ifndef INSET_INDEX_H
@@ -15,7 +15,7 @@
 
 #include "insetcommand.h"
 
-struct LaTeXFeatures;
+class LaTeXFeatures;
 
 /** Used to insert index labels
   */
@@ -24,21 +24,18 @@ public:
        ///
        InsetIndex(InsetCommandParams const &);
        ///
-       ~InsetIndex();
-       ///
-       virtual Inset * clone() const {
-               return new InsetIndex(params());
-       }
-       ///
-       dispatch_result localDispatch(FuncRequest const & cmd);
-       ///
-       string const getScreenLabel(Buffer const *) const;
+       std::string const getScreenLabel(Buffer const &) const;
        ///
        EDITABLE editable() const { return IS_EDITABLE; }
        ///
-       Inset::Code lyxCode() const;
+       InsetBase::Code lyxCode() const;
        ///
-       int docbook(Buffer const *, std::ostream &, bool mixcont) const;
+       int docbook(Buffer const &, std::ostream &,
+                   OutputParams const &) const;
+private:
+       virtual std::auto_ptr<InsetBase> doClone() const {
+               return std::auto_ptr<InsetBase>(new InsetIndex(params()));
+       }
 };
 
 
@@ -46,26 +43,20 @@ class InsetPrintIndex : public InsetCommand {
 public:
        ///
        InsetPrintIndex(InsetCommandParams const &);
-       ///
-       ~InsetPrintIndex();
-       ///
-       Inset * clone() const {
-               return new InsetPrintIndex(params());
-       }
-       ///
-       //dispatch_result localDispatch(FuncRequest const & cmd);
        /// Updates needed features for this inset.
        void validate(LaTeXFeatures & features) const;
        ///
        EDITABLE editable() const { return NOT_EDITABLE; }
        ///
-       bool display() const { return true; }
-       ///
-       Inset::Code lyxCode() const;
+       InsetBase::Code lyxCode() const;
        ///
-       string const getScreenLabel(Buffer const *) const;
+       bool display() const { return true; }
        ///
-       virtual bool needFullRow() const { return true; }
+       std::string const getScreenLabel(Buffer const &) const;
+private:
+       virtual std::auto_ptr<InsetBase> doClone() const {
+               return std::auto_ptr<InsetBase>(new InsetPrintIndex(params()));
+       }
 };
 
 #endif