Merge with feature

--HG--
branch : develop
This commit is contained in:
Roman Telezhynskyi 2015-02-11 12:52:19 +02:00
commit 949e1d9011
74 changed files with 191 additions and 104 deletions

View file

@ -245,7 +245,8 @@ qreal* Calculator::AddVariable(const QString &a_szName, void *a_pUserData)
*/
void Calculator::SetSepForEval()
{
SetArgSep(',');
SetArgSep(';');
SetThousandsSep(',');
SetDecSep('.');
}

View file

@ -113,11 +113,11 @@ void VFormula::SetFormula(const QString &value, FormulaType type)
{
if (type == FormulaType::ToUser)
{
formula = value;
formula = qApp->FormulaToUser(value);
}
else
{
formula = qApp->FormulaToUser(value);
formula = value;
}
formula.replace("\n", " ");// Replace line return with spaces for calc if exist
Eval();
@ -239,17 +239,8 @@ void VFormula::Eval()
}
else
{
QLocale loc;
if (qApp->getSettings()->GetOsSeparator())
{
loc = QLocale::system();
}
else
{
loc = QLocale(QLocale::C);
}
dValue = result;
value = QString(loc.toString(result) + " " + postfix);
value = QString(qApp->LocaleToString(result) + " " + postfix);
_error = false;
}
}

View file

@ -35,7 +35,6 @@
#include "vmaingraphicsview.h"
#include "../container/calculator.h"
#include "../version.h"
#include "vsettings.h"
#include <QDebug>
#include <QDir>

View file

@ -33,6 +33,7 @@
#include "../options.h"
#include "../widgets/vmaingraphicsview.h"
#include "../../libs/qmuparser/qmutranslation.h"
#include "vsettings.h"
class VApplication;// used in define
class QUndoStack;
@ -40,7 +41,6 @@ class VMainGraphicsView;
class VMainGraphicsScene;
class VPattern;
class QFile;
class VSettings;
class QLockFile;
#if defined(qApp)
@ -81,8 +81,18 @@ public:
QString GuiText(const QString &measurement) const;
QString Description(const QString &measurement) const;
QString PostfixOperator(const QString &name) const;
QString FormulaFromUser(const QString &formula);
QString FormulaToUser(const QString &formula);
template <typename T>
QString LocaleToString(const T &value)
{
QLocale loc;
qApp->getSettings()->GetOsSeparator() ? loc = QLocale::system() : loc = QLocale(QLocale::C);
return loc.toString(value);
}
QUndoStack *getUndoStack() const;
VMainGraphicsView *getSceneView() const;
void setSceneView(VMainGraphicsView *value);

View file

@ -33,6 +33,7 @@
#include <QVBoxLayout>
#include <QStackedWidget>
#include <QCloseEvent>
#include "../core/vapplication.h"
//---------------------------------------------------------------------------------------------------------------------
ConfigDialog::ConfigDialog(QWidget *parent) :
@ -93,6 +94,7 @@ ConfigDialog::ConfigDialog(QWidget *parent) :
this->setFixedSize(QSize(750, 550));
this->setWindowFlags(Qt::Tool | Qt::WindowTitleHint | Qt::WindowCloseButtonHint | Qt::CustomizeWindowHint);
qApp->getSettings()->GetOsSeparator() ? setLocale(QLocale::system()) : setLocale(QLocale(QLocale::C));
}
//---------------------------------------------------------------------------------------------------------------------
@ -156,6 +158,8 @@ void ConfigDialog::Apply()
default:
break;
}
qApp->getSettings()->GetOsSeparator() ? setLocale(QLocale::system()) : setLocale(QLocale(QLocale::C));
emit UpdateProperties();
setResult(QDialog::Accepted);
}

View file

@ -43,6 +43,8 @@ public:
explicit ConfigDialog(QWidget *parent = nullptr);
public slots:
void changePage(QListWidgetItem *current, QListWidgetItem *previous);
signals:
void UpdateProperties();
protected:
virtual void closeEvent(QCloseEvent *event);
private:

View file

