Skip to content

Commit 6247798

Browse files
committed
Fixes #2274 & #2845.
Update Libraries browser when user modifies the text.
1 parent 2c2c5e9 commit 6247798

File tree

10 files changed

+162
-31
lines changed

10 files changed

+162
-31
lines changed

OMEdit/OMEditGUI/Editors/BaseEditor.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -182,8 +182,8 @@ class BaseEditor : public QWidget
182182
MainWindow* getMainWindow() {return mpMainWindow;}
183183
PlainTextEdit *getPlainTextEdit() {return mpPlainTextEdit;}
184184
FindReplaceWidget* getFindReplaceWidget() {return mpFindReplaceWidget;}
185-
bool canHaveBreakpoints() {return mCanHaveBreakpoints;}
186185
void setCanHaveBreakpoints(bool canHaveBreakpoints);
186+
bool canHaveBreakpoints() {return mCanHaveBreakpoints;}
187187
QAction *getToggleBreakpointAction() {return mpToggleBreakpointAction;}
188188
DocumentMarker* getDocumentMarker() {return mpDocumentMarker;}
189189
void goToLineNumber(int lineNumber);

OMEdit/OMEditGUI/Editors/MetaModelEditor.cpp

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -73,8 +73,10 @@ bool MetaModelEditor::validateText()
7373
pMessageBox->setText(GUIMessages::getMessage(GUIMessages::ERROR_IN_TEXT).arg("MetaModel")
7474
.append(GUIMessages::getMessage(GUIMessages::CHECK_MESSAGES_BROWSER))
7575
.append(GUIMessages::getMessage(GUIMessages::REVERT_PREVIOUS_OR_FIX_ERRORS_MANUALLY)));
76-
pMessageBox->addButton(tr("Fix error(s) manually"), QMessageBox::AcceptRole);
77-
pMessageBox->addButton(tr("Revert to last correct version"), QMessageBox::RejectRole);
76+
pMessageBox->addButton(Helper::fixErrorsManually, QMessageBox::AcceptRole);
77+
pMessageBox->addButton(Helper::revertToLastCorrectVersion, QMessageBox::RejectRole);
78+
// we set focus to this widget here so when the error dialog is closed Qt gives back the focus to this widget.
79+
mpPlainTextEdit->setFocus(Qt::ActiveWindowFocusReason);
7880
int answer = pMessageBox->exec();
7981
switch (answer) {
8082
case QMessageBox::RejectRole:

OMEdit/OMEditGUI/Editors/ModelicaTextEditor.cpp

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -200,8 +200,10 @@ bool ModelicaTextEditor::validateText(LibraryTreeItem **pLibraryTreeItem)
200200
pMessageBox->setText(GUIMessages::getMessage(GUIMessages::ERROR_IN_TEXT).arg("Modelica")
201201
.append(GUIMessages::getMessage(GUIMessages::CHECK_MESSAGES_BROWSER))
202202
.append(GUIMessages::getMessage(GUIMessages::REVERT_PREVIOUS_OR_FIX_ERRORS_MANUALLY)));
203-
pMessageBox->addButton(tr("Fix error(s) manually"), QMessageBox::AcceptRole);
204-
pMessageBox->addButton(tr("Revert to last correct version"), QMessageBox::RejectRole);
203+
pMessageBox->addButton(Helper::fixErrorsManually, QMessageBox::AcceptRole);
204+
pMessageBox->addButton(Helper::revertToLastCorrectVersion, QMessageBox::RejectRole);
205+
// we set focus to this widget here so when the error dialog is closed Qt gives back the focus to this widget.
206+
mpPlainTextEdit->setFocus(Qt::ActiveWindowFocusReason);
205207
int answer = pMessageBox->exec();
206208
switch (answer) {
207209
case QMessageBox::RejectRole:

OMEdit/OMEditGUI/MainWindow.cpp

Lines changed: 82 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -184,6 +184,7 @@ MainWindow::MainWindow(QSplashScreen *pSplashScreen, bool debug, QWidget *parent
184184
addDockWidget(Qt::RightDockWidgetArea, mpDocumentationDockWidget);
185185
setCorner(Qt::TopRightCorner, Qt::RightDockWidgetArea);
186186
mpDocumentationDockWidget->hide();
187+
connect(mpDocumentationDockWidget, SIGNAL(visibilityChanged(bool)), SLOT(documentationDockWidgetVisibilityChanged(bool)));
187188
// Create VariablesWidget dock
188189
mpVariablesDockWidget = new QDockWidget(Helper::variablesBrowser, this);
189190
mpVariablesDockWidget->setObjectName("Variables");
@@ -915,8 +916,7 @@ void MainWindow::fetchInterfaceData(LibraryTreeItem *pLibraryTreeItem)
915916
{
916917
/* if MetaModel text is changed manually by user then validate it before fetaching the interface data. */
917918
if (pLibraryTreeItem->getModelWidget()) {
918-
MetaModelEditor *pMetaModelEditor = dynamic_cast<MetaModelEditor*>(pLibraryTreeItem->getModelWidget()->getEditor());
919-
if (pMetaModelEditor && !pMetaModelEditor->validateText()) {
919+
if (!pLibraryTreeItem->getModelWidget()->validateText(&pLibraryTreeItem)) {
920920
return;
921921
}
922922
}
@@ -963,8 +963,7 @@ void MainWindow::TLMSimulate(LibraryTreeItem *pLibraryTreeItem)
963963
{
964964
/* if MetaModel text is changed manually by user then validate it before starting the TLM co-simulation. */
965965
if (pLibraryTreeItem->getModelWidget()) {
966-
MetaModelEditor *pMetaModelEditor = dynamic_cast<MetaModelEditor*>(pLibraryTreeItem->getModelWidget()->getEditor());
967-
if (pMetaModelEditor && !pMetaModelEditor->validateText()) {
966+
if (!pLibraryTreeItem->getModelWidget()->validateText(&pLibraryTreeItem)) {
968967
return;
969968
}
970969
}
@@ -2175,8 +2174,21 @@ void MainWindow::toggleShapesButton()
21752174
}
21762175
}
21772176

2177+
/*!
2178+
* \brief MainWindow::openRecentModelWidget
2179+
* Slot activated when mpModelSwitcherActions triggered SIGNAL is raised.\n
2180+
* Before switching to new ModelWidget try to update the class contents if user has changed anything.
2181+
*/
21782182
void MainWindow::openRecentModelWidget()
21792183
{
2184+
/* if Model text is changed manually by user then validate it before opening recent ModelWidget. */
2185+
ModelWidget *pModelWidget = mpModelWidgetContainer->getCurrentModelWidget();
2186+
if (pModelWidget && pModelWidget->getLibraryTreeItem()) {
2187+
LibraryTreeItem *pLibraryTreeItem = pModelWidget->getLibraryTreeItem();
2188+
if (!pModelWidget->validateText(&pLibraryTreeItem)) {
2189+
return;
2190+
}
2191+
}
21802192
QAction *pAction = qobject_cast<QAction*>(sender());
21812193
QToolButton *pToolButton = qobject_cast<QToolButton*>(sender());
21822194
LibraryTreeItem *pLibraryTreeItem;
@@ -2338,6 +2350,24 @@ void MainWindow::perspectiveTabChanged(int tabIndex)
23382350
}
23392351
}
23402352

2353+
/*!
2354+
* \brief MainWindow::documentationDockWidgetVisibilityChanged
2355+
* Handles the VisibilityChanged signal of Documentation Dock Widget.
2356+
* \param visible
2357+
*/
2358+
void MainWindow::documentationDockWidgetVisibilityChanged(bool visible)
2359+
{
2360+
if (visible) {
2361+
ModelWidget *pModelWidget = mpModelWidgetContainer->getCurrentModelWidget();
2362+
if (pModelWidget && pModelWidget->getLibraryTreeItem()) {
2363+
LibraryTreeItem *pLibraryTreeItem = pModelWidget->getLibraryTreeItem();
2364+
if (pModelWidget->validateText(&pLibraryTreeItem)) {
2365+
mpDocumentationWidget->showDocumentation(pLibraryTreeItem);
2366+
}
2367+
}
2368+
}
2369+
}
2370+
23412371
void MainWindow::autoSave()
23422372
{
23432373
// bool autoSaveForSingleClasses = mpOptionsDialog->getGeneralSettingsPage()->getEnableAutoSaveForSingleClassesCheckBox()->isChecked();
@@ -2378,16 +2408,31 @@ void MainWindow::autoSave()
23782408
// }
23792409
}
23802410

2411+
/*!
2412+
* \brief MainWindow::switchToWelcomePerspectiveSlot
2413+
* Slot activated when Ctrl+f1 is clicked.
2414+
* Switches to welcome perspective.
2415+
*/
23812416
void MainWindow::switchToWelcomePerspectiveSlot()
23822417
{
23832418
mpPerspectiveTabbar->setCurrentIndex(0);
23842419
}
23852420

2421+
/*!
2422+
* \brief MainWindow::switchToModelingPerspectiveSlot
2423+
* Slot activated when Ctrl+f2 is clicked.
2424+
* Switches to modeling perspective.
2425+
*/
23862426
void MainWindow::switchToModelingPerspectiveSlot()
23872427
{
23882428
mpPerspectiveTabbar->setCurrentIndex(1);
23892429
}
23902430

2431+
/*!
2432+
* \brief MainWindow::switchToPlottingPerspectiveSlot
2433+
* Slot activated when Ctrl+f3 is clicked.
2434+
* Switches to plotting perspective.
2435+
*/
23912436
void MainWindow::switchToPlottingPerspectiveSlot()
23922437
{
23932438
mpPerspectiveTabbar->setCurrentIndex(2);
@@ -2969,8 +3014,22 @@ void MainWindow::storePlotWindowsStateAndGeometry()
29693014
}
29703015
}
29713016

3017+
/*!
3018+
* \brief MainWindow::switchToWelcomePerspective
3019+
* Switches to Welcome perspective.
3020+
*/
29723021
void MainWindow::switchToWelcomePerspective()
29733022
{
3023+
ModelWidget *pModelWidget = mpModelWidgetContainer->getCurrentModelWidget();
3024+
if (pModelWidget && pModelWidget->getLibraryTreeItem()) {
3025+
LibraryTreeItem *pLibraryTreeItem = pModelWidget->getLibraryTreeItem();
3026+
if (!pModelWidget->validateText(&pLibraryTreeItem)) {
3027+
bool signalsState = mpPerspectiveTabbar->blockSignals(true);
3028+
mpPerspectiveTabbar->setCurrentIndex(1);
3029+
mpPerspectiveTabbar->blockSignals(signalsState);
3030+
return;
3031+
}
3032+
}
29743033
storePlotWindowsStateAndGeometry();
29753034
mpPlotWindowContainer->tileSubWindows();
29763035
mpCentralStackedWidget->setCurrentWidget(mpWelcomePageWidget);
@@ -2982,6 +3041,10 @@ void MainWindow::switchToWelcomePerspective()
29823041
mpPlotToolBar->setEnabled(false);
29833042
}
29843043

3044+
/*!
3045+
* \brief MainWindow::switchToModelingPerspective
3046+
* Switches to Modeling perspective.
3047+
*/
29853048
void MainWindow::switchToModelingPerspective()
29863049
{
29873050
storePlotWindowsStateAndGeometry();
@@ -2997,8 +3060,22 @@ void MainWindow::switchToModelingPerspective()
29973060
}
29983061
}
29993062

3063+
/*!
3064+
* \brief MainWindow::switchToPlottingPerspective
3065+
* Switches to plotting perspective.
3066+
*/
30003067
void MainWindow::switchToPlottingPerspective()
30013068
{
3069+
ModelWidget *pModelWidget = mpModelWidgetContainer->getCurrentModelWidget();
3070+
if (pModelWidget && pModelWidget->getLibraryTreeItem()) {
3071+
LibraryTreeItem *pLibraryTreeItem = pModelWidget->getLibraryTreeItem();
3072+
if (!pModelWidget->validateText(&pLibraryTreeItem)) {
3073+
bool signalsState = mpPerspectiveTabbar->blockSignals(true);
3074+
mpPerspectiveTabbar->setCurrentIndex(1);
3075+
mpPerspectiveTabbar->blockSignals(signalsState);
3076+
return;
3077+
}
3078+
}
30023079
mpCentralStackedWidget->setCurrentWidget(mpPlotWindowContainer);
30033080
int i = 0;
30043081
foreach (QMdiSubWindow *pWindow, mpPlotWindowContainer->subWindowList()) {
@@ -3089,8 +3166,7 @@ void MainWindow::fetchInterfaceDataHelper(LibraryTreeItem *pLibraryTreeItem)
30893166
{
30903167
/* if Modelica text is changed manually by user then validate it before saving. */
30913168
if (pLibraryTreeItem->getModelWidget()) {
3092-
MetaModelEditor *pMetaModelEditor = dynamic_cast<MetaModelEditor*>(pLibraryTreeItem->getModelWidget()->getEditor());
3093-
if (pMetaModelEditor && !pMetaModelEditor->validateText()) {
3169+
if (!pLibraryTreeItem->getModelWidget()->validateText(&pLibraryTreeItem)) {
30943170
return;
30953171
}
30963172
}

OMEdit/OMEditGUI/MainWindow.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -402,6 +402,7 @@ public slots:
402402
void readInterfaceData(LibraryTreeItem *pLibraryTreeItem);
403403
private slots:
404404
void perspectiveTabChanged(int tabIndex);
405+
void documentationDockWidgetVisibilityChanged(bool visible);
405406
void autoSave();
406407
void switchToWelcomePerspectiveSlot();
407408
void switchToModelingPerspectiveSlot();

OMEdit/OMEditGUI/Modeling/MessagesWidget.cpp

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -261,8 +261,12 @@ void MessagesWidget::openErrorMessageClass(QUrl url)
261261
if (className.startsWith("/")) className.remove(0, 1);
262262
LibraryTreeItem *pLibraryTreeItem = mpMainWindow->getLibraryWidget()->getLibraryTreeModel()->findLibraryTreeItem(className);
263263
if (pLibraryTreeItem) {
264-
mpMainWindow->getLibraryWidget()->getLibraryTreeModel()->showModelWidget(pLibraryTreeItem);
265264
ModelWidget *pModelWidget = pLibraryTreeItem->getModelWidget();
265+
if (pModelWidget) {
266+
mpMainWindow->getModelWidgetContainer()->addModelWidget(pModelWidget, false);
267+
} else {
268+
mpMainWindow->getLibraryWidget()->getLibraryTreeModel()->showModelWidget(pLibraryTreeItem);
269+
}
266270
if (pModelWidget && pModelWidget->getEditor()) {
267271
#if (QT_VERSION >= QT_VERSION_CHECK(5, 0, 0))
268272
QUrlQuery query(url);

OMEdit/OMEditGUI/Modeling/ModelWidgetContainer.cpp

Lines changed: 58 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -2775,6 +2775,10 @@ void ModelWidget::reDrawModelWidget()
27752775
mDiagramViewLoaded = true;
27762776
mConnectionsLoaded = true;
27772777
}
2778+
// if documentation view is visible then update it
2779+
if (mpModelWidgetContainer->getMainWindow()->getDocumentationDockWidget()->isVisible()) {
2780+
mpModelWidgetContainer->getMainWindow()->getDocumentationWidget()->showDocumentation(getLibraryTreeItem());
2781+
}
27782782
// clear the undo stack
27792783
mpUndoStack->clear();
27802784
// announce the change.
@@ -3638,7 +3642,8 @@ void ModelWidget::showIconView(bool checked)
36383642
if (pSubWindow) {
36393643
pSubWindow->setWindowIcon(QIcon(":/Resources/icons/model.svg"));
36403644
}
3641-
mpIconGraphicsView->setFocus();
3645+
mpModelWidgetContainer->currentModelWidgetChanged(mpModelWidgetContainer->getCurrentMdiSubWindow());
3646+
mpIconGraphicsView->setFocus(Qt::ActiveWindowFocusReason);
36423647
if (!checked || (checked && mpIconGraphicsView->isVisible())) {
36433648
return;
36443649
}
@@ -3669,7 +3674,8 @@ void ModelWidget::showDiagramView(bool checked)
36693674
if (pSubWindow) {
36703675
pSubWindow->setWindowIcon(QIcon(":/Resources/icons/modeling.png"));
36713676
}
3672-
mpDiagramGraphicsView->setFocus();
3677+
mpModelWidgetContainer->currentModelWidgetChanged(mpModelWidgetContainer->getCurrentMdiSubWindow());
3678+
mpDiagramGraphicsView->setFocus(Qt::ActiveWindowFocusReason);
36733679
if (!checked || (checked && mpDiagramGraphicsView->isVisible())) {
36743680
return;
36753681
}
@@ -3696,11 +3702,12 @@ void ModelWidget::showTextView(bool checked)
36963702
if (!checked || (checked && mpEditor->isVisible())) {
36973703
return;
36983704
}
3705+
mpModelWidgetContainer->currentModelWidgetChanged(mpModelWidgetContainer->getCurrentMdiSubWindow());
36993706
mpViewTypeLabel->setText(StringHandler::getViewType(StringHandler::ModelicaText));
37003707
mpIconGraphicsView->hide();
37013708
mpDiagramGraphicsView->hide();
37023709
mpEditor->show();
3703-
mpEditor->getPlainTextEdit()->setFocus();
3710+
mpEditor->getPlainTextEdit()->setFocus(Qt::ActiveWindowFocusReason);
37043711
mpModelWidgetContainer->setPreviousViewType(StringHandler::ModelicaText);
37053712
updateUndoRedoActions();
37063713
}
@@ -3863,7 +3870,7 @@ void ModelWidgetContainer::addModelWidget(ModelWidget *pModelWidget, bool checkP
38633870
}
38643871
// get the preferred view to display
38653872
QString preferredView = pModelWidget->getLibraryTreeItem()->mClassInformation.preferredView;
3866-
if (preferredView.isEmpty()) {
3873+
if (!preferredView.isEmpty()) {
38673874
if (preferredView.compare("info") == 0) {
38683875
pModelWidget->showDocumentationView();
38693876
loadPreviousViewType(pModelWidget);
@@ -3946,6 +3953,17 @@ bool ModelWidgetContainer::eventFilter(QObject *object, QEvent *event)
39463953
if (!object || isHidden() || qApp->activeWindow() != mpMainWindow) {
39473954
return QMdiArea::eventFilter(object, event);
39483955
}
3956+
if ((event->type() == QEvent::MouseButtonPress && qobject_cast<QMenuBar*>(object)) ||
3957+
(event->type() == QEvent::FocusIn && (qobject_cast<LibraryTreeView*>(object) || qobject_cast<DocumentationViewer*>(object)))) {
3958+
ModelWidget *pModelWidget = getCurrentModelWidget();
3959+
if (pModelWidget && pModelWidget->getLibraryTreeItem()) {
3960+
LibraryTreeItem *pLibraryTreeItem = pModelWidget->getLibraryTreeItem();
3961+
/* if Model text is changed manually by user then validate it. */
3962+
if (!pModelWidget->validateText(&pLibraryTreeItem)) {
3963+
return true;
3964+
}
3965+
}
3966+
}
39493967
// Global key events with Ctrl modifier.
39503968
if (event->type() == QEvent::KeyPress || event->type() == QEvent::KeyRelease) {
39513969
if (subWindowList(QMdiArea::ActivationHistoryOrder).size() > 0) {
@@ -3979,7 +3997,9 @@ bool ModelWidgetContainer::eventFilter(QObject *object, QEvent *event)
39793997
}
39803998
} else {
39813999
if (!mpRecentModelsList->selectedItems().isEmpty()) {
3982-
openRecentModelWidget(mpRecentModelsList->selectedItems().at(0));
4000+
if (!openRecentModelWidget(mpRecentModelsList->selectedItems().at(0))) {
4001+
return true;
4002+
}
39834003
}
39844004
mpModelSwitcherDialog->hide();
39854005
}
@@ -4088,12 +4108,32 @@ void ModelWidgetContainer::loadPreviousViewType(ModelWidget *pModelWidget)
40884108
}
40894109
}
40904110

4091-
void ModelWidgetContainer::openRecentModelWidget(QListWidgetItem *pItem)
4111+
/*!
4112+
* \brief ModelWidgetContainer::openRecentModelWidget
4113+
* Slot activated when mpRecentModelsList itemClicked SIGNAL is raised.\n
4114+
* Before switching to new ModelWidget try to update the class contents if user has changed anything.
4115+
* \param pListWidgetItem
4116+
*/
4117+
bool ModelWidgetContainer::openRecentModelWidget(QListWidgetItem *pListWidgetItem)
40924118
{
4093-
LibraryTreeItem *pLibraryTreeItem = mpMainWindow->getLibraryWidget()->getLibraryTreeModel()->findLibraryTreeItem(pItem->data(Qt::UserRole).toString());
4119+
/* if Model text is changed manually by user then validate it before opening recent ModelWidget. */
4120+
ModelWidget *pModelWidget = getCurrentModelWidget();
4121+
if (pModelWidget && pModelWidget->getLibraryTreeItem()) {
4122+
LibraryTreeItem *pLibraryTreeItem = pModelWidget->getLibraryTreeItem();
4123+
if (!pModelWidget->validateText(&pLibraryTreeItem)) {
4124+
return false;
4125+
}
4126+
}
4127+
LibraryTreeItem *pLibraryTreeItem = mpMainWindow->getLibraryWidget()->getLibraryTreeModel()->findLibraryTreeItem(pListWidgetItem->data(Qt::UserRole).toString());
40944128
addModelWidget(pLibraryTreeItem->getModelWidget(), false);
4129+
return true;
40954130
}
40964131

4132+
/*!
4133+
* \brief ModelWidgetContainer::currentModelWidgetChanged
4134+
* Updates the toolbar and menus items depending on what kind of ModelWidget is activated.
4135+
* \param pSubWindow
4136+
*/
40974137
void ModelWidgetContainer::currentModelWidgetChanged(QMdiSubWindow *pSubWindow)
40984138
{
40994139
bool enabled, modelica, text, metaModel;
@@ -4129,17 +4169,17 @@ void ModelWidgetContainer::currentModelWidgetChanged(QMdiSubWindow *pSubWindow)
41294169
getMainWindow()->getSaveAsAction()->setEnabled(enabled);
41304170
// getMainWindow()->getSaveAllAction()->setEnabled(enabled);
41314171
getMainWindow()->getSaveTotalAction()->setEnabled(enabled && modelica);
4132-
getMainWindow()->getShowGridLinesAction()->setEnabled(enabled && !pModelWidget->getLibraryTreeItem()->isSystemLibrary());
4133-
getMainWindow()->getResetZoomAction()->setEnabled(enabled && modelica);
4134-
getMainWindow()->getZoomInAction()->setEnabled(enabled && modelica);
4135-
getMainWindow()->getZoomOutAction()->setEnabled(enabled && modelica);
4136-
getMainWindow()->getLineShapeAction()->setEnabled(enabled && modelica);
4137-
getMainWindow()->getPolygonShapeAction()->setEnabled(enabled && modelica);
4138-
getMainWindow()->getRectangleShapeAction()->setEnabled(enabled && modelica);
4139-
getMainWindow()->getEllipseShapeAction()->setEnabled(enabled && modelica);
4140-
getMainWindow()->getTextShapeAction()->setEnabled(enabled && modelica);
4141-
getMainWindow()->getBitmapShapeAction()->setEnabled(enabled && modelica);
4142-
getMainWindow()->getConnectModeAction()->setEnabled(enabled && modelica);
4172+
getMainWindow()->getShowGridLinesAction()->setEnabled(enabled && modelica && !pModelWidget->getTextViewToolButton()->isChecked() && !pModelWidget->getLibraryTreeItem()->isSystemLibrary());
4173+
getMainWindow()->getResetZoomAction()->setEnabled(enabled && modelica && !pModelWidget->getTextViewToolButton()->isChecked());
4174+
getMainWindow()->getZoomInAction()->setEnabled(enabled && modelica && !pModelWidget->getTextViewToolButton()->isChecked());
4175+
getMainWindow()->getZoomOutAction()->setEnabled(enabled && modelica && !pModelWidget->getTextViewToolButton()->isChecked());
4176+
getMainWindow()->getLineShapeAction()->setEnabled(enabled && modelica && !pModelWidget->getTextViewToolButton()->isChecked());
4177+
getMainWindow()->getPolygonShapeAction()->setEnabled(enabled && modelica && !pModelWidget->getTextViewToolButton()->isChecked());
4178+
getMainWindow()->getRectangleShapeAction()->setEnabled(enabled && modelica && !pModelWidget->getTextViewToolButton()->isChecked());
4179+
getMainWindow()->getEllipseShapeAction()->setEnabled(enabled && modelica && !pModelWidget->getTextViewToolButton()->isChecked());
4180+
getMainWindow()->getTextShapeAction()->setEnabled(enabled && modelica && !pModelWidget->getTextViewToolButton()->isChecked());
4181+
getMainWindow()->getBitmapShapeAction()->setEnabled(enabled && modelica && !pModelWidget->getTextViewToolButton()->isChecked());
4182+
getMainWindow()->getConnectModeAction()->setEnabled(enabled && modelica && !pModelWidget->getTextViewToolButton()->isChecked());
41434183
getMainWindow()->getSimulateModelAction()->setEnabled(enabled && modelica && pLibraryTreeItem->isSimulationAllowed());
41444184
getMainWindow()->getSimulateWithTransformationalDebuggerAction()->setEnabled(enabled && modelica && pLibraryTreeItem->isSimulationAllowed());
41454185
getMainWindow()->getSimulateWithAlgorithmicDebuggerAction()->setEnabled(enabled && modelica && pLibraryTreeItem->isSimulationAllowed());

OMEdit/OMEditGUI/Modeling/ModelWidgetContainer.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -447,7 +447,7 @@ class ModelWidgetContainer : public MdiArea
447447
QListWidget *mpRecentModelsList;
448448
void loadPreviousViewType(ModelWidget *pModelWidget);
449449
public slots:
450-
void openRecentModelWidget(QListWidgetItem *pItem);
450+
bool openRecentModelWidget(QListWidgetItem *pListWidgetItem);
451451
void currentModelWidgetChanged(QMdiSubWindow *pSubWindow);
452452
void saveModelWidget();
453453
void saveAsModelWidget();

0 commit comments

Comments
 (0)