f^ddlZddlZddlmZddlZddlmZmZddl m Z ddlm Z ddlm Z ddlmZddlmZej"j%d ZgZdd lmZeZd D]1Zee eee<ed ed ezej5e3d D]^Zej65ej8de ee eee<ddded ed ezej5e`dD]FZej;dddZee eee<ed ed ezej5eHdD]FZej;dddZee eee<ed ed ezej5eHej?dZ ej?dZ!ej?dZ"ej?dZ#ej?dZ$ej?dZ%ej?dZ&ej?dZ'ej?dZ(ej?dZ)ej?dZ*ej?dZ+ej?d Z,ej?d!Z-ej?d"Z.ej?d#Z/ej?d$Z0ej?d%Z1ej?d&Z2ej?d'Z3ej?d Z4ej?d(Z5ej?d)Z6ej?d*Z7ej?d+Z8ej?d,Z9ejtjvZd?ZTd@ZUej5dAdBZVej5dCdDZWej5dEedFgdGZXdbdHZYej5dIGdJdKeZZ[dLZ\ej5dMdNZ]ej5dOdPZ^ej5dQdbdRZ_ej5dSdbdTZ`ej5dUejZaejZbedVdWgz ZGdXdYeZZcdZZdGd[d\ejZeeeeZeeeZGed\d gz ZGd]d^ejZfeefZfej5d^e jZgejZhejZiegZjed d_d`egdaz Zy#1swYfxYw)cN) namedtuple)overridedeprecated_attr)GLib)PyGIDeprecationWarning)_propertyhelper) _signalhelper)_giGObject)_option)markup_escape_textget_application_nameset_application_name get_prgname set_prgname main_depthfilename_display_basenamefilename_display_namefilename_from_utf8uri_list_extract_urisMainLoop MainContextmain_context_default source_removeSourceIdleTimeoutPollFDidle_add timeout_addtimeout_add_seconds io_add_watchchild_watch_addget_current_time spawn_asynczGLib.)*PRIORITY_DEFAULTPRIORITY_DEFAULT_IDLE PRIORITY_HIGHPRIORITY_HIGH_IDLE PRIORITY_LOWIO_INIO_OUTIO_PRIIO_ERRIO_HUPIO_NVALIO_STATUS_ERRORIO_STATUS_NORMAL IO_STATUS_EOFIO_STATUS_AGAINIO_FLAG_APPENDIO_FLAG_NONBLOCKIO_FLAG_IS_READABLEIO_FLAG_IS_WRITEABLEIO_FLAG_IS_SEEKABLE IO_FLAG_MASKIO_FLAG_GET_MASKIO_FLAG_SET_MASKSPAWN_LEAVE_DESCRIPTORS_OPENSPAWN_DO_NOT_REAP_CHILDSPAWN_SEARCH_PATHSPAWN_STDOUT_TO_DEV_NULLSPAWN_STDERR_TO_DEV_NULLSPAWN_CHILD_INHERITS_STDINSPAWN_FILE_AND_ARGV_ZEROOPTION_FLAG_HIDDENOPTION_FLAG_IN_MAINOPTION_FLAG_REVERSEOPTION_FLAG_NO_ARGOPTION_FLAG_FILENAMEOPTION_FLAG_OPTIONAL_ARGOPTION_FLAG_NOALIASOPTION_ERROR_UNKNOWN_OPTIONOPTION_ERROR_BAD_VALUEOPTION_ERROR_FAILEDOPTION_REMAINING glib_versionignore) G_MININT8 G_MAXINT8 G_MAXUINT8 G_MININT16 G_MAXINT16 G_MAXUINT16 G_MININT32 G_MAXINT32 G_MAXUINT32 G_MININT64 G_MAXINT64 G_MAXUINT64_) G_MINFLOAT G_MAXFLOAT G_MINDOUBLE G_MAXDOUBLE G_MINSHORT G_MAXSHORT G_MAXUSHORTG_MININTG_MAXINT G_MAXUINT G_MINLONG G_MAXLONG G_MAXULONG G_MAXSIZE G_MINSSIZE G_MAXSSIZE G_MINOFFSET G_MAXOFFSETinvalidvoid GInterfacegcharguchargbooleangintguintglonggulonggint64guint64GEnumGFlagsgfloatgdouble gchararraygpointerGBoxedGParamPyObjectGTypeGStrvGVariantGString) TYPE_INVALID TYPE_NONETYPE_INTERFACE TYPE_CHAR TYPE_UCHAR TYPE_BOOLEANTYPE_INT TYPE_UINT TYPE_LONG TYPE_ULONG TYPE_INT64 TYPE_UINT64 TYPE_ENUM TYPE_FLAGS TYPE_FLOAT TYPE_DOUBLE TYPE_STRING TYPE_POINTER TYPE_BOXED TYPE_PARAM TYPE_OBJECT TYPE_PYOBJECT TYPE_GTYPE TYPE_STRV TYPE_VARIANT TYPE_GSTRING TYPE_UNICHAR TYPE_VALUE)PidGError OptionGroup OptionContext)PARAM_CONSTRUCTPARAM_CONSTRUCT_ONLYPARAM_LAX_VALIDATIONPARAM_READABLEPARAM_WRITABLEzGObject.ParamFlags.PARAM_READWRITEzGObject.ParamFlags.READWRITE) SIGNAL_ACTIONSIGNAL_DETAILEDSIGNAL_NO_HOOKSSIGNAL_NO_RECURSESIGNAL_RUN_CLEANUPSIGNAL_RUN_FIRSTSIGNAL_RUN_LASTzGObject.SignalFlags.) rr~rrtr GObjectWeakRef GParamSpecGPointerrWarningzgeneric-c-marshallerT)featureslist_propertiesnewpygobject_version threads_init type_registercBeZdZd dZedZdZdZdZdZ dZ y) ValueNctjj||&|j|||j |yyyN) GObjectModuler__init__init set_value)self value_typepy_values 6/usr/lib/python3/dist-packages/gi/overrides/GObject.pyrzValue.__init__sD$$T*  ! IIj !#x($ "c,tj|Sr)r _gvalue_get_typers r__g_typezValue.__g_types##D))rc|jjtstjdt dt j||y)Nz2Calling set_boxed() on a non-boxed type deprecated stacklevel)_Value__g_typeis_arwarningswarnrr _gvalue_set)rboxeds r set_boxedzValue.set_boxeds9}}!!*- MMN0Q @ e$rc|jjtstjdt dt j|S)Nz2Calling get_boxed() on a non-boxed type deprecatedrr)rrrrrrr _gvalue_getrs r get_boxedzValue.get_boxeds8}}!!*- MMN0Q @t$$rc|j}|tk(r|j|y|tk(r|j |y|t k(rBt |ts|td|t|tj||y|tk(r|j|y|jtr|j!|y|t"k(r|j%|y|t&k(r|j)|y|t*k(r|j-|y tj||y#t$r|t.k(r tdwxYw)NzExpected string but got z+GObject.Value needs to be initialized first)rrset_charr set_ucharr isinstancestr TypeErrortyper rr set_paramrr set_flagsr set_pointerr set_gtyper set_variantr)rrgtypes rrzValue.set_values  I  MM( # j NN8 $ k !h,1E!)4>!;<< OOD( + j NN8 $ ZZ # NN8 $ l "   X & j NN8 $ l "   X & h/ L(#$QRR s "D99Ec8|j}|tk(r|jS|tk(r|j S|t k(r|j S|jtr|jS|jtr|jS|tk(r|jS|tk(r|jS|t k(r|j#S t%j&|S#t($r |t*k(rYywxYwr)rrget_charr get_ucharr get_paramrrget_enumr get_flagsr get_pointerr get_gtyper dup_variantr rrr)rrs r get_valuezValue.get_values  I ==? " j >># # j >># # ZZ "==? " ZZ #>># # l "##% % j >># # l "##% % t,, L( s.DDDcXd|jjd|jdS)Nz)rnamerrs r__repr__zValue.__repr__$s$(MM$6$68HIIr)NN) __name__ __module__ __qualname__rpropertyrrrrrrrrrrs6)** %% @:Jrrc^tj|}|tk(rtd|z|S)Nzunknown type name: %s)rtype_from_namer RuntimeErrorrtype_s rrr,s0  ( ( .E 2T9:: LrrcXtj|}|tk(r td|S)Nzno parent for type)r type_parentrr)rparents rrr6s+  & &u -F /00 Mrrct|dr |j}|js|jst d|zyy)N __gtype__z1type must be instantiable or an interface, got %s)hasattrr is_instantiatable is_interfacerrs r _validate_type_for_signal_methodr@sFuk"  " " $U-?-?-AKeSTT.B $rcBt|tj|Sr)rrsignal_list_idsrs rrrGs$U+  ( ( //rrc<t|}td|DS)Nc3FK|]}tj|ywr)r signal_name).0is r z$signal_list_names..Qs;!**1-;s!)rtuple)ridss rsignal_list_namesrOs % C ;s; ;;rrcDt|tj||Sr)rr signal_lookuprs rrrWs$U+  & &tU 33rr SignalQuery) signal_idritype signal_flags return_type param_typesc | t||}tj|}|J|jdk(ryt |j|j |j |j|jt|jS)Nr) rr signal_queryrrrrr r!rr") id_or_namerress rr$r$isy ":u5  $ $Z 0C ?? }} s}}coosyy''S__- //rr$ceZdZdZdZdZy)_HandlerBlockManagerc ||_||_yrobj handler_id)rr+r,s rrz_HandlerBlockManager.__init__s$rcyrrrs r __enter__z_HandlerBlockManager.__enter__ rcXtj|j|jyr)rsignal_handler_unblockr+r,rexc_type exc_value tracebacks r__exit__z_HandlerBlockManager.__exit__s,,TXXtGrNrrrrr.r6rrrr(r(s% Hrr(cFtj||t||S)aBlocks the signal handler from being invoked until handler_unblock() is called. :param GObject.Object obj: Object instance to block handlers for. :param int handler_id: Id of signal to block. :returns: A context manager which optionally can be used to automatically unblock the handler: .. code-block:: python with GObject.signal_handler_block(obj, id): pass )rsignal_handler_blockr(r*s rr9r9s!"&&sJ7 Z 00rr9cdtj|||\}}}|r||fSt|d|)a%Parse a detailed signal name into (signal_id, detail). :param str detailed_signal: Signal name which can include detail. For example: "notify:prop_name" :returns: Tuple of (signal_id, detail) :raises ValueError: If the given signal is unknown. z: unknown signal name: )rsignal_parse_name ValueError)detailed_signalrforce_detail_quarkr&rdetails rr;r;sA+<<_e=OQCF &  %QRRrr;cPt||d\}}tj||y)NT)r;rsignal_remove_emission_hook)r+r=hook_idrr?s rremove_emission_hookrCs%)/3EIv--iArrCc d|fS)NFrihint return_accuhandler_return user_datas rsignal_accumulator_first_winsrJs > ""rrJc | |fSrrrEs rsignal_accumulator_true_handledrLs  //rrLadd_emission_hook signal_newceZdZdZdZdZy)_FreezeNotifyManagerc||_yr)r+)rr+s rrz_FreezeNotifyManager.__init__s rcyrrrs rr.z_FreezeNotifyManager.__enter__r/rc8|jjyr)r+ thaw_notifyr2s rr6z_FreezeNotifyManager.__exit__s rNr7rrrrPrPs rrPcBtjfd}|S)Nc|i|Srr)argskwargsfuncs rmethz_signalmethod..methsT$V$$r) functoolswraps)rYrZs` r _signalmethodr]s%__T%% KrceZdZdZdZeZeZeZeZeZ eZ eZ eZ eZ eZeZeZeZeZej(j*Zej(j.Zej(j2Zej(j6ZeZeZeZeZej<j>Zej<j@Z ej<jBZ!ej<jDZ"ej<jFZ#ej<jHZ$ej<jJZ%ej<jLZ&ej<jNZ'ej<jPZ(ej<jRZ)ej<jTZ*ej<jVZ+ej<jXZ,ej<jZZ-ej<j\Z.ej<j^Z/fdZ0dZ1e2Z3e4ejjZ6e4ejnZ8e4ejnZ9e4ejtZ;e4ejxZ=dZ>e>Z?xZ@S)Objectctd)Nz%This method is currently unsupported.rrrWkargss r_unsupported_methodzObject._unsupported_methodsBCCrctd)NzIData access methods are unsupported. Use normal Python attributes insteadrarbs r_unsupported_data_methodzObject._unsupported_data_methodsBC Crc>tt| t|S)aFreezes the object's property-changed notification queue. :returns: A context manager which optionally can be used to automatically thaw notifications. This will freeze the object so that "notify" signals are blocked until the thaw_notify() method is called. .. code-block:: python with obj.freeze_notify(): pass )superr_ freeze_notifyrPr __class__s rrizObject.freeze_notify,s fd)+#D))rcf|jdd}|tjjzrtj j }ntj j}|tjjzr#t|dk7rtd|gzfd}n}||||g|S)aConnect a callback to the given signal with optional user data. :param str detailed_signal: A detailed signal to connect to. :param callable handler: Callback handler to connect to the signal. :param *data: Variable data which is passed through to the signal handler. :param GObject.ConnectFlags connect_flags: Flags used for connection options. :returns: A signal id which can be used with disconnect. connect_flagsrr^zWUsing GObject.ConnectFlags.SWAPPED requires exactly one argument for user data, got: %scXt|}|j}||gz}|g|Sr)listpop)r+rWswaphandlers r new_handlerz(Object.connect_data..new_handlerWs4Dzxxzse|t+d++r) getr ConnectFlagsAFTERr r connect_afterconnectSWAPPEDlenr<)rr=rrdatarXflags connect_funcrss ` r connect_datazObject.connect_data>s ?A. =--33 3;;44L;;..L =--55 54yA~ "GJN"PQQ ,"KD/;FFFrctj|jjtd|j |S)z-Deprecated, please use stop_emission_by_name.rr)rr stop_emission__doc__rstop_emission_by_name)rr=s rrzObject.stop_emissionrs1 d((002HUVW))/::r)Arrrrdrfget_data get_qdataset_data steal_data steal_qdata replace_data replace_qdatabind_property_fullcompat_controlinterface_find_propertyinterface_install_propertyinterface_list_propertiesnotify_by_pspec watch_closurerr_ref_refref_sink _ref_sinkunref_unrefforce_floating_force_floatingr r get_propertyget_properties set_propertyset_properties bind_propertyrxrwconnect_objectconnect_object_afterdisconnect_by_funchandler_block_by_funchandler_unblock_by_funcemitchainweak_ref__copy__ __deepcopy__rir~r9 handler_blockr]r1handler_unblocksignal_handler_disconnect disconnecthandler_disconnectsignal_handler_is_connectedhandler_is_connectedsignal_stop_emission_by_namerremit_stop_by_name __classcell__rks@rr_r_s/DC (H(I'H)J*K+L,M-(N1!4 3)O'M    # #D$$--I  ! ! ' 'F#**99O C"H E(N;;++L[[//N;;++L[[//NKK--Mkk!!GKK--M[[//N;;;;77KK==!kkAA ;;  D KK  E{{##H{{##H;;++L*$#GR)M#M$H$HIO}FFGJ&}'N'NO()R)RS)-*T*TU ; &rr_c$eZdZdZfdZxZS)Bindingc>tjdtd|S)NzUsing parentheses (binding()) to retrieve the Binding object is no longer needed because the binding is returned directly from "bind_property.rr)rrrrs r__call__zBinding.__call__s  d, < rctjtjtjfdk\rtt |St|dr tdt|ddtt |y)N)r9_unboundz$binding has already been cleared outT) r MAJOR_VERSION MINOR_VERSION MICRO_VERSIONrhrunbindr r<setattrrjs rrzBinding.unbindsc    2 2D4F4F G: U$.0 0 4 $CD D D*d + '4 ' )r)rrrrrrrs@rrrs * *rrrzGObject.Property)PropertySignalSignalOverriderr)kr[r collectionsr gi.modulegi gi.overridesrr gi.repositoryrrrpropertyhelperr signalhelperr moduleget_introspection_moduler__all__r optionrgetattrglobalsappendcatch_warnings simplefiltersplitnew_namerrrrrrrrrrrrrrrrrrrrrrrrrrrrr rr ParamFlagsREADABLEWRITABLEr SignalFlagsrr~rrtr rrrrrrrrrrrrrrrrrr$objectr(r9r;rCrJrLrMrNrPr]r_rrrrrrrrrs0"2%0, 229= !   DdD)GIdOItWt^4 NN4  D" ! ".h(>?!$- $.ItWt^4 NN4-2 GDzz#q!"%HdH-GIdOItWx%78 NN4  GDzz#q!"%HdH-GIdOItWx%78 NN4++I6  ( ( 0 --l;  ( ( 1  ) )( 3 ++J7  ' ' /  ( ( 1  ( ( 1  ) )( 3  ) )( 3 **95  ( ( 1  ) )( 3  ) )( 3 **95 **<8 ++J7  ) )( 3  ) )( 3 **95 ,,Z8  ) )' 2  ( ( 1 ++J7 ++I6  * *   ** >DdD)GIdOItWt^4 NN4 1Dzz#q!"%Hm66AGIdOIt%:X%EF NN4  **33%%& ,.LM ! Dzz#q!"%Hm77BGIdOIt%;h%FG NN4     ^^ ++## ^^ <<  ++  #D )%% gg))  !!  BB[JM  [J| w }U0  !< "#4 )* /&~ H6 H1*%&S&"#B %& # ./0 01 )) ^^   ..6F&] ! !F&R &  Hi *m##*& 7 y  " "   ,,  :'9: ??]..s *%\33\=