Skip to content

Commit

Permalink
Merge edad210 into dded71b
Browse files Browse the repository at this point in the history
  • Loading branch information
LafCorentin committed Sep 16, 2020
2 parents dded71b + edad210 commit aa59539
Show file tree
Hide file tree
Showing 6 changed files with 381 additions and 21 deletions.
Expand Up @@ -193,7 +193,7 @@ CellMLZincMappingViewEditingWidget::CellMLZincMappingViewEditingWidget(const QSt
mZincWidget = new CellMLZincMappingViewZincWidget(this, mZincMeshFileNames, this);

connect(mClearNode, &QAction::triggered,
mZincWidget, &CellMLZincMappingViewZincWidget::eraseNode);
mZincWidget, &CellMLZincMappingViewZincWidget::eraseNodeSlot);
connect(mNodeSizeWidget, &QwtWheel::valueChanged,
mZincWidget, &CellMLZincMappingViewZincWidget::setNodeSizes);

Expand Down Expand Up @@ -321,6 +321,13 @@ void CellMLZincMappingViewEditingWidget::setSizes(const QIntList &pSizesHorizont

//==============================================================================

CellMLZincMappingViewZincWidget * CellMLZincMappingViewEditingWidget::getZincWidget()
{
return mZincWidget;
}

//==============================================================================

void CellMLZincMappingViewEditingWidget::dragEnterEvent(QDragEnterEvent *pEvent)
{
// Accept the proposed action for the event, but only if it refers to one or
Expand Down Expand Up @@ -566,7 +573,7 @@ void CellMLZincMappingViewEditingWidget::openMapping(const QString &pFileName)
&& variables.contains(component)
&& variables.find(component)->contains(variable)) {

mZincWidget->setNodeMapped(id);
mZincWidget->setNodeMapped(id,component,variable);
setNodeValue(id,component,variable);
}
}
Expand Down
Expand Up @@ -112,6 +112,8 @@ class CellMLZincMappingViewEditingWidget : public Core::Widget
void setSizes(const QIntList &pSizesHorizontal,
const QIntList &pSizesVertical);

CellMLZincMappingViewZincWidget * getZincWidget();

signals:
void horizontalSplitterMoved(const QIntList &pSizes);
void verticalSplitterMoved(const QIntList &pSizes);
Expand Down
Expand Up @@ -54,6 +54,7 @@ void CellMLZincMappingViewWidget::retranslateUi()

//==============================================================================

static const char *SettingsCellmlZincMappingViewDisplayedZincField = "CellmlZincMappingViewDisplayedZincField";
static const char *SettingsCellmlZincMappingViewEditingWidgetHorizontalSizes = "CellmlZincMappingViewEditingWidgetHorizontalSizes";
static const char *SettingsCellmlZincMappingViewEditingWidgetVerticalSizes = "CellmlZincMappingViewEditingWidgetVerticalSizes";
static const char *SettingsCellmlZincMappingViewMeshFileNames = "CellmlZincMappingViewMeshFileNames";
Expand All @@ -74,10 +75,18 @@ void CellMLZincMappingViewWidget::loadSettings(QSettings &pSettings)
0.13*AvailableGeometryHeight};
static const QStringList DefaultMeshFileNames = {};

static const QVariantList DefaultDisplayedZincFields = {true, true, true, true, true};

mEditingWidgetHorizontalSizes = qVariantListToIntList(pSettings.value(SettingsCellmlZincMappingViewEditingWidgetHorizontalSizes, DefaultEditingWidgetHorizontalSizes).toList());
mEditingWidgetVerticalSizes = qVariantListToIntList(pSettings.value(SettingsCellmlZincMappingViewEditingWidgetVerticalSizes, DefaultEditingWidgetVerticalSizes).toList());

mMeshFileNames = pSettings.value(SettingsCellmlZincMappingViewMeshFileNames, DefaultMeshFileNames).toStringList();

mDisplayedZincFields.clear();

for (QVariant variant : pSettings.value(SettingsCellmlZincMappingViewDisplayedZincField, DefaultDisplayedZincFields).toList()) {
mDisplayedZincFields.append(variant.toBool());
}
}

//==============================================================================
Expand All @@ -90,12 +99,27 @@ void CellMLZincMappingViewWidget::saveSettings(QSettings &pSettings) const
pSettings.setValue(SettingsCellmlZincMappingViewEditingWidgetVerticalSizes, qIntListToVariantList(mEditingWidgetVerticalSizes));

pSettings.setValue(SettingsCellmlZincMappingViewMeshFileNames, mMeshFileNames);

QVariantList toVariant;
for (bool value : mDisplayedZincFields) {
toVariant.append(QVariant(value));
}

pSettings.setValue(SettingsCellmlZincMappingViewDisplayedZincField, toVariant);
}

//==============================================================================

void CellMLZincMappingViewWidget::initialize(const QString &pFileName)
{

// Try to get back the last state of display

if (mEditingWidget != nullptr) {
mDisplayedZincFields = mEditingWidget->getZincWidget()->getCheckedAction();
}


// Retrieve the editing widget associated with the given file, if any

mEditingWidget = mEditingWidgets.value(pFileName);
Expand All @@ -117,6 +141,10 @@ void CellMLZincMappingViewWidget::initialize(const QString &pFileName)
mEditingWidgets.insert(pFileName, mEditingWidget);
}

// load its settings

mEditingWidget->getZincWidget()->setCheckedAction(mDisplayedZincFields);

// Update the sizes of our new editing widget

mEditingWidget->setSizes(mEditingWidgetHorizontalSizes,
Expand All @@ -143,6 +171,9 @@ void CellMLZincMappingViewWidget::finalize(const QString &pFileName)
CellMLZincMappingViewEditingWidget *editingWidget = mEditingWidgets.value(pFileName);

if (editingWidget != nullptr) {

mDisplayedZincFields = editingWidget->getZincWidget()->getCheckedAction();

// There is an editing widget for the given file name, so delete it and
// remove it from our list

Expand Down
Expand Up @@ -80,6 +80,8 @@ class CellMLZincMappingViewWidget : public Core::ViewWidget

QStringList mMeshFileNames;

QList<bool> mDisplayedZincFields;

private slots:
void EditingWidgetHorizontalSplitterMoved(const QIntList &pSizes);
void EditingWidgetVerticalSplitterMoved(const QIntList &pSizes);
Expand Down

0 comments on commit aa59539

Please sign in to comment.