Mini Shell

Direktori : /lib/python3.6/site-packages/orca/__pycache__/
Upload File :
Current File : //lib/python3.6/site-packages/orca/__pycache__/spellcheck.cpython-36.opt-1.pyc

3

�2[H(�@s~dZdZdZdZdZdZddlZddlZddlm	Z	dd	lm
Z
dd
lmZddlmZddlm
Z
e
j�ZGd
d�d�ZdS)z:Script-customizable support for application spellcheckers.z$Id$z
$Revision$z$Date$zCopyright (c) 2014 Igalia, S.L.ZLGPL�N)�	guilabels)�messages)�object_properties)�
orca_state)�settings_managerc@s�eZdZd>dd�Zdd�Zdd�Zdd	�Zd
d�Zdd
�Zdd�Z	dd�Z
dd�Zdd�Zdd�Z
dd�Zdd�Zdd�Zdd�Zd d!�Zd"d#�Zd?d%d&�Zd@d'd(�ZdAd)d*�ZdBd+d,�Zd-d.�Zd/d0�Zd1d2�Zd3d4�Zd5d6�Zd7d8�Zd9d:�Zd;d<�Zd=S)C�
SpellCheckTcCsF||_||_d|_d|_d|_d|_d|_d|_d|_d|_	d|_
dS)NF����)Nr	)�_script�_hasChangeToEntry�_window�_errorWidget�_changeToEntry�_suggestionsList�
_activated�_documentPosition�spellErrorCheckButton�spellSuggestionCheckButton�presentContextCheckButton)�selfZscriptZhasChangeToEntry�r� /usr/lib/python3.6/spellcheck.py�__init__+szSpellCheck.__init__cCsf|j|�sdS|jr*|j|�|_|js*dS|j|�|_|js@dS|j|�|_|jsVdS||_d|_	dS)NFT)
�_isCandidateWindowr�_findChangeToEntryr�_findErrorWidgetr
�_findSuggestionsListrrr)r�windowrrr�activate9s
zSpellCheck.activatecCs|j�dS)N)�_clearState)rrrr�
deactivateNszSpellCheck.deactivatecCs|jS)N)r)rrrr�getDocumentPositionQszSpellCheck.getDocumentPositioncCs||f|_dS)N)r)r�obj�offsetrrr�setDocumentPositionTszSpellCheck.setDocumentPositioncCs|jS)N)r
)rrrr�getErrorWidgetWszSpellCheck.getErrorWidgetcCs|js
dS|jjj|j�S)N�)r
r
�	utilities�
displayedText)rrrr�getMisspelledWordZszSpellCheck.getMisspelledWordcCs|js
dS|jjj|j�S)Nr&)r
r
r'r()rrrr�getCompletionMessage`szSpellCheck.getCompletionMessagecCs|jS)N)r)rrrr�getChangeToEntryfszSpellCheck.getChangeToEntrycCs|jS)N)r)rrrr�getSuggestionsListiszSpellCheck.getSuggestionsListcCs|jS)N)r)rrrr�isActivelszSpellCheck.isActivecCs|r||jkrdS|j|�S)NT)rr)rrrrr�
isCheckWindowoszSpellCheck.isCheckWindowc	Cs(y|jj�}Wn
dS|jtj�S)NF)rZgetState�contains�pyatspiZSTATE_SENSITIVE)r�staterrr�
isCompleteus
zSpellCheck.isCompletecCsdS)NFr)rZeventrrr�isAutoFocusEvent|szSpellCheck.isAutoFocusEventcCs|js
dS|o|j|jkS)NF)r�parent)rr"rrr�isSuggestionsItemszSpellCheck.isSuggestionsItemcs�|j�sdS|j\}}|o |dks&dSy|j�}Wn
dStj}|j||�\}}}|s�tj}|j||�\}}}tjd|�}|j	��|j
��dkr�tt�fdd�|��}	|	d}|s�dSt
j|}
|jjj|
d�}|jj|
|d�d	S)
NFrz(?:\.|\!|\?)rcs
|j��S)N)�count)�x)�wordrr�<lambda>�sz+SpellCheck.presentContext.<locals>.<lambda>)�string)�voiceT)r-rZ	queryTextr0ZTEXT_BOUNDARY_SENTENCE_STARTZgetTextAtOffsetZTEXT_BOUNDARY_LINE_START�re�splitr)r6�list�filterrZMISSPELLED_WORD_CONTEXTr
�speechGeneratorr;�speakMessage)rr"r#�text�boundaryr:�start�endZ	sentences�match�msgr;r)r8r�presentContext�s2

