
    1f                     @    d dl  d dlmZ d dl dgZ G d de      Zy)    )*)AtspiEditableTextc                   4    e Zd ZdZd Zd Zd Zd Zd Zd Z	y)	r   a  
        Derived from interface Text, EditableText provides methods for
        modifying textual content of components which support editing.
        EditableText also interacts with the system clipboard via copyText,
        cutText, and pasteText.
        c                 X    t         j                  j                  | j                  ||      S )av  
                Copy a range of text into the system clipboard. 
                @param : startPos
                the character offset of the first character in the range of text
                being copied. 
                @param : endPos
                the offset of the first character past the end of the range of
                text being copied.
                )r   r   	copy_textobjselfstartends      6/usr/lib/python3/dist-packages/pyatspi/editabletext.pycopyTextzEditableText.copyText!   s#     ))33DHHeSII    c                 X    t         j                  j                  | j                  ||      S )a  
                Excise a range of text from a Text object, copying it into the
                system clipboard. 
                @param : startPos
                the character offset of the first character in the range of text
                being cut. 
                @param : endPos
                the offset of the first character past the end of the range of
                text being cut. 
                @return True if the text was successfully cut, False otherwise.
                )r   r   cut_textr	   r
   s      r   cutTextzEditableText.cutText-   s#     ))22488UCHHr   c                 X    t         j                  j                  | j                  ||      S )a  
                Excise a range of text from a Text object without copying it
                into the system clipboard. 
                @param : startPos
                the character offset of the first character in the range of text
                being deleted. 
                @param : endPos
                the offset of the first character past the end of the range of
                text being deleted. 
                @return True if the text was successfully deleted, False otherwise.
                )r   r   delete_textr	   r
   s      r   
deleteTextzEditableText.deleteText;   s#     ))55dhhsKKr   c                 Z    t         j                  j                  | j                  |||      S )a;  
                Insert new text contents into an existing text object at a given
                location, while retaining the old contents. 
                @param : position
                the character offset into the Text implementor's content at which
                the new content will be inserted. 
                @param : text
                a UTF-8 string of which length characters will be inserted into
                the text object's text buffer. 
                @param : length
                the number of characters of text to insert. If the character
                count of text is less than or equal to length, the entire contents
                of text will be inserted.
                @return True if the text content was successfully inserted, False
                otherwise.
                )r   r   insert_textr	   )r   positiontextlengths       r   
insertTextzEditableText.insertTextI   s&    " ))55dhh$PVWWr   c                 V    t         j                  j                  | j                  |      S )a  
                Copy the text contents of the system clipboard, if any, into
                a Text object, inserting it at a particular character offset.
                @param : position
                the character offset before which the text will be inserted.
                @return True if the text was successfully pasted into the Text
                object, False otherwise.
                )r   r   
paste_textr	   )r   r   s     r   	pasteTextzEditableText.pasteText\   s!     ))44TXXxHHr   c                 V    t         j                  j                  | j                  |      S )at  
                Replace the text contents with a new string, discarding the old
                contents.
                @param : newContents
                a UTF-8 string with which the text object's contents will be
                replaced. 
                @return True if the text content was successfully changed, False
                otherwise.
                )r   r   set_text_contentsr	   )r   contentss     r   setTextContentszEditableText.setTextContentsg   s!     ));;DHHhOOr   N)
__name__
__module____qualname____doc__r   r   r   r   r   r#    r   r   r   r      s+    	
	J	I	L	X&		I
	Pr   N)pyatspi.textgi.repositoryr   pyatspi.utils__all__Textr   r(   r   r   <module>r.      s,       XP4 XPr   