Email lists > Melbourne Python Users Group > Re: [melbourne-pug] Simple syntactic error? > Re: [melbourne-pug] Simple syntactic error?

Re: [melbourne-pug] Simple syntactic error?




This post if a part of  this thread

2008-05-22 17:53:01
Re: Simple syntactic error?

Are you certain cb_calling is even being called?  If it's not, that'll be why your variable isn't carrying any value.

John's right, cb_calling should definitely declare state as global - and for style, I'd want the global declaration in keys() as well (not strictly necessary, but good form).

For debug, I'd drop either an "import pdb ; pdb.set_trace()" (and read up on how to use pdb, it's your friend ;) or a "print args" into the start of cb_calling, see exactly when it's called and what it's doing.  But if you're not getting any errors, then it's not a syntactic issue.

KevinL

On 23/05/2008, at 05:53 , g sobers wrote:

Appreciate the response.

Are you getting an AttributeError in keys() or is state just None.

No errors, per se, are generated. So, state=none seems most likely.


It looks like cb_calling needs to declare state as global

def cb_calling(args):
  global state
  state = args[0]

As regards to your suggestion, I just implemented it - to no avail. Same conditions persist.

Where else should I be looking?

Best,
wirefree



On 5/22/08, John La Rooy < john.larooygmail.com">john.larooygmail.com> wrote:
Are you getting an AttributeError in keys() or is state just None.
It looks like cb_calling needs to declare state as global

def cb_calling(args):
&nbsp;  global state
&nbsp;  state = args[0]

On Fri, May 23, 2008 at 5:10 AM, g sobers < g.forumzgmail.com" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">g.forumzgmail.com> wrote:
G'day!

Following is a small PyS60 script. The error seems related to basic syntax - "state" in keys() is not recognized although defined globally.

Would appreciate assistance.

=============================================
import appuifw, key_codes, e32, telephone
state = None

def keys(event):
 &nbsp; if event['keycode'] == key_codes.EKeyYes:
 &nbsp; &nbsp; appuifw.note(u"Doesn't Matter")
 &nbsp;elif (event['keycode'] == key_codes.EKeyYes) and (state == telephone.EStatusConnected):
 &nbsp; &nbsp; appuifw.note(u"Yes was pressed and call active")

def cb_calling(args):
 &nbsp; state = args[0]

def quit():
 &nbsp; app_lock.signal()

telephone.call_state(cb_calling)
canvas = appuifw.Canvas(event_callback = keys)
appuifw.app.body = canvas
appuifw.app.exit_key_handler = quit
app_lock = e32.Ao_lock()
app_lock.wait()
==============================================

Best,
wirefree

_______________________________________________
melbourne-pug mailing list
melbourne-pugpython.org" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">melbourne-pugpython.org
http://mail.python.org/mailman/listinfo/melbourne-pug



_______________________________________________
melbourne-pug mailing list
python.org">melbourne-pugpython.org
http://mail.python.org/mailman/listinfo/melbourne-pug


_______________________________________________
melbourne-pug mailing list
melbourne-pugpython.org">melbourne-pugpython.org
http://mail.python.org/mailman/listinfo/melbourne-pug

about | contact  Other archives ( Real Estate discussion Medical topics )