Printing problem...I'd hate to say a "bug" but....

Barry Levine themacguy at macosx.com
Sat Aug 16 17:26:00 EDT 2003


I have a stack that I print using a script. I show and hide various 
controls and images in an inner loop and sequence throught the cards 
with an outer loop. I "open printing" at the start and "close printing" 
at the end (outside the loops). Everything works perfectly (in both OSX 
and Windows). However...

I installed the program on the customer's PC. She has a cheap HP inkjet 
that she has configured to open a status window when the printing 
begins. The problem is that the status window opens -before- Rev has 
completed the script -and- it opens above my program's window. This 
results in the printed pages showing my program's cards but with the 
portion of the HP Status window overlapping my program's window also 
appearing in the printed pages. I am taking a screen shot thusly:

import snapshot from rect globalloc(the topleft of player 1)& "," & 
globalloc(the botright of player 1)

...and the HP Status window, overlapping my player object as it does, 
appears in the printout.

How could this happen if my program uses the "open printing" and "close 
printing" commands? Should the printer -not- be notified that there's a 
print job until the "close printing" command is issued?

What I have not done is lock the screen during this script so you do 
see the objects appearing and disappearing, and the cards changing as 
well. I imagine I'll lock the screen when we get closer to the release 
version; I wanted to keep everything visible during development so I 
can spot where things get mucked up (assuming I don't write flawless 
code ;-)  ).

I can turn off this HP Status Monitor on -this- PC but I can't do that 
on every PC in which this program will be installed. I don't even know 
what would happen (yet) if something like the Epson Staus Monitor 
popped up on the Mac while my program was running (but I would imagine 
I'd get the same result).

This does seem like a bug in the way Rev handles the printing routine. 
If "open printing" is supposed to queue up everything until I issue the 
"close printing" command, why would the HP window appear before the 
script has even cycled through all the cards. The first few cards are 
okay but they're already past by the time the HP window appears. Does 
Rev let the print command "leak out" to the OS before "close printing" 
happens?

BTW, this PC is running XP Home though that probably has nothing to do 
with it.

So, anyone have any ideas? I can provide my script if you wish to see 
it.

Thanks,
Barry




More information about the use-livecode mailing list