]> 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 db4a138713603f1ffacec7523ab60e371e2f3e11..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
 
 #include "insetcommand.h"
 
-struct LaTeXFeatures;
+class LaTeXFeatures;
 
 /** Used to insert index labels
   */
 class InsetIndex : public InsetCommand {
 public:
        ///
-       InsetIndex(InsetCommandParams const &, bool same_id = false);
+       InsetIndex(InsetCommandParams const &);
        ///
-       virtual Inset * clone(Buffer const &, bool same_id = false) const {
-               return new InsetIndex(params(), same_id);
-       }
-       ///
-       string const getScreenLabel(Buffer const *) const;
+       std::string const getScreenLabel(Buffer const &) const;
        ///
        EDITABLE editable() const { return IS_EDITABLE; }
        ///
-       void edit(BufferView *, int, int, mouse_button::state);
-       ///
-       void edit(BufferView * bv, bool front = true);
-       ///
-       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()));
+       }
 };
 
 
 class InsetPrintIndex : public InsetCommand {
 public:
        ///
-       InsetPrintIndex(InsetCommandParams const &, bool same_id = false);
-       ///
-       virtual Inset * clone(Buffer const &, bool same_id = false) const {
-               return new InsetPrintIndex(params(), same_id);
-       }
+       InsetPrintIndex(InsetCommandParams const &);
        /// Updates needed features for this inset.
        void validate(LaTeXFeatures & features) const;
        ///
-       void edit(BufferView *, int, int, mouse_button::state) {}
-       ///
-       void edit(BufferView *, bool = true) {}
-       ///
        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