Le 18/04/2016 14:59, Jean-Marc Lasgouttes a écrit :
--- a/src/insets/Inset.h
+++ b/src/insets/Inset.h
@@ -347,6 +347,8 @@ public:
virtual bool clickable(BufferView const &, int, int) const { return
false; }
/// Move one cell backwards
virtual bool allowsCaptionVariation(std::string const &) const { return
false; }
+ // true for insets that have a table structure (InsetMathGrid,
InsetTabular)
+ virtual bool isTable() const { return false; }
/// does this contain text that can be change track marked in DVI?
virtual bool canTrackChanges() const { return false; }
This turns InsetMathHull::isTable() into a redefinition of Inset::isTable().
* Is it intended that InsetMathGrid::isTable() gets overridden by
InsetMathHull::isTable()? This seems to make sense to me but I would be
reassured to know that this is intentional.
* Is it intended that InsetMathHull::isTable() itself can now be
overridden, possibly changing the meaning of existing code? Again I
believe that the change makes sense and does not break the existing use
of isTable().
If not intended, this sort of situation could be avoided by enforcing
the use of the override keyword (c++11) using -Wsuggest-override (gcc5).
Guillaume