#include "dx11ShaderStrings.h"
#include <maya/MStringResource.h>
#include <maya/MString.h>
#include <maya/MStringArray.h>
namespace dx11ShaderStrings
{
    #define kPluginId  "dx11Shader"
    
    const MStringResourceId kEditAnnotationWIN          ( kPluginId, 
"kEditAnnotationWIN",          
MString( 
"Edit with application associated with fx file" ) );
 
    const MStringResourceId kEditAnnotationMAC          ( kPluginId, 
"kEditAnnotationMAC",          
MString( 
"Edit fx file with TextEdit" ) );
 
    const MStringResourceId kEditAnnotationLNX          ( kPluginId, 
"kEditAnnotationLNX",          
MString( 
"Edit fx file with your editor" ) );
 
    const MStringResourceId kEditCommandLNX             ( kPluginId, 
"kEditCommandLNX",             
MString( 
"Please set the command before using this feature." ) );
 
    
    const MStringResourceId kTechniqueTip               ( kPluginId, 
"kTechniqueTip",               
MString( 
"Select among the rendering techniques defined in the fx file." ) );
 
    const MStringResourceId kLightConnectionImplicit    ( kPluginId, 
"kLightConnectionImplicit",    
MString( 
"Automatic Bind" ) );
 
    const MStringResourceId kLightConnectionNoneTip     ( kPluginId, 
"kLightConnectionNoneTip",     
MString( 
"Ignores Maya lights and uses the settings in the fx file." ) );
 
    const MStringResourceId kLightConnectionImplicitTip ( kPluginId, 
"kLightConnectionImplicitTip", 
MString( 
"Maya will automatically bind scene lights and parameters to the lights defined in the fx file." ) );
 
    const MStringResourceId kLightConnectionExplicitTip ( kPluginId, 
"kLightConnectionExplicitTip", 
MString( 
"Explicitly binds a Maya scene light and it's parameters to a light defined in the fx file." ) );
 
    const MStringResourceId kActionNewAnnotation        ( kPluginId, 
"kActionNewAnnotation",        
MString( 
"Add a new action to this menu" ) );
 
    const MStringResourceId kActionNothingAnnotation    ( kPluginId, 
"kActionNothingAnnotation",    
MString( 
"Button does nothing; not assigned." ) );
 
    const MStringResourceId kActionNotAssigned          ( kPluginId, 
"kActionNotAssigned",          
MString( 
"LMB: Does nothing; not assigned.  RMB: Choose what this button should do." ) );
 
    const MStringResourceId kActionEmptyCommand         ( kPluginId, 
"kActionEmptyCommand",         
MString( 
"LMB: Does nothing; empty command.  RMB: Choose what this button should do." ) );
 
    const MStringResourceId kActionEditorTitle          ( kPluginId, 
"kActionEditorTitle",          
MString( 
"dx11Shader Tool Button Editor" ) );
 
    const MStringResourceId kActionEditorInsertVariable ( kPluginId, 
"kActionEditorInsertVariable", 
MString( 
"Insert variable:" ) );
 
    
    const MStringResourceId kPrefSavePrefsOrNotMsg      ( kPluginId, 
"kPrefSavePrefsOrNotMsg",      
MString( 
"The dx11Shader plug-in is about to refresh preferences windows. Save your changes in the preferences window?" ) );
 
    const MStringResourceId kPrefDefaultEffectFile      ( kPluginId, 
"kPrefDefaultEffectFile",      
MString( 
"Default effects file" ) );
 
    const MStringResourceId kPrefDx11ShaderPanel        ( kPluginId, 
"kPrefDx11ShaderPanel",        
MString( 
"DX 11 Shader Preferences" ) );
 
    
    const MStringResourceId kErrorEffectCompile         ( kPluginId, 
"kErrorEffectCompile",         
MString( 
"Effect from file compile errors (^1s) {\n^2s\n}\n" ) );
 
    const MStringResourceId kErrorEffectBuffer          ( kPluginId, 
"kErrorEffectBuffer",          
MString( 
"Effect from buffer creation errors: {\n^1s\n}\n" ) );
 
    const MStringResourceId kErrorFileNotFound          ( kPluginId, 
"kErrorFileNotFound",          
MString( 
"Effect file \"^1s\" not found." ) );
 
    const MStringResourceId kErrorInvalidEffectFile     ( kPluginId, 
"kErrorInvalidEffectFile",     
MString( 
"Invalid effect file \"^1s\"." ) );
 
