parameters: (self, eventOrPt)
docstring: Sub-handler for the :meth:`OnLeftUp` event.
  
          :param `event`: a :class:`MouseEvent` to be processed.
docstring_summary: Sub-handler for the :meth:`OnLeftUp` event.
docstring_tokens: Sub - handler for the : meth : OnLeftUp event .
function: def OnLeftUp_DragFloatingPane(self, eventOrPt):
          """
          Sub-handler for the :meth:`OnLeftUp` event.
  
          :param `event`: a :class:`MouseEvent` to be processed.
          """
  
          if isinstance(eventOrPt, wx.Point):
              clientPt = self._frame.ScreenToClient(eventOrPt)
              screenPt = wx.Point(*eventOrPt)
          else:
              clientPt = eventOrPt.GetPosition()
              screenPt = self._frame.ClientToScreen(clientPt)
  
          # try to find the pane
          paneInfo = self.GetPane(self._action_window)
          if not paneInfo.IsOk():
              raise Exception("Pane window not found")
  
          ret = False
  
          if paneInfo.frame:
  
              # calculate the offset from the upper left-hand corner
              # of the frame to the mouse pointer
              framePos = paneInfo.frame.GetPosition()
              action_offset = screenPt - framePos
  
              # is the pane dockable?
              if self.CanDockPanel(paneInfo):
                  # do the drop calculation
                  indx = self._panes.index(paneInfo)
                  ret, paneInfo = self.DoDrop(self._docks, self._panes, paneInfo, clientPt, action_offset)
  
                  if ret:
                      e = self.FireEvent(wxEVT_AUI_PANE_DOCKING, paneInfo, canVeto=True)
                      if e.GetVeto():
                          self.HideHint()
                          ShowDockingGuides(self._guides, False)
                          return
  
                      e = self.FireEvent(wxEVT_AUI_PANE_DOCKED, paneInfo, canVeto=False)
  
                      if self._agwFlags & AUI_MGR_SMOOTH_DOCKING:
                          self.SmoothDock(paneInfo)
  
                  self._panes[indx] = paneInfo
  
          # if the pane is still floating, update it's floating
          # position (that we store)
          if paneInfo.IsFloating():
              paneInfo.floating_pos = paneInfo.frame.GetPosition()
              if paneInfo.frame._transparent != paneInfo.transparent or self._agwFlags & AUI_MGR_TRANSPARENT_DRAG:
                  paneInfo.frame.SetTransparent(paneInfo.transparent)
                  paneInfo.frame._transparent = paneInfo.transparent
  
          elif self._has_maximized:
              self.RestoreMaximizedPane()
  
          # reorder for dropping to a new notebook
          # (caution: this code breaks the reference!)
          tempPaneInfo = self.CopyTarget(paneInfo)
          self._panes.remove(paneInfo)
          self._panes.append(tempPaneInfo)
  
          if ret:
              self.Update()
  
          if tempPaneInfo.IsFloating():
              self.SnapPane(tempPaneInfo, tempPaneInfo.floating_pos, tempPaneInfo.floating_size, False)
  
          self.HideHint()
          ShowDockingGuides(self._guides, False)
function_tokens: def OnLeftUp_DragFloatingPane ( self , eventOrPt ) : if isinstance ( eventOrPt , wx . Point ) : clientPt = self . _frame . ScreenToClient ( eventOrPt ) screenPt = wx . Point ( * eventOrPt ) else : clientPt = eventOrPt . GetPosition ( ) screenPt = self . _frame . ClientToScreen ( clientPt ) # try to find the pane paneInfo = self . GetPane ( self . _action_window ) if not paneInfo . IsOk ( ) : raise Exception ( "Pane window not found" ) ret = False if paneInfo . frame : # calculate the offset from the upper left-hand corner # of the frame to the mouse pointer framePos = paneInfo . frame . GetPosition ( ) action_offset = screenPt - framePos # is the pane dockable? if self . CanDockPanel ( paneInfo ) : # do the drop calculation indx = self . _panes . index ( paneInfo ) ret , paneInfo = self . DoDrop ( self . _docks , self . _panes , paneInfo , clientPt , action_offset ) if ret : e = self . FireEvent ( wxEVT_AUI_PANE_DOCKING , paneInfo , canVeto = True ) if e . GetVeto ( ) : self . HideHint ( ) ShowDockingGuides ( self . _guides , False ) return e = self . FireEvent ( wxEVT_AUI_PANE_DOCKED , paneInfo , canVeto = False ) if self . _agwFlags & AUI_MGR_SMOOTH_DOCKING : self . SmoothDock ( paneInfo ) self . _panes [ indx ] = paneInfo # if the pane is still floating, update it's floating # position (that we store) if paneInfo . IsFloating ( ) : paneInfo . floating_pos = paneInfo . frame . GetPosition ( ) if paneInfo . frame . _transparent != paneInfo . transparent or self . _agwFlags & AUI_MGR_TRANSPARENT_DRAG : paneInfo . frame . SetTransparent ( paneInfo . transparent ) paneInfo . frame . _transparent = paneInfo . transparent elif self . _has_maximized : self . RestoreMaximizedPane ( ) # reorder for dropping to a new notebook # (caution: this code breaks the reference!) tempPaneInfo = self . CopyTarget ( paneInfo ) self . _panes . remove ( paneInfo ) self . _panes . append ( tempPaneInfo ) if ret : self . Update ( ) if tempPaneInfo . IsFloating ( ) : self . SnapPane ( tempPaneInfo , tempPaneInfo . floating_pos , tempPaneInfo . floating_size , False ) self . HideHint ( ) ShowDockingGuides ( self . _guides , False )