<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.4"?>
<plugin>
   <extension
         point="org.eclipse.amalgam.explorer.activity.ui.pagesProvider">
      <Page
            class="org.eclipse.opencert.infra.dashboard.pages.DashboardWorkflowPage"
            id="org.eclipse.opencert.infra.dashboard.pages.dashboard"
            imageOff="icons/workflow/workflow_off.png"
            imageOn="icons/workflow/workflow_on.png"
            index="0"
            tabName="Workflow"
            title="Workflow"
            viewer="false">
         <Description>
            Dashboard in OpenCert
         </Description>
         <Predicate
               class="org.eclipse.opencert.infra.dashboard.predicates.DashboardPredicate">
         </Predicate>
      </Page>
      <Page
            class="org.eclipse.opencert.infra.dashboard.pages.StandardComplianceDefinitionPage"
            id="org.eclipse.opencert.infra.dashboard.pages.standard.compliance.definition.page"
            imageOff="icons/standardcompliance/standard_compliance_def_off.png"
            imageOn="icons/standardcompliance/standard_compliance_def_on.png"
            index="1"
            tabName="Standard Compliance Definition"
            title="Standard Compliance Definition"
            viewer="true">
         <Description>
            Standard Compliance Definition in OpenCert
         </Description>
         <Predicate
               class="org.eclipse.opencert.infra.dashboard.predicates.DashboardPredicate">
         </Predicate>
         <Overview
               imageOff="icons/standardcompliance/standard_compliance_def_off.png"
               imageOn="icons/standardcompliance/standard_compliance_def_on.png">
            <Description>
               Define the standard compliance.
            </Description>
         </Overview>
         <Section
               expanded="true"
               filtering="true"
               id="org.eclipse.opencert.infra.dashboard.section.modelling.standards"
               index="0"
               name="Modelling Standards">
            <Description>
               Digitalize the standards, regulations, guidelines, best practices into a model. This can be done in a reference framework by the Assurance Manager who is an expert in standards appliance and/or a process engineer, who can model the process implicitly on a standard.
            </Description>
            <Activity
                  class="org.eclipse.opencert.infra.dashboard.pages.adapters.OpenNewRefframeworkDiagramWizard"
                  id="org.eclipse.opencert.infra.dashboard.activity.model.new.standard"
                  image="icons/standardcompliance/refframework_diagram_icon.png"
                  index="0"
                  name="Model a new standard/regulation/guideline">
               <Description>
                  Model a new standard, a new regulation or a new guideline.
               </Description>
            </Activity>
            <Activity
                  class="org.eclipse.opencert.infra.dashboard.pages.adapters.OpenNewMethodLibraryWizard"
                  id="org.eclipse.opencert.infra.dashboard.activity.modelling.processes.definition"
                  image="icons/standardcompliance/method_library_icon.png"
                  index="1"
                  name="Modelling of processes definitions mandated by standards">
               <Description>
                  Modelling of processes definitions mandated by standards.
               </Description>
            </Activity>
         </Section>
         <Section
               expanded="true"
               filtering="true"
               id="org.eclipse.opencert.infra.dashboard.section.standard.compliance.definition.reuse"
               index="1"
               name="Reuse">
            <Description>
               The Process Engineer can reuse existing process elements. The Assurance Manager indicates the equivalences between different standards already modelled as reference frameworks.
            </Description>
            <Activity
                  id="org.eclipse.opencert.infra.dashboard.activity.modelling.reusable.process.elements"
                  index="0"
                  name="Modelling of reusable process elements">
               <Description>
                  Description body text
               </Description>
            </Activity>
            <Activity
                  id="org.eclipse.opencert.infra.dashboard.activity.modelling.reusable.process.patterns"
                  index="1"
                  name="Modelling of reusable process patterns">
               <Description>
                  Description body text
               </Description>
            </Activity>
            <Activity
                  class="org.eclipse.opencert.infra.dashboard.pages.adapters.OpenMappingSetDialogHyperLinkAdapter"
                  id="org.eclipse.opencert.infra.dashboard.activity.map.equivalences.standard"
                  image="icons/standardcompliance/equivalence_mapping_icon.png"
                  index="2"
                  name="Map equivalences between standards">
               <Description>
                  Map equivalences between standards.
               </Description>
            </Activity>
         </Section>
      </Page>
      <Page
            class="org.eclipse.opencert.infra.dashboard.pages.AssuranceProjectDefinitionPage"
            id="org.eclipse.opencert.infra.dashboard.pages.assurance.project.definition.page"
            imageOff="icons/assuranceproject/assurance_project_def_off.png"
            imageOn="icons/assuranceproject/assurance_project_def_on.png"
            index="2"
            tabName="Assurance Project Definition"
            title="Assurance Project Definition"
            viewer="true">
         <Description>
            Assurance Project Definition in OpenCert
         </Description>
         <Predicate
               class="org.eclipse.opencert.infra.dashboard.predicates.DashboardPredicate">
         </Predicate>
         <Overview
               imageOff="icons/assuranceproject/assurance_project_def_off.png"
               imageOn="icons/assuranceproject/assurance_project_def_on.png">
            <Description>
               Define a new assurance project.
            </Description>
         </Overview>
         <Section
               expanded="true"
               filtering="true"
               id="org.eclipse.opencert.infra.dashboard.section.create.assurance.project"
               index="0"
               name="Create Assurance Project">
            <Description>
               The Assurance Manager can maintain the lifecycle of projects by creating Assurance Projects and system design projects associated.
            </Description>
            <Activity
                  class="org.eclipse.opencert.infra.dashboard.pages.adapters.OpenNewAssuranceProjectWizard"
                  id="org.eclipse.opencert.infra.dashboard.activity.create.assurance.project"
                  image="icons/assuranceproject/assurance_project_icon.png"
                  index="0"
                  name="Create a new assurance project">
               <Description>
                  Open a wizard to create a new assurance project.
               </Description>
            </Activity>
            <Activity
                  class="org.eclipse.opencert.infra.dashboard.pages.adapters.OpenNewChessProjectWizard"
                  id="org.eclipse.opencert.infra.dashboard.activity.create.chess.project"
                  image="icons/assuranceproject/chess_project_icon.png"
                  index="1"
                  name="Create a system architecture design">
               <Description>
                  Open a wizard to create a new Chess project.
               </Description>
            </Activity>
         </Section>
         <Section
               expanded="true"
               filtering="true"
               id="org.eclipse.opencert.infra.dashboard.section.define.compliance.baseline"
               index="1"
               name="Define Compliance Baseline">
            <Description>
               The Assurance Manager can manage the lifecycle of projects by updating previous defined compliance plan of a project.
            </Description>
            <Activity
                  id="org.eclipse.opencert.infra.dashboard.activity.create.update.baseline"
                  index="0"
                  name="Create or update a baseline">
               <Description>
                  A baseline configuration has a set of baseline models. A baseline model represents what is planned to comply with, in a specific assurance project.
               </Description>
            </Activity>
         </Section>
         <Section
               expanded="true"
               filtering="true"
               id="org.eclipse.opencert.infra.dashboard.section.assurance.project.definition.reuse"
               index="2"
               name="Reuse">
            <Description>
               The Assurance Manager can reuse the assurance assets from one assurance project to another or reuse artefacts between projects according to the equivalence maps.
            </Description>
            <Activity
                  id="org.eclipse.opencert.infra.dashboard.activity.cross.system.reuse"
                  index="0"
                  name="Cross system reuse">
               <Description>
                  Description body text
               </Description>
            </Activity>
            <Activity
                  id="org.eclipse.opencert.infra.dashboard.activity.cross.standard.reuse"
                  index="1"
                  name="Cross standard reuse">
               <Description>
                  Description body text
               </Description>
            </Activity>
         </Section>
      </Page>
      <Page
            class="org.eclipse.opencert.infra.dashboard.pages.ProcessReusabilityDefinitionPage"
            id="org.eclipse.opencert.infra.dashboard.pages.process.reusability.definition.page"
            imageOff="icons/processreusability/processreusability_off.png"
            imageOn="icons/processreusability/processreusability_on.png"
            index="3"
            tabName="Process Reusability Definition"
            title="Process Reusability Definition"
            viewer="true">
         <Description>
            Process Reusability Definition in OpenCert
         </Description>
         <Predicate
               class="org.eclipse.opencert.infra.dashboard.predicates.DashboardPredicate">
         </Predicate>
         <Overview
               imageOff="icons/processreusability/processreusability_off.png"
               imageOn="icons/processreusability/processreusability_on.png">
            <Description>
               Define the process reusability.
            </Description>
         </Overview>
         <Section
               expanded="true"
               filtering="true"
               id="org.eclipse.opencert.infra.dashboard.section.process.reusability.definition"
               index="0"
               name="Process Reusability Definition">
            <Description>
               Define the process reuseabitlity.
            </Description>
            <Activity
                  id="org.eclipse.opencert.infra.dashboard.activity.define.process.reuseability"
                  index="0"
                  name="Define process reuseability">
               <Description>
                  Define the process reuseability.
               </Description>
            </Activity>
         </Section>
      </Page>
   </extension>
   <extension
         point="org.eclipse.ui.navigator.viewer">
         <viewerActionBinding
            viewerId="org.eclipse.ui.navigator.ProjectExplorer">
         <includes>
            <actionExtension
                  pattern="org.eclipse.opencert.infra.dashboard.content">
            </actionExtension>
         </includes>
      </viewerActionBinding>
   </extension>
   <extension
         point="org.eclipse.ui.navigator.navigatorContent">
         <actionProvider
            class="org.eclipse.opencert.infra.dashboard.actions.DashboardActionProvider"
            id="org.eclipse.opencert.infra.dashboard.content"
            overrides="org.eclipse.amalgam.explorer.activity.navigator.content"
            priority="highest">
         <enablement>
            <or>
               <instanceof
                     value="org.eclipse.core.resources.IProject">
               </instanceof>
               <instanceof
                     value="org.eclipse.core.resources.IFile">
               </instanceof>
            </or>
         </enablement>
      </actionProvider>
   </extension>
      <extension
         point="org.eclipse.ui.handlers">
      <handler
            class="org.eclipse.opencert.infra.dashboard.handlers.OpenDashboardHandler"
            commandId="org.eclipse.opencert.infra.dashboard.commands.opendashboard">
         <activeWhen>
            <or>
               <with
                     variable="activePartId">
                  <equals
                        value="org.eclipse.ui.navigator.ProjectExplorer">
                  </equals>
               </with>
               <with
                     variable="activePart">
                  <instanceof
                        value="org.eclipse.ui.IEditorPart">
                  </instanceof>
               </with>
            </or>
         </activeWhen>
         <!--activeWhen>
            <with variable="activePartId">
               <or>
                  <instanceof
                        value="org.eclipse.ui.navigator.ProjectExplorer">
                  </instanceof>
                  <instanceof
                        value="org.eclipse.ui.IEditorPart">
                  </instanceof>
               </or>
            </with>
         </activeWhen-->
      </handler>
   </extension>
   <extension
         point="org.eclipse.ui.commands">
      <command
            id="org.eclipse.opencert.infra.dashboard.commands.opendashboard"
            name="Open Dashboard">
      </command>
   </extension>
   <extension
         point="org.eclipse.ui.menus">
      <menuContribution
            locationURI="toolbar:org.eclipse.ui.main.toolbar?after=additions">
         <toolbar
               id="org.eclipse.opencert.infra.dashboard.toolbar.opendashboard">
            <command
                  commandId="org.eclipse.opencert.infra.dashboard.commands.opendashboard"
                  disabledIcon="icons/toolbar/icon_dashboard_disabled.png"
                  icon="icons/toolbar/icon_dashboard.png"
                  id="org.eclipse.opencert.infra.dashboard.toolbar.opendashboard"
                  label="Open Dashboard">
            </command>
         </toolbar>
      </menuContribution>
   </extension>
</plugin>
