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