diff options
author | Lluis Sanchez <lluis@novell.com> | 2010-03-24 20:07:14 +0300 |
---|---|---|
committer | Lluis Sanchez <lluis@novell.com> | 2010-03-24 20:07:14 +0300 |
commit | 047d32932a5f27f98fbd2dfc04d9aaa293cfe16e (patch) | |
tree | 789319afe26143bf830b49f387caab16a582adcf /main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.ExternalTools | |
parent | 6aaef4412d971d46af58c93aabf68cd04d74db26 (diff) |
* MonoDevelop.Ide/MonoDevelop.Ide.FindInFiles/FileProvider.cs: Don't
save the file if nothing has been replaced.
* MonoDevelop.Ide/MonoDevelop.Ide.Templates/SingleFileDescriptionTemplate.cs:
* MonoDevelop.Ide/MonoDevelop.Ide.Templates/CodeTranslationFileDescriptionTemplate.cs:
HashtableToStringArray is not necessary. The string parser service
can directly handle a string dictionary.
* MonoDevelop.Ide/Makefile.am:
* MonoDevelop.Ide/gtk-gui/gui.stetic:
* MonoDevelop.Ide/gtk-gui/objects.xml:
* MonoDevelop.Ide/MonoDevelop.Ide/Ide.cs:
* MonoDevelop.Ide/MonoDevelop.Ide.csproj:
* MonoDevelop.Ide/MonoDevelop.Ide.Gui/Workbench.cs:
* MonoDevelop.Ide/MonoDevelop.Ide.Commands/ToolsCommands.cs:
* MonoDevelop.Ide/MonoDevelop.Ide.ExternalTools/ExternalTool.cs:
* MonoDevelop.Ide/MonoDevelop.Ide.ExternalTools/ExternalToolPanel.cs:
* MonoDevelop.Ide/MonoDevelop.Ide.Commands/CustomStringTagProvider.cs:
* MonoDevelop.Ide/MonoDevelop.Ide.Gui.Components/StringTagSelectorButton.cs:
* MonoDevelop.Ide/MonoDevelop.Ide.Projects.OptionPanels/CustomCommandPanel.cs:
* MonoDevelop.Ide/MonoDevelop.Ide.Projects.OptionPanels/CustomCommandWidget.cs:
* MonoDevelop.Ide/gtk-gui/MonoDevelop.Ide.ExternalTools.ExternalToolPanelWidget.cs:
* MonoDevelop.Ide/MonoDevelop.Ide.Projects.OptionPanels/CustomCommandPanelWidget.cs:
* MonoDevelop.Ide/gtk-gui/MonoDevelop.Ide.Gui.Components.StringTagSelectorButton.cs:
* MonoDevelop.Ide/gtk-gui/MonoDevelop.Ide.Projects.OptionPanels.CustomCommandWidget.cs:
Use the new string tag model. Added a new StringTagSelectorButton
class.
* MonoDevelop.Ide/MonoDevelop.Ide.Projects.OptionPanels/CombineConfigurationPanel.cs:
Sort the configurations list.
* MonoDevelop.Core/Makefile.am:
* MonoDevelop.Core/MonoDevelop.Core.csproj:
* MonoDevelop.Core/MonoDevelop.Core.StringParsing:
* MonoDevelop.Core/MonoDevelop.Projects/Project.cs:
* MonoDevelop.Core/MonoDevelop.Projects/Solution.cs:
* MonoDevelop.Core/MonoDevelop.Projects/SolutionItem.cs:
* MonoDevelop.Core/MonoDevelop.Projects/WorkspaceItem.cs:
* MonoDevelop.Core/MonoDevelop.Projects/CustomCommand.cs:
* MonoDevelop.Core/MonoDevelop.Projects/ProjectService.cs:
* MonoDevelop.Core/MonoDevelop.Core/StringParserService.cs:
* MonoDevelop.Core/MonoDevelop.Projects/SolutionEntityItem.cs:
* MonoDevelop.Core/MonoDevelop.Projects/ProjectConfiguration.cs:
* MonoDevelop.Core/MonoDevelop.Core.StringParsing/StringTagModel.cs:
* MonoDevelop.Core/MonoDevelop.Core.StringParsing/IStringTagModel.cs:
* MonoDevelop.Core/MonoDevelop.Projects/DotNetProjectConfiguration.cs:
* MonoDevelop.Core/MonoDevelop.Core.StringParsing/StringTagProvider.cs:
* MonoDevelop.Core/MonoDevelop.Core.StringParsing/IStringTagProvider.cs:
* MonoDevelop.Core/MonoDevelop.Core.StringParsing/StringTagDescription.cs:
* MonoDevelop.Core/MonoDevelop.Core.StringParsing/StringTagModelDescription.cs:
Reworked the string parser service. Added an extension point for
registering tag providers. Added StringTagModel and
StringTagModelDescription classes.
svn path=/trunk/monodevelop/; revision=154152
Diffstat (limited to 'main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.ExternalTools')
-rw-r--r-- | main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.ExternalTools/ExternalTool.cs | 16 | ||||
-rw-r--r-- | main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.ExternalTools/ExternalToolPanel.cs | 48 |
2 files changed, 22 insertions, 42 deletions
diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.ExternalTools/ExternalTool.cs b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.ExternalTools/ExternalTool.cs index 39721e0f86..3481572852 100644 --- a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.ExternalTools/ExternalTool.cs +++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.ExternalTools/ExternalTool.cs @@ -41,7 +41,7 @@ namespace MonoDevelop.Ide.ExternalTools string arguments; string initialDirectory; bool promptForArguments; - bool useOutputPad; + bool useOutputPad = true; bool saveCurrentFile; public string MenuCommand { @@ -154,8 +154,22 @@ namespace MonoDevelop.Ide.ExternalTools if (!String.IsNullOrEmpty (reader.GetAttribute (saveCurrentFileAttribute))) result.saveCurrentFile = Boolean.Parse (reader.GetAttribute (saveCurrentFileAttribute)); + // Some tag names have changed. Update them now. + + result.arguments = UpgradeTags (result.arguments); + result.initialDirectory = UpgradeTags (result.initialDirectory); + return result; } + + static string UpgradeTags (string s) + { + s = s.Replace ("${ItemPath}","${FilePath}"); + s = s.Replace ("${ItemDir}","${FileDir}"); + s = s.Replace ("${ItemFileName}","${FileName}"); + s = s.Replace ("${ItemExt}","${FileExt}"); + return s; + } #endregion } diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.ExternalTools/ExternalToolPanel.cs b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.ExternalTools/ExternalToolPanel.cs index 7cba4e0869..abe5dbccf6 100644 --- a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.ExternalTools/ExternalToolPanel.cs +++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.ExternalTools/ExternalToolPanel.cs @@ -62,43 +62,6 @@ namespace MonoDevelop.Ide.ExternalTools public partial class ExternalToolPanelWidget : Gtk.Bin { - static string[,] argumentQuickInsertMenu = new string[,] { - {GettextCatalog.GetString ("Item Path"), "${ItemPath}"}, - {GettextCatalog.GetString ("_Item Directory"), "${ItemDir}"}, - {GettextCatalog.GetString ("Item file name"), "${ItemFileName}"}, - {GettextCatalog.GetString ("Item extension"), "${ItemExt}"}, - {"-", ""}, - {GettextCatalog.GetString ("Current line"), "${CurLine}"}, - {GettextCatalog.GetString ("Current column"), "${CurCol}"}, - {GettextCatalog.GetString ("Current text"), "${CurText}"}, - {"-", ""}, - {GettextCatalog.GetString ("Target Path"), "${TargetPath}"}, - {GettextCatalog.GetString ("_Target Directory"), "${TargetDir}"}, - {GettextCatalog.GetString ("Target Name"), "${TargetName}"}, - {GettextCatalog.GetString ("Target Extension"), "${TargetExt}"}, - {"-", ""}, - {GettextCatalog.GetString ("_Project Directory"), "${ProjectDir}"}, - {GettextCatalog.GetString ("Project file name"), "${ProjectFileName}"}, - {"-", ""}, - {GettextCatalog.GetString ("_Solution Directory"), "${SolutionDir}"}, - {GettextCatalog.GetString ("Solution File Name"), "${SolutionFile}"}, - {"-", ""}, - {GettextCatalog.GetString ("MonoDevelop Startup Directory"), "${StartupPath}"}, - }; - - static string[,] workingDirInsertMenu = new string[,] { - {GettextCatalog.GetString ("_Item Directory"), "${ItemDir}"}, - {"-", ""}, - {GettextCatalog.GetString ("_Target Directory"), "${TargetDir}"}, - {GettextCatalog.GetString ("Target Name"), "${TargetName}"}, - {"-", ""}, - {GettextCatalog.GetString ("_Project Directory"), "${ProjectDir}"}, - {"-", ""}, - {GettextCatalog.GetString ("_Solution Directory"), "${SolutionDir}"}, - {"-", ""}, - {GettextCatalog.GetString ("MonoDevelop Startup Directory"), "${StartupPath}"}, - }; - // gtk controls ListStore toolListBoxStore; @@ -119,8 +82,8 @@ namespace MonoDevelop.Ide.ExternalTools titleTextBox, argumentTextBox, workingDirTextBox, promptArgsCheckBox, useOutputPadCheckBox, titleLabel, argumentLabel, commandLabel, - workingDirLabel, browseButton, argumentQuickInsertButton, - workingDirQuickInsertButton, moveUpButton, moveDownButton, + workingDirLabel, browseButton, + moveUpButton, moveDownButton, saveCurrentFileCheckBox }; @@ -136,8 +99,11 @@ namespace MonoDevelop.Ide.ExternalTools toolListBox.AppendColumn (GettextCatalog.GetString ("Tools"), new CellRendererText (), "text", 0); - new MenuButtonEntry (argumentTextBox, argumentQuickInsertButton, argumentQuickInsertMenu); - new MenuButtonEntry (workingDirTextBox, workingDirQuickInsertButton, workingDirInsertMenu); + tagSelectorArgs.TagModel = IdeApp.Workbench.GetStringTagModelDescription (); + tagSelectorArgs.TargetEntry = argumentTextBox; + + tagSelectorPath.TagModel = IdeApp.Workbench.GetStringTagModelDescription (); + tagSelectorPath.TargetEntry = workingDirTextBox; toolListBox.Selection.Changed += SelectionChanged; removeButton.Clicked += RemoveButtonClicked; |