mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-11-26 11:16:55 +00:00
Simplify Dialog::name() handling.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21736 a592a061-630c-0410-9148-cb99ea01b6c8
This commit is contained in:
parent
d4b02ad711
commit
10cc0a8842
@ -19,18 +19,29 @@
|
|||||||
#include "FuncStatus.h"
|
#include "FuncStatus.h"
|
||||||
#include "LyXFunc.h"
|
#include "LyXFunc.h"
|
||||||
|
|
||||||
|
#include <string>
|
||||||
|
|
||||||
namespace lyx {
|
namespace lyx {
|
||||||
namespace frontend {
|
namespace frontend {
|
||||||
|
|
||||||
|
|
||||||
|
Dialog::Dialog(GuiView & lv, std::string const & name)
|
||||||
|
: lyxview_(&lv), name_(name.c_str())
|
||||||
|
{}
|
||||||
|
|
||||||
|
|
||||||
Dialog::~Dialog()
|
Dialog::~Dialog()
|
||||||
{}
|
{}
|
||||||
|
|
||||||
|
|
||||||
|
std::string Dialog::name() const
|
||||||
|
{
|
||||||
|
return name_;
|
||||||
|
}
|
||||||
|
|
||||||
bool Dialog::canApply() const
|
bool Dialog::canApply() const
|
||||||
{
|
{
|
||||||
FuncRequest const fr(getLfun(), name());
|
FuncRequest const fr(getLfun(), name_);
|
||||||
FuncStatus const fs(getStatus(fr));
|
FuncStatus const fs(getStatus(fr));
|
||||||
return fs.enabled();
|
return fs.enabled();
|
||||||
}
|
}
|
||||||
@ -42,15 +53,15 @@ void Dialog::dispatch(FuncRequest const & fr) const
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void Dialog::updateDialog(std::string const & name) const
|
void Dialog::updateDialog() const
|
||||||
{
|
{
|
||||||
dispatch(FuncRequest(LFUN_DIALOG_UPDATE, name));
|
dispatch(FuncRequest(LFUN_DIALOG_UPDATE, name_));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void Dialog::disconnect(std::string const & name) const
|
void Dialog::disconnect() const
|
||||||
{
|
{
|
||||||
lyxview_->disconnectDialog(name);
|
lyxview_->disconnectDialog(name_);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -47,7 +47,8 @@ public:
|
|||||||
/// \param lv is the access point for the dialog to the LyX kernel.
|
/// \param lv is the access point for the dialog to the LyX kernel.
|
||||||
/// \param name is the identifier given to the dialog by its parent
|
/// \param name is the identifier given to the dialog by its parent
|
||||||
/// container.
|
/// container.
|
||||||
Dialog(GuiView & lv) : lyxview_(&lv) {}
|
Dialog(GuiView & lv, std::string const & name);
|
||||||
|
|
||||||
virtual ~Dialog();
|
virtual ~Dialog();
|
||||||
|
|
||||||
/** \name Container Access
|
/** \name Container Access
|
||||||
@ -107,7 +108,7 @@ public:
|
|||||||
//@}
|
//@}
|
||||||
|
|
||||||
///
|
///
|
||||||
virtual std::string name() const = 0;
|
std::string name() const;
|
||||||
|
|
||||||
//@{
|
//@{
|
||||||
/** Enable the controller to initialise its data structures.
|
/** Enable the controller to initialise its data structures.
|
||||||
@ -188,7 +189,7 @@ public:
|
|||||||
* It must, therefore, ask the kernel to provide this information.
|
* It must, therefore, ask the kernel to provide this information.
|
||||||
* \param name is used to identify the dialog to the kernel.
|
* \param name is used to identify the dialog to the kernel.
|
||||||
*/
|
*/
|
||||||
void updateDialog(std::string const & name) const;
|
void updateDialog() const;
|
||||||
|
|
||||||
/** A request from the Controller that future changes to the data
|
/** A request from the Controller that future changes to the data
|
||||||
* stored by the dialog are not applied to the inset currently
|
* stored by the dialog are not applied to the inset currently
|
||||||
@ -196,7 +197,7 @@ public:
|
|||||||
* a new inset at the cursor position.
|
* a new inset at the cursor position.
|
||||||
* \param name is used to identify the dialog to the kernel.
|
* \param name is used to identify the dialog to the kernel.
|
||||||
*/
|
*/
|
||||||
void disconnect(std::string const & name) const;
|
void disconnect() const;
|
||||||
|
|
||||||
/** \name Kernel Wrappers
|
/** \name Kernel Wrappers
|
||||||
* Simple wrapper functions to Buffer methods.
|
* Simple wrapper functions to Buffer methods.
|
||||||
@ -229,9 +230,13 @@ protected:
|
|||||||
virtual void apply() {}
|
virtual void apply() {}
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
/** The Dialog's name is the means by which a dialog identifies
|
||||||
|
* itself to the LyXView.
|
||||||
|
*/
|
||||||
|
char const * const name_;
|
||||||
|
///
|
||||||
GuiView * lyxview_;
|
GuiView * lyxview_;
|
||||||
|
|
||||||
private:
|
|
||||||
/// intentionally unimplemented, therefore uncopiable
|
/// intentionally unimplemented, therefore uncopiable
|
||||||
Dialog(Dialog const &);
|
Dialog(Dialog const &);
|
||||||
void operator=(Dialog const &);
|
void operator=(Dialog const &);
|
||||||
|
@ -41,7 +41,7 @@ public:
|
|||||||
bool modal = false, ///< Window modality.
|
bool modal = false, ///< Window modality.
|
||||||
Qt::WindowFlags flags = 0
|
Qt::WindowFlags flags = 0
|
||||||
)
|
)
|
||||||
: QDialog(&parent, flags), name_(name)
|
: QDialog(&parent, flags), Dialog(parent, name)
|
||||||
{
|
{
|
||||||
setModal(modal);
|
setModal(modal);
|
||||||
QGridLayout * gridLayout = new QGridLayout(this);
|
QGridLayout * gridLayout = new QGridLayout(this);
|
||||||
@ -82,17 +82,15 @@ public:
|
|||||||
{
|
{
|
||||||
widget_->updateView();
|
widget_->updateView();
|
||||||
}
|
}
|
||||||
std::string name() const { return name_; }
|
|
||||||
//@}
|
//@}
|
||||||
private:
|
private:
|
||||||
/// The encapsulated widget.
|
/// The encapsulated widget.
|
||||||
MyWidget * widget_;
|
MyWidget * widget_;
|
||||||
std::string name_;
|
|
||||||
|
|
||||||
void showEvent(QShowEvent * e)
|
void showEvent(QShowEvent * e)
|
||||||
{
|
{
|
||||||
QSettings settings;
|
QSettings settings;
|
||||||
std::string key = name_ + "/geometry";
|
std::string key = name() + "/geometry";
|
||||||
QDialog::restoreGeometry(settings.value(key.c_str()).toByteArray());
|
QDialog::restoreGeometry(settings.value(key.c_str()).toByteArray());
|
||||||
QDialog::showEvent(e);
|
QDialog::showEvent(e);
|
||||||
}
|
}
|
||||||
@ -100,7 +98,7 @@ private:
|
|||||||
void closeEvent(QCloseEvent * e)
|
void closeEvent(QCloseEvent * e)
|
||||||
{
|
{
|
||||||
QSettings settings;
|
QSettings settings;
|
||||||
std::string key = name_ + "/geometry";
|
std::string key = name() + "/geometry";
|
||||||
settings.setValue(key.c_str(), QDialog::saveGeometry());
|
settings.setValue(key.c_str(), QDialog::saveGeometry());
|
||||||
QDialog::closeEvent(e);
|
QDialog::closeEvent(e);
|
||||||
}
|
}
|
||||||
|
@ -34,7 +34,7 @@ public:
|
|||||||
Qt::DockWidgetArea area = Qt::LeftDockWidgetArea, ///< Position of the dock (and also drawer)
|
Qt::DockWidgetArea area = Qt::LeftDockWidgetArea, ///< Position of the dock (and also drawer)
|
||||||
Qt::WindowFlags flags = 0
|
Qt::WindowFlags flags = 0
|
||||||
)
|
)
|
||||||
: QDockWidget(&parent, flags), Dialog(parent), name_(name)
|
: QDockWidget(&parent, flags), Dialog(parent, name)
|
||||||
{
|
{
|
||||||
if (flags & Qt::Drawer)
|
if (flags & Qt::Drawer)
|
||||||
setFeatures(QDockWidget::NoDockWidgetFeatures);
|
setFeatures(QDockWidget::NoDockWidgetFeatures);
|
||||||
@ -65,10 +65,7 @@ public:
|
|||||||
updateView();
|
updateView();
|
||||||
}
|
}
|
||||||
bool isClosing() const { return false; }
|
bool isClosing() const { return false; }
|
||||||
std::string name() const { return name_; }
|
|
||||||
//@}
|
//@}
|
||||||
private:
|
|
||||||
std::string name_;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
} // frontend
|
} // frontend
|
||||||
|
@ -24,7 +24,7 @@ namespace lyx {
|
|||||||
namespace frontend {
|
namespace frontend {
|
||||||
|
|
||||||
GuiDialog::GuiDialog(GuiView & lv, std::string const & name)
|
GuiDialog::GuiDialog(GuiView & lv, std::string const & name)
|
||||||
: Dialog(lv), is_closing_(false), name_(name)
|
: Dialog(lv, name), is_closing_(false)
|
||||||
{}
|
{}
|
||||||
|
|
||||||
|
|
||||||
@ -74,7 +74,7 @@ void GuiDialog::slotRestore()
|
|||||||
// Tell the controller that a request to refresh the dialog's contents
|
// Tell the controller that a request to refresh the dialog's contents
|
||||||
// has been received. It's up to the controller to supply the necessary
|
// has been received. It's up to the controller to supply the necessary
|
||||||
// info by calling GuiDialog::updateView().
|
// info by calling GuiDialog::updateView().
|
||||||
updateDialog(name_);
|
updateDialog();
|
||||||
bc().restore();
|
bc().restore();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -167,7 +167,7 @@ void GuiDialog::showData(string const & data)
|
|||||||
return;
|
return;
|
||||||
|
|
||||||
if (!initialiseParams(data)) {
|
if (!initialiseParams(data)) {
|
||||||
lyxerr << "Dialog \"" << name_
|
lyxerr << "Dialog \"" << name()
|
||||||
<< "\" failed to translate the data "
|
<< "\" failed to translate the data "
|
||||||
"string passed to show()" << std::endl;
|
"string passed to show()" << std::endl;
|
||||||
return;
|
return;
|
||||||
@ -186,7 +186,7 @@ void GuiDialog::updateData(string const & data)
|
|||||||
return;
|
return;
|
||||||
|
|
||||||
if (!initialiseParams(data)) {
|
if (!initialiseParams(data)) {
|
||||||
lyxerr << "Dialog \"" << name_
|
lyxerr << "Dialog \"" << name()
|
||||||
<< "\" could not be initialized" << std::endl;
|
<< "\" could not be initialized" << std::endl;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@ -205,7 +205,7 @@ void GuiDialog::hide()
|
|||||||
|
|
||||||
clearParams();
|
clearParams();
|
||||||
hideView();
|
hideView();
|
||||||
Dialog::disconnect(name_);
|
Dialog::disconnect();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -221,7 +221,7 @@ void GuiDialog::apply()
|
|||||||
dispatchParams();
|
dispatchParams();
|
||||||
|
|
||||||
if (disconnectOnApply() && !is_closing_) {
|
if (disconnectOnApply() && !is_closing_) {
|
||||||
Dialog::disconnect(name_);
|
Dialog::disconnect();
|
||||||
initialiseParams(string());
|
initialiseParams(string());
|
||||||
updateView();
|
updateView();
|
||||||
}
|
}
|
||||||
@ -231,7 +231,7 @@ void GuiDialog::apply()
|
|||||||
void GuiDialog::showEvent(QShowEvent * e)
|
void GuiDialog::showEvent(QShowEvent * e)
|
||||||
{
|
{
|
||||||
QSettings settings;
|
QSettings settings;
|
||||||
string key = name_ + "/geometry";
|
string key = name() + "/geometry";
|
||||||
restoreGeometry(settings.value(key.c_str()).toByteArray());
|
restoreGeometry(settings.value(key.c_str()).toByteArray());
|
||||||
QDialog::showEvent(e);
|
QDialog::showEvent(e);
|
||||||
}
|
}
|
||||||
@ -240,7 +240,7 @@ void GuiDialog::showEvent(QShowEvent * e)
|
|||||||
void GuiDialog::closeEvent(QCloseEvent * e)
|
void GuiDialog::closeEvent(QCloseEvent * e)
|
||||||
{
|
{
|
||||||
QSettings settings;
|
QSettings settings;
|
||||||
string key = name_ + "/geometry";
|
string key = name() + "/geometry";
|
||||||
settings.setValue(key.c_str(), saveGeometry());
|
settings.setValue(key.c_str(), saveGeometry());
|
||||||
QDialog::closeEvent(e);
|
QDialog::closeEvent(e);
|
||||||
}
|
}
|
||||||
|
@ -115,9 +115,6 @@ public:
|
|||||||
*/
|
*/
|
||||||
bool isClosing() const { return is_closing_; }
|
bool isClosing() const { return is_closing_; }
|
||||||
|
|
||||||
///
|
|
||||||
std::string name() const { return name_; }
|
|
||||||
|
|
||||||
void apply();
|
void apply();
|
||||||
|
|
||||||
/// Update the display of the dialog whilst it is still visible.
|
/// Update the display of the dialog whilst it is still visible.
|
||||||
@ -129,10 +126,6 @@ private:
|
|||||||
bool updating_;
|
bool updating_;
|
||||||
|
|
||||||
bool is_closing_;
|
bool is_closing_;
|
||||||
/** The Dialog's name is the means by which a dialog identifies
|
|
||||||
* itself to the kernel.
|
|
||||||
*/
|
|
||||||
std::string name_;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
@ -49,7 +49,7 @@ namespace lyx {
|
|||||||
namespace frontend {
|
namespace frontend {
|
||||||
|
|
||||||
GuiParagraph::GuiParagraph(GuiView & lv)
|
GuiParagraph::GuiParagraph(GuiView & lv)
|
||||||
: Dialog(lv)
|
: Dialog(lv, "paragraph")
|
||||||
{
|
{
|
||||||
setupUi(this);
|
setupUi(this);
|
||||||
setWindowTitle(qt_("Paragraph Settings"));
|
setWindowTitle(qt_("Paragraph Settings"));
|
||||||
|
@ -1367,7 +1367,7 @@ void GuiView::updateBufferDependent(bool switched) const
|
|||||||
// A bit clunky, but the dialog will request
|
// A bit clunky, but the dialog will request
|
||||||
// that the kernel provides it with the necessary
|
// that the kernel provides it with the necessary
|
||||||
// data.
|
// data.
|
||||||
dialog->updateDialog(dialog->name());
|
dialog->updateDialog();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user