Path: utzoo!attcan!utgpu!jarvis.csri.toronto.edu!mailrus!cwjcc!gatech!ncsuvx!ecemwl!jnh From: jnh@ecemwl.ncsu.edu (Joseph N. Hall) Newsgroups: comp.sys.mac.programmer Subject: More Silly Behavior from THINK's Class Library Message-ID: <3874@ncsuvx.ncsu.edu> Date: 6 Sep 89 11:27:55 GMT Sender: news@ncsuvx.ncsu.edu Reply-To: jnh@ecemwl.UUCP (Joseph N. Hall) Organization: North Carolina State University Lines: 31 Ever tried printing a pane with subpanes that needed to be informed that printing was about to commence? It turns out that ONLY your document's "main pane" receives the AboutToPrint(), PrintPage(), and DonePrinting() messages. I think this is totally incorrect behavior. Your main pane AND ALL ITS SUBPANES should receive these messages during printing. After all, the main pane AND its subpanes (subviews) are ALL printed, since they output to the printer port through DrawAll(). I have a class, for example, that relies on subpanes for printing headers and footers, which remain invisible until printing commences. At print- time, I have to 1) make them visible, and 2) expand their frames to meet the page borders. Currently, the header and footer pane classes override AboutToPrint() etc., which I call explicitly from my main editing pane's AboutToPrint() etc. methods. But I think the best approach, by far, would be to revise CDocument (or whatever, I forget) to send these messages recursively to all of the main pane's subviews. I'm currently treating the Class Library as read-only, since I want to be able to distribute sources of my own as easily as possible. I hope that some of the minor glitches (like this) will be dealt with in future releases so that I'm not tempted to deal with them myself ... v v sssss|| joseph hall || 4116 Brewster Drive v v s s || jnh@ecemwl.ncsu.edu (Internet) || Raleigh, NC 27606 v sss || SP Software/CAD Tool Developer, Mac Hacker and Keyboardist -----------|| Disclaimer: NCSU may not share my views, but is welcome to.