#ifndef ROOT_TVirtualDragManager
#define ROOT_TVirtualDragManager
#ifndef ROOT_TGFrame
#include "TGFrame.h"
#endif
enum EDragType { kDragNone, kDragMove, kDragCopy,
                 kDragLink, kDragLasso, kDragResize };
class TVirtualDragManager  {
protected:
   Bool_t         fMoveWaiting;  
   Bool_t         fDragging;     
   Bool_t         fDropping;     
   Bool_t         fPasting;      
   EDragType      fDragType;     
   TGFrame       *fSource;       
   TGFrame       *fFrameUnder;   
   TGFrame       *fTarget;       
   TGFrame       *fPasteFrame;   
protected:
   virtual void  Init();
public:
   TVirtualDragManager();
   virtual          ~TVirtualDragManager() {}
   EDragType         GetDragType() const { return fDragType; }
   Bool_t            IsMoveWaiting() const { return fMoveWaiting; }
   Bool_t            IsDragging() const { return fDragging; }
   Bool_t            IsDropping() const { return fDropping; }
   Bool_t            IsPasting() const { return fPasting; }
   TGFrame          *GetTarget() const { return fTarget; }
   TGFrame          *GetSource() const { return fSource; }
   TGFrame          *GetFrameUnder() const { return fFrameUnder; }
   TGFrame          *GetPasteFrame() const { return fPasteFrame; }
   virtual void      SetTarget(TGFrame *f) { fTarget = f; }
   virtual void      SetSource(TGFrame *f) { fSource = f; }
   virtual void      SetPasteFrame(TGFrame *f) { fPasteFrame = f; }
   virtual Bool_t    StartDrag(TGFrame * = 0, Int_t = 0, Int_t = 0) { return kFALSE; }
   virtual Bool_t    EndDrag() { return kFALSE; }
   virtual Bool_t    Drop() { return kFALSE; }
   virtual Bool_t    Cancel(Bool_t = kTRUE) { return kFALSE; }
   virtual Bool_t    HandleEvent(Event_t *) { return kFALSE; }
   virtual Bool_t    IgnoreEvent(Event_t *) { return kTRUE; }
   virtual void      SetEditable(Bool_t) {}
   virtual Int_t     GetStrartDragX() const { return 0; }
   virtual Int_t     GetStrartDragY() const { return 0; }
   virtual Int_t     GetEndDragX() const { return 0; }
   virtual Int_t     GetEndDragY() const { return 0; }
   static  TVirtualDragManager  *Instance();
   ClassDef(TVirtualDragManager,0)  
};
R__EXTERN TVirtualDragManager *gDragManager; 
#endif
Last change: Tue May 13 08:24:20 2008
Last generated: 2008-05-13 08:24
This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.