12#ifndef ROOT_TGDNDManager
13#define ROOT_TGDNDManager
Handle_t Cursor_t
Cursor handle.
Handle_t Pixmap_t
Pixmap handle.
ULong_t Time_t
Event time.
ULong_t Pixel_t
Pixel value.
Handle_t Window_t
Window handle.
#define ClassDef(name, id)
R__EXTERN TGDNDManager * gDNDManager
TDNDData & operator=(const TDNDData &)=delete
TDNDData(Atom_t dt=kNone, void *d=nullptr, Int_t len=0, Atom_t act=kNone)
TDNDData(const TDNDData &)=delete
static Atom_t fgDNDVersion
Bool_t HandleDNDEnter(Window_t src, long vers, Atom_t dataTypes[3])
Handle DND enter event.
virtual ~TGDNDManager()
TGDNDManager destructor.
static Atom_t fgDNDActionPrivate
static Atom_t fgDNDActionAsk
static Atom_t GetDNDDrop()
static Atom_t GetDNDActionAsk()
static Atom_t fgDNDActionMove
Bool_t HandleSelectionRequest(Event_t *event)
Handle selection request event.
static Atom_t fgDNDActionLink
Bool_t HandleClientMessage(Event_t *event)
Handle DND related client messages.
static Atom_t fgDNDActionDescrip
void SendDNDEnter(Window_t target)
Send DND enter message to target window.
static Atom_t fgDNDSelection
TGDNDManager(const TGDNDManager &)=delete
Window_t GetTarget() const
void InitAtoms()
Initialize drag and drop atoms.
static Atom_t fgDNDFinished
static Atom_t GetXCDNDData()
static Atom_t GetDNDVersion()
static Atom_t GetDNDActionLink()
Bool_t HandleTimer(TTimer *t)
Handle Drop timeout.
Bool_t HandleDNDDrop(Window_t src, Time_t timestamp)
Handle DND drop event.
static Atom_t GetDNDStatus()
static Atom_t fgXCDNDData
Bool_t HandleDNDFinished(Window_t target)
Handle DND finished event.
static Atom_t fgDNDPosition
Atom_t * GetTypeList() const
Bool_t HandleSelection(Event_t *event)
Handle selection event.
Bool_t IsDragging() const
static Atom_t GetDNDTypeList()
Window_t GetSource() const
Window_t GetRootProxy()
Get root window proxy.
Bool_t HandleDNDStatus(Window_t from, int accepted, Rectangle_t skip, Atom_t action)
Handle DND status event.
void SetMainFrame(TGFrame *main)
static Atom_t fgDNDActionCopy
static Atom_t GetDNDProxy()
TGDNDManager & operator=(const TGDNDManager &)=delete
static Atom_t GetDNDActionDescrip()
Bool_t StartDrag(TGFrame *src, Int_t x_root, Int_t y_root, Window_t grabWin=kNone)
Start dragging.
void SendDNDStatus(Window_t target, Atom_t action)
Send DND status message to source window.
static Atom_t GetDNDAware()
Bool_t IsDNDAware(Window_t win, Atom_t *typelist=0)
Check if window win is DND aware.
void SetDragPixmap(Pixmap_t pic, Pixmap_t mask, Int_t hot_x, Int_t hot_y)
Set drag window pixmaps and hotpoint.
Bool_t IsTopLevel(Window_t win)
static Atom_t GetDNDFinished()
static Atom_t GetDNDSelection()
static Atom_t fgDNDActionList
static Atom_t GetDNDActionList()
Window_t FindWindow(Window_t root, Int_t x, Int_t y, Int_t maxd)
Search for DND aware window at position x,y.
static Atom_t fgDNDTypeList
Bool_t RemoveRootProxy()
Remove root window proxy.
static Atom_t GetDNDEnter()
Bool_t HandleDNDPosition(Window_t src, int x_root, int y_root, Atom_t action, Time_t timestamp)
Handle DND position event.
static Atom_t fgXAWMState
void SendDNDPosition(Window_t target, int x, int y, Atom_t action, Time_t timestamp)
Send DND position message to target window.
void SendDNDFinished(Window_t src)
Send DND finished message to source window.
Cursor_t fDNDNoDropCursor
Bool_t Drag(Int_t x_root, Int_t y_root, Atom_t action, Time_t timestamp)
Process drag event.
void SendDNDDrop(Window_t target)
Send DND drop message to target window.
static Atom_t GetDNDPosition()
static Atom_t GetDNDActionPrivate()
static Atom_t fgDNDStatus
Bool_t HandleDNDLeave(Window_t src)
Handle DND leave event.
void SendDNDLeave(Window_t target)
Send DND leave message to target window.
TGFrame * GetMainFrame() const
Bool_t SetRootProxy()
Set root window proxy.
static Atom_t GetDNDActionCopy()
Bool_t EndDrag()
End dragging.
static Atom_t GetDNDActionMove()
static Atom_t GetDNDLeave()
virtual ~TGDragWindow()
TGDragWindow destructor.
virtual void DoRedraw()
Redraw TGDragWindow.
virtual void MapRaised()
Map and Raise TGDragWindow.
virtual void Layout()
Layout TGDragWindow.
virtual void RaiseWindow()
Raise TGDragWindow.
virtual void UnmapWindow()
Unmap TGDragWindow.
Bool_t HasWindow(Window_t w) const
virtual TGDimension GetDefaultSize() const
std::cout << fWidth << "x" << fHeight << std::endl;
Window_t GetInputId() const
virtual void LowerWindow()
Lower TGDragWindow.
static Cursor_t fgDefaultCursor
virtual void MapWindow()
Map TGDragWindow.
static Pixel_t GetWhitePixel()
Get white pixel value.
Mother of all ROOT objects.
Handles synchronous and a-synchronous timer events.
Rectangle structure (maps to the X11 XRectangle structure)