ROOT logo
ROOT » GUI » GUI » TGDNDManager

class TGDNDManager: public TObject


 TGDNDManager

 Central Drag and Drop manager for ROOT.

Function Members (Methods)

public:
TGDNDManager(TGFrame* toplevel, Atom_t* typelist)
virtual~TGDNDManager()
voidTObject::AbstractMethod(const char* method) const
virtual voidTObject::AppendPad(Option_t* option = "")
virtual voidTObject::Browse(TBrowser* b)
static TClass*Class()
static TClass*TObject::Class()
virtual const char*TObject::ClassName() const
virtual voidTObject::Clear(Option_t* = "")
virtual TObject*TObject::Clone(const char* newname = "") const
virtual Int_tTObject::Compare(const TObject* obj) const
virtual voidTObject::Copy(TObject& object) const
virtual voidTObject::Delete(Option_t* option = "")MENU
virtual Int_tTObject::DistancetoPrimitive(Int_t px, Int_t py)
Bool_tDrag(Int_t x_root, Int_t y_root, Atom_t action, Time_t timestamp)
virtual voidTObject::Draw(Option_t* option = "")
virtual voidTObject::DrawClass() constMENU
virtual TObject*TObject::DrawClone(Option_t* option = "") constMENU
Bool_tDrop()
virtual voidTObject::Dump() constMENU
Bool_tEndDrag()
virtual voidTObject::Error(const char* method, const char* msgfmt) const
virtual voidTObject::Execute(const char* method, const char* params, Int_t* error = 0)
virtual voidTObject::Execute(TMethod* method, TObjArray* params, Int_t* error = 0)
virtual voidTObject::ExecuteEvent(Int_t event, Int_t px, Int_t py)
virtual voidTObject::Fatal(const char* method, const char* msgfmt) const
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
static Atom_tGetDNDActionAsk()
static Atom_tGetDNDActionCopy()
static Atom_tGetDNDActionDescrip()
static Atom_tGetDNDActionLink()
static Atom_tGetDNDActionList()
static Atom_tGetDNDActionMove()
static Atom_tGetDNDActionPrivate()
static Atom_tGetDNDAware()
static Atom_tGetDNDDrop()
static Atom_tGetDNDEnter()
static Atom_tGetDNDFinished()
static Atom_tGetDNDLeave()
static Atom_tGetDNDPosition()
static Atom_tGetDNDProxy()
static Atom_tGetDNDSelection()
static Atom_tGetDNDStatus()
static Atom_tGetDNDTypeList()
static Atom_tGetDNDVersion()
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
virtual const char*TObject::GetIconName() const
TGFrame*GetMainFrame() const
virtual const char*TObject::GetName() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
Window_tGetSource() const
Window_tGetTarget() const
virtual const char*TObject::GetTitle() const
Atom_t*GetTypeList() const
virtual UInt_tTObject::GetUniqueID() const
static Atom_tGetXCDNDData()
Bool_tHandleClientMessage(Event_t* event)
Bool_tHandleSelection(Event_t* event)
Bool_tHandleSelectionRequest(Event_t* event)
virtual Bool_tHandleTimer(TTimer* t)
virtual ULong_tTObject::Hash() const
virtual voidTObject::Info(const char* method, const char* msgfmt) const
virtual Bool_tTObject::InheritsFrom(const char* classname) const
virtual Bool_tTObject::InheritsFrom(const TClass* cl) const
virtual voidTObject::Inspect() constMENU
voidTObject::InvertBit(UInt_t f)
virtual TClass*IsA() const
virtual TClass*TObject::IsA() const
Bool_tIsDragging() const
virtual Bool_tTObject::IsEqual(const TObject* obj) const
virtual Bool_tTObject::IsFolder() const
Bool_tTObject::IsOnHeap() const
virtual Bool_tTObject::IsSortable() const
Bool_tTObject::IsZombie() const
virtual voidTObject::ls(Option_t* option = "") const
voidTObject::MayNotUse(const char* method) const
virtual Bool_tTObject::Notify()
static voidTObject::operator delete(void* ptr)
static voidTObject::operator delete(void* ptr, void* vp)
static voidTObject::operator delete[](void* ptr)
static voidTObject::operator delete[](void* ptr, void* vp)
void*TObject::operator new(size_t sz)
void*TObject::operator new(size_t sz, void* vp)
void*TObject::operator new[](size_t sz)
void*TObject::operator new[](size_t sz, void* vp)
TObject&TObject::operator=(const TObject& rhs)
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
virtual voidTObject::Print(Option_t* option = "") const
virtual Int_tTObject::Read(const char* name)
virtual voidTObject::RecursiveRemove(TObject* obj)
Bool_tRemoveRootProxy()
voidTObject::ResetBit(UInt_t f)
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU
virtual voidTObject::SavePrimitive(basic_ostream<char,char_traits<char> >& out, Option_t* option = "")
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
voidSetDragPixmap(Pixmap_t pic, Pixmap_t mask, Int_t hot_x, Int_t hot_y)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
voidSetMainFrame(TGFrame* main)
static voidTObject::SetObjectStat(Bool_t stat)
Bool_tSetRootProxy()
virtual voidTObject::SetUniqueID(UInt_t uid)
virtual voidShowMembers(TMemberInspector& insp, char* parent)
virtual voidTObject::ShowMembers(TMemberInspector& insp, char* parent)
Bool_tStartDrag(TGFrame* src, Int_t x_root, Int_t y_root, Window_t grabWin = kNone)
virtual voidStreamer(TBuffer& b)
voidStreamerNVirtual(TBuffer& b)
voidTObject::StreamerNVirtual(TBuffer& b)
virtual voidTObject::SysError(const char* method, const char* msgfmt) const
Bool_tTObject::TestBit(UInt_t f) const
Int_tTObject::TestBits(UInt_t f) const
virtual voidTObject::UseCurrentStyle()
virtual voidTObject::Warning(const char* method, const char* msgfmt) const
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0)
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0) const
protected:
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
Window_tFindWindow(Window_t root, Int_t x, Int_t y, Int_t maxd)
Window_tGetRootProxy()
Bool_tHandleDNDDrop(Window_t src, Time_t timestamp)
Bool_tHandleDNDEnter(Window_t src, long vers, Atom_t* dataTypes)
Bool_tHandleDNDFinished(Window_t target)
Bool_tHandleDNDLeave(Window_t src)
Bool_tHandleDNDPosition(Window_t src, int x_root, int y_root, Atom_t action, Time_t timestamp)
Bool_tHandleDNDStatus(Window_t from, int accepted, Rectangle_t skip, Atom_t action)
voidInitAtoms()
Bool_tIsDNDAware(Window_t win, Atom_t* typelist = 0)
Bool_tIsTopLevel(Window_t win)
voidTObject::MakeZombie()
voidSendDNDDrop(Window_t target)
voidSendDNDEnter(Window_t target)
voidSendDNDFinished(Window_t src)
voidSendDNDLeave(Window_t target)
voidSendDNDPosition(Window_t target, int x, int y, Atom_t action, Time_t timestamp)
voidSendDNDStatus(Window_t target, Atom_t action)

