#define GUIREF_H
#include "GuiDialog.h"
-#include "ControlRef.h"
#include "ui_RefUi.h"
+#include "insets/InsetCommandParams.h"
+
#include <vector>
-class QListWidgetItem;
+class QTreeWidgetItem;
namespace lyx {
namespace frontend {
-class GuiRefDialog : public GuiDialog, public Ui::RefUi
+class GuiRef : public GuiDialog, public Ui::RefUi
{
Q_OBJECT
public:
- GuiRefDialog(LyXView & lv);
+ GuiRef(GuiView & lv);
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();
- void reset_dialog();
+ void resetDialog();
+ void dialogRejected();
private:
///
- void showView();
+ 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);
- /// parent controller
- ControlRef & controller() const;
///
bool isValid();
/// apply changes
void applyView();
/// update dialog
- void update_contents();
+ void updateContents();
/// is name allowed for this ?
bool nameAllowed();
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();
+
+private:
+ ///
+ InsetCommandParams params_;
- /// sort or not persistent state
- bool sort_;
/// 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_;
};