| 548 | } |
| 549 | |
| 550 | void CartesianPlot::initMenus() { |
| 551 | initActions(); |
| 552 | |
| 553 | m_addNewMenu = new QMenu(i18n("Add New")); |
| 554 | m_addNewMenu->setIcon(QIcon::fromTheme(QStringLiteral("list-add"))); |
| 555 | auto* actionGroup = new QActionGroup(this); |
| 556 | connect(actionGroup, &QActionGroup::triggered, this, &CartesianPlot::addPlot); |
| 557 | |
| 558 | // add all available plot types |
| 559 | CartesianPlot::fillAddNewPlotMenu(m_addNewMenu, actionGroup); |
| 560 | |
| 561 | // formula plot |
| 562 | auto* action = new QAction(QIcon::fromTheme(QStringLiteral("labplot-xy-equation-curve")), i18n("Formula Plot"), actionGroup); |
| 563 | action->setToolTip(i18n("Add a new xy-plot that is defined via a mathematical expression.")); |
| 564 | action->setData(static_cast<int>(Plot::PlotType::Formula)); |
| 565 | m_addNewMenu->addSeparator(); |
| 566 | m_addNewMenu->addAction(action); |
| 567 | m_addNewMenu->addSeparator(); |
| 568 | |
| 569 | // analysis curves |
| 570 | addNewAnalysisMenu = new QMenu(i18n("Analysis Plots"), m_addNewMenu); |
| 571 | addNewAnalysisMenu->addAction(addFitCurveAction); |
| 572 | addNewAnalysisMenu->addSeparator(); |
| 573 | addNewAnalysisMenu->addAction(addDifferentiationCurveAction); |
| 574 | addNewAnalysisMenu->addAction(addIntegrationCurveAction); |
| 575 | addNewAnalysisMenu->addSeparator(); |
| 576 | addNewAnalysisMenu->addAction(addInterpolationCurveAction); |
| 577 | addNewAnalysisMenu->addAction(addSmoothCurveAction); |
| 578 | addNewAnalysisMenu->addSeparator(); |
| 579 | addNewAnalysisMenu->addAction(addFourierFilterCurveAction); |
| 580 | addNewAnalysisMenu->addAction(addFourierTransformCurveAction); |
| 581 | addNewAnalysisMenu->addAction(addHilbertTransformCurveAction); |
| 582 | addNewAnalysisMenu->addSeparator(); |
| 583 | addNewAnalysisMenu->addAction(addConvolutionCurveAction); |
| 584 | addNewAnalysisMenu->addAction(addCorrelationCurveAction); |
| 585 | addNewAnalysisMenu->addSeparator(); |
| 586 | addNewAnalysisMenu->addAction(addDataReductionCurveAction); |
| 587 | addNewAnalysisMenu->addSeparator(); |
| 588 | addNewAnalysisMenu->addAction(addFunctionCurveAction); |
| 589 | m_addNewMenu->addMenu(addNewAnalysisMenu); |
| 590 | |
| 591 | m_addNewMenu->addSeparator(); |
| 592 | m_addNewMenu->addAction(addLegendAction); |
| 593 | m_addNewMenu->addSeparator(); |
| 594 | m_addNewMenu->addAction(addHorizontalAxisAction); |
| 595 | m_addNewMenu->addAction(addVerticalAxisAction); |
| 596 | m_addNewMenu->addSeparator(); |
| 597 | m_addNewMenu->addAction(addTextLabelAction); |
| 598 | m_addNewMenu->addAction(addImageAction); |
| 599 | m_addNewMenu->addAction(addInfoElementAction); |
| 600 | m_addNewMenu->addSeparator(); |
| 601 | m_addNewMenu->addAction(addCustomPointAction); |
| 602 | m_addNewMenu->addAction(addReferenceLineAction); |
| 603 | m_addNewMenu->addAction(addReferenceRangeAction); |
| 604 | |
| 605 | // analysis menu, used in the context menu of XYCurve to allow direct application of analysis functions on the curves |
| 606 | dataAnalysisMenu = new QMenu(i18n("Analysis")); |
| 607 |
nothing calls this directly
no test coverage detected