2 /* This file is part of
3 * ======================================================
5 * LyX, The Document Processor
7 * Copyright (C) 2000 The LyX Team.
11 *======================================================*/
13 #ifndef FORM_PARAGRAPH_H
14 #define FORM_PARAGRAPH_H
16 #include <boost/smart_ptr.hpp>
17 #include "FormBaseDeprecated.h"
20 #include "lyxparagraph.h"
27 struct FD_form_tabbed_paragraph;
28 struct FD_form_paragraph_general;
29 struct FD_form_paragraph_extra;
31 /** This class provides an XForms implementation of the FormParagraph Popup.
32 * @author Jürgen Vigna
34 class FormParagraph : public FormBaseBD {
37 FormParagraph(LyXView *, Dialogs *);
39 /// Pointer to the actual instantiation of the ButtonController.
40 virtual xformsBC & bc();
41 /** Redraw the form (on receipt of a Signal indicating, for example,
42 that the xforms colours have been re-mapped). */
43 virtual void redraw();
49 virtual void update();
50 /// Filter the inputs on callback from xforms
51 virtual bool input(FL_OBJECT * ob, long);
54 virtual FL_FORM * form() const;
57 void general_update();
68 /// Typedefinitions from the fdesign produced Header file
69 FD_form_tabbed_paragraph * build_tabbed_paragraph();
71 FD_form_paragraph_general * build_paragraph_general();
74 FD_form_paragraph_extra * build_paragraph_extra();
76 /// Real GUI implementation.
77 boost::scoped_ptr<FD_form_tabbed_paragraph> dialog_;
79 boost::scoped_ptr<FD_form_paragraph_general> general_;
82 boost::scoped_ptr<FD_form_paragraph_extra> extra_;
84 /// The ButtonController
85 ButtonController<NoRepeatedApplyReadOnlyPolicy, xformsBC> bc_;
90 xformsBC & FormParagraph::bc()