#include "support/strfwd.h"
-#include <QList>
#include <QString>
class QWidget;
-class QLineEdit;
namespace lyx {
DOCBOOK
};
-/// CheckedLineEdit
-// FIXME: Get rid of CheckedLineEdit in ButtonController and rename this one
-// to it.
-class CheckedLineEdit2
-{
-public:
- CheckedLineEdit2(QLineEdit * input, QWidget * label = 0)
- : input_(input), label_(label)
- {}
- ///
- bool check() const;
-
-private:
- // non-owned
- QLineEdit * input_;
- QWidget * label_;
-};
-
-
-typedef QList<CheckedLineEdit2> CheckedLineEdits;
-
-
/** \c Dialog collects the different parts of a Model-Controller-View
* split of a generic dialog together.
*/
/// Enable the Controller to dispatch its data back to the LyX kernel.
virtual void dispatchParams() = 0;
+ /** \return true if the dialog should be updated when the
+ * buffer has changed.
+ */
+ virtual bool isBufferDependent() const = 0;
+
/** \return true if the dialog should be shown only when
* a buffer is open.
*/
- virtual bool isBufferDependent() const = 0;
+ virtual bool needBufferOpen() const = 0;
/** \return true if the dialog can apply data also
* for ReadOnly buffers.
//@{
bool isBufferAvailable() const;
bool isBufferReadonly() const;
- QString bufferFilepath() const;
+ QString bufferFilePath() const;
//@}
/// The type of the current buffer.
* We should aim to reduce/remove these from the interface.
*/
//@{
- GuiView const & lyxview() const { return *lyxview_; }
+ GuiView const & lyxview() const { return lyxview_; }
+ /// Current buffer
Buffer const & buffer() const;
+ /// Main document buffer
+ Buffer const & documentBuffer() const;
+ /// Current BufferView
BufferView const * bufferview() const;
//@}
void setTitle(QString const & title) { title_ = title; }
///
virtual void apply();
- /// Add a widget to the list of all widgets whose validity should
- /// be checked explicitly when the buttons are refreshed.
- void addCheckedWidget(QLineEdit * input, QWidget * label = 0);
- /// \return true if all CheckedWidgets are in a valid state.
- bool checkWidgets() const;
+ /// To be called when the buffer view has changed
+ virtual void onBufferViewChanged() = 0;
private:
/** The Dialog's name is the means by which a dialog identifies
///
QString title_;
///
- GuiView * lyxview_;
+ GuiView & lyxview_;
/// intentionally unimplemented, therefore uncopiable
Dialog(Dialog const &);
void operator=(Dialog const &);
-
- ///
- CheckedLineEdits checked_line_edits_;
};