2 /* This file is part of
3 * ======================================================
5 * LyX, The Document Processor
7 * Copyright 2000 The LyX Team.
9 * ====================================================== */
11 * FormPrint Interface Class
17 #include "DialogBase.h"
18 #include "boost/utility.hpp"
20 #include <gtk--/widget.h>
21 #include <gtk--/radiobutton.h>
22 #include <gtk--/checkbutton.h>
23 #include <gtk--/spinbutton.h>
24 #include <gnome--/entry.h>
25 #include <gnome--/file-entry.h>
35 #ifdef SIGC_CXX_NAMESPACES
36 using SigC::Connection;
39 /** This class provides an Gnome implementation of the FormPrint Dialog.
40 The print dialog allows users to print their documents.
42 class FormPrint : public DialogBase, public noncopyable {
44 /**@name Constructors and Destructors */
46 /// #FormPrint x(LyXFunc ..., Dialogs ...);#
47 FormPrint(LyXView *, Dialogs *);
54 /**@name Slot Methods */
56 /// Create the dialog if necessary, update it and display it.
60 /// Update the dialog.
62 void updateSlot(bool = false);
67 /**@name Dialog internal methods */
73 /**@name Private Data */
75 /// Real GUI implementation.
76 Gtk::Widget * dialog_;
78 Gtk::RadioButton * print_all_;
79 Gtk::RadioButton * print_odd_;
80 Gtk::RadioButton * print_even_;
82 Gtk::CheckButton * print_pages_;
84 Gtk::SpinButton * print_from_;
85 Gtk::SpinButton * print_to_;
87 Gtk::RadioButton * order_normal_;
88 Gtk::RadioButton * order_reverse_;
90 Gtk::CheckButton * copies_unsorted_;
91 Gtk::SpinButton * copies_count_;
93 Gtk::RadioButton * printto_printer_;
94 Gtk::RadioButton * printto_file_;
96 Gnome::Entry * printto_printcommand_;
97 Gnome::FileEntry * printto_fileentry_;
99 /// Which LyXView do we belong to?
102 /// Update connection.