Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • af3/af3-rcp
1 result
Show changes
Commits on Source (159)
Showing
with 177 additions and 724 deletions
downstream-job:
variables:
BUILD_BRANCH: "$CI_MERGE_REQUEST_SOURCE_BRANCH_NAME"
only:
- merge_requests
trigger:
project: af3/maven-releng
strategy: depend
......@@ -3,7 +3,7 @@ Automatic-Module-Name: org.fortiss.af3.rcp.application
Bundle-ManifestVersion: 2
Bundle-Name: AF3 RCP
Bundle-SymbolicName: org.fortiss.af3.rcp.application;singleton:=true
Bundle-Version: 2.17.0.qualifier
Bundle-Version: 2.19.0.qualifier
Bundle-Activator: org.fortiss.af3.rcp.application.AF3ApplicationActivator
Bundle-Vendor: fortiss GmbH
Bundle-RequiredExecutionEnvironment: JavaSE-11
......@@ -18,25 +18,25 @@ Export-Package: org.fortiss.af3.rcp.application;
org.eclipse.equinox.app,
org.osgi.framework",
org.fortiss.af3.rcp.application.example
Require-Bundle: org.fortiss.af3.rcp.help;bundle-version="2.17.0",
eu.fbk.af3.tools.diagram.ui;bundle-version="2.17.0",
org.fortiss.af3.cosimulation.ui;bundle-version="2.17.0",
org.fortiss.af3.exploration.ui;bundle-version="2.17.0",
org.fortiss.af3.mira.ui;bundle-version="2.17.0",
org.fortiss.af3.mode.ui;bundle-version="2.17.0",
org.fortiss.af3.operatorpanel.ui;bundle-version="2.17.0",
org.fortiss.af3.partition.ui;bundle-version="2.17.0",
org.fortiss.af3.platform.hierarchic.ui;bundle-version="2.17.0",
org.fortiss.af3.platform.ui;bundle-version="2.17.0",
org.fortiss.af3.project;bundle-version="2.17.0",
org.fortiss.af3.project.ui;bundle-version="2.17.0",
org.fortiss.af3.safety.ui;bundle-version="2.17.0",
org.fortiss.af3.safetycases.ui;bundle-version="2.17.0",
org.fortiss.af3.task.ui;bundle-version="2.17.0",
org.fortiss.af3.schedule.ui;bundle-version="2.17.0",
org.fortiss.af3.state.ui;bundle-version="2.17.0",
org.fortiss.af3.timing.ui;bundle-version="2.17.0",
org.fortiss.tooling.kernel.ui;bundle-version="2.17.0",
Require-Bundle: org.fortiss.af3.rcp.help;bundle-version="2.19.0",
eu.fbk.af3.tools.diagram.ui;bundle-version="2.19.0",
org.fortiss.af3.cosimulation.ui;bundle-version="2.19.0",
org.fortiss.af3.exploration.ui;bundle-version="2.19.0",
org.fortiss.af3.mira.ui;bundle-version="2.19.0",
org.fortiss.af3.mode.ui;bundle-version="2.19.0",
org.fortiss.af3.operatorpanel.ui;bundle-version="2.19.0",
org.fortiss.af3.partition.ui;bundle-version="2.19.0",
org.fortiss.af3.platform.hierarchic.ui;bundle-version="2.19.0",
org.fortiss.af3.platform.ui;bundle-version="2.19.0",
org.fortiss.af3.project;bundle-version="2.19.0",
org.fortiss.af3.project.ui;bundle-version="2.19.0",
org.fortiss.af3.safety.ui;bundle-version="2.19.0",
org.fortiss.af3.safetycases.ui;bundle-version="2.19.0",
org.fortiss.af3.task.ui;bundle-version="2.19.0",
org.fortiss.af3.schedule.ui;bundle-version="2.19.0",
org.fortiss.af3.state.ui;bundle-version="2.19.0",
org.fortiss.af3.timing.ui;bundle-version="2.19.0",
org.fortiss.tooling.kernel.ui;bundle-version="2.19.0",
javax.servlet,
javax.servlet.jsp,
org.apache.commons.logging,
......
......@@ -5,8 +5,8 @@
<!-- edit overview page -->
<extensionContent id="orgfortissaf3rcpapplication-overview-introExtension" style="css/intro.css" name="Overview" path="overview/@">
<group style-id="content-group" id="orgfortissaf3rcpapplication-introLink-group">
<link label="Homepage of AutoFOCUS3" url="https://af3.fortiss.org/" id="orgfortissaf3rcpapplication-introLinkAutoFocusLogo" style-id="content-link">
<text>https://af3.fortiss.org/</text>
<link label="Homepage of AutoFOCUS3" url="https://www.fortiss.org/en/publications/software/autofocus-3" id="orgfortissaf3rcpapplication-introLinkAutoFocusLogo" style-id="content-link">
<text>https://www.fortiss.org/en/publications/software/autofocus-3</text>
</link>
<anchor id="additions"/>
</group>
......@@ -66,12 +66,9 @@
<!-- edit tutorials page -->
<extensionContent id="orgfortissaf3rcpapplication-introExtension" style="css/intro.css" name="Tutorials" path="tutorials/@">
<group style-id="content-group" id="orgfortissaf3rcpapplication-introLink-group">
<link label="Screencasts of AutoFOCUS 3" url="https://af3.fortiss.org/docs/screencasts/" id="orgfortissaf3rcpapplication-introLinkTutorial" style-id="content-link">
<link label="Screencasts of AutoFOCUS 3" url="https://www.youtube.com/af3fortiss" id="orgfortissaf3rcpapplication-introLinkTutorial" style-id="content-link">
<text>Screencasts explaining AutoFOCUS 3 features and use cases.</text>
</link>
<link label="AutoFOCUS 3 Tutorials" url="https://af3.fortiss.org/docs/tutorials/" id="orgfortissaf3rcpapplication-introLinkTutorial" style-id="content-link">
<text>Step-by-step tutorials and howtos.</text>
</link>
<link label="AutoFOCUS 3 Online Help" url="http://org.eclipse.ui.intro/showHelp" id="orgfortissaf3rcpapplication-introLinkHelp" style-id="content-link">
<text>Opens the AutoFOCUS 3 Online Help.</text>
</link>
......@@ -128,8 +125,8 @@
<!-- edit web resource page -->
<extensionContent id="orgfortissaf3rcpapplication-introExtension" style="css/intro.css" name="Webresources" path="webresources/@">
<group style-id="content-group" id="orgfortissaf3rcpapplication-introLink-group">
<link label="Know more about AutoFOCUS 3" url="https://af3.fortiss.org/" id="orgfortissaf3rcpapplication-introLinkWeb" style-id="content-link">
<text>AutoFOCUS3 home page: https://af3.fortiss.org/</text>
<link label="Know more about AutoFOCUS 3" url="https://www.fortiss.org/en/publications/software/autofocus-3" id="orgfortissaf3rcpapplication-introLinkWeb" style-id="content-link">
<text>AutoFOCUS3 home page: https://www.fortiss.org/en/publications/software/autofocus-3</text>
</link>
<link label="How to contribute?" url="https://af3-developer.fortiss.org/projects/autofocus3/wiki/Developers_documentation" id="orgfortissaf3rcpapplication-introLinkWeb" style-id="content-link">
<text>AutoFOCUS 3 Developer Documentation: https://af3-developer.fortiss.org/projects/autofocus3/wiki/Developers_documentation</text>
......
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8"/>
<title>New features and changes in AutoFOCUS 2.16</title>
<style>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<title>New features and changes in AutoFOCUS 2.16</title>
<style>
.mBlock { margin-left: 62px; }
h2 { color: black; }
table, th, td {border: 1px solid black; border-collapse: collapse;}
......@@ -11,169 +11,41 @@
tr:nth-child(odd) {background: #FFF; }
tr:first-child {background: #AAA; }
</style>
</head>
<body>
<div class="mBlock">
<h2>New Features and Changes in AutoFOCUS 2.16</h3>
</head>
<body>
<div class="mBlock">
<h2>New Features and Changes in AutoFOCUS 2.18</h2>
<h3>Co-simulation</h3>
<ul>
<li>AF3 is now a listed as an official FMI Tool (<a href="https://fmi-standard.org/tools/)">https://fmi-standard.org/tools/</a>)</li>
<li>A Co-simulation example is now included in AF3. (<a href="https://download.fortiss.org/public/projects/af3/help/example_co-simulation.html">AF3 FMI Example</a>)</li>
</ul>
<h3>Assurance Cases</h3>
<ul>
<li>Quantitative confidence assessment: We implemented the approach proposed by Duan et al.
(L. Duan, S. Rayadurgam, M. Heimdahl, O. Sokolsky, and I. Lee, &quot;Representation of confidence in
assurance cases using the beta distribution&quot; in <i>Proceedings of 17th Conference on
High Assurance Systems Engineering Symposium - HASE</i>. IEEE Computer Society, 2016, pp. 170-171.
DOI: <a href="https://doi.org/10.1109/HASE.2016.52">10.1109/HASE.2016.52</a>),
which computes the belief, disbelief and uncertainty of a GSN-argument based on the safety defeaters.
A safety defeater is anything that can reduce the confidence on the argument, such as, a software bug.</li>
<li>Generation of assurance case reports: We implemented a new feature within our tool that allows the
user to export an assurance case or an argumentation module
diagram into svg, pdf and png, and jpeg files.</li>
</ul>
<h3>DSE</h3>
<ul>
<li> Reworked and unified synthesis view based on JavaFX
<li> Ability to launch a DSE synthesis from the command line
</ul>
<h3>Design Space Exploration (DSE)</h3>
<ul>
<li>Consolidated editor for constraint pattern definition.</li>
<li> Implementation of a procedure to minimize the estimated energy consumption in the (deployment +)
schedule synthesis. The approach optimizes the selection of the cores' clock setting from the
set of supported frequencies.</li>
</ul>
<h3>Tooling Infrastructure and Maintenance</h3>
<ul>
<li>Platform update to Eclipse 2019-06</li>
<li>Update online help and Eclipse Welcome page.</li>
<li>Repair example models</li>
<li>Further stability fixes and improvements</li>
</ul>
<h3>Detailed list of changes</h3>
<table border="1">
<tr><th><b>Issue</b></th><th><b>Description</b></th></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3854">3854</a></td><td>[safety-docu] Split documentation for safety cases on multiple pages</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3847">3847</a></td><td>Co-Simulation does not work in binary product</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3845">3845</a></td><td>Fix welcome page</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3841">3841</a></td><td>NPE in joint synthesis</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3840">3840</a></td><td>Create a new Constraint/Objective Set button not visible</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3839">3839</a></td><td>Requirements documentation check</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3835">3835</a></td><td>Move user documentation to dedicated plugin</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3833">3833</a></td><td>MCDC documentation</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3830">3830</a></td><td>Transitive calculation of allocation targets starts from the wrong allocation table</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3829">3829</a></td><td>User documentation for new features of deployment/schedule synthesis</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3828">3828</a></td><td>Online help does not work</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3827">3827</a></td><td>Binaries are not ignored in the af3-tests repository</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3826">3826</a></td><td>ArithmeticException thrown when scaling a core's frequency</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3825">3825</a></td><td>NPE when exporting PlatformArchitectures from the DSE</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3824">3824</a></td><td>Bugs when trying to save when closing AF3 from DSE perspective</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3823">3823</a></td><td>AnnotationTable causes Exception if AF3 is executed on Unixoids</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3822">3822</a></td><td>Fix NPE in the Annotation Table of the Task Architecture</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3821">3821</a></td><td>MessageSize value provider refers to the derived size value and not to the max size value</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3820">3820</a></td><td>Remove InternalComponent</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3818">3818</a></td><td>Avoid NPE in ModelEditorBindingService</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3817">3817</a></td><td>Frequency information is not transferred correctly when a system schedule is exported</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3816">3816</a></td><td>Adding a platform architecture results into an NPE</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3813">3813</a></td><td>Context menu contributors: Fix class cast exception</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3812">3812</a></td><td>Improve naming of coupling/decoupling constraints</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3811">3811</a></td><td>Models present in the runtime workspace during AF3 startup cannot be saved any more</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3810">3810</a></td><td>Create a model snapshot for the TaskWcet and MemoryTable</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3808">3808</a></td><td>Enable importing Requirements (Safety) to the DSE</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3807">3807</a></td><td>Mismerge in 3608 causes undesired API revert</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3806">3806</a></td><td>Cleanup the migration service</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3804">3804</a></td><td>Schedule generation works only if launched twice / SMT solution transformation returns invalid set types</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3801">3801</a></td><td>The period marker in Gantt chart views is not displayed correctly even if period values are present</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3800">3800</a></td><td>No context menus can be opened anywhere in the model navigator</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3796">3796</a></td><td>Selecting / Exporting multiple solutions is no longer possible</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3792">3792</a></td><td>Selection of rule sets is not consistent with the checkbox when switching view</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3788">3788</a></td><td>[Project Import] DashboardWizard imports every selected element</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3780">3780</a></td><td>Scheduling synthesis fails if preceded by a another successful synthesis</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3779">3779</a></td><td>Missing per-quantifier unfolding for scheduling-related constraints</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3773">3773</a></td><td>Create JUnit test suite covering the generation, translation and exploration of design spaces</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3771">3771</a></td><td>Translation from DSEML to SMT crashes as it encounters the same expression twice</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3770">3770</a></td><td>Allocation tables not classified as relevant in DSE import</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3768">3768</a></td><td>Extraction of routes between ECUs does not take into account alternatives</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3766">3766</a></td><td>Constraints contained within an SMTObjective are overwritten during the translation to SMT</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3764">3764</a></td><td>Allocation functions not registered within the transformation service upon creation with a non-quantified constraint</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3763">3763</a></td><td>Annotations of a task are not considered in the translation to SMT</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3762">3762</a></td><td>Contained targets are overwritten during the translation to SMT</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3760">3760</a></td><td>Annotations are not translated to SMT expressions</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3758">3758</a></td><td>Update developer platform to 2019-06</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3756">3756</a></td><td>[DSML Transformator] Clear the Expression holder for repetetive transform() calls</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3755">3755</a></td><td>Z3: Update to version 4.8.5</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3752">3752</a></td><td>Creation of Safety Patterns fails, causes an NPE</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3751">3751</a></td><td>[safety] Exporter documentation</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3750">3750</a></td><td>Simplify the annotation retrieval</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3749">3749</a></td><td>Import MemoryUnits into the DSE project</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3746">3746</a></td><td>Enable the specification of data type sizes and temporal interferences on the platform level</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3743">3743</a></td><td>Render the route calculation in the schedule skeleton genertaion optional</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3742">3742</a></td><td>Model corruption when back-exporting DSE solution models</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3741">3741</a></td><td>Improve DSML to SMT transformation performance for repeated calls</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3740">3740</a></td><td>Use the non-Optimizing Z3 solver if no objectives are defined</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3739">3739</a></td><td>Erroneous causality constraints</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3738">3738</a></td><td>SMT solver may create a NPE if timeout is reached and no solution was found</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3735">3735</a></td><td>Partition Architecture: Introduce memory areas</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3730">3730</a></td><td>Make Progress Monitors optional for the Z3 backend</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3728">3728</a></td><td>[safety] Bugs ExplicitCase</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3727">3727</a></td><td>Base the EcoreUtil methods on Predicates</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3726">3726</a></td><td>Platform Update to version 2019-03</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3710">3710</a></td><td>Migrate EcorUtils and KernelModelElementUtils to a functional programming style</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3699">3699</a></td><td>[safety] Color details of the exporter</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3698">3698</a></td><td>[Z3] Rebase Quantifier unfolding based on a per-quantifier basis</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3696">3696</a></td><td>Mapping of memory requirements to platform</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3692">3692</a></td><td>Integrate Z3 test in the default set of AF3 JUnit tests</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3688">3688</a></td><td>[DevDoc - exploration] Describe the project model</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3687">3687</a></td><td>[Dev-doc exploration] Describe root model elements and the dimension + solution package</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3686">3686</a></td><td>Create developer documentation for the source code of the exploration plugin</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3685">3685</a></td><td>Create developer documentation for the exploration plugin</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3684">3684</a></td><td>Create developer documentation for the exploration.smt plugin</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3682">3682</a></td><td>Create documentation for the SMT ecore</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3681">3681</a></td><td>Create ecore documentation for the dseml model</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3680">3680</a></td><td>Document the exploration plugins</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3677">3677</a></td><td>Move expression generation to util class</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3676">3676</a></td><td>Remove deprecated metamodels and migrators</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3672">3672</a></td><td>Clean up AF3 toolbar layout</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3651">3651</a></td><td>Several exception in constraints / transformation</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3644">3644</a></td><td>[Outputs not overwritten constraint] check that the transition return by the check is enabled</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3640">3640</a></td><td>Erroneous folder selection for nested paths</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3636">3636</a></td><td>[safety] Reference values of input/output ports in assumption/context</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3612">3612</a></td><td>MCDC - toZ3 cannot handle unary operators</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3608">3608</a></td><td>Support minimization of energy consumption (based on frequency setting) in deployment and scheduling synthesis</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3596">3596</a></td><td>MCDC: GUI Implementation</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3583">3583</a></td><td>Make the distillery operational again...</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3577">3577</a></td><td>Connection of AF3 to PTC Integrity Modeler</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3573">3573</a></td><td>In the Component Structure of Mode, Forward button of ports not enabled if it is selected and connected to a successor port</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3572">3572</a></td><td>Propagation of Ports From Component structure after creation of Mode Switch Component Structure</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3564">3564</a></td><td>Add APACHE 2.0 license to repos.</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3544">3544</a></td><td>[Openhouse] Merge Security Simulator</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3538">3538</a></td><td>Transition to Eclipse Photon</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3534">3534</a></td><td>[documentation] Add developer documentation for af3.platform.hierarchic</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3533">3533</a></td><td>[documentation] Add developer documentation for af3.platform</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3523">3523</a></td><td>Check why copyComponentIntoNewProject may be called with a non-project contained Component</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3521">3521</a></td><td>Superclass for Safety Solutions</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3466">3466</a></td><td>NPE when addign Assest and Parameter Definition Aspect</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3463">3463</a></td><td>[JavaFX] Add a constructor in the base class for single controller views.</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3460">3460</a></td><td>Quantitative Valuation for Safety</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3415">3415</a></td><td>Test Suite editor closes unintentionally</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3380">3380</a></td><td>NPE for security aspects</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3358">3358</a></td><td>Support the definition of basic objectives in SMT scheduling</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3285">3285</a></td><td>Reintegrate the MOEA-DSE-Transformation framework</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3279">3279</a></td><td>Exploration.alg cleanup</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3271">3271</a></td><td>Reintegrate Task allocation constraint towards HW targets (MOEA)</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3264">3264</a></td><td>Reintegrate the instantiation of interface Components in the MOEA-DSE</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3254">3254</a></td><td>Base the MOEA-DSE's input layer on SuperSets</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3246">3246</a></td><td>missing null pointer check missing in class CurrentObjectiveContributionItem</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3235">3235</a></td><td>[Wiki] Start page of AF3 Developers wiki contains many broken links</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3224">3224</a></td><td>constraint for non-NoVal ports</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3221">3221</a></td><td>[Documentation] Signal Report Generation</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3197">3197</a></td><td>traces up to date constraint</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/3048">3048</a></td><td>Adding element in the "Model Navigator" that does not have a dedicated editor triggers "Project Configuration" editor</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/2807">2807</a></td><td>[FMI] Force user to define initial values for top-level outputs</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/2777">2777</a></td><td>[State automata] not possible to copy paste a state while it is selected</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/2775">2775</a></td><td>[safety] Improve instructions to the user(text)</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/2548">2548</a></td><td>Cannot read .jpeg extension</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/1882">1882</a></td><td>Pack existing component structure in new component</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/1821">1821</a></td><td>C Code for data state variables is not generated correctly</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/1622">1622</a></td><td>Delivered parent ports of a new Component Architecture in Mode Switch Specification bug</td></tr>
<tr><td><a href="https://af3-developer.fortiss.org/issues/1514">1514</a></td><td>Elements not found in second data dictionary</td></tr>
</table>
</body>
</html>
\ No newline at end of file
<h3>Kernel</h3>
<ul>
<li> Modular Command Line Interface (CLI) support that is extensible by plugin contributions
</ul>
<h3>UI Update</h3>
<ul>
<li>AF3 2.18 includes a major UI update</li>
<li>Most of the views have been updated with a new JavaFX-based UI</li>
</ul>
<br>
<h3>
<a href="https://af3-developer.fortiss.org/projects/af3-phoenix-release/issues?utf8=%E2%9C%93&set_filter=1&sort=id%3Adesc&f%5B%5D=status_id&op%5Bstatus_id%5D=%3D&v%5Bstatus_id%5D%5B%5D=5&f%5B%5D=fixed_version_id&op%5Bfixed_version_id%5D=%3D&v%5Bfixed_version_id%5D%5B%5D=152&v%5Bfixed_version_id%5D%5B%5D=154&v%5Bfixed_version_id%5D%5B%5D=155&v%5Bfixed_version_id%5D%5B%5D=153&f%5B%5D=&c%5B%5D=tracker&c%5B%5D=status&c%5B%5D=priority&c%5B%5D=subject&c%5B%5D=assigned_to&c%5B%5D=updated_on&group_by=&t%5B%5D=">Detailed list of changes in 2.18</a>
</h3>
</div>
</body>
</html>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- html page to use on fortiss website https://www.fortiss.org/veroeffentlichungen/software/autofocus-3 for the release notes link. -->
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<title>New features and changes in AutoFOCUS 2.16</title>
<style>
.mBlock { margin-left: 62px; }
h2 { color: black; }
table, th, td {border: 1px solid black; border-collapse: collapse;}
tr:nth-child(even) {background: #DDD; }
tr:nth-child(odd) {background: #FFF; }
tr:first-child {background: #AAA; }
</style>
</head>
<body>
<div class="mBlock">
<h2>New Features and Changes in AutoFOCUS 2.18</h2>
<h3>Co-simulation</h3>
<ul>
<li>AF3 is now a listed as an official FMI Tool (<a href="https://fmi-standard.org/tools/)">https://fmi-standard.org/tools/</a>)</li>
<li>A Co-simulation example is now included in AF3. (<a href="https://download.fortiss.org/public/projects/af3/help/example_co-simulation.html">AF3 FMI Example</a>)</li>
</ul>
<h3>DSE</h3>
<ul>
<li> Reworked and unified synthesis view based on JavaFX
<li> Ability to launch a DSE synthesis from the command line
</ul>
<h3>Kernel</h3>
<ul>
<li> Modular Command Line Interface (CLI) support that is extensible by plugin contributions
</ul>
<h3>UI Update</h3>
<ul>
<li>AF3 2.18 includes a major UI update</li>
<li>Most of the views have been updated with a new JavaFX-based UI</li>
</ul>
<br>
<h3>
<a href="https://af3-developer.fortiss.org/projects/af3-phoenix-release/issues?utf8=%E2%9C%93&set_filter=1&sort=id%3Adesc&f%5B%5D=status_id&op%5Bstatus_id%5D=%3D&v%5Bstatus_id%5D%5B%5D=5&f%5B%5D=fixed_version_id&op%5Bfixed_version_id%5D=%3D&v%5Bfixed_version_id%5D%5B%5D=152&v%5Bfixed_version_id%5D%5B%5D=154&v%5Bfixed_version_id%5D%5B%5D=155&v%5Bfixed_version_id%5D%5B%5D=153&f%5B%5D=&c%5B%5D=tracker&c%5B%5D=status&c%5B%5D=priority&c%5B%5D=subject&c%5B%5D=assigned_to&c%5B%5D=updated_on&group_by=&t%5B%5D=">Detailed list of changes in 2.18</a>
</h3>
<br>
<h3>FAQ - Installation and Running</h3>
<ul>
<li> On MacOS
<ul>
<li>You need to accept unknown developer certificates.</li>
<li>You need to move AutoFOCUS3 to your application folder.</li>
<li>If you get an error message on startup which says that AutoFOCUS3 is broken and cannot be started: open a terminal and use the following command:
<ul>
<li>sudo xattr -rd com.apple.quarantine /Applications/AutoFOCUS3.app</li>
<li>As our software is a scientific prototype, our product is not signed which causes a problem due to the security restrictions of MacOS</li>
</ul>
</li>
</ul>
</li>
<li> On Windows: DSE does not execute and throws exception
<ul>
<li> If you encounter the following exception when running a DSE you might be missing required libraries:
<br>
<i>java.lang.UnsatisfiedLinkError: [...]\plugins\com.microsoft.z3_2.18.[...]\lib\x64\msvcp120.dll: Can't find dependent libraries</i>
<br>
Installing the Visual C++ Redistributable Packages for Visual Studio 2013 fixes the problem.
</ul>
</li>
<li> AF3 does not start
<ul>
<li> Check, that the path to your AF3 (including the AF3 folder itself) does not contain spaces.
<li> If the product does not start because the Java Virtual Machine (JVM) could not be created: Please update your Java installation to Java 11.0.7
</ul>
</li>
<li> Unpacking of AF3 zip file fails with 'Path too long' on Windows
<ul>
<li> Workaround: Unzip into your drive root, e.g., C:/ and give the folder a short name like 'af3'
</ul>
</li>
<li> Menu icons are not displayed on KDE
<ul>
<li> Go to "System settings - Application Style - GNOME Application Style".
<li> Select "Show symbols of GTK buttons".
<li> Select "Show symbols in GTK menus".
</ul>
</li>
</ul>
</div>
</body>
</html>
......@@ -19,10 +19,10 @@
<product
application="org.fortiss.af3.rcp.application.af3app"
description="AutoFOCUS 3 - &quot;Phoenix&quot; Release"
name="AutoFOCUS 3 - &quot;Phoenix&quot; 2.16">
name="AutoFOCUS 3 - &quot;Phoenix&quot; 2.19">
<property
name="appName"
value="AutoFOCUS 3 - &quot;Phoenix&quot; 2.16">
value="AutoFOCUS 3 - &quot;Phoenix&quot; 2.19">
</property>
<property
name="aboutImage"
......@@ -34,7 +34,7 @@
</property>
<property
name="aboutText"
value="AutoFOCUS 3 - &quot;Phoenix&quot;&#x0A;&#x0A;Version: 2.17.0&#x0A;&#x0A;Copyright 2011-2018 fortiss GmbH&#x0A;&#x0A;Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);&#x0A;you may not use this file except in compliance with the License.&#x0A;You may obtain a copy of the License at&#x0A;&#x0A; http://www.apache.org/licenses/LICENSE-2.0&#x0A;&#x0A;Unless required by applicable law or agreed to in writing, software&#x0A;distributed under the License is distributed on an &quot;AS IS&quot; BASIS,&#x0A;WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either&#x0A;express or implied. See the License for the specific language&#x0A;governing permissions and limitations under the License.">
value="AutoFOCUS 3 - &quot;Phoenix&quot;&#x0A;&#x0A;Version: 2.19.0&#x0A;&#x0A;Copyright 2011-2018 fortiss GmbH&#x0A;&#x0A;Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);&#x0A;you may not use this file except in compliance with the License.&#x0A;You may obtain a copy of the License at&#x0A;&#x0A; http://www.apache.org/licenses/LICENSE-2.0&#x0A;&#x0A;Unless required by applicable law or agreed to in writing, software&#x0A;distributed under the License is distributed on an &quot;AS IS&quot; BASIS,&#x0A;WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either&#x0A;express or implied. See the License for the specific language&#x0A;governing permissions and limitations under the License.">
</property>
<property
name="startupProgressRect"
......
LoadACCExampleAction.java fd88330c3685e1b0aea6efab9231ecc122e0d932 GREEN
LoadECarExampleAction.java 3b6bdac54a65878a58a6443616403ea8fa3bd702 GREEN
LoadEmergencyStopExampleAction.java 181729c59bcb64d5fa3790482613b3cfc1a10522 GREEN
LoadEmergencyStopWeaklyCausalExampleAction.java 5ceb5396ecf202312956158c6bef06f383a05402 GREEN
LoadExampleActionBase.java e96dab785e50a85e5f7ca00fc4e16c85b8ecea3b GREEN
LoadMotorManagementExampleAction.java 6ff16ff5ae315aa0b777448ffb69a0471f0b7e04 GREEN
LoadOperatorPanelExampleAction.java f77d32db422df0a9d913ad09f537ca8a99ee4cef GREEN
LoadSimpleTrafficLightsAF3TourExampleAction.java 849f1009f041a2edbdbc03db8e8db5e2f2eb9963 GREEN
LoadSimpleTrafficLightsCodeGenerationExampleAction.java 36e9f1ed5f035c336efe01a60809867abe77c339 GREEN
LoadSimpleTrafficLightsExampleAction.java 8f7461217a7030cf32cf575472a150593c73575d GREEN
LoadSimpleTrafficLightsModesExampleAction.java 28760780aa3112e3dba39da5a618f66ee0baad1a GREEN
/*-------------------------------------------------------------------------+
| Copyright 2013 fortiss GmbH |
| |
| Licensed under the Apache License, Version 2.0 (the "License"); |
| you may not use this file except in compliance with the License. |
| You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
+--------------------------------------------------------------------------*/
package org.fortiss.af3.rcp.application.actions;
import org.fortiss.af3.rcp.application.AF3ApplicationActivator;
/**
* Action to load the initial ACC example.
*
* @author wenwenchen
*/
public class LoadACCExampleAction extends LoadExampleActionBase {
/** {@inheritDoc} */
@Override
protected void loadExample(String suffix) {
loadExistingModel(AF3ApplicationActivator.PLUGIN_ID, "test-data/ACC.af3_23", "ACC", suffix);
}
}
/*-------------------------------------------------------------------------+
| Copyright 2013 fortiss GmbH |
| |
| Licensed under the Apache License, Version 2.0 (the "License"); |
| you may not use this file except in compliance with the License. |
| You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
+--------------------------------------------------------------------------*/
package org.fortiss.af3.rcp.application.actions;
import org.fortiss.af3.rcp.application.AF3ApplicationActivator;
/**
* Action to load the eCar example.
*
* @author wenwenchen
*/
public class LoadECarExampleAction extends LoadExampleActionBase {
/** {@inheritDoc} */
@Override
protected void loadExample(String suffix) {
loadExistingModel(AF3ApplicationActivator.PLUGIN_ID, "test-data/eCar.af3_23", "eCar",
suffix);
}
}
/*-------------------------------------------------------------------------+
| Copyright 2013 fortiss GmbH |
| |
| Licensed under the Apache License, Version 2.0 (the "License"); |
| you may not use this file except in compliance with the License. |
| You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
+--------------------------------------------------------------------------*/
package org.fortiss.af3.rcp.application.actions;
import org.fortiss.af3.rcp.application.AF3ApplicationActivator;
/**
* Action to load the initial version of the emergency stop module example.
*
* @author wenwenchen
*/
public class LoadEmergencyStopExampleAction extends LoadExampleActionBase {
/** {@inheritDoc} */
@Override
protected void loadExample(String suffix) {
loadExistingModel(AF3ApplicationActivator.PLUGIN_ID,
"test-data/Emergency-Stop-Module.af3_23", "Emergency-Stop-Module", suffix);
}
}
/*-------------------------------------------------------------------------+
| Copyright 2013 fortiss GmbH |
| |
| Licensed under the Apache License, Version 2.0 (the "License"); |
| you may not use this file except in compliance with the License. |
| You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
+--------------------------------------------------------------------------*/
package org.fortiss.af3.rcp.application.actions;
import org.fortiss.af3.rcp.application.AF3ApplicationActivator;
/**
* Action to load the weakly causal version of the emergency stop module example.
*
* @author wenwenchen
*/
public class LoadEmergencyStopWeaklyCausalExampleAction extends LoadExampleActionBase {
/** {@inheritDoc} */
@Override
protected void loadExample(String suffix) {
loadExistingModel(AF3ApplicationActivator.PLUGIN_ID,
"test-data/Emergency-Stop-Module-Weakly-Causal.af3_23",
"Emergency-Stop-Module-Weakly-Causal", suffix);
}
}
/*-------------------------------------------------------------------------+
| Copyright 2013 fortiss GmbH |
| |
| Licensed under the Apache License, Version 2.0 (the "License"); |
| you may not use this file except in compliance with the License. |
| You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
+--------------------------------------------------------------------------*/
package org.fortiss.af3.rcp.application.actions;
import static org.fortiss.af3.project.storage.LocationProvider.CURRENT_AF3_PROJECT_FILES_EXTENSION;
import static org.fortiss.af3.project.ui.utils.NewProjectUtils.createNewGeneralProject;
import static org.fortiss.af3.project.ui.utils.NewProjectUtils.generalProjectExists;
import static org.fortiss.af3.rcp.application.utils.ApplicationUtils.refreshWorkspace;
import static org.fortiss.af3.rcp.application.utils.ApplicationUtils.saveProject;
import java.util.Properties;
import org.eclipse.core.resources.IFile;
import org.eclipse.ui.PlatformUI;
import org.eclipse.ui.intro.IIntroPart;
import org.eclipse.ui.intro.IIntroSite;
import org.eclipse.ui.intro.config.IIntroAction;
import org.fortiss.af3.project.model.FileProject;
import org.fortiss.af3.project.utils.ProjectUtils;
import org.fortiss.af3.rcp.application.utils.ApplicationUtils;
/**
* Base class for loading standard examples.
*
* @author wenwenchen
*/
public abstract class LoadExampleActionBase implements IIntroAction {
/** The current AF3 model file extension. */
private static final String CURRENT_AF3_FILE_EXTENSION =
"." + CURRENT_AF3_PROJECT_FILES_EXTENSION;
/** {@inheritDoc} */
@Override
public void run(IIntroSite site, Properties params) {
final IIntroPart introPart = PlatformUI.getWorkbench().getIntroManager().getIntro();
PlatformUI.getWorkbench().getIntroManager().setIntroStandby(introPart, true);
startup();
loadExample(CURRENT_AF3_FILE_EXTENSION);
}
/**
* Method that is used by multiple command handlers to ensure that the
* Project exists that contains the *.af3_2x files and that the
* AF3-Perspective is activated.
*/
private void startup() {
// start up
if(!generalProjectExists()) {
// Create a generic project.
createNewGeneralProject();
}
// Enable the AF3 Perspective.
ApplicationUtils.switchToAF3Perspective();
}
/** load example according to example name */
protected abstract void loadExample(String suffix);
/**
* Loads an existing *.af3_2x Example file from a given path and adds it to
* the Model-Navigator.
*
* @param pluginID
* the plugin ID
* @param relativePath
* the relative path to the file
* @param projectName
* the name of the file
* @param suffix
* the suffix of the file
*/
protected synchronized static void loadExistingModel(String pluginID, String relativePath,
String projectName, String suffix) {
// Load file of the Example (do not create dummy, because
// otherwise the Example is shown twice).
FileProject project = ProjectUtils.loadProjectFromPlugin(pluginID, relativePath, false);
// Check if file name not already exists.
IFile targetProjectFile = ApplicationUtils.validateProjectName(projectName, suffix);
if(targetProjectFile != null) {
project.setName(targetProjectFile.getName().replace(suffix, ""));
// Save the project to workspace.
saveProject(project, targetProjectFile.getFullPath().toString());
refreshWorkspace();
}
}
}
/*-------------------------------------------------------------------------+
| Copyright 2013 fortiss GmbH |
| |
| Licensed under the Apache License, Version 2.0 (the "License"); |
| you may not use this file except in compliance with the License. |
| You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
+--------------------------------------------------------------------------*/
package org.fortiss.af3.rcp.application.actions;
import org.fortiss.af3.mode.AF3ModeActivator;
/**
* Action to load the motor management example.
*
* @author wenwenchen
*/
public class LoadMotorManagementExampleAction extends LoadExampleActionBase {
/** {@inheritDoc} */
@Override
protected void loadExample(String suffix) {
loadExistingModel(AF3ModeActivator.PLUGIN_ID, "test-data/MotorManagement.af3_23",
"MotorManagement", suffix);
}
}
/*-------------------------------------------------------------------------+
| Copyright 2013 fortiss GmbH |
| |
| Licensed under the Apache License, Version 2.0 (the "License"); |
| you may not use this file except in compliance with the License. |
| You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
+--------------------------------------------------------------------------*/
package org.fortiss.af3.rcp.application.actions;
import org.fortiss.af3.rcp.application.AF3ApplicationActivator;
/**
* Action to load the OperatorPanel example.
*
* @author wenwenchen
*/
public class LoadOperatorPanelExampleAction extends LoadExampleActionBase {
/** {@inheritDoc} */
@Override
protected void loadExample(String suffix) {
loadExistingModel(AF3ApplicationActivator.PLUGIN_ID,
"test-data/operator_panel_tutorial.af3_23", "OperatorPanel", suffix);
}
}
/*-------------------------------------------------------------------------+
| Copyright 2013 fortiss GmbH |
| |
| Licensed under the Apache License, Version 2.0 (the "License"); |
| you may not use this file except in compliance with the License. |
| You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
+--------------------------------------------------------------------------*/
package org.fortiss.af3.rcp.application.actions;
import org.fortiss.af3.rcp.application.AF3ApplicationActivator;
/**
* Action to load the SimpleTrafficLights_AF3Tour example.
*
* @author wenwenchen
*/
public class LoadSimpleTrafficLightsAF3TourExampleAction extends LoadExampleActionBase {
/** {@inheritDoc} */
@Override
protected void loadExample(String suffix) {
loadExistingModel(AF3ApplicationActivator.PLUGIN_ID,
"test-data/SimpleTrafficLights_AF3Tour.af3_23", "SimpleTrafficLights_AF3Tour",
suffix);
}
}
/*-------------------------------------------------------------------------+
| Copyright 2013 fortiss GmbH |
| |
| Licensed under the Apache License, Version 2.0 (the "License"); |
| you may not use this file except in compliance with the License. |
| You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
+--------------------------------------------------------------------------*/
package org.fortiss.af3.rcp.application.actions;
import org.fortiss.af3.rcp.application.example.SimpleTrafficLightsCodeGenerationExample;
import org.fortiss.af3.rcp.application.utils.ApplicationUtils;
/**
* Action to load the TLC example for code generation example.
*
* @author wenwenchen
*/
public class LoadSimpleTrafficLightsCodeGenerationExampleAction extends LoadExampleActionBase {
/** {@inheritDoc} */
@Override
protected void loadExample(String suffix) {
ApplicationUtils.createAndSaveProject("SimpleTrafficLightsCodeGenerationExample", suffix,
SimpleTrafficLightsCodeGenerationExample.INSTANCE);
}
}
/*-------------------------------------------------------------------------+
| Copyright 2013 fortiss GmbH |
| |
| Licensed under the Apache License, Version 2.0 (the "License"); |
| you may not use this file except in compliance with the License. |
| You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
+--------------------------------------------------------------------------*/
package org.fortiss.af3.rcp.application.actions;
import org.fortiss.af3.rcp.application.AF3ApplicationActivator;
/**
* Action to load the basic TLC example.
*
* @author wenwenchen
*/
public class LoadSimpleTrafficLightsExampleAction extends LoadExampleActionBase {
/** {@inheritDoc} */
@Override
protected void loadExample(String suffix) {
loadExistingModel(AF3ApplicationActivator.PLUGIN_ID,
"test-data/SimpleTrafficLightsExample.af3_23", "SimpleTrafficLightsExample",
suffix);
}
}
/*-------------------------------------------------------------------------+
| Copyright 2013 fortiss GmbH |
| |
| Licensed under the Apache License, Version 2.0 (the "License"); |
| you may not use this file except in compliance with the License. |
| You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
+--------------------------------------------------------------------------*/
package org.fortiss.af3.rcp.application.actions;
import static org.fortiss.af3.rcp.application.utils.ApplicationUtils.createAndSaveProject;
import org.fortiss.af3.mode.ui.examples.SimpleTrafficLightsModesExample;
/**
* Action to load the TLC with modes example.
*
* @author wenwenchen
*/
public class LoadSimpleTrafficLightsModesExampleAction extends LoadExampleActionBase {
/** {@inheritDoc} */
@Override
protected void loadExample(String suffix) {
createAndSaveProject("SimpleTrafficLightsModesExample", suffix,
SimpleTrafficLightsModesExample.INSTANCE);
}
}
ApplicationActionBarAdvisor.java 3fe306058f621c9939d86984199522e47b3c1cbd GREEN
ApplicationWorkbenchAdvisor.java 5d1792809c752bedc08b6d9d993ecbf70b40982c GREEN
ApplicationActionBarAdvisor.java 881198ff05ab14110efef1673f0914725348442b GREEN
ApplicationWorkbenchAdvisor.java 19af4bc3262680a283eccccf92c4e2ae4463fa71 GREEN
ApplicationWorkbenchWindowAdvisor.java da5cb38300b384579532c678fbc9faa961c2ca6b GREEN
......@@ -16,19 +16,12 @@
package org.fortiss.af3.rcp.application.advisors;
import static org.apache.commons.lang3.SystemUtils.IS_OS_LINUX;
import static org.eclipse.wb.swt.ResourceManager.getPluginImageDescriptor;
import static org.fortiss.tooling.kernel.ui.util.TutorialUIServiceUtils.createTutorialMenu;
import static org.fortiss.tooling.kernel.utils.LoggingUtils.showError;
import java.io.IOException;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.Map;
import org.eclipse.core.commands.IHandler;
import org.eclipse.core.runtime.FileLocator;
import org.eclipse.core.runtime.Platform;
import org.eclipse.jface.action.IAction;
import org.eclipse.jface.action.ICoolBarManager;
import org.eclipse.jface.action.IMenuManager;
......@@ -37,18 +30,13 @@ import org.eclipse.jface.action.Separator;
import org.eclipse.jface.action.ToolBarManager;
import org.eclipse.jface.resource.ImageDescriptor;
import org.eclipse.ui.IWorkbenchActionConstants;
import org.eclipse.ui.IWorkbenchCommandConstants;
import org.eclipse.ui.IWorkbenchWindow;
import org.eclipse.ui.PartInitException;
import org.eclipse.ui.actions.ActionFactory;
import org.eclipse.ui.actions.ActionFactory.IWorkbenchAction;
import org.eclipse.ui.application.ActionBarAdvisor;
import org.eclipse.ui.application.IActionBarConfigurer;
import org.eclipse.ui.browser.IWebBrowser;
import org.eclipse.ui.internal.actions.CommandAction;
import org.eclipse.ui.internal.actions.HelpContentsAction;
import org.eclipse.ui.internal.ide.IDEWorkbenchMessages;
import org.fortiss.af3.rcp.help.AF3HelpActivator;
/**
* Action bar advisor for AF3 RCP.
......@@ -331,70 +319,13 @@ public class ApplicationActionBarAdvisor extends ActionBarAdvisor {
* Registers the "AF3 Help" action and attaches it to the corresponding button.
*/
private void registerHelpContentsAction(IWorkbenchWindow window) {
if(IS_OS_LINUX) {
// Closing the help browser freezes the application.
// See https://af3-developer.fortiss.org/issues/3989
// Note: eclipse upstream issues exist with firefox:
// https://bugs.eclipse.org/bugs/show_bug.cgi?id=187332
helpContentsAction = createHelpInBrowserAction(window).create(window);
} else {
helpContentsAction = ActionFactory.HELP_CONTENTS.create(window);
}
helpContentsAction = ActionFactory.HELP_CONTENTS.create(window);
helpContentsAction.setId("helpContentsAction");
helpContentsAction.setToolTipText("AF3 Help");
helpContentsAction.setText("AF3 &Help");
register(helpContentsAction);
}
/** Creates an action that launches the external browser to display the help pages. */
private ActionFactory createHelpInBrowserAction(IWorkbenchWindow window) {
if(window == null) {
throw new IllegalArgumentException();
}
// A non-anonymous class would just increase the code size.
@SuppressWarnings("restriction") IWorkbenchAction openExtHelpAction =
new HelpContentsAction(window) {
@Override
public void run() {
String errMsg = null;
try {
URL helpPluginURL = FileLocator.toFileURL(
Platform.getBundle(AF3HelpActivator.PLUGIN_ID).getEntry("/"));
URL helpIndexURL = new URL("file:/" + helpPluginURL.getPath() +
"html/getting_started.html");
final IWebBrowser browser = window.getWorkbench().getBrowserSupport()
.createBrowser("dummyID");
browser.openURL(helpIndexURL);
} catch(PartInitException e) {
errMsg = "Could not open browser.\n\n" + e.getLocalizedMessage();
} catch(MalformedURLException e) {
errMsg = "URL to user documentation is not correct.\n\n" +
e.getLocalizedMessage();
} catch(IOException e) {
errMsg = "I/O error: Could not access the user documentation.\n\n" +
e.getLocalizedMessage();
} finally {
if(errMsg != null) {
showError(errMsg);
}
}
}
};
return new ActionFactory("helpContents", //$NON-NLS-1$
IWorkbenchCommandConstants.HELP_HELP_CONTENTS) {
@Override
public IWorkbenchAction create(IWorkbenchWindow window) {
IWorkbenchAction action = openExtHelpAction;
action.setId(getId());
return action;
}
};
}
/**
* Registers the "New AF3 Project" action and attaches it to the corresponding button.
*/
......