<!--
  #%L
  S2P
  %%
  Copyright (C) 2016 José Luis Capelo Martínez, José Eduardo Araújo, Florentino Fdez-Riverola, Miguel
  			Reboiro-Jato, Hugo López-Fernández, and Daniel Glez-Peña
  %%
  This program is free software: you can redistribute it and/or modify
  it under the terms of the GNU General Public License as
  published by the Free Software Foundation, either version 3 of the
  License, or (at your option) any later version.
  
  This program is distributed in the hope that it will be useful,
  but WITHOUT ANY WARRANTY; without even the implied warranty of
  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  GNU General Public License for more details.
  
  You should have received a copy of the GNU General Public
  License along with this program.  If not, see
  <http://www.gnu.org/licenses/gpl-3.0.html>.
  #L%
  -->
<plugin start="true">
	<uid>s2p-aibench-application</uid>
	<name>s2p-aibench-application</name>
	<version>1.0</version>
	
	<lifecycleclass>es.uvigo.ei.sing.s2p.aibench.Lifecycle</lifecycleclass>

	<dependencies>
		<dependency uid="aibench-plugin-recent-files-history"/>
	</dependencies>

	<extensions>
		<extension
			uid="aibench.core" name="aibench.core.operation-definition"
			class="es.uvigo.ei.sing.s2p.aibench.operations.ImportSameSpotsReport"
		>
			<operation-description
				menuName="Report from HTM files"
				uid="operations.importsamespotsreport"
				path="2@Import/1@SameSpots"
				help="import.samespots.report"
			/>
		</extension>
	
		<extension
			uid="aibench.core" name="aibench.core.operation-definition"
			class="es.uvigo.ei.sing.s2p.aibench.operations.ImportSameSpotsCsvFiles"
		>
			<operation-description
				menuName="Spots from CSV files"
				uid="operations.importsamespotscsvfiles"
				path="2@Import/1@SameSpots"
				help="import.samespots.csv"
			/>
		</extension>
	
		<extension
			uid="aibench.core" name="aibench.core.operation-definition"
			class="es.uvigo.ei.sing.s2p.aibench.operations.LoadSpotsData"
		>
			<operation-description
				name="Load spots"
				uid="operations.loadspotsdata"
				path="3@Load"
				shortcut="1"
				help="load.spots"
			/>
		</extension>
		
		<extension
			uid="aibench.core" name="aibench.core.operation-definition"
			class="es.uvigo.ei.sing.s2p.aibench.operations.ImportMascotIdentifications"
		>
			<operation-description
				name="Import Mascot identifications"
				uid="operations.importmascotidentifications"
				path="2@Import"
				help="import.mascot"
			/>
		</extension>

		<extension
			uid="aibench.core" name="aibench.core.operation-definition"
			class="es.uvigo.ei.sing.s2p.aibench.operations.ImportMascotQuantificationCsvFiles"
		>
			<operation-description
				name="Import Mascot quantifications"
				uid="operations.importmascotquantifications"
				path="2@Import"
				help="import.mascot.quantifications"
			/>
		</extension>
		
		<extension
			uid="aibench.core" name="aibench.core.operation-definition"
			class="es.uvigo.ei.sing.s2p.aibench.operations.LoadMascotCsvFile"
		>
			<operation-description
				name="Load identifications"
				uid="operations.loadmascotidentifications"
				path="3@Load"
				shortcut="3"
				help="load.identifications"
			/>
		</extension>

		<extension
			uid="aibench.core" name="aibench.core.operation-definition"
			class="es.uvigo.ei.sing.s2p.aibench.operations.LoadSpotMascotIdentificationsCsvFile"
		>
			<operation-description
				name="Load spot identifications"
				uid="operations.loadspotmascotidentifications"
				path="3@Load"
				help="load.spotidentifications"
				shortcut="2"
			/>
		</extension>

		<extension
			uid="aibench.core" name="aibench.core.operation-definition"
			class="es.uvigo.ei.sing.s2p.aibench.operations.ImportMaldiPlate"
		>
			<operation-description
				name="Import plate"
				uid="operations.importmaldiplate"
				path="2@Import"
				help="import.plate"
			/>
		</extension>
		
		<extension
			uid="aibench.core" name="aibench.core.operation-definition"
			class="es.uvigo.ei.sing.s2p.aibench.operations.CreateMaldiPlate"
			>
			<operation-description
				name="New plate"
				uid="operations.createmaldiplate"
				path="1@File"
				help="file.newplate"
			/>
		</extension>
		
		<extension
			uid="aibench.core" name="aibench.core.operation-definition"
			class="es.uvigo.ei.sing.s2p.aibench.operations.LoadMaldiPlate"
		>
			<operation-description
				name="Load plate"
				uid="operations.loadmaldiplate"
				path="3@Load"
				shortcut="4"
				help="load.plate"
			/>
		</extension>
		
		<extension
			uid="aibench.core" name="aibench.core.operation-definition"
			class="es.uvigo.ei.sing.s2p.aibench.operations.CreateVennDiagramDesign"
		>
			<operation-description
				name="New Venn Diagram design"
				uid="operations.createvenndiagramdesign"
				path="1@File"
				help="file.newvenndiagramdesign"
			/>
		</extension>

		<extension
			uid="aibench.core" name="aibench.core.operation-definition"
			class="es.uvigo.ei.sing.s2p.aibench.operations.LoadVennDiagramDesign"
		>
			<operation-description
				name="Load Venn Diagram design"
				uid="operations.loadvenndiagramdesign"
				path="3@Load"
				help="load.venndiagramdesign"
			/>
		</extension>

		<extension
			uid="aibench.core" name="aibench.core.operation-definition"
			class="es.uvigo.ei.sing.s2p.aibench.operations.FillMaldiPlate"
		>
			<operation-description
				name="Fill plate"
				uid="operations.fillmaldiplate"
				path="4@Operations"
				help="operations.fillplate"
			/>
		</extension>

		<extension
			uid="aibench.core" name="aibench.core.operation-definition"
			class="es.uvigo.ei.sing.s2p.aibench.operations.AssociateMascotIdentificationsFromReport"
		>
			<operation-description
				name="Associate Mascot identifications from a HTM Mascot report file"
				uid="operations.associatemascotidentificationsfromreport"
				path="4@Operations"
				help="operations.associatemascotidentifications.report"
			/>
		</extension>

		<extension
			uid="aibench.core" name="aibench.core.operation-definition"
			class="es.uvigo.ei.sing.s2p.aibench.operations.AssociateMascotIdentificationsFromCsv"
		>
			<operation-description
				name="Associate Mascot identifications from a CSV file"
				uid="operations.associatemascotidentificationsfromcsv"
				path="4@Operations"
				help="operations.associatemascotidentifications.csv"
			/>
		</extension>

		<extension uid="aibench.workbench" name="aibench.workbench.view">
			<view
				name="SameSpots analysis viewer"
				datatype="es.uvigo.ei.sing.s2p.aibench.datatypes.SameSpotsAnalysisDatatype"
				class="es.uvigo.ei.sing.s2p.aibench.views.SameSpotsAnalysisView"
			/>
			<view
				name="Spots data viewer"
				datatype="es.uvigo.ei.sing.s2p.aibench.datatypes.SpotsDataDatatype"
				class="es.uvigo.ei.sing.s2p.aibench.views.SpotsDataDatatypeView"
			/>		
			<view
				name="Mascot identifications viewer"
				datatype="es.uvigo.ei.sing.s2p.aibench.datatypes.MascotIdentificationsDatatype"
				class="es.uvigo.ei.sing.s2p.aibench.views.MascotIdentificationsDatatypeView"
			/>
			<view
				name="Spots Mascot identifications viewer"
				datatype="es.uvigo.ei.sing.s2p.aibench.datatypes.SpotMascotIdentificationsDatatype"
				class="es.uvigo.ei.sing.s2p.aibench.views.SpotMascotIdentificationsDatatypeView"
			/>
			<view
				name="Mascot quantifications viewer"
				datatype="es.uvigo.ei.sing.s2p.aibench.datatypes.QuantificationDatasetDatatype"
				class="es.uvigo.ei.sing.s2p.aibench.views.QuantificationDatasetView"
			/>
			<view
				name="Maldi plate editor"
				datatype="es.uvigo.ei.sing.s2p.aibench.datatypes.MaldiPlateDatatype"
				class="es.uvigo.ei.sing.s2p.aibench.views.MaldiPlateDatatypeView"
			/>
			<view
				name="Venn diagram designer"
				datatype="es.uvigo.ei.sing.s2p.aibench.datatypes.VennDiagramDesignDatatype"
				class="es.uvigo.ei.sing.s2p.aibench.views.VennDiagramDesigner"
			/>		
		</extension>
		
		<extension uid="aibench.workbench" name="aibench.workbench.view">
		    <gui-operation
		    	operation="operations.loadspotsdata"
		    	class="es.uvigo.ei.sing.s2p.aibench.operations.dialogs.LoadSpotsDataDialog"
		    />
		    <gui-operation
		    	operation="operations.loadmascotidentifications"
		    	class="es.uvigo.ei.sing.s2p.aibench.operations.dialogs.LoadMascotCsvFileDialog"
		    />
		    <gui-operation
				operation="operations.loadspotmascotidentifications"
				class="es.uvigo.ei.sing.s2p.aibench.operations.dialogs.LoadSpotMascotIdentificationsCsvFileDialog"
		    />
		    <gui-operation
		    	operation="operations.importsamespotscsvfiles"
		    	class="es.uvigo.ei.sing.s2p.aibench.operations.dialogs.ImportSameSpotsCsvFilesDialog"
		    />
		    <gui-operation
		    	operation="operations.importmaldiplate"
		    	class="es.uvigo.ei.sing.s2p.aibench.operations.dialogs.ImportMaldiPlateDialog"
		    />
		    <gui-operation
				operation="operations.createmaldiplate"
				class="es.uvigo.ei.sing.s2p.aibench.operations.dialogs.CreateMaldiPlateDialog"
		    />
		    <gui-operation
				operation="operations.fillmaldiplate"
				class="es.uvigo.ei.sing.s2p.aibench.operations.dialogs.FillMaldiPlateDialog"
		    />
		    <gui-operation
				operation="operations.associatemascotidentificationsfromcsv"
				class="es.uvigo.ei.sing.s2p.aibench.operations.dialogs.AssociateMascotIdentificationsFromCsvDialog"
		    />
		</extension>		

		<extension uid="aibench.workbench" name="aibench.workbench.view">
			<icon-operation
				operation="operations.importsamespotsreport"
				icon="icons/progenesis.png"
			/>
			<big-icon-operation	
				operation="operations.importsamespotsreport"
				icon="icons/progenesis.png"
			/>

			<icon-operation
				operation="operations.importsamespotscsvfiles"
				icon="icons/progenesis.png"
			/>
			<big-icon-operation	
				operation="operations.importsamespotscsvfiles"
				icon="icons/progenesis.png"
			/>
			
			<icon-operation
				operation="operations.loadspotsdata"
				icon="icons/loadspotsdata.png"
			/>
			<big-icon-operation	
				operation="operations.loadspotsdata"
				icon="icons/loadspotsdata.png"
			/>
			
			<icon-operation
				operation="operations.importmascotidentifications"
				icon="icons/importmascotidentifications.png"
			/>
			<big-icon-operation	
				operation="operations.importmascotidentifications"
				icon="icons/importmascotidentifications.png"
			/>

			<icon-operation
				operation="operations.importmascotquantifications"
				icon="icons/importmascotquantifications.png"
			/>
			<big-icon-operation
				operation="operations.importmascotquantifications"
				icon="icons/importmascotquantifications.png"
			/>

			<icon-operation
				operation="operations.loadmascotidentifications"
				icon="icons/loadmascotidentifications.png"
			/>
			<big-icon-operation	
				operation="operations.loadmascotidentifications"
				icon="icons/loadmascotidentifications.png"
			/>

			<icon-operation
				operation="operations.loadspotmascotidentifications"
				icon="icons/loadspotmascotidentifications.png"
			/>
			<big-icon-operation
				operation="operations.loadspotmascotidentifications"
				icon="icons/loadspotmascotidentifications.png"
			/>

			<icon-operation
				operation="operations.importmaldiplate"
				icon="icons/importmaldiplate.png"
			/>
			<big-icon-operation	
				operation="operations.importmaldiplate"
				icon="icons/importmaldiplate.png"
			/>
			
			<icon-operation
				operation="operations.createmaldiplate"
				icon="icons/createmaldiplate.png"
			/>
			<big-icon-operation	
				operation="operations.createmaldiplate"
				icon="icons/createmaldiplate.png"
			/>

			<icon-operation
				operation="operations.fillmaldiplate"
				icon="icons/fillmaldiplate.png"
			/>
			<big-icon-operation
				operation="operations.fillmaldiplate"
				icon="icons/fillmaldiplate.png"
			/>

			<icon-operation
				operation="operations.loadmaldiplate"
				icon="icons/loadmaldiplate.png"
			/>
			<big-icon-operation	
				operation="operations.loadmaldiplate"
				icon="icons/loadmaldiplate.png"
			/>

			<icon-operation
				operation="operations.createvenndiagramdesign"
				icon="icons/createvenn.png"
			/>
			<big-icon-operation	
				operation="operations.createvenndiagramdesign"
				icon="icons/createvenn.png"
			/>
			
			<icon-operation
				operation="operations.loadvenndiagramdesign"
				icon="icons/loadvenn.png"
			/>
			<big-icon-operation	
				operation="operations.loadvenndiagramdesign"
				icon="icons/loadvenn.png"
			/>

			<icon-operation
				operation="operations.associatemascotidentificationsfromcsv"
				icon="icons/associatemascotidentifications.png"
			/>
			<big-icon-operation
				operation="operations.associatemascotidentificationsfromcsv"
				icon="icons/associatemascotidentifications.png"
			/>

			<icon-operation
				operation="operations.associatemascotidentificationsfromreport"
				icon="icons/associatemascotidentifications.png"
			/>
			<big-icon-operation
				operation="operations.associatemascotidentificationsfromreport"
				icon="icons/associatemascotidentifications.png"
			/>
			
			<icon-datatype
				datatype="es.uvigo.ei.sing.s2p.aibench.datatypes.VennDiagramDesignDatatype"
				icon="icons/venndatatype.png"
			/>
			<icon-datatype
				datatype="es.uvigo.ei.sing.s2p.aibench.datatypes.SpotsDataDatatype"
				icon="icons/dataset.png"
			/>
			<icon-datatype
				datatype="es.uvigo.ei.sing.s2p.aibench.datatypes.MascotIdentificationsDatatype"
				icon="icons/mascotdatatype.png"
			/>
			<icon-datatype
				datatype="es.uvigo.ei.sing.s2p.aibench.datatypes.SpotMascotIdentificationsDatatype"
				icon="icons/mascotdatatype.png"
			/>
			<icon-datatype
				datatype="es.uvigo.ei.sing.s2p.aibench.datatypes.QuantificationDatasetDatatype"
				icon="icons/quantificationdatasetdatatype.png"
			/>
			<icon-datatype
				datatype="es.uvigo.ei.sing.s2p.aibench.datatypes.MaldiPlateDatatype"
				icon="icons/maldiplatedatatype.png"
			/>
			<icon-datatype
				datatype="es.uvigo.ei.sing.s2p.aibench.datatypes.SameSpotsAnalysisDatatype"
				icon="icons/samespotsdatatype.png"
			/>
		</extension>

		<extension uid="aibench.workbench" name="aibench.workbench.view" >
			<welcomescreen class="es.uvigo.ei.sing.s2p.aibench.gui.Welcome" title="Welcome to S2P"/>
		</extension>
		
		<extension uid="aibench.workbench" name="aibench.workbench.view" >
			<menu-icon menu="Import/SameSpots" icon="conf/resources/menu/progenesis.png"/>
		</extension>
	</extensions>
</plugin>