@ -33,6 +33,7 @@
#include <QDesktopServices>
#include <QMessageBox>
#include "../../options.h"
#include "../core/vapplication.h"
//---------------------------------------------------------------------------------------------------------------------
DialogAboutApp::DialogAboutApp(QWidget *parent) :
@ -41,6 +42,8 @@ DialogAboutApp::DialogAboutApp(QWidget *parent) :
{
ui->setupUi(this);
qApp->getSettings()->GetOsSeparator() ? setLocale(QLocale::system()) : setLocale(QLocale(QLocale::C));
ui->label_Valentina_Version->setText(QString("Valentina %1").arg(APP_VERSION));
ui->labelBuildRevision->setText(QString("Build revision: %1").arg(BUILD_REVISION));
ui->label_QT_Version->setText(buildCompatibilityString());

View file

@ -49,6 +49,9 @@ DialogHistory::DialogHistory(VContainer *data, VPattern *doc, QWidget *parent)
cursorToolRecordRow(0)
{
ui->setupUi(this);
qApp->getSettings()->GetOsSeparator() ? setLocale(QLocale::system()) : setLocale(QLocale(QLocale::C));
bOk = ui->buttonBox->button(QDialogButtonBox::Ok);
connect(bOk, &QPushButton::clicked, this, &DialogHistory::DialogAccepted);
FillTable();
@ -197,7 +200,7 @@ void DialogHistory::FillTable()
*/
QString DialogHistory::Record(const VToolRecord &tool)
{
const QDomElement domElem = doc->elementById(QString().setNum(tool.getId()));
const QDomElement domElem = doc->elementById(tool.getId());
if (domElem.isElement() == false)
{
qDebug()<<"Can't find element by id"<<Q_FUNC_INFO;

View file

@ -55,6 +55,8 @@ DialogIncrements::DialogIncrements(VContainer *data, VPattern *doc, QWidget *par
{
ui->setupUi(this);
qApp->getSettings()->GetOsSeparator() ? setLocale(QLocale::system()) : setLocale(QLocale(QLocale::C));
qCDebug(vDialog)<<"Showing variables.";
if (qApp->patternType() == MeasurementsType::Individual)
{
@ -177,14 +179,14 @@ void DialogIncrements::FillMeasurements()
if (qApp->patternType() == MeasurementsType::Standard)
{
QTableWidgetItem *item = new QTableWidgetItem(QString()
.setNum(data->GetTableValue(qApp->VarFromUser(iMap.key()))));
QTableWidgetItem *item = new QTableWidgetItem(qApp->LocaleToString(
data->GetTableValue(qApp->VarFromUser(iMap.key()))));
item->setTextAlignment(Qt::AlignHCenter);
SetItemViewOnly(item);
ui->tableWidgetMeasurements->setItem(currentRow, 1, item);// calculated value
}
item = new QTableWidgetItem(QString().setNum(m->GetBase()));
item = new QTableWidgetItem(qApp->LocaleToString(m->GetBase()));
item->setTextAlignment(Qt::AlignHCenter);
if (qApp->patternType() == MeasurementsType::Standard)
{
@ -194,12 +196,12 @@ void DialogIncrements::FillMeasurements()
if (qApp->patternType() == MeasurementsType::Standard)
{
QTableWidgetItem *item = new QTableWidgetItem(QString().setNum(m->GetKsize()));
QTableWidgetItem *item = new QTableWidgetItem(qApp->LocaleToString(m->GetKsize()));
item->setTextAlignment(Qt::AlignHCenter);
SetItemViewOnly(item);
ui->tableWidgetMeasurements->setItem(currentRow, 3, item);// in sizes
item = new QTableWidgetItem(QString().setNum(m->GetKheight()));
item = new QTableWidgetItem(qApp->LocaleToString(m->GetKheight()));
item->setTextAlignment(Qt::AlignHCenter);
SetItemViewOnly(item);
ui->tableWidgetMeasurements->setItem(currentRow, 4, item);// in heights
@ -250,23 +252,23 @@ void DialogIncrements::FillIncrements()
if (qApp->patternType() == MeasurementsType::Standard)
{
item = new QTableWidgetItem(QString().setNum(data->GetTableValue(iMap.value())));
item = new QTableWidgetItem(qApp->LocaleToString(data->GetTableValue(iMap.value())));
item->setTextAlignment(Qt::AlignHCenter);
SetItemViewOnly(item);
ui->tableWidgetIncrement->setItem(currentRow, 1, item);
}
item = new QTableWidgetItem(QString().setNum(incr->GetBase()));
item = new QTableWidgetItem(qApp->LocaleToString(incr->GetBase()));
item->setTextAlignment(Qt::AlignHCenter);
ui->tableWidgetIncrement->setItem(currentRow, 2, item);
if (qApp->patternType() == MeasurementsType::Standard)
{
item = new QTableWidgetItem(QString().setNum(incr->GetKsize()));
item = new QTableWidgetItem(qApp->LocaleToString(incr->GetKsize()));
item->setTextAlignment(Qt::AlignHCenter);
ui->tableWidgetIncrement->setItem(currentRow, 3, item);
item = new QTableWidgetItem(QString().setNum(incr->GetKheight()));
item = new QTableWidgetItem(qApp->LocaleToString(incr->GetKheight()));
item->setTextAlignment(Qt::AlignHCenter);
ui->tableWidgetIncrement->setItem(currentRow, 4, item);
}
@ -305,7 +307,7 @@ void DialogIncrements::FillTable(const QMap<QString, T> varTable, QTableWidget *
item->setFont(QFont("Times", 12, QFont::Bold));
table->setItem(currentRow, 0, item);
item = new QTableWidgetItem(QString().setNum(length));
item = new QTableWidgetItem(qApp->LocaleToString(length));
item->setTextAlignment(Qt::AlignHCenter);
table->setItem(currentRow, 1, item);
}
@ -676,7 +678,7 @@ void DialogIncrements::clickedToolButtonRemove()
data->RemoveIncrement(itemName->text());
quint32 id = qvariant_cast<quint32>(itemName->data(Qt::UserRole));
QDomElement domElement = doc->elementById(QString().setNum(id));
QDomElement domElement = doc->elementById(id);
if (domElement.isElement())
{
QDomNodeList list = doc->elementsByTagName(VPattern::TagIncrements);
@ -748,7 +750,7 @@ void DialogIncrements::IncrementChanged ( qint32 row, qint32 column )
const QTableWidgetItem *itemName = ui->tableWidgetIncrement->item(row, 0);
const QTableWidgetItem *item = ui->tableWidgetIncrement->item(row, column);
const quint32 id = qvariant_cast<quint32>(itemName->data(Qt::UserRole));
QDomElement domElement = doc->elementById(QString().setNum(id));
QDomElement domElement = doc->elementById(id);
if (domElement.isElement() == false)
{
qCDebug(vDialog)<<"Cant't find increment with id = "<<id<<Q_FUNC_INFO;

View file

@ -47,6 +47,8 @@ DialogIndividualMeasurements::DialogIndividualMeasurements(VContainer *data, con
{
ui->setupUi(this);
qApp->getSettings()->GetOsSeparator() ? setLocale(QLocale::system()) : setLocale(QLocale(QLocale::C));
QRect position = this->frameGeometry();
position.moveCenter(QDesktopWidget().availableGeometry().center());
move(position.topLeft());

View file

@ -29,6 +29,7 @@
#include "dialoglayoutprogress.h"
#include "ui_dialoglayoutprogress.h"
#include "../options.h"
#include "../core/vapplication.h"
#include <QMessageBox>
#include <QPushButton>
@ -38,6 +39,9 @@ DialogLayoutProgress::DialogLayoutProgress(int count, QWidget *parent)
:QDialog(parent), ui(new Ui::DialogLayoutProgress)
{
ui->setupUi(this);
qApp->getSettings()->GetOsSeparator() ? setLocale(QLocale::system()) : setLocale(QLocale(QLocale::C));
ui->progressBar->setMaximum(count);
ui->progressBar->setValue(0);

View file

@ -42,6 +42,9 @@ DialogLayoutSettings::DialogLayoutSettings(QWidget *parent)
: QDialog(parent), ui(new Ui::DialogLayoutSettings), oldPaperUnit(Unit::Mm), oldLayoutUnit(Unit::Mm)
{
ui->setupUi(this);
qApp->getSettings()->GetOsSeparator() ? setLocale(QLocale::system()) : setLocale(QLocale(QLocale::C));
InitPaperUnits();
InitLayoutUnits();
InitTemplates();

View file

@ -28,12 +28,16 @@
#include "dialogmeasurements.h"
#include "ui_dialogmeasurements.h"
#include "../core/vapplication.h"
//---------------------------------------------------------------------------------------------------------------------
DialogMeasurements::DialogMeasurements(QWidget *parent) :
QDialog(parent), ui(new Ui::DialogMeasurements), result(MeasurementsType::Individual)
{
ui->setupUi(this);
qApp->getSettings()->GetOsSeparator() ? setLocale(QLocale::system()) : setLocale(QLocale(QLocale::C));
connect(ui->toolButtonStandard, &QToolButton::clicked, this, &DialogMeasurements::StandardMeasurements);
connect(ui->toolButtonIndividual, &QToolButton::clicked, this, &DialogMeasurements::IndividualMeasurements);
}

View file

@ -45,6 +45,8 @@ DialogPatternProperties::DialogPatternProperties(VPattern *doc, QWidget *parent)
SCASSERT(doc != nullptr);
qApp->getSettings()->GetOsSeparator() ? setLocale(QLocale::system()) : setLocale(QLocale(QLocale::C));
ui->lineEditAuthor->setText(doc->GetAuthor());
connect(ui->lineEditAuthor, &QLineEdit::editingFinished, this, &DialogPatternProperties::DescEdited);

View file

@ -28,6 +28,7 @@
#include "dialogpatternxmledit.h"
#include "ui_dialogpatternxmledit.h"
#include "../core/vapplication.h"
#include <QInputDialog>
#include <QMessageBox>
@ -36,7 +37,6 @@ const short int DialogPatternXmlEdit::ChangeTypeDelete=1;
const short int DialogPatternXmlEdit::ChangeTypeAdd=2;
const short int DialogPatternXmlEdit::ChangeTypeModify=3;
//---------------------------------------------------------------------------------------------------------------------
DialogPatternXmlEdit::DialogPatternXmlEdit(QWidget *parent, VPattern *xmldoc)
:QDialog(parent), treeChange(false), currentNodeEdited(nullptr), currentNodeEditedStatus(0),
@ -46,6 +46,8 @@ DialogPatternXmlEdit::DialogPatternXmlEdit(QWidget *parent, VPattern *xmldoc)
{
ui->setupUi(this);
qApp->getSettings()->GetOsSeparator() ? setLocale(QLocale::system()) : setLocale(QLocale(QLocale::C));
this->xmlmodel = new VXMLTreeView();
this->doc=xmldoc;
this->root = this->doc->documentElement();

View file

@ -43,6 +43,8 @@ DialogSaveLayout::DialogSaveLayout(const QMap<QString, QString> &formates, int c
{
ui->setupUi(this);
qApp->getSettings()->GetOsSeparator() ? setLocale(QLocale::system()) : setLocale(QLocale(QLocale::C));
QPushButton *bOk = ui->buttonBox->button(QDialogButtonBox::Ok);
SCASSERT(bOk != nullptr);
bOk->setEnabled(false);

View file

@ -46,6 +46,8 @@ DialogStandardMeasurements::DialogStandardMeasurements(VContainer *data, const Q
{
ui->setupUi(this);
qApp->getSettings()->GetOsSeparator() ? setLocale(QLocale::system()) : setLocale(QLocale(QLocale::C));
QRect position = this->frameGeometry();
position.moveCenter(QDesktopWidget().availableGeometry().center());
move(position.topLeft());

View file

@ -39,6 +39,8 @@ DialogUndo::DialogUndo(QWidget *parent)
{
ui->setupUi(this);
qApp->getSettings()->GetOsSeparator() ? setLocale(QLocale::system()) : setLocale(QLocale(QLocale::C));
bool opening = qApp->getOpeningPattern();
if (opening)
{

View file

@ -191,7 +191,7 @@ void DialogArc::SetF1(const QString &value)
*/
void DialogArc::SetRadius(const QString &value)
{
radius = value;
radius = qApp->FormulaToUser(value);
// increase height if needed.
if (radius.length() > 80)
{
@ -443,7 +443,7 @@ quint32 DialogArc::GetCenter() const
*/
QString DialogArc::GetRadius() const
{
return radius;
return qApp->FormulaFromUser(radius);
}
//---------------------------------------------------------------------------------------------------------------------
@ -453,7 +453,7 @@ QString DialogArc::GetRadius() const
*/
QString DialogArc::GetF1() const
{
return f1;
return qApp->FormulaFromUser(f1);
}
//---------------------------------------------------------------------------------------------------------------------
@ -463,5 +463,5 @@ QString DialogArc::GetF1() const
*/
QString DialogArc::GetF2() const
{
return f2;
return qApp->FormulaFromUser(f2);
}

View file

@ -271,7 +271,7 @@ void DialogPointOfContact::setCenter(const quint32 &value)
*/
void DialogPointOfContact::setRadius(const QString &value)
{
radius = value;
radius = qApp->FormulaToUser(value);
// increase height if needed.
if (radius.length() > 80)
{
@ -300,7 +300,7 @@ void DialogPointOfContact::SetPointName(const QString &value)
*/
QString DialogPointOfContact::getRadius() const
{
return radius;
return qApp->FormulaFromUser(radius);
}
//---------------------------------------------------------------------------------------------------------------------

View file

@ -34,8 +34,6 @@
#include "../../geometry/vsplinepath.h"
#include "../../tools/vabstracttool.h"
#include "../../../libs/qmuparser/qmuparsererror.h"
#include "../../core/vapplication.h"
#include "../../core/vsettings.h"
#include "../../libs/ifc/xml/vdomdocument.h"
#include <QTimer>
#include <QCloseEvent>
@ -502,16 +500,7 @@ qreal DialogTool::Eval(const QString &text, bool &flag, QLabel *label, const QSt
}
else
{
QLocale loc;
if (qApp->getSettings()->GetOsSeparator())
{
loc = QLocale::system();
}
else
{
loc = QLocale(QLocale::C);
}
label->setText(loc.toString(result) + " " +postfix);
label->setText(qApp->LocaleToString(result) + " " +postfix);
flag = true;
ChangeColor(labelEditFormula, okColor);
label->setToolTip(tr("Value"));

View file

@ -321,6 +321,8 @@ protected:
QPushButton *bCancel = ui->buttonBox->button(QDialogButtonBox::Cancel);
SCASSERT(bCancel != nullptr);
connect(bCancel, &QPushButton::clicked, this, &DialogTool::DialogRejected);
qApp->getSettings()->GetOsSeparator() ? setLocale(QLocale::system()) : setLocale(QLocale(QLocale::C));
}
template <typename T>
/**

View file

@ -134,6 +134,7 @@ MainWindow::MainWindow(QWidget *parent)
PropertyBrowser();
setCurrentFile("");
WindowsLocale();
}
//---------------------------------------------------------------------------------------------------------------------
@ -1143,6 +1144,7 @@ void MainWindow::ArrowTool()
ui->actionArrowTool->setChecked(true);
ui->actionStopTool->setEnabled(false);
tool = Tool::Arrow;
emit EnableItemMove(true);
QCursor cur(Qt::ArrowCursor);
ui->view->setCursor(cur);
helpLabel->setText("");
@ -1402,6 +1404,8 @@ void MainWindow::Open()
void MainWindow::Preferences()
{
ConfigDialog dlg(this);
connect(&dlg, &ConfigDialog::UpdateProperties, this, &MainWindow::WindowsLocale); // Must be first
connect(&dlg, &ConfigDialog::UpdateProperties, toolOptions, &VToolOptionsPropertyBrowser::RefreshOptions);
if (dlg.exec() == QDialog::Accepted)
{
InitAutoSave();
@ -2473,6 +2477,12 @@ QStringList MainWindow::GetUnlokedRestoreFileList() const
return restoreFiles;
}
//---------------------------------------------------------------------------------------------------------------------
void MainWindow::WindowsLocale()
{
qApp->getSettings()->GetOsSeparator() ? setLocale(QLocale::system()) : setLocale(QLocale(QLocale::C));
}
//---------------------------------------------------------------------------------------------------------------------
void MainWindow::ReopenFilesAfterCrash(QStringList &args)
{

View file

@ -130,6 +130,7 @@ public slots:
void Layout();
void UpdateGradation();
void GlobalChangePP(const QString &patternPiece);
void WindowsLocale();
signals:
/**
* @brief ModelChosen emit after calculation all details.

View file

@ -60,6 +60,9 @@ TableWindow::TableWindow(QWidget *parent)
description(QString()), tempScene(nullptr)
{
ui->setupUi(this);
qApp->getSettings()->GetOsSeparator() ? setLocale(QLocale::system()) : setLocale(QLocale(QLocale::C));
tempScene = new QGraphicsScene(QRectF(0, 0, qApp->toPixel(823, Unit::Mm), qApp->toPixel(1171, Unit::Mm)));
QBrush brush;
brush.setStyle( Qt::SolidPattern );

View file

@ -114,7 +114,7 @@ void VDrawTool::FullUpdateFromGuiApply()
void VDrawTool::SaveDialogChange()
{
qCDebug(vTool)<<"Saving tool options after using dialog";
QDomElement oldDomElement = doc->elementById(QString().setNum(id));
QDomElement oldDomElement = doc->elementById(id);
if (oldDomElement.isElement())
{
QDomElement newDomElement = oldDomElement.cloneNode().toElement();
@ -148,7 +148,7 @@ void VDrawTool::AddToFile()
*/
void VDrawTool::RefreshDataInFile()
{
QDomElement domElement = doc->elementById(QString().setNum(id));
QDomElement domElement = doc->elementById(id);
if (domElement.isElement())
{
QSharedPointer<VGObject> obj = VAbstractTool::data.GetGObject(id);
@ -176,7 +176,7 @@ QColor VDrawTool::CorrectColor(const QColor &color) const
//---------------------------------------------------------------------------------------------------------------------
void VDrawTool::ReadAttributes()
{
const QDomElement domElement = doc->elementById(QString().setNum(id));
const QDomElement domElement = doc->elementById(id);
if (domElement.isElement())
{
ReadToolAttributes(domElement);

View file

@ -146,7 +146,7 @@ void VToolCut::FullUpdateCurveFromFile(const QString &attrCurve)
{
Q_ASSERT_X(attrCurve.isEmpty() == false, Q_FUNC_INFO, "attribute name is empty");
QDomElement domElement = doc->elementById(QString().setNum(id));
QDomElement domElement = doc->elementById(id);
if (domElement.isElement())
{
formula = domElement.attribute(AttrLength, "");

View file

@ -275,7 +275,7 @@ void VToolLine::AddToFile()
*/
void VToolLine::RefreshDataInFile()
{
QDomElement domElement = doc->elementById(QString().setNum(id));
QDomElement domElement = doc->elementById(id);
if (domElement.isElement())
{
QSharedPointer<VGObject> obj = QSharedPointer<VGObject> ();

View file

@ -335,7 +335,7 @@ void VToolSplinePath::contextMenuEvent(QGraphicsSceneContextMenuEvent *event)
*/
void VToolSplinePath::RefreshDataInFile()
{
QDomElement domElement = doc->elementById(QString().setNum(id));
QDomElement domElement = doc->elementById(id);
if (domElement.isElement() == false)
{
qDebug()<<"Can't find element with id="<<id<<"in pattern file";

View file

@ -99,7 +99,7 @@ void VAbstractNode::decrementReferens()
if (_referens <= 0)
{
doc->DecrementReferens(idNode);
QDomElement domElement = doc->elementById(QString().setNum(id));
QDomElement domElement = doc->elementById(id);
if (domElement.isElement())
{
QDomNode element = domElement.parentNode();

View file

@ -164,7 +164,7 @@ void VNodeArc::AddToFile()
*/
void VNodeArc::RefreshDataInFile()
{
QDomElement domElement = doc->elementById(QString().setNum(id));
QDomElement domElement = doc->elementById(id);
if (domElement.isElement())
{
doc->SetAttribute(domElement, AttrIdObject, idNode);

View file

@ -180,7 +180,7 @@ void VNodePoint::AddToFile()
void VNodePoint::RefreshDataInFile()
{
const QSharedPointer<VPointF> point = VAbstractTool::data.GeometricObject<VPointF>(id);
QDomElement domElement = doc->elementById(QString().setNum(id));
QDomElement domElement = doc->elementById(id);
if (domElement.isElement())
{
doc->SetAttribute(domElement, AttrIdObject, idNode);
@ -253,7 +253,7 @@ void VNodePoint::NameChangePosition(const QPointF &pos)
*/
void VNodePoint::UpdateNamePosition(qreal mx, qreal my)
{
QDomElement domElement = doc->elementById(QString().setNum(id));
QDomElement domElement = doc->elementById(id);
if (domElement.isElement())
{
doc->SetAttribute(domElement, AttrMx, QString().setNum(qApp->fromPixel(mx)));

View file

@ -167,7 +167,7 @@ void VNodeSpline::AddToFile()
*/
void VNodeSpline::RefreshDataInFile()
{
QDomElement domElement = doc->elementById(QString().setNum(id));
QDomElement domElement = doc->elementById(id);
if (domElement.isElement())
{
doc->SetAttribute(domElement, AttrIdObject, QString().setNum(idNode));

View file

@ -170,7 +170,7 @@ void VNodeSplinePath::AddToFile()
*/
void VNodeSplinePath::RefreshDataInFile()
{
QDomElement domElement = doc->elementById(QString().setNum(id));
QDomElement domElement = doc->elementById(id);
if (domElement.isElement())
{
doc->SetAttribute(domElement, AttrIdObject, QString().setNum(idNode));

View file

@ -310,7 +310,7 @@ int VAbstractTool::ConfirmDeletion()
void VAbstractTool::SaveOption(QSharedPointer<VGObject> &obj)
{
qCDebug(vTool)<<"Saving tool options";
QDomElement oldDomElement = doc->elementById(QString().setNum(id));
QDomElement oldDomElement = doc->elementById(id);
if (oldDomElement.isElement())
{
QDomElement newDomElement = oldDomElement.cloneNode().toElement();

View file

@ -304,7 +304,7 @@ void VToolDetail::AddToFile()
*/
void VToolDetail::RefreshDataInFile()
{
QDomElement domElement = doc->elementById(QString().setNum(id));
QDomElement domElement = doc->elementById(id);
if (domElement.isElement())
{
VDetail det = VAbstractTool::data.GetDetail(id);

View file

@ -750,7 +750,7 @@ void VToolUnionDetails::AddToFile()
*/
void VToolUnionDetails::RefreshDataInFile()
{
QDomElement domElement = doc->elementById(QString().setNum(id));
QDomElement domElement = doc->elementById(id);
if (domElement.isElement())
{
doc->SetAttribute(domElement, AttrIndexD1, indexD1);

View file

@ -50,7 +50,7 @@ void AddDet::undo()
QDomElement element;
if (doc->GetActivNodeElement(VPattern::TagDetails, element))
{
QDomElement domElement = doc->elementById(QString().setNum(nodeId));
QDomElement domElement = doc->elementById(nodeId);
if (domElement.isElement())
{
if (element.removeChild(domElement).isNull())

View file

@ -49,7 +49,7 @@ void AddDetNode::undo()
QDomElement modelingElement;
if (doc->GetActivNodeElement(VPattern::TagModeling, modelingElement))
{
QDomElement domElement = doc->elementById(QString().setNum(nodeId));
QDomElement domElement = doc->elementById(nodeId);
if (domElement.isElement())
{
if (modelingElement.removeChild(domElement).isNull())

View file

@ -56,7 +56,7 @@ void AddToCalc::undo()
QDomElement calcElement;
if (doc->GetActivNodeElement(VPattern::TagCalculation, calcElement))
{
QDomElement domElement = doc->elementById(QString().setNum(nodeId));
QDomElement domElement = doc->elementById(nodeId);
if (domElement.isElement())
{
if (calcElement.removeChild(domElement).isNull())
@ -102,7 +102,7 @@ void AddToCalc::redo()
}
else
{
QDomElement refElement = doc->elementById(QString().setNum(cursor));
QDomElement refElement = doc->elementById(cursor);
if (refElement.isElement())
{
calcElement.insertAfter(xml, refElement);

View file

@ -49,7 +49,7 @@ void AddUnionDetails::undo()
QDomElement modelingElement;
if (doc->GetActivNodeElement(VPattern::TagModeling, modelingElement))
{
QDomElement domElement = doc->elementById(QString().setNum(nodeId));
QDomElement domElement = doc->elementById(nodeId);
if (domElement.isElement())
{
if (modelingElement.removeChild(domElement).isNull())

View file

@ -36,7 +36,7 @@ DeleteDetail::DeleteDetail(VPattern *doc, quint32 id, QUndoCommand *parent)
{
setText(tr("Delete tool"));
nodeId = id;
QDomElement domElement = doc->elementById(QString().setNum(id));
QDomElement domElement = doc->elementById(id);
if (domElement.isElement())
{
xml = domElement.cloneNode().toElement();
@ -77,7 +77,7 @@ void DeleteDetail::redo()
{
qCDebug(vUndo)<<"Redo.";
QDomElement domElement = doc->elementById(QString().setNum(nodeId));
QDomElement domElement = doc->elementById(nodeId);
if (domElement.isElement())
{
parentNode.removeChild(domElement);

View file

@ -42,7 +42,7 @@ MoveDetail::MoveDetail(VPattern *doc, const double &x, const double &y, const qu
nodeId = id;
SCASSERT(scene != nullptr);
QDomElement domElement = doc->elementById(QString().setNum(id));
QDomElement domElement = doc->elementById(id);
if (domElement.isElement())
{
oldX = qApp->toPixel(doc->GetParametrDouble(domElement, VAbstractTool::AttrMx, "0.0"));
@ -64,7 +64,7 @@ void MoveDetail::undo()
{
qCDebug(vUndo)<<"Undo.";
QDomElement domElement = doc->elementById(QString().setNum(nodeId));
QDomElement domElement = doc->elementById(nodeId);
if (domElement.isElement())
{
SaveCoordinates(domElement, oldX, oldY);
@ -86,7 +86,7 @@ void MoveDetail::redo()
{
qCDebug(vUndo)<<"Redo.";
QDomElement domElement = doc->elementById(QString().setNum(nodeId));
QDomElement domElement = doc->elementById(nodeId);
if (domElement.isElement())
{
SaveCoordinates(domElement, newX, newY);

View file

@ -46,7 +46,7 @@ MoveLabel::MoveLabel(VPattern *doc, const double &x, const double &y, const quin
qCDebug(vUndo)<<"Label new My"<<newMy;
SCASSERT(scene != nullptr);
QDomElement domElement = doc->elementById(QString().setNum(id));
QDomElement domElement = doc->elementById(id);
if (domElement.isElement())
{
oldMx = qApp->toPixel(doc->GetParametrDouble(domElement, VAbstractTool::AttrMx, "0.0"));
@ -114,7 +114,7 @@ void MoveLabel::Do(double mx, double my)
qCDebug(vUndo)<<"New mx"<<mx;
qCDebug(vUndo)<<"New my"<<my;
QDomElement domElement = doc->elementById(QString().setNum(nodeId));
QDomElement domElement = doc->elementById(nodeId);
if (domElement.isElement())
{
doc->SetAttribute(domElement, VAbstractTool::AttrMx, QString().setNum(qApp->fromPixel(mx)));

View file

@ -88,7 +88,7 @@ int MoveSpline::id() const
//---------------------------------------------------------------------------------------------------------------------
void MoveSpline::Do(const VSpline &spl)
{
QDomElement domElement = doc->elementById(QString().setNum(nodeId));
QDomElement domElement = doc->elementById(nodeId);
if (domElement.isElement())
{
doc->SetAttribute(domElement, VAbstractTool::AttrAngle1, QString().setNum(spl.GetAngle1()));

View file

@ -86,7 +86,7 @@ int MoveSplinePath::id() const
//---------------------------------------------------------------------------------------------------------------------
void MoveSplinePath::Do(const VSplinePath &splPath)
{
QDomElement domElement = doc->elementById(QString().setNum(nodeId));
QDomElement domElement = doc->elementById(nodeId);
if (domElement.isElement())
{
doc->SetAttribute(domElement, VToolSplinePath::AttrKCurve, QString().setNum(splPath.GetKCurve()));

View file

@ -46,7 +46,7 @@ MoveSPoint::MoveSPoint(VPattern *doc, const double &x, const double &y, const qu
qCDebug(vUndo)<<"SPoint newY"<<newY;
SCASSERT(scene != nullptr);
QDomElement domElement = doc->elementById(QString().setNum(id));
QDomElement domElement = doc->elementById(id);
if (domElement.isElement())
{
oldX = qApp->toPixel(doc->GetParametrDouble(domElement, VAbstractTool::AttrX, "0.0"));
@ -114,7 +114,7 @@ void MoveSPoint::Do(double x, double y)
qCDebug(vUndo)<<"Move to x"<<x;
qCDebug(vUndo)<<"Move to y"<<y;
QDomElement domElement = doc->elementById(QString().setNum(nodeId));
QDomElement domElement = doc->elementById(nodeId);
if (domElement.isElement())
{
doc->SetAttribute(domElement, VAbstractTool::AttrX, QString().setNum(qApp->fromPixel(x)));

View file

@ -48,7 +48,7 @@ void SaveDetailOptions::undo()
{
qCDebug(vUndo)<<"Undo.";
QDomElement domElement = doc->elementById(QString().setNum(nodeId));
QDomElement domElement = doc->elementById(nodeId);
if (domElement.isElement())
{
SaveDet(domElement, oldDet);
@ -85,7 +85,7 @@ void SaveDetailOptions::redo()
{
qCDebug(vUndo)<<"Redo.";
QDomElement domElement = doc->elementById(QString().setNum(nodeId));
QDomElement domElement = doc->elementById(nodeId);
if (domElement.isElement())
{
SaveDet(domElement, newDet);

View file

@ -48,7 +48,7 @@ void SaveToolOptions::undo()
{
qCDebug(vUndo)<<"Undo.";
QDomElement domElement = doc->elementById(QString().setNum(nodeId));
QDomElement domElement = doc->elementById(nodeId);
if (domElement.isElement())
{
domElement.parentNode().replaceChild(oldXml, domElement);
@ -67,7 +67,7 @@ void SaveToolOptions::redo()
{
qCDebug(vUndo)<<"Redo.";
QDomElement domElement = doc->elementById(QString().setNum(nodeId));
QDomElement domElement = doc->elementById(nodeId);
if (domElement.isElement())
{
domElement.parentNode().replaceChild(newXml, domElement);

View file

@ -53,6 +53,7 @@ QWidget *DoubleSpinBoxDelegate::createEditor(QWidget *parent, const QStyleOption
Q_UNUSED(index);
emit NewLastValue(-10001.0);//Here need reset value to default because we begin work with new item
QDoubleSpinBox *editor = new QDoubleSpinBox(parent);
editor->setLocale(parent->locale());
editor->setMinimum(-10000.0);
editor->setMaximum(10000.0);
connect(editor, &QDoubleSpinBox::editingFinished, this, &DoubleSpinBoxDelegate::commitAndCloseEditor);

View file

@ -58,6 +58,7 @@ QWidget *TextDelegate::createEditor(QWidget *parent, const QStyleOptionViewItem
Q_UNUSED(option);
Q_UNUSED(index);
QLineEdit *editor = new QLineEdit(parent);
editor->setLocale(parent->locale());
//Same regex pattern in xsd file
editor->setValidator( new QRegExpValidator(QRegExp(regex)) );
connect(editor, &QLineEdit::editingFinished, this, &TextDelegate::commitAndCloseEditor);

View file

@ -94,7 +94,7 @@ QWidget* VFormulaProperty::createEditor(QWidget* parent, const QStyleOptionViewI
VFormula formula = VProperty::d_ptr->VariantValue.value<VFormula>();
VFormulaPropertyEditor* tmpEditor = new VFormulaPropertyEditor(parent);
tmpEditor->setLocale(parent->locale());
tmpEditor->SetFormula(formula);
VProperty::d_ptr->editor = tmpEditor;
return VProperty::d_ptr->editor;

View file

@ -232,6 +232,14 @@ void VToolOptionsPropertyBrowser::UpdateOptions()
}
}
//---------------------------------------------------------------------------------------------------------------------
void VToolOptionsPropertyBrowser::RefreshOptions()
{
QGraphicsItem *item = currentItem;
itemClicked(nullptr);//close options
itemClicked(item);//reopen options
}
//---------------------------------------------------------------------------------------------------------------------
void VToolOptionsPropertyBrowser::userChangedData(VProperty *property)
{

View file

@ -51,6 +51,7 @@ public slots:
void itemClicked(QGraphicsItem *item);
void userChangedData(VPE::VProperty* property);
void UpdateOptions();
void RefreshOptions();
private:
Q_DISABLE_COPY(VToolOptionsPropertyBrowser)

View file

@ -134,6 +134,12 @@ QDomElement VDomDocument::elementById(const QString& id)
return QDomElement();
}
//---------------------------------------------------------------------------------------------------------------------
QDomElement VDomDocument::elementById(quint32 id)
{
return elementById(QString().setNum(id));
}
//---------------------------------------------------------------------------------------------------------------------
/**
* @brief Removes all children of a given element tag. RENAME: removeAllChildren

View file

@ -81,6 +81,7 @@ public:
VDomDocument();
virtual ~VDomDocument();
QDomElement elementById(const QString& id);
QDomElement elementById(quint32 id);
void removeAllChilds(QDomElement &element);
template <typename T>
/**

View file

@ -199,14 +199,14 @@ qreal QmuParser::Max(const qreal *a_afArg, int a_iArgc)
* @param [out] a_fVal Pointer where the value should be stored in case one is found.
* @return 1 if a value was found 0 otherwise.
*/
int QmuParser::IsVal(const QString &a_szExpr, int *a_iPos, qreal *a_fVal)
int QmuParser::IsVal(const QString &a_szExpr, int *a_iPos, qreal *a_fVal, const std::locale &s_locale)
{
qreal fVal(0);
std::wstring a_szExprStd = a_szExpr.toStdWString();
stringstream_type stream(a_szExprStd);
stream.seekg(0); // todo: check if this really is necessary
stream.imbue(QmuParser::s_locale);
stream.imbue(s_locale);
stream >> fVal;
stringstream_type::pos_type iEnd = stream.tellg(); // Position after reading

View file

@ -54,7 +54,7 @@ namespace qmu
virtual void OnDetectVar(const QString &pExpr, int &nStart, int &nEnd);
qreal Diff(qreal *a_Var, qreal a_fPos, qreal a_fEpsilon = 0) const;
protected:
static int IsVal(const QString &a_szExpr, int *a_iPos, qreal *a_fVal);
static int IsVal(const QString &a_szExpr, int *a_iPos, qreal *a_fVal, const std::locale &s_locale);
// Trigonometric functions
static qreal Tan2(qreal, qreal);
// hyperbolic functions

View file

@ -37,7 +37,6 @@ using namespace std;
namespace qmu
{
std::locale QmuParserBase::s_locale = std::locale(std::locale::classic(), new change_dec_sep<char_type>('.'));
bool QmuParserBase::g_DbgDumpCmdCode = false;
bool QmuParserBase::g_DbgDumpStack = false;
@ -57,7 +56,8 @@ const QStringList QmuParserBase::c_DefaultOprt = QStringList()<< "<=" << ">=" <<
* @brief Constructor.
*/
QmuParserBase::QmuParserBase()
:m_pParseFormula(&QmuParserBase::ParseString), m_vRPN(), m_vStringBuf(), m_vStringVarBuf(), m_pTokenReader(),
:s_locale(std::locale(std::locale::classic(), new change_dec_sep<char_type>('.'))),
m_pParseFormula(&QmuParserBase::ParseString), m_vRPN(), m_vStringBuf(), m_vStringVarBuf(), m_pTokenReader(),
m_FunDef(), m_PostOprtDef(), m_InfixOprtDef(), m_OprtDef(), m_ConstDef(), m_StrVarDef(), m_VarDef(),
m_bBuiltInOp(true), m_sNameChars(), m_sOprtChars(), m_sInfixOprtChars(), m_nIfElseCounter(0), m_vStackBuffer(),
m_nFinalResultIdx(0), m_Tokens(QMap<int, QString>()), m_Numbers(QMap<int, QString>()), allowSubexpressions(true)
@ -72,10 +72,11 @@ QmuParserBase::QmuParserBase()
* Tha parser can be safely copy constructed but the bytecode is reset during copy construction.
*/
QmuParserBase::QmuParserBase(const QmuParserBase &a_Parser)
:m_pParseFormula(&QmuParserBase::ParseString), m_vRPN(), m_vStringBuf(), m_vStringVarBuf(), m_pTokenReader(),
m_FunDef(), m_PostOprtDef(), m_InfixOprtDef(), m_OprtDef(), m_ConstDef(), m_StrVarDef(), m_VarDef(),
m_bBuiltInOp(true), m_sNameChars(), m_sOprtChars(), m_sInfixOprtChars(), m_nIfElseCounter(0), m_vStackBuffer(),
m_nFinalResultIdx(0), m_Tokens(QMap<int, QString>()), m_Numbers(QMap<int, QString>()), allowSubexpressions(true)
:s_locale(a_Parser.getLocale()), m_pParseFormula(&QmuParserBase::ParseString), m_vRPN(), m_vStringBuf(),
m_vStringVarBuf(), m_pTokenReader(), m_FunDef(), m_PostOprtDef(), m_InfixOprtDef(), m_OprtDef(), m_ConstDef(),
m_StrVarDef(), m_VarDef(), m_bBuiltInOp(true), m_sNameChars(), m_sOprtChars(), m_sInfixOprtChars(),
m_nIfElseCounter(0), m_vStackBuffer(), m_nFinalResultIdx(0), m_Tokens(QMap<int, QString>()),
m_Numbers(QMap<int, QString>()), allowSubexpressions(true)
{
m_pTokenReader.reset(new token_reader_type(this));
Assign(a_Parser);
@ -220,6 +221,18 @@ void QmuParserBase::setAllowSubexpressions(bool value)
allowSubexpressions = value;
}
//---------------------------------------------------------------------------------------------------------------------
std::locale QmuParserBase::getLocale() const
{
return s_locale;
}
//---------------------------------------------------------------------------------------------------------------------
void QmuParserBase::setLocale(const std::locale &value)
{
s_locale = value;
}
//---------------------------------------------------------------------------------------------------------------------
/**
* @brief Returns the version of muparser.
@ -1300,7 +1313,7 @@ void QmuParserBase::CreateRPN() const
for (;;)
{
opt = m_pTokenReader->ReadNextToken();
opt = m_pTokenReader->ReadNextToken(s_locale);
switch (opt.GetCode())
{

View file

@ -122,9 +122,12 @@ public:
}
void setAllowSubexpressions(bool value);
std::locale getLocale() const;
void setLocale(const std::locale &value);
protected:
static const QStringList c_DefaultOprt;
static std::locale s_locale; ///< The locale used by the parser
std::locale s_locale; ///< The locale used by the parser
static bool g_DbgDumpCmdCode;
static bool g_DbgDumpStack;
void Init();

View file

@ -275,7 +275,7 @@ typedef qreal ( *strfun_type2 ) ( const QString &, qreal );
typedef qreal ( *strfun_type3 ) ( const QString &, qreal, qreal );
/** @brief Callback used for functions that identify values in a string. */
typedef int ( *identfun_type ) ( const QString &sExpr, int *nPos, qreal *fVal );
typedef int ( *identfun_type ) ( const QString &sExpr, int *nPos, qreal *fVal, const std::locale &s_locale );
/** @brief Callback used for variable creation factory functions. */
typedef qreal* ( *facfun_type ) ( const QString &, void* );

View file

@ -62,8 +62,9 @@ QmuParserTester::QmuParserTester()
}
//---------------------------------------------------------------------------------------------------------------------
int QmuParserTester::IsHexVal ( const QString &a_szExpr, int *a_iPos, qreal *a_fVal )
int QmuParserTester::IsHexVal ( const QString &a_szExpr, int *a_iPos, qreal *a_fVal, const std::locale &s_locale )
{
Q_UNUSED(s_locale)
if ( a_szExpr.data()[1] == 0 || ( a_szExpr.data()[0] != '0' || a_szExpr.data()[1] != 'x' ) )
{
return 0;

View file

@ -276,7 +276,7 @@ private:
}
// Custom value recognition
static int IsHexVal ( const QString &a_szExpr, int *a_iPos, qreal *a_fVal );
static int IsHexVal (const QString &a_szExpr, int *a_iPos, qreal *a_fVal , const std::locale &s_locale);
// cppcheck-suppress functionStatic
int TestNames();

View file

@ -204,7 +204,7 @@ void QmuParserTokenReader::ReInit()
/**
* @brief Read the next token from the string.
*/
QmuParserTokenReader::token_type QmuParserTokenReader::ReadNextToken()
QmuParserTokenReader::token_type QmuParserTokenReader::ReadNextToken(const std::locale &s_locale)
{
assert ( m_pParser );
@ -236,7 +236,7 @@ QmuParserTokenReader::token_type QmuParserTokenReader::ReadNextToken()
{
return SaveBeforeReturn ( tok ); // Check for function argument separators
}
if ( IsValTok ( tok ) )
if ( IsValTok ( tok, s_locale ) )
{
return SaveBeforeReturn ( tok ); // Check for values / constant tokens
}
@ -766,7 +766,7 @@ bool QmuParserTokenReader::IsPostOpTok ( token_type &a_Tok )
* @param a_Tok [out] If a value token is found it will be placed here.
* @return true if a value token has been found.
*/
bool QmuParserTokenReader::IsValTok ( token_type &a_Tok )
bool QmuParserTokenReader::IsValTok ( token_type &a_Tok, const std::locale &s_locale )
{
assert ( m_pConstDef );
assert ( m_pParser );
@ -802,7 +802,7 @@ bool QmuParserTokenReader::IsValTok ( token_type &a_Tok )
for ( item = m_vIdentFun.begin(); item != m_vIdentFun.end(); ++item )
{
int iStart = m_iPos;
if ( ( *item ) ( m_strFormula.mid ( m_iPos ), &m_iPos, &fVal ) == 1 )
if ( ( *item ) ( m_strFormula.mid ( m_iPos ), &m_iPos, &fVal, s_locale ) == 1 )
{
// 2013-11-27 Issue 2: https://code.google.com/p/muparser/issues/detail?id=2
strTok = m_strFormula.mid ( iStart, m_iPos-iStart );

View file

@ -58,7 +58,7 @@ public:
QChar GetArgSep() const;
void IgnoreUndefVar(bool bIgnore);
void ReInit();
token_type ReadNextToken();
token_type ReadNextToken(const std::locale &s_locale);
private:
/**
@ -103,7 +103,7 @@ private:
bool IsFunTok(token_type &a_Tok);
bool IsPostOpTok(token_type &a_Tok);
bool IsOprt(token_type &a_Tok);
bool IsValTok(token_type &a_Tok);
bool IsValTok(token_type &a_Tok, const std::locale &s_locale);
bool IsVarTok(token_type &a_Tok);
bool IsStrVarTok(token_type &a_Tok);
bool IsUndefVarTok(token_type &a_Tok);

View file

@ -58,6 +58,7 @@ QWidget* VColorProperty::createEditor(QWidget* parent, const QStyleOptionViewIte
Q_UNUSED(delegate);
VColorPropertyEditor* tmpWidget = new VColorPropertyEditor(parent);
tmpWidget->setLocale(parent->locale());
tmpWidget->SetColor(d_ptr->VariantValue.value<QColor>());
return tmpWidget;
}

View file

@ -70,6 +70,7 @@ QWidget* VEnumProperty::createEditor(QWidget * parent, const QStyleOptionViewIte
Q_UNUSED(delegate);
QComboBox* tmpEditor = new QComboBox(parent);
tmpEditor->clear();
tmpEditor->setLocale(parent->locale());
tmpEditor->addItems(EnumerationLiterals);
tmpEditor->setCurrentIndex(VProperty::d_ptr->VariantValue.toInt());
connect(tmpEditor, static_cast<void (QComboBox::*)(int)>(&QComboBox::currentIndexChanged), this,

View file

@ -87,6 +87,7 @@ QWidget* VFileProperty::createEditor(QWidget * parent, const QStyleOptionViewIte
VFileEditWidget::connect(tmpWidget, SIGNAL(commitData(QWidget*)), delegate, SIGNAL(commitData(QWidget*)));
}
tmpWidget->setLocale(parent->locale());
tmpWidget->setFilter(static_cast<VFilePropertyPrivate*>(d_ptr)->FileFilters); // todo: parse this string
tmpWidget->setFile(d_ptr->VariantValue.toString());
tmpWidget->setDirectory(static_cast<VFilePropertyPrivate*>(d_ptr)->Directory);

View file

@ -86,6 +86,7 @@ QWidget *VLineColorProperty::createEditor(QWidget *parent, const QStyleOptionVie
++i;
}
tmpEditor->setLocale(parent->locale());
tmpEditor->setCurrentIndex(VProperty::d_ptr->VariantValue.toInt());
connect(tmpEditor, static_cast<void (QComboBox::*)(int)>(&QComboBox::currentIndexChanged), this,
&VLineColorProperty::currentIndexChanged);

View file

@ -76,6 +76,7 @@ QWidget *VLineTypeProperty::createEditor(QWidget *parent, const QStyleOptionView
Q_UNUSED(delegate);
QComboBox* tmpEditor = new QComboBox(parent);
tmpEditor->clear();
tmpEditor->setLocale(parent->locale());
tmpEditor->setIconSize(QSize(80, 14));
tmpEditor->setMinimumWidth(80);
tmpEditor->setMaximumWidth(110);

View file

@ -56,6 +56,7 @@ QWidget* VIntegerProperty::createEditor(QWidget * parent, const QStyleOptionView
Q_UNUSED(delegate);
QSpinBox* tmpEditor = new QSpinBox(parent);
tmpEditor->setLocale(parent->locale());
tmpEditor->setMinimum(static_cast<int>(minValue));
tmpEditor->setMaximum(static_cast<int>(maxValue));
tmpEditor->setSingleStep(static_cast<int>(singleStep));
@ -162,6 +163,7 @@ QWidget* VDoubleProperty::createEditor(QWidget * parent, const QStyleOptionViewI
Q_UNUSED(options);
Q_UNUSED(delegate);
QDoubleSpinBox* tmpEditor = new QDoubleSpinBox(parent);
tmpEditor->setLocale(parent->locale());
tmpEditor->setMinimum(minValue);
tmpEditor->setMaximum(maxValue);
tmpEditor->setDecimals(Precision);

View file

@ -64,6 +64,7 @@ QWidget* VObjectProperty::createEditor(QWidget * parent, const QStyleOptionViewI
Q_UNUSED(delegate);
QComboBox* tmpEditor = new QComboBox(parent);
tmpEditor->clear();
tmpEditor->setLocale(parent->locale());
FillList(tmpEditor, objects);
tmpEditor->setCurrentIndex(tmpEditor->findData(VProperty::d_ptr->VariantValue.toUInt()));
connect(tmpEditor, static_cast<void (QComboBox::*)(int)>(&QComboBox::currentIndexChanged), this,

View file

@ -61,7 +61,7 @@ QWidget* VShortcutProperty::createEditor(QWidget * parent, const QStyleOptionVie
{
VShortcutEditWidget::connect(tmpWidget, SIGNAL(commitData(QWidget*)), delegate, SIGNAL(commitData(QWidget*)));
}
tmpWidget->setLocale(parent->locale());
return tmpWidget;
}

View file

@ -50,6 +50,7 @@ QWidget *VPE::VStringProperty::createEditor(QWidget *parent, const QStyleOptionV
Q_UNUSED(delegate);
QLineEdit* tmpEditor = new QLineEdit(parent);
tmpEditor->setLocale(parent->locale());
tmpEditor->setReadOnly(readOnly);
tmpEditor->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
tmpEditor->setText(d_ptr->VariantValue.toString());