³ò ¢õEc@s0dZddklZdefd„ƒYZdS(s This module exposes a class that creates the search button for the text editor's findbar. @author: Lateef Alabi-Oki @organization: The Scribes Project @copyright: Copyright © 2005 Lateef Alabi-Oki @license: GNU GPLv2 or Later @contact: mystilleef@gmail.com iÿÿÿÿ(tButtontFindSearchButtoncBsqeZdZd„Zd„Zd„Zd„Zd„Zd„Zd„Z d„Z d „Z d „Z d „Z RS( s„ This class creates a search button for the text editor's findbar. It defines the behavior and default properties of the button. cCsêddkl}ti|d|dtƒ|i|ƒ|iƒ|id|iƒ|_ |i id|i ƒ|_ |i id|i ƒ|_|iid|iƒ|_|iid |iƒ|_|id |iƒ|_|iƒd S( sç Initialize the button. @param self: Reference to the ScribesFindSearchButton instance. @type self: A ScribesFindSearchButton object. @param findbar: The text editor's findbar. @type findbar: A ScribesFindBar object. iÿÿÿÿ(t STOCK_FINDtstockt use_underlinetclickedsshow-barshide-bartchangedtcanceltdeleteN(tgtkRRt__init__tTruet"_FindSearchButton__init_attributest!_FindSearchButton__set_propertiestconnectt*_FindSearchButton__searchbutton_clicked_cbt_FindSearchButton__signal_id_1t_FindSearchButton__editort+_FindSearchButton__searchbutton_show_bar_cbt_FindSearchButton__signal_id_2t+_FindSearchButton__searchbutton_hide_bar_cbt_FindSearchButton__signal_id_3t_FindSearchButton__entryt*_FindSearchButton__searchbutton_changed_cbt_FindSearchButton__signal_id_4t _FindSearchButton__searchmanagert)_FindSearchButton__searchbutton_cancel_cbt_FindSearchButton__signal_id_5t_FindSearchButton__destroy_cbt_FindSearchButton__signal_id_6t/_FindSearchButton__block_search_replace_signals(tselftfindbarR((s&plugins/IncrementalBar/SearchButton.pyR 's   cCsp|i|_|i|_|i|_d|_d|_d|_ d|_ d|_ d|_ d|_ d|_dS(sô Initialize the button's attributes. @param self: Reference to the ScribesFindSearchButton instance. @type self: A ScribesFindSearchButton object. @param findbar: the text editor's findbar. @type findbar: A ScribesFindBar object. N(teditorRtfind_text_entryRtsearch_replace_managerRtNonet_FindSearchButton__begin_post_FindSearchButton__end_post_FindSearchButton__status_idRRRRR(RR ((s&plugins/IncrementalBar/SearchButton.pyt__init_attributes=s           cCs|idtƒdS(s Set the button's default properties. @param self: Reference to the ScribesFindSearchButton instance. @type self: S ScribesFindSearchButton object. t sensitiveN(t set_propertytFalse(R((s&plugins/IncrementalBar/SearchButton.pyt__set_propertiesTscCsk|iƒ|iiƒo|idtƒn|idtƒ|iiiƒ\}}|iii ƒ}|o°ddk l }||di ƒ|di ƒƒo:|iii d|tƒ}|iii d|tƒ}qU|iii d|dtƒ}|iii d|dtƒ}n7|iii d|tƒ}|iii d|tƒ}||_||_dS(sR Handles callback when the "show-bar" signal is emitted. @param self: Reference to the ScribesFindSearchButton instance. @type self: A ScribesFindSearchButton object. @param editor: Reference to the text editor. @type editor: An Editor object. @param bar: The text editor's findbar. @type bar: A ScribesFindBar object. R)iÿÿÿÿ(teqiiN(t1_FindSearchButton__unblock_search_replace_signalsRtget_textR*R R+Rt textbuffert get_boundstget_selection_boundstoperatorR-tget_linet create_markR$R%R&(RR!tbartbegintendt selectionR-((s&plugins/IncrementalBar/SearchButton.pyt__searchbutton_show_bar_cb^s$ $#  cCs¶|iƒddkl}l}||iƒo9||iiƒƒo#|iii|iƒd|_n||i ƒo9||i iƒƒo#|iii|i ƒd|_ ndS(sX Handles callback when the "hide-bar" signal is emitted. @param self: Reference to the ScribesFindSearchButton instance. @type self: A ScribesFindSearchButton object. @param editor: Reference to the text editor. @type editor: An Editor object. @param bar: One of the text editor's bar object. @type bar: A ScribesBar object. iÿÿÿÿ(tnot_ttruthN( RR3R;R<R%t get_deletedRR0t delete_markR$R&(RR!R6R;R<((s&plugins/IncrementalBar/SearchButton.pyt__searchbutton_hide_bar_cbs & & cCs5|iƒo|idtƒn|idtƒtS(sZ Handles callback when the "changed" signal is emitted. @param self: Reference to the ScribesFindSearchButton instance. @type self: A ScribesFindSearchButton object. @param entry: The findbar's entry object. @type entry: A ScribesFindEntry object. @return: True to propagate signals to parent widgets. @type: A Boolean Object. R)(R/R*R R+(Rtentry((s&plugins/IncrementalBar/SearchButton.pyt__searchbutton_changed_cb˜s cCs)|ii|iiƒ|i|iƒtS(s Handles callback when the button's "clicked" signal is emitted. @param self: Reference to the ScribesFindSearchButton instance. @type self: A ScribesFindSearchButton object. @param button: The findbar's find button. @type button: A ScribesFindSearchButton object. (RtsearchRR/R%R&R (Rtbutton((s&plugins/IncrementalBar/SearchButton.pyt__searchbutton_clicked_cb«s %cCs8|iiƒo|idtƒn|idtƒdS(s$ Handles callback when the "cancel" signal is emitted. @param self: Reference to the ScribesFindSearchButton instance. @type self: A ScribesFindSearchButton object. @param searchmanager: The text editor's search processing object. @type searchmanager: A SearchProcessor object. R)N(RR/R*R R+(Rt searchmanager((s&plugins/IncrementalBar/SearchButton.pyt__searchbutton_cancel_cb¸s cCs|ii|iƒdS(N(Rt handler_blockR(R((s&plugins/IncrementalBar/SearchButton.pyt__block_search_replace_signalsÈscCs|ii|iƒdS(N(Rthandler_unblockR(R((s&plugins/IncrementalBar/SearchButton.pyt __unblock_search_replace_signalsÌscCsKddkl}l}||iƒo9||iiƒƒo#|iii|iƒd|_n||i ƒo9||i iƒƒo#|iii|i ƒd|_ nddk l }l }||i |ƒ||i|iƒ||i|iƒ||i|iƒ||i|iƒ||i|ƒ|iƒ||ƒ~d}dS(sú Handles callback when the "destroy" signal is emitted. @param self: Reference to the FindSearchButton instance. @type self: A FindSearchButton object. @param findbar: Reference to the FindBar instance. @type findbar: A FindBar object. iÿÿÿÿ(R;R<(tdisconnect_signaltdelete_attributesN(R3R;R<R%R=RR0R>R$R&t SCRIBES.utilsRKRLRRRRRRRRtdestroy(RR R;R<RKRL((s&plugins/IncrementalBar/SearchButton.pyt __destroy_cbÐs& & &   (t__name__t __module__t__doc__R R R RRRRRRR.R(((s&plugins/IncrementalBar/SearchButton.pyR!s   #     N(RRR RR(((s&plugins/IncrementalBar/SearchButton.pyss