From: W. C. T. <ct...@un...> - 2001-03-19 20:47:02
|
I've been using jEdit to print a bunch of files (I find I prefer reading paper for learning large chunks of code) and it's pretty inconvenient. For starters, jEdit always defaults to the JVM defaults for printing, in my case (IBM JDK 1.3 for Linux) A4 paper. After browsing through the jEdit code, eventually I found where print formatting occurs (org.jgt.sp.jedit.Buffer.print()) and that's where I ran into trouble. jEdit allocates a Java PrintJob from the current View like so: PrintJob job = view.getToolkit().getPrintJob(view,name,null); Once the PrintJob is allocated, you can't change its behavior (other than with the Print dialog) and you can't override any of the defaults. How hard would it be to use the alternative getPrintJob( frame, title, JobAttributes, PageAttributes ) method, and to set up Global options pages to allow setting the default JobAttributes and PageAttributes? You'd need to build one or more Global options pages that map to the Job and Page attributes, and make certain they were available to the Buffer class, and you might want to change the print dialog to allow a user to change these on a once-off basis, but I think that'd be about it. If I had more time (a couple of days to learn the jEdit internals, and another day or so to set up the dialogs & store the settings) I could do this myself, but I really don't have the time. I could help test if someone else wanted to do the coding... Another neat feature would be the ability to print several buffers at one time, or to print a selection of files at once. Codewrite does this, but Codewrite is Windows-only, and I spend most of my time in Linux ... - Craig - |