File: wx.lib.mixins.treemixin.DragAndDrop.txt

package info (click to toggle)
wxpython4.0 4.0.4%2Bdfsg-2
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 211,112 kB
  • sloc: cpp: 888,355; python: 223,130; makefile: 52,087; ansic: 45,780; sh: 3,012; xml: 1,534; perl: 264
file content (159 lines) | stat: -rw-r--r-- 5,937 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
.. wxPython Phoenix documentation

   This file was generated by Phoenix's sphinx generator and associated
   tools, do not edit by hand.

   Copyright: (c) 2011-2018 by Total Control Software
   License:   wxWindows License

.. include:: headings.inc

.. currentmodule:: wx.lib.mixins.treemixin

.. highlight:: python



.. _wx.lib.mixins.treemixin.DragAndDrop:

==========================================================================================================================================
|phoenix_title|  **wx.lib.mixins.treemixin.DragAndDrop**
==========================================================================================================================================

This is a mixin class that can be used to easily implement
dragging and dropping of tree items. It can be mixed in with
wx.TreeCtrl, wx.gizmos.TreeListCtrl, or wx.lib.customtree.CustomTreeCtrl.

To use it derive a new class from this class and one of the tree
controls, e.g.::

  class MyTree(DragAndDrop, wx.TreeCtrl):
      # Other code here


You *must* implement OnDrop. OnDrop is called when the user has
dropped an item on top of another item. It's up to you to decide how
to handle the drop. If you are using this mixin together with the
VirtualTree mixin, it makes sense to rearrange your underlying data
and then call RefreshItems to let the virtual tree refresh itself. 



|

|class_hierarchy| Class Hierarchy
=================================

.. raw:: html

   <div id="toggleBlock" onclick="return toggleVisibility(this)" class="closed" style="cursor:pointer;">
   <img id="toggleBlock-trigger" src="_static/images/closed.png"/>
   Inheritance diagram for class <strong>DragAndDrop</strong>:
   </div>
   <div id="toggleBlock-summary" style="display:block;"></div>
   <div id="toggleBlock-content" style="display:none;">
   <p class="graphviz">
   <center><img src="_static/images/inheritance/wx.lib.mixins.treemixin.DragAndDrop_inheritance.png" alt="Inheritance diagram of DragAndDrop" usemap="#dummy" class="inheritance"/></center>
   </div>
   <script type="text/javascript">toggleVisibilityOnLoad(document.getElementById('toggleBlock'))</script>
   <map id="dummy" name="dummy"> <area shape="rect" id="node1" href="wx.lib.mixins.treemixin.TreeAPIHarmonizer.html" title="wx.lib.mixins.treemixin.TreeAPIHarmonizer" alt="" coords="5,5,296,35"/> <area shape="rect" id="node3" href="wx.lib.mixins.treemixin.DragAndDrop.html" title="wx.lib.mixins.treemixin.DragAndDrop" alt="" coords="167,83,423,112"/> <area shape="rect" id="node2" href="wx.lib.mixins.treemixin.TreeHelper.html" title="wx.lib.mixins.treemixin.TreeHelper" alt="" coords="320,5,556,35"/> </map> 
   </p>

|


|super_classes| Known Superclasses
==================================

:class:`wx.lib.mixins.treemixin.TreeAPIHarmonizer`, :class:`wx.lib.mixins.treemixin.TreeHelper`

|


|method_summary| Methods Summary
================================

================================================================================ ================================================================================
:meth:`~wx.lib.mixins.treemixin.DragAndDrop.__init__`                            
:meth:`~wx.lib.mixins.treemixin.DragAndDrop.IsValidDragItem`                     
:meth:`~wx.lib.mixins.treemixin.DragAndDrop.IsValidDropTarget`                   
:meth:`~wx.lib.mixins.treemixin.DragAndDrop.OnBeginDrag`                         
:meth:`~wx.lib.mixins.treemixin.DragAndDrop.OnDragging`                          
:meth:`~wx.lib.mixins.treemixin.DragAndDrop.OnDrop`                              This function must be overloaded in the derived class.
:meth:`~wx.lib.mixins.treemixin.DragAndDrop.OnEndDrag`                           
:meth:`~wx.lib.mixins.treemixin.DragAndDrop.ResetCursor`                         
:meth:`~wx.lib.mixins.treemixin.DragAndDrop.SetCursorToDragging`                 
:meth:`~wx.lib.mixins.treemixin.DragAndDrop.SetCursorToDroppingImpossible`       
:meth:`~wx.lib.mixins.treemixin.DragAndDrop.StartDragging`                       
:meth:`~wx.lib.mixins.treemixin.DragAndDrop.StopDragging`                        
================================================================================ ================================================================================


|


|api| Class API
===============


.. class:: DragAndDrop(TreeAPIHarmonizer, TreeHelper)

   This is a mixin class that can be used to easily implement
   dragging and dropping of tree items. It can be mixed in with
   wx.TreeCtrl, wx.gizmos.TreeListCtrl, or wx.lib.customtree.CustomTreeCtrl.
   
   To use it derive a new class from this class and one of the tree
   controls, e.g.::
   
     class MyTree(DragAndDrop, wx.TreeCtrl):
         # Other code here
   
   
   You *must* implement OnDrop. OnDrop is called when the user has
   dropped an item on top of another item. It's up to you to decide how
   to handle the drop. If you are using this mixin together with the
   VirtualTree mixin, it makes sense to rearrange your underlying data
   and then call RefreshItems to let the virtual tree refresh itself. 

   .. method:: __init__(self, \*args, \*\*kwargs)


   .. method:: IsValidDragItem(self, dragItem)


   .. method:: IsValidDropTarget(self, dropTarget)


   .. method:: OnBeginDrag(self, event)


   .. method:: OnDragging(self, event)


   .. method:: OnDrop(self, dropItem, dragItem)

      This function must be overloaded in the derived class.
      dragItem is the item being dragged by the user. dropItem is the
      item dragItem is dropped upon. If the user doesn't drop dragItem
      on another item, dropItem equals the (hidden) root item of the
      tree control. 


   .. method:: OnEndDrag(self, event)


   .. method:: ResetCursor(self)


   .. method:: SetCursorToDragging(self)


   .. method:: SetCursorToDroppingImpossible(self)


   .. method:: StartDragging(self)


   .. method:: StopDragging(self)