external::Template getTemplate(int i)
{
+ if (external::TemplateManager::get().getTemplates().empty())
+ return Template();
external::TemplateManager::Templates::const_iterator i1
= external::TemplateManager::get().getTemplates().begin();
advance(i1, i);
if (usingScale())
return false;
- string const wstr = fromqstr(widthED->text());
- if (wstr.empty())
+ QString const wstr = widthED->text();
+ if (wstr.isEmpty())
return false;
- bool const wIsDbl = isStrDbl(wstr);
- if (wIsDbl && float_equal(convert<double>(wstr), 0.0, 0.05))
+ bool wIsDbl;
+ double val = wstr.trimmed().toDouble(&wIsDbl);
+ if (wIsDbl && float_equal(val, 0.0, 0.05))
return false;
Length l;
- if (!wIsDbl && (!isValidLength(wstr, &l) || l.zero()))
+ if (!wIsDbl && (!isValidLength(fromqstr(wstr), &l) || l.zero()))
return false;
- string const hstr = fromqstr(heightED->text());
- if (hstr.empty())
+ QString const hstr = heightED->text();
+ if (hstr.isEmpty())
return false;
- bool const hIsDbl = isStrDbl(hstr);
- if (hIsDbl && float_equal(convert<double>(hstr), 0.0, 0.05))
+ bool hIsDbl;
+ val = hstr.trimmed().toDouble(&hIsDbl);
+ if (hIsDbl && float_equal(val, 0.0, 0.05))
return false;
- if (!hIsDbl && (!isValidLength(hstr, &l) || l.zero()))
+ if (!hIsDbl && (!isValidLength(fromqstr(hstr), &l) || l.zero()))
return false;
return true;
}
-static Length::UNIT defaultUnit()
-{
- Length::UNIT default_unit = Length::CM;
- switch (lyxrc.default_papersize) {
- case PAPER_USLETTER:
- case PAPER_USLEGAL:
- case PAPER_USEXECUTIVE:
- default_unit = Length::IN;
- break;
- default:
- break;
- }
- return default_unit;
-}
-
-
static void setRotation(QLineEdit & angleED, QComboBox & originCO,
external::RotationData const & data)
{
originCO.setCurrentIndex(int(data.origin()));
- angleED.setText(toqstr(data.angle));
+ doubleToWidget(&angleED, data.angle);
}
typedef external::RotationData::OriginType OriginType;
data.origin(static_cast<OriginType>(originCO.currentIndex()));
- data.angle = fromqstr(angleED.text());
+ data.angle = widgetToDoubleStr(&angleED);
}
}
if (using_scale) {
- widthED.setText(toqstr(scale));
+ doubleToWidget(&widthED, scale);
widthUnitCO.setCurrentItem("scale");
} else
lengthToWidgets(&widthED, &widthUnitCO,
- data.width.asString(), defaultUnit());
+ data.width.asString(), Length::defaultUnit());
string const h = data.height.zero() ? string() : data.height.asString();
- Length::UNIT default_unit = data.width.zero() ?
- defaultUnit() : data.width.unit();
+ Length::UNIT const default_unit = data.width.zero() ?
+ Length::defaultUnit() : data.width.unit();
lengthToWidgets(&heightED, &heightUnitCO, h, default_unit);
heightED.setEnabled(!using_scale);
QLineEdit const & heightED, LengthCombo const & heightUnitCO,
QCheckBox const & aspectratioCB, bool const scaling)
{
- string const width = fromqstr(widthED.text());
-
if (scaling) {
// scaling instead of a width
- data.scale = width;
+ data.scale = widgetToDoubleStr(&widthED);
data.width = Length();
} else {
data.width = Length(widgetsToLength(&widthED, &widthUnitCO));
params_.filename.outputFilename(fromqstr(bufferFilepath()));
fileED->setText(toqstr(name));
- int index = -1;
+ int index = 0;
external::TemplateManager::Templates::const_iterator i1, i2;
i1 = external::TemplateManager::get().getTemplates().begin();
i2 = external::TemplateManager::get().getTemplates().end();