I'm afraid I don't have the skills to offer a patch. Oh well, there are lots
of other ways to accomplish what I need.
Thanks for the quick answer!

On Mon, Apr 13, 2009 at 7:08 PM, RenĂ© Dudfield <[email protected]> wrote:

> hi,
>
> Sorry, the Event class doesn't let you add attributes(like Nicholas says).
>
> If you have a patch at the C level we can add an __eq__  since it seems
> like a good idea (I think).  Or maybe someone will implement it for you.
>
> Or maybe we could allow events to have a dictionary associated with them...
> so you can add methods and attributes like this...  So it acts more like a
> normal object.  Will have to think about the implications of this...
>
>
> cheers,
>
>
>
>
>
> On Tue, Apr 14, 2009 at 9:17 AM, Jordan Applewhite <
> [email protected]> wrote:
>
>> Hi!
>>
>> I thought it would be nice to add an __eq__ method to the
>> pygame.event.Event class at runtime.  This would let me use == (rich
>> comparison operator) on events in the manner of
>>
>> if pygame.event.wait() == trigger_event:
>>    pass
>>
>> I tried to do this with setattr like so (please pardon the one-liner):
>> setattr( pygame.event.Event.__class__,   '__eq__',  lambda self, other:
>> self.type == other.type )
>>
>> I've tried several variations on this idea, but the attribute seems to be
>> off-limits.  I keep getting errors like  "TypeError: can't set attributes of
>> built-in/extension type 'builtin_function_or_method'".  I notice that
>> calling pygame.event.Event.__class__ lists it as a "builtin function or
>> method.", but I'm not sure why this means I can't create the method.
>>
>> Could someone please point me in the right direction?  Thanks, and I'm
>> sorry if this is more about python than pygame.  I'm hoping it passes the
>> relevance threshold:)
>>
>>
>

Reply via email to