#include <GeomDataAPI_Point2D.h>
#include <ModuleBase_Tools.h>
+#include <ModuleBase_IWorkshop.h>
+#include <ModuleBase_IViewer.h>
#include <Events_Loop.h>
+#include <Config_PropManager.h>
#include <QLayout>
#include <QPushButton>
#include <QEvent>
#include <QKeyEvent>
#include <QDialogButtonBox>
+#include <QShortcut>
enum ColumnType {
Col_Name,
const char* NoName = "<NoName>";
const char* NoValue = "<NoValue>";
-const char* NotValid = "<NotValid>";
/*!
* \ingroup GUI
/////////////////////////////////////////////////////////////////////////////////////////////////
ParametersPlugin_WidgetParamsMgr::ParametersPlugin_WidgetParamsMgr(QWidget* theParent,
- const Config_WidgetAPI* theData)
+ const Config_WidgetAPI* theData, ModuleBase_IWorkshop* theWorkshop)
: ModuleBase_ModelDialogWidget(theParent, theData),
- isUpplyBlocked(false)
+ myWorkshop(theWorkshop), isUpplyBlocked(false)
{
QVBoxLayout* aLayout = new QVBoxLayout(this);
connect(myAddBtn, SIGNAL(clicked(bool)), SLOT(onAdd()));
aBtnLayout->addWidget(myAddBtn);
+ QString aAddStr(Config_PropManager::string("Shortcuts", "add_parameter_shortcut").c_str());
+ if (aAddStr.isEmpty())
+ aAddStr = "Ctrl+A";
+
+ QShortcut* aAddShc = new QShortcut(QKeySequence(aAddStr), myAddBtn);
+ connect(aAddShc, SIGNAL(activated()), SLOT(onAdd()));
+
myInsertBtn = new QPushButton(translate("Insert"), this);
connect(myInsertBtn, SIGNAL(clicked(bool)), SLOT(onInsert()));
aBtnLayout->addWidget(myInsertBtn);
} else {
if (!theFeatureList.contains(aReferenced)) {
QStringList aValNames;
- aValNames << aReferenced->data()->name().c_str();
+ aValNames << QString::fromStdWString(aReferenced->data()->name());
std::string aId = aAttr->attributeType();
if (aId == ModelAPI_AttributeDouble::typeId()) {
std::string aName = aParameter->string(ParametersPlugin_Parameter::VARIABLE_ID())->value();
if (aName.empty()) {
- aValues << NoName;
+ aValues << translate(NoName);
} else
aValues << aName.c_str();
std::string aExpr = aParameter->string(ParametersPlugin_Parameter::EXPRESSION_ID())->value();
if (aName.empty()) {
- aValues << NoValue;
+ aValues << translate(NoValue);
} else
aValues << aExpr.c_str();
QTreeWidgetItem* ParametersPlugin_WidgetParamsMgr::createNewItem(QTreeWidgetItem* theParent) const
{
QStringList aValues;
- aValues << NoName;
- aValues << NoValue;
+ aValues << translate(NoName);
+ aValues << translate(NoValue);
QTreeWidgetItem* aItem = new QTreeWidgetItem(aValues);
if (theParent == myParameters) {
int aCurrent = myDelegate->editIndex().row();
int i = 0;
foreach(FeaturePtr aFeature, myParametersList) {
- if ((i != aCurrent) && (aFeature->data()->name() == theName.toStdString()))
+ if ((i != aCurrent) && (aFeature->data()->name() == theName.toStdWString()))
return true;
i++;
}
for(int i = 0; i < myParameters->childCount(); i++) {
aItem = myParameters->child(i);
if ((aItem->text(Col_Name) == NoName) ||
- (aItem->text(Col_Equation) == NoValue) ||
+ (aItem->text(Col_Equation) == translate(NoValue)) ||
(!ModelAPI_Expression::isVariable(aItem->text(Col_Name).toStdString())) ) {
return false;
}
SessionPtr aMgr = ModelAPI_Session::get();
aMgr->blockAutoUpdate(false);
aMgr->blockAutoUpdate(true);
-}
\ No newline at end of file
+ myWorkshop->viewer()->update();
+}