zSpellCheck.presentContextcCsJ|j�o|j�sdS|jj�|j�}|jjj|d�}|jj||d�dS)NF)r:)r;T)r-r2r
ZclearBrailler*r@r;ZpresentMessage)rrGr;rrr�presentCompletionMessage�s
z#SpellCheck.presentCompletionMessageFcCs>|j�rdS|j|�r:|j|�|s.tjd�r6|j�dSdS)NF�spellcheckPresentContextT)r2�presentMistake�presentSuggestion�_settingsManager�
getSettingrH)r�detailedrrr�presentErrorDetails�s

zSpellCheck.presentErrorDetailscCsd|j�sdS|j�}|sdStj|}|jjj|d�}|jj||d�|sTtj	d�r`|jj
|�dS)NF)r:)r;�spellcheckSpellErrorT)r-r)rZMISSPELLED_WORDr
r@r;rArMrN�spellCurrentItem)rrOr8rGr;rrrrK�s
zSpellCheck.presentMistakecCs�|js|j|dd�S|j�s dS|j}|s.dS|jjj|�p@|j}|jjj|dd
�}d||f}|jj	j
|d�}|jj||d�|s�tj
d	�r�|jj|�dS)NT)�includeLabelFrrz%s %s)r:)r;�spellcheckSpellSuggestionr	)r�presentSuggestionListItemr-rr
r'�displayedLabel�nameZ	substringr@r;rArMrNrR)rrO�entry�labelr:rGr;rrrrL�szSpellCheck.presentSuggestioncCs�|j�sdS|j}|sdS|jjj|�}t|�dks8dS|rR|jjj|�pN|j}nd}|dj}d||f}|jjj	|d�}|jj
|j�|d�|s�tj
d�r�|jj|�tj
d	�r�|dtjkr�|j|d�\}	}
tj|	|
d
�}|jj
|�dS)NFrr&rz%s %s)r:)r;rTZenablePositionSpeaking)�index�totalT)r-rr
r'ZselectedChildren�lenrVrWr@r;rA�striprMrNrRrZlocusOfFocus�_getSuggestionIndexAndPositionrZGROUP_INDEX_SPEECH)rrOrSZsuggestions�itemsrYr:rGr;rZr[rrrrU�s.

z$SpellCheck.presentSuggestionListItemcCs"d|_d|_d|_d|_d|_dS)NF)rr
rrr)rrrrrs
zSpellCheck._clearStatecCsdS)NFr)rrrrrr	szSpellCheck._isCandidateWindowcCsdS)Nr)r�rootrrrrszSpellCheck._findChangeToEntrycCsdS)Nr)rr`rrrrszSpellCheck._findErrorWidgetcCsdS)Nr)rr`rrrrszSpellCheck._findSuggestionsListcCsdS)Nrr	r	)r	r	r)rZ
suggestionrrrr^sz)SpellCheck._getSuggestionIndexAndPositioncCs6ddlm}|j�}|jdtjd�}|jd�|j|�|jj	dddd�}|j
dddd�|j|�|j�}|j|�tj
}tjd	�}|jj|�|_|jj|�|j|jdddd�tj}tjd
�}|jj|�|_|jj|�|j|jdddd�tj}tjd�}|jj|�|_|jj|�|j|jdddd�|S)
Nr)�Gtkz	<b>%s</b>)rYTg�?r�rQrTrJ�)Z
gi.repositoryraZFrameZLabelrZSPELL_CHECKZset_use_markupZset_label_widgetZ	Alignment�newZset_padding�addZGridZSPELL_CHECK_SPELL_ERRORrMrNZCheckButtonZnew_with_mnemonicrZ
set_activeZattachZSPELL_CHECK_SPELL_SUGGESTIONrZSPELL_CHECK_PRESENT_CONTEXTr)rra�framerYZ	alignmentZgrid�valuerrr�getAppPreferencesGUIs4






zSpellCheck.getAppPreferencesGUIcCs|jj�|jj�|jj�d�S)z7Returns a dictionary with the app-specific preferences.)rQrTrJ)rZ
get_activerr)rrrr�getPreferencesFromGUI<sz SpellCheck.getPreferencesFromGUIN)T)F)F)F)FF) �__name__�
__module__�__qualname__rrr r!r$r%r)r*r+r,r-r.r2r3r5rHrIrPrKrLrUrrrrrr^rhrirrrrr)s:
"




 $r)�__doc__Z__id__�__version__Z__date__Z
__copyright__Z__license__r0r<ZorcarrrrrZ
getManagerrMrrrrr�<module>s