]> git.lyx.org Git - lyx.git/blobdiff - src/frontends/xforms/FormTabular.h
Tiny clean-ups.
[lyx.git] / src / frontends / xforms / FormTabular.h
index ae5b498a3c4659edaa6e6e9de3e7c2ffcc01a7da..e6e8529b863086a8efc8d68c53bca2f71fcb9cf2 100644 (file)
@@ -1,85 +1,68 @@
 // -*- C++ -*-
-/* This file is part of
- * ======================================================
- * 
- *           LyX, The Document Processor
- *      
- *         Copyright 1995 Matthias Ettrich
- *          Copyright 1995-2000 The LyX Team.
+/**
+ * \file FormTabular.h
+ * This file is part of LyX, the document processor.
+ * Licence details can be found in the file COPYING.
  *
- *======================================================*/
-/* FormTabular.h
- * FormTabular Interface Class
+ * \author Jürgen Vigna
+ *
+ * Full author contact details are available in file CREDITS.
  */
 
 #ifndef FORMTABULAR_H
 #define FORMTABULAR_H
 
-#include "FormInset.h"
+#include "FormDialogView.h"
+#include <boost/scoped_ptr.hpp>
 
 class InsetTabular;
-struct FD_form_tabular;
-struct FD_form_tabular_options;
-struct FD_form_column_options;
-struct FD_form_cell_options;
-struct FD_form_longtable_options;
+class ControlTabular;
+struct FD_tabular;
+struct FD_tabular_options;
+struct FD_tabular_column;
+struct FD_tabular_cell;
+struct FD_tabular_longtable;
 
 /** This class provides an XForms implementation of the FormTabular Dialog.
     The tabular dialog allows users to set/save their tabular.
  */
-class FormTabular : public FormInset {
+class FormTabular
+       : public FormController<ControlTabular, FormView<FD_tabular> > {
 public:
-       /// #FormTabular x(LyXFunc ..., Dialogs ...);#
-       FormTabular(LyXView *, Dialogs *);
-       ///
-       ~FormTabular();
+
+       FormTabular(Dialog &);
 
 private:
        /** Redraw the form (on receipt of a Signal indicating, for example,
-           that the xform colours have been re-mapped). */
+           that the xforms colours have been re-mapped). */
        virtual void redraw();
-       /// Disconnect signals. Also perform any necessary housekeeping.
-       virtual void disconnect();
 
-       /// Slot launching dialog to an existing inset
-       void showInset(InsetTabular *);
-       /// Slot launching dialog to an existing inset
-       void updateInset(InsetTabular *);
+       /// not used
+       virtual void apply() {}
        /// Update dialog before showing it
        virtual void update();
        /// Build the dialog
        virtual void build();
        /// Filter the inputs
-       virtual bool input(FL_OBJECT *, long);
-       /// Pointer to the actual instantiation of the xform's form
-       virtual FL_FORM * form() const;
+       virtual ButtonPolicy::SMInput input(FL_OBJECT *, long);
 
-       /// Fdesign generated methods
-       FD_form_tabular * build_tabular();
-       ///
-       FD_form_tabular_options * build_tabular_options();
        ///
-       FD_form_column_options * build_column_options();
-       ///
-       FD_form_cell_options * build_cell_options();
-       ///
-       FD_form_longtable_options * build_longtable_options();
+       virtual int checkLongtableOptions(FL_OBJECT *, std::string &);
 
-       /// Real GUI implementation.
-       FD_form_tabular * dialog_;
        ///
-       FD_form_tabular_options * tabular_options_;
+       boost::scoped_ptr<FD_tabular_options> tabular_options_;
        ///
-       FD_form_column_options * column_options_;
+       boost::scoped_ptr<FD_tabular_column> column_options_;
        ///
-       FD_form_cell_options * cell_options_;
+       boost::scoped_ptr<FD_tabular_cell> cell_options_;
+       ///
+       boost::scoped_ptr<FD_tabular_longtable> longtable_options_;
+
        ///
-       FD_form_longtable_options * longtable_options_;
+       bool closing_;
 
-       /// pointer to the inset passed through showInset
-       InsetTabular * inset_;
        ///
        int actCell_;
 };
 
-#endif
+#endif // FORMTABULAR_H