    const MStringResourceId kErrorAbsolutePathNotFound  ( kPluginId, 
"kErrorAbsolutePathNotFound",  
MString( 
"Effect file \"^1s\" not found, using \"^2s\" instead.\n" ) );
 
    
    const MStringResourceId kErrorIndexVaryingParameter ( kPluginId, 
"kErrorIndexVaryingParameter", 
MString( 
"Unsupported index on varying parameter ^1s. Index will be interpreted as 0\n" ) );
 
    const MStringResourceId kErrorVertexRequirement     ( kPluginId, 
"kErrorVertexRequirement",     
MString( 
"Unsupported per vertex requirement for ^1s^2s. The vector size should be between ^3s and ^4s, the effect requires ^5s\n" ) );
 
    const MStringResourceId kWarningVertexRequirement   ( kPluginId, 
"kWarningVertexRequirement",   
MString( 
"Per vertex requirement for ^1s. The vector size maya provides is ^2s, the effect requires ^3s\n" ) );
 
    const MStringResourceId kErrorNoValidTechniques     ( kPluginId, 
"kErrorNoValidTechniques",     
MString( 
"Cannot initialize techniques. Effect has no valid techniques.\n" ) );
 
    const MStringResourceId kErrorSetTechniqueByName    ( kPluginId, 
"kErrorSetTechniqueByName",    
MString( 
"Failed to set technique. Technique ^1s does not exist on effect.\n" ) );
 
    const MStringResourceId kErrorSetTechniqueByIndex   ( kPluginId, 
"kErrorSetTechniqueByIndex",   
MString( 
"Failed to set technique. Technique #^1s does not exist on effect.\n" ) );
 
    const MStringResourceId kErrorIsTransparentOpacity  ( kPluginId, 
"kErrorIsTransparentOpacity",  
MString( 
"Technique with isTransparent == 2 annotation must have one parameter with Opacity semantics.\n" ) );
 
    const MStringResourceId kErrorUnknownIsTransparent  ( kPluginId, 
"kErrorUnknownIsTransparent",  
MString( 
"Technique has unknown isTransparent annotation value ( 0: Opaque, 1: Transparent, 2: Use opacity semantics ).\n" ) );
 
    const MStringResourceId kErrorSetPass               ( kPluginId, 
"kErrorSetPass",               
MString( 
"Failed to set pass. Pass #^1s does not exist on technique: ^2s.\n" ) );
 
    const MStringResourceId kErrorRegisterNodeType      ( kPluginId, 
"kErrorRegisterNodeType",      
MString( 
"Failed to register ^1s to filePathEditor" ) );
 
    const MStringResourceId kErrorDeregisterNodeType    ( kPluginId, 
"kErrorDeregisterNodeType",    
MString( 
"Failed to deregister ^1s from filePathEditor" ) );
 
    
    
    const MStringResourceId kInvalidDx11ShaderNode      ( kPluginId, 
"kInvalidDx11ShaderNode",      
MString( 
"Invalid dx11Shader node: ^1s" ) );
 
    const MStringResourceId kUnknownConnectableLight    ( kPluginId, 
"kUnknownConnectableLight",    
MString( 
"Unknown connectable light: ^1s" ) );
 
    const MStringResourceId kUnknownSceneObject         ( kPluginId, 
"kUnknownSceneObject",         
MString( 
"Unknown scene object: ^1s" ) );
 
    
    const MStringResourceId kUnsupportedType            ( kPluginId, 
"kUnsupportedType",            
MString( 
"Unsupported ^1s on parameter ^2s. Parameter will be ignored\n" ) );
 
    const MStringResourceId kUnknowSemantic             ( kPluginId, 
"kUnknowSemantic",             
MString( 
"Unrecognized semantic ^1s on parameter ^2s\n" ) );
 
    const MStringResourceId kUnknowSpace                ( kPluginId, 
"kUnknowSpace",                
MString( 
"Unrecognised space ^1s on parameter ^2s\n" ) );
 
    const MStringResourceId kNoTextureType              ( kPluginId, 
"kNoTextureType",              
MString( 
"No texture type provided for ^1s, assuming 2D\n" ) );
 
    const MStringResourceId kUnknownTextureSemantic     ( kPluginId, 
"kUnknownTextureSemantic",     
MString( 
"Unrecognised texture type semantic ^1s on parameter ^2s\n" ) );
 
    
    const MStringResourceId kErrorPenumbraAngle         ( kPluginId, 
"kErrorPenumbraAngle",         
MString( 
"ERROR getting PenumbraAngle data" ) );
 
}
MStatus dx11ShaderStrings::registerMStringResources(
void)
 
{
    
    
    
    
    
    
    
    
}
{
}
{
    return dx11ShaderStrings::getString(stringId, args);
}
{
    string.
format( dx11ShaderStrings::getString(stringId), args);
 
    return string;
}