[mapguide-commits] r6704 - in trunk/Tools/Maestro/Thirdparty/SharpDevelop: . ICSharpCode.Core ICSharpCode.Core/Src ICSharpCode.Core/Src/AddInTree/AddIn ICSharpCode.Core/Src/AddInTree/AddIn/DefaultDoozers/MenuItem ICSharpCode.Core/Src/AddInTree/AddIn/DefaultDoozers/ToolBarItem ICSharpCode.Core/Src/Services/FileUtility ICSharpCode.Core.WinForms ICSharpCode.Core.WinForms/Menu ICSharpCode.Core.WinForms/ToolBar
svn_mapguide at osgeo.org
svn_mapguide at osgeo.org
Tue May 29 02:44:50 PDT 2012
Author: jng
Date: 2012-05-29 02:44:49 -0700 (Tue, 29 May 2012)
New Revision: 6704
Added:
trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core/Src/ExtensionMethods.cs
Modified:
trunk/Tools/Maestro/Thirdparty/SharpDevelop/GlobalAssemblyInfo.cs
trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/ICSharpCode.Core.WinForms.csproj
trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/Menu/Menu.cs
trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/Menu/MenuCheckBox.cs
trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/Menu/MenuCommand.cs
trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/Menu/MenuSeparator.cs
trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/Menu/MenuService.cs
trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/ToolBar/ToolBarCheckBox.cs
trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/ToolBar/ToolBarComboBox.cs
trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/ToolBar/ToolBarCommand.cs
trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/ToolBar/ToolBarDropDownButton.cs
trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/ToolBar/ToolBarLabel.cs
trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/ToolBar/ToolBarSeparator.cs
trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/ToolBar/ToolBarService.cs
trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/ToolBar/ToolBarSplitButton.cs
trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/ToolBar/ToolBarTextBox.cs
trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/WinFormsResourceService.cs
trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core/ICSharpCode.Core.csproj
trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core/Src/AddInTree/AddIn/AddInReference.cs
trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core/Src/AddInTree/AddIn/Codon.cs
trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core/Src/AddInTree/AddIn/DefaultDoozers/MenuItem/MenuItemDoozer.cs
trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core/Src/AddInTree/AddIn/DefaultDoozers/ToolBarItem/ToolBarItemDoozer.cs
trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core/Src/Services/FileUtility/FileName.cs
trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core/Src/Services/FileUtility/FileUtility.cs
Log:
Update SharpDevelop Core to 4.2 final
Modified: trunk/Tools/Maestro/Thirdparty/SharpDevelop/GlobalAssemblyInfo.cs
===================================================================
--- trunk/Tools/Maestro/Thirdparty/SharpDevelop/GlobalAssemblyInfo.cs 2012-05-29 07:15:30 UTC (rev 6703)
+++ trunk/Tools/Maestro/Thirdparty/SharpDevelop/GlobalAssemblyInfo.cs 2012-05-29 09:44:49 UTC (rev 6704)
@@ -30,9 +30,9 @@
internal static class RevisionClass
{
public const string Major = "4";
- public const string Minor = "1";
+ public const string Minor = "2";
public const string Build = "0";
- public const string Revision = "8000";
+ public const string Revision = "8783";
public const string MainVersion = Major + "." + Minor;
public const string FullVersion = Major + "." + Minor + "." + Build + "." + Revision;
Modified: trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core/ICSharpCode.Core.csproj
===================================================================
--- trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core/ICSharpCode.Core.csproj 2012-05-29 07:15:30 UTC (rev 6703)
+++ trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core/ICSharpCode.Core.csproj 2012-05-29 09:44:49 UTC (rev 6704)
@@ -27,21 +27,22 @@
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<Optimize>False</Optimize>
- <DebugType>Full</DebugType>
- <DocumentationFile>
- </DocumentationFile>
- <NoWarn>1591</NoWarn>
- <DefineConstants>DEBUG</DefineConstants>
<CheckForOverflowUnderflow>True</CheckForOverflowUnderflow>
<OutputPath>bin\Debug\</OutputPath>
<WarningLevel>4</WarningLevel>
+ <DebugType>Full</DebugType>
+ <DocumentationFile>bin\Debug\ICSharpCode.Core.xml</DocumentationFile>
+ <DefineConstants>DEBUG</DefineConstants>
+ <NoWarn>1591</NoWarn>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
- <DebugSymbols>False</DebugSymbols>
+ <DebugSymbols>false</DebugSymbols>
<Optimize>True</Optimize>
<CheckForOverflowUnderflow>False</CheckForOverflowUnderflow>
<OutputPath>bin\Release\</OutputPath>
<WarningLevel>4</WarningLevel>
+ <DebugType>None</DebugType>
+ <DocumentationFile>bin\Release\ICSharpCode.Core.xml</DocumentationFile>
</PropertyGroup>
<PropertyGroup Condition=" '$(Platform)' == 'AnyCPU' ">
<RegisterForComInterop>False</RegisterForComInterop>
@@ -49,6 +50,9 @@
<PlatformTarget>AnyCPU</PlatformTarget>
<FileAlignment>4096</FileAlignment>
</PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
+ <StartAction>Program</StartAction>
+ </PropertyGroup>
<ItemGroup>
<Reference Include="System" />
<Reference Include="System.Core">
@@ -57,9 +61,6 @@
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
- <Compile Include="..\GlobalAssemblyInfo.cs">
- <Link>Configuration\GlobalAssemblyInfo.cs</Link>
- </Compile>
<Compile Include="Configuration\AssemblyInfo.cs" />
<Compile Include="Src\AddInTree\AddIn\AddIn.cs" />
<Compile Include="Src\AddInTree\AddIn\AddInLoadException.cs" />
@@ -94,6 +95,7 @@
<Compile Include="Src\AddInTree\TopologicalSort.cs" />
<Compile Include="Src\AddInTree\TreePathNotFoundException.cs" />
<Compile Include="Src\CoreException.cs" />
+ <Compile Include="Src\ExtensionMethods.cs" />
<Compile Include="Src\Services\AnalyticsMonitor\AnalyticsMonitorService.cs" />
<Compile Include="Src\Services\AnalyticsMonitor\IAnalyticsMonitor.cs" />
<Compile Include="Src\Services\ApplicationStateInfoService.cs" />
@@ -129,10 +131,17 @@
<Compile Include="Src\AddInTree\CoreStartup.cs" />
<Compile Include="Src\AddInTree\AddInManager.cs" />
<Compile Include="Src\AddInTree\AddIn\DefaultDoozers\StringDoozer.cs" />
+ <Compile Include="..\GlobalAssemblyInfo.cs">
+ <Link>Configuration\GlobalAssemblyInfo.cs</Link>
+ </Compile>
<Compile Include="Src\AddInTree\AddIn\DefaultDoozers\ToolBarItem\AbstractTextBoxCommand.cs" />
<Compile Include="Src\AddInTree\AddIn\DefaultDoozers\ToolBarItem\ITextBoxCommand.cs" />
</ItemGroup>
<ItemGroup>
+ <Folder Include="Src\Services\LoggingService" />
+ <Folder Include="Src\Services\AnalyticsMonitor" />
+ <Folder Include="Src\Services\RegistryService" />
+ <Folder Include="Src\Services\ResourceService" />
<Content Include="..\..\..\..\data\schemas\AddIn.xsd">
<Link>Src\AddInTree\AddIn\AddIn.xsd</Link>
</Content>
Modified: trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core/Src/AddInTree/AddIn/AddInReference.cs
===================================================================
--- trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core/Src/AddInTree/AddIn/AddInReference.cs 2012-05-29 07:15:30 UTC (rev 6703)
+++ trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core/Src/AddInTree/AddIn/AddInReference.cs 2012-05-29 09:44:49 UTC (rev 6704)
@@ -94,6 +94,15 @@
} else {
reference.maximumVersion = reference.minimumVersion = ParseVersion(version, hintPath);
}
+
+ if (reference.Name == "SharpDevelop") {
+ // HACK: SD 4.1 AddIns work with SharpDevelop 4.2
+ // Because some 4.1 AddIns restrict themselves to SD 4.1, we extend the
+ // supported SD range.
+ if (reference.maximumVersion == new Version("4.1")) {
+ reference.maximumVersion = new Version("4.2");
+ }
+ }
}
reference.requirePreload = string.Equals(properties["requirePreload"], "true", StringComparison.OrdinalIgnoreCase);
return reference;
Modified: trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core/Src/AddInTree/AddIn/Codon.cs
===================================================================
--- trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core/Src/AddInTree/AddIn/Codon.cs 2012-05-29 07:15:30 UTC (rev 6703)
+++ trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core/Src/AddInTree/AddIn/Codon.cs 2012-05-29 09:44:49 UTC (rev 6704)
@@ -74,6 +74,7 @@
this.conditions = conditions;
}
+ [Obsolete("Use BuildItemArgs.Conditions instead")]
public ConditionFailedAction GetFailedAction(object caller)
{
return Condition.GetFailedAction(conditions, caller);
Modified: trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core/Src/AddInTree/AddIn/DefaultDoozers/MenuItem/MenuItemDoozer.cs
===================================================================
--- trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core/Src/AddInTree/AddIn/DefaultDoozers/MenuItem/MenuItemDoozer.cs 2012-05-29 07:15:30 UTC (rev 6703)
+++ trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core/Src/AddInTree/AddIn/DefaultDoozers/MenuItem/MenuItemDoozer.cs 2012-05-29 09:44:49 UTC (rev 6704)
@@ -3,6 +3,8 @@
using System;
using System.Collections;
+using System.Collections.Generic;
+using System.Linq;
namespace ICSharpCode.Core
{
@@ -63,7 +65,7 @@
public object BuildItem(BuildItemArgs args)
{
- return new MenuItemDescriptor(args.Caller, args.Codon, args.BuildSubItems<object>());
+ return new MenuItemDescriptor(args.Caller, args.Codon, args.BuildSubItems<object>(), args.Conditions);
}
}
@@ -76,14 +78,16 @@
public readonly object Caller;
public readonly Codon Codon;
public readonly IList SubItems;
+ public readonly IEnumerable<ICondition> Conditions;
- public MenuItemDescriptor(object caller, Codon codon, IList subItems)
+ public MenuItemDescriptor(object caller, Codon codon, IList subItems, IEnumerable<ICondition> conditions)
{
if (codon == null)
throw new ArgumentNullException("codon");
this.Caller = caller;
this.Codon = codon;
this.SubItems = subItems;
+ this.Conditions = conditions;
}
}
}
Modified: trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core/Src/AddInTree/AddIn/DefaultDoozers/ToolBarItem/ToolBarItemDoozer.cs
===================================================================
--- trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core/Src/AddInTree/AddIn/DefaultDoozers/ToolBarItem/ToolBarItemDoozer.cs 2012-05-29 07:15:30 UTC (rev 6703)
+++ trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core/Src/AddInTree/AddIn/DefaultDoozers/ToolBarItem/ToolBarItemDoozer.cs 2012-05-29 09:44:49 UTC (rev 6704)
@@ -3,6 +3,7 @@
using System;
using System.Collections;
+using System.Collections.Generic;
namespace ICSharpCode.Core
{
@@ -53,7 +54,7 @@
public object BuildItem(BuildItemArgs args)
{
- return new ToolbarItemDescriptor(args.Caller, args.Codon, args.BuildSubItems<object>());
+ return new ToolbarItemDescriptor(args.Caller, args.Codon, args.BuildSubItems<object>(), args.Conditions);
}
}
@@ -66,12 +67,14 @@
public readonly object Caller;
public readonly Codon Codon;
public readonly IList SubItems;
+ public readonly IEnumerable<ICondition> Conditions;
- public ToolbarItemDescriptor(object caller, Codon codon, IList subItems)
+ public ToolbarItemDescriptor(object caller, Codon codon, IList subItems, IEnumerable<ICondition> conditions)
{
this.Caller = caller;
this.Codon = codon;
this.SubItems = subItems;
+ this.Conditions = conditions;
}
}
}
Added: trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core/Src/ExtensionMethods.cs
===================================================================
--- trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core/Src/ExtensionMethods.cs (rev 0)
+++ trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core/Src/ExtensionMethods.cs 2012-05-29 09:44:49 UTC (rev 6704)
@@ -0,0 +1,40 @@
+// Copyright (c) AlphaSierraPapa for the SharpDevelop Team (for details please see \doc\copyright.txt)
+// This code is distributed under the GNU LGPL (for details please see \doc\license.txt)
+
+using System;
+using System.Collections.Generic;
+
+namespace ICSharpCode.Core
+{
+ internal static class ExtensionMethods
+ {
+ /// <summary>
+ /// Converts a recursive data structure into a flat list.
+ /// </summary>
+ /// <param name="input">The root elements of the recursive data structure.</param>
+ /// <param name="recursion">The function that gets the children of an element.</param>
+ /// <returns>Iterator that enumerates the tree structure in preorder.</returns>
+ public static IEnumerable<T> Flatten<T>(this IEnumerable<T> input, Func<T, IEnumerable<T>> recursion)
+ {
+ Stack<IEnumerator<T>> stack = new Stack<IEnumerator<T>>();
+ try {
+ stack.Push(input.GetEnumerator());
+ while (stack.Count > 0) {
+ while (stack.Peek().MoveNext()) {
+ T element = stack.Peek().Current;
+ yield return element;
+ IEnumerable<T> children = recursion(element);
+ if (children != null) {
+ stack.Push(children.GetEnumerator());
+ }
+ }
+ stack.Pop().Dispose();
+ }
+ } finally {
+ while (stack.Count > 0) {
+ stack.Pop().Dispose();
+ }
+ }
+ }
+ }
+}
Modified: trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core/Src/Services/FileUtility/FileName.cs
===================================================================
--- trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core/Src/Services/FileUtility/FileName.cs 2012-05-29 07:15:30 UTC (rev 6703)
+++ trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core/Src/Services/FileUtility/FileName.cs 2012-05-29 09:44:49 UTC (rev 6704)
@@ -2,6 +2,7 @@
// This code is distributed under the GNU LGPL (for details please see \doc\license.txt)
using System;
+using System.IO;
namespace ICSharpCode.Core
{
Modified: trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core/Src/Services/FileUtility/FileUtility.cs
===================================================================
--- trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core/Src/Services/FileUtility/FileUtility.cs 2012-05-29 07:15:30 UTC (rev 6703)
+++ trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core/Src/Services/FileUtility/FileUtility.cs 2012-05-29 09:44:49 UTC (rev 6704)
@@ -4,9 +4,10 @@
using System;
using System.Collections.Generic;
using System.IO;
+using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
-
+using System.Threading;
using ICSharpCode.Core.Services;
using Microsoft.Win32;
@@ -322,9 +323,7 @@
public static List<string> SearchDirectory(string directory, string filemask, bool searchSubdirectories, bool ignoreHidden)
{
- List<string> collection = new List<string>();
- SearchDirectory(directory, filemask, collection, searchSubdirectories, ignoreHidden);
- return collection;
+ return SearchDirectoryInternal(directory, filemask, searchSubdirectories, ignoreHidden).Select(file => file.ToString()).ToList();
}
public static List<string> SearchDirectory(string directory, string filemask, bool searchSubdirectories)
@@ -337,45 +336,59 @@
return SearchDirectory(directory, filemask, true, true);
}
+ public static IEnumerable<FileName> LazySearchDirectory(string directory, string filemask, bool searchSubdirectories = true, bool ignoreHidden = true)
+ {
+ return SearchDirectoryInternal(directory, filemask, searchSubdirectories, ignoreHidden);
+ }
+
/// <summary>
/// Finds all files which are valid to the mask <paramref name="filemask"/> in the path
/// <paramref name="directory"/> and all subdirectories
/// (if <paramref name="searchSubdirectories"/> is true).
- /// The found files are added to the List<string>
- /// <paramref name="collection"/>.
/// If <paramref name="ignoreHidden"/> is true, hidden files and folders are ignored.
/// </summary>
- static void SearchDirectory(string directory, string filemask, List<string> collection, bool searchSubdirectories, bool ignoreHidden)
+ static IEnumerable<FileName> SearchDirectoryInternal(string directory, string filemask, bool searchSubdirectories, bool ignoreHidden)
{
// If Directory.GetFiles() searches the 8.3 name as well as the full name so if the filemask is
// "*.xpt" it will return "Template.xpt~"
- try {
- bool isExtMatch = Regex.IsMatch(filemask, @"^\*\..{3}$");
- string ext = null;
- string[] file = Directory.GetFiles(directory, filemask);
- if (isExtMatch) ext = filemask.Remove(0,1);
-
- foreach (string f in file) {
- if (ignoreHidden && (File.GetAttributes(f) & FileAttributes.Hidden) == FileAttributes.Hidden) {
- continue;
- }
- if (isExtMatch && Path.GetExtension(f) != ext) continue;
-
- collection.Add(f);
- }
-
- if (searchSubdirectories) {
- string[] dir = Directory.GetDirectories(directory);
- foreach (string d in dir) {
- if (ignoreHidden && (File.GetAttributes(d) & FileAttributes.Hidden) == FileAttributes.Hidden) {
- continue;
+ bool isExtMatch = Regex.IsMatch(filemask, @"^\*\..{3}$");
+ string ext = null;
+ if (isExtMatch) ext = filemask.Remove(0,1);
+ string[] empty = new string[0];
+ IEnumerable<string> dir = new[] { directory };
+
+ if (searchSubdirectories)
+ dir = dir.Flatten(
+ d => {
+ try {
+ if (ignoreHidden)
+ return Directory.EnumerateDirectories(d).Where(child => IsNotHidden(child));
+ else
+ return Directory.EnumerateDirectories(d);
+ } catch (UnauthorizedAccessException) {
+ return empty;
}
- SearchDirectory(d, filemask, collection, searchSubdirectories, ignoreHidden);
- }
+ });
+ foreach (string d in dir) {
+ IEnumerable<string> files;
+ try {
+ files = Directory.EnumerateFiles(d, filemask);
+ } catch (UnauthorizedAccessException) {
+ continue;
}
+ foreach (string f in files) {
+ if (!ignoreHidden || IsNotHidden(f))
+ yield return new FileName(f);
+ }
+ }
+ }
+
+ static bool IsNotHidden(string dir)
+ {
+ try {
+ return (File.GetAttributes(dir) & FileAttributes.Hidden) != FileAttributes.Hidden;
} catch (UnauthorizedAccessException) {
- // Ignore exception when access to a directory is denied.
- // Fixes SD2-893.
+ return false;
}
}
Modified: trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/ICSharpCode.Core.WinForms.csproj
===================================================================
--- trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/ICSharpCode.Core.WinForms.csproj 2012-05-29 07:15:30 UTC (rev 6703)
+++ trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/ICSharpCode.Core.WinForms.csproj 2012-05-29 09:44:49 UTC (rev 6704)
@@ -9,7 +9,7 @@
<AssemblyName>ICSharpCode.Core.WinForms</AssemblyName>
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
<AppDesignerFolder>Properties</AppDesignerFolder>
- <OutputPath>..\..\..\bin\</OutputPath>
+ <OutputPath>bin\Release\</OutputPath>
<AllowUnsafeBlocks>False</AllowUnsafeBlocks>
<NoStdLib>False</NoStdLib>
<WarningLevel>4</WarningLevel>
@@ -19,6 +19,7 @@
<DelaySign>False</DelaySign>
<AssemblyOriginatorKeyMode>File</AssemblyOriginatorKeyMode>
<TargetFrameworkProfile>Client</TargetFrameworkProfile>
+ <RunPostBuildEvent>OnBuildSuccess</RunPostBuildEvent>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
<DebugSymbols>true</DebugSymbols>
@@ -28,7 +29,7 @@
<DefineConstants>DEBUG;TRACE</DefineConstants>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)' == 'Release' ">
- <DebugSymbols>False</DebugSymbols>
+ <DebugSymbols>false</DebugSymbols>
<DebugType>None</DebugType>
<Optimize>True</Optimize>
<CheckForOverflowUnderflow>False</CheckForOverflowUnderflow>
@@ -41,12 +42,6 @@
<PlatformTarget>AnyCPU</PlatformTarget>
<FileAlignment>4096</FileAlignment>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|AnyCPU'">
- <OutputPath>bin\Debug\</OutputPath>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|AnyCPU'">
- <OutputPath>bin\Release\</OutputPath>
- </PropertyGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.Targets" />
<ItemGroup>
<Reference Include="System" />
@@ -60,69 +55,42 @@
</Compile>
<Compile Include="Menu\IStatusUpdate.cs" />
<Compile Include="Menu\ISubmenuBuilder.cs" />
- <Compile Include="Menu\Menu.cs">
- <SubType>Component</SubType>
- </Compile>
- <Compile Include="Menu\MenuCheckBox.cs">
- <SubType>Component</SubType>
- </Compile>
- <Compile Include="Menu\MenuCommand.cs">
- <SubType>Component</SubType>
- </Compile>
- <Compile Include="Menu\MenuSeparator.cs">
- <SubType>Component</SubType>
- </Compile>
+ <Compile Include="Menu\Menu.cs" />
+ <Compile Include="Menu\MenuCheckBox.cs" />
+ <Compile Include="Menu\MenuCommand.cs" />
+ <Compile Include="Menu\MenuSeparator.cs" />
<Compile Include="Menu\MenuService.cs" />
- <Compile Include="MessageService\CustomDialog.cs">
- <SubType>Form</SubType>
- </Compile>
+ <Compile Include="MessageService\CustomDialog.cs" />
<Compile Include="MessageService\IDialogMessageService.cs" />
- <Compile Include="MessageService\InputBox.cs">
- <SubType>Form</SubType>
- </Compile>
- <Compile Include="MessageService\SaveErrorChooseDialog.cs">
- <SubType>Form</SubType>
- </Compile>
- <Compile Include="MessageService\SaveErrorInformDialog.cs">
- <SubType>Form</SubType>
- </Compile>
+ <Compile Include="MessageService\InputBox.cs" />
+ <Compile Include="MessageService\SaveErrorChooseDialog.cs" />
+ <Compile Include="MessageService\SaveErrorInformDialog.cs" />
<Compile Include="MessageService\WinFormsMessageService.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
- <Compile Include="ToolBar\ToolBarCheckBox.cs">
- <SubType>Component</SubType>
- </Compile>
- <Compile Include="ToolBar\ToolBarComboBox.cs">
- <SubType>Component</SubType>
- </Compile>
- <Compile Include="ToolBar\ToolBarCommand.cs">
- <SubType>Component</SubType>
- </Compile>
- <Compile Include="ToolBar\ToolBarDropDownButton.cs">
- <SubType>Component</SubType>
- </Compile>
- <Compile Include="ToolBar\ToolBarLabel.cs">
- <SubType>Component</SubType>
- </Compile>
- <Compile Include="ToolBar\ToolBarSeparator.cs">
- <SubType>Component</SubType>
- </Compile>
+ <Compile Include="ToolBar\ToolBarCheckBox.cs" />
+ <Compile Include="ToolBar\ToolBarComboBox.cs" />
+ <Compile Include="ToolBar\ToolBarCommand.cs" />
+ <Compile Include="ToolBar\ToolBarDropDownButton.cs" />
+ <Compile Include="ToolBar\ToolBarLabel.cs" />
+ <Compile Include="ToolBar\ToolBarSeparator.cs" />
<Compile Include="ToolBar\ToolBarService.cs" />
- <Compile Include="ToolBar\ToolBarSplitButton.cs">
- <SubType>Component</SubType>
- </Compile>
- <Compile Include="ToolBar\ToolBarTextBox.cs">
- <SubType>Component</SubType>
- </Compile>
+ <Compile Include="ToolBar\ToolBarSplitButton.cs" />
+ <Compile Include="ToolBar\ToolBarTextBox.cs" />
<Compile Include="Util\ClipboardWrapper.cs" />
<Compile Include="Util\NativeMethods.cs" />
<Compile Include="Util\RightToLeftConverter.cs" />
<Compile Include="WinFormsResourceService.cs" />
</ItemGroup>
<ItemGroup>
+ <Folder Include="Menu" />
+ <Folder Include="MessageService" />
+ <Folder Include="ToolBar" />
+ <Folder Include="Util" />
+ </ItemGroup>
+ <ItemGroup>
<ProjectReference Include="..\ICSharpCode.Core\ICSharpCode.Core.csproj">
<Project>{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}</Project>
<Name>ICSharpCode.Core</Name>
- <Private>False</Private>
</ProjectReference>
</ItemGroup>
</Project>
\ No newline at end of file
Modified: trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/Menu/Menu.cs
===================================================================
--- trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/Menu/Menu.cs 2012-05-29 07:15:30 UTC (rev 6703)
+++ trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/Menu/Menu.cs 2012-05-29 09:44:49 UTC (rev 6704)
@@ -3,6 +3,7 @@
using System;
using System.Collections;
+using System.Collections.Generic;
using System.Windows.Forms;
namespace ICSharpCode.Core.WinForms
@@ -13,22 +14,25 @@
object caller;
IList subItems;
bool isInitialized;
+ IEnumerable<ICondition> conditions;
- public Menu(Codon codon, object caller, IList subItems)
+ public Menu(Codon codon, object caller, IList subItems, IEnumerable<ICondition> conditions)
{
if (subItems == null) subItems = new ArrayList(); // don't crash when item has no children
this.codon = codon;
this.caller = caller;
this.subItems = subItems;
this.RightToLeft = RightToLeft.Inherit;
+ this.conditions = conditions;
UpdateText();
}
- public Menu(string text, params ToolStripItem[] subItems)
+ public Menu(string text, IEnumerable<ICondition> conditions, params ToolStripItem[] subItems)
{
this.Text = StringParser.Parse(text);
this.DropDownItems.AddRange(subItems);
+ this.conditions = conditions;
}
void CreateDropDownItems()
@@ -60,15 +64,14 @@
if (codon == null) {
return base.Enabled;
}
- ConditionFailedAction failedAction = codon.GetFailedAction(caller);
- return failedAction != ConditionFailedAction.Disable;
+ return Condition.GetFailedAction(conditions, caller) != ConditionFailedAction.Disable;
}
}
public virtual void UpdateStatus()
{
if (codon != null) {
- ConditionFailedAction failedAction = codon.GetFailedAction(caller);
+ ConditionFailedAction failedAction = Condition.GetFailedAction(conditions, caller);
this.Visible = failedAction != ConditionFailedAction.Exclude;
if (!isInitialized && failedAction != ConditionFailedAction.Exclude) {
isInitialized = true;
Modified: trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/Menu/MenuCheckBox.cs
===================================================================
--- trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/Menu/MenuCheckBox.cs 2012-05-29 07:15:30 UTC (rev 6703)
+++ trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/Menu/MenuCheckBox.cs 2012-05-29 09:44:49 UTC (rev 6704)
@@ -2,6 +2,8 @@
// This code is distributed under the GNU LGPL (for details please see \doc\license.txt)
using System;
+using System.Collections.Generic;
+using System.Linq;
using System.Windows.Forms;
namespace ICSharpCode.Core.WinForms
@@ -12,6 +14,7 @@
Codon codon;
string description = String.Empty;
ICheckableMenuCommand menuCommand = null;
+ IEnumerable<ICondition> conditions;
void CreateMenuCommand()
{
@@ -43,12 +46,14 @@
{
this.RightToLeft = RightToLeft.Inherit;
Text = text;
+ this.conditions = Enumerable.Empty<ICondition>();
}
- public MenuCheckBox(Codon codon, object caller)
+ public MenuCheckBox(Codon codon, object caller, IEnumerable<ICondition> conditions)
{
this.RightToLeft = RightToLeft.Inherit;
this.caller = caller;
this.codon = codon;
+ this.conditions = conditions;
UpdateText();
}
@@ -67,7 +72,7 @@
if (codon == null) {
return base.Enabled;
}
- ConditionFailedAction failedAction = codon.GetFailedAction(caller);
+ ConditionFailedAction failedAction = Condition.GetFailedAction(conditions, caller);
return failedAction != ConditionFailedAction.Disable;
}
}
@@ -75,7 +80,7 @@
public virtual void UpdateStatus()
{
if (codon != null) {
- ConditionFailedAction failedAction = codon.GetFailedAction(caller);
+ ConditionFailedAction failedAction = Condition.GetFailedAction(conditions, caller);
this.Visible = failedAction != ConditionFailedAction.Exclude;
if (menuCommand == null && !string.IsNullOrEmpty(codon.Properties["checked"])) {
Checked = string.Equals(StringParser.Parse(codon.Properties["checked"]),
Modified: trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/Menu/MenuCommand.cs
===================================================================
--- trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/Menu/MenuCommand.cs 2012-05-29 07:15:30 UTC (rev 6703)
+++ trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/Menu/MenuCommand.cs 2012-05-29 09:44:49 UTC (rev 6704)
@@ -2,7 +2,9 @@
// This code is distributed under the GNU LGPL (for details please see \doc\license.txt)
using System;
+using System.Collections.Generic;
using System.Drawing;
+using System.Linq;
using System.Windows.Forms;
namespace ICSharpCode.Core.WinForms
@@ -13,6 +15,7 @@
Codon codon;
ICommand menuCommand = null;
string description = "";
+ IEnumerable<ICondition> conditions;
public string Description {
get {
@@ -66,7 +69,8 @@
}
}
- public MenuCommand(Codon codon, object caller) : this(codon, caller, false)
+ public MenuCommand(Codon codon, object caller, IEnumerable<ICondition> conditions)
+ : this(codon, caller, false, conditions)
{
}
@@ -87,11 +91,12 @@
return shortCut;
}
- public MenuCommand(Codon codon, object caller, bool createCommand)
+ public MenuCommand(Codon codon, object caller, bool createCommand, IEnumerable<ICondition> conditions)
{
this.RightToLeft = RightToLeft.Inherit;
- this.caller = caller;
- this.codon = codon;
+ this.caller = caller;
+ this.codon = codon;
+ this.conditions = conditions;
if (createCommand) {
CreateCommand();
@@ -114,6 +119,7 @@
this.codon = null;
this.caller = null;
Text = StringParser.Parse(label);
+ this.conditions = Enumerable.Empty<ICondition>();
}
protected override void OnClick(System.EventArgs e)
@@ -142,7 +148,7 @@
if (codon == null) {
return base.Enabled;
}
- ConditionFailedAction failedAction = codon.GetFailedAction(caller);
+ ConditionFailedAction failedAction = Condition.GetFailedAction(conditions, caller);
bool isEnabled = failedAction != ConditionFailedAction.Disable;
if (menuCommand != null && menuCommand is IMenuCommand) {
@@ -157,7 +163,7 @@
if (codon == null)
return true;
else
- return codon.GetFailedAction(caller) != ConditionFailedAction.Exclude;
+ return Condition.GetFailedAction(conditions, caller) != ConditionFailedAction.Exclude;
}
public virtual void UpdateStatus()
Modified: trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/Menu/MenuSeparator.cs
===================================================================
--- trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/Menu/MenuSeparator.cs 2012-05-29 07:15:30 UTC (rev 6703)
+++ trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/Menu/MenuSeparator.cs 2012-05-29 09:44:49 UTC (rev 6704)
@@ -2,6 +2,8 @@
// This code is distributed under the GNU LGPL (for details please see \doc\license.txt)
using System;
+using System.Collections.Generic;
+using System.Linq;
using System.Windows.Forms;
namespace ICSharpCode.Core.WinForms
@@ -10,23 +12,26 @@
{
object caller;
Codon codon;
+ IEnumerable<ICondition> conditions;
public MenuSeparator()
{
this.RightToLeft = RightToLeft.Inherit;
+ this.conditions = Enumerable.Empty<ICondition>();
}
- public MenuSeparator(Codon codon, object caller)
+ public MenuSeparator(Codon codon, object caller, IEnumerable<ICondition> conditions)
{
this.RightToLeft = RightToLeft.Inherit;
- this.caller = caller;
- this.codon = codon;
+ this.caller = caller;
+ this.codon = codon;
+ this.conditions = conditions;
}
public virtual void UpdateStatus()
{
if (codon != null) {
- ConditionFailedAction failedAction = codon.GetFailedAction(caller);
+ ConditionFailedAction failedAction = Condition.GetFailedAction(conditions, caller);
this.Enabled = failedAction != ConditionFailedAction.Disable;
this.Visible = failedAction != ConditionFailedAction.Exclude;
}
Modified: trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/Menu/MenuService.cs
===================================================================
--- trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/Menu/MenuService.cs 2012-05-29 07:15:30 UTC (rev 6703)
+++ trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/Menu/MenuService.cs 2012-05-29 09:44:49 UTC (rev 6704)
@@ -39,14 +39,14 @@
switch (type) {
case "Separator":
- return new MenuSeparator(codon, descriptor.Caller);
+ return new MenuSeparator(codon, descriptor.Caller, descriptor.Conditions);
case "CheckBox":
- return new MenuCheckBox(codon, descriptor.Caller);
+ return new MenuCheckBox(codon, descriptor.Caller, descriptor.Conditions);
case "Item":
case "Command":
- return new MenuCommand(codon, descriptor.Caller, createCommand);
+ return new MenuCommand(codon, descriptor.Caller, createCommand, descriptor.Conditions);
case "Menu":
- return new Menu(codon, descriptor.Caller, ConvertSubItems(descriptor.SubItems));
+ return new Menu(codon, descriptor.Caller, ConvertSubItems(descriptor.SubItems), descriptor.Conditions);
case "Builder":
return codon.AddIn.CreateObject(codon.Properties["class"]);
default:
Modified: trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/ToolBar/ToolBarCheckBox.cs
===================================================================
--- trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/ToolBar/ToolBarCheckBox.cs 2012-05-29 07:15:30 UTC (rev 6703)
+++ trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/ToolBar/ToolBarCheckBox.cs 2012-05-29 09:44:49 UTC (rev 6704)
@@ -2,6 +2,7 @@
// This code is distributed under the GNU LGPL (for details please see \doc\license.txt)
using System;
+using System.Collections.Generic;
using System.Windows.Forms;
namespace ICSharpCode.Core.WinForms
@@ -12,6 +13,7 @@
Codon codon;
string description = String.Empty;
ICheckableMenuCommand menuCommand = null;
+ IEnumerable<ICondition> conditions;
public ICheckableMenuCommand MenuCommand {
get {
@@ -40,11 +42,12 @@
Text = text;
}
- public ToolBarCheckBox(Codon codon, object caller)
+ public ToolBarCheckBox(Codon codon, object caller, IEnumerable<ICondition> conditions)
{
this.RightToLeft = RightToLeft.Inherit;
this.caller = caller;
this.codon = codon;
+ this.conditions = conditions;
try {
menuCommand = (ICheckableMenuCommand)codon.AddIn.CreateObject(codon.Properties["class"]);
} catch (Exception) {
@@ -78,7 +81,7 @@
if (codon == null) {
return base.Enabled;
}
- ConditionFailedAction failedAction = codon.GetFailedAction(caller);
+ ConditionFailedAction failedAction = Condition.GetFailedAction(conditions, caller);
return failedAction != ConditionFailedAction.Disable;
}
}
@@ -86,7 +89,7 @@
public virtual void UpdateStatus()
{
if (codon != null) {
- ConditionFailedAction failedAction = codon.GetFailedAction(caller);
+ ConditionFailedAction failedAction = Condition.GetFailedAction(conditions, caller);
bool isVisible = failedAction != ConditionFailedAction.Exclude;
if (isVisible != Visible)
Visible = isVisible;
Modified: trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/ToolBar/ToolBarComboBox.cs
===================================================================
--- trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/ToolBar/ToolBarComboBox.cs 2012-05-29 07:15:30 UTC (rev 6703)
+++ trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/ToolBar/ToolBarComboBox.cs 2012-05-29 09:44:49 UTC (rev 6704)
@@ -2,6 +2,7 @@
// This code is distributed under the GNU LGPL (for details please see \doc\license.txt)
using System;
+using System.Collections.Generic;
using System.Windows.Forms;
namespace ICSharpCode.Core.WinForms
@@ -12,6 +13,7 @@
Codon codon;
string description = String.Empty;
IComboBoxCommand menuCommand = null;
+ IEnumerable<ICondition> conditions;
public object Caller {
get {
@@ -34,7 +36,7 @@
}
}
- public ToolBarComboBox(Codon codon, object caller)
+ public ToolBarComboBox(Codon codon, object caller, IEnumerable<ICondition> conditions)
{
this.RightToLeft = RightToLeft.Inherit;
ComboBox.DropDownStyle = ComboBoxStyle.DropDownList;
@@ -43,6 +45,7 @@
this.caller = caller;
this.codon = codon;
+ this.conditions = conditions;
menuCommand = (IComboBoxCommand)codon.AddIn.CreateObject(codon.Properties["class"]);
menuCommand.ComboBox = this;
@@ -76,7 +79,7 @@
if (codon == null) {
return base.Enabled;
}
- ConditionFailedAction failedAction = codon.GetFailedAction(caller);
+ ConditionFailedAction failedAction = Condition.GetFailedAction(conditions, caller);
bool isEnabled = failedAction != ConditionFailedAction.Disable;
@@ -92,7 +95,7 @@
{
bool isVisible = base.Visible;
if (codon != null) {
- ConditionFailedAction failedAction = codon.GetFailedAction(caller);
+ ConditionFailedAction failedAction = Condition.GetFailedAction(conditions, caller);
isVisible &= failedAction != ConditionFailedAction.Exclude;
}
if (base.Visible != isVisible) {
Modified: trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/ToolBar/ToolBarCommand.cs
===================================================================
--- trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/ToolBar/ToolBarCommand.cs 2012-05-29 07:15:30 UTC (rev 6703)
+++ trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/ToolBar/ToolBarCommand.cs 2012-05-29 09:44:49 UTC (rev 6704)
@@ -2,6 +2,7 @@
// This code is distributed under the GNU LGPL (for details please see \doc\license.txt)
using System;
+using System.Collections.Generic;
using System.Windows.Forms;
namespace ICSharpCode.Core.WinForms
@@ -11,12 +12,14 @@
object caller;
Codon codon;
ICommand menuCommand = null;
+ IEnumerable<ICondition> conditions;
- public ToolBarCommand(Codon codon, object caller, bool createCommand)
+ public ToolBarCommand(Codon codon, object caller, bool createCommand, IEnumerable<ICondition> conditions)
{
this.RightToLeft = RightToLeft.Inherit;
this.caller = caller;
this.codon = codon;
+ this.conditions = conditions;
if (createCommand) {
menuCommand = (ICommand)codon.AddIn.CreateObject(codon.Properties["class"]);
@@ -49,7 +52,7 @@
public virtual void UpdateStatus()
{
if (codon != null) {
- ConditionFailedAction failedAction = codon.GetFailedAction(caller);
+ ConditionFailedAction failedAction = Condition.GetFailedAction(conditions, caller);
this.Visible = failedAction != ConditionFailedAction.Exclude;
bool isEnabled = failedAction != ConditionFailedAction.Disable;
if (isEnabled && menuCommand != null && menuCommand is IMenuCommand) {
Modified: trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/ToolBar/ToolBarDropDownButton.cs
===================================================================
--- trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/ToolBar/ToolBarDropDownButton.cs 2012-05-29 07:15:30 UTC (rev 6703)
+++ trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/ToolBar/ToolBarDropDownButton.cs 2012-05-29 09:44:49 UTC (rev 6704)
@@ -3,6 +3,7 @@
using System;
using System.Collections;
+using System.Collections.Generic;
using System.Windows.Forms;
namespace ICSharpCode.Core.WinForms
@@ -13,13 +14,15 @@
Codon codon;
ICommand menuBuilder = null;
ArrayList subItems;
+ IEnumerable<ICondition> conditions;
- public ToolBarDropDownButton(Codon codon, object caller, ArrayList subItems)
+ public ToolBarDropDownButton(Codon codon, object caller, ArrayList subItems, IEnumerable<ICondition> conditions)
{
this.RightToLeft = RightToLeft.Inherit;
- this.caller = caller;
- this.codon = codon;
- this.subItems = subItems;
+ this.caller = caller;
+ this.codon = codon;
+ this.subItems = subItems;
+ this.conditions = conditions;
if (codon.Properties.Contains("label")){
Text = StringParser.Parse(codon.Properties["label"]);
@@ -84,7 +87,7 @@
if (codon == null) {
return base.Enabled;
}
- ConditionFailedAction failedAction = codon.GetFailedAction(caller);
+ ConditionFailedAction failedAction = Condition.GetFailedAction(conditions, caller);
bool isEnabled = failedAction != ConditionFailedAction.Disable;
@@ -95,7 +98,7 @@
public virtual void UpdateStatus()
{
if (codon != null) {
- ConditionFailedAction failedAction = codon.GetFailedAction(caller);
+ ConditionFailedAction failedAction = Condition.GetFailedAction(conditions, caller);
bool isVisible = failedAction != ConditionFailedAction.Exclude;
if (base.Visible != isVisible) {
base.Visible = isVisible;
Modified: trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/ToolBar/ToolBarLabel.cs
===================================================================
--- trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/ToolBar/ToolBarLabel.cs 2012-05-29 07:15:30 UTC (rev 6703)
+++ trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/ToolBar/ToolBarLabel.cs 2012-05-29 09:44:49 UTC (rev 6704)
@@ -2,6 +2,8 @@
// This code is distributed under the GNU LGPL (for details please see \doc\license.txt)
using System;
+using System.Collections;
+using System.Collections.Generic;
using System.Windows.Forms;
namespace ICSharpCode.Core.WinForms
@@ -11,6 +13,7 @@
object caller;
Codon codon;
ICommand menuCommand = null;
+ IEnumerable<ICondition> conditions;
public object Caller {
get {
@@ -18,11 +21,12 @@
}
}
- public ToolBarLabel(Codon codon, object caller)
+ public ToolBarLabel(Codon codon, object caller, IEnumerable<ICondition> conditions)
{
- this.RightToLeft = RightToLeft.Inherit;
+ this.RightToLeft = RightToLeft.Inherit;
this.caller = caller;
this.codon = codon;
+ this.conditions = conditions;
if (codon.Properties.Contains("class"))
{
@@ -33,16 +37,16 @@
UpdateText();
UpdateStatus();
}
-
+
public override bool Enabled {
get {
if (codon == null) {
return base.Enabled;
}
- ConditionFailedAction failedAction = codon.GetFailedAction(caller);
+ ConditionFailedAction failedAction = Condition.GetFailedAction(conditions, caller);
bool isEnabled = failedAction != ConditionFailedAction.Disable;
-
+
return isEnabled;
}
}
@@ -51,7 +55,7 @@
{
if (codon != null)
{
- ConditionFailedAction failedAction = codon.GetFailedAction(caller);
+ ConditionFailedAction failedAction = Condition.GetFailedAction(conditions, caller);
this.Enabled = failedAction != ConditionFailedAction.Disable;
this.Visible = failedAction != ConditionFailedAction.Exclude;
}
Modified: trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/ToolBar/ToolBarSeparator.cs
===================================================================
--- trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/ToolBar/ToolBarSeparator.cs 2012-05-29 07:15:30 UTC (rev 6703)
+++ trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/ToolBar/ToolBarSeparator.cs 2012-05-29 09:44:49 UTC (rev 6704)
@@ -2,6 +2,8 @@
// This code is distributed under the GNU LGPL (for details please see \doc\license.txt)
using System;
+using System.Collections.Generic;
+using System.Linq;
using System.Windows.Forms;
namespace ICSharpCode.Core.WinForms
@@ -10,23 +12,26 @@
{
object caller;
Codon codon;
+ IEnumerable<ICondition> conditions;
public ToolBarSeparator()
{
this.RightToLeft = RightToLeft.Inherit;
+ this.conditions = Enumerable.Empty<ICondition>();
}
- public ToolBarSeparator(Codon codon, object caller)
+ public ToolBarSeparator(Codon codon, object caller, IEnumerable<ICondition> conditions)
{
this.RightToLeft = RightToLeft.Inherit;
this.caller = caller;
this.codon = codon;
+ this.conditions = conditions;
}
public virtual void UpdateStatus()
{
if (codon != null) {
- ConditionFailedAction failedAction = codon.GetFailedAction(caller);
+ ConditionFailedAction failedAction = Condition.GetFailedAction(conditions, caller);
this.Enabled = failedAction != ConditionFailedAction.Disable;
this.Visible = failedAction != ConditionFailedAction.Exclude;
}
Modified: trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/ToolBar/ToolBarService.cs
===================================================================
--- trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/ToolBar/ToolBarService.cs 2012-05-29 07:15:30 UTC (rev 6703)
+++ trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/ToolBar/ToolBarService.cs 2012-05-29 09:44:49 UTC (rev 6704)
@@ -42,21 +42,21 @@
switch (type) {
case "Separator":
- return new ToolBarSeparator(codon, caller);
+ return new ToolBarSeparator(codon, caller, descriptor.Conditions);
case "CheckBox":
- return new ToolBarCheckBox(codon, caller);
+ return new ToolBarCheckBox(codon, caller, descriptor.Conditions);
case "Item":
- return new ToolBarCommand(codon, caller, createCommand);
+ return new ToolBarCommand(codon, caller, createCommand, descriptor.Conditions);
case "ComboBox":
- return new ToolBarComboBox(codon, caller);
+ return new ToolBarComboBox(codon, caller, descriptor.Conditions);
case "TextBox":
- return new ToolBarTextBox(codon, caller);
+ return new ToolBarTextBox(codon, caller, descriptor.Conditions);
case "Label":
- return new ToolBarLabel(codon, caller);
+ return new ToolBarLabel(codon, caller, descriptor.Conditions);
case "DropDownButton":
- return new ToolBarDropDownButton(codon, caller, MenuService.ConvertSubItems(descriptor.SubItems));
+ return new ToolBarDropDownButton(codon, caller, MenuService.ConvertSubItems(descriptor.SubItems), descriptor.Conditions);
case "SplitButton":
- return new ToolBarSplitButton(codon, caller, MenuService.ConvertSubItems(descriptor.SubItems));
+ return new ToolBarSplitButton(codon, caller, MenuService.ConvertSubItems(descriptor.SubItems), descriptor.Conditions);
case "Builder":
return codon.AddIn.CreateObject(codon.Properties["class"]);
default:
Modified: trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/ToolBar/ToolBarSplitButton.cs
===================================================================
--- trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/ToolBar/ToolBarSplitButton.cs 2012-05-29 07:15:30 UTC (rev 6703)
+++ trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/ToolBar/ToolBarSplitButton.cs 2012-05-29 09:44:49 UTC (rev 6704)
@@ -3,6 +3,7 @@
using System;
using System.Collections;
+using System.Collections.Generic;
using System.Drawing;
using System.Windows.Forms;
@@ -18,13 +19,15 @@
Image imgButtonDisabled = null;
bool buttonEnabled = true;
bool dropDownEnabled = true;
+ IEnumerable<ICondition> conditions;
- public ToolBarSplitButton(Codon codon, object caller, ArrayList subItems)
+ public ToolBarSplitButton(Codon codon, object caller, ArrayList subItems, IEnumerable<ICondition> conditions)
{
this.RightToLeft = RightToLeft.Inherit;
- this.caller = caller;
- this.codon = codon;
- this.subItems = subItems;
+ this.caller = caller;
+ this.codon = codon;
+ this.subItems = subItems;
+ this.conditions = conditions;
if (codon.Properties.Contains("label")){
Text = StringParser.Parse(codon.Properties["label"]);
@@ -96,7 +99,7 @@
if (codon == null) {
return base.Enabled;
}
- ConditionFailedAction failedAction = codon.GetFailedAction(caller);
+ ConditionFailedAction failedAction = Condition.GetFailedAction(conditions, caller);
bool isEnabled = failedAction != ConditionFailedAction.Disable;
@@ -138,7 +141,7 @@
public virtual void UpdateStatus()
{
if (codon != null) {
- ConditionFailedAction failedAction = codon.GetFailedAction(caller);
+ ConditionFailedAction failedAction = Condition.GetFailedAction(conditions, caller);
bool isVisible = failedAction != ConditionFailedAction.Exclude;
if (base.Visible != isVisible) {
base.Visible = isVisible;
Modified: trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/ToolBar/ToolBarTextBox.cs
===================================================================
--- trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/ToolBar/ToolBarTextBox.cs 2012-05-29 07:15:30 UTC (rev 6703)
+++ trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/ToolBar/ToolBarTextBox.cs 2012-05-29 09:44:49 UTC (rev 6704)
@@ -2,6 +2,7 @@
// This code is distributed under the GNU LGPL (for details please see \doc\license.txt)
using System;
+using System.Collections.Generic;
using System.Windows.Forms;
namespace ICSharpCode.Core.WinForms
@@ -12,6 +13,7 @@
Codon codon;
string description = String.Empty;
ITextBoxCommand menuCommand = null;
+ IEnumerable<ICondition> conditions;
public object Caller {
get {
@@ -34,11 +36,12 @@
}
}
- public ToolBarTextBox(Codon codon, object caller)
+ public ToolBarTextBox(Codon codon, object caller, IEnumerable<ICondition> conditions)
{
this.RightToLeft = RightToLeft.Inherit;
this.caller = caller;
this.codon = codon;
+ this.conditions = conditions;
TextBox.KeyDown += new KeyEventHandler(TextBox_KeyDown);
@@ -64,7 +67,7 @@
if (codon == null) {
return base.Enabled;
}
- ConditionFailedAction failedAction = codon.GetFailedAction(caller);
+ ConditionFailedAction failedAction = Condition.GetFailedAction(conditions, caller);
bool isEnabled = failedAction != ConditionFailedAction.Disable;
@@ -80,7 +83,7 @@
{
bool isVisible = base.Visible;
if (codon != null) {
- ConditionFailedAction failedAction = codon.GetFailedAction(caller);
+ ConditionFailedAction failedAction = Condition.GetFailedAction(conditions, caller);
isVisible &= failedAction != ConditionFailedAction.Exclude;
}
if (base.Visible != isVisible) {
Modified: trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/WinFormsResourceService.cs
===================================================================
--- trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/WinFormsResourceService.cs 2012-05-29 07:15:30 UTC (rev 6703)
+++ trunk/Tools/Maestro/Thirdparty/SharpDevelop/ICSharpCode.Core.WinForms/WinFormsResourceService.cs 2012-05-29 09:44:49 UTC (rev 6704)
@@ -175,18 +175,6 @@
return ico;
}
}
-
- /// <summary>
- /// A simple check to determine if we're running in windows
- /// </summary>
- private static bool IsWindows
- {
- get
- {
- var id = Environment.OSVersion.Platform;
- return id != PlatformID.Unix && id != PlatformID.Unix;
- }
- }
/// <summary>
/// Converts a bitmap into an icon.
@@ -206,8 +194,7 @@
return new Icon(tempIco, tempIco.Width, tempIco.Height);
} // dispose tempico, doesn't do much because the icon isn't owned
} finally {
- if (IsWindows)
- NativeMethods.DestroyIcon(hIcon);
+ NativeMethods.DestroyIcon(hIcon);
}
}
More information about the mapguide-commits
mailing list