]> git.lyx.org Git - lyx.git/blob - src/frontends/xforms/FormPrint.h
Wrap most of the frontend code up inside namespace lyx::frontend.
[lyx.git] / src / frontends / xforms / FormPrint.h
1 // -*- C++ -*-
2 /**
3  * \file FormPrint.h
4  * This file is part of LyX, the document processor.
5  * Licence details can be found in the file COPYING.
6  *
7  * \author Allan Rae
8  * \author Angus Leeming
9  *
10  * Full author contact details are available in file CREDITS.
11  */
12
13 #ifndef FORMPRINT_H
14 #define FORMPRINT_H
15
16 #include "FormDialogView.h"
17 #include "RadioButtonGroup.h"
18
19 namespace lyx {
20 namespace frontend {
21
22 class ControlPrint;
23 struct FD_print;
24
25 /** This class provides an XForms implementation of the FormPrint Dialog.
26     The print dialog allows users to print their documents.
27  */
28 class FormPrint
29         : public FormController<ControlPrint, FormView<FD_print> > {
30 public:
31         ///
32         FormPrint(Dialog &);
33 private:
34         /// Apply from dialog
35         virtual void apply();
36         /// Build the dialog
37         virtual void build();
38         /// Update the dialog.
39         virtual void update();
40
41         /// Filter the inputs on callback from xforms
42         virtual ButtonPolicy::SMInput input(FL_OBJECT *, long);
43
44         /// print target
45         RadioButtonGroup target_;
46         /// all pages or from/to
47         RadioButtonGroup all_pages_;
48 };
49
50 } // namespace frontend
51 } // namespace lyx
52
53 #endif // FORMPRINT_H