]> git.lyx.org Git - lyx.git/blobdiff - src/insets/insetbase.h
insetcharstyle drawing cosmetics
[lyx.git] / src / insets / insetbase.h
index 5f9e1c2ac9dec8737bc52d4246aff752f1cfe4ce..d87ac7c15a96ddae2fb8a22e4215d985d3b5e4b8 100644 (file)
@@ -79,7 +79,7 @@ public:
        /// cursor enters
        virtual void edit(LCursor & cur, bool left);
        /// cursor enters
-       virtual InsetBase * editXY(LCursor & cur, int x, int y);
+       virtual InsetBase * editXY(LCursor & cur, int x, int y) const;
 
        /// compute the size of the object returned in dim
        virtual void metrics(MetricsInfo & mi, Dimension & dim) const = 0;
@@ -98,9 +98,9 @@ public:
        /// add space for markers
        void metricsMarkers2(Dimension & dim, int framesize = 1) const;
        /// last drawn position for 'important' insets
-       virtual int xo() const { return 0; }
+       int xo() const;
        /// last drawn position for 'important' insets
-       virtual int yo() const { return 0; }
+       int yo() const;
        /// set x/y drawing position cache if available
        virtual void setPosCache(PainterInfo const &, int, int) const {}
        /// do we cover screen position x/y?
@@ -362,6 +362,8 @@ public:
        enum mode_type {UNDECIDED_MODE, TEXT_MODE, MATH_MODE};
        /// return text or mathmode if that is possible to determine
        virtual mode_type currentMode() const { return UNDECIDED_MODE; }
+       /// returns whether this inset is allowed in other insets of given mode
+       virtual bool allowedIn(mode_type) const { return true; }
 
        /// is this inset allowed within a font change?
        virtual bool noFontChange() const { return false; }