}_Fc@s dZdefdYZdS(s This module documents a class that implements keyboard scroll operations. @author: Lateef Alabi-Oki @organization: The Scribes Project @copyright: Copyright © 2007 Lateef Alabi-Oki @license: GNU GPLv2 or Later @contact: mystilleef@gmail.com tManagercBsMeZdZdZdZdZdZdZdZdZ RS(s5 This class implements keyboard scroll operations. cCs:|i|ddkl}l}||id|dS(s Initialize object. @param self: Reference to the Manager instance. @type self: A Manager object. @param editor: Reference to the text editor. @type editor: An Editor object. i(tidle_addt PRIORITY_LOWtpriorityN(t_Manager__init_attributestgobjectRRt_Manager__precompile_methods(tselfteditorRR((sD/home/goldenmyst/.gnome2/scribes/plugins/ScrollNavigation/Manager.pyt__init__%s cCs%||_|i|_|i|_dS(s Initialize object. @param self: Reference to the Manager instance. @type self: A Manager object. @param editor: Reference to the text editor. @type editor: An Editor object. N(t_Manager__editorttextviewt_Manager__viewtfeedbackt_Manager__feedback(RR((sD/home/goldenmyst/.gnome2/scribes/plugins/ScrollNavigation/Manager.pyt__init_attributes3s   cCso|ii}|i|i|i|if\}}}}|ii||}|i|ii|ddS(sl Scroll the view up. @param self: Reference to the Manager instance. @type self: A Manager object. gMbP?N( R tget_visible_recttxtytwidththeighttget_iter_at_locationt backward_linetscroll_to_iter(Rt rectangleRRRRtiterator((sD/home/goldenmyst/.gnome2/scribes/plugins/ScrollNavigation/Manager.pyt scroll_upHs * cCss|ii}|i|i|i|if\}}}}|ii|||}|i|ii|ddS(sn Scroll the view down. @param self: Reference to the Manager instance. @type self: A Manager object. gMbP?N( R RRRRRRt forward_lineR(RRRRRRR((sD/home/goldenmyst/.gnome2/scribes/plugins/ScrollNavigation/Manager.pyt scroll_downVs * cCsX|ii}|ii|ddtddddkl}|ii|ddd S( su Center view on current line. @param self: Reference to the Manager instance. @type self: A Manager object. gMbP?t use_aligntxaligng?i(tmsg0001tyesiN( R tget_cursor_iteratorR RtTrueti18nRRtupdate_status_message(RRR((sD/home/goldenmyst/.gnome2/scribes/plugins/ScrollNavigation/Manager.pytcenterds cCs|ii|~d}dS(sh Destroy object. @param self: Reference to the Manager instance. @type self: A Manager object. N(R tdelete_attributestNone(R((sD/home/goldenmyst/.gnome2/scribes/plugins/ScrollNavigation/Manager.pytdestroyqscCsUy;ddkl}||i||i||iWntj onXtS(su Optimize methods using Psyco @param self: Reference to the Manager instance. @type self: A Manager object. i(tbind(tpsycoR)RRR%t ImportErrortFalse(RR)((sD/home/goldenmyst/.gnome2/scribes/plugins/ScrollNavigation/Manager.pyt__precompile_methods}s  ( t__name__t __module__t__doc__R RRRR%R(R(((sD/home/goldenmyst/.gnome2/scribes/plugins/ScrollNavigation/Manager.pyR s     N(R0tobjectR(((sD/home/goldenmyst/.gnome2/scribes/plugins/ScrollNavigation/Manager.pyss