[Pythonmac-SIG] Calling a python objc class method from cocoa

Saptarshi Guha saptarshi.guha at gmail.com
Sun Oct 19 07:05:21 CEST 2008


Thank you! I got it. I can;t send numbers to the python method.
I have to send NSObjects.
Got it.
Thanks
Regards
Saptarshi

On Oct 18, 2008, at 9:09 PM, s s wrote:

> Try using:
>
> 	def setdefaulttimeout_(cls,timeout):
>
> Since your method would be setdefaulttimeout: in objc, it's  
> necessary to replace the ':' with an underscore in your Python code.
>
> S
> aka Steve Steiner
>
>
> On Oct 18, 2008, at 6:15 PM, Saptarshi Guha wrote:
>> Hello,
>> I have a mainly cocoa app which uses some Python modules.  I need  
>> to call a classmethod of a NSObject subclass written in
>> python from Cocoa
>> =Structure=
>>
>> After loading the Python interpreter, i call this method
>>
>> -(void)initialize
>> {
>> 	Class pySocket = NSClassFromString(@"pySocket");
>> 	NSLog(@"%@",pySocket);
>> 	[pySocket setdefaulttimeout:10];
>> }
>>
>> pySocket:
>>
>> from Foundation import *
>> import socket
>> class pySocket(NSObject):
>> 	#no init method right now, only want to run class methods
>>     @classmethod
>>     def setdefaulttimeout(cls,timeout):
>>         socket.setdefaulttimeout(timeout)
>>
>> ==Error==
>>
>> I get the following error:
>> 2008-10-18 17:48:14.227 argnostic[10697:10b] pySocket
>> 2008-10-18 17:48:14.228 argnostic[10697:10b] *** +[pySocket  
>> setdefaulttimeout:]: unrecognized selector sent to class 0x3b33d0
>> 2008-10-18 17:48:14.228 argnostic[10697:10b] *** +[pySocket  
>> setdefaulttimeout:]: unrecognized selector sent to class 0x3b33d0
>>
>> How then do I call a Python NSObject subclasses classmethods from  
>> cocoa?
>> Thank you
>> Saptarshi
>>
>>
>> Saptarshi Guha | saptarshi.guha at gmail.com | http://www.stat.purdue.edu/~sguha
>> _______________________________________________
>> Pythonmac-SIG maillist  -  Pythonmac-SIG at python.org
>> http://mail.python.org/mailman/listinfo/pythonmac-sig
>
> On Oct 18, 2008, at 6:15 PM, Saptarshi Guha wrote:
>
>> Hello,
>> I have a mainly cocoa app which uses some Python modules.  I need  
>> to call a classmethod of a NSObject subclass written in
>> python from Cocoa
>> =Structure=
>>
>> After loading the Python interpreter, i call this method
>>
>> -(void)initialize
>> {
>> 	Class pySocket = NSClassFromString(@"pySocket");
>> 	NSLog(@"%@",pySocket);
>> 	[pySocket setdefaulttimeout:10];
>> }
>>
>> pySocket:
>>
>> from Foundation import *
>> import socket
>> class pySocket(NSObject):
>> 	#no init method right now, only want to run class methods
>>     @classmethod
>>     def setdefaulttimeout(cls,timeout):
>>         socket.setdefaulttimeout(timeout)
>>
>> ==Error==
>>
>> I get the following error:
>> 2008-10-18 17:48:14.227 argnostic[10697:10b] pySocket
>> 2008-10-18 17:48:14.228 argnostic[10697:10b] *** +[pySocket  
>> setdefaulttimeout:]: unrecognized selector sent to class 0x3b33d0
>> 2008-10-18 17:48:14.228 argnostic[10697:10b] *** +[pySocket  
>> setdefaulttimeout:]: unrecognized selector sent to class 0x3b33d0
>>
>> How then do I call a Python NSObject subclasses classmethods from  
>> cocoa?
>> Thank you
>> Saptarshi
>>
>>
>> Saptarshi Guha | saptarshi.guha at gmail.com | http://www.stat.purdue.edu/~sguha
>> _______________________________________________
>> Pythonmac-SIG maillist  -  Pythonmac-SIG at python.org
>> http://mail.python.org/mailman/listinfo/pythonmac-sig
>

Saptarshi Guha | saptarshi.guha at gmail.com | http://www.stat.purdue.edu/~sguha
Underlying Principle of Socio-Genetics:
	Superiority is recessive.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/pythonmac-sig/attachments/20081019/c1e8193b/attachment-0001.htm>


More information about the Pythonmac-SIG mailing list