X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Finsets%2Flyxinset.h;h=401884e6d71ab6e91603e3bdb7ca79aacfcc244b;hb=3c8aba3b556871fb1100a2f98cd93d5d4e3f70c9;hp=738ad9be0446adb9b424dd4df9c088a9add07e19;hpb=d0950acedaa91320340af398bb06d790486a2207;p=lyx.git diff --git a/src/insets/lyxinset.h b/src/insets/lyxinset.h index 738ad9be04..401884e6d7 100644 --- a/src/insets/lyxinset.h +++ b/src/insets/lyxinset.h @@ -4,7 +4,6 @@ * * LyX, The Document Processor * - * Copyright 1995 Matthias Ettrich * Copyright 1995-2000 the LyX Team. * * ====================================================== */ @@ -92,7 +91,7 @@ public: /// SPECIALCHAR_CODE, /// - NUMBER_CODE + TABULAR_CODE }; enum EDITABLE { @@ -101,6 +100,8 @@ public: HIGHLY_EDITABLE }; + /// + Inset() { owner_ = 0; } /// virtual ~Inset() {} /// @@ -121,6 +122,12 @@ public: /// virtual EDITABLE Editable() const; /// + virtual void InsetButtonPress(BufferView *, int, int, int) {} + /// + virtual void InsetButtonRelease(BufferView *, int, int, int) {} + /// + virtual void InsetMotionNotify(BufferView *, int , int , int) {} + /// bool IsTextInset() const; /// virtual bool AutoDelete() const; @@ -136,7 +143,8 @@ public: */ virtual int Latex(std::ostream &, bool fragile, bool free_spc) const = 0; - + /// + virtual int Ascii(std::ostream &) const = 0; /// virtual int Linuxdoc(std::ostream &) const = 0; /// @@ -169,9 +177,21 @@ public: return 0; } /// - virtual void init(BufferView *) {} - /// virtual bool InsertInsetAllowed(Inset *) const { return false; } + /// + virtual void setInsetName(const char * s) { name = s; } + /// + virtual string getInsetName() const { return name; } + /// + virtual void setOwner(Inset * inset) { owner_ = inset; } + /// + virtual Inset * owner() const { return owner_; } + /// +private: + /// + Inset * owner_; + /// + string name; }; @@ -209,6 +229,8 @@ public: are not enough. DISPATCHED = the inset catched the action + DISPATCHED_NOUPDATE = the inset catched the action and no update + is needed here to redraw the inset FINISHED = the inset must be unlocked as a result of the action UNDISPATCHED = the action was not catched, it should be @@ -217,6 +239,7 @@ public: enum RESULT { UNDISPATCHED = 0, DISPATCHED, + DISPATCHED_NOUPDATE, FINISHED }; @@ -226,10 +249,7 @@ public: } /// - UpdatableInset() { - scx = mx_scx = 0; - owner_ = 0; - } + UpdatableInset() { scx = mx_scx = 0; } /// //virtual ~UpdatableInset() {} /// @@ -238,6 +258,10 @@ public: /// may call ToggleLockedInsetCursor virtual void ToggleInsetCursor(BufferView *); /// + virtual void ShowInsetCursor(BufferView *); + /// + virtual void HideInsetCursor(BufferView *); + /// virtual void GetCursorPos(int &, int &) const {} /// virtual void InsetButtonPress(BufferView *, int x, int y, int button); @@ -270,7 +294,10 @@ public: virtual bool UpdateInsetInInset(BufferView *, Inset *) { return false; } /// - virtual bool UnlockInsetInInset(BufferView *, Inset *, + virtual bool LockInsetInInset(BufferView *, UpdatableInset *) + { return false; } + /// + virtual bool UnlockInsetInInset(BufferView *, UpdatableInset *, bool /*lr*/ = false) { return false; } /// An updatable inset could handle lyx editing commands @@ -278,11 +305,7 @@ public: /// virtual bool isCursorVisible() const { return cursor_visible; } /// - virtual int getMaxWidth(Painter & pain) const; - /// - virtual void setOwner(UpdatableInset * inset) { owner_ = inset; } - /// - virtual UpdatableInset * owner() { return owner_; } + virtual int getMaxWidth(Painter & pain, UpdatableInset const *) const; protected: /// @@ -296,8 +319,5 @@ private: /// int mx_scx; mutable int scx; - /// - UpdatableInset * owner_; - }; #endif