ó §Zc@@sgddlmZddlZddlZddlmZddlmZddlm Z m Z m Z m Z m Z mZmZejZe ddlmZddlmZdejkoÃdknrÔd „Znd efd „ƒYZd „Zd„Zdefd„ƒYZejeƒdeefd„ƒYZd„Z d„Z!deefd„ƒYZ"dS(i(tabsolute_importNi(t TYPE_INVALID(tgenerate_doc_string(t InterfaceInfot ObjectInfot StructInfot VFuncInfotregister_interface_infothook_up_vfunc_implementationt_gobject(t_propertyhelper(t _signalhelpericC@s t|dƒS(Nt__call__(thasattr(tobj((s./usr/lib64/python2.7/site-packages/gi/types.pytcallable1stMetaClassHelpercB@s>eZd„Zd„Zd„Zd„Zd„Zd„ZRS(cC@s1x*|jjƒD]}t||j|ƒqWdS(N(t__info__t get_methodstsetattrt__name__(tclst method_info((s./usr/lib64/python2.7/site-packages/gi/types.pyt_setup_methods6scC@sq|j}|jƒ}|dkr%dSxE|jƒD]7}|j}t||ƒs2t||t|ƒƒq2q2WdS(N(Rtget_class_structtNoneRRR Rt classmethod(Rtinfot class_structRtname((s./usr/lib64/python2.7/site-packages/gi/types.pyt_setup_class_methods:s    cC@sUxN|jjƒD]=}|jƒjddƒ}t||t|j|jƒƒqWdS(Nt-t_(Rt get_fieldstget_nametreplaceRtpropertyt get_valuet set_value(Rt field_infoR((s./usr/lib64/python2.7/site-packages/gi/types.pyt _setup_fieldsEscC@sFx?|jjƒD].}|jƒ}|jƒ}t|||ƒqWdS(N(Rt get_constantsR"R%R(Rt constant_infoRtvalue((s./usr/lib64/python2.7/site-packages/gi/types.pyt_setup_constantsJs  c C@sƒx||jjƒD]k\}}|jdƒ st|ƒ r?qnd}xH|jD]=}t||dƒ}|dk rOt|tƒrO|}PqOqOW|dkr»t |j |t dƒƒ}n|dk r|d|j ƒksãt ‚t||j ƒ}|dk re|jƒ}td||jjƒ|jj ƒ|jƒ|j ƒ|jjƒ|jj ƒfƒ‚nt||j|ƒqqWdS(Ntdo_sTMethod %s() on class %s.%s is ambiguous with methods in base classes %s.%s and %s.%s(t__dict__titemst startswithRRt__mro__tgetattrt isinstanceRtfind_vfunc_info_in_interfacet __bases__tlenR"tAssertionErrortfind_vfunc_conflict_in_basest get_containert TypeErrorRt get_namespaceRt __gtype__(Rt vfunc_nametpy_vfunct vfunc_infotbasetmethodtambiguous_baset base_info((s./usr/lib64/python2.7/site-packages/gi/types.pyt _setup_vfuncsPs4          cC@sŒ|jjdƒ}|dks.t|tƒ r2dS|jdkrT|jdkrTdSx1|jƒD]#}d|j}t|||ƒqaWdS(NRsgi.repository.GObjecttObjectsdo_%s( R.tgetRR3Rt __module__Rt get_vfuncsR(Rt class_infoR?R((s./usr/lib64/python2.7/site-packages/gi/types.pyt_setup_native_vfuncs}s (RRGRRR(R,RDRJ(((s./usr/lib64/python2.7/site-packages/gi/types.pyR5s     -cC@s®x§|D]Ÿ}|tkst|tƒ st|dƒ r?qnt|jtƒr„x0|jjƒD]}|jƒ|kra|SqaWnt|j |ƒ}|dk r|SqWdS(NR( t GInterfacet issubclassR R3RRRHR"R4R5R(tbasesR=R@tvfunc((s./usr/lib64/python2.7/site-packages/gi/types.pyR4s    cC@s®x§|D]Ÿ}t|dƒ st|jdƒ r6qn|jjƒ}|jƒ}x0|D](}|jƒ|krX||krX|SqXWt||jƒ}|dk r|SqWdS(NRRH(R RRHR"R8R5R(RNRMtklasstvfuncsR=tvtaklass((s./usr/lib64/python2.7/site-packages/gi/types.pyR8ªs    t_GObjectMetaBasecB@s eZdZd„Zd„ZRS(s8Metaclass for automatically registering GObject classes.cC@sDtj||||ƒtj|ƒtj|ƒ|j|jƒdS(N(ttypet__init__tpropertyhelpertinstall_propertiest signalhelpertinstall_signalst_type_registerR.(RRRMtdict_((s./usr/lib64/python2.7/site-packages/gi/types.pyRU½s  cC@sCd|krdS|jjdƒr&dStj||jdƒƒdS(NR<s gi.overrides.t__gtype_name__(RGR0R t type_registerRF(Rt namespace((s./usr/lib64/python2.7/site-packages/gi/types.pyRZÃs  (RRGt__doc__RURZ(((s./usr/lib64/python2.7/site-packages/gi/types.pyRS»s t GObjectMetacB@s/eZdZd„Zd„Zed„ƒZRS(s+Meta class used for GI GObject based types.cC@stt|ƒj|||ƒt}|jd|jjƒkrGt}nt}| ro|jtjkrot}n|r‚|jƒn|rt |jt ƒr§|j ƒn|j ƒ|j ƒ|jƒt |jt ƒrä|jƒqt |jtƒrt|jjƒƒqndS(Nsgi.repository.(tsuperR`RUtFalseRGRR;tTrueRDR3RRRR,RJR(RRt get_g_type(RRRMR[t is_gi_definedtis_python_defined((s./usr/lib64/python2.7/site-packages/gi/types.pyRUÔs&        cC@s t|ƒS(N(tmro(R((s./usr/lib64/python2.7/site-packages/gi/types.pyRgìscC@sX|tkrdS|jjddƒ}|dk r5|S|jjdƒrTt|jƒSdS(sFMeta class property which shows up on any class using this meta-class.tR_sgi.repository.s gi.overridesN(sgi.repository.s gi.overrides(R`R.RFRRGR0RR(Rtdoc((s./usr/lib64/python2.7/site-packages/gi/types.pyR_ïs   (RRGR_RURgR$(((s./usr/lib64/python2.7/site-packages/gi/types.pyR`Òs  cC@s{g}|gg}|jr—x`|jD]U}t|dƒrS|t|jƒg7}q%tjd|tƒ|t|ƒg7}q%W|t|jƒg7}nxÝ|rvx`|D]X}|d}g|D]}||dkr¾|^q¾}|rþt|jkrþd}q§Pq§W|dkrt dƒ‚n|j |ƒxE|D]<}|r3|d|kr3|d=|so|j |ƒqoq3q3WqšW|S(s\Compute the class precedence list (mro) according to C3, with GObject interface considerations. We override Python's MRO calculation to account for the fact that GObject classes are not affected by the diamond problem: http://en.wikipedia.org/wiki/Diamond_problem Based on http://www.python.org/download/releases/2.3/mro/ R1sQMixin class %s is an old style class, please update this to derive from "object".iis8Cannot create a consistent method resolution order (MRO)N( R5R tlistR1twarningstwarntRuntimeWarningRgRKRR:tappendtremove(tCRMtbases_of_subclassesR@tsubclass_basest candidatetstnot_head((s./usr/lib64/python2.7/site-packages/gi/types.pyRgs6       )   cO@sdS(N((targstkwargs((s./usr/lib64/python2.7/site-packages/gi/types.pytnothing<st StructMetacB@s&eZdZd„Zed„ƒZRS(s*Meta class used for GI Struct based types.cC@sÕtt|ƒj|||ƒ|jjƒ}|tkrJ|jdk rJdS|jƒ|j ƒxp|jj ƒD]_}|j ƒrn|j dkrn|j ƒ s±|jjƒdkrnt|ƒ|_t|_PqnqnWdS(Ntnewi(RaRyRURRdRtpytypeRR(RRtis_constructorRt get_argumentstget_sizet staticmethodt__new__Rx(RRRMR[tg_typeR((s./usr/lib64/python2.7/site-packages/gi/types.pyRUCs     cC@s|tkrdSt|jƒS(NRh(RyRR(R((s./usr/lib64/python2.7/site-packages/gi/types.pyR_Ys (RRGR_RUR$(((s./usr/lib64/python2.7/site-packages/gi/types.pyRy@s (ii(ii(#t __future__RtsysRkt _constantsRt docstringRt_giRRRRRRR RKRhR RVR RXt version_infoRtobjectRR4R8RTRSt_install_metaclassR`RgRxRy(((s./usr/lib64/python2.7/site-packages/gi/types.pyts(  4  [   . <