Logo ROOT  
Reference Guide
TGDNDManager.h
Go to the documentation of this file.
1 // @(#)root/gui:$Id$
2 // Author: Bertrand Bellenot 19/04/07
3 
4 /*************************************************************************
5  * Copyright (C) 1995-2021, Rene Brun and Fons Rademakers. *
6  * All rights reserved. *
7  * *
8  * For the licensing terms see $ROOTSYS/LICENSE. *
9  * For the list of contributors see $ROOTSYS/README/CREDITS. *
10  *************************************************************************/
11 
12 #ifndef ROOT_TGDNDManager
13 #define ROOT_TGDNDManager
14 
15 #include "TGFrame.h"
16 
17 class TGMainFrame;
18 class TGDragWindow;
19 class TTimer;
20 
21 
22 class TGDragWindow : public TGFrame {
23 
24 protected:
25  static Cursor_t fgDefaultCursor; // Default Cursor
26 
27 protected:
28  virtual void DoRedraw();
29 
30  Window_t fInput; ///< Input Window
31  Pixmap_t fPic, fMask; ///< Pixmaps used as Window shape
32  UInt_t fPw, fPh; ///< Hot point coordinates (x and y)
33 
34 public:
35  TGDragWindow(const TGWindow *p, Pixmap_t pic, Pixmap_t mask,
36  UInt_t options = kChildFrame, Pixel_t back = GetWhitePixel());
37  virtual ~TGDragWindow();
38 
39  virtual TGDimension GetDefaultSize() const { return TGDimension(fPw, fPh); }
40 
41  virtual void MapWindow();
42  virtual void UnmapWindow();
43  virtual void RaiseWindow();
44  virtual void LowerWindow();
45  virtual void MapRaised();
46 
47  virtual void Layout();
48 
49  Window_t GetInputId() const { return fInput; }
50  Bool_t HasWindow(Window_t w) const { return (w == fId || w == fInput); }
51 
52  ClassDef(TGDragWindow, 0) // Window used for dragging
53 };
54 
55 
56 /** \class TDNDData
57  \ingroup guiwidgets
58 
59 Drag and drop data container.
60 
61 */
62 
63 
64 class TDNDData : public TObject {
65 private:
66  TDNDData(const TDNDData&) = delete;
67  TDNDData& operator=(const TDNDData&) = delete;
68 
69 public:
70  TDNDData(Atom_t dt = kNone, void *d = nullptr, Int_t len = 0, Atom_t act = kNone) :
71  fDataType(dt), fAction(act), fData(d), fDataLength(len) {}
72  ~TDNDData() {}
73 
74  Atom_t fDataType; ///< Data type description
75  Atom_t fAction; ///< Action description
76  void *fData; ///< Actual data
77  Int_t fDataLength; ///< Length of data
78 
79  ClassDef(TDNDData, 0) // Drag and drop specific data
80 };
81 
82 
83 class TGDNDManager : public TObject {
84 
85 private:
86  TGDNDManager(const TGDNDManager&) = delete;
87  TGDNDManager& operator=(const TGDNDManager&) = delete;
88 
89 protected:
90  TGFrame *fMain; ///< pointer on TGMainFrame
91  Atom_t fVersion; ///< not really an Atom, but a long
92  Atom_t *fTypelist, *fDraggerTypes; ///< lists of DND types
93  Atom_t fDropType; ///< drop type
94  Atom_t fAcceptedAction, fLocalAction; ///< accepted and local actions
95 
96  Bool_t fDragging; ///< kTRUE while dragging
97  Bool_t fDropAccepted; ///< kTRUE if drop accepted
98  Bool_t fStatusPending; ///< kTRUE if status is pending
99  Bool_t fUseVersion; ///< kTRUE if DND version is used
100  Bool_t fProxyOurs; ///< kTRUE if root proxy is ours
101  Window_t fSource, fTarget; ///< source and target windows
102  Bool_t fTargetIsDNDAware; ///< kTRUE if target is DND aware
103  UInt_t fGrabEventMask; ///< pointer grab event mask
104  TGFrame *fLocalSource, *fLocalTarget; ///< local source and target
105 
106  TTimer *fDropTimeout; ///< drop timeout
107  TGDragWindow *fDragWin; ///< drag window
108 
109  Pixmap_t fPic, fMask; ///< pixmap used for the drag window
110  Int_t fHotx, fHoty; ///< hot point coordinates
111  Cursor_t fDNDNoDropCursor; ///< no drop cursor type
112 
113 protected:
122 
123  static Bool_t fgInit;
125 
126 protected:
127  void InitAtoms();
129  Window_t FindWindow(Window_t root, Int_t x, Int_t y, Int_t maxd);
130  Bool_t IsDNDAware(Window_t win, Atom_t *typelist = 0);
132 
133  void SendDNDEnter(Window_t target);
134  void SendDNDLeave(Window_t target);
135  void SendDNDPosition(Window_t target, int x, int y,
136  Atom_t action, Time_t timestamp);
137  void SendDNDStatus(Window_t target, Atom_t action);
138  void SendDNDDrop(Window_t target);
139  void SendDNDFinished(Window_t src);
140 
141  Bool_t HandleDNDEnter(Window_t src, long vers, Atom_t dataTypes[3]);
143  Bool_t HandleDNDPosition(Window_t src, int x_root, int y_root, Atom_t action, Time_t timestamp);
144  Bool_t HandleDNDStatus(Window_t from, int accepted,
145  Rectangle_t skip, Atom_t action);
146  Bool_t HandleDNDDrop(Window_t src, Time_t timestamp);
148 
149 public:
150  TGDNDManager(TGFrame *toplevel, Atom_t *typelist);
151  virtual ~TGDNDManager();
152 
156 
158 
159  //--- called by widgets
160 
161  TGFrame *GetMainFrame() const { return fMain; }
163  void SetDragPixmap(Pixmap_t pic, Pixmap_t mask, Int_t hot_x, Int_t hot_y);
166 
167  Bool_t StartDrag(TGFrame *src, Int_t x_root, Int_t y_root,
168  Window_t grabWin = kNone);
169  Bool_t Drag(Int_t x_root, Int_t y_root, Atom_t action, Time_t timestamp);
170  Bool_t Drop();
171  Bool_t EndDrag();
172 
173  Bool_t IsDragging() const { return fDragging; }
174  Window_t GetSource() const { return fSource; }
175  Window_t GetTarget() const { return fTarget; }
176  Atom_t *GetTypeList() const { return fTypelist; }
177 
178  static Atom_t GetDNDAware();
179  static Atom_t GetDNDSelection();
180  static Atom_t GetDNDProxy();
181  static Atom_t GetDNDEnter();
182  static Atom_t GetDNDLeave();
183  static Atom_t GetDNDPosition();
184  static Atom_t GetDNDStatus();
185  static Atom_t GetDNDDrop();
186  static Atom_t GetDNDFinished();
187  static Atom_t GetDNDVersion();
188  static Atom_t GetDNDActionCopy();
189  static Atom_t GetDNDActionMove();
190  static Atom_t GetDNDActionLink();
191  static Atom_t GetDNDActionAsk();
192  static Atom_t GetDNDActionPrivate();
193  static Atom_t GetDNDTypeList();
194  static Atom_t GetDNDActionList();
195  static Atom_t GetDNDActionDescrip();
196  static Atom_t GetXCDNDData();
197 
198  ClassDef(TGDNDManager, 0) // The main Drag and Drop Manager
199 };
200 
201 R__EXTERN TGDNDManager *gDNDManager; // global drag and drop manager
202 
203 #endif // ROOT_TGDNDManager
204 
TGDNDManager::GetDNDActionPrivate
static Atom_t GetDNDActionPrivate()
Definition: TGDNDManager.cxx:287
TGDNDManager::fgDNDProxy
static Atom_t fgDNDProxy
Definition: TGDNDManager.h:114
TGDNDManager::fDNDNoDropCursor
Cursor_t fDNDNoDropCursor
no drop cursor type
Definition: TGDNDManager.h:111
TGDragWindow::fMask
Pixmap_t fMask
Pixmaps used as Window shape.
Definition: TGDNDManager.h:31
TGDNDManager::fHotx
Int_t fHotx
Definition: TGDNDManager.h:110
TGDragWindow::fgDefaultCursor
static Cursor_t fgDefaultCursor
Definition: TGDNDManager.h:25
TGDNDManager::fLocalTarget
TGFrame * fLocalTarget
local source and target
Definition: TGDNDManager.h:104
TGDNDManager::fgDNDSelection
static Atom_t fgDNDSelection
Definition: TGDNDManager.h:114
TGWindow
ROOT GUI Window base class.
Definition: TGWindow.h:23
TGDNDManager::fgDNDTypeList
static Atom_t fgDNDTypeList
Definition: TGDNDManager.h:120
TGDNDManager::fTypelist
Atom_t * fTypelist
Definition: TGDNDManager.h:92
Pixmap_t
Handle_t Pixmap_t
Pixmap handle.
Definition: GuiTypes.h:30
TGDNDManager::fLocalSource
TGFrame * fLocalSource
Definition: TGDNDManager.h:104
TGMainFrame
Defines top level windows that interact with the system Window Manager.
Definition: TGFrame.h:398
TDNDData::~TDNDData
~TDNDData()
Definition: TGDNDManager.h:72
TGDragWindow::fInput
Window_t fInput
Input Window.
Definition: TGDNDManager.h:30
TDNDData::fDataLength
Int_t fDataLength
Length of data.
Definition: TGDNDManager.h:77
TGDNDManager::fgDNDPosition
static Atom_t fgDNDPosition
Definition: TGDNDManager.h:115
TGDNDManager::GetDNDVersion
static Atom_t GetDNDVersion()
Definition: TGDNDManager.cxx:282
TGDimension
Definition: TGDimension.h:18
TGDNDManager::HandleSelectionRequest
Bool_t HandleSelectionRequest(Event_t *event)
Handle selection request event.
Definition: TGDNDManager.cxx:806
TGDNDManager::GetDNDSelection
static Atom_t GetDNDSelection()
Definition: TGDNDManager.cxx:274
TGDNDManager::HandleDNDFinished
Bool_t HandleDNDFinished(Window_t target)
Handle DND finished event.
Definition: TGDNDManager.cxx:797
TGDNDManager::RemoveRootProxy
Bool_t RemoveRootProxy()
Remove root window proxy.
Definition: TGDNDManager.cxx:1063
TGDNDManager::SetDragPixmap
void SetDragPixmap(Pixmap_t pic, Pixmap_t mask, Int_t hot_x, Int_t hot_y)
Set drag window pixmaps and hotpoint.
Definition: TGDNDManager.cxx:892
Rectangle_t
Rectangle structure (maps to the X11 XRectangle structure)
Definition: GuiTypes.h:361
Pixel_t
ULong_t Pixel_t
Pixel value.
Definition: GuiTypes.h:40
TGDNDManager::HandleClientMessage
Bool_t HandleClientMessage(Event_t *event)
Handle DND related client messages.
Definition: TGDNDManager.cxx:417
TGDNDManager::fgXAWMState
static Atom_t fgXAWMState
Definition: TGDNDManager.h:124
TGDNDManager::StartDrag
Bool_t StartDrag(TGFrame *src, Int_t x_root, Int_t y_root, Window_t grabWin=kNone)
Start dragging.
Definition: TGDNDManager.cxx:904
TGDNDManager::IsTopLevel
Bool_t IsTopLevel(Window_t win)
TGDNDManager::HandleDNDStatus
Bool_t HandleDNDStatus(Window_t from, int accepted, Rectangle_t skip, Atom_t action)
Handle DND status event.
Definition: TGDNDManager.cxx:742
TGDragWindow::fPh
UInt_t fPh
Hot point coordinates (x and y)
Definition: TGDNDManager.h:32
TGDNDManager::GetDNDStatus
static Atom_t GetDNDStatus()
Definition: TGDNDManager.cxx:279
TDNDData::fAction
Atom_t fAction
Action description.
Definition: TGDNDManager.h:75
TGDNDManager::TGDNDManager
TGDNDManager(const TGDNDManager &)=delete
TGDNDManager::SetRootProxy
Bool_t SetRootProxy()
Set root window proxy.
Definition: TGDNDManager.cxx:1040
TGDNDManager::HandleSelection
Bool_t HandleSelection(Event_t *event)
Handle selection event.
Definition: TGDNDManager.cxx:847
Int_t
int Int_t
Definition: RtypesCore.h:45
TGDragWindow::DoRedraw
virtual void DoRedraw()
Redraw TGDragWindow.
Definition: TGDNDManager.cxx:179
TGDNDManager::fDraggerTypes
Atom_t * fDraggerTypes
lists of DND types
Definition: TGDNDManager.h:92
TGDNDManager::HandleDNDEnter
Bool_t HandleDNDEnter(Window_t src, long vers, Atom_t dataTypes[3])
Handle DND enter event.
Definition: TGDNDManager.cxx:629
TGDragWindow::GetInputId
Window_t GetInputId() const
Definition: TGDNDManager.h:49
TGDNDManager::SendDNDPosition
void SendDNDPosition(Window_t target, int x, int y, Atom_t action, Time_t timestamp)
Send DND position message to target window.
Definition: TGDNDManager.cxx:542
x
Double_t x[n]
Definition: legend1.C:17
TGDNDManager::SendDNDStatus
void SendDNDStatus(Window_t target, Atom_t action)
Send DND status message to source window.
Definition: TGDNDManager.cxx:565
TGDNDManager::fgDNDLeave
static Atom_t fgDNDLeave
Definition: TGDNDManager.h:115
TGDNDManager::GetMainFrame
TGFrame * GetMainFrame() const
Definition: TGDNDManager.h:161
TGDNDManager::fgDNDFinished
static Atom_t fgDNDFinished
Definition: TGDNDManager.h:116
TGDragWindow::Layout
virtual void Layout()
Layout TGDragWindow.
Definition: TGDNDManager.cxx:171
TGFrame
Definition: TGFrame.h:80
Bool_t
bool Bool_t
Definition: RtypesCore.h:63
TGDNDManager::fgInit
static Bool_t fgInit
Definition: TGDNDManager.h:123
TGDNDManager::fTargetIsDNDAware
Bool_t fTargetIsDNDAware
kTRUE if target is DND aware
Definition: TGDNDManager.h:102
TGDragWindow::LowerWindow
virtual void LowerWindow()
Lower TGDragWindow.
Definition: TGDNDManager.cxx:153
TGDNDManager::SendDNDEnter
void SendDNDEnter(Window_t target)
Send DND enter message to target window.
Definition: TGDNDManager.cxx:480
bool
TDNDData::operator=
TDNDData & operator=(const TDNDData &)=delete
Cursor_t
Handle_t Cursor_t
Cursor handle.
Definition: GuiTypes.h:34
TGDNDManager::GetTypeList
Atom_t * GetTypeList() const
Definition: TGDNDManager.h:176
TGDNDManager::GetRootProxy
Window_t GetRootProxy()
Get root window proxy.
Definition: TGDNDManager.cxx:368
TGDNDManager::fTarget
Window_t fTarget
source and target windows
Definition: TGDNDManager.h:101
TGDNDManager::IsDNDAware
Bool_t IsDNDAware(Window_t win, Atom_t *typelist=0)
Check if window win is DND aware.
Definition: TGDNDManager.cxx:345
TGDNDManager::GetDNDProxy
static Atom_t GetDNDProxy()
Definition: TGDNDManager.cxx:275
TDNDData::fDataType
Atom_t fDataType
Data type description.
Definition: TGDNDManager.h:74
TGDNDManager::GetTarget
Window_t GetTarget() const
Definition: TGDNDManager.h:175
kNone
const Handle_t kNone
Definition: GuiTypes.h:88
TGDNDManager::fDragging
Bool_t fDragging
kTRUE while dragging
Definition: TGDNDManager.h:96
TGDNDManager::operator=
TGDNDManager & operator=(const TGDNDManager &)=delete
TGDNDManager::GetDNDActionCopy
static Atom_t GetDNDActionCopy()
Definition: TGDNDManager.cxx:283
TTimer
Handles synchronous and a-synchronous timer events.
Definition: TTimer.h:51
TGDNDManager::fSource
Window_t fSource
Definition: TGDNDManager.h:101
TGDNDManager::GetDNDActionList
static Atom_t GetDNDActionList()
Definition: TGDNDManager.cxx:289
TGDNDManager::fgDNDStatus
static Atom_t fgDNDStatus
Definition: TGDNDManager.h:115
TGDragWindow::TGDragWindow
TGDragWindow(const TGWindow *p, Pixmap_t pic, Pixmap_t mask, UInt_t options=kChildFrame, Pixel_t back=GetWhitePixel())
TGDragWindow constructor.
Definition: TGDNDManager.cxx:73
TGDNDManager::SendDNDLeave
void SendDNDLeave(Window_t target)
Send DND leave message to target window.
Definition: TGDNDManager.cxx:520
TGDNDManager::fMain
TGFrame * fMain
pointer on TGMainFrame
Definition: TGDNDManager.h:90
TGDNDManager::fLocalAction
Atom_t fLocalAction
accepted and local actions
Definition: TGDNDManager.h:94
TGDNDManager::fDropTimeout
TTimer * fDropTimeout
drop timeout
Definition: TGDNDManager.h:106
TDNDData::fData
void * fData
Actual data.
Definition: TGDNDManager.h:76
TGDNDManager::fPic
Pixmap_t fPic
Definition: TGDNDManager.h:109
TGDNDManager::HandleDNDDrop
Bool_t HandleDNDDrop(Window_t src, Time_t timestamp)
Handle DND drop event.
Definition: TGDNDManager.cxx:773
TGDNDManager::fHoty
Int_t fHoty
hot point coordinates
Definition: TGDNDManager.h:110
TGDNDManager::fVersion
Atom_t fVersion
not really an Atom, but a long
Definition: TGDNDManager.h:91
TGDNDManager::fgDNDActionList
static Atom_t fgDNDActionList
Definition: TGDNDManager.h:120
TGObject::fId
Handle_t fId
X11/Win32 Window identifier.
Definition: TGObject.h:26
TGDNDManager::fgXCDNDData
static Atom_t fgXCDNDData
Definition: TGDNDManager.h:121
Atom_t
Handle_t Atom_t
WM token.
Definition: GuiTypes.h:37
TGDNDManager::IsDragging
Bool_t IsDragging() const
Definition: TGDNDManager.h:173
TGDNDManager::SendDNDDrop
void SendDNDDrop(Window_t target)
Send DND drop message to target window.
Definition: TGDNDManager.cxx:587
TGDNDManager::HandleDNDLeave
Bool_t HandleDNDLeave(Window_t src)
Handle DND leave event.
Definition: TGDNDManager.cxx:680
TGFrame.h
TGDragWindow::RaiseWindow
virtual void RaiseWindow()
Raise TGDragWindow.
Definition: TGDNDManager.cxx:144
TGDNDManager::~TGDNDManager
virtual ~TGDNDManager()
TGDNDManager destructor.
Definition: TGDNDManager.cxx:248
TDNDData::TDNDData
TDNDData(Atom_t dt=kNone, void *d=nullptr, Int_t len=0, Atom_t act=kNone)
Definition: TGDNDManager.h:70
TGDNDManager::Drop
Bool_t Drop()
Drop.
Definition: TGDNDManager.cxx:947
TGDNDManager::GetSource
Window_t GetSource() const
Definition: TGDNDManager.h:174
TGDNDManager::HandleTimer
Bool_t HandleTimer(TTimer *t)
Handle Drop timeout.
Definition: TGDNDManager.cxx:459
TGDNDManager::GetDNDActionAsk
static Atom_t GetDNDActionAsk()
Definition: TGDNDManager.cxx:286
Window_t
Handle_t Window_t
Window handle.
Definition: GuiTypes.h:29
y
Double_t y[n]
Definition: legend1.C:17
TGDNDManager::SetMainFrame
void SetMainFrame(TGFrame *main)
Definition: TGDNDManager.h:162
TGDNDManager::fgDNDActionCopy
static Atom_t fgDNDActionCopy
Definition: TGDNDManager.h:118
TDNDData
Drag and drop data container.
Definition: TGDNDManager.h:64
TGDNDManager::fDragWin
TGDragWindow * fDragWin
drag window
Definition: TGDNDManager.h:107
TGDNDManager::GetDNDPosition
static Atom_t GetDNDPosition()
Definition: TGDNDManager.cxx:278
gDNDManager
R__EXTERN TGDNDManager * gDNDManager
Definition: TGDNDManager.h:201
unsigned int
TGDNDManager::GetDNDActionDescrip
static Atom_t GetDNDActionDescrip()
Definition: TGDNDManager.cxx:290
TGDNDManager::GetDNDActionMove
static Atom_t GetDNDActionMove()
Definition: TGDNDManager.cxx:284
TGDNDManager::GetDNDAware
static Atom_t GetDNDAware()
Definition: TGDNDManager.cxx:273
TGDNDManager::GetDNDActionLink
static Atom_t GetDNDActionLink()
Definition: TGDNDManager.cxx:285
TGDNDManager
Definition: TGDNDManager.h:83
TDNDData::TDNDData
TDNDData(const TDNDData &)=delete
TGDNDManager::fgDNDVersion
static Atom_t fgDNDVersion
Definition: TGDNDManager.h:117
TGDNDManager::GetDNDDrop
static Atom_t GetDNDDrop()
Definition: TGDNDManager.cxx:280
TGDragWindow::GetDefaultSize
virtual TGDimension GetDefaultSize() const
std::cout << fWidth << "x" << fHeight << std::endl;
Definition: TGDNDManager.h:39
TGDNDManager::fgDNDActionPrivate
static Atom_t fgDNDActionPrivate
Definition: TGDNDManager.h:119
TGDNDManager::fUseVersion
Bool_t fUseVersion
kTRUE if DND version is used
Definition: TGDNDManager.h:99
TObject
Mother of all ROOT objects.
Definition: TObject.h:37
ClassDef
#define ClassDef(name, id)
Definition: Rtypes.h:325
TGDNDManager::EndDrag
Bool_t EndDrag()
End dragging.
Definition: TGDNDManager.cxx:971
Event_t
Event structure.
Definition: GuiTypes.h:174
TGDNDManager::SendDNDFinished
void SendDNDFinished(Window_t src)
Send DND finished message to source window.
Definition: TGDNDManager.cxx:608
TGDNDManager::fStatusPending
Bool_t fStatusPending
kTRUE if status is pending
Definition: TGDNDManager.h:98
TGFrame::GetWhitePixel
static Pixel_t GetWhitePixel()
Get white pixel value.
Definition: TGFrame.cxx:709
TGDNDManager::fMask
Pixmap_t fMask
pixmap used for the drag window
Definition: TGDNDManager.h:109
d
#define d(i)
Definition: RSha256.hxx:102
TGDNDManager::GetDNDEnter
static Atom_t GetDNDEnter()
Definition: TGDNDManager.cxx:276
TGDNDManager::GetDNDLeave
static Atom_t GetDNDLeave()
Definition: TGDNDManager.cxx:277
TGDNDManager::fgDNDActionDescrip
static Atom_t fgDNDActionDescrip
Definition: TGDNDManager.h:120
TGDNDManager::fgDNDActionMove
static Atom_t fgDNDActionMove
Definition: TGDNDManager.h:118
TGDragWindow::HasWindow
Bool_t HasWindow(Window_t w) const
Definition: TGDNDManager.h:50
TGDragWindow::MapWindow
virtual void MapWindow()
Map TGDragWindow.
Definition: TGDNDManager.cxx:126
TGDNDManager::GetDNDFinished
static Atom_t GetDNDFinished()
Definition: TGDNDManager.cxx:281
TGDragWindow
Window used as drag icon during drag and drop operations.
Definition: TGDNDManager.h:22
R__EXTERN
#define R__EXTERN
Definition: DllImport.h:27
TGDNDManager::fgDNDActionLink
static Atom_t fgDNDActionLink
Definition: TGDNDManager.h:118
TGDNDManager::fProxyOurs
Bool_t fProxyOurs
kTRUE if root proxy is ours
Definition: TGDNDManager.h:100
TGDNDManager::fGrabEventMask
UInt_t fGrabEventMask
pointer grab event mask
Definition: TGDNDManager.h:103
TGDNDManager::GetDNDTypeList
static Atom_t GetDNDTypeList()
Definition: TGDNDManager.cxx:288
TGDNDManager::InitAtoms
void InitAtoms()
Initialize drag and drop atoms.
Definition: TGDNDManager.cxx:296
TGDragWindow::UnmapWindow
virtual void UnmapWindow()
Unmap TGDragWindow.
Definition: TGDNDManager.cxx:135
TGDNDManager::Drag
Bool_t Drag(Int_t x_root, Int_t y_root, Atom_t action, Time_t timestamp)
Process drag event.
Definition: TGDNDManager.cxx:993
TGDNDManager::fDropAccepted
Bool_t fDropAccepted
kTRUE if drop accepted
Definition: TGDNDManager.h:97
TGDNDManager::fDropType
Atom_t fDropType
drop type
Definition: TGDNDManager.h:93
TGDNDManager::FindWindow
Window_t FindWindow(Window_t root, Int_t x, Int_t y, Int_t maxd)
Search for DND aware window at position x,y.
Definition: TGDNDManager.cxx:353
TGDragWindow::~TGDragWindow
virtual ~TGDragWindow()
TGDragWindow destructor.
Definition: TGDNDManager.cxx:118
TGDragWindow::fPic
Pixmap_t fPic
Definition: TGDNDManager.h:31
TGDNDManager::HandleDNDPosition
Bool_t HandleDNDPosition(Window_t src, int x_root, int y_root, Atom_t action, Time_t timestamp)
Handle DND position event.
Definition: TGDNDManager.cxx:695
Time_t
ULong_t Time_t
Event time.
Definition: GuiTypes.h:42
TGDNDManager::fgDNDDrop
static Atom_t fgDNDDrop
Definition: TGDNDManager.h:116
TGDNDManager::fgDNDEnter
static Atom_t fgDNDEnter
Definition: TGDNDManager.h:115
main
int main(int argc, char *argv[])
Definition: cef_main.cxx:54
TGDNDManager::fgDNDActionAsk
static Atom_t fgDNDActionAsk
Definition: TGDNDManager.h:119
kChildFrame
@ kChildFrame
Definition: GuiTypes.h:379
int
TGDragWindow::MapRaised
virtual void MapRaised()
Map and Raise TGDragWindow.
Definition: TGDNDManager.cxx:162
TGDNDManager::fAcceptedAction
Atom_t fAcceptedAction
Definition: TGDNDManager.h:94
TGDNDManager::fgDNDAware
static Atom_t fgDNDAware
Definition: TGDNDManager.h:114
TGDragWindow::fPw
UInt_t fPw
Definition: TGDNDManager.h:32
TGDNDManager::GetXCDNDData
static Atom_t GetXCDNDData()
Definition: TGDNDManager.cxx:291