public void SaveAsOnClick(object sender, EventArgs e)
{
var item = GitTree.SelectedNode.Tag as GitItem;
if (item == null)
return;
if (item.ItemType != "blob")
return;
var fileDialog =
new SaveFileDialog
{
FileName = Settings.WorkingDir + item.FileName,
AddExtension = true
};
fileDialog.DefaultExt = GitCommands.GitCommands.GetFileExtension(fileDialog.FileName);
fileDialog.Filter =
"Current format (*." +
GitCommands.GitCommands.GetFileExtension(fileDialog.FileName) + ")|*." +
GitCommands.GitCommands.GetFileExtension(fileDialog.FileName) +
"|All files (*.*)|*.*";
if (fileDialog.ShowDialog() == DialogResult.OK)
{
File.WriteAllText(fileDialog.FileName,
GitCommands.GitCommands.RunCmd(
Settings.GitCommand,
string.Format("cat-file blob \"{0}\"", item.Guid)));
}
}