private void convertShaderToolStripMenuItem_Click(object sender, EventArgs e) { string OldFileName = GetRegKey("LastShaderFilename", m_ApplicationPath); openFileDialogShader.InitialDirectory = Path.GetDirectoryName(OldFileName); openFileDialogShader.FileName = Path.GetFileName(OldFileName); // if ( openFileDialogShader.ShowDialog( this ) != DialogResult.OK ) // return; // SetRegKey( "LastShaderFilename", openFileDialogShader.FileName ); openFileDialogShader.FileName = @"E:\[Workspaces]\GodComplex\Resources\Shaders\GIRenderCubeMap.hlsl"; // Perform conversion string CSharpCode = null; try { // Load the shader code string ShaderCode = null; FileInfo ShaderFile = new FileInfo(openFileDialogShader.FileName); using (StreamReader S = ShaderFile.OpenText()) ShaderCode = S.ReadToEnd(); // Perform conversion CSharpCode = Converter.ConvertShader(ShaderFile, ShaderCode, "Test", "VS", "PS"); } catch (Converter.ConverterException _e) { SourceErrorForm F = new SourceErrorForm("An error occurred while converting shader \"" + openFileDialogShader.FileName + "\" to C# class!\n\n", _e); F.ShowDialog(this); return; } catch (Exception _e) { MessageBox("An error occurred while converting shader to C# class!\n\n" + _e.Message); return; } // Save the result OldFileName = GetRegKey("LastCSharpFilename", m_ApplicationPath); saveFileDialogShader.InitialDirectory = Path.GetDirectoryName(OldFileName); saveFileDialogShader.FileName = Path.GetFileName(OldFileName); if (saveFileDialogShader.ShowDialog(this) != DialogResult.OK) { return; } SetRegKey("LastCSharpFilename", saveFileDialogShader.FileName); FileInfo CSharpFile = new FileInfo(saveFileDialogShader.FileName); using (StreamWriter S = CSharpFile.CreateText()) { S.Write(CSharpCode); } }
private void convertShaderToolStripMenuItem_Click( object sender, EventArgs e ) { string OldFileName = GetRegKey( "LastShaderFilename", m_ApplicationPath ); openFileDialogShader.InitialDirectory = Path.GetDirectoryName( OldFileName ); openFileDialogShader.FileName = Path.GetFileName( OldFileName ); // if ( openFileDialogShader.ShowDialog( this ) != DialogResult.OK ) // return; // SetRegKey( "LastShaderFilename", openFileDialogShader.FileName ); openFileDialogShader.FileName = @"E:\[Workspaces]\GodComplex\Resources\Shaders\GIRenderCubeMap.hlsl"; // Perform conversion string CSharpCode = null; try { // Load the shader code string ShaderCode = null; FileInfo ShaderFile = new FileInfo( openFileDialogShader.FileName ); using ( StreamReader S = ShaderFile.OpenText() ) ShaderCode = S.ReadToEnd(); // Perform conversion CSharpCode = Converter.ConvertShader( ShaderFile, ShaderCode, "Test", "VS", "PS" ); } catch ( Converter.ConverterException _e ) { SourceErrorForm F = new SourceErrorForm( "An error occurred while converting shader \"" + openFileDialogShader.FileName + "\" to C# class!\n\n", _e ); F.ShowDialog( this ); return; } catch ( Exception _e ) { MessageBox( "An error occurred while converting shader to C# class!\n\n" + _e.Message ); return; } // Save the result OldFileName = GetRegKey( "LastCSharpFilename", m_ApplicationPath ); saveFileDialogShader.InitialDirectory = Path.GetDirectoryName( OldFileName ); saveFileDialogShader.FileName = Path.GetFileName( OldFileName ); if ( saveFileDialogShader.ShowDialog( this ) != DialogResult.OK ) return; SetRegKey( "LastCSharpFilename", saveFileDialogShader.FileName ); FileInfo CSharpFile = new FileInfo( saveFileDialogShader.FileName ); using ( StreamWriter S = CSharpFile.CreateText() ) { S.Write( CSharpCode ); } }