Q: How do I get a nice printing dialog for non-GNOME applications?
A: Yeah, it is annoying figuring out a good way to print from like Firefox or xpdf. They have super-primitive printing systems, no way to configure printer properties, etc. KDE has a program called kprinter, which you can tell other apps to print with. Programs like firefox are configured to send kprinter its print jobs, and kprinter presents you with a cool dialog that you can configure # copies, printer settings, etc. GNOME currently has no such feature, but they're working on such a system for the next GNOME release.
Though GNOME has no built-in printing managers (unlike KDE with kprinter), you have a few choices:
1. install kprinter from KDE.
Simply install kdeprint with apt or synaptic. Instruct your program to issue the command kprinter to print. I do not recommend this solution because you need to initialize KDE libs every time you print, which could be time-consuming on older systems.
2. Use the X Printing Panel.
Use apt or synaptic to install xpp. This is non-desktop-environment specific, and therefore looks plain and ugly inside GNOME. Nevertheless, it's a great printing program. Use in the same fashion as kprinter: set it as the printing command.
3. Use gtklp.
Use apt or synaptic to install gtklp. This is a GTK program, so it'll "fit in" with the rest of your GNOME. I recommend this program. Use in same fashion as others.