Data Members

protected:
Atom_tfAcceptedAction
Cursor_tfDNDNoDropCursorno drop cursor type
TGDragWindow*fDragWindrag window
Atom_t*fDraggerTypeslists of DND types
Bool_tfDraggingkTRUE while dragging
Bool_tfDropAcceptedkTRUE if drop accepted
TTimer*fDropTimeoutdrop timeout
Atom_tfDropTypedrop type
UInt_tfGrabEventMaskpointer grab event mask
Int_tfHotx
Int_tfHotyhot point coordinates
Atom_tfLocalActionaccepted and local actions
TGFrame*fLocalSource
TGFrame*fLocalTargetlocal source and target
TGFrame*fMainpointer on TGMainFrame
Pixmap_tfMaskpixmap used for the drag window
Pixmap_tfPic
Bool_tfProxyOurskTRUE if root proxy is ours
Window_tfSource
Bool_tfStatusPendingkTRUE if status is pending
Window_tfTargetsource and target windows
Bool_tfTargetIsDNDAwarekTRUE if target is DND aware
Atom_t*fTypelist
Bool_tfUseVersionkTRUE if DND version is used
Atom_tfVersionnot really an Atom, but a long
static Atom_tfgDNDActionAsk
static Atom_tfgDNDActionCopy
static Atom_tfgDNDActionDescrip
static Atom_tfgDNDActionLink
static Atom_tfgDNDActionList
static Atom_tfgDNDActionMove
static Atom_tfgDNDActionPrivate
static Atom_tfgDNDAware
static Atom_tfgDNDDrop
static Atom_tfgDNDEnter
static Atom_tfgDNDFinished
static Atom_tfgDNDLeave
static Atom_tfgDNDPosition
static Atom_tfgDNDProxy
static Atom_tfgDNDSelection
static Atom_tfgDNDStatus
static Atom_tfgDNDTypeList
static Atom_tfgDNDVersion
static Bool_tfgInit
static Atom_tfgXAWMState
static Atom_tfgXCDNDData

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

