#properties strings used by plugin.getResourceString("key")
#where the following are the key=value pairs

OpenMPArtifactView.thingname=OpenMP Artifact
OpenMPArtifactView.thingnames=OpenMP Artifacts
OpenMPArtifactView.extraColName=Construct

#the following are probably not used (yet)
OpenMPArtifactView.valueIs=value is 
OpenMPArtifactView.OpenMPpragma=OpenMP Pragma
OpenMPArtifactView.functionCall=Function Call
OpenMPPlugin.preferencePageName=OpenMP Includes
RunAnalyseOpenMP.OpenMPdirective=OpenMP directive
RunAnalyseOpenMP.OpenMP=OpenMP

RemoveMarkerAction.OpenMPartifactsCleared=OpenMP artifacts cleared
RemoveMarkerAction.thingname=\ OpenMP Artifact
RemoveMarkerAction.and=\ and 
RemoveMarkerAction.OpenMPArtifactError=\ OpenMP Artifact Error
RemoveMarkerAction.haveBeenRemoved=have been removed.\n

RunAnalyseOpenMP.OpenMPdirective=OpenMP directive
RunAnalyseOpenMP.OpenMP=OpenMP

OpenMPPreferencePage.OpenMPincludePaths=OpenMP include paths:
OpenMPPreferencePage.pleaseChooseDirectory=Please choose a directory:


