mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-11-10 20:04:46 +00:00
39 to go
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20759 a592a061-630c-0410-9148-cb99ea01b6c8
This commit is contained in:
parent
f3555064fc
commit
33030d3ed8
@ -1,47 +0,0 @@
|
||||
/**
|
||||
* \file ControlWrap.cpp
|
||||
* This file is part of LyX, the document processor.
|
||||
* Licence details can be found in the file COPYING.
|
||||
*
|
||||
* \author Dekel Tsur
|
||||
*
|
||||
* Full author contact details are available in file CREDITS.
|
||||
*/
|
||||
|
||||
#include <config.h>
|
||||
|
||||
#include "ControlWrap.h"
|
||||
#include "FuncRequest.h"
|
||||
|
||||
|
||||
using std::string;
|
||||
|
||||
namespace lyx {
|
||||
namespace frontend {
|
||||
|
||||
ControlWrap::ControlWrap(Dialog & parent)
|
||||
: Controller(parent)
|
||||
{}
|
||||
|
||||
|
||||
bool ControlWrap::initialiseParams(string const & data)
|
||||
{
|
||||
InsetWrapMailer::string2params(data, params_);
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
void ControlWrap::clearParams()
|
||||
{
|
||||
params_ = InsetWrapParams();
|
||||
}
|
||||
|
||||
|
||||
void ControlWrap::dispatchParams()
|
||||
{
|
||||
string const lfun = InsetWrapMailer::params2string(params());
|
||||
dispatch(FuncRequest(getLfun(), lfun));
|
||||
}
|
||||
|
||||
} // namespace frontend
|
||||
} // namespace lyx
|
@ -1,46 +0,0 @@
|
||||
// -*- C++ -*-
|
||||
/**
|
||||
* \file ControlWrap.h
|
||||
* This file is part of LyX, the document processor.
|
||||
* Licence details can be found in the file COPYING.
|
||||
*
|
||||
* \author Dekel Tsur
|
||||
*
|
||||
* Full author contact details are available in file CREDITS.
|
||||
*/
|
||||
|
||||
#ifndef CONTROLWRAP_H
|
||||
#define CONTROLWRAP_H
|
||||
|
||||
#include "Dialog.h"
|
||||
#include "insets/InsetWrap.h"
|
||||
|
||||
namespace lyx {
|
||||
namespace frontend {
|
||||
|
||||
class ControlWrap : public Controller
|
||||
{
|
||||
public:
|
||||
///
|
||||
ControlWrap(Dialog &);
|
||||
///
|
||||
virtual bool initialiseParams(std::string const & data);
|
||||
/// clean-up on hide.
|
||||
virtual void clearParams();
|
||||
/// clean-up on hide.
|
||||
virtual void dispatchParams();
|
||||
///
|
||||
virtual bool isBufferDependent() const { return true; }
|
||||
///
|
||||
InsetWrapParams & params() { return params_; }
|
||||
///
|
||||
InsetWrapParams const & params() const { return params_; }
|
||||
private:
|
||||
///
|
||||
InsetWrapParams params_;
|
||||
};
|
||||
|
||||
} // namespace frontend
|
||||
} // namespace lyx
|
||||
|
||||
#endif
|
@ -35,6 +35,11 @@ Controller::Controller(Dialog & parent)
|
||||
{}
|
||||
|
||||
|
||||
Controller::Controller(Dialog * parent)
|
||||
: parent_(*parent), lyxview_(0)
|
||||
{}
|
||||
|
||||
|
||||
Controller::~Controller()
|
||||
{}
|
||||
|
||||
|
@ -162,6 +162,8 @@ class Controller
|
||||
public:
|
||||
/// \param parent Dialog owning this Controller.
|
||||
Controller(Dialog & parent);
|
||||
// the same. avoids ambiguity with the (non-existent) copy constructor
|
||||
Controller(Dialog * parent);
|
||||
virtual ~Controller();
|
||||
void setLyXView(LyXView & lv) { lyxview_ = &lv; }
|
||||
|
||||
|
@ -43,7 +43,6 @@ SOURCEFILES = \
|
||||
ControlThesaurus.cpp \
|
||||
ControlToc.cpp \
|
||||
ControlVSpace.cpp \
|
||||
ControlWrap.cpp \
|
||||
frontend_helpers.cpp
|
||||
|
||||
HEADERFILES = \
|
||||
@ -82,7 +81,6 @@ HEADERFILES = \
|
||||
ControlThesaurus.h \
|
||||
ControlToc.h \
|
||||
ControlVSpace.h \
|
||||
ControlWrap.h \
|
||||
frontend_helpers.h
|
||||
|
||||
if MONOLITHIC_CONTROLLERS
|
||||
|
@ -111,6 +111,7 @@ private:
|
||||
|
||||
|
||||
Dialog * createGuiRef(LyXView & lv);
|
||||
Dialog * createGuiWrap(LyXView & lv);
|
||||
|
||||
|
||||
bool Dialogs::isValidName(string const & name) const
|
||||
@ -224,7 +225,7 @@ Dialog * Dialogs::build(string const & name)
|
||||
} else if (name == "vspace") {
|
||||
dialog = new GuiVSpaceDialog(lyxview_);
|
||||
} else if (name == "wrap") {
|
||||
dialog = new GuiWrapDialog(lyxview_);
|
||||
dialog = createGuiWrap(lyxview_);
|
||||
} else if (name == "listings") {
|
||||
dialog = new GuiListingsDialog(lyxview_);
|
||||
}
|
||||
|
@ -52,7 +52,7 @@ using support::makeDisplayPath;
|
||||
static std::string const lfun_name_ = "ref";
|
||||
|
||||
GuiRef::GuiRef(LyXView & lv)
|
||||
: GuiDialog(lv, "ref"), Controller(*static_cast<Dialog*>(this)),
|
||||
: GuiDialog(lv, "ref"), Controller(this),
|
||||
params_("ref")
|
||||
{
|
||||
setupUi(this);
|
||||
|
@ -12,10 +12,10 @@
|
||||
|
||||
#include "GuiWrap.h"
|
||||
|
||||
#include "ControlWrap.h"
|
||||
#include "LengthCombo.h"
|
||||
#include "qt_helpers.h"
|
||||
#include "Validator.h"
|
||||
#include "FuncRequest.h"
|
||||
|
||||
#include "insets/InsetWrap.h"
|
||||
|
||||
@ -31,27 +31,27 @@ using std::string;
|
||||
namespace lyx {
|
||||
namespace frontend {
|
||||
|
||||
GuiWrapDialog::GuiWrapDialog(LyXView & lv)
|
||||
: GuiDialog(lv, "wrap")
|
||||
GuiWrap::GuiWrap(LyXView & lv)
|
||||
: GuiDialog(lv, "wrap"), Controller(this)
|
||||
{
|
||||
setupUi(this);
|
||||
setViewTitle(_("Wrap Float Settings"));
|
||||
setController(new ControlWrap(*this));
|
||||
setController(this, false);
|
||||
|
||||
connect(restorePB, SIGNAL(clicked()), this, SLOT(slotRestore()));
|
||||
connect(okPB, SIGNAL(clicked()), this, SLOT(slotOK()));
|
||||
connect(applyPB, SIGNAL(clicked()), this, SLOT(slotApply()));
|
||||
connect(closePB, SIGNAL(clicked()), this, SLOT(slotClose()));
|
||||
|
||||
connect(widthED, SIGNAL(textChanged(const QString &)),
|
||||
connect(widthED, SIGNAL(textChanged(QString)),
|
||||
this, SLOT(change_adaptor()));
|
||||
connect(widthUnitLC, SIGNAL(selectionChanged(lyx::Length::UNIT)),
|
||||
this, SLOT(change_adaptor()));
|
||||
connect(valignCO, SIGNAL(highlighted(const QString &)),
|
||||
connect(valignCO, SIGNAL(highlighted(QString)),
|
||||
this, SLOT(change_adaptor()));
|
||||
connect(overhangCB, SIGNAL(stateChanged(int)),
|
||||
this, SLOT(change_adaptor()));
|
||||
connect(overhangED, SIGNAL(textChanged(const QString &)),
|
||||
connect(overhangED, SIGNAL(textChanged(QString)),
|
||||
this, SLOT(change_adaptor()));
|
||||
connect(overhangUnitLC, SIGNAL(selectionChanged(lyx::Length::UNIT)),
|
||||
this, SLOT(change_adaptor()));
|
||||
@ -86,26 +86,20 @@ GuiWrapDialog::GuiWrapDialog(LyXView & lv)
|
||||
}
|
||||
|
||||
|
||||
ControlWrap & GuiWrapDialog::controller()
|
||||
{
|
||||
return static_cast<ControlWrap &>(GuiDialog::controller());
|
||||
}
|
||||
|
||||
|
||||
void GuiWrapDialog::closeEvent(QCloseEvent * e)
|
||||
void GuiWrap::closeEvent(QCloseEvent * e)
|
||||
{
|
||||
slotClose();
|
||||
e->accept();
|
||||
}
|
||||
|
||||
|
||||
void GuiWrapDialog::change_adaptor()
|
||||
void GuiWrap::change_adaptor()
|
||||
{
|
||||
changed();
|
||||
}
|
||||
|
||||
|
||||
void GuiWrapDialog::applyView()
|
||||
void GuiWrap::applyView()
|
||||
{
|
||||
double const width_value = widthED->text().toDouble();
|
||||
Length::UNIT widthUnit = widthUnitLC->currentLengthItem();
|
||||
@ -116,52 +110,48 @@ void GuiWrapDialog::applyView()
|
||||
if (overhangED->text().isEmpty())
|
||||
overhangUnit = Length::UNIT_NONE;
|
||||
|
||||
InsetWrapParams & params = controller().params();
|
||||
|
||||
params.width = Length(width_value, widthUnit);
|
||||
params_.width = Length(width_value, widthUnit);
|
||||
|
||||
if (overhangCB->checkState() == Qt::Checked)
|
||||
params.overhang = Length(overhang_value, overhangUnit);
|
||||
params_.overhang = Length(overhang_value, overhangUnit);
|
||||
else
|
||||
// when value is "0" the option is not set in the LaTeX-output
|
||||
// in InsetWrap.cpp
|
||||
params.overhang = Length("0in");
|
||||
params_.overhang = Length("0in");
|
||||
|
||||
if (linesCB->checkState() == Qt::Checked)
|
||||
params.lines = linesSB->value();
|
||||
params_.lines = linesSB->value();
|
||||
else
|
||||
// when value is "0" the option is not set in the LaTeX-output
|
||||
// in InsetWrap.cpp
|
||||
params.lines = 0;
|
||||
params_.lines = 0;
|
||||
|
||||
switch (valignCO->currentIndex()) {
|
||||
case 0:
|
||||
params.placement = "o";
|
||||
params_.placement = "o";
|
||||
break;
|
||||
case 1:
|
||||
params.placement = "i";
|
||||
params_.placement = "i";
|
||||
break;
|
||||
case 2:
|
||||
params.placement = "l";
|
||||
params_.placement = "l";
|
||||
break;
|
||||
case 3:
|
||||
params.placement = "r";
|
||||
params_.placement = "r";
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void GuiWrapDialog::updateContents()
|
||||
void GuiWrap::updateContents()
|
||||
{
|
||||
InsetWrapParams & params = controller().params();
|
||||
|
||||
//0pt is a legal width now, it yields a
|
||||
//wrapfloat just wide enough for the contents.
|
||||
Length len_w(params.width);
|
||||
// 0pt is a legal width now, it yields a
|
||||
// wrapfloat just wide enough for the contents.
|
||||
Length len_w = params_.width;
|
||||
widthED->setText(QString::number(len_w.value()));
|
||||
widthUnitLC->setCurrentItem(len_w.unit());
|
||||
|
||||
Length len_o(params.overhang);
|
||||
Length len_o(params_.overhang);
|
||||
overhangED->setText(QString::number(len_o.value()));
|
||||
overhangUnitLC->setCurrentItem(len_o.unit());
|
||||
if (len_o.value() == 0)
|
||||
@ -169,23 +159,47 @@ void GuiWrapDialog::updateContents()
|
||||
else
|
||||
overhangCB->setCheckState(Qt::Checked);
|
||||
|
||||
linesSB->setValue(params.lines);
|
||||
if (params.lines == 0)
|
||||
linesSB->setValue(params_.lines);
|
||||
if (params_.lines == 0)
|
||||
linesCB->setCheckState(Qt::Unchecked);
|
||||
else
|
||||
linesCB->setCheckState(Qt::Checked);
|
||||
|
||||
int item = 0;
|
||||
if (params.placement == "i")
|
||||
if (params_.placement == "i")
|
||||
item = 1;
|
||||
else if (params.placement == "l")
|
||||
else if (params_.placement == "l")
|
||||
item = 2;
|
||||
else if (params.placement == "r")
|
||||
else if (params_.placement == "r")
|
||||
item = 3;
|
||||
|
||||
valignCO->setCurrentIndex(item);
|
||||
}
|
||||
|
||||
|
||||
bool GuiWrap::initialiseParams(string const & data)
|
||||
{
|
||||
InsetWrapMailer::string2params(data, params_);
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
void GuiWrap::clearParams()
|
||||
{
|
||||
params_ = InsetWrapParams();
|
||||
}
|
||||
|
||||
|
||||
void GuiWrap::dispatchParams()
|
||||
{
|
||||
string const lfun = InsetWrapMailer::params2string(params_);
|
||||
dispatch(FuncRequest(getLfun(), lfun));
|
||||
}
|
||||
|
||||
|
||||
Dialog * createGuiWrap(LyXView & lv) { return new GuiWrap(lv); }
|
||||
|
||||
|
||||
} // namespace frontend
|
||||
} // namespace lyx
|
||||
|
||||
|
@ -13,18 +13,18 @@
|
||||
#define GUIWRAP_H
|
||||
|
||||
#include "GuiDialog.h"
|
||||
#include "ControlWrap.h"
|
||||
#include "ui_WrapUi.h"
|
||||
#include "insets/InsetWrap.h"
|
||||
|
||||
namespace lyx {
|
||||
namespace frontend {
|
||||
|
||||
class GuiWrapDialog : public GuiDialog, public Ui::WrapUi
|
||||
class GuiWrap : public GuiDialog, public Ui::WrapUi, public Controller
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
GuiWrapDialog(LyXView & lv);
|
||||
GuiWrap(LyXView & lv);
|
||||
|
||||
private Q_SLOTS:
|
||||
void change_adaptor();
|
||||
@ -32,11 +32,22 @@ private Q_SLOTS:
|
||||
private:
|
||||
void closeEvent(QCloseEvent * e);
|
||||
/// parent controller
|
||||
ControlWrap & controller();
|
||||
Controller & controller() { return *this; }
|
||||
/// Apply changes
|
||||
void applyView();
|
||||
/// update
|
||||
void updateContents();
|
||||
///
|
||||
bool initialiseParams(std::string const & data);
|
||||
/// clean-up on hide.
|
||||
void clearParams();
|
||||
/// clean-up on hide.
|
||||
void dispatchParams();
|
||||
///
|
||||
bool isBufferDependent() const { return true; }
|
||||
|
||||
///
|
||||
InsetWrapParams params_;
|
||||
};
|
||||
|
||||
} // namespace frontend
|
||||
|
Loading…
Reference in New Issue
Block a user