
    pj                     >    d dl mZ d dlmZ ddlmZ  G d de      Zy)    )register)vtkWebInteractionEvent   )ParaViewWebProtocolc                   :     e Zd Z fdZ ed      d        Z xZS )ParaViewWebMouseHandlerc                 0    t         |           d| _        y )Nup)super__init__last_action)selfkwargs	__class__s     _/DATA/.local/lib/python3.12/site-packages/trame_vtk/modules/paraview/protocols/mouse_handler.pyr   z ParaViewWebMouseHandler.__init__	   s        zviewport.mouse.interactionc                    | j                  |d         }t        |d      r|d   dk(  rd|_        n|d   dk(  rd|_        d}|d   r|t        j                  z  }|d	   r|t        j
                  z  }|d
   r|t        j                  z  }d}|d   r|t        j                  z  }|d   r|t        j                  z  }|d   r|t        j                  z  }|d   r|t        j                  z  }t               }|j                  |       |j                  |       |j                  |d          |j                  |d          | j                  j!                  |j"                  |      }~|d   dk(  r-| j$                  |d   k7  r| j                  j'                  d       |d   dk(  r-| j$                  |d   k7  r| j                  j'                  d       |r| j                  j'                  d       |d   | _        |S )z6
        RPC Callback for mouse interactions.
        view%UseInteractiveRenderingForScreenshotsactiondownr   r
   r   
buttonLeftbuttonMiddlebuttonRightshiftKeyctrlKeyaltKeymetaKeyxyStartInteractionEventEndInteractionEventUpdateEvent)get_viewhasattrr   r   LEFT_BUTTONMIDDLE_BUTTONRIGHT_BUTTON	SHIFT_KEYCTRL_KEYALT_KEYMETA_KEY
SetButtonsSetModifiersSetXSetYappHandleInteractionEventSMProxyr   InvokeEvent)r   eventr   buttons	modifierspveventret_vals          r   mouse_interactionz)ParaViewWebMouseHandler.mouse_interaction   s   
 }}U6]+4@AX&(=>:xD(=>:-999G -;;;G-:::G	/999I/888I?/777I/888I(*7#Y'U3Z U3Z ((11$,,H?f$)9)9U8_)LHH  !89?d"t'7'75?'JHH  !67HH  / ?r   )__name__
__module____qualname__r   
export_rpcr:   __classcell__)r   s   @r   r   r      s"     
 ,-2 .2r   r   N)wslinkr   r>   vtkmodules.vtkWebCorer   web_protocolr   r    r   r   <module>rD      s    ) 8 -91 9r   