-í
>²ª<c    	   s~  d  k  Z  d  k Z d  k Z d  k Z d  k Z y d k l Z Wn  e j
 o d k l Z n Xd  k Z d Z	 d Z
 d Z d Z d Z d Z d Z d	 Z d
 Z d Z h  d d <d d <d d <d d <d d <d d <d d <d d <d d <Z d „  Z d „  Z d  „  Z h  Z h  Z h  Z h  d! d" d# f d$ <d% d& d' f d( <d) d* d+ f d, <d- d. d/ f d0 <d1 d2 d3 f d4 <d5 d6 d7 f d8 <d5 d6 d7 f d9 <d5 d6 d7 f d: <d5 d6 d7 f d; <d< d= d> f d? <d@ dA dB f dC <dD dE dF f dG <dH dI dJ f dK <dL dM dN f dO <dP dQ dR f dS <dT dU dV f dW <Z dX f  dY „  ƒ  YZ dZ e i f d[ „  ƒ  YZ d\ e f d] „  ƒ  YZ d^ e f d_ „  ƒ  YZ e  d` j oÅe i e  i! d da db dc dd de df dg g ƒ \ Z" Z# e$ Z% e$ Z& g  Z' g  Z( xà e" D]Ø \ Z) Z* e) dh di f j o
 e* Z% n° e) dj dk f j o
 e* Z& n“ e) dl j o e' i+ e* ƒ nu e) dm j o e, i+ e* ƒ nW e) dn j o e e* ƒ i- ƒ  n6 e) e. do f j o! e  i/ i0 dp ƒ e  i1 d ƒ n qWe% p e& o! e  i/ i0 dp ƒ e  i1 d ƒ n e dq e% dr e& ds dt ƒ Z2 x e' D] Z3 e2 i4 e3 ƒ q7Wx e, D] Z5 e2 i6 e5 ƒ qUWe2 i- ƒ  n d  S(u   N(   s   StringIOi   i    s       { "%s", _wrap_%s, 1 },
s=   static PyObject *
_wrap_%s(PyObject *self, PyObject *args)
{
sG       if (PyGtkEnum_get_value(%s, %s, (gint *)&%s))
        return NULL;
sG       if (PyGtkFlag_get_value(%s, %s, (gint *)&%s))
        return NULL;
s     if (py_%s)
        %s = %s;
sž   static PyObject *
_wrap_%s(PyObject *self, PyObject *args)
{
    if (!PyArg_ParseTuple(args, ":%s"))
        return NULL;
    return PyInt_FromLong(%s());
}

sÂ       if (PyGtk_Check(py_%s))
        %s = %s(PyGtk_Get(py_%s));
    else if (py_%s != Py_None) {
        PyErr_SetString(PyExc_TypeError, "%s argument must be a %s or None");
	return NULL;
    }
s¶       if (Py%s_Check(py_%s))
        %s = %s(py_%s);
    else if (py_%s != Py_None) {
        PyErr_SetString(PyExc_TypeError, "%s argument must be a %s or None");
	return NULL;
    }
s
   _GTK_CLISTs   GtkCLists
   _GTK_CTREEs   GtkCTrees   _GTK_CTREE_POSs   GtkCTreePoss   _GTK_CTREE_LINE_STYLEs   GtkCTreeLineStyles   _GTK_CTREE_EXPANDER_STYLEs   GtkCTreeExpanderStyles   _GTK_CTREE_EXPANSION_STYLEs   GtkCTreeExpansionStyles   _GNOME_ROOTWINs   GnomeRootWins   _GNOME_APPBARs   GnomeAppBars   _GNOME_DENTRY_EDITs   GnomeDEntryEditc    sÏ  t  i |  ƒ o t  |  Sn g  } x|  o…t |  ƒ d j o% |  d t i j o |  d t i j o# | i d |  d  ƒ |  d }  n$t |  ƒ d j oJ |  d t i j o6 |  d d j o% |  d t i j o |  d t i j o. | i |  d d |  d d !ƒ |  d }  n– t |  ƒ d j o9 |  d t i j o% |  d t i j o |  d t i j o+ | i |  d d |  d ƒ |  d }  n | i |  d ƒ |  d }  q% Wt i	 t i
 | d ƒ ƒ Sd S(	   s”   Converts a typename to the equivalent upercase and underscores
	name.  This is used to form the type conversion macros and enum/flag
	name variablesi   i    s   _i   i   s   HVs    N(   s   convSpecialCasess   has_keys   strs   rets   lens   strings	   uppercases	   lowercases   appends   uppers   join(   s   strs   ret(    (    s(   /usr/share/pygtk/1.2/codegen/generate.pys
   toUpperStr7 s$      ;` Oc    sL   t  |  ƒ } t | ƒ d j o | d  d j o d | d Sn	 d | Sd S(   s,   create a GTK_TYPE_* name from the given typei   s   _GTKs   GTK_TYPEN(   s
   toUpperStrs   typenames   parts   len(   s   typenames   part(    (    s(   /usr/share/pygtk/1.2/codegen/generate.pys   enumNameU s
     $c    s   t  |  ƒ d Sd S(   s+   get the conversion macro for the given typei   N(   s
   toUpperStrs   typename(   s   typename(    (    s(   /usr/share/pygtk/1.2/codegen/generate.pys   conversionMacro] s     s   PyGtkAccelGroup_Types   PyGtkAccelGroup_Gets   PyGtkAccelGroup_News   GtkAccelGroups   PyGtkStyle_Types   PyGtkStyle_Gets   PyGtkStyle_News   GtkStyles   PyGdkFont_Types   PyGdkFont_Gets   PyGdkFont_News   GdkFonts   PyGdkColor_Types   PyGdkColor_Gets   PyGdkColor_News   GdkColors   PyGdkEvent_Types   PyGdkEvent_Gets   PyGdkEvent_News   GdkEvents   PyGdkWindow_Types   PyGdkWindow_Gets   PyGdkWindow_News	   GdkWindows	   GdkPixmaps	   GdkBitmaps   GdkDrawables   PyGdkGC_Types   PyGdkGC_Gets   PyGdkGC_News   GdkGCs   PyGdkColormap_Types   PyGdkColormap_Gets   PyGdkColormap_News   GdkColormaps   PyGdkDragContext_Types   PyGdkDragContext_Gets   PyGdkDragContext_News   GdkDragContexts   PyGtkSelectionData_Types   PyGtkSelectionData_Gets   PyGtkSelectionData_News   GtkSelectionDatas   PyGdkAtom_Types   PyGdkAtom_Gets   PyGdkAtom_News   GdkAtoms   PyGdkCursor_Types   PyGdkCursor_Gets   PyGdkCursor_News	   GdkCursors   PyGtkCTreeNode_Types   PyGtkCTreeNode_Gets   PyGtkCTreeNode_News   GtkCTreeNodes   VarDefsc      s   d „  Z  d „  Z d „  Z RS(   Nc    s   h  |  _ d  S(   N(   s   selfs   vars(   s   self(    (    s(   /usr/share/pygtk/1.2/codegen/generate.pys   __init__‡ s    c    sF   |  i i | ƒ o |  i | | f |  i | <n | f |  i | <d  S(   N(   s   selfs   varss   has_keys   types   name(   s   selfs   types   name(    (    s(   /usr/share/pygtk/1.2/codegen/generate.pys   add‰ s    c    s    g  } xk |  i i ƒ  D]Z } | i d ƒ | i | ƒ | i d ƒ | i t i |  i | d ƒ ƒ | i d ƒ q W| o | i d ƒ n t i | d ƒ Sd  S(   Ns       s    s   , s   ;
s   
s    (   s   rets   selfs   varss   keyss   types   appends   strings   join(   s   selfs   types   ret(    (    s(   /usr/share/pygtk/1.2/codegen/generate.pys   __str__Ž s       (   s   __init__s   adds   __str__(    (    (    s(   /usr/share/pygtk/1.2/codegen/generate.pys   VarDefs† s    		s   TypesParserc      s>   d  Z  d „  Z d „  Z d „  Z e e e d „ Z d „  Z RS(   s2   A parser that only parses definitions -- no outputc    s)   t  i | ƒ o t | ƒ t  | <n d  S(   N(   s   enumss   has_keys   names   enumName(   s   selfs   names   values(    (    s(   /usr/share/pygtk/1.2/codegen/generate.pys   define_enum› s    c    s)   t  i | ƒ o t | ƒ t  | <n d  S(   N(   s   flagss   has_keys   names   enumName(   s   selfs   names   values(    (    s(   /usr/share/pygtk/1.2/codegen/generate.pys   define_flagsž s    c    s)   t  i | ƒ o t | ƒ t  | <n d  S(   N(   s   objectss   has_keys   names   conversionMacro(   s   selfs   names   args(    (    s(   /usr/share/pygtk/1.2/codegen/generate.pys   define_object¡ s    c    s&   t  i | ƒ o d G| Gd GHn d  S(   Ns
   Warning --s   not supported(   s   boxeds   has_keys   name(   s   selfs   names   reffuncs	   unreffuncs   size(    (    s(   /usr/share/pygtk/1.2/codegen/generate.pys   define_boxed¤ s    c    sƒ   | d d j o( t i i t i i |  i  ƒ | ƒ } n | } t i i | ƒ o
 | } n t | ƒ } |  i
 t i | ƒ ƒ d  S(   Ni    s   /(   s   filenames   oss   paths   joins   dirnames   selfs   afiles   existss   opens   fps   startParsings   scmexprs   parse(   s   selfs   filenames   fps   afile(    (    s(   /usr/share/pygtk/1.2/codegen/generate.pys   include§ s    
(   s   __doc__s   define_enums   define_flagss   define_objects   Nones   define_boxeds   include(    (    (    s(   /usr/share/pygtk/1.2/codegen/generate.pys   TypesParser™ s    			s   FunctionDefsParserc      sG   d d d „ Z  d „  Z f  f  d „ Z d „  Z d „  Z e d „ Z RS(	   Ns	   gtkmodules   &c    sI   t  i |  | ƒ t | d d ƒ |  _ t | d d ƒ |  _ | |  _	 d  S(   Ns   _impl.cs   ws   _defs.c(
   s   TypesParsers   __init__s   selfs   inputs   opens   prefixs   impls   defss
   typeprefixs   tp(   s   selfs   inputs   prefixs
   typeprefix(    (    s(   /usr/share/pygtk/1.2/codegen/generate.pys   __init__¶ s    c    s   d G| o | d p d GHd  S(   Ns   Unknown function:i    s    (   s   tup(   s   selfs   tup(    (    s(   /usr/share/pygtk/1.2/codegen/generate.pys   unknown½ s    c    s¬   t  i |  | ƒ t i t | ƒ d } |  i i	 t
 | | f ƒ |  i i	 t | | | f ƒ | o | d d j o2 x+ | d D] \ } } |  i | | | ƒ q Wn d  S(   Ns	   _get_typei    s   fieldsi   (   s   TypesParsers   define_objects   selfs   names   strings   lowers   objectss   get_types   defss   writes   funcDefTmpls   impls   getTypeTmpls   fieldss   retTypes   attrnames   get_attr_func(   s   selfs   names   parents   fieldss   retTypes   attrnames   get_type(    (    s(   /usr/share/pygtk/1.2/codegen/generate.pys   define_objectÀ s     c    sª  t  ƒ  } t i t | ƒ d | } | i t	 | f ƒ | d j o | i d ƒ | i d ƒ n‰ | d j o | i d ƒ nk | t i ƒ  j o | i d ƒ nG | d j o | i d ƒ n) | t i ƒ  j o | i d	 | ƒ n | i d
 ƒ | i d ƒ | i | ƒ | i d |  i d ƒ | i d ƒ d t | | f } |  i | | | ƒ o d  Sn | i d ƒ |  i i t | | f ƒ |  i i | i ƒ  ƒ d  S(   Ns   _get_s   strings       gchar *ret;
s       PyObject *py_ret;
s   static_strings       GtkObject *ret;
s   GdkAtoms       GdkAtom ret;
s       %s *ret;
s       PyObject *obj;

s$       if (!PyArg_ParseTuple(args, "O!:s   ", s   PyGtk_Type, &obj))
s           return NULL;
s   %s(PyGtk_Get(obj))->%ss   }

(   s   StringIOs   impls   strings   lowers   objectss   names   attrnames   funcNames   writes   funcLeadTmpls   retTypes   keyss   boxeds   selfs   tps   funcCalls	   decodeRets   defss   funcDefTmpls   getvalue(   s   selfs   names   retTypes   attrnames   funcCalls   funcNames   impl(    (    s(   /usr/share/pygtk/1.2/codegen/generate.pys   get_attr_funcÊ s2    	c    su	  t  ƒ  } | i t | f ƒ t ƒ  } d } g  } g  } g  }	 t }
 t | ƒ t f  ƒ j o | d }
 | d } n | d j o$ | i d d ƒ | i d d ƒ n‘ | d	 j o | i d d ƒ np | t i ƒ  j o | i d
 d ƒ nI | d j o | i d d ƒ n( | t i ƒ  j o | i | d ƒ n x| D]	} | d } | d } | d d d d d d d d d f	 j o | d } n d } t } t | ƒ d j o¤ x | d D]‘ } t | ƒ t f  ƒ j o | d d j o- d | d } d | j o | d } n n5 t | ƒ t f  ƒ j o | d d j o
 t } n q·Wn | d j oY | i d d | | ƒ | o | d } n | d } | i d  | ƒ | i | ƒ n‘| d d! f j o@ | i d | | ƒ | d" } | i d  | ƒ | i | ƒ n>| d# d$ d% d& d' d( d f j o@ | i d$ | | ƒ | d) } | i d  | ƒ | i | ƒ nÜ| d* d+ f j o@ | i d+ | | ƒ | d, } | i d  | ƒ | i | ƒ n‰| d- j oY | i d d | | ƒ | d. } | i d/ ƒ | i d  | ƒ | i d0 | d1 ƒ n#| t i ƒ  j o™ | i | | | ƒ | o | i d d2 | d3 ƒ n | i d d2 | ƒ | d4 } | i d5 | ƒ | i | ƒ |	 i t t | d6 | | f ƒ nw| t  i ƒ  j o™ | i | | | ƒ | o | i d d2 | d3 ƒ n | i d d2 | ƒ | d4 } | i d5 | ƒ | i | ƒ |	 i t! t  | d6 | | f ƒ nË| t i ƒ  j o’| o† | d4 } | i d5 | ƒ | i d d2 | d7 ƒ | i | d | d3 ƒ |	 i t" | | t | | | | | f ƒ | i | ƒ n| oš | d. } | i |  i$ d8 ƒ | i d d2 | d3 ƒ | i | d | | ƒ | i d5 | ƒ |	 i t% | | t | d9 | d: f ƒ | i | ƒ na | d. } | i |  i$ d8 ƒ | i d d | ƒ | i d  | ƒ | i t | d; | d: ƒ n&| t i ƒ  j oÿ t | \ } } } | o… | i d d2 | d7 ƒ | i | d | d3 ƒ | d4 } | i d5 | ƒ |	 i t( | | | | | | | | f ƒ | i | ƒ n] | i d d | ƒ | d. } | i |  i$ | ƒ | i d  | ƒ | i | d< | d1 ƒ n d= | | f GHd  Sq=W| i t) | ƒ ƒ | i d> ƒ | i | ƒ | i d? ƒ | i | ƒ | i d@ ƒ | o* | i dA ƒ | i t* i+ | dA ƒ ƒ n | i dB ƒ | i t* i+ |	 d ƒ ƒ | d< t* i+ | dA ƒ d1 } |  i- | | | |
 ƒ o d  Sn | i dC ƒ |  i. i t/ | | f ƒ |  i i | i0 ƒ  ƒ d  S(D   Ns    i   i    s   strings   gchars   *rets   PyObjects   *py_rets   static_strings	   GtkObjects   GdkAtoms   rets   defaults   ifs   thens   elses   whiles   fors   dos   cases   selects   _i   s   =s    = s   |s   null-oks   chars   *s   zs   ss   &s   uchars   cs   bools   ints   uints   longs   ulongs   guints   is   floats   doubles   ds   FILEs   O!s   &PyFile_Types   PyFile_AsFile(s   )s   *py_s    = NULLs   Os   &py_s   py_s
    = Py_Nones
   PyGtk_Types   (PyGtk_Get(py_s   ))s   (PyGtk_Get(s   (s   %s: unknown arg type '%s's!       if (!PyArg_ParseTuple(args, "s   :s   "s   , s   ))
        return NULL;
s   }

(1   s   StringIOs   impls   writes   funcLeadTmpls   names   VarDefss   varDefss   parseStrs	   parseLists   argLists	   extraCodes   Nones   retArgss   types   retTypes   adds   objectss   keyss   boxeds   argss   args   argTypes   argNames   defaults   FALSEs   nulloks   lens   as   TRUEs   appends   enumss   enumCodeTmpls   flagss   flagCodeTmpls
   nullokTmpls   selfs   tps
   setVarTmpls   gets   news   nullokBoxedTmpls   strs   strings   joins   funcCalls	   decodeRets   defss   funcDefTmpls   getvalue(   s   selfs   names   retTypes   argss   as   gets   nulloks	   parseLists   args	   extraCodes   retArgss   argLists   funcCalls   defaults   parseStrs   varDefss   tps   news   argNames   argTypes   impl(    (    s(   /usr/share/pygtk/1.2/codegen/generate.pys   define_funcç s   		
 

( **

"



&
&
*
*
!
)
c    sf  t  } | o/ | d d j o
 t } n d | f GHd Sn | d j o+ | i d ƒ | i | ƒ | i d ƒ në| d j o" | i d	 | ƒ | i d
 ƒ n¼| d j o" | i d	 | ƒ | i d ƒ n| d d f j o+ | i d ƒ | i | ƒ | i d ƒ nO| d d d d d d f j p# | t i	 ƒ  j p | t
 i	 ƒ  j o+ | i d ƒ | i | ƒ | i d ƒ nß | d d f j o+ | i d ƒ | i | ƒ | i d ƒ n¡ | t i	 ƒ  j oH | i d	 | ƒ | i d ƒ | i d t | d ƒ | i d ƒ nF | t i	 ƒ  j o" | i d  | ƒ | i d! ƒ n d" | f GHd Sd Sd  S(#   Ni    s   null-oks   unknown return attribute '%s'i   s   nones       s.   ;
    Py_INCREF(Py_None);
    return Py_None;
s   static_strings       ret = %s;
s       if (ret) {
        return PyString_FromString(ret);
    } else {
        Py_INCREF(Py_None);
        return Py_None;
    }
s   strings­       if (ret) {
        py_ret = PyString_FromString(ret);
        g_free(ret);
        return py_ret;
    } else {
        Py_INCREF(Py_None);
        return Py_None;
    }
s   chars   uchars(       return PyString_fromStringAndSize(*(s   ));
s   bools   ints   uints   longs   ulongs   guints       return PyInt_FromLong(s   );
s   floats   doubles       return PyFloat_FromDouble(s       if (ret)
s           return %s(ret);
i   s,       Py_INCREF(Py_None);
    return Py_None;
s       ret = (GtkObject *) %s;
sX       if (ret)
        return PyGtk_New(ret);
    Py_INCREF(Py_None);
    return Py_None;
s   unknown return type '%s'(   s   FALSEs   nulloks   retArgss   TRUEs   retTypes   impls   writes   funcCalls   enumss   keyss   flagss   boxeds   objects(   s   selfs   impls   funcCalls   retTypes   retArgss   nullok(    (    s(   /usr/share/pygtk/1.2/codegen/generate.pys	   decodeRet sN    
E(   s   __init__s   unknowns   define_objects   get_attr_funcs   define_funcs   Nones	   decodeRet(    (    (    s(   /usr/share/pygtk/1.2/codegen/generate.pys   FunctionDefsParserµ s    	
		¹s   FilteringParserc      s;   d  Z  d d d „ Z d „  Z d „  Z d „  Z d „  Z RS(   sJ   A refinement of FunctionDefsParser with some common filter types
	built ins	   gtkmodules   &c    s,   t  i |  | | | ƒ h  |  _ g  |  _ d  S(   N(   s   FunctionDefsParsers   __init__s   selfs   inputs   prefixs
   typeprefixs   excludeLists   excludeGlob(   s   selfs   inputs   prefixs
   typeprefix(    (    s(   /usr/share/pygtk/1.2/codegen/generate.pys   __init__às    	c    sR   |  i i | ƒ o d Sn x, |  i D]! } t i | | ƒ o d Sn q% Wd Sd  S(   Ni    i   (   s   selfs   excludeLists   has_keys   names   excludeGlobs   globs   fnmatchs   fnmatchcase(   s   selfs   names   glob(    (    s(   /usr/share/pygtk/1.2/codegen/generate.pys   filterås    
 c    s7   |  i | ƒ o t i |  | | | ƒ n
 d | GHd  S(   Ns   %s: filtered out(   s   selfs   filters   names   FunctionDefsParsers   define_funcs   retTypes   args(   s   selfs   names   retTypes   args(    (    s(   /usr/share/pygtk/1.2/codegen/generate.pys   define_funcìs    c    sX   t  | ƒ i ƒ  } t d „  | ƒ } t d „  | ƒ } x | D] } t |  i	 | <q= Wd S(   s6   Adds the function names from file fname to excludeListc    s   |  d  S(   Niÿÿÿÿ(   s   x(   s   x(    (    s(   /usr/share/pygtk/1.2/codegen/generate.pys   <lambda>õs    c    s   |  o |  d d j S(   Ni    s   #(   s   x(   s   x(    (    s(   /usr/share/pygtk/1.2/codegen/generate.pys   <lambda>÷s    N(
   s   opens   fnames	   readliness   liness   maps   filters   names   Nones   selfs   excludeList(   s   selfs   fnames   names   lines(    (    s(   /usr/share/pygtk/1.2/codegen/generate.pys   addExcludeFileñs      c    s(   | |  i j o |  i i | ƒ n d  S(   N(   s   globs   selfs   excludeGlobs   append(   s   selfs   glob(    (    s(   /usr/share/pygtk/1.2/codegen/generate.pys   addExcludeGlobús    (   s   __doc__s   __init__s   filters   define_funcs   addExcludeFiles   addExcludeGlob(    (    (    s(   /usr/share/pygtk/1.2/codegen/generate.pys   FilteringParserÝs    				s   __main__s   d:o:hs   defs=s   output-prefix=s   exclude-file=s   exclude-globs	   register=s   helps   -ds   --defss   -os   --output-prefixs   --exclude-files   --exclude-globs
   --registers   --helps1   usage: generate.py -d defs file -o output-prefix
s   inputs   prefixs
   typeprefixs   &(7   s   syss   getopts   oss   strings   scmexprs	   cStringIOs   StringIOs   ImportErrors   fnmatchs   TRUEs   FALSEs   funcDefTmpls   funcLeadTmpls   enumCodeTmpls   flagCodeTmpls
   setVarTmpls   getTypeTmpls
   nullokTmpls   nullokBoxedTmpls   convSpecialCasess
   toUpperStrs   enumNames   conversionMacros   enumss   flagss   objectss   boxeds   VarDefss   Parsers   TypesParsers   FunctionDefsParsers   FilteringParsers   __name__s   argvs   optss   argss   Nones   defss   output_prefixs   exclude_filess   exclude_globs   opts   args   appends   exclude_globss   startParsings   hs   stderrs   writes   exits   parsers   files   addExcludeFiles   globs   addExcludeGlob((   s   opts   flagCodeTmpls   conversionMacros   FunctionDefsParsers   files   args   TRUEs   boxeds   nullokBoxedTmpls   getTypeTmpls   convSpecialCasess   getopts
   toUpperStrs   enumCodeTmpls   exclude_filess   defss   TypesParsers   parsers   strings   globs   argss   VarDefss   syss
   nullokTmpls   objectss   exclude_globs   FALSEs   enumss   funcLeadTmpls
   setVarTmpls   StringIOs   FilteringParsers   funcDefTmpls   enumNames   output_prefixs   flagss   fnmatchs   scmexprs   oss   opts(    (    s(   /usr/share/pygtk/1.2/codegen/generate.pys   ? s„   				W			ÿ 'ÿ )!! 

  