* Full author contact details are available in file CREDITS.
*/
-#ifndef QREF_H
-#define QREF_H
-
-#include "GuiDialogView.h"
+#ifndef GUIREF_H
+#define GUIREF_H
+#include "GuiDialog.h"
#include "ui_RefUi.h"
-#include <QDialog>
+#include "insets/InsetCommandParams.h"
#include <vector>
-class QListWidgetItem;
-class QCloseEvent;
+class QTreeWidgetItem;
namespace lyx {
namespace frontend {
-class GuiRef;
-
-class GuiRefDialog : public QDialog, public Ui::RefUi {
+class GuiRef : public GuiDialog, public Ui::RefUi
+{
Q_OBJECT
-public:
- GuiRefDialog(GuiRef * form);
- virtual void show();
+public:
+ GuiRef(GuiView & lv);
+ /// Dialog inherited methods
+ //@{
+ void enableView(bool enable);
+ //@}
-public Q_SLOTS:
+private Q_SLOTS:
void changed_adaptor();
void gotoClicked();
- void refHighlighted(QListWidgetItem *);
+ void filterLabels();
+ void refHighlighted(QTreeWidgetItem *);
void selectionChanged();
- void refSelected(QListWidgetItem *);
- void sortToggled(bool);
+ void refSelected(QTreeWidgetItem *);
+ void sortToggled();
+ void caseSensitiveToggled();
+ void groupToggled();
void updateClicked();
-
-protected Q_SLOTS:
- void reset_dialog();
-protected:
- void closeEvent(QCloseEvent * e);
-private:
- GuiRef * form_;
-};
-
-
-class ControlRef;
-
-// full qualification because qt4 has also a ControlRef type
-class GuiRef
- : public QController<lyx::frontend::ControlRef, GuiView<GuiRefDialog> >
-{
-public:
- friend class GuiRefDialog;
-
- GuiRef(Dialog &);
-
-protected:
- virtual bool isValid();
+ void resetDialog();
+ void dialogRejected();
private:
+ ///
+ bool isBufferDependent() const { return true; }
+ /** disconnect from the inset when the Apply button is pressed.
+ Allows easy insertion of multiple references. */
+ bool disconnectOnApply() const { return true; }
+ ///
+ void gotoRef(std::string const &);
+ ///
+ void gotoBookmark();
+ ///
+ void closeEvent(QCloseEvent * e);
+ ///
+ bool isValid();
/// apply changes
- virtual void apply();
- /// build dialog
- virtual void build_dialog();
+ void applyView();
/// update dialog
- virtual void update_contents();
+ void updateContents();
/// is name allowed for this ?
bool nameAllowed();
-
/// is type allowed for this ?
bool typeAllowed();
-
/// go to current reference
void gotoRef();
-
/// set go back button
void setGoBack();
-
/// set goto ref button
void setGotoRef();
-
/// re-enter references
void redoRefs();
-
/// update references
void updateRefs();
+ ///
+ bool initialiseParams(std::string const & data);
+ /// clean-up on hide.
+ void clearParams() { params_.clear(); }
+ /// clean-up on hide.
+ void dispatchParams();
- /// sort or not persistent state
- bool sort_;
+private:
+ ///
+ InsetCommandParams params_;
/// went to a reference ?
bool at_ref_;
-
/// the last reference entered or examined
QString last_reference_;
-
/// store the buffer settings
int restored_buffer_;
-
+ /// store the last active buffer
+ int active_buffer_;
/// the references
std::vector<docstring> refs_;
};
} // namespace frontend
} // namespace lyx
-#endif // QREF_H
+#endif // GUIREF_H