TGDNDManager(TGFrame* toplevel, Atom_t* typelist)
 TGDNDManager constructor.
~TGDNDManager()
 TGDNDManager destructor.
Atom_t GetDNDAware()
{ return fgDNDAware; }
Atom_t GetDNDSelection()
{ return fgDNDSelection; }
Atom_t GetDNDProxy()
{ return fgDNDProxy; }
Atom_t GetDNDEnter()
{ return fgDNDEnter; }
Atom_t GetDNDLeave()
{ return fgDNDLeave; }
Atom_t GetDNDPosition()
{ return fgDNDPosition; }
Atom_t GetDNDStatus()
{ return fgDNDStatus; }
Atom_t GetDNDDrop()
{ return fgDNDDrop; }
Atom_t GetDNDFinished()
{ return fgDNDFinished; }
Atom_t GetDNDVersion()
{ return fgDNDVersion; }
Atom_t GetDNDActionCopy()
{ return fgDNDActionCopy; }
Atom_t GetDNDActionMove()
{ return fgDNDActionMove; }
Atom_t GetDNDActionLink()
{ return fgDNDActionLink; }
Atom_t GetDNDActionAsk()
{ return fgDNDActionAsk; }
Atom_t GetDNDActionPrivate()
{ return fgDNDActionPrivate; }
Atom_t GetDNDTypeList()
{ return fgDNDTypeList; }
Atom_t GetDNDActionList()
{ return fgDNDActionList; }
Atom_t GetDNDActionDescrip()
{ return fgDNDActionDescrip; }
Atom_t GetXCDNDData()
{ return fgXCDNDData; }
void InitAtoms()
 Initialize drag and drop atoms.
Bool_t IsDNDAware(Window_t win, Atom_t* typelist = 0)
 Check if window win is DND aware.
Window_t FindWindow(Window_t root, Int_t x, Int_t y, Int_t maxd)
 Search for DND aware window at position x,y.
Window_t GetRootProxy()
 Get root window proxy.
Bool_t HandleClientMessage(Event_t* event)
 Handle DND related client messages.
Bool_t HandleTimer(TTimer* t)
 Handle Drop timeout.
void SendDNDEnter(Window_t target)
 Send DND enter message to target window.
void SendDNDLeave(Window_t target)
 Send DND leave message to target window.
void SendDNDPosition(Window_t target, int x, int y, Atom_t action, Time_t timestamp)
 Send DND position message to target window.
void SendDNDStatus(Window_t target, Atom_t action)
 Send DND status message to source window.
void SendDNDDrop(Window_t target)
 Send DND drop message to target window.
void SendDNDFinished(Window_t src)
 Send DND finished message to source window.
Bool_t HandleDNDEnter(Window_t src, long vers, Atom_t* dataTypes)
 Handle DND enter event.
Bool_t HandleDNDLeave(Window_t src)
 Handle DND leave event.
Bool_t HandleDNDPosition(Window_t src, int x_root, int y_root, Atom_t action, Time_t timestamp)
 Handle DND position event.
Bool_t HandleDNDStatus(Window_t from, int accepted, Rectangle_t skip, Atom_t action)
 Handle DND status event.
Bool_t HandleDNDDrop(Window_t src, Time_t timestamp)
 Handle DND drop event.
Bool_t HandleDNDFinished(Window_t target)
 Handle DND finished event.
Bool_t HandleSelectionRequest(Event_t* event)
 Handle selection request event.
Bool_t HandleSelection(Event_t* event)
 Handle selection event.
void SetDragPixmap(Pixmap_t pic, Pixmap_t mask, Int_t hot_x, Int_t hot_y)
 Set drag window pixmaps and hotpoint.
Bool_t StartDrag(TGFrame* src, Int_t x_root, Int_t y_root, Window_t grabWin = kNone)
 Start dragging.
Bool_t Drop()
 Drop.
Bool_t EndDrag()
 End dragging.
Bool_t Drag(Int_t x_root, Int_t y_root, Atom_t action, Time_t timestamp)
 Process drag event.
Bool_t SetRootProxy()
 Set root window proxy.
Bool_t RemoveRootProxy()
 Remove root window proxy.
TDNDData& operator=(const TGDNDManager& )
TGDNDManager(const TGDNDManager& )
Bool_t IsTopLevel(Window_t win)
TGFrame * GetMainFrame() const
--- called by widgets
{ return fMain; }
void SetMainFrame(TGFrame* main)
{ fMain = main; }
Bool_t IsDragging() const
{ return fDragging; }
Window_t GetSource() const
{ return fSource; }
Window_t GetTarget() const
{ return fTarget; }
Atom_t * GetTypeList() const
{ return fTypelist; }