layout.label not displaying

I am modifying an existing add-on - Render_time.py - to add another label to the panel, but can’t figure out why it isn’t working - here is the code snippet:
if timer[“is_rendering”] and scene.frame_current != scene.frame_start:
row = layout.row()
row.label(text = "Estimated completion xxx: " + str(timedelta(seconds = (timer[“average”] * (scene.frame_end - scene.frame_current)))))
row.label(text = "Completion time: " + time.time())

The “Completion time:” isn’t displaying - the formula isn’t correct, it is just a place holder for now.

Any advice is welcomed.

If I had to bet, I’d guess that your condition is never true (probably the ‘timer[“is_rendering”]’) part, which is why the row and label’s aren’t created or displayed.

I suggest you send out print messages above the if statement, print the timer dict (you can use json.dumps for a nicer representation if you like) and see if the value you’re expecting ever comes True.

That if statement does end up true when rendering frames - it all works, but I added the “Completion time” label. The Estimated completion label is displayed. This add-on is from http://wiki.blender.org/index.php/Extensions:2.6/Py/Scripts/Render/Render_Time_Estimation

Maybe you have to cast time.time() into a string?


row.label(text = "Completion time: %s " % time.time())

That was it - thank you - I used str(time.time())