3 * \file ControlTabular.h
4 * This file is part of LyX, the document processor.
5 * Licence details can be found in the file COPYING.
9 * Full author contact details are available in file CREDITS
11 * This is pretty icky, we should really be able to use
12 * ControlInset. We can't because there are no params for
16 #ifndef CONTROLTABULAR_H
17 #define CONTROLTABULAR_H
19 #include "ControlConnections.h"
23 #include <boost/signals/connection.hpp>
27 class ControlTabular : public ControlConnectBD {
30 ControlTabular(LyXView &, Dialogs &);
33 InsetTabular * inset() const;
35 /// get the contained tabular
36 LyXTabular * tabular() const;
39 void set(LyXTabular::Feature, string const & arg = string());
41 /// slot launching dialog to an existing inset.
42 void showInset(InsetTabular *);
45 void updateInset(InsetTabular *);
47 /// return true if units should default to metric
50 /// return true if actual cell is multicolumn
51 bool isMulticolumnCell() const;
55 /// we can't do this ...
56 virtual void apply() {};
57 /// disconnect signals and hide View.
59 /// update the dialog.
60 virtual void update();
62 /** Instantiation of ControlConnectBD private virtual method.
63 Slot connected to update signal. */
64 virtual void updateSlot(bool);
67 void show(InsetTabular *);
69 void connectInset(InsetTabular *);
71 /// pointer to the inset passed through connectInset
72 InsetTabular * inset_;
73 /// inset::hide connection.
74 boost::signals::connection ih_;
76 /// is the dialog built ?
80 #endif // CONTROLTABULAR_H