init
686
BuildProcessTemplates/AzureContinuousDeployment.11.xaml
Normal file
@ -0,0 +1,686 @@
|
|||||||
|
<Activity mc:Ignorable="sad" x:Class="TfsBuild.Process" xmlns="http://schemas.microsoft.com/netfx/2009/xaml/activities" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:mt="clr-namespace:Microsoft.TeamFoundation;assembly=Microsoft.TeamFoundation.Common" xmlns:mtb="clr-namespace:Microsoft.TeamFoundation.Build.Common;assembly=Microsoft.TeamFoundation.Build.Common" xmlns:mtbc="clr-namespace:Microsoft.TeamFoundation.Build.Client;assembly=Microsoft.TeamFoundation.Build.Client" xmlns:mtbw="clr-namespace:Microsoft.TeamFoundation.Build.Workflow;assembly=Microsoft.TeamFoundation.Build.Workflow" xmlns:mtdwa="clr-namespace:Microsoft.TeamFoundation.Deployment.Workflow.Activities;assembly=Microsoft.TeamFoundation.Deployment.Workflow" xmlns:mtdw="clr-namespace:Microsoft.TeamFoundation.Deployment.Workflow;assembly=Microsoft.TeamFoundation.Deployment.Workflow" xmlns:mtbwa="clr-namespace:Microsoft.TeamFoundation.Build.Workflow.Activities;assembly=Microsoft.TeamFoundation.Build.Workflow" xmlns:mtbwt="clr-namespace:Microsoft.TeamFoundation.Build.Workflow.Tracking;assembly=Microsoft.TeamFoundation.Build.Workflow" xmlns:mttbb="clr-namespace:Microsoft.TeamFoundation.TestImpact.BuildIntegration.BuildActivities;assembly=Microsoft.TeamFoundation.TestImpact.BuildIntegration" xmlns:mtvc="clr-namespace:Microsoft.TeamFoundation.VersionControl.Client;assembly=Microsoft.TeamFoundation.VersionControl.Client" xmlns:mtvco="clr-namespace:Microsoft.TeamFoundation.VersionControl.Common;assembly=Microsoft.TeamFoundation.VersionControl.Common" xmlns:mva="clr-namespace:Microsoft.VisualBasic.Activities;assembly=System.Activities" xmlns:s="clr-namespace:System;assembly=mscorlib" xmlns:sad="http://schemas.microsoft.com/netfx/2009/xaml/activities/presentation" xmlns:sad1="clr-namespace:System.Activities.Debugger;assembly=System.Activities" xmlns:scg="clr-namespace:System.Collections.Generic;assembly=mscorlib" xmlns:sl="clr-namespace:System.Linq;assembly=System.Core" xmlns:this="clr-namespace:TfsBuild;" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
|
||||||
|
<x:Members>
|
||||||
|
<x:Property Name="SolutionToBuild" Type="InArgument(x:String)" />
|
||||||
|
<x:Property Name="ConfigurationsToBuild" Type="InArgument(mtbwa:PlatformConfigurationList)" />
|
||||||
|
<x:Property Name="TestSpecs" Type="InArgument(mtbwa:TestSpecList)" />
|
||||||
|
<x:Property Name="BuildNumberFormat" Type="InArgument(x:String)" />
|
||||||
|
<x:Property Name="CleanWorkspace" Type="InArgument(mtbwa:CleanWorkspaceOption)" />
|
||||||
|
<x:Property Name="RunCodeAnalysis" Type="InArgument(mtbwa:CodeAnalysisOption)" />
|
||||||
|
<x:Property Name="SourceAndSymbolServerSettings" Type="InArgument(mtbwa:SourceAndSymbolServerSettings)" />
|
||||||
|
<x:Property Name="AgentSettings" Type="InArgument(mtbwa:AgentSettings)" />
|
||||||
|
<x:Property Name="AssociateChangesetsAndWorkItems" Type="InArgument(x:Boolean)" />
|
||||||
|
<x:Property Name="CreateWorkItem" Type="InArgument(x:Boolean)" />
|
||||||
|
<x:Property Name="MSBuildArguments" Type="InArgument(x:String)" />
|
||||||
|
<x:Property Name="MSBuildPlatform" Type="InArgument(mtbwa:ToolPlatform)" />
|
||||||
|
<x:Property Name="MSBuildMultiProc" Type="InArgument(x:Boolean)" />
|
||||||
|
<x:Property Name="PerformTestImpactAnalysis" Type="InArgument(x:Boolean)" />
|
||||||
|
<x:Property Name="CreateLabel" Type="InArgument(x:Boolean)" />
|
||||||
|
<x:Property Name="DisableTests" Type="InArgument(x:Boolean)" />
|
||||||
|
<x:Property Name="GetVersion" Type="InArgument(x:String)" />
|
||||||
|
<x:Property Name="PrivateDropLocation" Type="InArgument(x:String)" />
|
||||||
|
<x:Property Name="Verbosity" Type="InArgument(mtbw:BuildVerbosity)" />
|
||||||
|
<x:Property Name="Metadata" Type="mtbw:ProcessParameterMetadataCollection" />
|
||||||
|
<x:Property Name="SupportedReasons" Type="mtbc:BuildReason" />
|
||||||
|
<x:Property Name="DeploymentEnvironmentName" Type="InArgument(x:String)" />
|
||||||
|
<x:Property Name="AllowUntrustedCertificates" Type="InArgument(x:Boolean)" />
|
||||||
|
<!-- Additional Cloud Service Overrides -->
|
||||||
|
<x:Property Name="AlternatePublishProfile" Type="InArgument(x:String)" />
|
||||||
|
<x:Property Name="AlternateHostedServiceName" Type="InArgument(x:String)" />
|
||||||
|
<x:Property Name="AllowUpgrade" Type="InArgument(x:Boolean)" />
|
||||||
|
<!-- NOTE: this deliberately a String instead of Enum type so it can easily be set by server code. -->
|
||||||
|
<x:Property Name="AlternateDeploymentSlot" Type="InArgument(x:String)" />
|
||||||
|
<x:Property Name="AlternateStorageAccountName" Type="InArgument(x:String)" />
|
||||||
|
<x:Property Name="AlternateDeploymentLabel" Type="InArgument(x:String)" />
|
||||||
|
<x:Property Name="AlternateServiceConfiguration" Type="InArgument(x:String)" />
|
||||||
|
<!-- Additional Web Deploy Overrides -->
|
||||||
|
<x:Property Name="AlternateWebDeployPublishProfile" Type="InArgument(x:String)" />
|
||||||
|
</x:Members>
|
||||||
|
<this:Process.SolutionToBuild>
|
||||||
|
<InArgument x:TypeArguments="x:String" />
|
||||||
|
</this:Process.SolutionToBuild>
|
||||||
|
<this:Process.ConfigurationsToBuild>[New Microsoft.TeamFoundation.Build.Workflow.Activities.PlatformConfigurationList()]</this:Process.ConfigurationsToBuild>
|
||||||
|
<this:Process.DisableTests>[False]</this:Process.DisableTests>
|
||||||
|
<this:Process.TestSpecs>[New Microsoft.TeamFoundation.Build.Workflow.Activities.TestSpecList(New Microsoft.TeamFoundation.Build.Workflow.Activities.AgileTestPlatformSpec("**\*test*.dll") With { .FailBuildOnFailure = True } )]</this:Process.TestSpecs>
|
||||||
|
<this:Process.BuildNumberFormat>["$(BuildDefinitionName)_$(Date:yyyyMMdd)$(Rev:.r)"]</this:Process.BuildNumberFormat>
|
||||||
|
<this:Process.AssociateChangesetsAndWorkItems>[True]</this:Process.AssociateChangesetsAndWorkItems>
|
||||||
|
<this:Process.CreateWorkItem>[True]</this:Process.CreateWorkItem>
|
||||||
|
<this:Process.CleanWorkspace>[Microsoft.TeamFoundation.Build.Workflow.Activities.CleanWorkspaceOption.All]</this:Process.CleanWorkspace>
|
||||||
|
<this:Process.MSBuildArguments>
|
||||||
|
<InArgument x:TypeArguments="x:String" />
|
||||||
|
</this:Process.MSBuildArguments>
|
||||||
|
<this:Process.RunCodeAnalysis>[Microsoft.TeamFoundation.Build.Workflow.Activities.CodeAnalysisOption.AsConfigured]</this:Process.RunCodeAnalysis>
|
||||||
|
<this:Process.MSBuildMultiProc>[True]</this:Process.MSBuildMultiProc>
|
||||||
|
<this:Process.MSBuildPlatform>[Microsoft.TeamFoundation.Build.Workflow.Activities.ToolPlatform.Auto]</this:Process.MSBuildPlatform>
|
||||||
|
<this:Process.PerformTestImpactAnalysis>[True]</this:Process.PerformTestImpactAnalysis>
|
||||||
|
<this:Process.SourceAndSymbolServerSettings>[New Microsoft.TeamFoundation.Build.Workflow.Activities.SourceAndSymbolServerSettings(True, Nothing)]</this:Process.SourceAndSymbolServerSettings>
|
||||||
|
<this:Process.CreateLabel>[True]</this:Process.CreateLabel>
|
||||||
|
<this:Process.GetVersion>
|
||||||
|
<InArgument x:TypeArguments="x:String" />
|
||||||
|
</this:Process.GetVersion>
|
||||||
|
<this:Process.AgentSettings>[New Microsoft.TeamFoundation.Build.Workflow.Activities.AgentSettings() With {.MaxWaitTime = New System.TimeSpan(4, 0, 0), .MaxExecutionTime = New System.TimeSpan(0, 0, 0), .TagComparison = Microsoft.TeamFoundation.Build.Workflow.Activities.TagComparison.MatchExactly }]</this:Process.AgentSettings>
|
||||||
|
<this:Process.Verbosity>[Microsoft.TeamFoundation.Build.Workflow.BuildVerbosity.Normal]</this:Process.Verbosity>
|
||||||
|
<this:Process.AllowUntrustedCertificates>[True]</this:Process.AllowUntrustedCertificates>
|
||||||
|
<this:Process.AllowUpgrade>[True]</this:Process.AllowUpgrade>
|
||||||
|
<this:Process.Metadata>
|
||||||
|
<mtbw:ProcessParameterMetadataCollection>
|
||||||
|
<mtbw:ProcessParameterMetadata BrowsableWhen="EditingDefinition" Category="#100 Required" Required="True" DisplayName="Solution To Build" Description="The solution to build, package and deploy." ParameterName="SolutionToBuild" Editor="Microsoft.TeamFoundation.Build.Controls.ServerFileBrowserEditor, Microsoft.TeamFoundation.Build.Controls" />
|
||||||
|
<mtbw:ProcessParameterMetadata BrowsableWhen="EditingDefinition" Category="#200 Basic" DisplayName="Configuration To Build" Description="The configuration to build." ParameterName="ConfigurationsToBuild" />
|
||||||
|
<mtbw:ProcessParameterMetadata BrowsableWhen="EditingDefinition" Category="#300 Advanced" DisplayName="MSBuild Multi-Proc" Description="Enable MSBuild Multi-proc to build your solutions' projects in parallel, when possible, using all available processors on the build server." ParameterName="MSBuildMultiProc" />
|
||||||
|
<mtbw:ProcessParameterMetadata BrowsableWhen="EditingDefinition" Category="#300 Advanced" DisplayName="Solution Specific Build Outputs" Description="True will put build outputs into folders based on the solution name. False will put all build outputs into the same folder." ParameterName="SolutionSpecificBuildOutputs" />
|
||||||
|
<mtbw:ProcessParameterMetadata BrowsableWhen="Always" Category="#400 Publishing -- General" Description="The named set of Deployment Settings to use for Application Deployment." DisplayName="Deployment Settings Name" ParameterName="DeploymentEnvironmentName" />
|
||||||
|
<mtbw:ProcessParameterMetadata BrowsableWhen="Always" Category="#400 Publishing -- General" Description="True will allow non-rooted certificates during deployment." DisplayName="Allow Untrusted Certificates" ParameterName="AllowUntrustedCertificates" />
|
||||||
|
<mtbw:ProcessParameterMetadata BrowsableWhen="Always" Category="#500 Publishing -- Azure Cloud Service" Description="Specify a source control path to an alternate publish profile." DisplayName="Alternate Publish Profile" ParameterName="AlternatePublishProfile" Editor="Microsoft.TeamFoundation.Build.Controls.ServerFileBrowserEditor, Microsoft.TeamFoundation.Build.Controls" />
|
||||||
|
<mtbw:ProcessParameterMetadata BrowsableWhen="Always" Category="#500 Publishing -- Azure Cloud Service" Description="Specify the name of an alternate storage account." DisplayName="Alternate Storage Account Name" ParameterName="AlternateStorageAccountName" />
|
||||||
|
<mtbw:ProcessParameterMetadata BrowsableWhen="Always" Category="#500 Publishing -- Azure Cloud Service" Description="Specify the Cloud Service Environment: Production or Staging." DisplayName="Alternate Cloud Service Environment" ParameterName="AlternateDeploymentSlot" />
|
||||||
|
<mtbw:ProcessParameterMetadata BrowsableWhen="Always" Category="#500 Publishing -- Azure Cloud Service" Description="Specify an alternate deployment label." DisplayName="Alternate Deployment Label" ParameterName="AlternateDeploymentLabel" />
|
||||||
|
<mtbw:ProcessParameterMetadata BrowsableWhen="Always" Category="#500 Publishing -- Azure Cloud Service" Description="Specify an alternate Cloud Service name." DisplayName="Alternate Cloud Service Name" ParameterName="AlternateHostedServiceName" />
|
||||||
|
<mtbw:ProcessParameterMetadata BrowsableWhen="Always" Category="#500 Publishing -- Azure Cloud Service" Description="Specify an alternate service configuration." DisplayName="Alternate Service Configuration" ParameterName="AlternateServiceConfiguration" />
|
||||||
|
<mtbw:ProcessParameterMetadata BrowsableWhen="Always" Category="#500 Publishing -- Azure Cloud Service" Description="Specify whether upgrade is allowed on deployment." DisplayName="Allow Upgrade" ParameterName="AllowUpgrade" />
|
||||||
|
<mtbw:ProcessParameterMetadata BrowsableWhen="Always" Category="#600 Publishing -- Azure Website" Description="Specify a source control path to a Web Deploy publish profile." DisplayName="Web Deploy Publish Profile" ParameterName="AlternateWebDeployPublishProfile" Editor="Microsoft.TeamFoundation.Build.Controls.ServerFileBrowserEditor, Microsoft.TeamFoundation.Build.Controls" />
|
||||||
|
</mtbw:ProcessParameterMetadataCollection>
|
||||||
|
</this:Process.Metadata>
|
||||||
|
<this:Process.SupportedReasons>All</this:Process.SupportedReasons>
|
||||||
|
<mva:VisualBasic.Settings>Assembly references and imported namespaces serialized as XML namespaces</mva:VisualBasic.Settings>
|
||||||
|
<Sequence mtbwt:BuildTrackingParticipant.Importance="None">
|
||||||
|
<Sequence.Variables>
|
||||||
|
<Variable x:TypeArguments="mtbc:IBuildDetail" Name="BuildDetail" />
|
||||||
|
<Variable x:TypeArguments="x:String" Name="DropLocation" />
|
||||||
|
<Variable x:TypeArguments="mtbwa:PlatformConfiguration" Name="ConfigurationToBuild" />
|
||||||
|
</Sequence.Variables>
|
||||||
|
<mtbwa:GetBuildDetail DisplayName="Get the Build" Result="[BuildDetail]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
<Sequence DisplayName="Update Drop Location" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<mtbwa:InvokeForReason DisplayName="Update Build Number for Triggered Builds" Reason="Triggered">
|
||||||
|
<mtbwa:UpdateBuildNumber BuildNumberFormat="[BuildNumberFormat]" DisplayName="Update Build Number" />
|
||||||
|
</mtbwa:InvokeForReason>
|
||||||
|
<If Condition="[(Not String.IsNullOrEmpty(BuildDetail.DropLocationRoot)) AndAlso (BuildDetail.Reason And Microsoft.TeamFoundation.Build.Client.BuildReason.Triggered) = BuildDetail.Reason]" DisplayName="If Build Reason is Triggered" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<Sequence mtbwt:BuildTrackingParticipant.Importance="None">
|
||||||
|
<Assign x:TypeArguments="x:String" mtbwt:BuildTrackingParticipant.Importance="None" Value="[BuildDropProvider.CombinePaths(BuildDetail.DropLocationRoot, BuildDetail.BuildDefinition.Name, BuildDetail.BuildNumber)]" To="[DropLocation]" />
|
||||||
|
<mtbwa:SetBuildProperties DisplayName="Set Drop Location" DropLocation="[DropLocation]" PropertiesToSet="DropLocation" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
</Sequence>
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
<If Condition="[(Not String.IsNullOrEmpty(PrivateDropLocation)) AndAlso BuildDetail.Reason = Microsoft.TeamFoundation.Build.Client.BuildReason.ValidateShelveset]" DisplayName="If Build Reason is ValidateShelveset" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<Sequence mtbwt:BuildTrackingParticipant.Importance="None">
|
||||||
|
<Assign x:TypeArguments="x:String" Value="[BuildDropProvider.CombinePaths(PrivateDropLocation, BuildDetail.BuildDefinition.Name, BuildDetail.BuildNumber)]" To="[DropLocation]" mtbwt:BuildTrackingParticipant.Importance="None" />
|
||||||
|
<mtbwa:SetBuildProperties DisplayName="Set Drop Location for Private Build" DropLocation="[DropLocation]" PropertiesToSet="DropLocation" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
</Sequence>
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
</Sequence>
|
||||||
|
<mtbwa:AgentScope DisplayName="Run On Agent" MaxExecutionTime="[AgentSettings.MaxExecutionTime]" MaxWaitTime="[AgentSettings.MaxWaitTime]" ReservationSpec="[AgentSettings.GetAgentReservationSpec()]">
|
||||||
|
<mtbwa:AgentScope.Variables>
|
||||||
|
<Variable x:TypeArguments="mtbc:IBuildAgent" Name="BuildAgent" />
|
||||||
|
<Variable x:TypeArguments="mtvc:Workspace" Name="Workspace" />
|
||||||
|
<Variable x:TypeArguments="x:String" Name="BuildDirectory" />
|
||||||
|
<Variable x:TypeArguments="x:String" Default="[BuildDetail.BuildNumber]" Name="LabelName" />
|
||||||
|
<Variable x:TypeArguments="x:String" Name="WorkspaceName" />
|
||||||
|
<Variable x:TypeArguments="x:String" Name="SourcesDirectory" />
|
||||||
|
<Variable x:TypeArguments="x:String" Name="BinariesDirectory" />
|
||||||
|
<Variable x:TypeArguments="x:String" Name="TestResultsDirectory" />
|
||||||
|
</mtbwa:AgentScope.Variables>
|
||||||
|
<Sequence DisplayName="Initialize Variables" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<mtbwa:GetBuildAgent DisplayName="Get the Agent" Result="[BuildAgent]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
<mtbwa:GetBuildDirectory DisplayName="Get the Build Directory" Result="[BuildDirectory]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
<Assign x:TypeArguments="x:String" DisplayName="Initialize Workspace Name" To="[WorkspaceName]" Value="[String.Format("{0}_{1}_{2}", BuildDetail.BuildDefinition.Id, Microsoft.TeamFoundation.LinkingUtilities.DecodeUri(BuildAgent.Uri.AbsoluteUri).ToolSpecificId, BuildAgent.ServiceHost.Name)]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
<Assign x:TypeArguments="x:String" DisplayName="Initialize Sources Directory" To="[SourcesDirectory]" Value="[String.Format("{0}\src", BuildDirectory)]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
<Assign x:TypeArguments="x:String" DisplayName="Initialize Binaries Directory" To="[BinariesDirectory]" Value="[String.Format("{0}\bin", BuildDirectory)]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
<Assign x:TypeArguments="x:String" DisplayName="Initialize TestResults Directory" To="[TestResultsDirectory]" Value="[String.Format("{0}\tst", BuildDirectory)]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
<If Condition="[ConfigurationsToBuild.Count = 0]" DisplayName="If ConfigurationsToBuild Is Empty" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<Assign x:TypeArguments="mtbwa:PlatformConfiguration" DisplayName="Use Default Platform Configuration" To="[ConfigurationToBuild]" Value="[Microsoft.TeamFoundation.Build.Workflow.Activities.PlatformConfiguration.Default]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
</If.Then>
|
||||||
|
<If.Else>
|
||||||
|
<Assign x:TypeArguments="mtbwa:PlatformConfiguration" DisplayName="Use user's Platform Configuration" To="[ConfigurationToBuild]" Value="[ConfigurationsToBuild(0)]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
</If.Else>
|
||||||
|
</If>
|
||||||
|
<If Condition="[WorkspaceName.Length > Microsoft.TeamFoundation.VersionControl.Common.RepositoryConstants.MaxWorkspaceNameSize]" DisplayName="If WorkspaceName > MaxSize" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<Sequence mtbwt:BuildTrackingParticipant.Importance="None">
|
||||||
|
<mtbwa:WriteBuildWarning DisplayName="Write Workspace Size Warning" Message="[String.Format("The workspace name '{0}' exceeds the maximum allowed limit of '{1}' characters. Truncating it to match the maximum limit.", WorkspaceName, Microsoft.TeamFoundation.VersionControl.Common.RepositoryConstants.MaxWorkspaceNameSize)]" />
|
||||||
|
<Assign x:TypeArguments="x:String" DisplayName="Truncate WorkspaceName to MaxSize" To="[WorkspaceName]" Value="[WorkspaceName.Substring(0, Microsoft.TeamFoundation.VersionControl.Common.RepositoryConstants.MaxWorkspaceNameSize).TrimEnd()]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
</Sequence>
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
</Sequence>
|
||||||
|
<Sequence DisplayName="Initialize Workspace" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<mtbwa:DeleteDirectory Directory="[TestResultsDirectory]" DisplayName="Delete Test Results Directory" Recursive="[True]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
<If Condition="[Not CleanWorkspace = Microsoft.TeamFoundation.Build.Workflow.Activities.CleanWorkspaceOption.None]" DisplayName="If Not CleanWorkspace = CleanWorkspaceOption.None" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<mtbwa:DeleteDirectory Directory="[BinariesDirectory]" DisplayName="Delete Binaries Directory" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
<If Condition="[CleanWorkspace = Microsoft.TeamFoundation.Build.Workflow.Activities.CleanWorkspaceOption.All]" DisplayName="If CleanWorkspace = CleanWorkspaceOption.All" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<Sequence DisplayName="Delete Workspace and Sources Directory" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<mtbwa:DeleteWorkspace DeleteLocalItems="[True]" DisplayName="Delete Workspace" Name="[WorkspaceName]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
<mtbwa:DeleteDirectory Directory="[SourcesDirectory]" DisplayName="Delete Sources Directory" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
</Sequence>
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
<mtbwa:CreateWorkspace BuildDirectory="[BuildDirectory]" Comment="["Workspace Created by Team Build"]" DisplayName="Create Workspace" Name="[WorkspaceName]" Result="[Workspace]" SourcesDirectory="[SourcesDirectory]" />
|
||||||
|
<If Condition="[CleanWorkspace = Microsoft.TeamFoundation.Build.Workflow.Activities.CleanWorkspaceOption.Outputs]" DisplayName="If CleanWorkspace = CleanWorkspaceOption.Outputs" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<Sequence DisplayName="Clean Configuration">
|
||||||
|
<If Condition="[Not String.IsNullOrEmpty(SolutionToBuild)]" DisplayName="If SolutionToBuild is Not Nothing" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<Sequence DisplayName="Clean Project" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<Sequence.Variables>
|
||||||
|
<Variable x:TypeArguments="x:String" Name="localBuildProjectItem" />
|
||||||
|
</Sequence.Variables>
|
||||||
|
<mtbwa:ConvertWorkspaceItem DisplayName="Convert Server Paths to Local Paths" Input="[SolutionToBuild]" Result="[localBuildProjectItem]" Workspace="[Workspace]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
<If Condition="[System.IO.File.Exists(localBuildProjectItem)]" DisplayName="If File.Exists(Project)" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<mtbwa:MSBuild CommandLineArguments="[String.Format("/p:SkipInvalidConfigurations=true {0}", MSBuildArguments)]" Configuration="[ConfigurationToBuild.Configuration]" DisplayName="Run MSBuild for Project" GenerateVSPropsFile="[True]" MaxProcesses="[If (MSBuildMultiProc, 0, 1)]" OutDir="[BinariesDirectory]" Platform="[ConfigurationToBuild.Platform]" Project="[localBuildProjectItem]" Targets="[New String() { "Clean" }]" TargetsNotLogged="[New String() {"GetNativeManifest", "GetCopyToOutputDirectoryItems", "GetTargetPath"}]" ToolPlatform="[MSBuildPlatform]" Verbosity="[Verbosity]" />
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
</Sequence>
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
</Sequence>
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
<mtbwa:SyncWorkspace DisplayName="Get Workspace" VersionOverride="[GetVersion]" Workspace="[Workspace]">
|
||||||
|
<mtbwa:SyncWorkspace.RequestsFailed>
|
||||||
|
<ActivityAction x:TypeArguments="scg:ICollection(mtbc:IQueuedBuild)">
|
||||||
|
<ActivityAction.Argument>
|
||||||
|
<DelegateInArgument x:TypeArguments="scg:ICollection(mtbc:IQueuedBuild)" Name="failedRequests" />
|
||||||
|
</ActivityAction.Argument>
|
||||||
|
<mtbwa:RetryRequests Behavior="[Microsoft.TeamFoundation.Build.Workflow.Activities.RetryBehavior.DoNotBatch]" DisplayName="Mark Requests for Retry" Requests="[failedRequests]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
</ActivityAction>
|
||||||
|
</mtbwa:SyncWorkspace.RequestsFailed>
|
||||||
|
</mtbwa:SyncWorkspace>
|
||||||
|
</Sequence>
|
||||||
|
<If Condition="[CreateLabel]" DisplayName="If CreateLabel" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<mtbwa:InvokeForReason DisplayName="Create and Set Label for non-Shelveset Builds" Reason="Manual, IndividualCI, BatchedCI, Schedule, ScheduleForced, UserCreated">
|
||||||
|
<mtbwa:LabelWorkspace Comment="["Label Created by Team Build"]" DisplayName="Create Label" Name="[LabelName]" Scope="[String.Format("$/{0}", BuildDetail.BuildDefinition.TeamProject)]" Workspace="[Workspace]" />
|
||||||
|
<mtbwa:SetBuildProperties DisplayName="Set Label on BuildDetail" LabelName="[String.Format("{0}@$/{1}", LabelName, BuildDetail.BuildDefinition.TeamProject)]" PropertiesToSet="LabelName" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
</mtbwa:InvokeForReason>
|
||||||
|
</If.Then>
|
||||||
|
<If.Else>
|
||||||
|
<mtbwa:WriteBuildMessage DisplayName="Write Message" Message="Not Labeling sources" Importance="[Microsoft.TeamFoundation.Build.Client.BuildMessageImportance.High]" />
|
||||||
|
</If.Else>
|
||||||
|
</If>
|
||||||
|
<TryCatch DisplayName="Try Compile, Test, and Associate Changesets and Work Items" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<TryCatch.Finally>
|
||||||
|
<Sequence DisplayName="Revert Workspace and Copy Files to Drop Location" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<mtbwa:InvokeForReason DisplayName="Revert Workspace for Shelveset Builds" Reason="CheckInShelveset, ValidateShelveset">
|
||||||
|
<mtbwa:RevertWorkspace DisplayName="Revert Workspace" Workspace="[Workspace]" />
|
||||||
|
</mtbwa:InvokeForReason>
|
||||||
|
<If Condition="[Not String.IsNullOrEmpty(DropLocation)]" DisplayName="If DropLocation is Set" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<mtbwa:CopyDirectory DisplayName="Drop Files to Drop Location" Source="[BinariesDirectory]" Destination="[DropLocation]" />
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
</Sequence>
|
||||||
|
</TryCatch.Finally>
|
||||||
|
<TryCatch.Try>
|
||||||
|
<Sequence mtbwt:BuildTrackingParticipant.Importance="None">
|
||||||
|
<Sequence.Variables>
|
||||||
|
<Variable x:TypeArguments="s:Exception" Name="compilationException" />
|
||||||
|
<Variable x:TypeArguments="scg:IList(mtvc:Changeset)" Name="associatedChangesets" />
|
||||||
|
<Variable x:TypeArguments="s:Boolean" Name="treatTestFailureAsBuildFailure" />
|
||||||
|
</Sequence.Variables>
|
||||||
|
<Parallel DisplayName="Compile, Test, and Associate Changesets and Work Items">
|
||||||
|
<TryCatch DisplayName="Try Compile and Test" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<TryCatch.Try>
|
||||||
|
<Sequence DisplayName="Compile and Test">
|
||||||
|
<Sequence mtbwt:BuildTrackingParticipant.Importance="None">
|
||||||
|
<Sequence.Variables>
|
||||||
|
<Variable x:TypeArguments="x:String" Name="outputDirectory" />
|
||||||
|
<Variable x:TypeArguments="x:String" Name="logFileDropLocation" />
|
||||||
|
<Variable x:TypeArguments="mtbc:DeploymentEnvironment" Name="deploymentEnvironment" />
|
||||||
|
<Variable x:TypeArguments="mtdw:MSDeployProfile" Name="azureWebSiteProfile" />
|
||||||
|
<Variable x:TypeArguments="mtb:AzureCloudAppProfile" Name="azureCloudAppProfile" />
|
||||||
|
<Variable x:TypeArguments="x:Boolean" Name="deployOutput" Default="False" />
|
||||||
|
<Variable x:TypeArguments="x:String" Name="targetSite" />
|
||||||
|
<Variable x:TypeArguments="x:String" Name="AlternateWebDeployPublishProfileName" />
|
||||||
|
<Variable x:TypeArguments="x:Boolean" Name="CreateWebDeployPackage" Default="False" />
|
||||||
|
</Sequence.Variables>
|
||||||
|
<Sequence DisplayName="Initialize Variables" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<Assign x:TypeArguments="x:String" DisplayName="Create OutputDirectory" To="[outputDirectory]" Value="[BinariesDirectory]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
<If Condition="[Not String.IsNullOrEmpty(DropLocation)]" DisplayName="If DropLocation is Set" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<Assign x:TypeArguments="x:String" DisplayName="Initialize LogFile Drop Location" To="[logFileDropLocation]" Value="[BuildDropProvider.CombinePaths(DropLocation, "logs")]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
<If Condition="[Not String.IsNullOrEmpty(DeploymentEnvironmentName)]" DisplayName="If DeploymentEnvironmentName is Set" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<Sequence mtbwt:BuildTrackingParticipant.Importance="None">
|
||||||
|
<mtdwa:GetDeploymentEnvironment DisplayName="Get Deployment Environment" DeploymentEnvironmentName="[DeploymentEnvironmentName]" Result="[deploymentEnvironment]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
<Assign x:TypeArguments="x:Boolean" DisplayName="Set Deploy Output to True" mtbwt:BuildTrackingParticipant.Importance="Low" Value="True" To="[deployOutput]" />
|
||||||
|
<If Condition="[deploymentEnvironment.EnvironmentMetadata.Kind = Microsoft.TeamFoundation.Build.Client.DeploymentEnvironmentKind.AzureWebSite]" DisplayName="If DeploymentEnvironment is Azure Web Site" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<Sequence mtbwt:BuildTrackingParticipant.Importance="None">
|
||||||
|
<mtdwa:GetAzureWebsitePublishProfile DisplayName="Fetch Azure Web Site Publish Profile" ConnectedService="[deploymentEnvironment.ConnectedService]" WebsiteEnvironment="[deploymentEnvironment]" AllowUntrustedCertificates="[AllowUntrustedCertificates]" Result="[azureWebSiteProfile]" />
|
||||||
|
<Assign x:TypeArguments="x:Boolean" DisplayName="Set Create Web Deploy Package to True" mtbwt:BuildTrackingParticipant.Importance="Low" Value="True" To="[CreateWebDeployPackage]" />
|
||||||
|
<!-- The following value is passed to MSBuild for packaging -->
|
||||||
|
<Assign x:TypeArguments="x:String" DisplayName="Set Target Site Variable" mtbwt:BuildTrackingParticipant.Importance="Low" Value="[azureWebSiteProfile.MSDeploySite]" To="[targetSite]" />
|
||||||
|
<If Condition="[Not String.IsNullOrEmpty(AlternateWebDeployPublishProfile)]" mtbwt:BuildTrackingParticipant.Importance="Low" DisplayName="If Use Alternate Web Deploy Publish Profile">
|
||||||
|
<If.Then>
|
||||||
|
<Sequence mtbwt:BuildTrackingParticipant.Importance="None">
|
||||||
|
<Sequence.Variables>
|
||||||
|
<Variable x:TypeArguments="x:String" Name="localProfile" />
|
||||||
|
</Sequence.Variables>
|
||||||
|
<mtbwa:ConvertWorkspaceItem DisplayName="Convert Server Path to Local Path" Input="[AlternateWebDeployPublishProfile]" Result="[localProfile]" Workspace="[Workspace]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
<Assign x:TypeArguments="x:String" mtbwt:BuildTrackingParticipant.Importance="Low" DisplayName="Record Alternate Web Deploy Publish Profile Name" To="[AlternateWebDeployPublishProfileName]" Value="[System.IO.Path.GetFileNameWithoutExtension(localProfile)]" />
|
||||||
|
</Sequence>
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
</Sequence>
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
<If Condition="[deploymentEnvironment.EnvironmentMetadata.Kind = Microsoft.TeamFoundation.Build.Client.DeploymentEnvironmentKind.AzureCloudApp]" DisplayName="If DeploymentEnvironment is Azure Cloud Service" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<Sequence mtbwt:BuildTrackingParticipant.Importance="None">
|
||||||
|
<If Condition="[String.IsNullOrEmpty(AlternatePublishProfile)]" mtbwt:BuildTrackingParticipant.Importance="Low" DisplayName="If Use Default Publish Profile">
|
||||||
|
<If.Then>
|
||||||
|
<mtdwa:GetAzureCloudAppPublishProfile DisplayName="Get Default Azure Cloud Service Publish Profile" CloudAppEnvironment="[deploymentEnvironment]" Result="[azureCloudAppProfile]" />
|
||||||
|
</If.Then>
|
||||||
|
<If.Else>
|
||||||
|
<Sequence mtbwt:BuildTrackingParticipant.Importance="None">
|
||||||
|
<Sequence.Variables>
|
||||||
|
<Variable x:TypeArguments="x:String" Name="localProfile" />
|
||||||
|
</Sequence.Variables>
|
||||||
|
<mtbwa:ConvertWorkspaceItem DisplayName="Convert Server Path to Local Path" Input="[AlternatePublishProfile]" Result="[localProfile]" Workspace="[Workspace]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
<Assign x:TypeArguments="mtb:AzureCloudAppProfile" mtbwt:BuildTrackingParticipant.Importance="Low" DisplayName="Load Alternate Publish Profile" To="[azureCloudAppProfile]" Value="[AzureCloudAppProfile.Parse(System.IO.File.ReadAllText(localProfile))]" />
|
||||||
|
</Sequence>
|
||||||
|
</If.Else>
|
||||||
|
</If>
|
||||||
|
<If Condition="[Not String.IsNullOrEmpty(AlternateHostedServiceName)]" mtbwt:BuildTrackingParticipant.Importance="Low" DisplayName="If Alternate Cloud Service name is set.">
|
||||||
|
<If.Then>
|
||||||
|
<Assign x:TypeArguments="x:String" mtbwt:BuildTrackingParticipant.Importance="Low" DisplayName="Set Alternate Cloud Service name in profile." To="[azureCloudAppProfile.AzureHostedServiceName]" Value="[AlternateHostedServiceName]" />
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
<If Condition="[Not String.IsNullOrEmpty(AlternateDeploymentSlot)]" mtbwt:BuildTrackingParticipant.Importance="Low" DisplayName="If Alternate Deployment Slot is set.">
|
||||||
|
<If.Then>
|
||||||
|
<Assign x:TypeArguments="mtb:AzureDeploymentSlot" mtbwt:BuildTrackingParticipant.Importance="Low" DisplayName="Set Alternate Deployment Slot in profile." To="[azureCloudAppProfile.AzureSlot]" Value="[CType([Enum].Parse(GetType(AzureDeploymentSlot), AlternateDeploymentSlot, True), AzureDeploymentSlot)]" />
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
<If Condition="[Not String.IsNullOrEmpty(AlternateStorageAccountName)]" mtbwt:BuildTrackingParticipant.Importance="Low" DisplayName="If Alternate Storage Account Name is set.">
|
||||||
|
<If.Then>
|
||||||
|
<Assign x:TypeArguments="x:String" mtbwt:BuildTrackingParticipant.Importance="Low" DisplayName="Set Alternate Storage Account Name in profile." To="[azureCloudAppProfile.AzureStorageAccountName]" Value="[AlternateStorageAccountName]" />
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
<If Condition="[Not String.IsNullOrEmpty(AlternateServiceConfiguration)]" mtbwt:BuildTrackingParticipant.Importance="Low" DisplayName="If Alternate Service Configuration is set.">
|
||||||
|
<If.Then>
|
||||||
|
<Assign x:TypeArguments="x:String" mtbwt:BuildTrackingParticipant.Importance="Low" DisplayName="Set Alternate Service Configuration in profile." To="[azureCloudAppProfile.AzureServiceConfiguration]" Value="[AlternateServiceConfiguration]" />
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
<If Condition="[Not String.IsNullOrEmpty(AlternateDeploymentLabel)]" mtbwt:BuildTrackingParticipant.Importance="Low" DisplayName="If Alternate Deployment Label is set.">
|
||||||
|
<If.Then>
|
||||||
|
<Assign x:TypeArguments="x:String" mtbwt:BuildTrackingParticipant.Importance="Low" DisplayName="Set Alternate Deployment Label in profile." To="[azureCloudAppProfile.AzureDeploymentLabel]" Value="[AlternateDeploymentLabel]" />
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
<If Condition="[Not AllowUpgrade = azureCloudAppProfile.AzureAllowUpgrade]" mtbwt:BuildTrackingParticipant.Importance="Low" DisplayName="If Allow Upgrade is overridden">
|
||||||
|
<If.Then>
|
||||||
|
<Assign x:TypeArguments="x:Boolean" mtbwt:BuildTrackingParticipant.Importance="Low" DisplayName="Set Allow Upgrade in profile." To="[azureCloudAppProfile.AzureAllowUpgrade]" Value="[AllowUpgrade]" />
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
<If Condition="[(Not ConfigurationToBuild.IsConfigurationEmpty) AndAlso (Not String.IsNullOrEmpty(azureCloudAppProfile.AzureSolutionConfiguration))]" DisplayName="If Build Configuration and Azure Profile Solution Configuration are set." mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<If Condition="[Not (String.Compare(ConfigurationToBuild.Configuration, azureCloudAppProfile.AzureSolutionConfiguration, System.Globalization.CultureInfo.InvariantCulture, System.Globalization.CompareOptions.OrdinalIgnoreCase) = 0)]" DisplayName="If Build Configuration and Azure Profile Solution Profile Configuration are not equal." mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<Sequence mtbwt:BuildTrackingParticipant.Importance="None">
|
||||||
|
<Assign x:TypeArguments="x:Boolean" DisplayName="Set Deploy Output to False" mtbwt:BuildTrackingParticipant.Importance="Low" Value="False" To="[deployOutput]" />
|
||||||
|
<mtbwa:WriteBuildMessage DisplayName="Write Message" Message="[String.Format("This build will not be deployed because the build configuration -- {0} -- and the Azure Profile Solution Configuration -- {1} -- do not match.", ConfigurationToBuild.Configuration, azureCloudAppProfile.AzureSolutionConfiguration)]" Importance="[Microsoft.TeamFoundation.Build.Client.BuildMessageImportance.Normal]" />
|
||||||
|
</Sequence>
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
</Sequence>
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
<If Condition="[deployOutput]" DisplayName="Deploy Output" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<Sequence mtbwt:BuildTrackingParticipant.Importance="None">
|
||||||
|
<mtdwa:UpdateDeployment BuildDetail="[BuildDetail]" Stage="[Microsoft.TeamFoundation.Deployment.Workflow.Activities.DeploymentStage.Start]" DeploymentEnvironmentName="[deploymentEnvironment.EnvironmentMetadata.Name]" DisplayName="Mark this build as including a deployment" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
<If Condition="[deploymentEnvironment.EnvironmentMetadata.Kind = Microsoft.TeamFoundation.Build.Client.DeploymentEnvironmentKind.AzureCloudApp]" DisplayName="If DeploymentEnvironment is Azure Cloud Service" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<mtdwa:UpdateDeployment BuildDetail="[BuildDetail]" Stage="[Microsoft.TeamFoundation.Deployment.Workflow.Activities.DeploymentStage.AddProperty]" PropertyKey="AzureSlot" PropertyValue="[azureCloudAppProfile.AzureSlot.ToString()]" DisplayName="Add AzureSlot property to the deployment" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
</Sequence>
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
</Sequence>
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
</Sequence>
|
||||||
|
<If Condition="[Not String.IsNullOrEmpty(SolutionToBuild)]" DisplayName="If SolutionToBuild is Not Nothing" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<TryCatch DisplayName="Try to Compile the Project" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<TryCatch.Try>
|
||||||
|
<Sequence DisplayName="Compile the Project" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<Sequence.Variables>
|
||||||
|
<Variable x:TypeArguments="x:String" Name="localProject" />
|
||||||
|
</Sequence.Variables>
|
||||||
|
<mtbwa:ConvertWorkspaceItem DisplayName="Convert Server Path to Local Path" Input="[SolutionToBuild]" Result="[localProject]" Workspace="[Workspace]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
<If Condition="[(deploymentEnvironment IsNot Nothing) AndAlso (deploymentEnvironment.EnvironmentMetadata.Kind = Microsoft.TeamFoundation.Build.Client.DeploymentEnvironmentKind.AzureCloudApp)]" DisplayName="If Deployment Environment is Azure Cloud Service" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<Sequence mtbwt:BuildTrackingParticipant.Importance="None">
|
||||||
|
<Sequence.Variables>
|
||||||
|
<Variable x:TypeArguments="x:String" Name="ccprojName" />
|
||||||
|
</Sequence.Variables>
|
||||||
|
<mtdwa:FindCCProjInSln DisplayName="Find the Azure Project in the Solution" mtbwt:BuildTrackingParticipant.Importance="Low" SolutionPath="[localProject]" Result="[ccprojName]" />
|
||||||
|
<Assign x:TypeArguments="x:String" DisplayName="Set Project to build CSPack" To="[MSBuildArguments]" Value="[String.Format("/t:{0}:Publish /p:PublishDir=""{1}/app.publish/"" {2}", ccprojName, outputDirectory, MSBuildArguments)]" />
|
||||||
|
<If Condition="[Not String.IsNullOrEmpty(azureCloudAppProfile.AzureServiceConfiguration)]" DisplayName="If Service Configuration is specified" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<Assign x:TypeArguments="x:String" DisplayName="Set Azure Service Configuration" To="[MSBuildArguments]" Value="[String.Format("/p:TargetProfile={0} {1}", azureCloudAppProfile.AzureServiceConfiguration, MSBuildArguments)]" />
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
</Sequence>
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
<If Condition="[Not String.IsNullOrEmpty(AlternateWebDeployPublishProfileName) AndAlso (deploymentEnvironment.EnvironmentMetadata.Kind = Microsoft.TeamFoundation.Build.Client.DeploymentEnvironmentKind.AzureWebSite)]" DisplayName="If DeploymentEnvironment is Azure Web Site" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<Assign x:TypeArguments="x:String" DisplayName="Set Web Deploy Publish Profile" To="[MSBuildArguments]" Value="[String.Format("/p:WebPublishMethod=Package;PublishProfile=""{0}"" {1}", AlternateWebDeployPublishProfileName, MSBuildArguments)]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
<mtbwa:MSBuild CommandLineArguments="[String.Format("/p:SkipInvalidConfigurations=true {0}", MSBuildArguments)]" Configuration="[ConfigurationToBuild.Configuration]" DisplayName="Run MSBuild for Project" GenerateVSPropsFile="[True]" LogFileDropLocation="[logFileDropLocation]" MaxProcesses="[If (MSBuildMultiProc, 0, 1)]" OutDir="[outputDirectory]" Platform="[ConfigurationToBuild.Platform]" Project="[localProject]" RunCodeAnalysis="[RunCodeAnalysis]" TargetsNotLogged="[New String() {"GetNativeManifest", "GetCopyToOutputDirectoryItems", "GetTargetPath"}]" ToolPlatform="[MSBuildPlatform]" Verbosity="[Verbosity]" DeployOnBuild="[CreateWebDeployPackage]" DeployIisAppPath="[targetSite]" />
|
||||||
|
</Sequence>
|
||||||
|
</TryCatch.Try>
|
||||||
|
<TryCatch.Catches>
|
||||||
|
<Catch x:TypeArguments="s:Exception">
|
||||||
|
<ActivityAction x:TypeArguments="s:Exception">
|
||||||
|
<ActivityAction.Argument>
|
||||||
|
<DelegateInArgument x:TypeArguments="s:Exception" Name="ex" />
|
||||||
|
</ActivityAction.Argument>
|
||||||
|
<Sequence DisplayName="Handle Exception">
|
||||||
|
<Sequence.Variables>
|
||||||
|
<Variable x:TypeArguments="scg:ICollection(mtbc:IQueuedBuild)" Name="failedRequests" />
|
||||||
|
</Sequence.Variables>
|
||||||
|
<mtbwa:SetBuildProperties CompilationStatus="[Microsoft.TeamFoundation.Build.Client.BuildPhaseStatus.Failed]" DisplayName="Set CompilationStatus to Failed" PropertiesToSet="CompilationStatus" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
<If Condition="[CreateWorkItem]" DisplayName="If CreateWorkItem" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<mtbwa:InvokeForReason DisplayName="Create Work Item for non-Shelveset Builds" Reason="Manual, IndividualCI, BatchedCI, Schedule, ScheduleForced, UserCreated">
|
||||||
|
<mtbwa:OpenWorkItem AssignedTo="[BuildDetail.RequestedFor]" Comment="["This work item was created by TFS Build on a build failure."]" CustomFields="[New Dictionary(Of String, String) From { {"System.Reason", "Build Failure"}, {"Microsoft.VSTS.TCM.ReproSteps", "Start the build using TFS Build"}, {"Severity", "1 - Critical"} }]" DisplayName="Create Work Item" Title="[String.Format("Build Failure in Build: {0}", BuildDetail.BuildNumber)]" Type="["Bug"]" />
|
||||||
|
</mtbwa:InvokeForReason>
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
<mtbwa:GetApprovedRequests DisplayName="Get Requests Approved for Check In" Result="[failedRequests]" mtbwt:BuildTrackingParticipant.Importance="None" />
|
||||||
|
<mtbwa:RetryRequests Behavior="[Microsoft.TeamFoundation.Build.Workflow.Activities.RetryBehavior.DoNotBatch]" DisplayName="Mark Requests for Retry" Requests="[failedRequests]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
<Rethrow DisplayName="Rethrow the exception so the build will stop" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
</Sequence>
|
||||||
|
</ActivityAction>
|
||||||
|
</Catch>
|
||||||
|
</TryCatch.Catches>
|
||||||
|
</TryCatch>
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
<If Condition="[Not DisableTests]" DisplayName="If Not DisableTests" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<Sequence DisplayName="Run Tests" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If Condition="[Not TestSpecs Is Nothing]" DisplayName="If Not TestSpecs Is Nothing" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<ForEach x:TypeArguments="mtbwa:TestSpec" DisplayName="For Each TestSpec in TestSpecs" Values="[TestSpecs]" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<ActivityAction x:TypeArguments="mtbwa:TestSpec">
|
||||||
|
<ActivityAction.Argument>
|
||||||
|
<DelegateInArgument x:TypeArguments="mtbwa:TestSpec" Name="spec" />
|
||||||
|
</ActivityAction.Argument>
|
||||||
|
<TryCatch DisplayName="Try Run Tests" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<TryCatch.Try>
|
||||||
|
<If Condition="[TypeOf spec Is Microsoft.TeamFoundation.Build.Workflow.Activities.AgileTestPlatformSpec]" DisplayName="If spec Is AgileTestPlatformSpec" mtbwt:BuildTrackingParticipant.Importance="None">
|
||||||
|
<If.Then>
|
||||||
|
<Sequence DisplayName="Run Visual Studio Test Runner for Test Sources" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<Sequence.Variables>
|
||||||
|
<Variable x:TypeArguments="mtbwa:AgileTestPlatformSpec" Name="agileTestPlatformAssembly" />
|
||||||
|
<Variable x:TypeArguments="scg:IEnumerable(x:String)" Name="agileTestPlatformAssemblies" />
|
||||||
|
</Sequence.Variables>
|
||||||
|
<Assign x:TypeArguments="mtbwa:AgileTestPlatformSpec" DisplayName="Assign spec to agileTestPlatformAssembly" To="[agileTestPlatformAssembly]" Value="[DirectCast(spec, Microsoft.TeamFoundation.Build.Workflow.Activities.AgileTestPlatformSpec)]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
<mtbwa:FindMatchingFiles DisplayName="Find Visual Studio Test Platform Test Assemblies" MatchPattern="[String.Format("{0}\{1}", outputDirectory, agileTestPlatformAssembly.AssemblyFileSpec)]" Result="[agileTestPlatformAssemblies]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
<If Condition="[agileTestPlatformAssemblies.Count() > 0]" DisplayName="If Visual Studio Test Platform Test Assemblies Found" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<If Condition="[agileTestPlatformAssembly.HasRunSettingsFile]" DisplayName="If agileTestPlatformAssembly.HasRunSettingsFile" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<Sequence DisplayName="Find Run Settings File And Run Visual Studio Test Runner" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<Sequence.Variables>
|
||||||
|
<Variable x:TypeArguments="x:String" Name="localRunSettings" />
|
||||||
|
</Sequence.Variables>
|
||||||
|
<mtbwa:GenerateRunSettings DisplayName="Generate Run Settings File" RunSettingsForTestRun="[agileTestPlatformAssembly.RunSettingsForTestRun]" Result="[localRunSettings]" Workspace="[Workspace]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
<mtbwa:RunTests DisplayName="Run Visual Studio Test Runner for Test Sources" RunName="[agileTestPlatformAssembly.RunName]" Flavor="[ConfigurationToBuild.Configuration]" Platform="[ConfigurationToBuild.Platform]" TestSources="[agileTestPlatformAssemblies]" RunSettings="[localRunSettings]" TestCaseFilter="[agileTestPlatformAssembly.TestCaseFilter]" ExecutionPlatform="[agileTestPlatformAssembly.ExecutionPlatform]" />
|
||||||
|
</Sequence>
|
||||||
|
</If.Then>
|
||||||
|
<If.Else>
|
||||||
|
<mtbwa:RunTests DisplayName="Run Visual Studio Test Runner for Test Sources" RunName="[agileTestPlatformAssembly.RunName]" Flavor="[ConfigurationToBuild.Configuration]" Platform="[ConfigurationToBuild.Platform]" TestSources="[agileTestPlatformAssemblies]" TestCaseFilter="[agileTestPlatformAssembly.TestCaseFilter]" ExecutionPlatform="[agileTestPlatformAssembly.ExecutionPlatform]" />
|
||||||
|
</If.Else>
|
||||||
|
</If>
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
</Sequence>
|
||||||
|
</If.Then>
|
||||||
|
<If.Else>
|
||||||
|
<If Condition="[TypeOf spec Is Microsoft.TeamFoundation.Build.Workflow.Activities.TestMetadataFileSpec]" DisplayName="If spec Is TestMetadataFileSpec" mtbwt:BuildTrackingParticipant.Importance="None">
|
||||||
|
<If.Then>
|
||||||
|
<Sequence DisplayName="Run MSTest for Metadata File">
|
||||||
|
<Sequence.Variables>
|
||||||
|
<Variable x:TypeArguments="mtbwa:TestMetadataFileSpec" Name="testMetadataFile" />
|
||||||
|
<Variable x:TypeArguments="x:String" Name="localTestMetadata" />
|
||||||
|
</Sequence.Variables>
|
||||||
|
<Assign x:TypeArguments="mtbwa:TestMetadataFileSpec" DisplayName="Assign spec to testMetadataFile" To="[testMetadataFile]" Value="[DirectCast(spec, Microsoft.TeamFoundation.Build.Workflow.Activities.TestMetadataFileSpec)]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
<mtbwa:ConvertWorkspaceItem DisplayName="Convert Server Path to Local Path" Input="[testMetadataFile.MetadataFileName]" Result="[localTestMetadata]" Workspace="[Workspace]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
<mtbwa:MSTest RunTitle="[testMetadataFile.RunName]" Category="[testMetadataFile.CategoryFilter]" DisplayName="Run MSTest for Metadata File" Flavor="[ConfigurationToBuild.Configuration]" MaxPriority="[testMetadataFile.MaximumPriority]" MinPriority="[testMetadataFile.MinimumPriority]" PathToResultsFilesRoot="[TestResultsDirectory]" Platform="[ConfigurationToBuild.Platform]" SearchPathRoot="[outputDirectory]" TestLists="[testMetadataFile.TestLists]" TestMetadata="[localTestMetadata]" TestSettings="[String.Empty]" CommandLineArguments="[testMetadataFile.MSTestCommandLineArgs]" />
|
||||||
|
</Sequence>
|
||||||
|
</If.Then>
|
||||||
|
<If.Else>
|
||||||
|
<Sequence DisplayName="Run MSTest for Test Assemblies" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<Sequence.Variables>
|
||||||
|
<Variable x:TypeArguments="mtbwa:TestAssemblySpec" Name="testAssembly" />
|
||||||
|
<Variable x:TypeArguments="scg:IEnumerable(x:String)" Name="testAssemblies" />
|
||||||
|
<Variable x:TypeArguments="x:String" Default="[String.Empty]" Name="testFlavor" />
|
||||||
|
<Variable x:TypeArguments="x:String" Default="[String.Empty]" Name="testPlatform" />
|
||||||
|
</Sequence.Variables>
|
||||||
|
<Assign x:TypeArguments="mtbwa:TestAssemblySpec" DisplayName="Assign spec to testAssembly" To="[testAssembly]" Value="[DirectCast(spec, Microsoft.TeamFoundation.Build.Workflow.Activities.TestAssemblySpec)]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
<mtbwa:FindMatchingFiles DisplayName="Find Test Assemblies" MatchPattern="[String.Format("{0}\{1}", outputDirectory, testAssembly.AssemblyFileSpec)]" Result="[testAssemblies]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
<If Condition="[testAssemblies.Count() > 0]" DisplayName="If Test Assemblies Found" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<If Condition="[testAssembly.HasTestSettingsFile]" DisplayName="If testAssembly.HasTestSettingsFile" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<Sequence DisplayName="Find Test Settings File And Run MSTest" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<Sequence.Variables>
|
||||||
|
<Variable x:TypeArguments="x:String" Name="localTestSettings" />
|
||||||
|
</Sequence.Variables>
|
||||||
|
<mtbwa:ConvertWorkspaceItem DisplayName="Convert Server Path to Local Path" Input="[testAssembly.TestSettingsFileName]" Result="[localTestSettings]" Workspace="[Workspace]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
<mtbwa:MSTest RunTitle="[testAssembly.RunName]" Category="[testAssembly.CategoryFilter]" DisplayName="Run MSTest for Test Assemblies" Flavor="[ConfigurationToBuild.Configuration]" MaxPriority="[testAssembly.MaximumPriority]" MinPriority="[testAssembly.MinimumPriority]" PathToResultsFilesRoot="[TestResultsDirectory]" Platform="[ConfigurationToBuild.Platform]" SearchPathRoot="[outputDirectory]" TestContainers="[testAssemblies]" TestSettings="[localTestSettings]" CommandLineArguments="[testAssembly.MSTestCommandLineArgs]" />
|
||||||
|
</Sequence>
|
||||||
|
</If.Then>
|
||||||
|
<If.Else>
|
||||||
|
<mtbwa:MSTest RunTitle="[testAssembly.RunName]" Category="[testAssembly.CategoryFilter]" DisplayName="Run MSTest for Test Assemblies" Flavor="[ConfigurationToBuild.Configuration]" MaxPriority="[testAssembly.MaximumPriority]" MinPriority="[testAssembly.MinimumPriority]" PathToResultsFilesRoot="[TestResultsDirectory]" Platform="[ConfigurationToBuild.Platform]" SearchPathRoot="[outputDirectory]" TestContainers="[testAssemblies]" CommandLineArguments="[testAssembly.MSTestCommandLineArgs]" />
|
||||||
|
</If.Else>
|
||||||
|
</If>
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
</Sequence>
|
||||||
|
</If.Else>
|
||||||
|
</If>
|
||||||
|
</If.Else>
|
||||||
|
</If>
|
||||||
|
</TryCatch.Try>
|
||||||
|
<TryCatch.Catches>
|
||||||
|
<Catch x:TypeArguments="s:Exception">
|
||||||
|
<ActivityAction x:TypeArguments="s:Exception">
|
||||||
|
<ActivityAction.Argument>
|
||||||
|
<DelegateInArgument x:TypeArguments="s:Exception" Name="testException" />
|
||||||
|
</ActivityAction.Argument>
|
||||||
|
<Sequence DisplayName="Handle Test Run Exception">
|
||||||
|
<Sequence.Variables>
|
||||||
|
<Variable x:TypeArguments="scg:ICollection(mtbc:IQueuedBuild)" Name="failedRequests" />
|
||||||
|
</Sequence.Variables>
|
||||||
|
<If Condition="[Not (TypeOf testException Is Microsoft.TeamFoundation.Build.Workflow.Activities.TestFailureException)]" DisplayName="If testException is NOT TestFailureException" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<mtbwa:WriteBuildError DisplayName="Write Test Failure Message" Message="[testException.Message]" />
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
<mtbwa:SetBuildProperties DisplayName="Set TestStatus to Failed" PropertiesToSet="TestStatus" TestStatus="[Microsoft.TeamFoundation.Build.Client.BuildPhaseStatus.Failed]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
<If Condition="[spec.FailBuildOnFailure]" DisplayName="If spec.FailBuildOnFailure" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<Assign x:TypeArguments="s:Boolean" DisplayName="Set treatTestFailureAsBuildFailure to True" To="[treatTestFailureAsBuildFailure]" Value="[True]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
<mtbwa:GetApprovedRequests DisplayName="Get Requests Approved for Check In" Result="[failedRequests]" mtbwt:BuildTrackingParticipant.Importance="None" />
|
||||||
|
<mtbwa:RetryRequests Behavior="[Microsoft.TeamFoundation.Build.Workflow.Activities.RetryBehavior.DoNotBatch]" DisplayName="Mark Requests for Retry" Requests="[failedRequests]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
</Sequence>
|
||||||
|
</ActivityAction>
|
||||||
|
</Catch>
|
||||||
|
</TryCatch.Catches>
|
||||||
|
</TryCatch>
|
||||||
|
</ActivityAction>
|
||||||
|
</ForEach>
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
</Sequence>
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
<If Condition="[deployOutput]" DisplayName="Deploy Output" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<If Condition="[treatTestFailureAsBuildFailure And (BuildDetail.TestStatus = Microsoft.TeamFoundation.Build.Client.BuildPhaseStatus.Failed)]" DisplayName="Deploy on Test Success" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<mtbwa:WriteBuildMessage DisplayName="Write Message" Message="Skipping Deployment Due to Test Failures." Importance="[Microsoft.TeamFoundation.Build.Client.BuildMessageImportance.Normal]" />
|
||||||
|
</If.Then>
|
||||||
|
<If.Else>
|
||||||
|
<If Condition="[Not azureWebSiteProfile Is Nothing]" DisplayName="Publish Output">
|
||||||
|
<If.Then>
|
||||||
|
<Sequence mtbwt:BuildTrackingParticipant.Importance="None">
|
||||||
|
<mtdwa:MSDeploy DisplayName="MSDeploy" BuildPath="[outputDirectory]" PublishEndpoint="[azureWebSiteProfile.PublishUrl]" TargetSite="[azureWebSiteProfile.MSDeploySite]" UserName="[azureWebSiteProfile.UserName]" Password="[azureWebSiteProfile.UserPWD]" AllowUntrustedCertificates="[AllowUntrustedCertificates]" />
|
||||||
|
<mtbwa:WriteCustomSummaryInformation DisplayName="Write Custom Deployment Summary" Message="[String.Format("Your Website was deployed to : [{0}]({0})",azureWebSiteProfile.DestinationAppUrl.ToString())]" SectionDisplayName="Deployment Summary" SectionKey="customSummarySectionKey" SectionPriority="160" />
|
||||||
|
<mtdwa:SetCurrentAzureWebsiteBuildNumber DisplayName="Set the current build number in the web site portal." ConnectedService="[deploymentEnvironment.ConnectedService]" AllowUntrustedCertificates="[AllowUntrustedCertificates]" WebsiteEnvironment="[deploymentEnvironment]" mtbwt:BuildTrackingParticipant.Importance="Normal" />
|
||||||
|
</Sequence>
|
||||||
|
</If.Then>
|
||||||
|
<If.Else>
|
||||||
|
<If Condition="[deploymentEnvironment.EnvironmentMetadata.Kind = Microsoft.TeamFoundation.Build.Client.DeploymentEnvironmentKind.AzureCloudApp]" DisplayName="DeploymentEnvironment is Azure Cloud Service" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<Sequence mtbwt:BuildTrackingParticipant.Importance="None">
|
||||||
|
<mtdwa:DeployAzureCloudApp DisplayName="Deploy application to Azure" ConnectedService="[deploymentEnvironment.ConnectedService]" DeploymentProfile="[azureCloudAppProfile]" AllowUntrustedCertificates="[AllowUntrustedCertificates]" BuildPath="[outputDirectory]" />
|
||||||
|
</Sequence>
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
</If.Else>
|
||||||
|
</If>
|
||||||
|
</If.Else>
|
||||||
|
</If>
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
</Sequence>
|
||||||
|
<If Condition="[BuildDetail.CompilationStatus = Microsoft.TeamFoundation.Build.Client.BuildPhaseStatus.Unknown]" DisplayName="If CompilationStatus = Unknown" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<mtbwa:SetBuildProperties CompilationStatus="[Microsoft.TeamFoundation.Build.Client.BuildPhaseStatus.Succeeded]" DisplayName="Set CompilationStatus to Succeeded" PropertiesToSet="CompilationStatus" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
<If Condition="[BuildDetail.TestStatus = Microsoft.TeamFoundation.Build.Client.BuildPhaseStatus.Unknown]" DisplayName="If TestStatus = Unknown" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<mtbwa:SetBuildProperties DisplayName="Set TestStatus to Succeeded" PropertiesToSet="TestStatus" TestStatus="[Microsoft.TeamFoundation.Build.Client.BuildPhaseStatus.Succeeded]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
<If Condition="[treatTestFailureAsBuildFailure And (BuildDetail.TestStatus = Microsoft.TeamFoundation.Build.Client.BuildPhaseStatus.Failed)]" DisplayName="If TreatTestFailureAsBuildFailure And (TestStatus = Failed)" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<mtbwa:SetBuildProperties DisplayName="Set Status to Failed" PropertiesToSet="Status" Status="[Microsoft.TeamFoundation.Build.Client.BuildStatus.Failed]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
</Sequence>
|
||||||
|
</TryCatch.Try>
|
||||||
|
<TryCatch.Catches>
|
||||||
|
<Catch x:TypeArguments="s:Exception">
|
||||||
|
<ActivityAction x:TypeArguments="s:Exception">
|
||||||
|
<ActivityAction.Argument>
|
||||||
|
<DelegateInArgument x:TypeArguments="s:Exception" Name="compilationExceptionArgument" />
|
||||||
|
</ActivityAction.Argument>
|
||||||
|
<Assign x:TypeArguments="s:Exception" DisplayName="Save the Compilation Exception" To="[compilationException]" Value="[compilationExceptionArgument]" mtbwt:BuildTrackingParticipant.Importance="None" />
|
||||||
|
</ActivityAction>
|
||||||
|
</Catch>
|
||||||
|
</TryCatch.Catches>
|
||||||
|
</TryCatch>
|
||||||
|
<If Condition="[AssociateChangesetsAndWorkItems]" DisplayName="If AssociateChangesetsAndWorkItems" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<If Condition="[CreateLabel]" DisplayName="If CreateLabel and AssociateChangesetsAndWorkItems" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<mtbwa:InvokeForReason DisplayName="Associate Changesets and Work Items for non-Shelveset Builds" Reason="Manual, IndividualCI, BatchedCI, Schedule, ScheduleForced, UserCreated">
|
||||||
|
<mtbwa:AssociateChangesetsAndWorkItems DisplayName="Associate Changesets and Work Items" Result="[associatedChangesets]" />
|
||||||
|
</mtbwa:InvokeForReason>
|
||||||
|
</If.Then>
|
||||||
|
<If.Else>
|
||||||
|
<mtbwa:WriteBuildWarning DisplayName="Write Associate Changesets and Work Items Warning" Message="Cannot Associate Changesets and Work Items because the Label Sources option is set to False." />
|
||||||
|
</If.Else>
|
||||||
|
</If>
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
</Parallel>
|
||||||
|
<If Condition="[Not compilationException Is Nothing]" DisplayName="If a Compilation Exception Occurred" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<Throw DisplayName="Rethrow Compilation Exception" Exception="[compilationException]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
<Parallel DisplayName="Get Impacted Tests, Index Sources and Publish Symbols">
|
||||||
|
<If Condition="[PerformTestImpactAnalysis]" DisplayName="If PerformTestImpactAnalysis" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<Sequence DisplayName="Get Impacted Tests" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<Sequence.Variables>
|
||||||
|
<Variable x:TypeArguments="scg:IEnumerable(x:String)" Name="assemblies" />
|
||||||
|
</Sequence.Variables>
|
||||||
|
<mtbwa:FindMatchingFiles DisplayName="Find Build Outputs" MatchPattern="[String.Format("{0}\**\*.dll;{0}\**\*.exe", BinariesDirectory)]" Result="[assemblies]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
<mttbb:GetImpactedTests Assemblies="[assemblies]" AssociatedChangesets="[associatedChangesets]" BinariesRoot="[BinariesDirectory]" Build="[BuildDetail]" CodeChanges="{x:Null}" DisplayName="Get Impacted Tests" ImpactedTests="{x:Null}" Workspace="[Workspace]" />
|
||||||
|
</Sequence>
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
<If Condition="[SourceAndSymbolServerSettings.IndexSources Or SourceAndSymbolServerSettings.HasSymbolStorePath]" DisplayName="If SourceAndSymbolServerSettings.IndexSources Or SourceAndSymbolServerSettings.HasSymbolStorePath" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<mtbwa:InvokeForReason DisplayName="Index Sources and Publish Symbols for Triggered Builds" Reason="Triggered">
|
||||||
|
<mtbwa:InvokeForReason.Variables>
|
||||||
|
<Variable x:TypeArguments="scg:IEnumerable(x:String)" Name="symbolFiles" />
|
||||||
|
</mtbwa:InvokeForReason.Variables>
|
||||||
|
<mtbwa:FindMatchingFiles DisplayName="Find Symbol Files" MatchPattern="[String.Format("{0}\**\*.pdb", BinariesDirectory)]" Result="[symbolFiles]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
<If Condition="[SourceAndSymbolServerSettings.IndexSources]" DisplayName="If SourceAndSymbolServerSettings.IndexSources" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<TryCatch DisplayName="Try Index Sources" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<TryCatch.Try>
|
||||||
|
<mtbwa:IndexSources DisplayName="Index Sources" FileList="[symbolFiles]" />
|
||||||
|
</TryCatch.Try>
|
||||||
|
<TryCatch.Catches>
|
||||||
|
<Catch x:TypeArguments="s:Exception">
|
||||||
|
<ActivityAction x:TypeArguments="s:Exception">
|
||||||
|
<ActivityAction.Argument>
|
||||||
|
<DelegateInArgument x:TypeArguments="s:Exception" Name="exception" />
|
||||||
|
</ActivityAction.Argument>
|
||||||
|
<mtbwa:WriteBuildError DisplayName="Write Indexing Sources Error" Message="[exception.Message]" />
|
||||||
|
</ActivityAction>
|
||||||
|
</Catch>
|
||||||
|
</TryCatch.Catches>
|
||||||
|
</TryCatch>
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
<If Condition="[SourceAndSymbolServerSettings.HasSymbolStorePath]" DisplayName="If SourceAndSymbolServerSettings.HasSymbolStorePath" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<TryCatch DisplayName="Try Publish Symbols" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<TryCatch.Try>
|
||||||
|
<mtbwa:SharedResourceScope DisplayName="Synchronize Access to Symbol Store" MaxExecutionTime="[TimeSpan.Zero]" MaxWaitTime="[New TimeSpan(1, 0, 0)]" ResourceName="[SourceAndSymbolServerSettings.SymbolStorePath]" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<mtbwa:PublishSymbols DisplayName="Publish Symbols" FileList="[symbolFiles]" ProductName="[BuildDetail.BuildDefinition.Name]" StorePath="[SourceAndSymbolServerSettings.SymbolStorePath]" Version="[BuildDetail.BuildNumber]" />
|
||||||
|
</mtbwa:SharedResourceScope>
|
||||||
|
</TryCatch.Try>
|
||||||
|
<TryCatch.Catches>
|
||||||
|
<Catch x:TypeArguments="s:Exception">
|
||||||
|
<ActivityAction x:TypeArguments="s:Exception">
|
||||||
|
<ActivityAction.Argument>
|
||||||
|
<DelegateInArgument x:TypeArguments="s:Exception" Name="exception" />
|
||||||
|
</ActivityAction.Argument>
|
||||||
|
<mtbwa:WriteBuildError DisplayName="Write Publishing Symbols Error" Message="[exception.Message]" />
|
||||||
|
</ActivityAction>
|
||||||
|
</Catch>
|
||||||
|
</TryCatch.Catches>
|
||||||
|
</TryCatch>
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
</mtbwa:InvokeForReason>
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
</Parallel>
|
||||||
|
</Sequence>
|
||||||
|
</TryCatch.Try>
|
||||||
|
</TryCatch>
|
||||||
|
</mtbwa:AgentScope>
|
||||||
|
<mtbwa:InvokeForReason DisplayName="Check In Gated Changes for CheckInShelveset Builds" Reason="CheckInShelveset">
|
||||||
|
<mtbwa:CheckInGatedChanges DisplayName="Check In Gated Changes" />
|
||||||
|
</mtbwa:InvokeForReason>
|
||||||
|
</Sequence>
|
||||||
|
</Activity>
|
543
BuildProcessTemplates/DefaultTemplate.11.1.xaml
Normal file
@ -0,0 +1,543 @@
|
|||||||
|
<Activity mc:Ignorable="sad" x:Class="TfsBuild.Process" xmlns="http://schemas.microsoft.com/netfx/2009/xaml/activities" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:mt="clr-namespace:Microsoft.TeamFoundation;assembly=Microsoft.TeamFoundation.Common" xmlns:mtbc="clr-namespace:Microsoft.TeamFoundation.Build.Client;assembly=Microsoft.TeamFoundation.Build.Client" xmlns:mtbw="clr-namespace:Microsoft.TeamFoundation.Build.Workflow;assembly=Microsoft.TeamFoundation.Build.Workflow" xmlns:mtbwa="clr-namespace:Microsoft.TeamFoundation.Build.Workflow.Activities;assembly=Microsoft.TeamFoundation.Build.Workflow" xmlns:mtbwt="clr-namespace:Microsoft.TeamFoundation.Build.Workflow.Tracking;assembly=Microsoft.TeamFoundation.Build.Workflow" xmlns:mttbb="clr-namespace:Microsoft.TeamFoundation.TestImpact.BuildIntegration.BuildActivities;assembly=Microsoft.TeamFoundation.TestImpact.BuildIntegration" xmlns:mtvc="clr-namespace:Microsoft.TeamFoundation.VersionControl.Client;assembly=Microsoft.TeamFoundation.VersionControl.Client" xmlns:mtvco="clr-namespace:Microsoft.TeamFoundation.VersionControl.Common;assembly=Microsoft.TeamFoundation.VersionControl.Common" xmlns:mva="clr-namespace:Microsoft.VisualBasic.Activities;assembly=System.Activities" xmlns:s="clr-namespace:System;assembly=mscorlib" xmlns:sad="http://schemas.microsoft.com/netfx/2009/xaml/activities/presentation" xmlns:sad1="clr-namespace:System.Activities.Debugger;assembly=System.Activities" xmlns:scg="clr-namespace:System.Collections.Generic;assembly=mscorlib" xmlns:sl="clr-namespace:System.Linq;assembly=System.Core" xmlns:this="clr-namespace:TfsBuild;" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
|
||||||
|
<x:Members>
|
||||||
|
<x:Property Name="BuildSettings" Type="InArgument(mtbwa:BuildSettings)" />
|
||||||
|
<x:Property Name="TestSpecs" Type="InArgument(mtbwa:TestSpecList)" />
|
||||||
|
<x:Property Name="BuildNumberFormat" Type="InArgument(x:String)" />
|
||||||
|
<x:Property Name="SolutionSpecificBuildOutputs" Type="InArgument(x:Boolean)" />
|
||||||
|
<x:Property Name="CleanWorkspace" Type="InArgument(mtbwa:CleanWorkspaceOption)" />
|
||||||
|
<x:Property Name="RunCodeAnalysis" Type="InArgument(mtbwa:CodeAnalysisOption)" />
|
||||||
|
<x:Property Name="SourceAndSymbolServerSettings" Type="InArgument(mtbwa:SourceAndSymbolServerSettings)" />
|
||||||
|
<x:Property Name="AgentSettings" Type="InArgument(mtbwa:AgentSettings)" />
|
||||||
|
<x:Property Name="AssociateChangesetsAndWorkItems" Type="InArgument(x:Boolean)" />
|
||||||
|
<x:Property Name="CreateWorkItem" Type="InArgument(x:Boolean)" />
|
||||||
|
<x:Property Name="MSBuildArguments" Type="InArgument(x:String)" />
|
||||||
|
<x:Property Name="MSBuildPlatform" Type="InArgument(mtbwa:ToolPlatform)" />
|
||||||
|
<x:Property Name="MSBuildMultiProc" Type="InArgument(x:Boolean)" />
|
||||||
|
<x:Property Name="PerformTestImpactAnalysis" Type="InArgument(x:Boolean)" />
|
||||||
|
<x:Property Name="CreateLabel" Type="InArgument(x:Boolean)" />
|
||||||
|
<x:Property Name="DisableTests" Type="InArgument(x:Boolean)" />
|
||||||
|
<x:Property Name="GetVersion" Type="InArgument(x:String)" />
|
||||||
|
<x:Property Name="PrivateDropLocation" Type="InArgument(x:String)" />
|
||||||
|
<x:Property Name="Verbosity" Type="InArgument(mtbw:BuildVerbosity)" />
|
||||||
|
<x:Property Name="Metadata" Type="mtbw:ProcessParameterMetadataCollection" />
|
||||||
|
<x:Property Name="SupportedReasons" Type="mtbc:BuildReason" />
|
||||||
|
<x:Property Name="BuildProcessVersion" Type="x:String" />
|
||||||
|
</x:Members>
|
||||||
|
<this:Process.BuildSettings>[New Microsoft.TeamFoundation.Build.Workflow.Activities.BuildSettings()]</this:Process.BuildSettings>
|
||||||
|
<this:Process.DisableTests>[False]</this:Process.DisableTests>
|
||||||
|
<this:Process.TestSpecs>[New Microsoft.TeamFoundation.Build.Workflow.Activities.TestSpecList(New Microsoft.TeamFoundation.Build.Workflow.Activities.AgileTestPlatformSpec("**\*test*.dll"))]</this:Process.TestSpecs>
|
||||||
|
<this:Process.BuildNumberFormat>["$(BuildDefinitionName)_$(Date:yyyyMMdd)$(Rev:.r)"]</this:Process.BuildNumberFormat>
|
||||||
|
<this:Process.SolutionSpecificBuildOutputs>[False]</this:Process.SolutionSpecificBuildOutputs>
|
||||||
|
<this:Process.AssociateChangesetsAndWorkItems>[True]</this:Process.AssociateChangesetsAndWorkItems>
|
||||||
|
<this:Process.CreateWorkItem>[True]</this:Process.CreateWorkItem>
|
||||||
|
<this:Process.CleanWorkspace>[Microsoft.TeamFoundation.Build.Workflow.Activities.CleanWorkspaceOption.All]</this:Process.CleanWorkspace>
|
||||||
|
<this:Process.MSBuildArguments>
|
||||||
|
<InArgument x:TypeArguments="x:String" />
|
||||||
|
</this:Process.MSBuildArguments>
|
||||||
|
<this:Process.RunCodeAnalysis>[Microsoft.TeamFoundation.Build.Workflow.Activities.CodeAnalysisOption.AsConfigured]</this:Process.RunCodeAnalysis>
|
||||||
|
<this:Process.MSBuildMultiProc>[True]</this:Process.MSBuildMultiProc>
|
||||||
|
<this:Process.MSBuildPlatform>[Microsoft.TeamFoundation.Build.Workflow.Activities.ToolPlatform.Auto]</this:Process.MSBuildPlatform>
|
||||||
|
<this:Process.PerformTestImpactAnalysis>[True]</this:Process.PerformTestImpactAnalysis>
|
||||||
|
<this:Process.SourceAndSymbolServerSettings>[New Microsoft.TeamFoundation.Build.Workflow.Activities.SourceAndSymbolServerSettings(True, Nothing)]</this:Process.SourceAndSymbolServerSettings>
|
||||||
|
<this:Process.CreateLabel>[True]</this:Process.CreateLabel>
|
||||||
|
<this:Process.GetVersion>
|
||||||
|
<InArgument x:TypeArguments="x:String" />
|
||||||
|
</this:Process.GetVersion>
|
||||||
|
<this:Process.AgentSettings>[New Microsoft.TeamFoundation.Build.Workflow.Activities.AgentSettings() With {.MaxWaitTime = New System.TimeSpan(4, 0, 0), .MaxExecutionTime = New System.TimeSpan(0, 0, 0), .TagComparison = Microsoft.TeamFoundation.Build.Workflow.Activities.TagComparison.MatchExactly }]</this:Process.AgentSettings>
|
||||||
|
<this:Process.Verbosity>[Microsoft.TeamFoundation.Build.Workflow.BuildVerbosity.Normal]</this:Process.Verbosity>
|
||||||
|
<this:Process.Metadata>
|
||||||
|
<mtbw:ProcessParameterMetadataCollection>
|
||||||
|
<mtbw:ProcessParameterMetadata BrowsableWhen="EditingDefinition" Category="#300 Advanced" DisplayName="MSBuild Multi-Proc" Description="Enable MSBuild Multi-proc to build your solutions' projects in parallel, when possible, using all available processors on the build server." ParameterName="MSBuildMultiProc" />
|
||||||
|
<mtbw:ProcessParameterMetadata BrowsableWhen="EditingDefinition" Category="#300 Advanced" DisplayName="Solution Specific Build Outputs" Description="True will put build outputs into folders based on the solution name. False will put all build outputs into the same folder." ParameterName="SolutionSpecificBuildOutputs" />
|
||||||
|
</mtbw:ProcessParameterMetadataCollection>
|
||||||
|
</this:Process.Metadata>
|
||||||
|
<this:Process.SupportedReasons>All</this:Process.SupportedReasons>
|
||||||
|
<this:Process.BuildProcessVersion>11.0</this:Process.BuildProcessVersion>
|
||||||
|
<mva:VisualBasic.Settings>Assembly references and imported namespaces serialized as XML namespaces</mva:VisualBasic.Settings>
|
||||||
|
<Sequence mtbwt:BuildTrackingParticipant.Importance="None">
|
||||||
|
<Sequence.Variables>
|
||||||
|
<Variable x:TypeArguments="mtbc:IBuildDetail" Name="BuildDetail" />
|
||||||
|
<Variable x:TypeArguments="x:String" Name="DropLocation" />
|
||||||
|
</Sequence.Variables>
|
||||||
|
<mtbwa:GetBuildDetail DisplayName="Get the Build" Result="[BuildDetail]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
<Sequence DisplayName="Update Drop Location" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<mtbwa:InvokeForReason DisplayName="Update Build Number for Triggered Builds" Reason="Triggered">
|
||||||
|
<mtbwa:UpdateBuildNumber BuildNumberFormat="[BuildNumberFormat]" DisplayName="Update Build Number" />
|
||||||
|
</mtbwa:InvokeForReason>
|
||||||
|
<If Condition="[(Not String.IsNullOrEmpty(BuildDetail.DropLocationRoot)) AndAlso (BuildDetail.Reason And Microsoft.TeamFoundation.Build.Client.BuildReason.Triggered) = BuildDetail.Reason]" DisplayName="If Build Reason is Triggered" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<Sequence mtbwt:BuildTrackingParticipant.Importance="None">
|
||||||
|
<Assign x:TypeArguments="x:String" mtbwt:BuildTrackingParticipant.Importance="None" Value="[BuildDropProvider.CombinePaths(BuildDetail.DropLocationRoot, BuildDetail.BuildDefinition.Name, BuildDetail.BuildNumber)]" To="[DropLocation]" />
|
||||||
|
<mtbwa:SetBuildProperties DisplayName="Set Drop Location" DropLocation="[DropLocation]" PropertiesToSet="DropLocation" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
</Sequence>
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
<If Condition="[(Not String.IsNullOrEmpty(PrivateDropLocation)) AndAlso BuildDetail.Reason = Microsoft.TeamFoundation.Build.Client.BuildReason.ValidateShelveset]" DisplayName="If Build Reason is ValidateShelveset" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<Sequence mtbwt:BuildTrackingParticipant.Importance="None">
|
||||||
|
<Assign x:TypeArguments="x:String" Value="[BuildDropProvider.CombinePaths(PrivateDropLocation, BuildDetail.BuildDefinition.Name, BuildDetail.BuildNumber)]" To="[DropLocation]" mtbwt:BuildTrackingParticipant.Importance="None" />
|
||||||
|
<mtbwa:SetBuildProperties DisplayName="Set Drop Location for Private Build" DropLocation="[DropLocation]" PropertiesToSet="DropLocation" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
</Sequence>
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
</Sequence>
|
||||||
|
<mtbwa:AgentScope DisplayName="Run On Agent" MaxExecutionTime="[AgentSettings.MaxExecutionTime]" MaxWaitTime="[AgentSettings.MaxWaitTime]" ReservationSpec="[AgentSettings.GetAgentReservationSpec()]">
|
||||||
|
<mtbwa:AgentScope.Variables>
|
||||||
|
<Variable x:TypeArguments="mtbc:IBuildAgent" Name="BuildAgent" />
|
||||||
|
<Variable x:TypeArguments="mtvc:Workspace" Name="Workspace" />
|
||||||
|
<Variable x:TypeArguments="x:String" Name="BuildDirectory" />
|
||||||
|
<Variable x:TypeArguments="x:String" Default="[BuildDetail.BuildNumber]" Name="LabelName" />
|
||||||
|
<Variable x:TypeArguments="x:String" Name="WorkspaceName" />
|
||||||
|
<Variable x:TypeArguments="x:String" Name="SourcesDirectory" />
|
||||||
|
<Variable x:TypeArguments="x:String" Name="BinariesDirectory" />
|
||||||
|
<Variable x:TypeArguments="x:String" Name="TestResultsDirectory" />
|
||||||
|
</mtbwa:AgentScope.Variables>
|
||||||
|
<Sequence DisplayName="Initialize Variables" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<mtbwa:GetBuildAgent DisplayName="Get the Agent" Result="[BuildAgent]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
<mtbwa:GetBuildDirectory DisplayName="Get the Build Directory" Result="[BuildDirectory]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
<Assign x:TypeArguments="x:String" DisplayName="Initialize Workspace Name" To="[WorkspaceName]" Value="[String.Format("{0}_{1}_{2}", BuildDetail.BuildDefinition.Id, Microsoft.TeamFoundation.LinkingUtilities.DecodeUri(BuildAgent.Uri.AbsoluteUri).ToolSpecificId, BuildAgent.ServiceHost.Name)]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
<Assign x:TypeArguments="x:String" DisplayName="Initialize Sources Directory" To="[SourcesDirectory]" Value="[String.Format("{0}\src", BuildDirectory)]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
<Assign x:TypeArguments="x:String" DisplayName="Initialize Binaries Directory" To="[BinariesDirectory]" Value="[String.Format("{0}\bin", BuildDirectory)]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
<Assign x:TypeArguments="x:String" DisplayName="Initialize TestResults Directory" To="[TestResultsDirectory]" Value="[String.Format("{0}\tst", BuildDirectory)]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
<If Condition="[Not BuildSettings.HasPlatformConfigurations]" DisplayName="If Not BuildSettings.HasPlatformConfigurations" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<AddToCollection x:TypeArguments="mtbwa:PlatformConfiguration" DisplayName="Use Default Platform Configuration" Collection="[BuildSettings.PlatformConfigurations]" Item="[Microsoft.TeamFoundation.Build.Workflow.Activities.PlatformConfiguration.Default]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
<If Condition="[WorkspaceName.Length > Microsoft.TeamFoundation.VersionControl.Common.RepositoryConstants.MaxWorkspaceNameSize]" DisplayName="If WorkspaceName > MaxSize" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<Sequence mtbwt:BuildTrackingParticipant.Importance="None">
|
||||||
|
<mtbwa:WriteBuildWarning DisplayName="Write Workspace Size Warning" Message="[String.Format("The workspace name '{0}' exceeds the maximum allowed limit of '{1}' characters. Truncating it to match the maximum limit.", WorkspaceName, Microsoft.TeamFoundation.VersionControl.Common.RepositoryConstants.MaxWorkspaceNameSize)]" />
|
||||||
|
<Assign x:TypeArguments="x:String" DisplayName="Truncate WorkspaceName to MaxSize" To="[WorkspaceName]" Value="[WorkspaceName.Substring(0, Microsoft.TeamFoundation.VersionControl.Common.RepositoryConstants.MaxWorkspaceNameSize).TrimEnd()]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
</Sequence>
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
</Sequence>
|
||||||
|
<Sequence DisplayName="Initialize Workspace" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<mtbwa:DeleteDirectory Directory="[TestResultsDirectory]" DisplayName="Delete Test Results Directory" Recursive="[True]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
<If Condition="[Not CleanWorkspace = Microsoft.TeamFoundation.Build.Workflow.Activities.CleanWorkspaceOption.None]" DisplayName="If Not CleanWorkspace = CleanWorkspaceOption.None" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<mtbwa:DeleteDirectory Directory="[BinariesDirectory]" DisplayName="Delete Binaries Directory" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
<If Condition="[CleanWorkspace = Microsoft.TeamFoundation.Build.Workflow.Activities.CleanWorkspaceOption.All]" DisplayName="If CleanWorkspace = CleanWorkspaceOption.All" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<Sequence DisplayName="Delete Workspace and Sources Directory" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<mtbwa:DeleteWorkspace DeleteLocalItems="[True]" DisplayName="Delete Workspace" Name="[WorkspaceName]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
<mtbwa:DeleteDirectory Directory="[SourcesDirectory]" DisplayName="Delete Sources Directory" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
</Sequence>
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
<mtbwa:CreateWorkspace BuildDirectory="[BuildDirectory]" Comment="["Workspace Created by Team Build"]" DisplayName="Create Workspace" Name="[WorkspaceName]" Result="[Workspace]" SourcesDirectory="[SourcesDirectory]" />
|
||||||
|
<If Condition="[CleanWorkspace = Microsoft.TeamFoundation.Build.Workflow.Activities.CleanWorkspaceOption.Outputs]" DisplayName="If CleanWorkspace = CleanWorkspaceOption.Outputs" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<ForEach x:TypeArguments="mtbwa:PlatformConfiguration" DisplayName="For Each Configuration in BuildSettings.PlatformConfigurations" Values="[BuildSettings.PlatformConfigurations]" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<ActivityAction x:TypeArguments="mtbwa:PlatformConfiguration">
|
||||||
|
<ActivityAction.Argument>
|
||||||
|
<DelegateInArgument x:TypeArguments="mtbwa:PlatformConfiguration" Name="platformConfiguration" />
|
||||||
|
</ActivityAction.Argument>
|
||||||
|
<Sequence DisplayName="Clean Configuration">
|
||||||
|
<If Condition="[BuildSettings.HasProjectsToBuild]" DisplayName="If BuildSettings.HasProjectsToBuild" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<ForEach x:TypeArguments="x:String" DisplayName="For Each Project in BuildSettings.ProjectsToBuild" Values="[BuildSettings.ProjectsToBuild]" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<ActivityAction x:TypeArguments="x:String">
|
||||||
|
<ActivityAction.Argument>
|
||||||
|
<DelegateInArgument x:TypeArguments="x:String" Name="serverBuildProjectItem" />
|
||||||
|
</ActivityAction.Argument>
|
||||||
|
<Sequence DisplayName="Clean Project" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<Sequence.Variables>
|
||||||
|
<Variable x:TypeArguments="x:String" Name="localBuildProjectItem" />
|
||||||
|
</Sequence.Variables>
|
||||||
|
<mtbwa:ConvertWorkspaceItem DisplayName="Convert Server Paths to Local Paths" Input="[serverBuildProjectItem]" Result="[localBuildProjectItem]" Workspace="[Workspace]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
<If Condition="[System.IO.File.Exists(localBuildProjectItem)]" DisplayName="If File.Exists(Project)" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<mtbwa:MSBuild CommandLineArguments="[String.Format("/p:SkipInvalidConfigurations=true {0}", MSBuildArguments)]" Configuration="[platformConfiguration.Configuration]" DisplayName="Run MSBuild for Project" GenerateVSPropsFile="[True]" MaxProcesses="[If (MSBuildMultiProc, 0, 1)]" OutDir="[BinariesDirectory]" Platform="[platformConfiguration.Platform]" Project="[localBuildProjectItem]" Targets="[New String() { "Clean" }]" TargetsNotLogged="[New String() {"GetNativeManifest", "GetCopyToOutputDirectoryItems", "GetTargetPath"}]" ToolPlatform="[MSBuildPlatform]" Verbosity="[Verbosity]" />
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
</Sequence>
|
||||||
|
</ActivityAction>
|
||||||
|
</ForEach>
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
</Sequence>
|
||||||
|
</ActivityAction>
|
||||||
|
</ForEach>
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
<mtbwa:SyncWorkspace DisplayName="Get Workspace" VersionOverride="[GetVersion]" Workspace="[Workspace]">
|
||||||
|
<mtbwa:SyncWorkspace.RequestsFailed>
|
||||||
|
<ActivityAction x:TypeArguments="scg:ICollection(mtbc:IQueuedBuild)">
|
||||||
|
<ActivityAction.Argument>
|
||||||
|
<DelegateInArgument x:TypeArguments="scg:ICollection(mtbc:IQueuedBuild)" Name="failedRequests" />
|
||||||
|
</ActivityAction.Argument>
|
||||||
|
<mtbwa:RetryRequests Behavior="[Microsoft.TeamFoundation.Build.Workflow.Activities.RetryBehavior.DoNotBatch]" DisplayName="Mark Requests for Retry" Requests="[failedRequests]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
</ActivityAction>
|
||||||
|
</mtbwa:SyncWorkspace.RequestsFailed>
|
||||||
|
</mtbwa:SyncWorkspace>
|
||||||
|
</Sequence>
|
||||||
|
<If Condition="[CreateLabel]" DisplayName="If CreateLabel" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<mtbwa:InvokeForReason DisplayName="Create and Set Label for non-Shelveset Builds" Reason="Manual, IndividualCI, BatchedCI, Schedule, ScheduleForced, UserCreated">
|
||||||
|
<mtbwa:LabelWorkspace Comment="["Label Created by Team Build"]" DisplayName="Create Label" Name="[LabelName]" Scope="[String.Format("$/{0}", BuildDetail.BuildDefinition.TeamProject)]" Workspace="[Workspace]" />
|
||||||
|
<mtbwa:SetBuildProperties DisplayName="Set Label on BuildDetail" LabelName="[String.Format("{0}@$/{1}", LabelName, BuildDetail.BuildDefinition.TeamProject)]" PropertiesToSet="LabelName" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
</mtbwa:InvokeForReason>
|
||||||
|
</If.Then>
|
||||||
|
<If.Else>
|
||||||
|
<mtbwa:WriteBuildMessage DisplayName="Write Message" Message="Not Labeling sources" Importance="[Microsoft.TeamFoundation.Build.Client.BuildMessageImportance.High]" />
|
||||||
|
</If.Else>
|
||||||
|
</If>
|
||||||
|
<TryCatch DisplayName="Try Compile, Test, and Associate Changesets and Work Items" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<TryCatch.Finally>
|
||||||
|
<Sequence DisplayName="Revert Workspace and Copy Files to Drop Location" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<mtbwa:InvokeForReason DisplayName="Revert Workspace for Shelveset Builds" Reason="CheckInShelveset, ValidateShelveset">
|
||||||
|
<mtbwa:RevertWorkspace DisplayName="Revert Workspace" Workspace="[Workspace]" />
|
||||||
|
</mtbwa:InvokeForReason>
|
||||||
|
<If Condition="[Not String.IsNullOrEmpty(DropLocation)]" DisplayName="If DropLocation is Set" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<mtbwa:CopyDirectory DisplayName="Drop Files to Drop Location" Source="[BinariesDirectory]" Destination="[DropLocation]" />
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
</Sequence>
|
||||||
|
</TryCatch.Finally>
|
||||||
|
<TryCatch.Try>
|
||||||
|
<Sequence mtbwt:BuildTrackingParticipant.Importance="None">
|
||||||
|
<Sequence.Variables>
|
||||||
|
<Variable x:TypeArguments="s:Exception" Name="compilationException" />
|
||||||
|
<Variable x:TypeArguments="scg:IList(mtvc:Changeset)" Name="associatedChangesets" />
|
||||||
|
<Variable x:TypeArguments="s:Boolean" Name="treatTestFailureAsBuildFailure" />
|
||||||
|
</Sequence.Variables>
|
||||||
|
<Parallel DisplayName="Compile, Test, and Associate Changesets and Work Items">
|
||||||
|
<TryCatch DisplayName="Try Compile and Test" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<TryCatch.Try>
|
||||||
|
<Sequence DisplayName="Compile and Test">
|
||||||
|
<ForEach x:TypeArguments="mtbwa:PlatformConfiguration" DisplayName="For Each Configuration in BuildSettings.PlatformConfigurations" Values="[BuildSettings.PlatformConfigurations]" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<ActivityAction x:TypeArguments="mtbwa:PlatformConfiguration">
|
||||||
|
<ActivityAction.Argument>
|
||||||
|
<DelegateInArgument x:TypeArguments="mtbwa:PlatformConfiguration" Name="platformConfiguration" />
|
||||||
|
</ActivityAction.Argument>
|
||||||
|
<Sequence DisplayName="Compile and Test for Configuration" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<Sequence.Variables>
|
||||||
|
<Variable x:TypeArguments="x:String" Name="outputDirectory" />
|
||||||
|
<Variable x:TypeArguments="x:String" Name="logFileDropLocation" />
|
||||||
|
</Sequence.Variables>
|
||||||
|
<Sequence DisplayName="Initialize Variables" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<Assign x:TypeArguments="x:String" DisplayName="Create OutputDirectory Per Platform and Configuration" To="[outputDirectory]" Value="[If (platformConfiguration.IsEmpty Or BuildSettings.PlatformConfigurations.Count = 1, BinariesDirectory, If (platformConfiguration.IsPlatformEmptyOrAnyCpu, BinariesDirectory + "\" + platformConfiguration.Configuration, BinariesDirectory + "\" + platformConfiguration.Platform + "\" + platformConfiguration.Configuration))]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
<If Condition="[Not String.IsNullOrEmpty(DropLocation)]" DisplayName="If DropLocation is Set" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<Assign x:TypeArguments="x:String" DisplayName="Initialize LogFile Drop Location" To="[logFileDropLocation]" Value="[If (platformConfiguration.IsEmpty Or BuildSettings.PlatformConfigurations.Count = 1, BuildDropProvider.CombinePaths(DropLocation, "logs"), If (platformConfiguration.IsPlatformEmptyOrAnyCpu, BuildDropProvider.CombinePaths(DropLocation, "logs", platformConfiguration.Configuration), BuildDropProvider.CombinePaths(DropLocation, "logs", platformConfiguration.Platform, platformConfiguration.Configuration)))]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
</Sequence>
|
||||||
|
<If Condition="[BuildSettings.HasProjectsToBuild]" DisplayName="If BuildSettings.HasProjectsToBuild" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<ForEach x:TypeArguments="x:String" DisplayName="For Each Project in BuildSettings.ProjectsToBuild" Values="[BuildSettings.ProjectsToBuild]" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<ActivityAction x:TypeArguments="x:String">
|
||||||
|
<ActivityAction.Argument>
|
||||||
|
<DelegateInArgument x:TypeArguments="x:String" Name="serverBuildProjectItem" />
|
||||||
|
</ActivityAction.Argument>
|
||||||
|
<TryCatch DisplayName="Try to Compile the Project" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<TryCatch.Try>
|
||||||
|
<Sequence DisplayName="Compile the Project" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<Sequence.Variables>
|
||||||
|
<Variable x:TypeArguments="x:String" Name="localProject" />
|
||||||
|
<Variable x:TypeArguments="x:String" Name="outputDirectoryPerProject" Default="[outputDirectory]" />
|
||||||
|
</Sequence.Variables>
|
||||||
|
<mtbwa:ConvertWorkspaceItem DisplayName="Convert Server Path to Local Path" Input="[serverBuildProjectItem]" Result="[localProject]" Workspace="[Workspace]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
<If Condition="[SolutionSpecificBuildOutputs]" DisplayName="If Build Outputs are Solution-Specific" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<Sequence DisplayName="Update Output Directory" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<Assign x:TypeArguments="x:String" DisplayName="Set Solution-Specific Output Directory" To="[outputDirectoryPerProject]" Value="[System.IO.Path.Combine(outputDirectory, System.IO.Path.GetFileNameWithoutExtension(localProject))]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
<If DisplayName="If Output Directory Exists" Condition="[System.IO.Directory.Exists(outputDirectoryPerProject)]" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<mtbwa:WriteBuildWarning DisplayName="Write Duplicate Project Names Warning" Message="[String.Format("{0} conflicts with another solution/project. Build outputs for solutions/projects with the same name will be copied to the same directory. To separate the build outputs, change the name of one of the solutions/projects.", System.IO.Path.GetFileNameWithoutExtension(localProject))]" />
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
</Sequence>
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
<mtbwa:MSBuild CommandLineArguments="[String.Format("/p:SkipInvalidConfigurations=true {0}", MSBuildArguments)]" Configuration="[platformConfiguration.Configuration]" DisplayName="Run MSBuild for Project" GenerateVSPropsFile="[True]" LogFileDropLocation="[logFileDropLocation]" MaxProcesses="[If (MSBuildMultiProc, 0, 1)]" OutDir="[outputDirectoryPerProject]" Platform="[platformConfiguration.Platform]" Project="[localProject]" RunCodeAnalysis="[RunCodeAnalysis]" TargetsNotLogged="[New String() {"GetNativeManifest", "GetCopyToOutputDirectoryItems", "GetTargetPath"}]" ToolPlatform="[MSBuildPlatform]" Verbosity="[Verbosity]" />
|
||||||
|
</Sequence>
|
||||||
|
</TryCatch.Try>
|
||||||
|
<TryCatch.Catches>
|
||||||
|
<Catch x:TypeArguments="s:Exception">
|
||||||
|
<ActivityAction x:TypeArguments="s:Exception">
|
||||||
|
<ActivityAction.Argument>
|
||||||
|
<DelegateInArgument x:TypeArguments="s:Exception" Name="ex" />
|
||||||
|
</ActivityAction.Argument>
|
||||||
|
<Sequence DisplayName="Handle Exception">
|
||||||
|
<Sequence.Variables>
|
||||||
|
<Variable x:TypeArguments="scg:ICollection(mtbc:IQueuedBuild)" Name="failedRequests" />
|
||||||
|
</Sequence.Variables>
|
||||||
|
<mtbwa:SetBuildProperties CompilationStatus="[Microsoft.TeamFoundation.Build.Client.BuildPhaseStatus.Failed]" DisplayName="Set CompilationStatus to Failed" PropertiesToSet="CompilationStatus" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
<If Condition="[CreateWorkItem]" DisplayName="If CreateWorkItem" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<mtbwa:InvokeForReason DisplayName="Create Work Item for non-Shelveset Builds" Reason="Manual, IndividualCI, BatchedCI, Schedule, ScheduleForced, UserCreated">
|
||||||
|
<mtbwa:OpenWorkItem AssignedTo="[BuildDetail.RequestedFor]" Comment="["This work item was created by TFS Build on a build failure."]" CustomFields="[New Dictionary(Of String, String) From { {"System.Reason", "Build Failure"}, {"Microsoft.VSTS.TCM.ReproSteps", "Start the build using TFS Build"}, {"Severity", "1 - Critical"} }]" DisplayName="Create Work Item" Title="[String.Format("Build Failure in Build: {0}", BuildDetail.BuildNumber)]" Type="["Bug"]" />
|
||||||
|
</mtbwa:InvokeForReason>
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
<mtbwa:GetApprovedRequests DisplayName="Get Requests Approved for Check In" Result="[failedRequests]" mtbwt:BuildTrackingParticipant.Importance="None" />
|
||||||
|
<mtbwa:RetryRequests Behavior="[Microsoft.TeamFoundation.Build.Workflow.Activities.RetryBehavior.DoNotBatch]" DisplayName="Mark Requests for Retry" Requests="[failedRequests]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
<Rethrow DisplayName="Rethrow the exception so the build will stop" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
</Sequence>
|
||||||
|
</ActivityAction>
|
||||||
|
</Catch>
|
||||||
|
</TryCatch.Catches>
|
||||||
|
</TryCatch>
|
||||||
|
</ActivityAction>
|
||||||
|
</ForEach>
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
<If Condition="[Not DisableTests]" DisplayName="If Not DisableTests" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<Sequence DisplayName="Run Tests" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If Condition="[Not TestSpecs Is Nothing]" DisplayName="If Not TestSpecs Is Nothing" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<ForEach x:TypeArguments="mtbwa:TestSpec" DisplayName="For Each TestSpec in TestSpecs" Values="[TestSpecs]" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<ActivityAction x:TypeArguments="mtbwa:TestSpec">
|
||||||
|
<ActivityAction.Argument>
|
||||||
|
<DelegateInArgument x:TypeArguments="mtbwa:TestSpec" Name="spec" />
|
||||||
|
</ActivityAction.Argument>
|
||||||
|
<TryCatch DisplayName="Try Run Tests" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<TryCatch.Try>
|
||||||
|
<If Condition="[TypeOf spec Is Microsoft.TeamFoundation.Build.Workflow.Activities.AgileTestPlatformSpec]" DisplayName="If spec Is AgileTestPlatformSpec" mtbwt:BuildTrackingParticipant.Importance="None">
|
||||||
|
<If.Then>
|
||||||
|
<Sequence DisplayName="Run Visual Studio Test Runner for Test Sources" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<Sequence.Variables>
|
||||||
|
<Variable x:TypeArguments="mtbwa:AgileTestPlatformSpec" Name="agileTestPlatformAssembly" />
|
||||||
|
<Variable x:TypeArguments="scg:IEnumerable(x:String)" Name="agileTestPlatformAssemblies" />
|
||||||
|
</Sequence.Variables>
|
||||||
|
<Assign x:TypeArguments="mtbwa:AgileTestPlatformSpec" DisplayName="Assign spec to agileTestPlatformAssembly" To="[agileTestPlatformAssembly]" Value="[DirectCast(spec, Microsoft.TeamFoundation.Build.Workflow.Activities.AgileTestPlatformSpec)]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
<mtbwa:FindMatchingFiles DisplayName="Find Visual Studio Test Platform Test Assemblies" MatchPattern="[String.Format("{0}\{1}", outputDirectory, agileTestPlatformAssembly.AssemblyFileSpec)]" Result="[agileTestPlatformAssemblies]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
<If Condition="[agileTestPlatformAssemblies.Count() > 0]" DisplayName="If Visual Studio Test Platform Test Assemblies Found" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<If Condition="[agileTestPlatformAssembly.HasRunSettingsFile]" DisplayName="If agileTestPlatformAssembly.HasRunSettingsFile" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<Sequence DisplayName="Find Run Settings File And Run Visual Studio Test Runner" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<Sequence.Variables>
|
||||||
|
<Variable x:TypeArguments="x:String" Name="localRunSettings" />
|
||||||
|
</Sequence.Variables>
|
||||||
|
<mtbwa:GenerateRunSettings DisplayName="Generate Run Settings File" RunSettingsForTestRun="[agileTestPlatformAssembly.RunSettingsForTestRun]" Result="[localRunSettings]" Workspace="[Workspace]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
<mtbwa:RunTests DisplayName="Run Visual Studio Test Runner for Test Sources" RunName="[agileTestPlatformAssembly.RunName]" Flavor="[platformConfiguration.Configuration]" Platform="[platformConfiguration.Platform]" TestSources="[agileTestPlatformAssemblies]" RunSettings="[localRunSettings]" TestCaseFilter="[agileTestPlatformAssembly.TestCaseFilter]" ExecutionPlatform="[agileTestPlatformAssembly.ExecutionPlatform]" />
|
||||||
|
</Sequence>
|
||||||
|
</If.Then>
|
||||||
|
<If.Else>
|
||||||
|
<mtbwa:RunTests DisplayName="Run Visual Studio Test Runner for Test Sources" RunName="[agileTestPlatformAssembly.RunName]" Flavor="[platformConfiguration.Configuration]" Platform="[platformConfiguration.Platform]" TestSources="[agileTestPlatformAssemblies]" TestCaseFilter="[agileTestPlatformAssembly.TestCaseFilter]" ExecutionPlatform="[agileTestPlatformAssembly.ExecutionPlatform]" />
|
||||||
|
</If.Else>
|
||||||
|
</If>
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
</Sequence>
|
||||||
|
</If.Then>
|
||||||
|
<If.Else>
|
||||||
|
<If Condition="[TypeOf spec Is Microsoft.TeamFoundation.Build.Workflow.Activities.TestMetadataFileSpec]" DisplayName="If spec Is TestMetadataFileSpec" mtbwt:BuildTrackingParticipant.Importance="None">
|
||||||
|
<If.Then>
|
||||||
|
<Sequence DisplayName="Run MSTest for Metadata File">
|
||||||
|
<Sequence.Variables>
|
||||||
|
<Variable x:TypeArguments="mtbwa:TestMetadataFileSpec" Name="testMetadataFile" />
|
||||||
|
<Variable x:TypeArguments="x:String" Name="localTestMetadata" />
|
||||||
|
</Sequence.Variables>
|
||||||
|
<Assign x:TypeArguments="mtbwa:TestMetadataFileSpec" DisplayName="Assign spec to testMetadataFile" To="[testMetadataFile]" Value="[DirectCast(spec, Microsoft.TeamFoundation.Build.Workflow.Activities.TestMetadataFileSpec)]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
<mtbwa:ConvertWorkspaceItem DisplayName="Convert Server Path to Local Path" Input="[testMetadataFile.MetadataFileName]" Result="[localTestMetadata]" Workspace="[Workspace]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
<mtbwa:MSTest RunTitle="[testMetadataFile.RunName]" Category="[testMetadataFile.CategoryFilter]" DisplayName="Run MSTest for Metadata File" Flavor="[platformConfiguration.Configuration]" MaxPriority="[testMetadataFile.MaximumPriority]" MinPriority="[testMetadataFile.MinimumPriority]" PathToResultsFilesRoot="[TestResultsDirectory]" Platform="[platformConfiguration.Platform]" SearchPathRoot="[outputDirectory]" TestLists="[testMetadataFile.TestLists]" TestMetadata="[localTestMetadata]" TestSettings="[String.Empty]" CommandLineArguments="[testMetadataFile.MSTestCommandLineArgs]" />
|
||||||
|
</Sequence>
|
||||||
|
</If.Then>
|
||||||
|
<If.Else>
|
||||||
|
<Sequence DisplayName="Run MSTest for Test Assemblies" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<Sequence.Variables>
|
||||||
|
<Variable x:TypeArguments="mtbwa:TestAssemblySpec" Name="testAssembly" />
|
||||||
|
<Variable x:TypeArguments="scg:IEnumerable(x:String)" Name="testAssemblies" />
|
||||||
|
<Variable x:TypeArguments="x:String" Default="[String.Empty]" Name="testFlavor" />
|
||||||
|
<Variable x:TypeArguments="x:String" Default="[String.Empty]" Name="testPlatform" />
|
||||||
|
</Sequence.Variables>
|
||||||
|
<Assign x:TypeArguments="mtbwa:TestAssemblySpec" DisplayName="Assign spec to testAssembly" To="[testAssembly]" Value="[DirectCast(spec, Microsoft.TeamFoundation.Build.Workflow.Activities.TestAssemblySpec)]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
<mtbwa:FindMatchingFiles DisplayName="Find Test Assemblies" MatchPattern="[String.Format("{0}\{1}", outputDirectory, testAssembly.AssemblyFileSpec)]" Result="[testAssemblies]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
<If Condition="[testAssemblies.Count() > 0]" DisplayName="If Test Assemblies Found" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<If Condition="[testAssembly.HasTestSettingsFile]" DisplayName="If testAssembly.HasTestSettingsFile" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<Sequence DisplayName="Find Test Settings File And Run MSTest" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<Sequence.Variables>
|
||||||
|
<Variable x:TypeArguments="x:String" Name="localTestSettings" />
|
||||||
|
</Sequence.Variables>
|
||||||
|
<mtbwa:ConvertWorkspaceItem DisplayName="Convert Server Path to Local Path" Input="[testAssembly.TestSettingsFileName]" Result="[localTestSettings]" Workspace="[Workspace]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
<mtbwa:MSTest RunTitle="[testAssembly.RunName]" Category="[testAssembly.CategoryFilter]" DisplayName="Run MSTest for Test Assemblies" Flavor="[platformConfiguration.Configuration]" MaxPriority="[testAssembly.MaximumPriority]" MinPriority="[testAssembly.MinimumPriority]" PathToResultsFilesRoot="[TestResultsDirectory]" Platform="[platformConfiguration.Platform]" SearchPathRoot="[outputDirectory]" TestContainers="[testAssemblies]" TestSettings="[localTestSettings]" CommandLineArguments="[testAssembly.MSTestCommandLineArgs]" />
|
||||||
|
</Sequence>
|
||||||
|
</If.Then>
|
||||||
|
<If.Else>
|
||||||
|
<mtbwa:MSTest RunTitle="[testAssembly.RunName]" Category="[testAssembly.CategoryFilter]" DisplayName="Run MSTest for Test Assemblies" Flavor="[platformConfiguration.Configuration]" MaxPriority="[testAssembly.MaximumPriority]" MinPriority="[testAssembly.MinimumPriority]" PathToResultsFilesRoot="[TestResultsDirectory]" Platform="[platformConfiguration.Platform]" SearchPathRoot="[outputDirectory]" TestContainers="[testAssemblies]" CommandLineArguments="[testAssembly.MSTestCommandLineArgs]" />
|
||||||
|
</If.Else>
|
||||||
|
</If>
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
</Sequence>
|
||||||
|
</If.Else>
|
||||||
|
</If>
|
||||||
|
</If.Else>
|
||||||
|
</If>
|
||||||
|
</TryCatch.Try>
|
||||||
|
<TryCatch.Catches>
|
||||||
|
<Catch x:TypeArguments="s:Exception">
|
||||||
|
<ActivityAction x:TypeArguments="s:Exception">
|
||||||
|
<ActivityAction.Argument>
|
||||||
|
<DelegateInArgument x:TypeArguments="s:Exception" Name="testException" />
|
||||||
|
</ActivityAction.Argument>
|
||||||
|
<Sequence DisplayName="Handle Test Run Exception">
|
||||||
|
<Sequence.Variables>
|
||||||
|
<Variable x:TypeArguments="scg:ICollection(mtbc:IQueuedBuild)" Name="failedRequests" />
|
||||||
|
</Sequence.Variables>
|
||||||
|
<If Condition="[Not (TypeOf testException Is Microsoft.TeamFoundation.Build.Workflow.Activities.TestFailureException)]" DisplayName="If testException is NOT TestFailureException" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<mtbwa:WriteBuildError DisplayName="Write Test Failure Message" Message="[testException.Message]" />
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
<mtbwa:SetBuildProperties DisplayName="Set TestStatus to Failed" PropertiesToSet="TestStatus" TestStatus="[Microsoft.TeamFoundation.Build.Client.BuildPhaseStatus.Failed]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
<If Condition="[spec.FailBuildOnFailure]" DisplayName="If spec.FailBuildOnFailure" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<Assign x:TypeArguments="s:Boolean" DisplayName="Set treatTestFailureAsBuildFailure to True" To="[treatTestFailureAsBuildFailure]" Value="[True]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
<mtbwa:GetApprovedRequests DisplayName="Get Requests Approved for Check In" Result="[failedRequests]" mtbwt:BuildTrackingParticipant.Importance="None" />
|
||||||
|
<mtbwa:RetryRequests Behavior="[Microsoft.TeamFoundation.Build.Workflow.Activities.RetryBehavior.DoNotBatch]" DisplayName="Mark Requests for Retry" Requests="[failedRequests]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
</Sequence>
|
||||||
|
</ActivityAction>
|
||||||
|
</Catch>
|
||||||
|
</TryCatch.Catches>
|
||||||
|
</TryCatch>
|
||||||
|
</ActivityAction>
|
||||||
|
</ForEach>
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
</Sequence>
|
||||||
|
</If.Then>
|
||||||
|
<If.Else>
|
||||||
|
<If Condition="[(Not TestSpecs Is Nothing) And (TestSpecs.Count > 0)]" DisplayName="If TestSpecs Is Not Nothing or Empty" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<mtbwa:WriteBuildWarning DisplayName="Write Warning" Message="No automated tests will be run for this build because tests have been disabled for this build definition. To enable these tests, edit this build definition and set the Disable Tests process parameter to false." />
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
</If.Else>
|
||||||
|
</If>
|
||||||
|
</Sequence>
|
||||||
|
</ActivityAction>
|
||||||
|
</ForEach>
|
||||||
|
<If Condition="[BuildDetail.CompilationStatus = Microsoft.TeamFoundation.Build.Client.BuildPhaseStatus.Unknown]" DisplayName="If CompilationStatus = Unknown" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<mtbwa:SetBuildProperties CompilationStatus="[Microsoft.TeamFoundation.Build.Client.BuildPhaseStatus.Succeeded]" DisplayName="Set CompilationStatus to Succeeded" PropertiesToSet="CompilationStatus" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
<If Condition="[BuildDetail.TestStatus = Microsoft.TeamFoundation.Build.Client.BuildPhaseStatus.Unknown]" DisplayName="If TestStatus = Unknown" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<mtbwa:SetBuildProperties DisplayName="Set TestStatus to Succeeded" PropertiesToSet="TestStatus" TestStatus="[Microsoft.TeamFoundation.Build.Client.BuildPhaseStatus.Succeeded]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
<If Condition="[treatTestFailureAsBuildFailure And (BuildDetail.TestStatus = Microsoft.TeamFoundation.Build.Client.BuildPhaseStatus.Failed)]" DisplayName="If TreatTestFailureAsBuildFailure And (TestStatus = Failed)" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<mtbwa:SetBuildProperties DisplayName="Set Status to Failed" PropertiesToSet="Status" Status="[Microsoft.TeamFoundation.Build.Client.BuildStatus.Failed]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
</Sequence>
|
||||||
|
</TryCatch.Try>
|
||||||
|
<TryCatch.Catches>
|
||||||
|
<Catch x:TypeArguments="s:Exception">
|
||||||
|
<ActivityAction x:TypeArguments="s:Exception">
|
||||||
|
<ActivityAction.Argument>
|
||||||
|
<DelegateInArgument x:TypeArguments="s:Exception" Name="compilationExceptionArgument" />
|
||||||
|
</ActivityAction.Argument>
|
||||||
|
<Assign x:TypeArguments="s:Exception" DisplayName="Save the Compilation Exception" To="[compilationException]" Value="[compilationExceptionArgument]" mtbwt:BuildTrackingParticipant.Importance="None" />
|
||||||
|
</ActivityAction>
|
||||||
|
</Catch>
|
||||||
|
</TryCatch.Catches>
|
||||||
|
</TryCatch>
|
||||||
|
<If Condition="[AssociateChangesetsAndWorkItems]" DisplayName="If AssociateChangesetsAndWorkItems" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<If Condition="[CreateLabel]" DisplayName="If CreateLabel and AssociateChangesetsAndWorkItems" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<mtbwa:InvokeForReason DisplayName="Associate Changesets and Work Items for non-Shelveset Builds" Reason="Manual, IndividualCI, BatchedCI, Schedule, ScheduleForced, UserCreated">
|
||||||
|
<mtbwa:AssociateChangesetsAndWorkItems DisplayName="Associate Changesets and Work Items" Result="[associatedChangesets]" />
|
||||||
|
</mtbwa:InvokeForReason>
|
||||||
|
</If.Then>
|
||||||
|
<If.Else>
|
||||||
|
<mtbwa:WriteBuildWarning DisplayName="Write Associate Changesets and Work Items Warning" Message="Cannot Associate Changesets and Work Items because the Label Sources option is set to False." />
|
||||||
|
</If.Else>
|
||||||
|
</If>
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
</Parallel>
|
||||||
|
<If Condition="[Not compilationException Is Nothing]" DisplayName="If a Compilation Exception Occurred" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<Throw DisplayName="Rethrow Compilation Exception" Exception="[compilationException]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
<Parallel DisplayName="Get Impacted Tests, Index Sources and Publish Symbols">
|
||||||
|
<If Condition="[PerformTestImpactAnalysis]" DisplayName="If PerformTestImpactAnalysis" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<Sequence DisplayName="Get Impacted Tests" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<Sequence.Variables>
|
||||||
|
<Variable x:TypeArguments="scg:IEnumerable(x:String)" Name="assemblies" />
|
||||||
|
</Sequence.Variables>
|
||||||
|
<mtbwa:FindMatchingFiles DisplayName="Find Build Outputs" MatchPattern="[String.Format("{0}\**\*.dll;{0}\**\*.exe", BinariesDirectory)]" Result="[assemblies]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
<mttbb:GetImpactedTests Assemblies="[assemblies]" AssociatedChangesets="[associatedChangesets]" BinariesRoot="[BinariesDirectory]" Build="[BuildDetail]" CodeChanges="{x:Null}" DisplayName="Get Impacted Tests" ImpactedTests="{x:Null}" Workspace="[Workspace]" />
|
||||||
|
</Sequence>
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
<If Condition="[SourceAndSymbolServerSettings.IndexSources Or SourceAndSymbolServerSettings.HasSymbolStorePath]" DisplayName="If SourceAndSymbolServerSettings.IndexSources Or SourceAndSymbolServerSettings.HasSymbolStorePath" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<mtbwa:InvokeForReason DisplayName="Index Sources and Publish Symbols for Triggered Builds" Reason="Triggered">
|
||||||
|
<mtbwa:InvokeForReason.Variables>
|
||||||
|
<Variable x:TypeArguments="scg:IEnumerable(x:String)" Name="symbolFiles" />
|
||||||
|
</mtbwa:InvokeForReason.Variables>
|
||||||
|
<mtbwa:FindMatchingFiles DisplayName="Find Symbol Files" MatchPattern="[String.Format("{0}\**\*.pdb", BinariesDirectory)]" Result="[symbolFiles]" mtbwt:BuildTrackingParticipant.Importance="Low" />
|
||||||
|
<If Condition="[SourceAndSymbolServerSettings.IndexSources]" DisplayName="If SourceAndSymbolServerSettings.IndexSources" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<TryCatch DisplayName="Try Index Sources" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<TryCatch.Try>
|
||||||
|
<mtbwa:IndexSources DisplayName="Index Sources" FileList="[symbolFiles]" />
|
||||||
|
</TryCatch.Try>
|
||||||
|
<TryCatch.Catches>
|
||||||
|
<Catch x:TypeArguments="s:Exception">
|
||||||
|
<ActivityAction x:TypeArguments="s:Exception">
|
||||||
|
<ActivityAction.Argument>
|
||||||
|
<DelegateInArgument x:TypeArguments="s:Exception" Name="exception" />
|
||||||
|
</ActivityAction.Argument>
|
||||||
|
<mtbwa:WriteBuildError DisplayName="Write Indexing Sources Error" Message="[exception.Message]" />
|
||||||
|
</ActivityAction>
|
||||||
|
</Catch>
|
||||||
|
</TryCatch.Catches>
|
||||||
|
</TryCatch>
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
<If Condition="[SourceAndSymbolServerSettings.HasSymbolStorePath]" DisplayName="If SourceAndSymbolServerSettings.HasSymbolStorePath" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<If.Then>
|
||||||
|
<TryCatch DisplayName="Try Publish Symbols" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<TryCatch.Try>
|
||||||
|
<mtbwa:SharedResourceScope DisplayName="Synchronize Access to Symbol Store" MaxExecutionTime="[TimeSpan.Zero]" MaxWaitTime="[New TimeSpan(1, 0, 0)]" ResourceName="[SourceAndSymbolServerSettings.SymbolStorePath]" mtbwt:BuildTrackingParticipant.Importance="Low">
|
||||||
|
<mtbwa:PublishSymbols DisplayName="Publish Symbols" FileList="[symbolFiles]" ProductName="[BuildDetail.BuildDefinition.Name]" StorePath="[SourceAndSymbolServerSettings.SymbolStorePath]" Version="[BuildDetail.BuildNumber]" />
|
||||||
|
</mtbwa:SharedResourceScope>
|
||||||
|
</TryCatch.Try>
|
||||||
|
<TryCatch.Catches>
|
||||||
|
<Catch x:TypeArguments="s:Exception">
|
||||||
|
<ActivityAction x:TypeArguments="s:Exception">
|
||||||
|
<ActivityAction.Argument>
|
||||||
|
<DelegateInArgument x:TypeArguments="s:Exception" Name="exception" />
|
||||||
|
</ActivityAction.Argument>
|
||||||
|
<mtbwa:WriteBuildError DisplayName="Write Publishing Symbols Error" Message="[exception.Message]" />
|
||||||
|
</ActivityAction>
|
||||||
|
</Catch>
|
||||||
|
</TryCatch.Catches>
|
||||||
|
</TryCatch>
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
</mtbwa:InvokeForReason>
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
</Parallel>
|
||||||
|
</Sequence>
|
||||||
|
</TryCatch.Try>
|
||||||
|
</TryCatch>
|
||||||
|
</mtbwa:AgentScope>
|
||||||
|
<mtbwa:InvokeForReason DisplayName="Check In Gated Changes for CheckInShelveset Builds" Reason="CheckInShelveset">
|
||||||
|
<mtbwa:CheckInGatedChanges DisplayName="Check In Gated Changes" />
|
||||||
|
</mtbwa:InvokeForReason>
|
||||||
|
</Sequence>
|
||||||
|
</Activity>
|
203
BuildProcessTemplates/LabDefaultTemplate.11.xaml
Normal file
@ -0,0 +1,203 @@
|
|||||||
|
<Activity mc:Ignorable="sap sads" x:Class="TfsBuild.Process" this:Process.LabWorkflowParameters="[New Microsoft.TeamFoundation.Lab.Workflow.Activities.LabWorkflowDetails()]" this:Process.Verbosity="[Microsoft.TeamFoundation.Build.Workflow.BuildVerbosity.Normal]" this:Process.BuildNumberFormat="["$(BuildDefinitionName)_$(Date:yyyyMMdd)$(Rev:.r)"]" this:Process.SupportedReasons="Manual, BatchedCI, Schedule, ScheduleForced, IndividualCI" this:Process.TimeoutForDeploymentScriptInMinutes="30" xmlns="http://schemas.microsoft.com/netfx/2009/xaml/activities" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:mt="clr-namespace:Microsoft.TeamFoundation;assembly=Microsoft.TeamFoundation.Common" xmlns:mtbc="clr-namespace:Microsoft.TeamFoundation.Build.Client;assembly=Microsoft.TeamFoundation.Build.Client" xmlns:mtbc1="clr-namespace:Microsoft.TeamFoundation.Build.Common;assembly=Microsoft.TeamFoundation.Build.Common" xmlns:mtbp="clr-namespace:Microsoft.TeamFoundation.Build.ProcessComponents;assembly=Microsoft.TeamFoundation.Build.ProcessComponents" xmlns:mtbw="clr-namespace:Microsoft.TeamFoundation.Build.Workflow;assembly=Microsoft.TeamFoundation.Build.Workflow" xmlns:mtbwa="clr-namespace:Microsoft.TeamFoundation.Build.Workflow.Activities;assembly=Microsoft.TeamFoundation.Build.Workflow" xmlns:mtbws="clr-namespace:Microsoft.TeamFoundation.Build.Workflow.Services;assembly=Microsoft.TeamFoundation.Build.Workflow" xmlns:mtlc="clr-namespace:Microsoft.TeamFoundation.Lab.Client;assembly=Microsoft.TeamFoundation.Lab.Client" xmlns:mtltc="clr-namespace:Microsoft.TeamFoundation.Lab.TestIntegration.Client;assembly=Microsoft.TeamFoundation.Lab.TestIntegration.Client" xmlns:mtlwa="clr-namespace:Microsoft.TeamFoundation.Lab.Workflow.Activities;assembly=Microsoft.TeamFoundation.Lab.Workflow.Activities" xmlns:mtlwc="clr-namespace:Microsoft.TeamFoundation.Lab.WorkflowIntegration.Client;assembly=Microsoft.TeamFoundation.Lab.WorkflowIntegration.Client" xmlns:mttbb="clr-namespace:Microsoft.TeamFoundation.TestImpact.BuildIntegration.BuildActivities;assembly=Microsoft.TeamFoundation.TestImpact.BuildIntegration" xmlns:mttc="clr-namespace:Microsoft.TeamFoundation.TestManagement.Client;assembly=Microsoft.TeamFoundation.TestManagement.Client" xmlns:mtvc="clr-namespace:Microsoft.TeamFoundation.VersionControl.Client;assembly=Microsoft.TeamFoundation.VersionControl.Client" xmlns:mva="clr-namespace:Microsoft.VisualBasic.Activities;assembly=System.Activities" xmlns:s="clr-namespace:System;assembly=mscorlib" xmlns:s1="clr-namespace:System;assembly=System" xmlns:s2="clr-namespace:System;assembly=System.Core" xmlns:s3="clr-namespace:System;assembly=System.ServiceModel" xmlns:s4="clr-namespace:System;assembly=System.ComponentModel.Composition" xmlns:sa="clr-namespace:System.Activities;assembly=System.Activities" xmlns:sad="clr-namespace:System.Activities.Debugger;assembly=System.Activities" xmlns:sads="http://schemas.microsoft.com/netfx/2010/xaml/activities/debugger" xmlns:sap="http://schemas.microsoft.com/netfx/2009/xaml/activities/presentation" xmlns:scg="clr-namespace:System.Collections.Generic;assembly=mscorlib" xmlns:sl="clr-namespace:System.Linq;assembly=System.Core" xmlns:this="clr-namespace:TfsBuild" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
|
||||||
|
<x:Members>
|
||||||
|
<x:Property Name="BuildProcessVersion" Type="x:String" />
|
||||||
|
<x:Property Name="Metadata" Type="mtbw:ProcessParameterMetadataCollection" />
|
||||||
|
<x:Property Name="LabWorkflowParameters" Type="InArgument(mtlwa:LabWorkflowDetails)" />
|
||||||
|
<x:Property Name="Verbosity" Type="InArgument(mtbw:BuildVerbosity)" />
|
||||||
|
<x:Property Name="BuildNumberFormat" Type="InArgument(x:String)" />
|
||||||
|
<x:Property Name="SupportedReasons" Type="mtbc:BuildReason" />
|
||||||
|
<x:Property Name="TimeoutForDeploymentScriptInMinutes" Type="InArgument(x:Int32)">
|
||||||
|
<x:Property.Attributes>
|
||||||
|
<RequiredArgumentAttribute />
|
||||||
|
</x:Property.Attributes>
|
||||||
|
</x:Property>
|
||||||
|
</x:Members>
|
||||||
|
<this:Process.BuildProcessVersion>11.0</this:Process.BuildProcessVersion>
|
||||||
|
<this:Process.Metadata>
|
||||||
|
<mtbw:ProcessParameterMetadataCollection>
|
||||||
|
<mtbw:ProcessParameterMetadata _locID="Activity001" _locAttrData="DisplayName" BrowsableWhen="Always" Category="Misc" DisplayName="Timeout For Each Deployment Script (in Minutes)" ParameterName="TimeoutForDeploymentScriptInMinutes" />
|
||||||
|
</mtbw:ProcessParameterMetadataCollection>
|
||||||
|
</this:Process.Metadata>
|
||||||
|
<sap:VirtualizedContainerService.HintSize>920,3702</sap:VirtualizedContainerService.HintSize>
|
||||||
|
<mva:VisualBasic.Settings>Assembly references and imported namespaces serialized as XML namespaces</mva:VisualBasic.Settings>
|
||||||
|
<Sequence _locID="Activity002" _locAttrData="DisplayName" DisplayName="Application Deployment Workflow" sap:VirtualizedContainerService.HintSize="880,3662" mva:VisualBasic.Settings="Assembly references and imported namespaces serialized as XML namespaces">
|
||||||
|
<Sequence.Variables>
|
||||||
|
<Variable x:TypeArguments="mtbc:IBuildDetail" Name="BuildDetail" />
|
||||||
|
<Variable x:TypeArguments="x:String" Name="LabEnvironmentUri" />
|
||||||
|
<Variable x:TypeArguments="x:String" Name="BuildLocation" />
|
||||||
|
<Variable x:TypeArguments="x:Int64" Name="SnapshotId" />
|
||||||
|
<Variable x:TypeArguments="x:Int32" Name="QueueBuildId" />
|
||||||
|
<Variable x:TypeArguments="mtbc:BuildStatus" Default="[Microsoft.TeamFoundation.Build.Client.BuildStatus.Succeeded]" Name="BuildStatus" />
|
||||||
|
<Variable x:TypeArguments="mtbc:IBuildDetail" Name="ChildBuildDetail" />
|
||||||
|
<Variable x:TypeArguments="mtbc:IBuildDetail" Name="SelectedBuildDetail" />
|
||||||
|
<Variable x:TypeArguments="x:String" Name="BuildNumber" />
|
||||||
|
<Variable x:TypeArguments="mtlc:LabEnvironment" Name="LabEnvironment" />
|
||||||
|
</Sequence.Variables>
|
||||||
|
<mtbwa:UpdateBuildNumber _locID="Activity003" _locAttrData="DisplayName" BuildNumberFormat="[BuildNumberFormat]" DisplayName="Update Build Number" sap:VirtualizedContainerService.HintSize="858,22" />
|
||||||
|
<mtbwa:GetBuildDetail _locID="Activity004" _locAttrData="DisplayName" DisplayName="Get Build Details" sap:VirtualizedContainerService.HintSize="858,22" Result="[BuildDetail]" />
|
||||||
|
<If _locID="Activity005" _locAttrData="DisplayName" Condition="[LabWorkflowParameters.BuildDetails.IsTeamSystemBuild = True AndAlso LabWorkflowParameters.BuildDetails.QueueNewBuild = True]" DisplayName="If Build is needed" sap:VirtualizedContainerService.HintSize="858,416">
|
||||||
|
<If.Then>
|
||||||
|
<Sequence _locID="Activity006" _locAttrData="DisplayName" DisplayName="Do Build" sap:VirtualizedContainerService.HintSize="301,308">
|
||||||
|
<mtlwa:RunWorkflow _locID="Activity007" _locAttrData="DisplayName" BuildController="{x:Null}" LabEnvironmentUri="{x:Null}" BuildDefinition="[LabWorkflowParameters.BuildDetails.BuildDefinitionName]" DisplayName="Start Build Workflow" sap:VirtualizedContainerService.HintSize="242,22" ProjectName="[BuildDetail.TeamProject]" Result="[QueueBuildId]" />
|
||||||
|
<mtlwa:WaitForWorkflow _locID="Activity008" _locAttrData="DisplayName" AllowPartiallySucceededBuild="True" BuildDetails="[ChildBuildDetail]" DisplayName="Wait For Build To Complete" sap:VirtualizedContainerService.HintSize="242,22" LabWorkflowType="[Microsoft.TeamFoundation.Lab.Workflow.Activities.WorkflowType.Build]" MaxConsecutiveFailuresToIgnoreDuringWaitForCompletion="[3]" MaxWaitTime="[TimeSpan.Zero]" QueueBuildId="[QueueBuildId]" RefreshInterval="[System.TimeSpan.FromMinutes(1)]" Result="[BuildStatus]" ThrowOnError="True" />
|
||||||
|
<Assign _locID="Activity009" _locAttrData="DisplayName" DisplayName="Set Build Location" sap:VirtualizedContainerService.HintSize="242,60">
|
||||||
|
<Assign.To>
|
||||||
|
<OutArgument x:TypeArguments="x:Uri">[LabWorkflowParameters.BuildDetails.BuildUri]</OutArgument>
|
||||||
|
</Assign.To>
|
||||||
|
<Assign.Value>
|
||||||
|
<InArgument x:TypeArguments="x:Uri">[ChildBuildDetail.Uri]</InArgument>
|
||||||
|
</Assign.Value>
|
||||||
|
</Assign>
|
||||||
|
</Sequence>
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
<mtlwa:WriteDeploymentInformation _locID="Activity010" _locAttrData="DisplayName, Message" Url="{x:Null}" DeploymentInformationType="[Microsoft.TeamFoundation.Build.Common.DeploymentInformationTypes.Deploy]" DisplayName="Update Deployment Summary" sap:VirtualizedContainerService.HintSize="858,22" Message="[String.Format("Lab environment: {0}", LabWorkflowParameters.EnvironmentDetails.LabEnvironmentName)]" />
|
||||||
|
<mtlwa:GetBuildLocationAndBuildNumber _locID="Activity011" _locAttrData="DisplayName" BuildDetails="[LabWorkflowParameters.BuildDetails]" BuildNumber="[BuildNumber]" DisplayName="Get Build Location And Build Number" sap:VirtualizedContainerService.HintSize="858,22" Result="[BuildLocation]" SelectedBuild="[SelectedBuildDetail]" />
|
||||||
|
<If _locID="Activity012" _locAttrData="DisplayName" Condition="[LabWorkflowParameters.BuildDetails.IsTeamSystemBuild = True]" DisplayName="Compute build location needed" sap:VirtualizedContainerService.HintSize="858,208">
|
||||||
|
<If.Then>
|
||||||
|
<Assign _locID="Activity013" _locAttrData="DisplayName" DisplayName="Compute build path" sap:VirtualizedContainerService.HintSize="291,100">
|
||||||
|
<Assign.To>
|
||||||
|
<OutArgument x:TypeArguments="x:String">[BuildLocation]</OutArgument>
|
||||||
|
</Assign.To>
|
||||||
|
<Assign.Value>
|
||||||
|
<InArgument x:TypeArguments="x:String">[If(LabWorkflowParameters.BuildDetails.Configuration Is Nothing, BuildLocation, If(LabWorkflowParameters.BuildDetails.Configuration.IsEmpty Or (SelectedBuildDetail.Information.GetNodesByType(Microsoft.TeamFoundation.Build.Common.InformationTypes.ConfigurationSummary, True)).Count = 1, BuildLocation, If(LabWorkflowParameters.BuildDetails.Configuration.IsPlatformEmptyOrAnyCpu, BuildLocation + "\" + LabWorkflowParameters.BuildDetails.Configuration.Configuration, BuildLocation + "\" + LabWorkflowParameters.BuildDetails.Configuration.Platform + "\" + LabWorkflowParameters.BuildDetails.Configuration.Configuration)))]</InArgument>
|
||||||
|
</Assign.Value>
|
||||||
|
</Assign>
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
<If _locID="Activity014" _locAttrData="DisplayName" Condition="[LabWorkflowParameters.EnvironmentDetails.Disposition = Microsoft.TeamFoundation.Lab.Client.LabEnvironmentDisposition.Stored]" DisplayName="If user selected stored environment" sap:VirtualizedContainerService.HintSize="858,208">
|
||||||
|
<If.Then>
|
||||||
|
<Throw _locID="Activity015" _locAttrData="DisplayName, Exception" DisplayName="Indicate error" Exception="[New System.Exception("You have selected an environment that is stored in the library. Select an environment that is deployed on a team project host group.")]" sap:VirtualizedContainerService.HintSize="269,100" />
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
<Assign _locID="Activity016" _locAttrData="DisplayName" DisplayName="Get Lab Environment Uri" sap:VirtualizedContainerService.HintSize="858,22" >
|
||||||
|
<Assign.To>
|
||||||
|
<OutArgument x:TypeArguments="x:String">[LabEnvironmentUri]</OutArgument>
|
||||||
|
</Assign.To>
|
||||||
|
<Assign.Value>
|
||||||
|
<InArgument x:TypeArguments="x:String">[LabWorkflowParameters.EnvironmentDetails.LabEnvironmentUri.ToString()]</InArgument>
|
||||||
|
</Assign.Value>
|
||||||
|
</Assign>
|
||||||
|
<mtlwa:GetLabEnvironment _locID="Activity017" _locAttrData="DisplayName" DisplayName="Get Lab Environment" LabEnvironmentUri="[LabEnvironmentUri]" Result="[LabEnvironment]" />
|
||||||
|
<If _locID="Activity018" _locAttrData="DisplayName" Condition="[LabWorkflowParameters.EnvironmentDetails.RevertToSnapshot = True]" DisplayName=" If Restore Snapshot" sap:VirtualizedContainerService.HintSize="858,316">
|
||||||
|
<If.Then>
|
||||||
|
<Sequence _locID="Activity019" _locAttrData="DisplayName" DisplayName="Restore Snapshot" sap:VirtualizedContainerService.HintSize="231,208">
|
||||||
|
<mtlwa:GetLabEnvironmentSnapshotId _locID="Activity020" _locAttrData="DisplayName" DisplayName="Get Snapshot Details" sap:VirtualizedContainerService.HintSize="200,22" LabEnvironmentUri="[LabEnvironmentUri]" Result="[SnapshotId]" SnapshotName="[LabWorkflowParameters.EnvironmentDetails.SnapshotName]" />
|
||||||
|
<mtlwa:RestoreLabEnvironment _locID="Activity021" _locAttrData="DisplayName" DisplayName="Restore Lab Environment to Snapshot" sap:VirtualizedContainerService.HintSize="200,22" LabEnvironmentUri="[LabEnvironmentUri]" SnapshotId="[SnapshotId]" />
|
||||||
|
</Sequence>
|
||||||
|
</If.Then>
|
||||||
|
<If.Else>
|
||||||
|
<Sequence _locID="Activity022" _locAttrData="DisplayName" DisplayName="No Clean Snapshot">
|
||||||
|
<If _locID="Activity023" _locAttrData="DisplayName" Condition="[Not String.Equals(Microsoft.TeamFoundation.Lab.Client.LabEnvironment.UnmanagedProvider, labEnvironment.LabProvider)]" DisplayName="If Virtual Environment">
|
||||||
|
<If.Then>
|
||||||
|
<mtlwa:WriteDeploymentInformation _locID="Activity024" _locAttrData="DisplayName, Message" Url="{x:Null}" DeploymentInformationType="[Microsoft.TeamFoundation.Build.Common.DeploymentInformationTypes.Deploy]" DisplayName="Clean snapshot not specified " sap:VirtualizedContainerService.HintSize="208,208" Message="Build definition did not specify a clean snapshot. It is a best practice to use clean snapshot when running the lab workflow." />
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
</Sequence>
|
||||||
|
</If.Else>
|
||||||
|
</If>
|
||||||
|
<If _locID="Activity025" _locAttrData="DisplayName" Condition="[LabWorkflowParameters.DeploymentDetails.DeploymentNeeded = True or LabWorkflowParameters.TestParameters.RunTest = True]" DisplayName="If deployment or test needed" sap:VirtualizedContainerService.HintSize="858,1214">
|
||||||
|
<If.Then>
|
||||||
|
<mtlwa:WaitForEnvironmentReady _locID="Activity026" _locAttrData="DisplayName" DisplayName="Wait For Environment To Be Ready" sap:VirtualizedContainerService.HintSize="711,22" LabEnvironmentUri="[LabEnvironmentUri]" MaxWaitTime="[System.TimeSpan.FromMinutes(10)]" />
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
<If _locID="Activity027" _locAttrData="DisplayName" Condition="[LabWorkflowParameters.DeploymentDetails.DeploymentNeeded = True]" DisplayName="If deployment needed" sap:VirtualizedContainerService.HintSize="858,1214">
|
||||||
|
<If.Then>
|
||||||
|
<Sequence _locID="Activity028" _locAttrData="DisplayName" DisplayName="Do deployment" sap:VirtualizedContainerService.HintSize="733,1106">
|
||||||
|
<mtlwa:ReserveEnvironmentForDeployment _locID="Activity029" _locAttrData="DisplayName" DisplayName="Reserve Environment For Deployment" sap:VirtualizedContainerService.HintSize="711,22" LabEnvironmentUri="[LabEnvironmentUri]" />
|
||||||
|
<TryCatch _locID="Activity030" _locAttrData="DisplayName" DisplayName="Deploy Build on Environment">
|
||||||
|
<TryCatch.Try>
|
||||||
|
<Sequence _locID="Activity031" _locAttrData="DisplayName" DisplayName="Deploying Build">
|
||||||
|
<ForEach _locID="Activity032" _locAttrData="DisplayName" x:TypeArguments="x:String" DisplayName="Run Deployment scripts" sap:VirtualizedContainerService.HintSize="711,254" Values="[LabWorkflowParameters.DeploymentDetails.Scripts]">
|
||||||
|
<ActivityAction x:TypeArguments="x:String">
|
||||||
|
<ActivityAction.Argument>
|
||||||
|
<DelegateInArgument x:TypeArguments="x:String" Name="deploymentConfigurationPair" />
|
||||||
|
</ActivityAction.Argument>
|
||||||
|
<mtlwa:RunDeploymentTask _locID="Activity055" _locAttrData="DisplayName" BuildLocation="[BuildLocation]" DeploymentScriptDetails="[deploymentConfigurationPair]" DisplayName="Run Deployment Task" sap:VirtualizedContainerService.HintSize="200,22" LabEnvironmentUri="[LabEnvironmentUri]" MaxWaitTime="[TimeSpan.FromMinutes(TimeoutForDeploymentScriptInMinutes)]" ThrowOnError="True" UseRoleForDeployment="[LabWorkflowParameters.DeploymentDetails.UseRoleForDeployment]" />
|
||||||
|
</ActivityAction>
|
||||||
|
</ForEach>
|
||||||
|
</Sequence>
|
||||||
|
</TryCatch.Try>
|
||||||
|
<TryCatch.Finally>
|
||||||
|
<mtlwa:ReleaseEnvironmentFromDeployment _locID="Activity035" _locAttrData="DisplayName" DisplayName="Release Environment From Deployment" sap:VirtualizedContainerService.HintSize="711,22" LabEnvironmentUri="[LabEnvironmentUri]" />
|
||||||
|
</TryCatch.Finally>
|
||||||
|
</TryCatch>
|
||||||
|
<mtlwa:WriteDeploymentInformation _locID="Activity036" _locAttrData="DisplayName, Message" DeploymentInformationType="[Microsoft.TeamFoundation.Build.Common.DeploymentInformationTypes.Deploy]" DisplayName="Application Deployment Succeeded" sap:VirtualizedContainerService.HintSize="711,22" Message="[String.Format("The application was deployed successfully from the following build location:")]" Url="[BuildLocation]" />
|
||||||
|
<If _locID="Activity037" _locAttrData="DisplayName" Condition="[LabWorkflowParameters.DeploymentDetails.TakePostDeploymentSnapshot = True]" DisplayName="Post Deployment Snapshot" sap:VirtualizedContainerService.HintSize="711,626">
|
||||||
|
<If.Then>
|
||||||
|
<Sequence _locID="Activity038" _locAttrData="DisplayName" DisplayName="Take Post deployment Snapshot " sap:VirtualizedContainerService.HintSize="486,518">
|
||||||
|
<Sequence.Variables>
|
||||||
|
<Variable x:TypeArguments="x:Int64" Name="PostDeploymentSnapshotChainId" />
|
||||||
|
<Variable x:TypeArguments="x:String" Default="[String.Format("{0}_{1}", BuildDetail.BuildDefinition.Name, BuildDetail.BuildNumber)]" Name="PostDeploymentSnapshotName" />
|
||||||
|
</Sequence.Variables>
|
||||||
|
<If _locID="Activity039" _locAttrData="DisplayName" Condition="[String.IsNullOrEmpty(LabWorkflowParameters.DeploymentDetails.PostDeploymentSnapshotName) = False]" DisplayName="Check snapshot name" sap:VirtualizedContainerService.HintSize="464,208">
|
||||||
|
<If.Then>
|
||||||
|
<Assign sap:VirtualizedContainerService.HintSize="291,100">
|
||||||
|
<Assign.To>
|
||||||
|
<OutArgument x:TypeArguments="x:String">[PostDeploymentSnapshotName]</OutArgument>
|
||||||
|
</Assign.To>
|
||||||
|
<Assign.Value>
|
||||||
|
<InArgument x:TypeArguments="x:String">[If(LabWorkflowParameters.BuildDetails.IsTeamSystemBuild = True,String.Format("{0}_{1}_{2}", LabWorkflowParameters.DeploymentDetails.PostDeploymentSnapshotName, BuildNumber,BuildDetail.BuildNumber),String.Format("{0}_{1}", LabWorkflowParameters.DeploymentDetails.PostDeploymentSnapshotName, BuildDetail.BuildNumber))]</InArgument>
|
||||||
|
</Assign.Value>
|
||||||
|
</Assign>
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
<mtlwa:SnapshotLabEnvironment _locID="Activity040" _locAttrData="DisplayName" DisplayName="Taking Post Deployment snapshot" sap:VirtualizedContainerService.HintSize="464,22" LabEnvironmentUri="[LabEnvironmentUri]" SnapshotChainId="[PostDeploymentSnapshotChainId]" SnapshotName="[PostDeploymentSnapshotName]" />
|
||||||
|
<mtlwa:WriteDeploymentInformation _locID="Activity041" _locAttrData="DisplayName, Message" Url="{x:Null}" DeploymentInformationType="[Microsoft.TeamFoundation.Build.Common.DeploymentInformationTypes.Deploy]" DisplayName="Taking Snapshot succeeded" sap:VirtualizedContainerService.HintSize="464,22" Message="[String.Format("The following snapshot was taken after the deployment was finished: {0}", PostDeploymentSnapshotName)]" />
|
||||||
|
<mtlwa:WriteDeploymentInformation _locID="Activity042" _locAttrData="DisplayName" DeploymentInformationType="[Microsoft.TeamFoundation.Build.Common.DeploymentInformationTypes.ConnectToSnapshot]" DisplayName="Added connection link to the Snapshot" sap:VirtualizedContainerService.HintSize="464,22" Message="[PostDeploymentSnapshotName]" Url="[PostDeploymentSnapshotChainId.ToString()]" />
|
||||||
|
</Sequence>
|
||||||
|
</If.Then>
|
||||||
|
<If.Else>
|
||||||
|
<Sequence _locID="Activity043" _locAttrData="DisplayName" DisplayName="No Post Deployment Snapshot">
|
||||||
|
<If _locID="Activity044" _locAttrData="DisplayName" Condition="[Not String.Equals(Microsoft.TeamFoundation.Lab.Client.LabEnvironment.UnmanagedProvider, labEnvironment.LabProvider)]" DisplayName="If Virtual Environment">
|
||||||
|
<If.Then>
|
||||||
|
<mtlwa:WriteDeploymentInformation _locID="Activity045" _locAttrData="DisplayName, Message" Url="{x:Null}" DeploymentInformationType="[Microsoft.TeamFoundation.Build.Common.DeploymentInformationTypes.Deploy]" DisplayName="Post deployment snapshot not specified" sap:VirtualizedContainerService.HintSize="200,518" Message="Build definition did not specify a post deployment snapshot. It is a best practice to take post deployment snapshot when running the lab workflow." />
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
</Sequence>
|
||||||
|
</If.Else>
|
||||||
|
</If>
|
||||||
|
</Sequence>
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
<If _locID="Activity046" _locAttrData="DisplayName" Condition="[LabWorkflowParameters.TestParameters.RunTest = True]" DisplayName="Run Tests on Environment" sap:VirtualizedContainerService.HintSize="858,604">
|
||||||
|
<If.Then>
|
||||||
|
<Sequence _locID="Activity047" _locAttrData="DisplayName" DisplayName="Run Tests" sap:VirtualizedContainerService.HintSize="656,498">
|
||||||
|
<Sequence.Variables>
|
||||||
|
<Variable x:TypeArguments="mtltc:TestingCapabilityInformation" Name="TestCapabilityInfo" />
|
||||||
|
<Variable x:TypeArguments="x:String" Name="variable1" />
|
||||||
|
<Variable x:TypeArguments="mtlwa:TestRunStatistics" Default="[New Microsoft.TeamFoundation.Lab.Workflow.Activities.TestRunStatistics()]" Name="TestResults" />
|
||||||
|
</Sequence.Variables>
|
||||||
|
<mtlwa:ExecuteRemoteTestRun2 _locID="Activity048" _locAttrData="DisplayName" MaxWaitTime="{x:Null}" TestEnvironment="{x:Null}" BuildNumber="[BuildNumber]" BuildDefinitionName="[LabWorkflowParameters.BuildDetails.BuildDefinitionName]" DisplayName="Running Tests" sap:VirtualizedContainerService.HintSize="634,22" LabEnvironmentUri="[LabEnvironmentUri]" MaxConsecutiveFailuresToIgnoreDuringWaitForCompletion="[3]" RefreshInterval="[System.TimeSpan.FromMinutes(1)]" Result="[TestResults]" TestDirectory="[BuildLocation]" TestParameters="[LabWorkflowParameters.TestParameters]" Title="[String.Format("{0}", BuildDetail.BuildNumber)]" />
|
||||||
|
<If _locID="Activity049" _locAttrData="DisplayName" Condition="[TestResults.PassedTests <> TestResults.TotalTests Or TestResults.TestRunStatus <> TestManagement.Client.TestRunState.Completed]" DisplayName="If all tests have not passed" sap:VirtualizedContainerService.HintSize="634,312">
|
||||||
|
<If.Then>
|
||||||
|
<If _locID="Activity050" _locAttrData="DisplayName" Condition="[(LabWorkflowParameters.BuildDetails.IsTeamSystemBuild = True AndAlso LabWorkflowParameters.BuildDetails.QueueNewBuild = True) Or (LabWorkflowParameters.DeploymentDetails.DeploymentNeeded = True)]" DisplayName="Set build status" sap:VirtualizedContainerService.HintSize="509,206">
|
||||||
|
<If.Then>
|
||||||
|
<Assign _locID="Activity051" _locAttrData="DisplayName" DisplayName="Partially succeeded" sap:VirtualizedContainerService.HintSize="242,100">
|
||||||
|
<Assign.To>
|
||||||
|
<OutArgument x:TypeArguments="mtbc:BuildStatus">[BuildStatus]</OutArgument>
|
||||||
|
</Assign.To>
|
||||||
|
<Assign.Value>
|
||||||
|
<InArgument x:TypeArguments="mtbc:BuildStatus">[Microsoft.TeamFoundation.Build.Client.BuildStatus.PartiallySucceeded]</InArgument>
|
||||||
|
</Assign.Value>
|
||||||
|
</Assign>
|
||||||
|
</If.Then>
|
||||||
|
<If.Else>
|
||||||
|
<Assign _locID="Activity052" _locAttrData="DisplayName" DisplayName="Failed" sap:VirtualizedContainerService.HintSize="242,100">
|
||||||
|
<Assign.To>
|
||||||
|
<OutArgument x:TypeArguments="mtbc:BuildStatus">[BuildStatus]</OutArgument>
|
||||||
|
</Assign.To>
|
||||||
|
<Assign.Value>
|
||||||
|
<InArgument x:TypeArguments="mtbc:BuildStatus">[Microsoft.TeamFoundation.Build.Client.BuildStatus.Failed]</InArgument>
|
||||||
|
</Assign.Value>
|
||||||
|
</Assign>
|
||||||
|
</If.Else>
|
||||||
|
</If>
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
</Sequence>
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
<mtbwa:SetBuildProperties _locID="Activity053" _locAttrData="DisplayName" DisplayName="Set build status" sap:VirtualizedContainerService.HintSize="858,22" PropertiesToSet="Status" Status="[BuildStatus]" />
|
||||||
|
</Sequence>
|
||||||
|
</Activity>
|
76
BuildProcessTemplates/UpgradeTemplate.xaml
Normal file
@ -0,0 +1,76 @@
|
|||||||
|
<Activity mc:Ignorable="sad" x:Class="TfsBuild.Process" xmlns="http://schemas.microsoft.com/netfx/2009/xaml/activities" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:mtbc="clr-namespace:Microsoft.TeamFoundation.Build.Client;assembly=Microsoft.TeamFoundation.Build.Client" xmlns:mtbw="clr-namespace:Microsoft.TeamFoundation.Build.Workflow;assembly=Microsoft.TeamFoundation.Build.Workflow" xmlns:mtbwa="clr-namespace:Microsoft.TeamFoundation.Build.Workflow.Activities;assembly=Microsoft.TeamFoundation.Build.Workflow" xmlns:mtbwt="clr-namespace:Microsoft.TeamFoundation.Build.Workflow.Tracking;assembly=Microsoft.TeamFoundation.Build.Workflow" xmlns:mtvc="clr-namespace:Microsoft.TeamFoundation.VersionControl.Client;assembly=Microsoft.TeamFoundation.VersionControl.Client" xmlns:mva="clr-namespace:Microsoft.VisualBasic.Activities;assembly=System.Activities" xmlns:s="clr-namespace:System;assembly=mscorlib" xmlns:sad="http://schemas.microsoft.com/netfx/2009/xaml/activities/presentation" xmlns:sad1="clr-namespace:System.Activities.Debugger;assembly=System.Activities" xmlns:scg="clr-namespace:System.Collections.Generic;assembly=mscorlib" xmlns:this="clr-namespace:TfsBuild;" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
|
||||||
|
<x:Members>
|
||||||
|
<x:Property Name="ConfigurationFolderPath" Type="InArgument(x:String)" />
|
||||||
|
<x:Property Name="AgentSettings" Type="InArgument(mtbwa:AgentSettings)" />
|
||||||
|
<x:Property Name="MSBuildArguments" Type="InArgument(x:String)" />
|
||||||
|
<x:Property Name="MSBuildPlatform" Type="InArgument(mtbwa:ToolPlatform)" />
|
||||||
|
<x:Property Name="DoNotDownloadBuildType" Type="InArgument(x:Boolean)" />
|
||||||
|
<x:Property Name="LogFilePerProject" Type="InArgument(x:Boolean)" />
|
||||||
|
<x:Property Name="SourcesSubdirectory" Type="InArgument(x:String)" />
|
||||||
|
<x:Property Name="BinariesSubdirectory" Type="InArgument(x:String)" />
|
||||||
|
<x:Property Name="TestResultsSubdirectory" Type="InArgument(x:String)" />
|
||||||
|
<x:Property Name="RecursionType" Type="InArgument(mtvc:RecursionType)" />
|
||||||
|
<x:Property Name="Verbosity" Type="InArgument(mtbw:BuildVerbosity)" />
|
||||||
|
<x:Property Name="Metadata" Type="mtbw:ProcessParameterMetadataCollection" />
|
||||||
|
<x:Property Name="SupportedReasons" Type="mtbc:BuildReason" />
|
||||||
|
</x:Members>
|
||||||
|
<this:Process.ConfigurationFolderPath>
|
||||||
|
<InArgument x:TypeArguments="x:String" />
|
||||||
|
</this:Process.ConfigurationFolderPath>
|
||||||
|
<this:Process.AgentSettings>[New Microsoft.TeamFoundation.Build.Workflow.Activities.AgentSettings() With {.MaxWaitTime = New System.TimeSpan(4, 0, 0), .MaxExecutionTime = New System.TimeSpan(0, 0, 0), .TagComparison = Microsoft.TeamFoundation.Build.Workflow.Activities.TagComparison.MatchExactly }]</this:Process.AgentSettings>
|
||||||
|
<this:Process.MSBuildArguments>
|
||||||
|
<InArgument x:TypeArguments="x:String" />
|
||||||
|
</this:Process.MSBuildArguments>
|
||||||
|
<this:Process.MSBuildPlatform>[Microsoft.TeamFoundation.Build.Workflow.Activities.ToolPlatform.Auto]</this:Process.MSBuildPlatform>
|
||||||
|
<this:Process.DoNotDownloadBuildType>[False]</this:Process.DoNotDownloadBuildType>
|
||||||
|
<this:Process.LogFilePerProject>[False]</this:Process.LogFilePerProject>
|
||||||
|
<this:Process.SourcesSubdirectory>
|
||||||
|
<InArgument x:TypeArguments="x:String" />
|
||||||
|
</this:Process.SourcesSubdirectory>
|
||||||
|
<this:Process.BinariesSubdirectory>
|
||||||
|
<InArgument x:TypeArguments="x:String" />
|
||||||
|
</this:Process.BinariesSubdirectory>
|
||||||
|
<this:Process.TestResultsSubdirectory>
|
||||||
|
<InArgument x:TypeArguments="x:String" />
|
||||||
|
</this:Process.TestResultsSubdirectory>
|
||||||
|
<this:Process.RecursionType>[Microsoft.TeamFoundation.VersionControl.Client.RecursionType.OneLevel]</this:Process.RecursionType>
|
||||||
|
<this:Process.Verbosity>[Microsoft.TeamFoundation.Build.Workflow.BuildVerbosity.Normal]</this:Process.Verbosity>
|
||||||
|
<this:Process.Metadata>
|
||||||
|
<mtbw:ProcessParameterMetadataCollection />
|
||||||
|
</this:Process.Metadata>
|
||||||
|
<this:Process.SupportedReasons>All</this:Process.SupportedReasons>
|
||||||
|
<mva:VisualBasic.Settings>Assembly references and imported namespaces serialized as XML namespaces</mva:VisualBasic.Settings>
|
||||||
|
<Sequence mtbwt:BuildTrackingParticipant.Importance="None">
|
||||||
|
<Sequence.Variables>
|
||||||
|
<Variable x:TypeArguments="mtbc:IBuildDetail" Name="BuildDetail" />
|
||||||
|
</Sequence.Variables>
|
||||||
|
<mtbwa:GetBuildDetail DisplayName="Get the Build" Result="[BuildDetail]" />
|
||||||
|
<mtbwa:InvokeForReason DisplayName="Update Build Number for Triggered Builds" Reason="Triggered">
|
||||||
|
<mtbwa:UpdateBuildNumber BuildNumberFormat="["$(BuildDefinitionName)_$(Date:yyyyMMdd)$(Rev:.r)"]" DisplayName="Update Build Number" />
|
||||||
|
</mtbwa:InvokeForReason>
|
||||||
|
<mtbwa:AgentScope DisplayName="Run On Agent" MaxExecutionTime="[AgentSettings.MaxExecutionTime]" MaxWaitTime="[AgentSettings.MaxWaitTime]" ReservationSpec="[AgentSettings.GetAgentReservationSpec()]">
|
||||||
|
<mtbwa:AgentScope.Variables>
|
||||||
|
<Variable x:TypeArguments="x:String" Name="buildDirectory" />
|
||||||
|
</mtbwa:AgentScope.Variables>
|
||||||
|
<mtbwa:GetBuildDirectory DisplayName="Get the Build Directory" Result="[buildDirectory]" />
|
||||||
|
<If Condition="[Not String.IsNullOrEmpty(ConfigurationFolderPath)]" DisplayName="If Not String.IsNullOrEmpty(ConfigurationFolderPath)">
|
||||||
|
<If.Then>
|
||||||
|
<mtbwa:TfsBuild BinariesSubdirectory="[BinariesSubdirectory]" BuildDirectory="[buildDirectory]" CommandLineArguments="[MSBuildArguments]" ConfigurationFolderPath="[ConfigurationFolderPath]" DisplayName="Run TfsBuild for Configuration Folder" DoNotDownloadBuildType="[DoNotDownloadBuildType]" LogFilePerProject="[LogFilePerProject]" RecursionType="[RecursionType]" SourcesSubdirectory="[SourcesSubdirectory]" TestResultsSubdirectory="[TestResultsSubdirectory]" ToolPlatform="[MSBuildPlatform]" Verbosity="[Verbosity]" />
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
<If Condition="[BuildDetail.CompilationStatus = Microsoft.TeamFoundation.Build.Client.BuildPhaseStatus.Unknown]" DisplayName="If CompilationStatus = Unknown">
|
||||||
|
<If.Then>
|
||||||
|
<mtbwa:SetBuildProperties CompilationStatus="[Microsoft.TeamFoundation.Build.Client.BuildPhaseStatus.Succeeded]" DisplayName="Set CompilationStatus to Succeeded" PropertiesToSet="CompilationStatus" />
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
<If Condition="[BuildDetail.TestStatus = Microsoft.TeamFoundation.Build.Client.BuildPhaseStatus.Unknown]" DisplayName="If TestStatus = Unknown">
|
||||||
|
<If.Then>
|
||||||
|
<mtbwa:SetBuildProperties DisplayName="Set TestStatus to Succeeded" PropertiesToSet="TestStatus" TestStatus="[Microsoft.TeamFoundation.Build.Client.BuildPhaseStatus.Succeeded]" />
|
||||||
|
</If.Then>
|
||||||
|
</If>
|
||||||
|
</mtbwa:AgentScope>
|
||||||
|
<mtbwa:InvokeForReason Reason="CheckInShelveset">
|
||||||
|
<mtbwa:CheckInGatedChanges DisplayName="Check In Gated Changes" />
|
||||||
|
</mtbwa:InvokeForReason>
|
||||||
|
</Sequence>
|
||||||
|
</Activity>
|
40
Lexicasius.sln
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
|
||||||
|
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||||
|
# Visual Studio 14
|
||||||
|
VisualStudioVersion = 14.0.25123.0
|
||||||
|
MinimumVisualStudioVersion = 10.0.40219.1
|
||||||
|
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WordGen", "WordGen\WordGen.csproj", "{C3EAC4E8-793D-4E5C-A76E-2A8A8BB72562}"
|
||||||
|
EndProject
|
||||||
|
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WordGenSyllabaireViewer", "WordGenXmlViewer\WordGenSyllabaireViewer.csproj", "{3868AF69-F1AC-43A5-B4C8-47AF2737B295}"
|
||||||
|
EndProject
|
||||||
|
Global
|
||||||
|
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||||
|
Debug|Any CPU = Debug|Any CPU
|
||||||
|
Release|Any CPU = Release|Any CPU
|
||||||
|
EndGlobalSection
|
||||||
|
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||||
|
{C3EAC4E8-793D-4E5C-A76E-2A8A8BB72562}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||||
|
{C3EAC4E8-793D-4E5C-A76E-2A8A8BB72562}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||||
|
{C3EAC4E8-793D-4E5C-A76E-2A8A8BB72562}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||||
|
{C3EAC4E8-793D-4E5C-A76E-2A8A8BB72562}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||||
|
{3868AF69-F1AC-43A5-B4C8-47AF2737B295}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||||
|
{3868AF69-F1AC-43A5-B4C8-47AF2737B295}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||||
|
{3868AF69-F1AC-43A5-B4C8-47AF2737B295}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||||
|
{3868AF69-F1AC-43A5-B4C8-47AF2737B295}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||||
|
EndGlobalSection
|
||||||
|
GlobalSection(SolutionProperties) = preSolution
|
||||||
|
HideSolutionNode = FALSE
|
||||||
|
EndGlobalSection
|
||||||
|
GlobalSection(TeamFoundationVersionControl) = preSolution
|
||||||
|
SccNumberOfProjects = 3
|
||||||
|
SccEnterpriseProvider = {4CA58AB2-18FA-4F8D-95D4-32DDF27D184C}
|
||||||
|
SccTeamFoundationServer = https://thoscellen.visualstudio.com/
|
||||||
|
SccLocalPath0 = .
|
||||||
|
SccProjectUniqueName1 = WordGen\\WordGen.csproj
|
||||||
|
SccProjectName1 = WordGen
|
||||||
|
SccLocalPath1 = WordGen
|
||||||
|
SccProjectUniqueName2 = WordGenXmlViewer\\WordGenSyllabaireViewer.csproj
|
||||||
|
SccProjectName2 = WordGenXmlViewer
|
||||||
|
SccLocalPath2 = WordGenXmlViewer
|
||||||
|
EndGlobalSection
|
||||||
|
EndGlobal
|
6
WordGen/App.config
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8" ?>
|
||||||
|
<configuration>
|
||||||
|
<startup>
|
||||||
|
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2" />
|
||||||
|
</startup>
|
||||||
|
</configuration>
|
9
WordGen/Controler/Persistance/FileManager.cs
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
namespace WordGen.Model {
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Gère les interactions I/O entre les objets en mémoire et les fichiers sauvegardés
|
||||||
|
/// </summary>
|
||||||
|
public class FileIoManager {
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
76
WordGen/Controler/Persistance/SyllabaryIoManager.cs
Normal file
@ -0,0 +1,76 @@
|
|||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.IO;
|
||||||
|
using System.Reflection;
|
||||||
|
using System.Xml.Serialization;
|
||||||
|
|
||||||
|
namespace WordGen.Model {
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Représente un gestionnaire de sauvegarde et de lecture d'un ou plusieurs Syllabaires pour l'application en exposant des méthodes permettant de gérer des fichiers XML représentant des Syllabaires.
|
||||||
|
/// </summary>
|
||||||
|
public class SyllabaryIoManager : FileIoManager {
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Représente le dossier local applicatif et utilisateur.
|
||||||
|
/// </summary>
|
||||||
|
public static readonly String UserAppData = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData), Assembly.GetEntryAssembly().GetName().Name);
|
||||||
|
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Sauvegarde le Syllabaire dans un fichier a l'emplacement indiqué. Utilise le titre comme nom de fichier.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="thisSyllabary">Le sillabraire à sauvegarder dans un fichier XML</param>
|
||||||
|
/// <param name="thisPath">Le chemin d'accès au fichier dans lequel le Syllabaire sera enregistré.</param>
|
||||||
|
public void saveSyllabary(Syllabary thisSyllabary, string thisPath) {
|
||||||
|
thisPath = Path.Combine(thisPath, thisSyllabary.title);
|
||||||
|
thisPath = Path.ChangeExtension(thisPath, ".xml");
|
||||||
|
XmlSerializer xs = new XmlSerializer(typeof(Syllabary));
|
||||||
|
using (StreamWriter wr = new StreamWriter(thisPath)) {
|
||||||
|
xs.Serialize(wr, thisSyllabary);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Charge le Syllabaire depuis le fichier précisé
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="thisSillabaryFile">L'emplacement du fichier XML représentant un Syllabaire</param>
|
||||||
|
public Syllabary loadSyllabary(string thisSillabaryFile) {
|
||||||
|
XmlSerializer xs = new XmlSerializer(typeof(Syllabary));
|
||||||
|
using (StreamReader sr = new StreamReader(thisSillabaryFile)) {
|
||||||
|
Syllabary mySylla = xs.Deserialize(sr) as Syllabary;
|
||||||
|
return mySylla;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Charge l'ensemble des fichier Syllabaire depuis le dossier précisé
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="thisFolder">L'emplacement du dossier dans lequel les Syllabaires seront chargés.</param>
|
||||||
|
public List<Syllabary> loadAllSyllabaries(string thisFolder) {
|
||||||
|
List<Syllabary> openedSylla = new List<Syllabary>();
|
||||||
|
foreach (string aFile in Directory.GetFiles(thisFolder)) {
|
||||||
|
if (Path.GetExtension(aFile).ToLower().Equals(".xml")) {
|
||||||
|
try {
|
||||||
|
openedSylla.Add(this.loadSyllabary(aFile));
|
||||||
|
} catch (InvalidOperationException ) {
|
||||||
|
//Some XML files are not Syllables.
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return openedSylla;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Sauvegarde l'ensemble des objets Syllabaires spécifiés à l'emplacement spécifié.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="thosesSillabaries">La liste des Syllabaires à sauvegarder dans des fichiers XML.</param>
|
||||||
|
/// <param name="thisFolder">L'emplacement du dossier dans lequel les Syllabaires seront créés.</param>
|
||||||
|
public void saveAllSyllabaries(List<Syllabary> thosesSillabaries, string thisFolder) {
|
||||||
|
foreach (Syllabary aSylla in thosesSillabaries) {
|
||||||
|
saveSyllabary(aSylla, thisFolder);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
23
WordGen/Controler/Program.cs
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.ComponentModel;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
using System.Windows.Forms;
|
||||||
|
using WordGen.Model;
|
||||||
|
|
||||||
|
namespace WordGen {
|
||||||
|
static class Program {
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Point d'entrée principal de l'application.
|
||||||
|
/// </summary>w
|
||||||
|
[STAThread]
|
||||||
|
static void Main() {
|
||||||
|
Application.EnableVisualStyles();
|
||||||
|
Application.SetCompatibleTextRenderingDefault(false);
|
||||||
|
SyllabaryWrapper.LoadFromDrive();
|
||||||
|
Application.Run(new View.MainForm());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
28
WordGen/Controler/Settings.cs
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
namespace WordGen.Properties {
|
||||||
|
|
||||||
|
|
||||||
|
// Cette classe vous permet de gérer des événements spécifiques dans la classe de paramètres :
|
||||||
|
// L'événement SettingChanging est déclenché avant la modification d'une valeur de paramètre.
|
||||||
|
// L'événement PropertyChanged est déclenché après la modification d'une valeur de paramètre.
|
||||||
|
// L'événement SettingsLoaded est déclenché après le chargement des valeurs de paramètre.
|
||||||
|
// L'événement SettingsSaving est déclenché avant l'enregistrement des valeurs de paramètre.
|
||||||
|
public sealed partial class Settings {
|
||||||
|
|
||||||
|
public Settings() {
|
||||||
|
// // Pour ajouter des gestionnaires d'événements afin d'enregistrer et de modifier les paramètres, supprimez les marques de commentaire des lignes ci-dessous :
|
||||||
|
//
|
||||||
|
// this.SettingChanging += this.SettingChangingEventHandler;
|
||||||
|
//
|
||||||
|
// this.SettingsSaving += this.SettingsSavingEventHandler;
|
||||||
|
//
|
||||||
|
}
|
||||||
|
|
||||||
|
private void SettingChangingEventHandler(object sender, System.Configuration.SettingChangingEventArgs e) {
|
||||||
|
// Ajouter du code pour gérer l'événement SettingChangingEvent ici.
|
||||||
|
}
|
||||||
|
|
||||||
|
private void SettingsSavingEventHandler(object sender, System.ComponentModel.CancelEventArgs e) {
|
||||||
|
// Ajouter du code pour gérer l'événement SettingsSaving ici.
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
102
WordGen/Model/ClassDiagram.cd
Normal file
@ -0,0 +1,102 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<ClassDiagram MajorVersion="1" MinorVersion="1">
|
||||||
|
<Comment CommentText="C'te SyllabaryWrapper mal foutu est censé contenir une seule et unique instance de tout les Syllabaires gérés dans l'application. Sa forme peux varier : Static, Singleton, Controleur ou Wrapper selon le bon usage, mais il doit être existant et accessible en tout point de l'application.">
|
||||||
|
<Position X="2.229" Y="0.5" Height="1.844" Width="1.971" />
|
||||||
|
</Comment>
|
||||||
|
<Comment CommentText="Ces classes ont pour fonction d'assurer la persistance des objets métiers au delà de la vie de l'application. Le SyllabaryIoManager est spécialisé dans la sauvegarde des Syllabaire sur disque, que celà soit un import/export voulu par l'utilisateur ou la persistance automatique de l'application. C'est pour cette dernière raison qu'il existe un chemin spécifique à l'AppData. Le FileIoManager pourra être spécialiser dans d'autres cas suivant si l'application à des besoins futurs d'enregistrer autre chose que des Syllabaires.">
|
||||||
|
<Position X="2.479" Y="4.073" Height="1.969" Width="3.158" />
|
||||||
|
</Comment>
|
||||||
|
<Class Name="WordGen.Model.Syllabary">
|
||||||
|
<Position X="7" Y="0.5" Width="2" />
|
||||||
|
<TypeIdentifier>
|
||||||
|
<HashCode>AAAEAEAAQEAAAAAAAAAABAAAEAAAAAAAAAAAAAACABA=</HashCode>
|
||||||
|
<FileName>Model\Syllabary.cs</FileName>
|
||||||
|
</TypeIdentifier>
|
||||||
|
<ShowAsAssociation>
|
||||||
|
<Field Name="beforeSyllable" />
|
||||||
|
<Field Name="afterSyllable" />
|
||||||
|
</ShowAsAssociation>
|
||||||
|
<Lollipop Position="0.2" />
|
||||||
|
</Class>
|
||||||
|
<Class Name="WordGen.Program">
|
||||||
|
<Position X="0.5" Y="0.5" Width="1.5" />
|
||||||
|
<TypeIdentifier>
|
||||||
|
<HashCode>AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAA=</HashCode>
|
||||||
|
<FileName>Controler\Program.cs</FileName>
|
||||||
|
</TypeIdentifier>
|
||||||
|
</Class>
|
||||||
|
<Class Name="WordGen.SyllabaryWrapper">
|
||||||
|
<Position X="4.5" Y="0.5" Width="1.5" />
|
||||||
|
<TypeIdentifier>
|
||||||
|
<HashCode>CAIAAAAAAAAAAABABCAAACAAAAEQAAAAAgAAAAAEACA=</HashCode>
|
||||||
|
<FileName>Model\SyllabaryWrapper.cs</FileName>
|
||||||
|
</TypeIdentifier>
|
||||||
|
<ShowAsCollectionAssociation>
|
||||||
|
<Field Name="_Sillabaries" />
|
||||||
|
</ShowAsCollectionAssociation>
|
||||||
|
</Class>
|
||||||
|
<Class Name="WordGen.Model.SyllabaryIoManager">
|
||||||
|
<Position X="0.5" Y="3.75" Width="1.75" />
|
||||||
|
<TypeIdentifier>
|
||||||
|
<HashCode>AAAAAAAAAAAAAAQAAAAAAAAAAAAAAABAAQAABAAAQAA=</HashCode>
|
||||||
|
<FileName>Controler\Persistance\SyllabaryIoManager.cs</FileName>
|
||||||
|
</TypeIdentifier>
|
||||||
|
</Class>
|
||||||
|
<Class Name="WordGen.Model.FileIoManager">
|
||||||
|
<Position X="0.5" Y="2.5" Width="1.5" />
|
||||||
|
<TypeIdentifier>
|
||||||
|
<HashCode>AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=</HashCode>
|
||||||
|
<FileName>Controler\Persistance\FileManager.cs</FileName>
|
||||||
|
</TypeIdentifier>
|
||||||
|
</Class>
|
||||||
|
<Class Name="WordGen.Model.Exceptions.NoBeforeSyllableMatchException">
|
||||||
|
<Position X="9.25" Y="5.25" Width="2.5" />
|
||||||
|
<TypeIdentifier>
|
||||||
|
<HashCode>AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=</HashCode>
|
||||||
|
<FileName>Model\Exceptions\NoBeforeSyllableMatchException.cs</FileName>
|
||||||
|
</TypeIdentifier>
|
||||||
|
</Class>
|
||||||
|
<Class Name="WordGen.Model.Exceptions.EmptyVowelListException">
|
||||||
|
<Position X="9.25" Y="3.75" Width="2" />
|
||||||
|
<TypeIdentifier>
|
||||||
|
<HashCode>AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=</HashCode>
|
||||||
|
<FileName>Model\Exceptions\EmptyVowelListException.cs</FileName>
|
||||||
|
</TypeIdentifier>
|
||||||
|
</Class>
|
||||||
|
<Class Name="WordGen.Model.Exceptions.EmptySyllableListException">
|
||||||
|
<Position X="12" Y="5.75" Width="2.25" />
|
||||||
|
<TypeIdentifier>
|
||||||
|
<HashCode>AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=</HashCode>
|
||||||
|
<FileName>Model\Exceptions\EmptySyllableListException.cs</FileName>
|
||||||
|
</TypeIdentifier>
|
||||||
|
</Class>
|
||||||
|
<Class Name="WordGen.Model.Exceptions.EmptyConsonnantListException">
|
||||||
|
<Position X="11.75" Y="4" Width="2.5" />
|
||||||
|
<TypeIdentifier>
|
||||||
|
<HashCode>AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=</HashCode>
|
||||||
|
<FileName>Model\Exceptions\EmptyConsonnantListException.cs</FileName>
|
||||||
|
</TypeIdentifier>
|
||||||
|
</Class>
|
||||||
|
<Class Name="WordGen.Model.Exceptions.GeneratorException">
|
||||||
|
<Position X="6" Y="3.75" Width="2.75" />
|
||||||
|
<TypeIdentifier>
|
||||||
|
<HashCode>ABAAAQAAAAAAAAAAAAAAAAAAEAAiAAIAAgAAAAACBAA=</HashCode>
|
||||||
|
<FileName>Model\Exceptions\GeneratorException.cs</FileName>
|
||||||
|
</TypeIdentifier>
|
||||||
|
</Class>
|
||||||
|
<Enum Name="AfterSyllable">
|
||||||
|
<Position X="10.25" Y="2" Width="1.5" />
|
||||||
|
<TypeIdentifier>
|
||||||
|
<HashCode>AAAAAAAAAAEAAAAAAAAACAAAAAAAAAAAAAAAAAAAAAA=</HashCode>
|
||||||
|
<FileName>Model\Enumerations\AfterSyllable.cs</FileName>
|
||||||
|
</TypeIdentifier>
|
||||||
|
</Enum>
|
||||||
|
<Enum Name="BeforeSyllable">
|
||||||
|
<Position X="10.25" Y="0.5" Width="1.5" />
|
||||||
|
<TypeIdentifier>
|
||||||
|
<HashCode>AAAAAAAAAAEAAAAAAAACCAAAAAAAAAAAAAAAAAAAAAA=</HashCode>
|
||||||
|
<FileName>Model\Enumerations\BeforeSyllable.cs</FileName>
|
||||||
|
</TypeIdentifier>
|
||||||
|
</Enum>
|
||||||
|
<Font Name="Segoe UI" Size="9" />
|
||||||
|
</ClassDiagram>
|
7
WordGen/Model/Enumerations/AfterSyllable.cs
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
using System;
|
||||||
|
|
||||||
|
[Flags]
|
||||||
|
public enum AfterSyllable : int {
|
||||||
|
AsIs,
|
||||||
|
AutoInsert
|
||||||
|
}
|
8
WordGen/Model/Enumerations/BeforeSyllable.cs
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
using System;
|
||||||
|
|
||||||
|
[Flags]
|
||||||
|
public enum BeforeSyllable : int {
|
||||||
|
AsIs,
|
||||||
|
AutoSelect,
|
||||||
|
AutoInsert
|
||||||
|
}
|
26
WordGen/Model/Exceptions/EmptyConsonnantListException.cs
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
using System;
|
||||||
|
using System.Runtime.Serialization;
|
||||||
|
using WordGen.Model.Exceptions;
|
||||||
|
using WordGen.View.LocalizationString;
|
||||||
|
|
||||||
|
namespace WordGen.Model.Exceptions {
|
||||||
|
/// <summary>
|
||||||
|
/// Aucune consonne n'as été trouvée. Ajoutez des consonnes à votre syllabaire, retirez les consonnes de la syntaxe de votre mot (caractère 'c') ou paramétrez votre syllabaire pour ne pas insérer automatiquement une consonne entre une voyelle et une syllabe.
|
||||||
|
/// </summary>
|
||||||
|
[Serializable]
|
||||||
|
internal class EmptyConsonnantListException : GeneratorException {
|
||||||
|
|
||||||
|
public EmptyConsonnantListException() : base(Messages.GeneratorError_EmptyConsonnantListException) {
|
||||||
|
}
|
||||||
|
|
||||||
|
public EmptyConsonnantListException(string wordSoFar, string currentSyllable, string currentSyntaxe, Syllabary currentSyllabary) : base(wordSoFar, currentSyllable, currentSyntaxe, currentSyllabary, Messages.GeneratorError_EmptyConsonnantListException) {
|
||||||
|
}
|
||||||
|
|
||||||
|
public EmptyConsonnantListException(string wordSoFar, string currentSyllable, string currentSyntaxe, Syllabary currentSyllabary, string message) : base(wordSoFar, currentSyllable, currentSyntaxe, currentSyllabary, message) {
|
||||||
|
}
|
||||||
|
|
||||||
|
public EmptyConsonnantListException(string wordSoFar, string currentSyllable, string currentSyntaxe, Syllabary currentSyllabary, string message, Exception innerException) : base(wordSoFar, currentSyllable, currentSyntaxe, currentSyllabary, message, innerException) {
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
24
WordGen/Model/Exceptions/EmptySyllableListException.cs
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
using System;
|
||||||
|
using System.Runtime.Serialization;
|
||||||
|
using WordGen.Model.Exceptions;
|
||||||
|
using WordGen.View.LocalizationString;
|
||||||
|
|
||||||
|
namespace WordGen.Model.Exceptions {
|
||||||
|
/// <summary>
|
||||||
|
/// Aucune syllabe n'as été trouvée. Ajoutez des syllabe à votre syllabaire ou retirez les syllabes de la syntaxe de votre mot (caractère 's').
|
||||||
|
/// </summary>
|
||||||
|
[Serializable]
|
||||||
|
internal class EmptySyllableListException : GeneratorException {
|
||||||
|
public EmptySyllableListException() : base(Messages.GeneratorError_EmptySyllableListException) {
|
||||||
|
}
|
||||||
|
|
||||||
|
public EmptySyllableListException(string wordSoFar, string currentSyllable, string currentSyntaxe, Syllabary currentSyllabary) : base(wordSoFar, currentSyllable, currentSyntaxe, currentSyllabary, Messages.GeneratorError_EmptySyllableListException) {
|
||||||
|
}
|
||||||
|
|
||||||
|
public EmptySyllableListException(string wordSoFar, string currentSyllable, string currentSyntaxe, Syllabary currentSyllabary, string message) : base(wordSoFar, currentSyllable, currentSyntaxe, currentSyllabary, message) {
|
||||||
|
}
|
||||||
|
|
||||||
|
protected EmptySyllableListException(string wordSoFar, string currentSyllable, string currentSyntaxe, Syllabary currentSyllabary, string message, Exception innerException) : base(wordSoFar, currentSyllable, currentSyntaxe, currentSyllabary, message, innerException) {
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
24
WordGen/Model/Exceptions/EmptyVowelListException.cs
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
using System;
|
||||||
|
using System.Runtime.Serialization;
|
||||||
|
using WordGen.Model.Exceptions;
|
||||||
|
using WordGen.View.LocalizationString;
|
||||||
|
|
||||||
|
namespace WordGen.Model.Exceptions {
|
||||||
|
/// <summary>
|
||||||
|
/// Aucune voyelle n'as été trouvée. Ajoutez des voyelles à votre syllabaire, retirez les voyelles de la syntaxe de votre mot (caractère 'v') ou paramétrez votre syllabaire pour ne pas insérer automatiquement une voyelle entre une consonne et une syllabe.
|
||||||
|
/// </summary>
|
||||||
|
[Serializable]
|
||||||
|
internal class EmptyVowelListException : GeneratorException {
|
||||||
|
public EmptyVowelListException() : base(Messages.GeneratorError_EmptyVowelListException) {
|
||||||
|
}
|
||||||
|
|
||||||
|
public EmptyVowelListException(string wordSoFar, string currentSyllable, string currentSyntaxe, Syllabary currentSyllabary) : base(wordSoFar, currentSyllable, currentSyntaxe, currentSyllabary, Messages.GeneratorError_EmptyVowelListException) {
|
||||||
|
}
|
||||||
|
|
||||||
|
public EmptyVowelListException(string wordSoFar, string currentSyllable, string currentSyntaxe, Syllabary currentSyllabary, string message) : base(wordSoFar, currentSyllable, currentSyntaxe, currentSyllabary, message) {
|
||||||
|
}
|
||||||
|
|
||||||
|
protected EmptyVowelListException(string wordSoFar, string currentSyllable, string currentSyntaxe, Syllabary currentSyllabary, string message, Exception innerException) : base(wordSoFar, currentSyllable, currentSyntaxe, currentSyllabary, message, innerException) {
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
92
WordGen/Model/Exceptions/GeneratorException.cs
Normal file
@ -0,0 +1,92 @@
|
|||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Runtime.Serialization;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
using WordGen.View.LocalizationString;
|
||||||
|
|
||||||
|
namespace WordGen.Model.Exceptions {
|
||||||
|
/// <summary>
|
||||||
|
/// Une exception n'as pas permis de générer entièrement le mot.
|
||||||
|
/// </summary>
|
||||||
|
class GeneratorException : Exception {
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Le mot généré auparavant.
|
||||||
|
/// </summary>
|
||||||
|
protected string _wordSoFar;
|
||||||
|
/// <summary>
|
||||||
|
/// Obtient le mot généré auparavant.
|
||||||
|
/// </summary>
|
||||||
|
public string wordSoFar
|
||||||
|
{
|
||||||
|
get { return _wordSoFar; }
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Le caractère (consonne, voyelle, syllabe) qui allait être ajouté.
|
||||||
|
/// </summary>
|
||||||
|
protected string _currentSyllable;
|
||||||
|
/// <summary>
|
||||||
|
/// Obtient le caractère (consonne, voyelle, syllabe) qui allait être ajouté.
|
||||||
|
/// </summary>
|
||||||
|
public string currentSyllable
|
||||||
|
{
|
||||||
|
get { return _currentSyllable; }
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// La syntaxe utilisée pour générer le mot.
|
||||||
|
/// </summary>
|
||||||
|
protected string _currentSyntaxe;
|
||||||
|
/// <summary>
|
||||||
|
/// Obtient la syntaxe utilisée pour générer le mot.
|
||||||
|
/// </summary>
|
||||||
|
public string currentSyntaxe
|
||||||
|
{
|
||||||
|
get { return _currentSyntaxe; }
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Le syllabaire utilisé pour générer le mot.
|
||||||
|
/// </summary>
|
||||||
|
protected Syllabary _currentSyllabary;
|
||||||
|
/// <summary>
|
||||||
|
/// Obtient le syllabaire utilisé pour générer le mot.
|
||||||
|
/// </summary>
|
||||||
|
public Syllabary currentSyllabary
|
||||||
|
{
|
||||||
|
get { return _currentSyllabary; }
|
||||||
|
}
|
||||||
|
|
||||||
|
public GeneratorException() : base(Messages.GeneratorError_GenericGeneratorException) {
|
||||||
|
}
|
||||||
|
|
||||||
|
public GeneratorException(string message) : base(message) {
|
||||||
|
}
|
||||||
|
|
||||||
|
public GeneratorException(string wordSoFar, string currentSyllable, string currentSyntaxe, Syllabary currentSyllabary) : base(Messages.GeneratorError_GenericGeneratorException) {
|
||||||
|
init(wordSoFar, currentSyllable, currentSyntaxe, currentSyllabary);
|
||||||
|
}
|
||||||
|
|
||||||
|
public GeneratorException(string wordSoFar, string currentSyllable, string currentSyntaxe, Syllabary currentSyllabary, string message) : base(message) {
|
||||||
|
init(wordSoFar, currentSyllable, currentSyntaxe, currentSyllabary);
|
||||||
|
}
|
||||||
|
|
||||||
|
public GeneratorException(string wordSoFar, string currentSyllable, string currentSyntaxe, Syllabary currentSyllabary, string message, Exception innerException) : base(message, innerException) {
|
||||||
|
init(wordSoFar, currentSyllable, currentSyntaxe, currentSyllabary);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Associe les éléments passé en paramètre avec les champs de manière factorisée.
|
||||||
|
/// </summary>
|
||||||
|
protected void init(string wordSoFar, string currentSyllable, string currentSyntaxe, Syllabary currentSyllabary) {
|
||||||
|
this._wordSoFar = wordSoFar;
|
||||||
|
this._currentSyllable = currentSyllable;
|
||||||
|
this._currentSyntaxe = currentSyntaxe;
|
||||||
|
this._currentSyllabary = currentSyllabary;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
23
WordGen/Model/Exceptions/NoBeforeSyllableMatchException.cs
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
using System;
|
||||||
|
using System.Runtime.Serialization;
|
||||||
|
|
||||||
|
namespace WordGen.Model.Exceptions {
|
||||||
|
/// <summary>
|
||||||
|
/// Aucune syllabe adaptée n'as été trouvée. Completez le syllabaire avec d'avantages de syllabes ou changez le comportement de celui-ci lors de l'ajout d'une syllabe.
|
||||||
|
/// </summary>
|
||||||
|
[Serializable]
|
||||||
|
internal class NoBeforeSyllableMatchException : GeneratorException {
|
||||||
|
|
||||||
|
public NoBeforeSyllableMatchException() : base() {
|
||||||
|
}
|
||||||
|
|
||||||
|
public NoBeforeSyllableMatchException(string wordSoFar, string currentSyllable, string currentSyntaxe, Syllabary currentSyllabary) : base(wordSoFar, currentSyllable, currentSyntaxe, currentSyllabary) {
|
||||||
|
}
|
||||||
|
|
||||||
|
public NoBeforeSyllableMatchException(string wordSoFar, string currentSyllable, string currentSyntaxe, Syllabary currentSyllabary, string message) : base(wordSoFar, currentSyllable, currentSyntaxe, currentSyllabary, message) {
|
||||||
|
}
|
||||||
|
|
||||||
|
public NoBeforeSyllableMatchException(string wordSoFar, string currentSyllable, string currentSyntaxe, Syllabary currentSyllabary, string message, Exception innerException) : base(wordSoFar, currentSyllable, currentSyntaxe, currentSyllabary, message, innerException) {
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
235
WordGen/Model/Generator.cs
Normal file
@ -0,0 +1,235 @@
|
|||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
using WordGen.Model.Exceptions;
|
||||||
|
using WordGen.View.LocalizationString;
|
||||||
|
|
||||||
|
namespace WordGen.Model {
|
||||||
|
/// <summary>
|
||||||
|
/// Représente un générateur de mot utilisant un syllabaire donnée et d'autres informations sur la manière de générer des mots.
|
||||||
|
/// </summary>
|
||||||
|
class Generator {
|
||||||
|
|
||||||
|
protected Syllabary _syllabary;
|
||||||
|
protected uint _lenght = 0;
|
||||||
|
protected string _syntaxe;
|
||||||
|
protected Random _r = new Random();
|
||||||
|
protected StringBuilder _word;
|
||||||
|
protected GeneratorSettings _genSett;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Instantie un générateur de mot en utilisant un syllabaire et une longueure de mot.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="thisSyllabary">Le syllabaire dans lequel l'application puise ses éléments.</param>
|
||||||
|
/// <param name="wordLenght">La longueur (approximative) des mots à produire.</param>
|
||||||
|
/// <param name="allowSyllable">Autorise l'utilisation de syllabes dans la composition.</param>
|
||||||
|
public Generator(Syllabary thisSyllabary, uint wordLenght, GeneratorSettings mySettings = null) {
|
||||||
|
this._syllabary = thisSyllabary;
|
||||||
|
this._lenght = wordLenght;
|
||||||
|
if (mySettings == null)
|
||||||
|
mySettings = new GeneratorSettings();
|
||||||
|
this._genSett = mySettings;
|
||||||
|
this._syntaxe = convertLenghtToSyntaxe();
|
||||||
|
}
|
||||||
|
|
||||||
|
public Generator(Syllabary thisSyllabary, string thisSyntax) {
|
||||||
|
this._syllabary = thisSyllabary;
|
||||||
|
this._syntaxe = thisSyntax;
|
||||||
|
}
|
||||||
|
|
||||||
|
protected string convertLenghtToSyntaxe() {
|
||||||
|
|
||||||
|
StringBuilder syntaxer = new StringBuilder();
|
||||||
|
for (int i = 0; i < _lenght; i++) {
|
||||||
|
if (i == 0) {
|
||||||
|
if (_syllabary.vowels.Count > 0 && _r.Next(101) < _genSett._vowelBeginProba) {
|
||||||
|
syntaxer.Append('v');
|
||||||
|
continue;
|
||||||
|
} else if (_syllabary.syllables.Count > 0 && _r.Next(101) < _genSett._syllableBeginProba) {
|
||||||
|
syntaxer.Append('s');
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
// s'il y a des syllabes et que le hazard veux qu'on utilise une syllabe maintenant...
|
||||||
|
if (_syllabary.syllables.Count > 0 && _r.Next(101) < _genSett._syllableProba) {
|
||||||
|
// ...on ajoute une syllabe.
|
||||||
|
syntaxer.Append('s');
|
||||||
|
// si c'est le premier charactère et que le hazard le veux...
|
||||||
|
} else if (_syllabary.consonants.Count > 0 && _syllabary.vowels.Count > 0) {
|
||||||
|
// si rien de tout ça n'est arrivé, on met une consonne et une voyelle.
|
||||||
|
syntaxer.Append("cv");
|
||||||
|
} else if (_syllabary.vowels.Count > 0) {
|
||||||
|
syntaxer.Append('v');
|
||||||
|
} else if (_syllabary.consonants.Count > 0) {
|
||||||
|
syntaxer.Append('c');
|
||||||
|
} else if (_syllabary.syllables.Count > 0) {
|
||||||
|
syntaxer.Append('s');
|
||||||
|
} else {
|
||||||
|
throw new GeneratorException("Impossible de générer des mots à partir du syllabaire choisit. Le syllabaire doit contenir des voyelles, des consonnes ou des syllabes.");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return syntaxer.ToString();
|
||||||
|
}
|
||||||
|
|
||||||
|
public Dictionary<string, GeneratorException> generateWords(decimal thisMuch) {
|
||||||
|
var results = new Dictionary<string, GeneratorException>();
|
||||||
|
var courage = 5;
|
||||||
|
for (int i = 0; i < thisMuch; i++) {
|
||||||
|
_syntaxe = convertLenghtToSyntaxe();
|
||||||
|
try {
|
||||||
|
// generation of a word.
|
||||||
|
string aWord = this.generateOneWord();
|
||||||
|
results.Add(aWord, null);
|
||||||
|
|
||||||
|
} catch (NoBeforeSyllableMatchException nbsme) {
|
||||||
|
results.Add(nbsme.wordSoFar, nbsme);
|
||||||
|
} catch (EmptyConsonnantListException ecle) {
|
||||||
|
results.Add(ecle.wordSoFar, ecle);
|
||||||
|
} catch (EmptySyllableListException esle) {
|
||||||
|
results.Add(esle.wordSoFar, esle);
|
||||||
|
} catch (EmptyVowelListException evle) {
|
||||||
|
results.Add(evle.wordSoFar, evle);
|
||||||
|
} catch (GeneratorException ge) {
|
||||||
|
results.Add(ge.wordSoFar, ge);
|
||||||
|
//} catch(ArgumentNullException ) {
|
||||||
|
// continue;
|
||||||
|
} catch (ArgumentException) {
|
||||||
|
if (courage <= 0) {
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
i--;
|
||||||
|
courage--;
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
// other exception are managed upstair
|
||||||
|
}
|
||||||
|
return results;
|
||||||
|
}
|
||||||
|
|
||||||
|
protected string generateOneWord() {
|
||||||
|
_word = new StringBuilder();
|
||||||
|
char previousLetter = '0';
|
||||||
|
foreach (char letter in _syntaxe) {
|
||||||
|
switch (letter) {
|
||||||
|
case 'c':
|
||||||
|
//if counsonne.count != 0
|
||||||
|
_word.Append(selectAConsonnant());
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 'v':
|
||||||
|
_word.Append(selectAVowel());
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 's':
|
||||||
|
_word.Append(selectASyllable(previousLetter));
|
||||||
|
break;
|
||||||
|
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
previousLetter = letter;
|
||||||
|
}
|
||||||
|
return _word.ToString();
|
||||||
|
}
|
||||||
|
|
||||||
|
protected string selectAVowel() {
|
||||||
|
int aNumber = _r.Next(_syllabary.vowels.Count);
|
||||||
|
return _syllabary.vowels.ElementAt(aNumber);
|
||||||
|
}
|
||||||
|
|
||||||
|
protected string selectAConsonnant() {
|
||||||
|
int aNumber = _r.Next(_syllabary.consonants.Count);
|
||||||
|
return _syllabary.consonants.ElementAt(aNumber);
|
||||||
|
}
|
||||||
|
|
||||||
|
protected string selectASyllable(char previousLetter = '0') {
|
||||||
|
int aNumber = _r.Next(_syllabary.syllables.Count);
|
||||||
|
string candidat = _syllabary.syllables.ElementAt(aNumber);
|
||||||
|
|
||||||
|
switch (_syllabary.beforeSyllable) {
|
||||||
|
// Comble d'un caractère adpaté avant la syllabe.
|
||||||
|
case BeforeSyllable.AutoInsert:
|
||||||
|
if (!isAttachable(previousLetter, candidat)) {
|
||||||
|
switch (previousLetter) {
|
||||||
|
case 'c':
|
||||||
|
candidat = this.selectASyllable() + candidat;
|
||||||
|
break;
|
||||||
|
case 'v':
|
||||||
|
candidat = this.selectAConsonnant() + candidat;
|
||||||
|
break;
|
||||||
|
case 's':
|
||||||
|
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
// Choisit une syllable compatible avec le caractère précéent.
|
||||||
|
case BeforeSyllable.AutoSelect:
|
||||||
|
// Toutes les syllables peuvent candidater.
|
||||||
|
List<string> remaningCandidats = new List<string>();
|
||||||
|
remaningCandidats.AddRange(_syllabary.syllables);
|
||||||
|
|
||||||
|
// tant que la syllabe candidate n'est pas attachable avec le caractère précedent, on en choisit un autre
|
||||||
|
while (!isAttachable(previousLetter, candidat)) {
|
||||||
|
remaningCandidats.Remove(candidat);
|
||||||
|
// Si à la fin aucun candidat ne peux prétendre aller avec le caractère précédent, on lève une exception.
|
||||||
|
if (remaningCandidats.Count() == 0) {
|
||||||
|
throw new NoBeforeSyllableMatchException(_word.ToString(), candidat, _syntaxe, _syllabary);
|
||||||
|
}
|
||||||
|
aNumber = _r.Next(remaningCandidats.Count());
|
||||||
|
candidat = _syllabary.syllables.ElementAt(aNumber);
|
||||||
|
}
|
||||||
|
|
||||||
|
break;
|
||||||
|
// Ne fais pas de changement de la syllabe choisit
|
||||||
|
case BeforeSyllable.AsIs:
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
return candidat;
|
||||||
|
}
|
||||||
|
|
||||||
|
protected bool isAttachable(char previousLetter, string candidat) {
|
||||||
|
switch (previousLetter) {
|
||||||
|
// cas consonne
|
||||||
|
case 'c':
|
||||||
|
// pour chaque consonne dans la syllabaire
|
||||||
|
foreach (string aCons in _syllabary.consonants) {
|
||||||
|
// si le candidat commence avec cette consomne.
|
||||||
|
if (candidat.StartsWith(aCons)) {
|
||||||
|
// alors ce candidat ne peux pas être utilisé.
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
|
||||||
|
// cas voyelle
|
||||||
|
case 'v':
|
||||||
|
foreach (string aVow in _syllabary.vowels) {
|
||||||
|
if (candidat.StartsWith(aVow)) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
|
||||||
|
// cas syllabe
|
||||||
|
case 's':
|
||||||
|
// toute syllabe est compatible avec les autres.
|
||||||
|
return true;
|
||||||
|
|
||||||
|
// autres cas (dont '0')
|
||||||
|
default:
|
||||||
|
// tout les syllables sont compatible
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
28
WordGen/Model/GeneratorSettings.cs
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
|
namespace WordGen.Model {
|
||||||
|
class GeneratorSettings {
|
||||||
|
|
||||||
|
|
||||||
|
public decimal _vowelBeginProba { get; set; }
|
||||||
|
public decimal _syllableProba { get; set; }
|
||||||
|
public decimal _syllableBeginProba { get; set; }
|
||||||
|
|
||||||
|
public GeneratorSettings() {
|
||||||
|
_vowelBeginProba = 50;
|
||||||
|
_syllableProba = -1; //10;
|
||||||
|
_syllableBeginProba = -1; // 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
public GeneratorSettings(UInt16 vowelBeginProba, UInt16 syllableProba, UInt16 syllableBeginProba) {
|
||||||
|
_vowelBeginProba = vowelBeginProba;
|
||||||
|
_syllableBeginProba = syllableBeginProba;
|
||||||
|
_syllableProba = syllableProba;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
69
WordGen/Model/Syllabary.cs
Normal file
@ -0,0 +1,69 @@
|
|||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Xml.Serialization;
|
||||||
|
|
||||||
|
namespace WordGen.Model {
|
||||||
|
/// <summary>
|
||||||
|
/// Represends a manageable collection of syllables, consonants and/or vowels.
|
||||||
|
/// </summary>
|
||||||
|
[XmlRoot]
|
||||||
|
public class Syllabary : ICloneable {
|
||||||
|
/// <summary>
|
||||||
|
/// The title of the syllabary, like a language.
|
||||||
|
/// </summary>
|
||||||
|
[XmlElement("Title")]
|
||||||
|
public string title { get; set; }
|
||||||
|
/// <summary>
|
||||||
|
/// The list of syllable the syllabary contains. A syllable is a combination of consonants and vowels.
|
||||||
|
/// </summary>
|
||||||
|
[XmlArray("Syllables")]
|
||||||
|
[XmlArrayItem("Syllable")]
|
||||||
|
public List<string> syllables { get; set; }
|
||||||
|
/// <summary>
|
||||||
|
/// The list of consonants the syllabary contains. A consonant is a speech sound that is articulated with complete or partial closure of the vocal tract.
|
||||||
|
/// </summary>
|
||||||
|
[XmlArray("Consonants")]
|
||||||
|
[XmlArrayItem("consonant")]
|
||||||
|
public List<string> consonants { get; set; }
|
||||||
|
/// <summary>
|
||||||
|
/// The list of vowels or semivowels the syllabary contains. A vowel is a sound pronounced with an open vocal tract so that there is no build-up of air pressure at any point above the glottis.
|
||||||
|
/// </summary>
|
||||||
|
[XmlArray("Vowels")]
|
||||||
|
[XmlArrayItem("Vowel")]
|
||||||
|
public List<string> vowels { get; set; }
|
||||||
|
/// <summary>
|
||||||
|
/// The way the software will join a syllable with the previous added element.
|
||||||
|
/// </summary>
|
||||||
|
[XmlElement("beforeSyllable")]
|
||||||
|
public BeforeSyllable beforeSyllable;
|
||||||
|
/// <summary>
|
||||||
|
/// The way the software will join the next element with the added syllable.
|
||||||
|
/// </summary>
|
||||||
|
[XmlElement("afterSyllable")]
|
||||||
|
public AfterSyllable afterSyllable;
|
||||||
|
|
||||||
|
public Syllabary() {
|
||||||
|
this.syllables = new List<string>();
|
||||||
|
this.consonants = new List<string>();
|
||||||
|
this.vowels = new List<string>();
|
||||||
|
}
|
||||||
|
|
||||||
|
protected Syllabary(Syllabary aSyllabary) {
|
||||||
|
title = aSyllabary.title;
|
||||||
|
syllables = new List<string>(aSyllabary.syllables);
|
||||||
|
consonants = new List<string>(aSyllabary.consonants);
|
||||||
|
vowels = new List<string>(aSyllabary.vowels);
|
||||||
|
beforeSyllable = aSyllabary.beforeSyllable;
|
||||||
|
afterSyllable = aSyllabary.afterSyllable;
|
||||||
|
}
|
||||||
|
|
||||||
|
public object Clone() {
|
||||||
|
return new Syllabary(this);
|
||||||
|
}
|
||||||
|
|
||||||
|
public string toString() {
|
||||||
|
return this.title;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
131
WordGen/Model/SyllabaryWrapper.cs
Normal file
@ -0,0 +1,131 @@
|
|||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.ComponentModel;
|
||||||
|
using WordGen.Model;
|
||||||
|
|
||||||
|
namespace WordGen {
|
||||||
|
public static class SyllabaryWrapper {
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// La liste des Syllabaire géré par l'application.
|
||||||
|
/// </summary>
|
||||||
|
private static List<Syllabary> _Sillabaries = new List<Syllabary>();
|
||||||
|
|
||||||
|
internal static int count() {
|
||||||
|
return _Sillabaries.Count;
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Vérifie que le nom fournit n'existe pas déjà dans la liste. Propose un nom alternatif également vérifié. La fonction est récustive à chaque modifications et garantie qu'il n'est pas possible de posséder le même nom dans la liste.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="Name">Le nom a vérifier.</param>
|
||||||
|
/// <param name="Original">Si le nom est déjà utilisé, le nom nom original</param>
|
||||||
|
/// <param name="Version">Le numéro utilisé pour différentier le nom a vérifier d'un nom déjà existant</param>
|
||||||
|
/// <returns></returns>
|
||||||
|
private static string CheckName(string Name, string Original = null, uint Version = 1) {
|
||||||
|
// Nous comparons le nom avec chaque item existant dans la liste.
|
||||||
|
foreach (Syllabary item in _Sillabaries ) {
|
||||||
|
// Si l'un des item à un nom identique au nom spécifié ...
|
||||||
|
if (item.title.Equals(Name)) {
|
||||||
|
|
||||||
|
// ... et si la fonction n'as pas déjà suggéré un nouveau nom ...
|
||||||
|
if (Original == null) {
|
||||||
|
// on sauvegarde le nom original pour les appels ultérieurs.
|
||||||
|
Original = Name;
|
||||||
|
// On suggère un nouveau nom basé sur l'ancien et une version.
|
||||||
|
Name = Name + " (" + Version + ")";
|
||||||
|
|
||||||
|
} else {
|
||||||
|
// Sinon...
|
||||||
|
// ...On reprends le nom original et on utilise la version (qui a été incrémenté dans la méthode appelante)
|
||||||
|
Name = Original + " (" + Version + ")";
|
||||||
|
}
|
||||||
|
|
||||||
|
// On vérifie que le nom suggéré n'existe pas déjà, en fournissant l'original et une version supérieure.
|
||||||
|
Name = CheckName(Name, Original, ++Version);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return Name;
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Enregistre dans le répertoire AppData les syllabaires de l'application sous forme de fichier XML. Les fichiers existant sont remplacé.
|
||||||
|
/// </summary>
|
||||||
|
public static void SaveToDrive() {
|
||||||
|
SyllabaryIoManager siom = new SyllabaryIoManager();
|
||||||
|
siom.saveAllSyllabaries(_Sillabaries, SyllabaryIoManager.UserAppData);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Récupère depuis le répertoire AppData les fichier de syllabaires existants.
|
||||||
|
/// </summary>
|
||||||
|
public static void LoadFromDrive() {
|
||||||
|
SyllabaryIoManager siom = new SyllabaryIoManager();
|
||||||
|
AddRange(siom.loadAllSyllabaries(SyllabaryIoManager.UserAppData));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Obtient le syllabaire de la liste des syllabaires géré par le wrapper, spécifié par son titre. Lève une exception si aucun syllabaire avec le titre spécifié n'est trouvé.
|
||||||
|
/// </summary>
|
||||||
|
public static Syllabary Get(string thisSyllabary) {
|
||||||
|
foreach (Syllabary item in _Sillabaries) {
|
||||||
|
if (item.title.Equals(thisSyllabary)) {
|
||||||
|
return item;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
throw new KeyNotFoundException();
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Obtient la liste complète des syllabaires géré par le wrapper.
|
||||||
|
/// </summary>
|
||||||
|
public static List<Syllabary> GetAll() {
|
||||||
|
return _Sillabaries;
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Ajoute le syllabaire spécifié à la liste des syllabaires géré par le wrapper.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="aSyllabary">Le syllabaire qui sera ajouté.</param>
|
||||||
|
public static void Add(Syllabary aSyllabary) {
|
||||||
|
aSyllabary.title = CheckName(aSyllabary.title);
|
||||||
|
_Sillabaries.Add(aSyllabary);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Remplace un syllabaire de la liste des syllabaires géré par le wrapper, spécifié par son titre, par un nouveau syllabaire spécifié. Lève une exception si aucun syllabaire avec le titre spécifié n'est trouvé.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="thisSyllabaryTitle">Le titre du syllabaire à remplacer.</param>
|
||||||
|
/// <param name="withThisSyllabary">Le syllabaire qui sera gardé.</param>
|
||||||
|
public static void Replace(string thisSyllabaryTitle, Syllabary withThisSyllabary) {
|
||||||
|
foreach (Syllabary item in _Sillabaries) {
|
||||||
|
if (item.title.Equals(thisSyllabaryTitle)) {
|
||||||
|
_Sillabaries.Remove(item);
|
||||||
|
withThisSyllabary.title = CheckName(withThisSyllabary.title);
|
||||||
|
_Sillabaries.Add(withThisSyllabary);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Supprime un syllabaire de la liste des syllabaires géré par le wrapper, spécifié par son titre. Lève une exception si aucun syllabaire avec le titre spécifié n'est trouvé.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="thisSyllabaryTitle">Le titre du syllabaire à supprimer.</param>
|
||||||
|
public static void Delete(string thisSyllabaryTitle) {
|
||||||
|
foreach (Syllabary item in _Sillabaries) {
|
||||||
|
if (item.title.Equals(thisSyllabaryTitle)) {
|
||||||
|
_Sillabaries.Remove(item);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Ajoute la liste des syllabaies spécifiés à la liste des syllabires géré par le wrapper.
|
||||||
|
/// </summary>
|
||||||
|
public static void AddRange(IEnumerable<Syllabary> thesesSyllabaries) {
|
||||||
|
_Sillabaries.AddRange(thesesSyllabaries);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
36
WordGen/Properties/AssemblyInfo.cs
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
using System.Reflection;
|
||||||
|
using System.Runtime.CompilerServices;
|
||||||
|
using System.Runtime.InteropServices;
|
||||||
|
|
||||||
|
// Les informations générales relatives à un assembly dépendent de
|
||||||
|
// l'ensemble d'attributs suivant. Changez les valeurs de ces attributs pour modifier les informations
|
||||||
|
// associées à un assembly.
|
||||||
|
[assembly: AssemblyTitle("WordGen")]
|
||||||
|
[assembly: AssemblyDescription("")]
|
||||||
|
[assembly: AssemblyConfiguration("")]
|
||||||
|
[assembly: AssemblyCompany("")]
|
||||||
|
[assembly: AssemblyProduct("WordGen")]
|
||||||
|
[assembly: AssemblyCopyright("Copyright © 2015")]
|
||||||
|
[assembly: AssemblyTrademark("")]
|
||||||
|
[assembly: AssemblyCulture("")]
|
||||||
|
|
||||||
|
// L'affectation de la valeur false à ComVisible rend les types invisibles dans cet assembly
|
||||||
|
// aux composants COM. Si vous devez accéder à un type dans cet assembly à partir de
|
||||||
|
// COM, affectez la valeur true à l'attribut ComVisible sur ce type.
|
||||||
|
[assembly: ComVisible(false)]
|
||||||
|
|
||||||
|
// Le GUID suivant est pour l'ID de la typelib si ce projet est exposé à COM
|
||||||
|
[assembly: Guid("c3eac4e8-793d-4e5c-a76e-2a8a8bb72562")]
|
||||||
|
|
||||||
|
// Les informations de version pour un assembly se composent des quatre valeurs suivantes :
|
||||||
|
//
|
||||||
|
// Version principale
|
||||||
|
// Version secondaire
|
||||||
|
// Numéro de build
|
||||||
|
// Révision
|
||||||
|
//
|
||||||
|
// Vous pouvez spécifier toutes les valeurs ou indiquer les numéros de build et de révision par défaut
|
||||||
|
// en utilisant '*', comme indiqué ci-dessous :
|
||||||
|
// [assembly: AssemblyVersion("1.0.*")]
|
||||||
|
[assembly: AssemblyVersion("1.0.0.0")]
|
||||||
|
[assembly: AssemblyFileVersion("1.0.0.0")]
|
@ -0,0 +1,10 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<!--
|
||||||
|
This file is automatically generated by Visual Studio .Net. It is
|
||||||
|
used to store generic object data source configuration information.
|
||||||
|
Renaming the file extension or editing the content of this file may
|
||||||
|
cause the file to be unrecognizable by the program.
|
||||||
|
-->
|
||||||
|
<GenericObjectDataSource DisplayName="Syllabary" Version="1.0" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
|
||||||
|
<TypeInfo>WordGen.Model.Syllabary, WordGen, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null</TypeInfo>
|
||||||
|
</GenericObjectDataSource>
|
603
WordGen/Properties/Resources.Designer.cs
generated
Normal file
@ -0,0 +1,603 @@
|
|||||||
|
//------------------------------------------------------------------------------
|
||||||
|
// <auto-generated>
|
||||||
|
// Ce code a été généré par un outil.
|
||||||
|
// Version du runtime :4.0.30319.42000
|
||||||
|
//
|
||||||
|
// Les modifications apportées à ce fichier peuvent provoquer un comportement incorrect et seront perdues si
|
||||||
|
// le code est régénéré.
|
||||||
|
// </auto-generated>
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
namespace WordGen.Properties {
|
||||||
|
using System;
|
||||||
|
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Une classe de ressource fortement typée destinée, entre autres, à la consultation des chaînes localisées.
|
||||||
|
/// </summary>
|
||||||
|
// Cette classe a été générée automatiquement par la classe StronglyTypedResourceBuilder
|
||||||
|
// à l'aide d'un outil, tel que ResGen ou Visual Studio.
|
||||||
|
// Pour ajouter ou supprimer un membre, modifiez votre fichier .ResX, puis réexécutez ResGen
|
||||||
|
// avec l'option /str ou régénérez votre projet VS.
|
||||||
|
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
|
||||||
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||||
|
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
|
||||||
|
internal class Resources {
|
||||||
|
|
||||||
|
private static global::System.Resources.ResourceManager resourceMan;
|
||||||
|
|
||||||
|
private static global::System.Globalization.CultureInfo resourceCulture;
|
||||||
|
|
||||||
|
[global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
|
||||||
|
internal Resources() {
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Retourne l'instance ResourceManager mise en cache utilisée par cette classe.
|
||||||
|
/// </summary>
|
||||||
|
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
|
||||||
|
internal static global::System.Resources.ResourceManager ResourceManager {
|
||||||
|
get {
|
||||||
|
if (object.ReferenceEquals(resourceMan, null)) {
|
||||||
|
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("WordGen.Properties.Resources", typeof(Resources).Assembly);
|
||||||
|
resourceMan = temp;
|
||||||
|
}
|
||||||
|
return resourceMan;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Remplace la propriété CurrentUICulture du thread actuel pour toutes
|
||||||
|
/// les recherches de ressources à l'aide de cette classe de ressource fortement typée.
|
||||||
|
/// </summary>
|
||||||
|
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
|
||||||
|
internal static global::System.Globalization.CultureInfo Culture {
|
||||||
|
get {
|
||||||
|
return resourceCulture;
|
||||||
|
}
|
||||||
|
set {
|
||||||
|
resourceCulture = value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une ressource localisée de type System.Drawing.Bitmap.
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Bitmap action_add_16xLG {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("action_add_16xLG", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une ressource localisée de type System.Drawing.Bitmap.
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Bitmap action_Cancel_16xLG {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("action_Cancel_16xLG", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une ressource localisée de type System.Drawing.Bitmap.
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Bitmap arrow_run_16xLG {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("arrow_run_16xLG", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une ressource localisée de type System.Drawing.Bitmap.
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Bitmap ASCube_16xLG {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("ASCube_16xLG", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une ressource localisée de type System.Drawing.Icon semblable à (Icône).
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Icon ASCube_16xLG1 {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("ASCube_16xLG1", resourceCulture);
|
||||||
|
return ((System.Drawing.Icon)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une ressource localisée de type System.Drawing.Bitmap.
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Bitmap ASCube_32xLG {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("ASCube_32xLG", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une ressource localisée de type System.Drawing.Icon semblable à (Icône).
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Icon ASCube_32xLG1 {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("ASCube_32xLG1", resourceCulture);
|
||||||
|
return ((System.Drawing.Icon)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une ressource localisée de type System.Drawing.Bitmap.
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Bitmap BrokenlinktoFile_431_16x {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("BrokenlinktoFile_431_16x", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une ressource localisée de type System.Drawing.Bitmap.
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Bitmap BrokenlinktoFile_431_32x {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("BrokenlinktoFile_431_32x", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une ressource localisée de type System.Drawing.Bitmap.
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Bitmap Close_16xLG {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("Close_16xLG", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une ressource localisée de type System.Drawing.Bitmap.
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Bitmap Close_6519 {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("Close_6519", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une ressource localisée de type System.Drawing.Bitmap.
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Bitmap CloseResults_8579 {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("CloseResults_8579", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une ressource localisée de type System.Drawing.Bitmap.
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Bitmap Copy_6524 {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("Copy_6524", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une ressource localisée de type System.Drawing.Bitmap.
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Bitmap Cut_6523 {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("Cut_6523", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une ressource localisée de type System.Drawing.Bitmap.
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Bitmap EditTitleString_357 {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("EditTitleString_357", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une ressource localisée de type System.Drawing.Bitmap.
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Bitmap folder_Open_16xLG {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("folder_Open_16xLG", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une ressource localisée de type System.Drawing.Bitmap.
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Bitmap Folder_special_open__5844_16x {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("Folder_special_open__5844_16x", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une ressource localisée de type System.Drawing.Bitmap.
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Bitmap gear_16xLG {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("gear_16xLG", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une ressource localisée de type System.Drawing.Bitmap.
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Bitmap lock_16xLG {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("lock_16xLG", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une ressource localisée de type System.Drawing.Bitmap.
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Bitmap NewBuildDefinition_8952 {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("NewBuildDefinition_8952", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une ressource localisée de type System.Drawing.Bitmap.
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Bitmap NewFile_6276 {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("NewFile_6276", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une ressource localisée de type System.Drawing.Bitmap.
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Bitmap Open_6529 {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("Open_6529", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une ressource localisée de type System.Drawing.Bitmap.
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Bitmap Paste_6520 {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("Paste_6520", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une ressource localisée de type System.Drawing.Bitmap.
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Bitmap PencilAngled_16xLG_color {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("PencilAngled_16xLG_color", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une ressource localisée de type System.Drawing.Bitmap.
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Bitmap RefactoringLog_12810 {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("RefactoringLog_12810", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une ressource localisée de type System.Drawing.Icon semblable à (Icône).
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Icon RefactoringLog_128101 {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("RefactoringLog_128101", resourceCulture);
|
||||||
|
return ((System.Drawing.Icon)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une ressource localisée de type System.Drawing.Bitmap.
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Bitmap Remove_16xLG {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("Remove_16xLG", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une ressource localisée de type System.Drawing.Bitmap.
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Bitmap Running_16xLG {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("Running_16xLG", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une ressource localisée de type System.Drawing.Bitmap.
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Bitmap save_16xLG {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("save_16xLG", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une ressource localisée de type System.Drawing.Bitmap.
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Bitmap Saveall_6518 {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("Saveall_6518", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une ressource localisée de type System.Drawing.Bitmap.
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Bitmap StatusAnnotations_Alert_16xMD {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("StatusAnnotations_Alert_16xMD", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une ressource localisée de type System.Drawing.Bitmap.
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Bitmap StatusAnnotations_Alert_16xMD_color {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("StatusAnnotations_Alert_16xMD_color", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une ressource localisée de type System.Drawing.Bitmap.
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Bitmap StatusAnnotations_Alert_32xMD {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("StatusAnnotations_Alert_32xMD", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une ressource localisée de type System.Drawing.Bitmap.
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Bitmap StatusAnnotations_Alert_32xMD_color {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("StatusAnnotations_Alert_32xMD_color", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une ressource localisée de type System.Drawing.Bitmap.
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Bitmap StatusAnnotations_Complete_and_ok_16xLG {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("StatusAnnotations_Complete_and_ok_16xLG", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une ressource localisée de type System.Drawing.Bitmap.
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Bitmap StatusAnnotations_Complete_and_ok_16xLG_color {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("StatusAnnotations_Complete_and_ok_16xLG_color", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une ressource localisée de type System.Drawing.Bitmap.
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Bitmap StatusAnnotations_Help_and_inconclusive_16xLG_color {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("StatusAnnotations_Help_and_inconclusive_16xLG_color", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une ressource localisée de type System.Drawing.Bitmap.
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Bitmap StatusAnnotations_Information_16xMD {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("StatusAnnotations_Information_16xMD", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une ressource localisée de type System.Drawing.Bitmap.
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Bitmap StatusAnnotations_Warning_16xLG {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("StatusAnnotations_Warning_16xLG", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une ressource localisée de type System.Drawing.Icon semblable à (Icône).
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Icon StatusAnnotations_Warning_16xLG_color {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("StatusAnnotations_Warning_16xLG_color", resourceCulture);
|
||||||
|
return ((System.Drawing.Icon)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une ressource localisée de type System.Drawing.Bitmap.
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Bitmap StatusAnnotations_Warning_16xLG_color1 {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("StatusAnnotations_Warning_16xLG_color1", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une ressource localisée de type System.Drawing.Icon semblable à (Icône).
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Icon StatusAnnotations_Warning_16xLG1 {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("StatusAnnotations_Warning_16xLG1", resourceCulture);
|
||||||
|
return ((System.Drawing.Icon)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une ressource localisée de type System.Drawing.Bitmap.
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Bitmap Strings_7959_16x {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("Strings_7959_16x", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une ressource localisée de type System.Drawing.Bitmap.
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Bitmap Strings_7959_32x {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("Strings_7959_32x", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une ressource localisée de type System.Drawing.Bitmap.
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Bitmap Textfile_818_16x {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("Textfile_818_16x", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une ressource localisée de type System.Drawing.Icon semblable à (Icône).
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Icon Textfile_818_16x1 {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("Textfile_818_16x1", resourceCulture);
|
||||||
|
return ((System.Drawing.Icon)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une ressource localisée de type System.Drawing.Bitmap.
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Bitmap Textfile_818_32x {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("Textfile_818_32x", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une ressource localisée de type System.Drawing.Icon semblable à (Icône).
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Icon Textfile_818_32x1 {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("Textfile_818_32x1", resourceCulture);
|
||||||
|
return ((System.Drawing.Icon)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une ressource localisée de type System.Drawing.Bitmap.
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Bitmap unlock_16xLG {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("unlock_16xLG", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une ressource localisée de type System.Drawing.Bitmap.
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Bitmap Views_Content_16 {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("Views_Content_16", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une ressource localisée de type System.Drawing.Icon semblable à (Icône).
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Icon Views_Content_161 {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("Views_Content_161", resourceCulture);
|
||||||
|
return ((System.Drawing.Icon)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une ressource localisée de type System.Drawing.Bitmap.
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Bitmap Views_Detail_16 {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("Views_Detail_16", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une ressource localisée de type System.Drawing.Bitmap.
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Bitmap Views_list_16 {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("Views_list_16", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une ressource localisée de type System.Drawing.Bitmap.
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Bitmap WindowsForm_817_16x {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("WindowsForm_817_16x", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
283
WordGen/Properties/Resources.resx
Normal file
@ -0,0 +1,283 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<root>
|
||||||
|
<!--
|
||||||
|
Microsoft ResX Schema
|
||||||
|
|
||||||
|
Version 2.0
|
||||||
|
|
||||||
|
The primary goals of this format is to allow a simple XML format
|
||||||
|
that is mostly human readable. The generation and parsing of the
|
||||||
|
various data types are done through the TypeConverter classes
|
||||||
|
associated with the data types.
|
||||||
|
|
||||||
|
Example:
|
||||||
|
|
||||||
|
... ado.net/XML headers & schema ...
|
||||||
|
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||||
|
<resheader name="version">2.0</resheader>
|
||||||
|
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||||
|
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||||
|
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||||
|
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||||
|
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||||
|
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||||
|
</data>
|
||||||
|
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||||
|
<comment>This is a comment</comment>
|
||||||
|
</data>
|
||||||
|
|
||||||
|
There are any number of "resheader" rows that contain simple
|
||||||
|
name/value pairs.
|
||||||
|
|
||||||
|
Each data row contains a name, and value. The row also contains a
|
||||||
|
type or mimetype. Type corresponds to a .NET class that support
|
||||||
|
text/value conversion through the TypeConverter architecture.
|
||||||
|
Classes that don't support this are serialized and stored with the
|
||||||
|
mimetype set.
|
||||||
|
|
||||||
|
The mimetype is used for serialized objects, and tells the
|
||||||
|
ResXResourceReader how to depersist the object. This is currently not
|
||||||
|
extensible. For a given mimetype the value must be set accordingly:
|
||||||
|
|
||||||
|
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||||
|
that the ResXResourceWriter will generate, however the reader can
|
||||||
|
read any of the formats listed below.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.binary.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.soap.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||||
|
value : The object must be serialized into a byte array
|
||||||
|
: using a System.ComponentModel.TypeConverter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
-->
|
||||||
|
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||||
|
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||||
|
<xsd:element name="root" msdata:IsDataSet="true">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:choice maxOccurs="unbounded">
|
||||||
|
<xsd:element name="metadata">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="assembly">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:attribute name="alias" type="xsd:string" />
|
||||||
|
<xsd:attribute name="name" type="xsd:string" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="data">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="resheader">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:choice>
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:schema>
|
||||||
|
<resheader name="resmimetype">
|
||||||
|
<value>text/microsoft-resx</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="version">
|
||||||
|
<value>2.0</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="reader">
|
||||||
|
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="writer">
|
||||||
|
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||||
|
<data name="action_add_16xLG" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\action_add_16xLG.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="action_Cancel_16xLG" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\action_Cancel_16xLG.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="arrow_run_16xLG" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\arrow_run_16xLG.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="CloseResults_8579" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\CloseResults_8579.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="Close_16xLG" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\Close_16xLG.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="Close_6519" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\Close_6519.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="Copy_6524" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\Copy_6524.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="Cut_6523" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\Cut_6523.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="EditTitleString_357" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\EditTitleString_357.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="folder_Open_16xLG" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\folder_Open_16xLG.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="Folder_special_open__5844_16x" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\Folder(special-open)_5844_16x.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="NewBuildDefinition_8952" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\NewBuildDefinition_8952.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="NewFile_6276" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\NewFile_6276.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="Open_6529" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\Open_6529.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="Paste_6520" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\Paste_6520.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="RefactoringLog_12810" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\RefactoringLog_12810.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="Remove_16xLG" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\Remove_16xLG.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="Running_16xLG" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\Running_16xLG.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="Saveall_6518" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\Saveall_6518.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="save_16xLG" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\save_16xLG.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="StatusAnnotations_Complete_and_ok_16xLG" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\StatusAnnotations_Complete_and_ok_16xLG.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="StatusAnnotations_Complete_and_ok_16xLG_color" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\StatusAnnotations_Complete_and_ok_16xLG_color.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="StatusAnnotations_Help_and_inconclusive_16xLG_color" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\StatusAnnotations_Help_and_inconclusive_16xLG_color.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="StatusAnnotations_Warning_16xLG" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\StatusAnnotations_Warning_16xLG.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="StatusAnnotations_Warning_16xLG_color" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\StatusAnnotations_Warning_16xLG_color.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="StatusAnnotations_Warning_16xLG_color1" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\StatusAnnotations_Warning_16xLG_color.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="ASCube_16xLG" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\ASCube_16xLG.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="ASCube_32xLG" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\ASCube_32xLG.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="PencilAngled_16xLG_color" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\PencilAngled_16xLG_color.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="Textfile_818_16x" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\Textfile_818_16x.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="Textfile_818_32x" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\Textfile_818_32x.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="lock_16xLG" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\lock_16xLG.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="BrokenlinktoFile_431_16x" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\BrokenlinktoFile_431_16x.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="BrokenlinktoFile_431_32x" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\BrokenlinktoFile_431_32x.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="gear_16xLG" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\gear_16xLG.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="StatusAnnotations_Alert_16xMD" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\StatusAnnotations_Alert_16xMD.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="StatusAnnotations_Alert_16xMD_color" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\StatusAnnotations_Alert_16xMD_color.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="StatusAnnotations_Alert_32xMD" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\StatusAnnotations_Alert_32xMD.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="StatusAnnotations_Alert_32xMD_color" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\StatusAnnotations_Alert_32xMD_color.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="Strings_7959_16x" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\Strings_7959_16x.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="Strings_7959_32x" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\Strings_7959_32x.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="Views_Content_16" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\Views_Content_16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="Views_Detail_16" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\Views_Detail_16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="Views_list_16" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\Views_list_16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="WindowsForm_817_16x" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\WindowsForm_817_16x.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="StatusAnnotations_Information_16xMD" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\StatusAnnotations_Information_16xMD.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="unlock_16xLG" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\unlock_16xLG.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="ASCube_16xLG1" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\ASCube_16xLG.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="RefactoringLog_128101" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\RefactoringLog_12810.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="StatusAnnotations_Warning_16xLG1" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\StatusAnnotations_Warning_16xLG.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="Textfile_818_16x1" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\Textfile_818_16x.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="Views_Content_161" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\Views_Content_16.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="ASCube_32xLG1" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\ASCube_32xLG.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="Textfile_818_32x1" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\Textfile_818_32x.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
</root>
|
38
WordGen/Properties/Settings.Designer.cs
generated
Normal file
@ -0,0 +1,38 @@
|
|||||||
|
//------------------------------------------------------------------------------
|
||||||
|
// <auto-generated>
|
||||||
|
// Ce code a été généré par un outil.
|
||||||
|
// Version du runtime :4.0.30319.42000
|
||||||
|
//
|
||||||
|
// Les modifications apportées à ce fichier peuvent provoquer un comportement incorrect et seront perdues si
|
||||||
|
// le code est régénéré.
|
||||||
|
// </auto-generated>
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
namespace WordGen.Properties {
|
||||||
|
|
||||||
|
|
||||||
|
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
|
||||||
|
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "14.0.0.0")]
|
||||||
|
public sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
|
||||||
|
|
||||||
|
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
|
||||||
|
|
||||||
|
public static Settings Default {
|
||||||
|
get {
|
||||||
|
return defaultInstance;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||||
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||||
|
[global::System.Configuration.DefaultSettingValueAttribute("0, 0")]
|
||||||
|
public global::System.Drawing.Point PreviousLocation {
|
||||||
|
get {
|
||||||
|
return ((global::System.Drawing.Point)(this["PreviousLocation"]));
|
||||||
|
}
|
||||||
|
set {
|
||||||
|
this["PreviousLocation"] = value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
9
WordGen/Properties/Settings.settings
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
<?xml version='1.0' encoding='utf-8'?>
|
||||||
|
<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)" GeneratedClassNamespace="WordGen.Properties" GeneratedClassName="Settings">
|
||||||
|
<Profiles />
|
||||||
|
<Settings>
|
||||||
|
<Setting Name="PreviousLocation" Type="System.Drawing.Point" Scope="User">
|
||||||
|
<Value Profile="(Default)">0, 0</Value>
|
||||||
|
</Setting>
|
||||||
|
</Settings>
|
||||||
|
</SettingsFile>
|
BIN
WordGen/Resources/ASCube_16xLG.ico
Normal file
After Width: | Height: | Size: 1.1 KiB |
BIN
WordGen/Resources/ASCube_16xLG.png
Normal file
After Width: | Height: | Size: 407 B |
BIN
WordGen/Resources/ASCube_32xLG.ico
Normal file
After Width: | Height: | Size: 5.3 KiB |
BIN
WordGen/Resources/ASCube_32xLG.png
Normal file
After Width: | Height: | Size: 599 B |
BIN
WordGen/Resources/BrokenlinktoFile_431_16x.png
Normal file
After Width: | Height: | Size: 3.0 KiB |
BIN
WordGen/Resources/BrokenlinktoFile_431_32x.png
Normal file
After Width: | Height: | Size: 3.2 KiB |
BIN
WordGen/Resources/CloseResults_8579.png
Normal file
After Width: | Height: | Size: 252 B |
BIN
WordGen/Resources/Close_16xLG.png
Normal file
After Width: | Height: | Size: 206 B |
BIN
WordGen/Resources/Close_6519.png
Normal file
After Width: | Height: | Size: 3.0 KiB |
BIN
WordGen/Resources/Copy_6524.png
Normal file
After Width: | Height: | Size: 194 B |
BIN
WordGen/Resources/Cut_6523.png
Normal file
After Width: | Height: | Size: 319 B |
BIN
WordGen/Resources/EditTitleString_357.png
Normal file
After Width: | Height: | Size: 350 B |
BIN
WordGen/Resources/Folder(special-open)_5844_16x.png
Normal file
After Width: | Height: | Size: 417 B |
BIN
WordGen/Resources/NewBuildDefinition_8952.png
Normal file
After Width: | Height: | Size: 353 B |
BIN
WordGen/Resources/NewFile_6276.png
Normal file
After Width: | Height: | Size: 270 B |
BIN
WordGen/Resources/Open_6529.png
Normal file
After Width: | Height: | Size: 411 B |
BIN
WordGen/Resources/Paste_6520.png
Normal file
After Width: | Height: | Size: 265 B |
BIN
WordGen/Resources/PencilAngled_16xLG_color.png
Normal file
After Width: | Height: | Size: 360 B |
BIN
WordGen/Resources/RefactoringLog12810_32.png
Normal file
After Width: | Height: | Size: 6.8 KiB |
BIN
WordGen/Resources/RefactoringLog_12810.ico
Normal file
After Width: | Height: | Size: 1.1 KiB |
BIN
WordGen/Resources/RefactoringLog_12810.png
Normal file
After Width: | Height: | Size: 2.8 KiB |
BIN
WordGen/Resources/Remove_16xLG.png
Normal file
After Width: | Height: | Size: 143 B |
BIN
WordGen/Resources/Running_16xLG.png
Normal file
After Width: | Height: | Size: 409 B |
BIN
WordGen/Resources/Saveall_6518.png
Normal file
After Width: | Height: | Size: 2.9 KiB |
BIN
WordGen/Resources/StatusAnnotations_Alert_16xMD.png
Normal file
After Width: | Height: | Size: 261 B |
BIN
WordGen/Resources/StatusAnnotations_Alert_16xMD_color.png
Normal file
After Width: | Height: | Size: 295 B |
BIN
WordGen/Resources/StatusAnnotations_Alert_32xMD.png
Normal file
After Width: | Height: | Size: 321 B |
BIN
WordGen/Resources/StatusAnnotations_Alert_32xMD_color.png
Normal file
After Width: | Height: | Size: 334 B |
BIN
WordGen/Resources/StatusAnnotations_Complete_and_ok_16xLG.png
Normal file
After Width: | Height: | Size: 379 B |
After Width: | Height: | Size: 390 B |
After Width: | Height: | Size: 388 B |
BIN
WordGen/Resources/StatusAnnotations_Information_16xMD.png
Normal file
After Width: | Height: | Size: 311 B |
BIN
WordGen/Resources/StatusAnnotations_Warning_16xLG.ico
Normal file
After Width: | Height: | Size: 1.1 KiB |
BIN
WordGen/Resources/StatusAnnotations_Warning_16xLG.png
Normal file
After Width: | Height: | Size: 259 B |
BIN
WordGen/Resources/StatusAnnotations_Warning_16xLG_color.ico
Normal file
After Width: | Height: | Size: 1.1 KiB |
BIN
WordGen/Resources/StatusAnnotations_Warning_16xLG_color.png
Normal file
After Width: | Height: | Size: 277 B |
BIN
WordGen/Resources/Strings_7959_16x.png
Normal file
After Width: | Height: | Size: 154 B |
BIN
WordGen/Resources/Strings_7959_32x.png
Normal file
After Width: | Height: | Size: 239 B |
BIN
WordGen/Resources/Textfile_818_16x.ico
Normal file
After Width: | Height: | Size: 1.1 KiB |
BIN
WordGen/Resources/Textfile_818_16x.png
Normal file
After Width: | Height: | Size: 239 B |
BIN
WordGen/Resources/Textfile_818_32x.ico
Normal file
After Width: | Height: | Size: 5.3 KiB |
BIN
WordGen/Resources/Textfile_818_32x.png
Normal file
After Width: | Height: | Size: 3.0 KiB |
BIN
WordGen/Resources/Views_7953.png
Normal file
After Width: | Height: | Size: 144 B |
BIN
WordGen/Resources/Views_Content_16.ico
Normal file
After Width: | Height: | Size: 1.1 KiB |
BIN
WordGen/Resources/Views_Content_16.png
Normal file
After Width: | Height: | Size: 2.8 KiB |
BIN
WordGen/Resources/Views_Detail_16.png
Normal file
After Width: | Height: | Size: 3.7 KiB |
BIN
WordGen/Resources/Views_list_16.png
Normal file
After Width: | Height: | Size: 3.7 KiB |
BIN
WordGen/Resources/WindowsForm_817_16x.png
Normal file
After Width: | Height: | Size: 145 B |
BIN
WordGen/Resources/action_Cancel_16xLG.png
Normal file
After Width: | Height: | Size: 637 B |
BIN
WordGen/Resources/action_add_16xLG.png
Normal file
After Width: | Height: | Size: 215 B |
BIN
WordGen/Resources/arrow_run_16xLG.png
Normal file
After Width: | Height: | Size: 347 B |
BIN
WordGen/Resources/folder_Open_16xLG.png
Normal file
After Width: | Height: | Size: 286 B |
BIN
WordGen/Resources/gear_16xLG.png
Normal file
After Width: | Height: | Size: 455 B |
BIN
WordGen/Resources/lock_16xLG.png
Normal file
After Width: | Height: | Size: 268 B |
BIN
WordGen/Resources/save_16xLG.png
Normal file
After Width: | Height: | Size: 2.9 KiB |
BIN
WordGen/Resources/unlock_16xLG.png
Normal file
After Width: | Height: | Size: 285 B |
150
WordGen/View/LocalizationString/Messages.en.resx
Normal file
@ -0,0 +1,150 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<root>
|
||||||
|
<!--
|
||||||
|
Microsoft ResX Schema
|
||||||
|
|
||||||
|
Version 2.0
|
||||||
|
|
||||||
|
The primary goals of this format is to allow a simple XML format
|
||||||
|
that is mostly human readable. The generation and parsing of the
|
||||||
|
various data types are done through the TypeConverter classes
|
||||||
|
associated with the data types.
|
||||||
|
|
||||||
|
Example:
|
||||||
|
|
||||||
|
... ado.net/XML headers & schema ...
|
||||||
|
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||||
|
<resheader name="version">2.0</resheader>
|
||||||
|
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||||
|
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||||
|
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||||
|
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||||
|
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||||
|
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||||
|
</data>
|
||||||
|
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||||
|
<comment>This is a comment</comment>
|
||||||
|
</data>
|
||||||
|
|
||||||
|
There are any number of "resheader" rows that contain simple
|
||||||
|
name/value pairs.
|
||||||
|
|
||||||
|
Each data row contains a name, and value. The row also contains a
|
||||||
|
type or mimetype. Type corresponds to a .NET class that support
|
||||||
|
text/value conversion through the TypeConverter architecture.
|
||||||
|
Classes that don't support this are serialized and stored with the
|
||||||
|
mimetype set.
|
||||||
|
|
||||||
|
The mimetype is used for serialized objects, and tells the
|
||||||
|
ResXResourceReader how to depersist the object. This is currently not
|
||||||
|
extensible. For a given mimetype the value must be set accordingly:
|
||||||
|
|
||||||
|
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||||
|
that the ResXResourceWriter will generate, however the reader can
|
||||||
|
read any of the formats listed below.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.binary.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.soap.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||||
|
value : The object must be serialized into a byte array
|
||||||
|
: using a System.ComponentModel.TypeConverter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
-->
|
||||||
|
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||||
|
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||||
|
<xsd:element name="root" msdata:IsDataSet="true">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:choice maxOccurs="unbounded">
|
||||||
|
<xsd:element name="metadata">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="assembly">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:attribute name="alias" type="xsd:string" />
|
||||||
|
<xsd:attribute name="name" type="xsd:string" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="data">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="resheader">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:choice>
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:schema>
|
||||||
|
<resheader name="resmimetype">
|
||||||
|
<value>text/microsoft-resx</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="version">
|
||||||
|
<value>2.0</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="reader">
|
||||||
|
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="writer">
|
||||||
|
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
<data name="ManageSyllabaireForm_ConfirmDelete1Item" xml:space="preserve">
|
||||||
|
<value>(EN) Voulez-vous vraiment supprimer le syllabaire "{0}" de façon permanente ?</value>
|
||||||
|
</data>
|
||||||
|
<data name="ManageSyllabaireForm_ConfirmDelete1ItemTitle" xml:space="preserve">
|
||||||
|
<value>(EN) Supprimer le syllabaire</value>
|
||||||
|
</data>
|
||||||
|
<data name="ManageSyllabaireForm_ConfirmDeleteManyItems" xml:space="preserve">
|
||||||
|
<value>(EN) Vous avez plusieurs syllabaires de sélectionné. Voulez-vous vraiment supprimer ces {0} syllabaires de façon permanente ?</value>
|
||||||
|
</data>
|
||||||
|
<data name="ManageSyllabaireForm_ConfirmDeleteManyItemsTitle" xml:space="preserve">
|
||||||
|
<value>(EN) Supprimer plusieurs syllabaires</value>
|
||||||
|
</data>
|
||||||
|
<data name="SyllabaireForm_ErrorNoName" xml:space="preserve">
|
||||||
|
<value>The sillabary is mandatory.</value>
|
||||||
|
</data>
|
||||||
|
<data name="SyllabaireForm_ErrorNoUseElements" xml:space="preserve">
|
||||||
|
<value>The sillabary must contains at least vowels, consonants or sillables.</value>
|
||||||
|
</data>
|
||||||
|
<data name="SyllabaireForm_HelpBeginSyllable" xml:space="preserve">
|
||||||
|
<value>(EN) Choisir automatiquement : Choisit parmis les syllables listés celles qui commencent par une voyelle si la syllable est après une consonne, et inversement.
|
||||||
|
|
||||||
|
Intercaller automatiquement : Intercale une consonne si la syllable est après une voyelle et si elle commence également par une voyelle, et inversement.
|
||||||
|
|
||||||
|
Ne pas adapter : Applique la syllabe sans autres modifications.</value>
|
||||||
|
</data>
|
||||||
|
<data name="SyllabaireForm_HelpEndSyllable" xml:space="preserve">
|
||||||
|
<value>(EN) Intercaler automatiquement : Intercale une consonne si la syllable est suivit d'une voyelle et si elle finit également par une voyelle, et inversement.
|
||||||
|
|
||||||
|
Ne pas adapter : Applique la sillable sans autres modifications.</value>
|
||||||
|
</data>
|
||||||
|
</root>
|
224
WordGen/View/LocalizationString/Messages.resx
Normal file
@ -0,0 +1,224 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<root>
|
||||||
|
<!--
|
||||||
|
Microsoft ResX Schema
|
||||||
|
|
||||||
|
Version 2.0
|
||||||
|
|
||||||
|
The primary goals of this format is to allow a simple XML format
|
||||||
|
that is mostly human readable. The generation and parsing of the
|
||||||
|
various data types are done through the TypeConverter classes
|
||||||
|
associated with the data types.
|
||||||
|
|
||||||
|
Example:
|
||||||
|
|
||||||
|
... ado.net/XML headers & schema ...
|
||||||
|
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||||
|
<resheader name="version">2.0</resheader>
|
||||||
|
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||||
|
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||||
|
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||||
|
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||||
|
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||||
|
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||||
|
</data>
|
||||||
|
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||||
|
<comment>This is a comment</comment>
|
||||||
|
</data>
|
||||||
|
|
||||||
|
There are any number of "resheader" rows that contain simple
|
||||||
|
name/value pairs.
|
||||||
|
|
||||||
|
Each data row contains a name, and value. The row also contains a
|
||||||
|
type or mimetype. Type corresponds to a .NET class that support
|
||||||
|
text/value conversion through the TypeConverter architecture.
|
||||||
|
Classes that don't support this are serialized and stored with the
|
||||||
|
mimetype set.
|
||||||
|
|
||||||
|
The mimetype is used for serialized objects, and tells the
|
||||||
|
ResXResourceReader how to depersist the object. This is currently not
|
||||||
|
extensible. For a given mimetype the value must be set accordingly:
|
||||||
|
|
||||||
|
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||||
|
that the ResXResourceWriter will generate, however the reader can
|
||||||
|
read any of the formats listed below.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.binary.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.soap.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||||
|
value : The object must be serialized into a byte array
|
||||||
|
: using a System.ComponentModel.TypeConverter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
-->
|
||||||
|
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||||
|
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||||
|
<xsd:element name="root" msdata:IsDataSet="true">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:choice maxOccurs="unbounded">
|
||||||
|
<xsd:element name="metadata">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="assembly">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:attribute name="alias" type="xsd:string" />
|
||||||
|
<xsd:attribute name="name" type="xsd:string" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="data">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="resheader">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:choice>
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:schema>
|
||||||
|
<resheader name="resmimetype">
|
||||||
|
<value>text/microsoft-resx</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="version">
|
||||||
|
<value>2.0</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="reader">
|
||||||
|
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="writer">
|
||||||
|
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
<data name="GeneratorError_EmptyConsonnantListException" xml:space="preserve">
|
||||||
|
<value>Aucune consonne n'as été trouvée. Ajoutez des consonnes à votre syllabaire, retirez les consonnes de la syntaxe de votre mot (caractère 'c') ou paramétrez votre syllabaire pour ne pas insérer automatiquement une consonne entre une voyelle et une syllabe.</value>
|
||||||
|
</data>
|
||||||
|
<data name="GeneratorError_EmptySyllableListException" xml:space="preserve">
|
||||||
|
<value>Aucune syllabe n'as été trouvée. Ajoutez des syllabe à votre syllabaire ou retirez les syllabes de la syntaxe de votre mot (caractère 's').</value>
|
||||||
|
</data>
|
||||||
|
<data name="GeneratorError_EmptyVowelListException" xml:space="preserve">
|
||||||
|
<value>Aucune voyelle n'as été trouvée. Ajoutez des voyelles à votre syllabaire, retirez les voyelles de la syntaxe de votre mot (caractère 'v') ou paramétrez votre syllabaire pour ne pas insérer automatiquement une voyelle entre une consonne et une syllabe.</value>
|
||||||
|
</data>
|
||||||
|
<data name="GeneratorError_NoBeforeSyllableMatchException" xml:space="preserve">
|
||||||
|
<value>Aucune syllabe adaptée n'as été trouvée. Completez le syllabaire avec d'avantages de syllabes ou changez le comportement de celui-ci lors de l'ajout d'une syllabe.</value>
|
||||||
|
</data>
|
||||||
|
<data name="MainForm_ErrorEmptySyntaxe" xml:space="preserve">
|
||||||
|
<value>La syntaxe de génération ne peux pas être vide.</value>
|
||||||
|
</data>
|
||||||
|
<data name="MainForm_ErrorInvalideNbWords" xml:space="preserve">
|
||||||
|
<value>Il dois y avoir au moins 1 mot à générer.</value>
|
||||||
|
</data>
|
||||||
|
<data name="MainForm_ErrorInvalideWordLenght" xml:space="preserve">
|
||||||
|
<value>La longueur des mots ne peux pas être négatif ou nulle.</value>
|
||||||
|
</data>
|
||||||
|
<data name="MainForm_ErrorNoSyllabaryAvailable" xml:space="preserve">
|
||||||
|
<value>Aucun syllabaire n'a été créé. Utilisez le bouton "Gérer..." pour créer ou importer un (des) syllabaire(s).</value>
|
||||||
|
</data>
|
||||||
|
<data name="MainForm_ErrorNoSyllabarySelected" xml:space="preserve">
|
||||||
|
<value>Aucun syllabaire n'est sélectionné.</value>
|
||||||
|
</data>
|
||||||
|
<data name="MainForm_LabelCharSingular" xml:space="preserve">
|
||||||
|
<value />
|
||||||
|
</data>
|
||||||
|
<data name="MainForm_LabelCharPlural" xml:space="preserve">
|
||||||
|
<value>s</value>
|
||||||
|
</data>
|
||||||
|
<data name="MainForm_HelpCustomSyntax" xml:space="preserve">
|
||||||
|
<value>Utilisez les caractères suivants pour composer une syntaxe personnalisée :
|
||||||
|
٠ 'c' : une consonne au hasard,
|
||||||
|
٠ 'v' : une voyelle au hasard,
|
||||||
|
٠ 's' : une syllabe au hasard.
|
||||||
|
|
||||||
|
Par exemple, "cvcvcv" peut composer des mots comme "Figaro", "Tomate".
|
||||||
|
|
||||||
|
Les paramètres du syllabaire et les petites listes de consomne, voyelle et syllabe peuvent provoquer des erreurs de génération.</value>
|
||||||
|
</data>
|
||||||
|
<data name="ManageSyllabaireForm_ConfirmDelete1Item" xml:space="preserve">
|
||||||
|
<value>Voulez-vous vraiment supprimer le syllabaire "{0}" de façon permanente ?</value>
|
||||||
|
</data>
|
||||||
|
<data name="ManageSyllabaireForm_ConfirmDelete1ItemTitle" xml:space="preserve">
|
||||||
|
<value>Supprimer le syllabaire</value>
|
||||||
|
</data>
|
||||||
|
<data name="ManageSyllabaireForm_ConfirmDeleteManyItems" xml:space="preserve">
|
||||||
|
<value>Vous avez plusieurs syllabaires de sélectionné. Voulez-vous vraiment supprimer ces {0} syllabaires de façon permanente ?</value>
|
||||||
|
</data>
|
||||||
|
<data name="ManageSyllabaireForm_ConfirmDeleteManyItemsTitle" xml:space="preserve">
|
||||||
|
<value>Supprimer plusieurs syllabaires</value>
|
||||||
|
</data>
|
||||||
|
<data name="SyllabaireForm_ErrorNoName" xml:space="preserve">
|
||||||
|
<value>Le nom du syllabaire est obligatoire.</value>
|
||||||
|
</data>
|
||||||
|
<data name="SyllabaireForm_ErrorNoUseElements" xml:space="preserve">
|
||||||
|
<value>Le syllabaire doit contenir au moins des consonnes, des voyelles où des syllabes.</value>
|
||||||
|
</data>
|
||||||
|
<data name="SyllabaireForm_HelpBeginSyllable" xml:space="preserve">
|
||||||
|
<value>٠ Choisir automatiquement : Choisit parmis les syllabes listés celles qui commencent par une voyelle si la syllabe est après une consonne, et inversement.
|
||||||
|
٠ Intercaller automatiquement : Intercale une consonne si la syllabe est après une voyelle et si elle commence également par une voyelle, et inversement.
|
||||||
|
٠ Ne pas adapter : Applique la syllabe sans autres modifications.</value>
|
||||||
|
</data>
|
||||||
|
<data name="SyllabaireForm_HelpBeginSyllableTitle" xml:space="preserve">
|
||||||
|
<value>Quoi faire avant d'insérer une syllabe ?</value>
|
||||||
|
</data>
|
||||||
|
<data name="SyllabaireForm_HelpEndSyllable" xml:space="preserve">
|
||||||
|
<value>٠ Intercaler automatiquement : Intercale une consonne si la syllabe est suivit d'une voyelle et si elle finit également par une voyelle, et inversement.
|
||||||
|
٠ Ne pas adapter : Applique la sillabe sans autres modifications.</value>
|
||||||
|
</data>
|
||||||
|
<data name="SyllabaireForm_HelpEndSyllableTitle" xml:space="preserve">
|
||||||
|
<value>Quoi faire après avoir inséré une syllabe ?</value>
|
||||||
|
</data>
|
||||||
|
<data name="MainForm_ErrorInvalidBeginVowelPercent" xml:space="preserve">
|
||||||
|
<value>La probabilité qu'un mot commence par une voyelle ne peux être négative ou supérieur à 100%.</value>
|
||||||
|
</data>
|
||||||
|
<data name="MainForm_ErrorInvalidSyllablePercent" xml:space="preserve">
|
||||||
|
<value>La probabilité qu'un caractère soit une syllabe ne peux être négative ou supérieur à 100%.</value>
|
||||||
|
</data>
|
||||||
|
<data name="MainForm_HelpBeginSyllabaryPercent" xml:space="preserve">
|
||||||
|
<value>Définit la probabilité (en pourcent) qu'un mot soit généré en commençant par une syllabe. Plus la valeur est élevée, plus la probabilité est forte.</value>
|
||||||
|
</data>
|
||||||
|
<data name="MainForm_HelpBeginVowelPercent" xml:space="preserve">
|
||||||
|
<value>Définit la probabilité (en pourcent) qu'un mot soit généré en commençant par une voyelle.
|
||||||
|
٠ À 0%, les mots commenceront par une consonne.
|
||||||
|
٠ À 100%, les mots commenceront par une voyelles.</value>
|
||||||
|
</data>
|
||||||
|
<data name="MainForm_HelpSyllablePercent" xml:space="preserve">
|
||||||
|
<value>Définit la probabilité (en pourcent) qu'un mot contienne des syllabes plutôt que des consonnes et des voyelles.
|
||||||
|
٠ À 0%, les mots ne contiendrons pas de syllabes.
|
||||||
|
٠ À 100%, les mots ne contiendrons que des syllabes.</value>
|
||||||
|
</data>
|
||||||
|
<data name="MainForm_LabelwordLength" xml:space="preserve">
|
||||||
|
<value>syllabe{0} environ.</value>
|
||||||
|
</data>
|
||||||
|
<data name="GeneratorError_GenericGeneratorException" xml:space="preserve">
|
||||||
|
<value>Une exception n'as pas permis de générer entièrement le mot.</value>
|
||||||
|
</data>
|
||||||
|
<data name="ResultForm_InformationTitle" xml:space="preserve">
|
||||||
|
<value>Détail du mot</value>
|
||||||
|
</data>
|
||||||
|
</root>
|
347
WordGen/View/LocalizationString/Messages1.Designer.cs
generated
Normal file
@ -0,0 +1,347 @@
|
|||||||
|
//------------------------------------------------------------------------------
|
||||||
|
// <auto-generated>
|
||||||
|
// Ce code a été généré par un outil.
|
||||||
|
// Version du runtime :4.0.30319.42000
|
||||||
|
//
|
||||||
|
// Les modifications apportées à ce fichier peuvent provoquer un comportement incorrect et seront perdues si
|
||||||
|
// le code est régénéré.
|
||||||
|
// </auto-generated>
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
namespace WordGen.View.LocalizationString {
|
||||||
|
using System;
|
||||||
|
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Une classe de ressource fortement typée destinée, entre autres, à la consultation des chaînes localisées.
|
||||||
|
/// </summary>
|
||||||
|
// Cette classe a été générée automatiquement par la classe StronglyTypedResourceBuilder
|
||||||
|
// à l'aide d'un outil, tel que ResGen ou Visual Studio.
|
||||||
|
// Pour ajouter ou supprimer un membre, modifiez votre fichier .ResX, puis réexécutez ResGen
|
||||||
|
// avec l'option /str ou régénérez votre projet VS.
|
||||||
|
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
|
||||||
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||||
|
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
|
||||||
|
public class Messages {
|
||||||
|
|
||||||
|
private static global::System.Resources.ResourceManager resourceMan;
|
||||||
|
|
||||||
|
private static global::System.Globalization.CultureInfo resourceCulture;
|
||||||
|
|
||||||
|
[global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
|
||||||
|
internal Messages() {
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Retourne l'instance ResourceManager mise en cache utilisée par cette classe.
|
||||||
|
/// </summary>
|
||||||
|
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
|
||||||
|
public static global::System.Resources.ResourceManager ResourceManager {
|
||||||
|
get {
|
||||||
|
if (object.ReferenceEquals(resourceMan, null)) {
|
||||||
|
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("WordGen.View.LocalizationString.Messages", typeof(Messages).Assembly);
|
||||||
|
resourceMan = temp;
|
||||||
|
}
|
||||||
|
return resourceMan;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Remplace la propriété CurrentUICulture du thread actuel pour toutes
|
||||||
|
/// les recherches de ressources à l'aide de cette classe de ressource fortement typée.
|
||||||
|
/// </summary>
|
||||||
|
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
|
||||||
|
public static global::System.Globalization.CultureInfo Culture {
|
||||||
|
get {
|
||||||
|
return resourceCulture;
|
||||||
|
}
|
||||||
|
set {
|
||||||
|
resourceCulture = value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une chaîne localisée semblable à Aucune consonne n'as été trouvée. Ajoutez des consonnes à votre syllabaire, retirez les consonnes de la syntaxe de votre mot (caractère 'c') ou paramétrez votre syllabaire pour ne pas insérer automatiquement une consonne entre une voyelle et une syllabe..
|
||||||
|
/// </summary>
|
||||||
|
public static string GeneratorError_EmptyConsonnantListException {
|
||||||
|
get {
|
||||||
|
return ResourceManager.GetString("GeneratorError_EmptyConsonnantListException", resourceCulture);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une chaîne localisée semblable à Aucune syllabe n'as été trouvée. Ajoutez des syllabe à votre syllabaire ou retirez les syllabes de la syntaxe de votre mot (caractère 's')..
|
||||||
|
/// </summary>
|
||||||
|
public static string GeneratorError_EmptySyllableListException {
|
||||||
|
get {
|
||||||
|
return ResourceManager.GetString("GeneratorError_EmptySyllableListException", resourceCulture);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une chaîne localisée semblable à Aucune voyelle n'as été trouvée. Ajoutez des voyelles à votre syllabaire, retirez les voyelles de la syntaxe de votre mot (caractère 'v') ou paramétrez votre syllabaire pour ne pas insérer automatiquement une voyelle entre une consonne et une syllabe..
|
||||||
|
/// </summary>
|
||||||
|
public static string GeneratorError_EmptyVowelListException {
|
||||||
|
get {
|
||||||
|
return ResourceManager.GetString("GeneratorError_EmptyVowelListException", resourceCulture);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une chaîne localisée semblable à Une exception n'as pas permis de générer entièrement le mot..
|
||||||
|
/// </summary>
|
||||||
|
public static string GeneratorError_GenericGeneratorException {
|
||||||
|
get {
|
||||||
|
return ResourceManager.GetString("GeneratorError_GenericGeneratorException", resourceCulture);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une chaîne localisée semblable à Aucune syllabe adaptée n'as été trouvée. Completez le syllabaire avec d'avantages de syllabes ou changez le comportement de celui-ci lors de l'ajout d'une syllabe..
|
||||||
|
/// </summary>
|
||||||
|
public static string GeneratorError_NoBeforeSyllableMatchException {
|
||||||
|
get {
|
||||||
|
return ResourceManager.GetString("GeneratorError_NoBeforeSyllableMatchException", resourceCulture);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une chaîne localisée semblable à La syntaxe de génération ne peux pas être vide..
|
||||||
|
/// </summary>
|
||||||
|
public static string MainForm_ErrorEmptySyntaxe {
|
||||||
|
get {
|
||||||
|
return ResourceManager.GetString("MainForm_ErrorEmptySyntaxe", resourceCulture);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une chaîne localisée semblable à La probabilité qu'un mot commence par une voyelle ne peux être négative ou supérieur à 100%..
|
||||||
|
/// </summary>
|
||||||
|
public static string MainForm_ErrorInvalidBeginVowelPercent {
|
||||||
|
get {
|
||||||
|
return ResourceManager.GetString("MainForm_ErrorInvalidBeginVowelPercent", resourceCulture);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une chaîne localisée semblable à Il dois y avoir au moins 1 mot à générer..
|
||||||
|
/// </summary>
|
||||||
|
public static string MainForm_ErrorInvalideNbWords {
|
||||||
|
get {
|
||||||
|
return ResourceManager.GetString("MainForm_ErrorInvalideNbWords", resourceCulture);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une chaîne localisée semblable à La longueur des mots ne peux pas être négatif ou nulle..
|
||||||
|
/// </summary>
|
||||||
|
public static string MainForm_ErrorInvalideWordLenght {
|
||||||
|
get {
|
||||||
|
return ResourceManager.GetString("MainForm_ErrorInvalideWordLenght", resourceCulture);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une chaîne localisée semblable à La probabilité qu'un caractère soit une syllabe ne peux être négative ou supérieur à 100%..
|
||||||
|
/// </summary>
|
||||||
|
public static string MainForm_ErrorInvalidSyllablePercent {
|
||||||
|
get {
|
||||||
|
return ResourceManager.GetString("MainForm_ErrorInvalidSyllablePercent", resourceCulture);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une chaîne localisée semblable à Aucun syllabaire n'a été créé. Utilisez le bouton "Gérer..." pour créer ou importer un (des) syllabaire(s)..
|
||||||
|
/// </summary>
|
||||||
|
public static string MainForm_ErrorNoSyllabaryAvailable {
|
||||||
|
get {
|
||||||
|
return ResourceManager.GetString("MainForm_ErrorNoSyllabaryAvailable", resourceCulture);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une chaîne localisée semblable à Aucun syllabaire n'est sélectionné..
|
||||||
|
/// </summary>
|
||||||
|
public static string MainForm_ErrorNoSyllabarySelected {
|
||||||
|
get {
|
||||||
|
return ResourceManager.GetString("MainForm_ErrorNoSyllabarySelected", resourceCulture);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une chaîne localisée semblable à Définit la probabilité (en pourcent) qu'un mot soit généré en commençant par une syllabe. Plus la valeur est élevée, plus la probabilité est forte..
|
||||||
|
/// </summary>
|
||||||
|
public static string MainForm_HelpBeginSyllabaryPercent {
|
||||||
|
get {
|
||||||
|
return ResourceManager.GetString("MainForm_HelpBeginSyllabaryPercent", resourceCulture);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une chaîne localisée semblable à Définit la probabilité (en pourcent) qu'un mot soit généré en commençant par une voyelle.
|
||||||
|
///٠ À 0%, les mots commenceront par une consonne.
|
||||||
|
///٠ À 100%, les mots commenceront par une voyelles..
|
||||||
|
/// </summary>
|
||||||
|
public static string MainForm_HelpBeginVowelPercent {
|
||||||
|
get {
|
||||||
|
return ResourceManager.GetString("MainForm_HelpBeginVowelPercent", resourceCulture);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une chaîne localisée semblable à Utilisez les caractères suivants pour composer une syntaxe personnalisée :
|
||||||
|
///٠ 'c' : une consonne au hasard,
|
||||||
|
///٠ 'v' : une voyelle au hasard,
|
||||||
|
///٠ 's' : une syllabe au hasard.
|
||||||
|
///
|
||||||
|
///Par exemple, "cvcvcv" peut composer des mots comme "Figaro", "Tomate".
|
||||||
|
///
|
||||||
|
///Les paramètres du syllabaire et les petites listes de consomne, voyelle et syllabe peuvent provoquer des erreurs de génération..
|
||||||
|
/// </summary>
|
||||||
|
public static string MainForm_HelpCustomSyntax {
|
||||||
|
get {
|
||||||
|
return ResourceManager.GetString("MainForm_HelpCustomSyntax", resourceCulture);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une chaîne localisée semblable à Définit la probabilité (en pourcent) qu'un mot contienne des syllabes plutôt que des consonnes et des voyelles.
|
||||||
|
///٠ À 0%, les mots ne contiendrons pas de syllabes.
|
||||||
|
///٠ À 100%, les mots ne contiendrons que des syllabes..
|
||||||
|
/// </summary>
|
||||||
|
public static string MainForm_HelpSyllablePercent {
|
||||||
|
get {
|
||||||
|
return ResourceManager.GetString("MainForm_HelpSyllablePercent", resourceCulture);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une chaîne localisée semblable à s.
|
||||||
|
/// </summary>
|
||||||
|
public static string MainForm_LabelCharPlural {
|
||||||
|
get {
|
||||||
|
return ResourceManager.GetString("MainForm_LabelCharPlural", resourceCulture);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une chaîne localisée semblable à .
|
||||||
|
/// </summary>
|
||||||
|
public static string MainForm_LabelCharSingular {
|
||||||
|
get {
|
||||||
|
return ResourceManager.GetString("MainForm_LabelCharSingular", resourceCulture);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une chaîne localisée semblable à syllabe{0} environ..
|
||||||
|
/// </summary>
|
||||||
|
public static string MainForm_LabelwordLength {
|
||||||
|
get {
|
||||||
|
return ResourceManager.GetString("MainForm_LabelwordLength", resourceCulture);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une chaîne localisée semblable à Voulez-vous vraiment supprimer le syllabaire "{0}" de façon permanente ?.
|
||||||
|
/// </summary>
|
||||||
|
public static string ManageSyllabaireForm_ConfirmDelete1Item {
|
||||||
|
get {
|
||||||
|
return ResourceManager.GetString("ManageSyllabaireForm_ConfirmDelete1Item", resourceCulture);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une chaîne localisée semblable à Supprimer le syllabaire.
|
||||||
|
/// </summary>
|
||||||
|
public static string ManageSyllabaireForm_ConfirmDelete1ItemTitle {
|
||||||
|
get {
|
||||||
|
return ResourceManager.GetString("ManageSyllabaireForm_ConfirmDelete1ItemTitle", resourceCulture);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une chaîne localisée semblable à Vous avez plusieurs syllabaires de sélectionné. Voulez-vous vraiment supprimer ces {0} syllabaires de façon permanente ?.
|
||||||
|
/// </summary>
|
||||||
|
public static string ManageSyllabaireForm_ConfirmDeleteManyItems {
|
||||||
|
get {
|
||||||
|
return ResourceManager.GetString("ManageSyllabaireForm_ConfirmDeleteManyItems", resourceCulture);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une chaîne localisée semblable à Supprimer plusieurs syllabaires.
|
||||||
|
/// </summary>
|
||||||
|
public static string ManageSyllabaireForm_ConfirmDeleteManyItemsTitle {
|
||||||
|
get {
|
||||||
|
return ResourceManager.GetString("ManageSyllabaireForm_ConfirmDeleteManyItemsTitle", resourceCulture);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une chaîne localisée semblable à Détail du mot.
|
||||||
|
/// </summary>
|
||||||
|
public static string ResultForm_InformationTitle {
|
||||||
|
get {
|
||||||
|
return ResourceManager.GetString("ResultForm_InformationTitle", resourceCulture);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une chaîne localisée semblable à Le nom du syllabaire est obligatoire..
|
||||||
|
/// </summary>
|
||||||
|
public static string SyllabaireForm_ErrorNoName {
|
||||||
|
get {
|
||||||
|
return ResourceManager.GetString("SyllabaireForm_ErrorNoName", resourceCulture);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une chaîne localisée semblable à Le syllabaire doit contenir au moins des consonnes, des voyelles où des syllabes..
|
||||||
|
/// </summary>
|
||||||
|
public static string SyllabaireForm_ErrorNoUseElements {
|
||||||
|
get {
|
||||||
|
return ResourceManager.GetString("SyllabaireForm_ErrorNoUseElements", resourceCulture);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une chaîne localisée semblable à ٠ Choisir automatiquement : Choisit parmis les syllabes listés celles qui commencent par une voyelle si la syllabe est après une consonne, et inversement.
|
||||||
|
///٠ Intercaller automatiquement : Intercale une consonne si la syllabe est après une voyelle et si elle commence également par une voyelle, et inversement.
|
||||||
|
///٠ Ne pas adapter : Applique la syllabe sans autres modifications..
|
||||||
|
/// </summary>
|
||||||
|
public static string SyllabaireForm_HelpBeginSyllable {
|
||||||
|
get {
|
||||||
|
return ResourceManager.GetString("SyllabaireForm_HelpBeginSyllable", resourceCulture);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une chaîne localisée semblable à Quoi faire avant d'insérer une syllabe ?.
|
||||||
|
/// </summary>
|
||||||
|
public static string SyllabaireForm_HelpBeginSyllableTitle {
|
||||||
|
get {
|
||||||
|
return ResourceManager.GetString("SyllabaireForm_HelpBeginSyllableTitle", resourceCulture);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une chaîne localisée semblable à ٠ Intercaler automatiquement : Intercale une consonne si la syllabe est suivit d'une voyelle et si elle finit également par une voyelle, et inversement.
|
||||||
|
///٠ Ne pas adapter : Applique la sillabe sans autres modifications..
|
||||||
|
/// </summary>
|
||||||
|
public static string SyllabaireForm_HelpEndSyllable {
|
||||||
|
get {
|
||||||
|
return ResourceManager.GetString("SyllabaireForm_HelpEndSyllable", resourceCulture);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recherche une chaîne localisée semblable à Quoi faire après avoir inséré une syllabe ?.
|
||||||
|
/// </summary>
|
||||||
|
public static string SyllabaireForm_HelpEndSyllableTitle {
|
||||||
|
get {
|
||||||
|
return ResourceManager.GetString("SyllabaireForm_HelpEndSyllableTitle", resourceCulture);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
200
WordGen/View/MainForm.cs
Normal file
@ -0,0 +1,200 @@
|
|||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Text;
|
||||||
|
using System.Windows.Forms;
|
||||||
|
using WordGen.Model;
|
||||||
|
using WordGen.Model.Exceptions;
|
||||||
|
using WordGen.View;
|
||||||
|
using WordGen.View.LocalizationString;
|
||||||
|
|
||||||
|
namespace WordGen.View {
|
||||||
|
public partial class MainForm : Form {
|
||||||
|
|
||||||
|
private ResultForm _rf;
|
||||||
|
|
||||||
|
public MainForm() {
|
||||||
|
InitializeComponent();
|
||||||
|
reloadDD();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void reloadDD() {
|
||||||
|
DDsyllbary.Items.Clear();
|
||||||
|
foreach (Syllabary item in SyllabaryWrapper.GetAll()) {
|
||||||
|
DDsyllbary.Items.Add(item.title);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private bool validateForm() {
|
||||||
|
var everythingOK = true;
|
||||||
|
if (SyllabaryWrapper.count() == 0) {
|
||||||
|
everythingOK = false;
|
||||||
|
EPmain.SetError(DDsyllbary, Messages.MainForm_ErrorNoSyllabaryAvailable);
|
||||||
|
}
|
||||||
|
if (DDsyllbary.SelectedItem == null) {
|
||||||
|
everythingOK = false;
|
||||||
|
EPmain.SetError(DDsyllbary, Messages.MainForm_ErrorNoSyllabarySelected);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (RBwordsLenght.Checked) {
|
||||||
|
// nombre de caractères forcément positif
|
||||||
|
if (NUPwordsLenght.Value < 1) {
|
||||||
|
everythingOK = false;
|
||||||
|
EPmain.SetError(LnbChars, Messages.MainForm_ErrorInvalideWordLenght);
|
||||||
|
}
|
||||||
|
// nombre de voyelle forcément en %.
|
||||||
|
if (NUPvowelPercent.Value > 100 || NUPvowelPercent.Value < 0) {
|
||||||
|
everythingOK = false;
|
||||||
|
EPmain.SetError(NUPvowelPercent, Messages.MainForm_ErrorInvalidBeginVowelPercent);
|
||||||
|
}
|
||||||
|
// nombre de syllabe forcément en %.
|
||||||
|
if (CBincludeSyllab.Checked && (NUPsyllablePercent.Value > 100 || NUPsyllablePercent.Value < 0)) {
|
||||||
|
everythingOK = false;
|
||||||
|
EPmain.SetError(NUPsyllablePercent, Messages.MainForm_ErrorInvalidSyllablePercent);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
if (RBcustom.Checked) {
|
||||||
|
if (String.IsNullOrEmpty(TBwordStructure.Text.Trim())) {
|
||||||
|
everythingOK = false;
|
||||||
|
EPmain.SetError(TBwordStructure, Messages.MainForm_ErrorEmptySyntaxe);
|
||||||
|
}
|
||||||
|
// others ifs
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
if (NUPnbWords.Value <= 0) {
|
||||||
|
everythingOK = false;
|
||||||
|
EPmain.SetError(NUPnbWords, Messages.MainForm_ErrorInvalideNbWords);
|
||||||
|
}
|
||||||
|
return everythingOK;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void BchooseSyllabaire_Click(object sender, EventArgs e) {
|
||||||
|
ManageSyllabaryForm mySyllabManager = new ManageSyllabaryForm();
|
||||||
|
mySyllabManager.ShowDialog();
|
||||||
|
reloadDD();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void Form1_FormClosing(object sender, FormClosingEventArgs e) {
|
||||||
|
SyllabaryWrapper.SaveToDrive();
|
||||||
|
Properties.Settings.Default.PreviousLocation = this.Location;
|
||||||
|
Properties.Settings.Default.Save();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void Form1_Load(object sender, EventArgs e) {
|
||||||
|
// Screen Location
|
||||||
|
var nullPoint = new System.Drawing.Point(0, 0);
|
||||||
|
if (Properties.Settings.Default.PreviousLocation != null && Properties.Settings.Default.PreviousLocation != nullPoint) {
|
||||||
|
this.Location = Properties.Settings.Default.PreviousLocation;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Tooltip setup
|
||||||
|
TThelp.ToolTipTitle = "Aide";
|
||||||
|
TThelp.SetToolTip(LsyntaxHelp, Messages.MainForm_HelpCustomSyntax);
|
||||||
|
TThelp.SetToolTip(LvowelPercent, Messages.MainForm_HelpBeginVowelPercent);
|
||||||
|
TThelp.SetToolTip(LsyllablePercent, Messages.MainForm_HelpSyllablePercent);
|
||||||
|
TThelp.SetToolTip(LbeginSyllablePercent, Messages.MainForm_HelpBeginSyllabaryPercent);
|
||||||
|
|
||||||
|
NUPwordsLenght_ValueChanged(sender, e);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void NUPwordsLenght_ValueChanged(object sender, EventArgs e) {
|
||||||
|
if (NUPwordsLenght.Value <= 1) {
|
||||||
|
LnbChars.Text = string.Format(Messages.MainForm_LabelwordLength, Messages.MainForm_LabelCharSingular);
|
||||||
|
} else {
|
||||||
|
LnbChars.Text = string.Format(Messages.MainForm_LabelwordLength, Messages.MainForm_LabelCharPlural);
|
||||||
|
}
|
||||||
|
EPmain.SetError(LnbChars, string.Empty);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void BGenerate_Click(object sender, EventArgs e) {
|
||||||
|
if (!validateForm()) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (_rf == null || (_rf != null && !_rf.Visible)) {
|
||||||
|
_rf = null;
|
||||||
|
_rf = new ResultForm();
|
||||||
|
_rf.Show();
|
||||||
|
_rf.Location = new System.Drawing.Point(this.Location.X + this.Size.Width, this.Location.Y);
|
||||||
|
_rf.isLocked = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
var selectedSyllab = SyllabaryWrapper.Get((string)DDsyllbary.SelectedItem);
|
||||||
|
var quantity = NUPnbWords.Value;
|
||||||
|
|
||||||
|
Generator gen;
|
||||||
|
|
||||||
|
|
||||||
|
if (RBwordsLenght.Checked) {
|
||||||
|
var myGenSett = new GeneratorSettings();
|
||||||
|
//myGenSett._syllableBeginProba = NUPbeginSyllablePercent.Value;
|
||||||
|
myGenSett._syllableProba = NUPsyllablePercent.Value;
|
||||||
|
myGenSett._vowelBeginProba = NUPvowelPercent.Value;
|
||||||
|
gen = new Generator(selectedSyllab, Convert.ToUInt32(NUPwordsLenght.Value), myGenSett );
|
||||||
|
} else {
|
||||||
|
gen = new Generator(selectedSyllab, TBwordStructure.Text);
|
||||||
|
}
|
||||||
|
|
||||||
|
try {
|
||||||
|
Dictionary<string, GeneratorException> results = gen.generateWords(quantity);
|
||||||
|
_rf.setList(results);
|
||||||
|
} catch (Exception ex) {
|
||||||
|
_rf.Close();
|
||||||
|
_rf = null;
|
||||||
|
MessageBox.Show(ex.Message, "Erreur : " + ex.GetType(), MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
private void MainForm_Move(object sender, EventArgs e) {
|
||||||
|
if (_rf != null && _rf.isLocked) {
|
||||||
|
_rf.Location = new System.Drawing.Point(this.Location.X + this.Size.Width, this.Location.Y);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void MainForm_Resize(object sender, EventArgs e) {
|
||||||
|
if (_rf != null && _rf.isLocked) {
|
||||||
|
_rf.Location = new System.Drawing.Point(this.Location.X + this.Size.Width, this.Location.Y);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void RBcustom_CheckedChanged(object sender, EventArgs e) {
|
||||||
|
TBwordStructure.Enabled = RBcustom.Checked;
|
||||||
|
LsyntaxHelp.Enabled = RBcustom.Checked;
|
||||||
|
LquickGuide.Enabled = RBcustom.Checked;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void RBwordsLenght_CheckedChanged(object sender, EventArgs e) {
|
||||||
|
CBincludeSyllab.Enabled = RBwordsLenght.Checked;
|
||||||
|
NUPwordsLenght.Enabled = RBwordsLenght.Checked;
|
||||||
|
LnbChars.Enabled = RBwordsLenght.Checked;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void DDSyllabaire_SelectedIndexChanged(object sender, EventArgs e) {
|
||||||
|
EPmain.SetError(DDsyllbary, String.Empty);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void TBwordStructure_TextChanged(object sender, EventArgs e) {
|
||||||
|
EPmain.SetError(TBwordStructure, string.Empty);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void NUPNbWords_ValueChanged(object sender, EventArgs e) {
|
||||||
|
EPmain.SetError(NUPnbWords, string.Empty);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void CBincludeSyllab_CheckedChanged(object sender, EventArgs e) {
|
||||||
|
LsyllablePercent.Enabled = CBincludeSyllab.Checked;
|
||||||
|
NUPsyllablePercent.Enabled = CBincludeSyllab.Checked;
|
||||||
|
CBallowBeginSyllable.Enabled = CBincludeSyllab.Checked;
|
||||||
|
LbeginSyllablePercent.Enabled = (CBincludeSyllab.Checked && CBallowBeginSyllable.Checked);
|
||||||
|
NUPbeginSyllablePercent.Enabled = (CBincludeSyllab.Checked && CBallowBeginSyllable.Checked);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void CBallowBeginSyllable_CheckedChanged(object sender, EventArgs e) {
|
||||||
|
LbeginSyllablePercent.Enabled = (CBincludeSyllab.Checked && CBallowBeginSyllable.Checked);
|
||||||
|
NUPbeginSyllablePercent.Enabled = (CBincludeSyllab.Checked && CBallowBeginSyllable.Checked);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
490
WordGen/View/MainForm.designer.cs
generated
Normal file
@ -0,0 +1,490 @@
|
|||||||
|
namespace WordGen.View
|
||||||
|
{
|
||||||
|
partial class MainForm
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Variable nécessaire au concepteur.
|
||||||
|
/// </summary>
|
||||||
|
private System.ComponentModel.IContainer components = null;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Nettoyage des ressources utilisées.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="disposing">true si les ressources managées doivent être supprimées ; sinon, false.</param>
|
||||||
|
protected override void Dispose(bool disposing)
|
||||||
|
{
|
||||||
|
if (disposing && (components != null))
|
||||||
|
{
|
||||||
|
components.Dispose();
|
||||||
|
}
|
||||||
|
base.Dispose(disposing);
|
||||||
|
}
|
||||||
|
|
||||||
|
#region Code généré par le Concepteur Windows Form
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Méthode requise pour la prise en charge du concepteur - ne modifiez pas
|
||||||
|
/// le contenu de cette méthode avec l'éditeur de code.
|
||||||
|
/// </summary>
|
||||||
|
private void InitializeComponent()
|
||||||
|
{
|
||||||
|
this.components = new System.ComponentModel.Container();
|
||||||
|
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(MainForm));
|
||||||
|
this.DDsyllbary = new System.Windows.Forms.ComboBox();
|
||||||
|
this.Lsyllabaire = new System.Windows.Forms.Label();
|
||||||
|
this.RBwordsLenght = new System.Windows.Forms.RadioButton();
|
||||||
|
this.NUPwordsLenght = new System.Windows.Forms.NumericUpDown();
|
||||||
|
this.RBcustom = new System.Windows.Forms.RadioButton();
|
||||||
|
this.TBwordStructure = new System.Windows.Forms.TextBox();
|
||||||
|
this.PCommand = new System.Windows.Forms.Panel();
|
||||||
|
this.NUPnbWords = new System.Windows.Forms.NumericUpDown();
|
||||||
|
this.LnbWords = new System.Windows.Forms.Label();
|
||||||
|
this.Bgenerate = new System.Windows.Forms.Button();
|
||||||
|
this.BchooseSyllabaire = new System.Windows.Forms.Button();
|
||||||
|
this.GBsyntax = new System.Windows.Forms.GroupBox();
|
||||||
|
this.LquickGuide = new System.Windows.Forms.Label();
|
||||||
|
this.LsyntaxHelp = new System.Windows.Forms.Label();
|
||||||
|
this.GBlenght = new System.Windows.Forms.GroupBox();
|
||||||
|
this.LnbChars = new System.Windows.Forms.Label();
|
||||||
|
this.LvowelPercent = new System.Windows.Forms.Label();
|
||||||
|
this.NUPvowelPercent = new System.Windows.Forms.NumericUpDown();
|
||||||
|
this.CBincludeSyllab = new System.Windows.Forms.CheckBox();
|
||||||
|
this.LsyllablePercent = new System.Windows.Forms.Label();
|
||||||
|
this.NUPsyllablePercent = new System.Windows.Forms.NumericUpDown();
|
||||||
|
this.CBallowBeginSyllable = new System.Windows.Forms.CheckBox();
|
||||||
|
this.LbeginSyllablePercent = new System.Windows.Forms.Label();
|
||||||
|
this.NUPbeginSyllablePercent = new System.Windows.Forms.NumericUpDown();
|
||||||
|
this.TThelp = new System.Windows.Forms.ToolTip(this.components);
|
||||||
|
this.BSsyllabary = new System.Windows.Forms.BindingSource(this.components);
|
||||||
|
this.EPmain = new System.Windows.Forms.ErrorProvider(this.components);
|
||||||
|
((System.ComponentModel.ISupportInitialize)(this.NUPwordsLenght)).BeginInit();
|
||||||
|
this.PCommand.SuspendLayout();
|
||||||
|
((System.ComponentModel.ISupportInitialize)(this.NUPnbWords)).BeginInit();
|
||||||
|
this.GBsyntax.SuspendLayout();
|
||||||
|
this.GBlenght.SuspendLayout();
|
||||||
|
((System.ComponentModel.ISupportInitialize)(this.NUPvowelPercent)).BeginInit();
|
||||||
|
((System.ComponentModel.ISupportInitialize)(this.NUPsyllablePercent)).BeginInit();
|
||||||
|
((System.ComponentModel.ISupportInitialize)(this.NUPbeginSyllablePercent)).BeginInit();
|
||||||
|
((System.ComponentModel.ISupportInitialize)(this.BSsyllabary)).BeginInit();
|
||||||
|
((System.ComponentModel.ISupportInitialize)(this.EPmain)).BeginInit();
|
||||||
|
this.SuspendLayout();
|
||||||
|
//
|
||||||
|
// DDsyllbary
|
||||||
|
//
|
||||||
|
this.DDsyllbary.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
|
||||||
|
| System.Windows.Forms.AnchorStyles.Right)));
|
||||||
|
this.DDsyllbary.AutoCompleteMode = System.Windows.Forms.AutoCompleteMode.SuggestAppend;
|
||||||
|
this.DDsyllbary.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems;
|
||||||
|
this.DDsyllbary.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||||
|
this.DDsyllbary.FormattingEnabled = true;
|
||||||
|
this.DDsyllbary.Location = new System.Drawing.Point(74, 12);
|
||||||
|
this.DDsyllbary.Name = "DDsyllbary";
|
||||||
|
this.DDsyllbary.Size = new System.Drawing.Size(207, 21);
|
||||||
|
this.DDsyllbary.TabIndex = 1;
|
||||||
|
this.DDsyllbary.SelectedIndexChanged += new System.EventHandler(this.DDSyllabaire_SelectedIndexChanged);
|
||||||
|
//
|
||||||
|
// Lsyllabaire
|
||||||
|
//
|
||||||
|
this.Lsyllabaire.AutoSize = true;
|
||||||
|
this.Lsyllabaire.Location = new System.Drawing.Point(12, 15);
|
||||||
|
this.Lsyllabaire.Name = "Lsyllabaire";
|
||||||
|
this.Lsyllabaire.Size = new System.Drawing.Size(56, 13);
|
||||||
|
this.Lsyllabaire.TabIndex = 0;
|
||||||
|
this.Lsyllabaire.Text = "Syllabaire";
|
||||||
|
//
|
||||||
|
// RBwordsLenght
|
||||||
|
//
|
||||||
|
this.RBwordsLenght.AutoSize = true;
|
||||||
|
this.RBwordsLenght.Checked = true;
|
||||||
|
this.RBwordsLenght.Location = new System.Drawing.Point(16, 37);
|
||||||
|
this.RBwordsLenght.Name = "RBwordsLenght";
|
||||||
|
this.RBwordsLenght.Size = new System.Drawing.Size(124, 17);
|
||||||
|
this.RBwordsLenght.TabIndex = 3;
|
||||||
|
this.RBwordsLenght.TabStop = true;
|
||||||
|
this.RBwordsLenght.Text = "Longueur des mots";
|
||||||
|
this.RBwordsLenght.UseVisualStyleBackColor = true;
|
||||||
|
this.RBwordsLenght.CheckedChanged += new System.EventHandler(this.RBwordsLenght_CheckedChanged);
|
||||||
|
//
|
||||||
|
// NUPwordsLenght
|
||||||
|
//
|
||||||
|
this.NUPwordsLenght.BackColor = System.Drawing.SystemColors.ControlLightLight;
|
||||||
|
this.NUPwordsLenght.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
|
||||||
|
this.NUPwordsLenght.Location = new System.Drawing.Point(6, 21);
|
||||||
|
this.NUPwordsLenght.Maximum = new decimal(new int[] {
|
||||||
|
50,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0});
|
||||||
|
this.NUPwordsLenght.Minimum = new decimal(new int[] {
|
||||||
|
1,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0});
|
||||||
|
this.NUPwordsLenght.Name = "NUPwordsLenght";
|
||||||
|
this.NUPwordsLenght.Size = new System.Drawing.Size(47, 22);
|
||||||
|
this.NUPwordsLenght.TabIndex = 0;
|
||||||
|
this.NUPwordsLenght.TextAlign = System.Windows.Forms.HorizontalAlignment.Right;
|
||||||
|
this.NUPwordsLenght.Value = new decimal(new int[] {
|
||||||
|
3,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0});
|
||||||
|
this.NUPwordsLenght.ValueChanged += new System.EventHandler(this.NUPwordsLenght_ValueChanged);
|
||||||
|
//
|
||||||
|
// RBcustom
|
||||||
|
//
|
||||||
|
this.RBcustom.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
|
||||||
|
this.RBcustom.AutoSize = true;
|
||||||
|
this.RBcustom.Location = new System.Drawing.Point(16, 224);
|
||||||
|
this.RBcustom.Name = "RBcustom";
|
||||||
|
this.RBcustom.Size = new System.Drawing.Size(139, 17);
|
||||||
|
this.RBcustom.TabIndex = 5;
|
||||||
|
this.RBcustom.TabStop = true;
|
||||||
|
this.RBcustom.Text = "Syntaxe personnalisée";
|
||||||
|
this.RBcustom.UseVisualStyleBackColor = true;
|
||||||
|
this.RBcustom.CheckedChanged += new System.EventHandler(this.RBcustom_CheckedChanged);
|
||||||
|
//
|
||||||
|
// TBwordStructure
|
||||||
|
//
|
||||||
|
this.TBwordStructure.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
|
||||||
|
| System.Windows.Forms.AnchorStyles.Right)));
|
||||||
|
this.TBwordStructure.Enabled = false;
|
||||||
|
this.TBwordStructure.Location = new System.Drawing.Point(6, 21);
|
||||||
|
this.TBwordStructure.Name = "TBwordStructure";
|
||||||
|
this.TBwordStructure.Size = new System.Drawing.Size(352, 22);
|
||||||
|
this.TBwordStructure.TabIndex = 1;
|
||||||
|
this.TBwordStructure.TextChanged += new System.EventHandler(this.TBwordStructure_TextChanged);
|
||||||
|
//
|
||||||
|
// PCommand
|
||||||
|
//
|
||||||
|
this.PCommand.BackColor = System.Drawing.SystemColors.ControlLightLight;
|
||||||
|
this.PCommand.Controls.Add(this.NUPnbWords);
|
||||||
|
this.PCommand.Controls.Add(this.LnbWords);
|
||||||
|
this.PCommand.Controls.Add(this.Bgenerate);
|
||||||
|
this.PCommand.Dock = System.Windows.Forms.DockStyle.Bottom;
|
||||||
|
this.PCommand.Location = new System.Drawing.Point(0, 354);
|
||||||
|
this.PCommand.Name = "PCommand";
|
||||||
|
this.PCommand.Size = new System.Drawing.Size(412, 48);
|
||||||
|
this.PCommand.TabIndex = 7;
|
||||||
|
//
|
||||||
|
// NUPnbWords
|
||||||
|
//
|
||||||
|
this.NUPnbWords.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)
|
||||||
|
| System.Windows.Forms.AnchorStyles.Right)));
|
||||||
|
this.NUPnbWords.Increment = new decimal(new int[] {
|
||||||
|
5,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0});
|
||||||
|
this.NUPnbWords.Location = new System.Drawing.Point(197, 14);
|
||||||
|
this.NUPnbWords.Maximum = new decimal(new int[] {
|
||||||
|
1000,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0});
|
||||||
|
this.NUPnbWords.Minimum = new decimal(new int[] {
|
||||||
|
1,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0});
|
||||||
|
this.NUPnbWords.Name = "NUPnbWords";
|
||||||
|
this.NUPnbWords.Size = new System.Drawing.Size(109, 22);
|
||||||
|
this.NUPnbWords.TabIndex = 1;
|
||||||
|
this.NUPnbWords.ThousandsSeparator = true;
|
||||||
|
this.NUPnbWords.Value = new decimal(new int[] {
|
||||||
|
50,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0});
|
||||||
|
this.NUPnbWords.ValueChanged += new System.EventHandler(this.NUPNbWords_ValueChanged);
|
||||||
|
//
|
||||||
|
// LnbWords
|
||||||
|
//
|
||||||
|
this.LnbWords.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
|
||||||
|
this.LnbWords.AutoSize = true;
|
||||||
|
this.LnbWords.Location = new System.Drawing.Point(9, 15);
|
||||||
|
this.LnbWords.Name = "LnbWords";
|
||||||
|
this.LnbWords.Size = new System.Drawing.Size(97, 13);
|
||||||
|
this.LnbWords.TabIndex = 0;
|
||||||
|
this.LnbWords.Text = "Nombres de mots";
|
||||||
|
//
|
||||||
|
// Bgenerate
|
||||||
|
//
|
||||||
|
this.Bgenerate.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
|
||||||
|
this.Bgenerate.Image = global::WordGen.Properties.Resources.arrow_run_16xLG;
|
||||||
|
this.Bgenerate.Location = new System.Drawing.Point(312, 13);
|
||||||
|
this.Bgenerate.Name = "Bgenerate";
|
||||||
|
this.Bgenerate.Size = new System.Drawing.Size(88, 23);
|
||||||
|
this.Bgenerate.TabIndex = 2;
|
||||||
|
this.Bgenerate.Text = "Générer";
|
||||||
|
this.Bgenerate.TextImageRelation = System.Windows.Forms.TextImageRelation.ImageBeforeText;
|
||||||
|
this.Bgenerate.UseVisualStyleBackColor = true;
|
||||||
|
this.Bgenerate.Click += new System.EventHandler(this.BGenerate_Click);
|
||||||
|
//
|
||||||
|
// BchooseSyllabaire
|
||||||
|
//
|
||||||
|
this.BchooseSyllabaire.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
|
||||||
|
this.BchooseSyllabaire.Image = global::WordGen.Properties.Resources.gear_16xLG;
|
||||||
|
this.BchooseSyllabaire.Location = new System.Drawing.Point(312, 11);
|
||||||
|
this.BchooseSyllabaire.Name = "BchooseSyllabaire";
|
||||||
|
this.BchooseSyllabaire.Size = new System.Drawing.Size(88, 23);
|
||||||
|
this.BchooseSyllabaire.TabIndex = 2;
|
||||||
|
this.BchooseSyllabaire.Text = "Gérer...";
|
||||||
|
this.BchooseSyllabaire.TextImageRelation = System.Windows.Forms.TextImageRelation.ImageBeforeText;
|
||||||
|
this.BchooseSyllabaire.UseVisualStyleBackColor = true;
|
||||||
|
this.BchooseSyllabaire.Click += new System.EventHandler(this.BchooseSyllabaire_Click);
|
||||||
|
//
|
||||||
|
// GBsyntax
|
||||||
|
//
|
||||||
|
this.GBsyntax.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)
|
||||||
|
| System.Windows.Forms.AnchorStyles.Right)));
|
||||||
|
this.GBsyntax.Controls.Add(this.LquickGuide);
|
||||||
|
this.GBsyntax.Controls.Add(this.LsyntaxHelp);
|
||||||
|
this.GBsyntax.Controls.Add(this.TBwordStructure);
|
||||||
|
this.GBsyntax.Location = new System.Drawing.Point(12, 226);
|
||||||
|
this.GBsyntax.Name = "GBsyntax";
|
||||||
|
this.GBsyntax.Size = new System.Drawing.Size(388, 122);
|
||||||
|
this.GBsyntax.TabIndex = 6;
|
||||||
|
this.GBsyntax.TabStop = false;
|
||||||
|
//
|
||||||
|
// LquickGuide
|
||||||
|
//
|
||||||
|
this.LquickGuide.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
||||||
|
| System.Windows.Forms.AnchorStyles.Left)
|
||||||
|
| System.Windows.Forms.AnchorStyles.Right)));
|
||||||
|
this.LquickGuide.Enabled = false;
|
||||||
|
this.LquickGuide.Location = new System.Drawing.Point(6, 46);
|
||||||
|
this.LquickGuide.Name = "LquickGuide";
|
||||||
|
this.LquickGuide.Size = new System.Drawing.Size(376, 73);
|
||||||
|
this.LquickGuide.TabIndex = 2;
|
||||||
|
this.LquickGuide.Text = "Utilisez les caractères suivants pour composer une syntaxe personnalisée :\r\n٠ \'c" +
|
||||||
|
"\' : une consonne au hasard, \r\n٠ \'v\' : une voyelle au hasard, \r\n٠ \'s\' : une syl" +
|
||||||
|
"labe au hasard.\r\n";
|
||||||
|
//
|
||||||
|
// LsyntaxHelp
|
||||||
|
//
|
||||||
|
this.LsyntaxHelp.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
|
||||||
|
this.LsyntaxHelp.Enabled = false;
|
||||||
|
this.LsyntaxHelp.Image = global::WordGen.Properties.Resources.StatusAnnotations_Help_and_inconclusive_16xLG_color;
|
||||||
|
this.LsyntaxHelp.Location = new System.Drawing.Point(366, 0);
|
||||||
|
this.LsyntaxHelp.Name = "LsyntaxHelp";
|
||||||
|
this.LsyntaxHelp.Size = new System.Drawing.Size(16, 16);
|
||||||
|
this.LsyntaxHelp.TabIndex = 0;
|
||||||
|
//
|
||||||
|
// GBlenght
|
||||||
|
//
|
||||||
|
this.GBlenght.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
|
||||||
|
| System.Windows.Forms.AnchorStyles.Right)));
|
||||||
|
this.GBlenght.Controls.Add(this.NUPwordsLenght);
|
||||||
|
this.GBlenght.Controls.Add(this.LnbChars);
|
||||||
|
this.GBlenght.Controls.Add(this.LvowelPercent);
|
||||||
|
this.GBlenght.Controls.Add(this.NUPvowelPercent);
|
||||||
|
this.GBlenght.Controls.Add(this.CBincludeSyllab);
|
||||||
|
this.GBlenght.Controls.Add(this.LsyllablePercent);
|
||||||
|
this.GBlenght.Controls.Add(this.NUPsyllablePercent);
|
||||||
|
this.GBlenght.Controls.Add(this.CBallowBeginSyllable);
|
||||||
|
this.GBlenght.Controls.Add(this.LbeginSyllablePercent);
|
||||||
|
this.GBlenght.Controls.Add(this.NUPbeginSyllablePercent);
|
||||||
|
this.GBlenght.Location = new System.Drawing.Point(12, 39);
|
||||||
|
this.GBlenght.Name = "GBlenght";
|
||||||
|
this.GBlenght.Size = new System.Drawing.Size(388, 181);
|
||||||
|
this.GBlenght.TabIndex = 4;
|
||||||
|
this.GBlenght.TabStop = false;
|
||||||
|
//
|
||||||
|
// LnbChars
|
||||||
|
//
|
||||||
|
this.LnbChars.AutoSize = true;
|
||||||
|
this.LnbChars.Location = new System.Drawing.Point(59, 23);
|
||||||
|
this.LnbChars.Name = "LnbChars";
|
||||||
|
this.LnbChars.Size = new System.Drawing.Size(87, 13);
|
||||||
|
this.LnbChars.TabIndex = 1;
|
||||||
|
this.LnbChars.Text = "syllabe environ.";
|
||||||
|
//
|
||||||
|
// LvowelPercent
|
||||||
|
//
|
||||||
|
this.LvowelPercent.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
|
||||||
|
| System.Windows.Forms.AnchorStyles.Right)));
|
||||||
|
this.LvowelPercent.ForeColor = System.Drawing.SystemColors.ActiveCaptionText;
|
||||||
|
this.LvowelPercent.Image = global::WordGen.Properties.Resources.StatusAnnotations_Help_and_inconclusive_16xLG_color;
|
||||||
|
this.LvowelPercent.ImageAlign = System.Drawing.ContentAlignment.MiddleRight;
|
||||||
|
this.LvowelPercent.Location = new System.Drawing.Point(5, 48);
|
||||||
|
this.LvowelPercent.Name = "LvowelPercent";
|
||||||
|
this.LvowelPercent.Size = new System.Drawing.Size(290, 16);
|
||||||
|
this.LvowelPercent.TabIndex = 5;
|
||||||
|
this.LvowelPercent.Text = "Probabilité de commencer par une voyelle (%)";
|
||||||
|
this.LvowelPercent.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
||||||
|
//
|
||||||
|
// NUPvowelPercent
|
||||||
|
//
|
||||||
|
this.NUPvowelPercent.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
|
||||||
|
this.NUPvowelPercent.ForeColor = System.Drawing.SystemColors.ActiveCaptionText;
|
||||||
|
this.NUPvowelPercent.Location = new System.Drawing.Point(301, 48);
|
||||||
|
this.NUPvowelPercent.Name = "NUPvowelPercent";
|
||||||
|
this.NUPvowelPercent.Size = new System.Drawing.Size(61, 22);
|
||||||
|
this.NUPvowelPercent.TabIndex = 6;
|
||||||
|
this.NUPvowelPercent.Value = new decimal(new int[] {
|
||||||
|
25,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0});
|
||||||
|
//
|
||||||
|
// CBincludeSyllab
|
||||||
|
//
|
||||||
|
this.CBincludeSyllab.ForeColor = System.Drawing.SystemColors.ActiveCaptionText;
|
||||||
|
this.CBincludeSyllab.Location = new System.Drawing.Point(6, 76);
|
||||||
|
this.CBincludeSyllab.Name = "CBincludeSyllab";
|
||||||
|
this.CBincludeSyllab.Size = new System.Drawing.Size(272, 17);
|
||||||
|
this.CBincludeSyllab.TabIndex = 2;
|
||||||
|
this.CBincludeSyllab.Text = "Inclure des syllabes dans la composition du mot";
|
||||||
|
this.CBincludeSyllab.UseVisualStyleBackColor = true;
|
||||||
|
this.CBincludeSyllab.CheckedChanged += new System.EventHandler(this.CBincludeSyllab_CheckedChanged);
|
||||||
|
//
|
||||||
|
// LsyllablePercent
|
||||||
|
//
|
||||||
|
this.LsyllablePercent.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
|
||||||
|
| System.Windows.Forms.AnchorStyles.Right)));
|
||||||
|
this.LsyllablePercent.Enabled = false;
|
||||||
|
this.LsyllablePercent.ForeColor = System.Drawing.SystemColors.ActiveCaptionText;
|
||||||
|
this.LsyllablePercent.Image = global::WordGen.Properties.Resources.StatusAnnotations_Help_and_inconclusive_16xLG_color;
|
||||||
|
this.LsyllablePercent.ImageAlign = System.Drawing.ContentAlignment.MiddleRight;
|
||||||
|
this.LsyllablePercent.Location = new System.Drawing.Point(25, 96);
|
||||||
|
this.LsyllablePercent.Name = "LsyllablePercent";
|
||||||
|
this.LsyllablePercent.Size = new System.Drawing.Size(270, 16);
|
||||||
|
this.LsyllablePercent.TabIndex = 4;
|
||||||
|
this.LsyllablePercent.Text = "Probabilité (%)";
|
||||||
|
this.LsyllablePercent.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
||||||
|
//
|
||||||
|
// NUPsyllablePercent
|
||||||
|
//
|
||||||
|
this.NUPsyllablePercent.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
|
||||||
|
this.NUPsyllablePercent.Enabled = false;
|
||||||
|
this.NUPsyllablePercent.ForeColor = System.Drawing.SystemColors.ActiveCaptionText;
|
||||||
|
this.NUPsyllablePercent.Location = new System.Drawing.Point(301, 96);
|
||||||
|
this.NUPsyllablePercent.Name = "NUPsyllablePercent";
|
||||||
|
this.NUPsyllablePercent.Size = new System.Drawing.Size(61, 22);
|
||||||
|
this.NUPsyllablePercent.TabIndex = 3;
|
||||||
|
//
|
||||||
|
// CBallowBeginSyllable
|
||||||
|
//
|
||||||
|
this.CBallowBeginSyllable.AutoSize = true;
|
||||||
|
this.CBallowBeginSyllable.Enabled = false;
|
||||||
|
this.CBallowBeginSyllable.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(64)))), ((int)(((byte)(0)))));
|
||||||
|
this.CBallowBeginSyllable.Location = new System.Drawing.Point(28, 124);
|
||||||
|
this.CBallowBeginSyllable.Name = "CBallowBeginSyllable";
|
||||||
|
this.CBallowBeginSyllable.Size = new System.Drawing.Size(269, 17);
|
||||||
|
this.CBallowBeginSyllable.TabIndex = 7;
|
||||||
|
this.CBallowBeginSyllable.Text = "Autoriser que le mot commence par une syllabe";
|
||||||
|
this.CBallowBeginSyllable.UseVisualStyleBackColor = true;
|
||||||
|
this.CBallowBeginSyllable.CheckedChanged += new System.EventHandler(this.CBallowBeginSyllable_CheckedChanged);
|
||||||
|
//
|
||||||
|
// LbeginSyllablePercent
|
||||||
|
//
|
||||||
|
this.LbeginSyllablePercent.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
|
||||||
|
| System.Windows.Forms.AnchorStyles.Right)));
|
||||||
|
this.LbeginSyllablePercent.Enabled = false;
|
||||||
|
this.LbeginSyllablePercent.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(64)))), ((int)(((byte)(0)))));
|
||||||
|
this.LbeginSyllablePercent.Image = global::WordGen.Properties.Resources.StatusAnnotations_Help_and_inconclusive_16xLG_color;
|
||||||
|
this.LbeginSyllablePercent.ImageAlign = System.Drawing.ContentAlignment.MiddleRight;
|
||||||
|
this.LbeginSyllablePercent.Location = new System.Drawing.Point(45, 144);
|
||||||
|
this.LbeginSyllablePercent.Name = "LbeginSyllablePercent";
|
||||||
|
this.LbeginSyllablePercent.Size = new System.Drawing.Size(250, 16);
|
||||||
|
this.LbeginSyllablePercent.TabIndex = 8;
|
||||||
|
this.LbeginSyllablePercent.Text = "Probabilité (%)";
|
||||||
|
this.LbeginSyllablePercent.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
||||||
|
//
|
||||||
|
// NUPbeginSyllablePercent
|
||||||
|
//
|
||||||
|
this.NUPbeginSyllablePercent.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
|
||||||
|
this.NUPbeginSyllablePercent.Enabled = false;
|
||||||
|
this.NUPbeginSyllablePercent.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(64)))), ((int)(((byte)(0)))));
|
||||||
|
this.NUPbeginSyllablePercent.Location = new System.Drawing.Point(301, 144);
|
||||||
|
this.NUPbeginSyllablePercent.Name = "NUPbeginSyllablePercent";
|
||||||
|
this.NUPbeginSyllablePercent.Size = new System.Drawing.Size(61, 22);
|
||||||
|
this.NUPbeginSyllablePercent.TabIndex = 3;
|
||||||
|
//
|
||||||
|
// TThelp
|
||||||
|
//
|
||||||
|
this.TThelp.AutoPopDelay = 60000;
|
||||||
|
this.TThelp.InitialDelay = 500;
|
||||||
|
this.TThelp.ReshowDelay = 100;
|
||||||
|
this.TThelp.ShowAlways = true;
|
||||||
|
this.TThelp.ToolTipIcon = System.Windows.Forms.ToolTipIcon.Info;
|
||||||
|
//
|
||||||
|
// EPmain
|
||||||
|
//
|
||||||
|
this.EPmain.ContainerControl = this;
|
||||||
|
this.EPmain.Icon = ((System.Drawing.Icon)(resources.GetObject("EPmain.Icon")));
|
||||||
|
//
|
||||||
|
// MainForm
|
||||||
|
//
|
||||||
|
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||||
|
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||||
|
this.ClientSize = new System.Drawing.Size(412, 402);
|
||||||
|
this.Controls.Add(this.RBwordsLenght);
|
||||||
|
this.Controls.Add(this.RBcustom);
|
||||||
|
this.Controls.Add(this.GBlenght);
|
||||||
|
this.Controls.Add(this.GBsyntax);
|
||||||
|
this.Controls.Add(this.PCommand);
|
||||||
|
this.Controls.Add(this.BchooseSyllabaire);
|
||||||
|
this.Controls.Add(this.Lsyllabaire);
|
||||||
|
this.Controls.Add(this.DDsyllbary);
|
||||||
|
this.Font = new System.Drawing.Font("Segoe UI", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||||
|
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
|
||||||
|
this.MaximizeBox = false;
|
||||||
|
this.MinimumSize = new System.Drawing.Size(389, 376);
|
||||||
|
this.Name = "MainForm";
|
||||||
|
this.Text = "Générateur de mots";
|
||||||
|
this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.Form1_FormClosing);
|
||||||
|
this.Load += new System.EventHandler(this.Form1_Load);
|
||||||
|
this.Move += new System.EventHandler(this.MainForm_Move);
|
||||||
|
this.Resize += new System.EventHandler(this.MainForm_Resize);
|
||||||
|
((System.ComponentModel.ISupportInitialize)(this.NUPwordsLenght)).EndInit();
|
||||||
|
this.PCommand.ResumeLayout(false);
|
||||||
|
this.PCommand.PerformLayout();
|
||||||
|
((System.ComponentModel.ISupportInitialize)(this.NUPnbWords)).EndInit();
|
||||||
|
this.GBsyntax.ResumeLayout(false);
|
||||||
|
this.GBsyntax.PerformLayout();
|
||||||
|
this.GBlenght.ResumeLayout(false);
|
||||||
|
this.GBlenght.PerformLayout();
|
||||||
|
((System.ComponentModel.ISupportInitialize)(this.NUPvowelPercent)).EndInit();
|
||||||
|
((System.ComponentModel.ISupportInitialize)(this.NUPsyllablePercent)).EndInit();
|
||||||
|
((System.ComponentModel.ISupportInitialize)(this.NUPbeginSyllablePercent)).EndInit();
|
||||||
|
((System.ComponentModel.ISupportInitialize)(this.BSsyllabary)).EndInit();
|
||||||
|
((System.ComponentModel.ISupportInitialize)(this.EPmain)).EndInit();
|
||||||
|
this.ResumeLayout(false);
|
||||||
|
this.PerformLayout();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
private System.Windows.Forms.ComboBox DDsyllbary;
|
||||||
|
private System.Windows.Forms.Label Lsyllabaire;
|
||||||
|
private System.Windows.Forms.Button BchooseSyllabaire;
|
||||||
|
private System.Windows.Forms.RadioButton RBwordsLenght;
|
||||||
|
private System.Windows.Forms.NumericUpDown NUPwordsLenght;
|
||||||
|
private System.Windows.Forms.RadioButton RBcustom;
|
||||||
|
private System.Windows.Forms.TextBox TBwordStructure;
|
||||||
|
private System.Windows.Forms.Button Bgenerate;
|
||||||
|
private System.Windows.Forms.Panel PCommand;
|
||||||
|
private System.Windows.Forms.NumericUpDown NUPnbWords;
|
||||||
|
private System.Windows.Forms.Label LnbWords;
|
||||||
|
private System.Windows.Forms.GroupBox GBsyntax;
|
||||||
|
private System.Windows.Forms.GroupBox GBlenght;
|
||||||
|
private System.Windows.Forms.ToolTip TThelp;
|
||||||
|
private System.Windows.Forms.Label LsyntaxHelp;
|
||||||
|
private System.Windows.Forms.Label LnbChars;
|
||||||
|
private System.Windows.Forms.BindingSource BSsyllabary;
|
||||||
|
private System.Windows.Forms.CheckBox CBincludeSyllab;
|
||||||
|
private System.Windows.Forms.ErrorProvider EPmain;
|
||||||
|
private System.Windows.Forms.Label LquickGuide;
|
||||||
|
private System.Windows.Forms.Label LsyllablePercent;
|
||||||
|
private System.Windows.Forms.NumericUpDown NUPsyllablePercent;
|
||||||
|
private System.Windows.Forms.Label LvowelPercent;
|
||||||
|
private System.Windows.Forms.NumericUpDown NUPvowelPercent;
|
||||||
|
private System.Windows.Forms.CheckBox CBallowBeginSyllable;
|
||||||
|
private System.Windows.Forms.Label LbeginSyllablePercent;
|
||||||
|
private System.Windows.Forms.NumericUpDown NUPbeginSyllablePercent;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
249
WordGen/View/MainForm.resx
Normal file
@ -0,0 +1,249 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<root>
|
||||||
|
<!--
|
||||||
|
Microsoft ResX Schema
|
||||||
|
|
||||||
|
Version 2.0
|
||||||
|
|
||||||
|
The primary goals of this format is to allow a simple XML format
|
||||||
|
that is mostly human readable. The generation and parsing of the
|
||||||
|
various data types are done through the TypeConverter classes
|
||||||
|
associated with the data types.
|
||||||
|
|
||||||
|
Example:
|
||||||
|
|
||||||
|
... ado.net/XML headers & schema ...
|
||||||
|
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||||
|
<resheader name="version">2.0</resheader>
|
||||||
|
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||||
|
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||||
|
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||||
|
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||||
|
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||||
|
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||||
|
</data>
|
||||||
|
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||||
|
<comment>This is a comment</comment>
|
||||||
|
</data>
|
||||||
|
|
||||||
|
There are any number of "resheader" rows that contain simple
|
||||||
|
name/value pairs.
|
||||||
|
|
||||||
|
Each data row contains a name, and value. The row also contains a
|
||||||
|
type or mimetype. Type corresponds to a .NET class that support
|
||||||
|
text/value conversion through the TypeConverter architecture.
|
||||||
|
Classes that don't support this are serialized and stored with the
|
||||||
|
mimetype set.
|
||||||
|
|
||||||
|
The mimetype is used for serialized objects, and tells the
|
||||||
|
ResXResourceReader how to depersist the object. This is currently not
|
||||||
|
extensible. For a given mimetype the value must be set accordingly:
|
||||||
|
|
||||||
|
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||||
|
that the ResXResourceWriter will generate, however the reader can
|
||||||
|
read any of the formats listed below.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.binary.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.soap.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||||
|
value : The object must be serialized into a byte array
|
||||||
|
: using a System.ComponentModel.TypeConverter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
-->
|
||||||
|
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||||
|
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||||
|
<xsd:element name="root" msdata:IsDataSet="true">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:choice maxOccurs="unbounded">
|
||||||
|
<xsd:element name="metadata">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="assembly">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:attribute name="alias" type="xsd:string" />
|
||||||
|
<xsd:attribute name="name" type="xsd:string" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="data">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="resheader">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:choice>
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:schema>
|
||||||
|
<resheader name="resmimetype">
|
||||||
|
<value>text/microsoft-resx</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="version">
|
||||||
|
<value>2.0</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="reader">
|
||||||
|
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="writer">
|
||||||
|
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
<metadata name="TThelp.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||||
|
<value>17, 17</value>
|
||||||
|
</metadata>
|
||||||
|
<metadata name="BSsyllabary.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||||
|
<value>105, 17</value>
|
||||||
|
</metadata>
|
||||||
|
<metadata name="EPmain.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||||
|
<value>283, 17</value>
|
||||||
|
</metadata>
|
||||||
|
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||||
|
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>
|
||||||
|
AAABAAIAEBAAAAAAIABoBAAAJgAAACAgAAAAACAAqBAAAI4EAAAoAAAAEAAAACAAAAABACAAAAAAAEAE
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAA////Af///wH///8B////Af///wH///8B9vb2Tfb29uP29vbj9vb2Tf//
|
||||||
|
/wH///8B////Af///wH///8B////Af///wH///8B////Af///wH29vYR9vb2n9/f3/9vb2//b29v/9/f
|
||||||
|
3//29vaf9vb2Ef///wH///8B////Af///wH///8B////Af///wH29vZN9vb246qqqv9SUlL/ZWVl/2Vl
|
||||||
|
Zf9SUlL/qqqq//b29uP29vZN////Af///wH///8B////Afb29hH29vaf39/f/29vb/9tbW3/29na/5mY
|
||||||
|
mf+ZmJn/29na/21tbf9vb2//39/f//b29p/29vYR////Af///wH29vbjqqqq/1JSUv+npqb/8e/w//Hv
|
||||||
|
8P+ZmJn/mZiZ//Hv8P/x7/D/p6am/1JSUv+qqqr/9vb24////wH///8B9vb2/0JCQv/b2dr/8e/w//Hv
|
||||||
|
8P/x7/D/mZiZ/5mYmf/x7/D/8e/w//Hv8P/b2dr/QkJC//b29v////8B////Afb29v9CQkL/8e/w//Hv
|
||||||
|
8P/x7/D/8e/w/5aVlv+WlZb/8e/w//Hv8P/x7/D/8e/w/0JCQv/29vb/////Af///wH29vb/QkJC//Hv
|
||||||
|
8P/x7/D/7uzt/5mYmf9lZWX/ZWVl/5mYmf/u7O3/8e/w//Hv8P9CQkL/9vb2/////wH///8B9vb2/0JC
|
||||||
|
Qv/x7/D/0M7P/2VlZf+ZmJn/7uzt/+7s7f+ZmJn/ZWVl/9DOz//x7/D/QkJC//b29v////8B////Afb2
|
||||||
|
9v9CQkL/mZiZ/2VlZf/Qzs//8e/w//Hv8P/x7/D/8e/w/9DOz/9lZWX/mZiZ/0JCQv/29vb/////Af//
|
||||||
|
/wH29vb/QkJC/4aFhv/u7O3/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/7uzt/4aFhv9CQkL/9vb2////
|
||||||
|
/wH///8B9vb246qqqv9SUlL/p6am//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w/6empv9SUlL/qqqq//b2
|
||||||
|
9uP///8B////Afb29hH29vaf39/f/29vb/9tbW3/29na//Hv8P/x7/D/29na/21tbf9vb2//39/f//b2
|
||||||
|
9p/29vYR////Af///wH///8B////Afb29k329vbjqqqq/1JSUv+npqb/p6am/1JSUv+qqqr/9vb24/b2
|
||||||
|
9k3///8B////Af///wH///8B////Af///wH///8B9vb2Efb29p/f39//b29v/29vb//f39//9vb2n/b2
|
||||||
|
9hH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B9vb2Tfb29uP29vbj9vb2Tf//
|
||||||
|
/wH///8B////Af///wH///8B////AQAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA
|
||||||
|
//8AAP//AAD//wAA//8AAP//AAD//wAA//8oAAAAIAAAAEAAAAABACAAAAAAAIAQAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAA////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Afb2
|
||||||
|
9hH29vaP9vb2//b29v/29vaP9vb2Ef///wH///8B////Af///wH///8B////Af///wH///8B////Af//
|
||||||
|
/wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af//
|
||||||
|
/wH29vZB9vb23/b29v/29vb/9vb2//b29v/29vbf9vb2Qf///wH///8B////Af///wH///8B////Af//
|
||||||
|
/wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af//
|
||||||
|
/wH29vYR9vb2j/b29v/29vb/1NTU/2RkZP9kZGT/1NTU//b29v/29vb/9vb2j/b29hH///8B////Af//
|
||||||
|
/wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af//
|
||||||
|
/wH///8B9vb2Qfb29t/29vb/9vb2/5ycnP9CQkL/QkJC/0JCQv9CQkL/nJyc//b29v/29vb/9vb23/b2
|
||||||
|
9kH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af//
|
||||||
|
/wH///8B9vb2Efb29o/29vb/9vb2/9TU1P9kZGT/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/ZGRk/9TU
|
||||||
|
1P/29vb/9vb2//b29o/29vYR////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af//
|
||||||
|
/wH///8B////Afb29kH29vbf9vb2//b29v+cnJz/QkJC/0JCQv9jYmP/0M/P/0JCQv9CQkL/0M/P/2Ni
|
||||||
|
Y/9CQkL/QkJC/5ycnP/29vb/9vb2//b29t/29vZB////Af///wH///8B////Af///wH///8B////Af//
|
||||||
|
/wH///8B////Afb29hH29vaP9vb2//b29v/U1NT/ZGRk/0JCQv9CQkL/mpmZ//Hv8P/x7/D/QkJC/0JC
|
||||||
|
Qv/x7/D/8e/w/5qZmf9CQkL/QkJC/2RkZP/U1NT/9vb2//b29v/29vaP9vb2Ef///wH///8B////Af//
|
||||||
|
/wH///8B////Af///wH29vZB9vb23/b29v/29vb/nJyc/0JCQv9CQkL/Y2Jj/9DPz//x7/D/8e/w//Hv
|
||||||
|
8P9CQkL/QkJC//Hv8P/x7/D/8e/w/9DPz/9jYmP/QkJC/0JCQv+cnJz/9vb2//b29v/29vbf9vb2Qf//
|
||||||
|
/wH///8B////Af///wH///8B9vb2j/b29v/29vb/1NTU/2RkZP9CQkL/QkJC/5qZmf/x7/D/8e/w//Hv
|
||||||
|
8P/x7/D/8e/w/0JCQv9CQkL/8e/w//Hv8P/x7/D/8e/w//Hv8P+amZn/QkJC/0JCQv9kZGT/1NTU//b2
|
||||||
|
9v/29vb/9vb2j////wH///8B////Af///wH29vb/9vb2/5ycnP9CQkL/QkJC/2NiY//Qz8//8e/w//Hv
|
||||||
|
8P/x7/D/8e/w//Hv8P/x7/D/QkJC/0JCQv/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/Qz8//Y2Jj/0JC
|
||||||
|
Qv9CQkL/nJyc//b29v/29vb/////Af///wH///8B////Afb29v/29vb/QkJC/0JCQv+amZn/8e/w//Hv
|
||||||
|
8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P9CQkL/QkJC//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv
|
||||||
|
8P/x7/D/mpmZ/0JCQv9CQkL/9vb2//b29v////8B////Af///wH///8B9vb2//b29v9CQkL/QkJC//Hv
|
||||||
|
8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w/0JCQv9CQkL/8e/w//Hv8P/x7/D/8e/w//Hv
|
||||||
|
8P/x7/D/8e/w//Hv8P/x7/D/QkJC/0JCQv/29vb/9vb2/////wH///8B////Af///wH29vb/9vb2/0JC
|
||||||
|
Qv9CQkL/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/QkJC/0JCQv/x7/D/8e/w//Hv
|
||||||
|
8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P9CQkL/QkJC//b29v/29vb/////Af///wH///8B////Afb2
|
||||||
|
9v/29vb/QkJC/0JCQv/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w/+bk5f9CQkL/QkJC/+bk
|
||||||
|
5f/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w/0JCQv9CQkL/9vb2//b29v////8B////Af//
|
||||||
|
/wH///8B9vb2//b29v9CQkL/QkJC//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P+6ubr/TU1N/0JC
|
||||||
|
Qv9CQkL/TU1N/7q5uv/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/QkJC/0JCQv/29vb/9vb2////
|
||||||
|
/wH///8B////Af///wH29vb/9vb2/0JCQv9CQkL/8e/w//Hv8P/x7/D/8e/w//Hv8P/m5OX/eXh4/0JC
|
||||||
|
Qv9NTU3/urm6/7q5uv9NTU3/QkJC/3l4eP/m5OX/8e/w//Hv8P/x7/D/8e/w//Hv8P9CQkL/QkJC//b2
|
||||||
|
9v/29vb/////Af///wH///8B////Afb29v/29vb/QkJC/0JCQv/x7/D/8e/w//Hv8P/x7/D/urm6/01N
|
||||||
|
Tf9CQkL/eXh4/+bk5f/x7/D/8e/w/+bk5f95eHj/QkJC/01NTf+6ubr/8e/w//Hv8P/x7/D/8e/w/0JC
|
||||||
|
Qv9CQkL/9vb2//b29v////8B////Af///wH///8B9vb2//b29v9CQkL/QkJC//Hv8P/x7/D/5uTl/3l4
|
||||||
|
eP9CQkL/TU1N/7q5uv/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P+6ubr/TU1N/0JCQv95eHj/5uTl//Hv
|
||||||
|
8P/x7/D/QkJC/0JCQv/29vb/9vb2/////wH///8B////Af///wH29vb/9vb2/0JCQv9CQkL/8e/w/7q5
|
||||||
|
uv9NTU3/QkJC/3l4eP/m5OX/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/m5OX/eXh4/0JC
|
||||||
|
Qv9NTU3/urm6//Hv8P9CQkL/QkJC//b29v/29vb/////Af///wH///8B////Afb29v/29vb/QkJC/0JC
|
||||||
|
Qv95eHj/QkJC/01NTf+6ubr/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv
|
||||||
|
8P/x7/D/urm6/01NTf9CQkL/eXh4/0JCQv9CQkL/9vb2//b29v////8B////Af///wH///8B9vb2//b2
|
||||||
|
9v9CQkL/QkJC/0JCQv95eHj/5uTl//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv
|
||||||
|
8P/x7/D/8e/w//Hv8P/x7/D/5uTl/3l4eP9CQkL/QkJC/0JCQv/29vb/9vb2/////wH///8B////Af//
|
||||||
|
/wH29vb/9vb2/0JCQv9CQkL/bm1u//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv
|
||||||
|
8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w/25tbv9CQkL/QkJC//b29v/29vb/////Af//
|
||||||
|
/wH///8B////Afb29v/29vb/nJyc/0JCQv9CQkL/Y2Jj/9DPz//x7/D/8e/w//Hv8P/x7/D/8e/w//Hv
|
||||||
|
8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w/9DPz/9jYmP/QkJC/0JCQv+cnJz/9vb2//b2
|
||||||
|
9v////8B////Af///wH///8B9vb2j/b29v/29vb/1NTU/2RkZP9CQkL/QkJC/5qZmf/x7/D/8e/w//Hv
|
||||||
|
8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P+amZn/QkJC/0JCQv9kZGT/1NTU//b2
|
||||||
|
9v/29vb/9vb2j////wH///8B////Af///wH///8B9vb2Qfb29t/29vb/9vb2/5ycnP9CQkL/QkJC/2Ni
|
||||||
|
Y//Qz8//8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/Qz8//Y2Jj/0JCQv9CQkL/nJyc//b2
|
||||||
|
9v/29vb/9vb23/b29kH///8B////Af///wH///8B////Af///wH///8B9vb2Efb29o/29vb/9vb2/9TU
|
||||||
|
1P9kZGT/QkJC/0JCQv+amZn/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/mpmZ/0JCQv9CQkL/ZGRk/9TU
|
||||||
|
1P/29vb/9vb2//b29o/29vYR////Af///wH///8B////Af///wH///8B////Af///wH///8B////Afb2
|
||||||
|
9kH29vbf9vb2//b29v+cnJz/QkJC/0JCQv9jYmP/0M/P//Hv8P/x7/D/0M/P/2NiY/9CQkL/QkJC/5yc
|
||||||
|
nP/29vb/9vb2//b29t/29vZB////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af//
|
||||||
|
/wH///8B////Afb29hH29vaP9vb2//b29v/U1NT/ZGRk/0JCQv9CQkL/mpmZ/5qZmf9CQkL/QkJC/2Rk
|
||||||
|
ZP/U1NT/9vb2//b29v/29vaP9vb2Ef///wH///8B////Af///wH///8B////Af///wH///8B////Af//
|
||||||
|
/wH///8B////Af///wH///8B////Af///wH29vZB9vb23/b29v/29vb/nJyc/0JCQv9CQkL/QkJC/0JC
|
||||||
|
Qv+cnJz/9vb2//b29v/29vbf9vb2Qf///wH///8B////Af///wH///8B////Af///wH///8B////Af//
|
||||||
|
/wH///8B////Af///wH///8B////Af///wH///8B////Af///wH29vYR9vb2j/b29v/29vb/1NTU/2Rk
|
||||||
|
ZP9kZGT/1NTU//b29v/29vb/9vb2j/b29hH///8B////Af///wH///8B////Af///wH///8B////Af//
|
||||||
|
/wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B9vb2Qfb2
|
||||||
|
9t/29vb/9vb2//b29v/29vb/9vb23/b29kH///8B////Af///wH///8B////Af///wH///8B////Af//
|
||||||
|
/wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af//
|
||||||
|
/wH///8B9vb2Efb29o/29vb/9vb2//b29o/29vYR////Af///wH///8B////Af///wH///8B////Af//
|
||||||
|
/wH///8B////Af///wH///8B////AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
|
<data name="EPmain.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>
|
||||||
|
AAABAAEAEBAAAAAAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAQAQAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAD///8B9vb2n/b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b2
|
||||||
|
9p////8B9vb2n7Ozs/9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
|
||||||
|
Qv+zs7P/9vb2n/b29t9ZWVn/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
|
||||||
|
Qv9CQkL/WVlZ//b29t/29vZhs7Oz/0JCQv9CQkL/QkJC/0JCQv9CQkL/8e/w//Hv8P9CQkL/QkJC/0JC
|
||||||
|
Qv9CQkL/QkJC/7Ozs//29vZh////Afb29t9ZWVn/QkJC/0JCQv9CQkL/QkJC//Hv8P/x7/D/QkJC/0JC
|
||||||
|
Qv9CQkL/QkJC/1lZWf/29vbf////Af///wH29vZhs7Oz/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
|
||||||
|
Qv9CQkL/QkJC/0JCQv+zs7P/9vb2Yf///wH///8B////Afb29t9ZWVn/QkJC/0JCQv9CQkL/8e/w//Hv
|
||||||
|
8P9CQkL/QkJC/0JCQv9ZWVn/9vb23////wH///8B////Af///wH29vZhs7Oz/0JCQv9CQkL/QkJC//Hv
|
||||||
|
8P/x7/D/QkJC/0JCQv9CQkL/s7Oz//b29mH///8B////Af///wH///8B////Afb29t9ZWVn/QkJC/0JC
|
||||||
|
Qv/x7/D/8e/w/0JCQv9CQkL/WVlZ//b29t////8B////Af///wH///8B////Af///wH29vZhs7Oz/0JC
|
||||||
|
Qv9CQkL/8e/w//Hv8P9CQkL/QkJC/7Ozs//29vZh////Af///wH///8B////Af///wH///8B////Afb2
|
||||||
|
9t9ZWVn/QkJC//Hv8P/x7/D/QkJC/1lZWf/29vbf////Af///wH///8B////Af///wH///8B////Af//
|
||||||
|
/wH29vZhs7Oz/0JCQv9CQkL/QkJC/0JCQv+zs7P/9vb2Yf///wH///8B////Af///wH///8B////Af//
|
||||||
|
/wH///8B////Afb29t9ZWVn/QkJC/0JCQv9ZWVn/9vb23////wH///8B////Af///wH///8B////Af//
|
||||||
|
/wH///8B////Af///wH29vZhs7Oz/0JCQv9CQkL/s7Oz//b29mH///8B////Af///wH///8B////Af//
|
||||||
|
/wH///8B////Af///wH///8B////Afb29t9ZWVn/WVlZ//b29t////8B////Af///wH///8B////Af//
|
||||||
|
/wH///8B////Af///wH///8B////Af///wH29vZh9vb2//b29v/29vZh////Af///wH///8B////Af//
|
||||||
|
/wH///8BAAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA
|
||||||
|
//8AAP//AAD//w==
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
|
</root>
|
249
WordGen/View/ManageSyllabaryForm.Designer.cs
generated
Normal file
@ -0,0 +1,249 @@
|
|||||||
|
namespace WordGen.View {
|
||||||
|
partial class ManageSyllabaryForm {
|
||||||
|
/// <summary>
|
||||||
|
/// Required designer variable.
|
||||||
|
/// </summary>
|
||||||
|
private System.ComponentModel.IContainer components = null;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Clean up any resources being used.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
|
||||||
|
protected override void Dispose(bool disposing) {
|
||||||
|
if (disposing && (components != null)) {
|
||||||
|
components.Dispose();
|
||||||
|
}
|
||||||
|
base.Dispose(disposing);
|
||||||
|
}
|
||||||
|
|
||||||
|
#region Windows Form Designer generated code
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Required method for Designer support - do not modify
|
||||||
|
/// the contents of this method with the code editor.
|
||||||
|
/// </summary>
|
||||||
|
private void InitializeComponent() {
|
||||||
|
this.components = new System.ComponentModel.Container();
|
||||||
|
System.Windows.Forms.ListViewItem listViewItem1 = new System.Windows.Forms.ListViewItem("Exemple", 0);
|
||||||
|
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(ManageSyllabaryForm));
|
||||||
|
this.TSeditor = new System.Windows.Forms.ToolStrip();
|
||||||
|
this.Bnew = new System.Windows.Forms.ToolStripButton();
|
||||||
|
this.Bedit = new System.Windows.Forms.ToolStripButton();
|
||||||
|
this.Bduplicate = new System.Windows.Forms.ToolStripButton();
|
||||||
|
this.Bdelete = new System.Windows.Forms.ToolStripButton();
|
||||||
|
this.Bimport = new System.Windows.Forms.ToolStripButton();
|
||||||
|
this.DDexport = new System.Windows.Forms.ToolStripDropDownButton();
|
||||||
|
this.Bexport = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
|
this.BexportAll = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
|
this.Bcancel = new System.Windows.Forms.Button();
|
||||||
|
this.Bok = new System.Windows.Forms.Button();
|
||||||
|
this.LVSyllabary = new System.Windows.Forms.ListView();
|
||||||
|
this.ILbig = new System.Windows.Forms.ImageList(this.components);
|
||||||
|
this.ILsmall = new System.Windows.Forms.ImageList(this.components);
|
||||||
|
this.syllabaryBindingSource = new System.Windows.Forms.BindingSource(this.components);
|
||||||
|
this.TSeditor.SuspendLayout();
|
||||||
|
((System.ComponentModel.ISupportInitialize)(this.syllabaryBindingSource)).BeginInit();
|
||||||
|
this.SuspendLayout();
|
||||||
|
//
|
||||||
|
// TSeditor
|
||||||
|
//
|
||||||
|
this.TSeditor.GripStyle = System.Windows.Forms.ToolStripGripStyle.Hidden;
|
||||||
|
this.TSeditor.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||||
|
this.Bnew,
|
||||||
|
this.Bedit,
|
||||||
|
this.Bduplicate,
|
||||||
|
this.Bdelete,
|
||||||
|
this.Bimport,
|
||||||
|
this.DDexport});
|
||||||
|
this.TSeditor.Location = new System.Drawing.Point(0, 0);
|
||||||
|
this.TSeditor.Name = "TSeditor";
|
||||||
|
this.TSeditor.Size = new System.Drawing.Size(508, 25);
|
||||||
|
this.TSeditor.TabIndex = 0;
|
||||||
|
this.TSeditor.Text = "toolStrip1";
|
||||||
|
//
|
||||||
|
// Bnew
|
||||||
|
//
|
||||||
|
this.Bnew.Image = global::WordGen.Properties.Resources.NewBuildDefinition_8952;
|
||||||
|
this.Bnew.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||||
|
this.Bnew.Name = "Bnew";
|
||||||
|
this.Bnew.Size = new System.Drawing.Size(84, 22);
|
||||||
|
this.Bnew.Text = "&Nouveau...";
|
||||||
|
this.Bnew.Click += new System.EventHandler(this.Bnew_Click);
|
||||||
|
//
|
||||||
|
// Bedit
|
||||||
|
//
|
||||||
|
this.Bedit.Enabled = false;
|
||||||
|
this.Bedit.Image = global::WordGen.Properties.Resources.PencilAngled_16xLG_color;
|
||||||
|
this.Bedit.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||||
|
this.Bedit.Name = "Bedit";
|
||||||
|
this.Bedit.Size = new System.Drawing.Size(66, 22);
|
||||||
|
this.Bedit.Text = "&Editer...";
|
||||||
|
this.Bedit.Click += new System.EventHandler(this.Bedit_Click);
|
||||||
|
//
|
||||||
|
// Bduplicate
|
||||||
|
//
|
||||||
|
this.Bduplicate.Enabled = false;
|
||||||
|
this.Bduplicate.Image = global::WordGen.Properties.Resources.Copy_6524;
|
||||||
|
this.Bduplicate.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||||
|
this.Bduplicate.Name = "Bduplicate";
|
||||||
|
this.Bduplicate.Size = new System.Drawing.Size(79, 22);
|
||||||
|
this.Bduplicate.Text = "&Dupliquer";
|
||||||
|
this.Bduplicate.Click += new System.EventHandler(this.Bduplicate_Click);
|
||||||
|
//
|
||||||
|
// Bdelete
|
||||||
|
//
|
||||||
|
this.Bdelete.Enabled = false;
|
||||||
|
this.Bdelete.Image = global::WordGen.Properties.Resources.action_Cancel_16xLG;
|
||||||
|
this.Bdelete.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||||
|
this.Bdelete.Name = "Bdelete";
|
||||||
|
this.Bdelete.Size = new System.Drawing.Size(82, 22);
|
||||||
|
this.Bdelete.Text = "Supprimer";
|
||||||
|
this.Bdelete.Click += new System.EventHandler(this.Bdelete_Click);
|
||||||
|
//
|
||||||
|
// Bimport
|
||||||
|
//
|
||||||
|
this.Bimport.Image = global::WordGen.Properties.Resources.Open_6529;
|
||||||
|
this.Bimport.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||||
|
this.Bimport.Name = "Bimport";
|
||||||
|
this.Bimport.Size = new System.Drawing.Size(82, 22);
|
||||||
|
this.Bimport.Text = "I&mporter...";
|
||||||
|
this.Bimport.Click += new System.EventHandler(this.Bimport_Click);
|
||||||
|
//
|
||||||
|
// DDexport
|
||||||
|
//
|
||||||
|
this.DDexport.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||||
|
this.Bexport,
|
||||||
|
this.BexportAll});
|
||||||
|
this.DDexport.Image = global::WordGen.Properties.Resources.save_16xLG;
|
||||||
|
this.DDexport.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||||
|
this.DDexport.Name = "DDexport";
|
||||||
|
this.DDexport.Size = new System.Drawing.Size(79, 22);
|
||||||
|
this.DDexport.Text = "E&xporter";
|
||||||
|
//
|
||||||
|
// Bexport
|
||||||
|
//
|
||||||
|
this.Bexport.Enabled = false;
|
||||||
|
this.Bexport.Image = global::WordGen.Properties.Resources.save_16xLG;
|
||||||
|
this.Bexport.Name = "Bexport";
|
||||||
|
this.Bexport.Size = new System.Drawing.Size(151, 22);
|
||||||
|
this.Bexport.Text = "Exporter...";
|
||||||
|
this.Bexport.Click += new System.EventHandler(this.Bexport_Click);
|
||||||
|
//
|
||||||
|
// BexportAll
|
||||||
|
//
|
||||||
|
this.BexportAll.Image = global::WordGen.Properties.Resources.Saveall_6518;
|
||||||
|
this.BexportAll.Name = "BexportAll";
|
||||||
|
this.BexportAll.Size = new System.Drawing.Size(151, 22);
|
||||||
|
this.BexportAll.Text = "Exporter tout...";
|
||||||
|
this.BexportAll.Click += new System.EventHandler(this.BexportAll_Click);
|
||||||
|
//
|
||||||
|
// Bcancel
|
||||||
|
//
|
||||||
|
this.Bcancel.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
|
||||||
|
this.Bcancel.DialogResult = System.Windows.Forms.DialogResult.Cancel;
|
||||||
|
this.Bcancel.Image = global::WordGen.Properties.Resources.Close_16xLG;
|
||||||
|
this.Bcancel.Location = new System.Drawing.Point(421, 268);
|
||||||
|
this.Bcancel.Name = "Bcancel";
|
||||||
|
this.Bcancel.Size = new System.Drawing.Size(75, 23);
|
||||||
|
this.Bcancel.TabIndex = 13;
|
||||||
|
this.Bcancel.Text = "&Fermer";
|
||||||
|
this.Bcancel.TextImageRelation = System.Windows.Forms.TextImageRelation.ImageBeforeText;
|
||||||
|
this.Bcancel.UseVisualStyleBackColor = true;
|
||||||
|
//
|
||||||
|
// Bok
|
||||||
|
//
|
||||||
|
this.Bok.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
|
||||||
|
this.Bok.DialogResult = System.Windows.Forms.DialogResult.OK;
|
||||||
|
this.Bok.Image = global::WordGen.Properties.Resources.StatusAnnotations_Complete_and_ok_16xLG;
|
||||||
|
this.Bok.Location = new System.Drawing.Point(340, 268);
|
||||||
|
this.Bok.Name = "Bok";
|
||||||
|
this.Bok.Size = new System.Drawing.Size(75, 23);
|
||||||
|
this.Bok.TabIndex = 12;
|
||||||
|
this.Bok.Text = "Ch&oisir";
|
||||||
|
this.Bok.TextImageRelation = System.Windows.Forms.TextImageRelation.ImageBeforeText;
|
||||||
|
this.Bok.UseVisualStyleBackColor = true;
|
||||||
|
this.Bok.Visible = false;
|
||||||
|
this.Bok.Click += new System.EventHandler(this.Bclose_Click);
|
||||||
|
//
|
||||||
|
// LVSyllabary
|
||||||
|
//
|
||||||
|
this.LVSyllabary.Items.AddRange(new System.Windows.Forms.ListViewItem[] {
|
||||||
|
listViewItem1});
|
||||||
|
this.LVSyllabary.LargeImageList = this.ILbig;
|
||||||
|
this.LVSyllabary.Location = new System.Drawing.Point(12, 28);
|
||||||
|
this.LVSyllabary.Name = "LVSyllabary";
|
||||||
|
this.LVSyllabary.ShowGroups = false;
|
||||||
|
this.LVSyllabary.Size = new System.Drawing.Size(484, 234);
|
||||||
|
this.LVSyllabary.SmallImageList = this.ILsmall;
|
||||||
|
this.LVSyllabary.Sorting = System.Windows.Forms.SortOrder.Ascending;
|
||||||
|
this.LVSyllabary.TabIndex = 14;
|
||||||
|
this.LVSyllabary.UseCompatibleStateImageBehavior = false;
|
||||||
|
this.LVSyllabary.View = System.Windows.Forms.View.Tile;
|
||||||
|
this.LVSyllabary.SelectedIndexChanged += new System.EventHandler(this.LVsyllabary_SelectedIndexChanged);
|
||||||
|
this.LVSyllabary.DoubleClick += new System.EventHandler(this.LVSyllabary_DoubleClick);
|
||||||
|
this.LVSyllabary.KeyDown += new System.Windows.Forms.KeyEventHandler(this.LVSyllabary_KeyDown);
|
||||||
|
//
|
||||||
|
// ILbig
|
||||||
|
//
|
||||||
|
this.ILbig.ImageStream = ((System.Windows.Forms.ImageListStreamer)(resources.GetObject("ILbig.ImageStream")));
|
||||||
|
this.ILbig.TransparentColor = System.Drawing.Color.Transparent;
|
||||||
|
this.ILbig.Images.SetKeyName(0, "RefactoringLog12810_32.png");
|
||||||
|
this.ILbig.Images.SetKeyName(1, "ASCube_32xLG.png");
|
||||||
|
//
|
||||||
|
// ILsmall
|
||||||
|
//
|
||||||
|
this.ILsmall.ImageStream = ((System.Windows.Forms.ImageListStreamer)(resources.GetObject("ILsmall.ImageStream")));
|
||||||
|
this.ILsmall.TransparentColor = System.Drawing.Color.Transparent;
|
||||||
|
this.ILsmall.Images.SetKeyName(0, "RefactoringLog_12810.png");
|
||||||
|
this.ILsmall.Images.SetKeyName(1, "ASCube_16xLG.png");
|
||||||
|
//
|
||||||
|
// syllabaryBindingSource
|
||||||
|
//
|
||||||
|
this.syllabaryBindingSource.DataSource = typeof(WordGen.Model.Syllabary);
|
||||||
|
//
|
||||||
|
// ManageSyllabaryForm
|
||||||
|
//
|
||||||
|
this.AcceptButton = this.Bok;
|
||||||
|
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||||
|
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||||
|
this.CancelButton = this.Bcancel;
|
||||||
|
this.ClientSize = new System.Drawing.Size(508, 303);
|
||||||
|
this.Controls.Add(this.LVSyllabary);
|
||||||
|
this.Controls.Add(this.Bcancel);
|
||||||
|
this.Controls.Add(this.Bok);
|
||||||
|
this.Controls.Add(this.TSeditor);
|
||||||
|
this.Font = new System.Drawing.Font("Segoe UI", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||||
|
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
|
||||||
|
this.MinimizeBox = false;
|
||||||
|
this.Name = "ManageSyllabaryForm";
|
||||||
|
this.ShowInTaskbar = false;
|
||||||
|
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
|
||||||
|
this.Text = "Gérer les syllabaires";
|
||||||
|
this.Load += new System.EventHandler(this.ManageSyllabaryForm_Load);
|
||||||
|
this.TSeditor.ResumeLayout(false);
|
||||||
|
this.TSeditor.PerformLayout();
|
||||||
|
((System.ComponentModel.ISupportInitialize)(this.syllabaryBindingSource)).EndInit();
|
||||||
|
this.ResumeLayout(false);
|
||||||
|
this.PerformLayout();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
private System.Windows.Forms.ToolStrip TSeditor;
|
||||||
|
private System.Windows.Forms.ToolStripButton Bnew;
|
||||||
|
private System.Windows.Forms.ToolStripButton Bedit;
|
||||||
|
private System.Windows.Forms.ToolStripButton Bduplicate;
|
||||||
|
private System.Windows.Forms.ToolStripButton Bdelete;
|
||||||
|
private System.Windows.Forms.ToolStripButton Bimport;
|
||||||
|
private System.Windows.Forms.ToolStripDropDownButton DDexport;
|
||||||
|
private System.Windows.Forms.ToolStripMenuItem Bexport;
|
||||||
|
private System.Windows.Forms.ToolStripMenuItem BexportAll;
|
||||||
|
private System.Windows.Forms.Button Bcancel;
|
||||||
|
private System.Windows.Forms.Button Bok;
|
||||||
|
private System.Windows.Forms.ListView LVSyllabary;
|
||||||
|
private System.Windows.Forms.ImageList ILsmall;
|
||||||
|
private System.Windows.Forms.BindingSource syllabaryBindingSource;
|
||||||
|
private System.Windows.Forms.ImageList ILbig;
|
||||||
|
}
|
||||||
|
}
|
178
WordGen/View/ManageSyllabaryForm.cs
Normal file
@ -0,0 +1,178 @@
|
|||||||
|
using WordGen.Model;
|
||||||
|
using WordGen.View.LocalizationString;
|
||||||
|
using System;
|
||||||
|
using System.Windows.Forms;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.IO;
|
||||||
|
|
||||||
|
namespace WordGen.View {
|
||||||
|
public partial class ManageSyllabaryForm : Form {
|
||||||
|
public ManageSyllabaryForm() {
|
||||||
|
InitializeComponent();
|
||||||
|
reloadListView();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
private void reloadListView() {
|
||||||
|
LVSyllabary.Clear();
|
||||||
|
foreach (Syllabary aSillabary in SyllabaryWrapper.GetAll()) {
|
||||||
|
// add a ListViewItem with the Sillabary title and the 0th Icon index (specified in the ListView) in the ListView.
|
||||||
|
LVSyllabary.Items.Add(aSillabary.title, 0);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void Bclose_Click(object sender, EventArgs e) {
|
||||||
|
this.Close();
|
||||||
|
this.Dispose();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void LVsyllabary_SelectedIndexChanged(object sender, EventArgs e) {
|
||||||
|
if (LVSyllabary.SelectedItems.Count == 0) {
|
||||||
|
Bedit.Enabled = false;
|
||||||
|
Bdelete.Enabled = false;
|
||||||
|
Bduplicate.Enabled = false;
|
||||||
|
Bexport.Enabled = false;
|
||||||
|
} else if (LVSyllabary.SelectedItems.Count == 1) {
|
||||||
|
Bedit.Enabled = true;
|
||||||
|
Bdelete.Enabled = true;
|
||||||
|
Bduplicate.Enabled = true;
|
||||||
|
Bexport.Enabled = true;
|
||||||
|
} else {
|
||||||
|
Bedit.Enabled = false;
|
||||||
|
Bdelete.Enabled = true;
|
||||||
|
Bduplicate.Enabled = true;
|
||||||
|
Bexport.Enabled = false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Delete sullabary
|
||||||
|
private void Bdelete_Click(object sender, EventArgs e) {
|
||||||
|
LVSyllabary_DeleteSelectedItems();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
private void LVSyllabary_KeyDown(object sender, KeyEventArgs e) {
|
||||||
|
if (e.KeyCode == Keys.Delete) {
|
||||||
|
LVSyllabary_DeleteSelectedItems();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
private void LVSyllabary_DeleteSelectedItems() {
|
||||||
|
|
||||||
|
if (LVSyllabary.SelectedItems.Count == 0) {
|
||||||
|
return;
|
||||||
|
|
||||||
|
} else if (LVSyllabary.SelectedItems.Count == 1) {
|
||||||
|
// 1 item selected.
|
||||||
|
// We show a confirmation message box.
|
||||||
|
var result = MessageBox.Show(string.Format(Messages.ManageSyllabaireForm_ConfirmDelete1Item, LVSyllabary.SelectedItems[0].Text), Messages.ManageSyllabaireForm_ConfirmDelete1ItemTitle, MessageBoxButtons.YesNo, MessageBoxIcon.Question);
|
||||||
|
// If no, the deletion exits
|
||||||
|
if (result == DialogResult.No)
|
||||||
|
return;
|
||||||
|
|
||||||
|
} else {
|
||||||
|
// Multiple items selected.
|
||||||
|
var result = MessageBox.Show(string.Format(Messages.ManageSyllabaireForm_ConfirmDeleteManyItems, LVSyllabary.SelectedItems.Count), Messages.ManageSyllabaireForm_ConfirmDeleteManyItemsTitle, MessageBoxButtons.YesNo, MessageBoxIcon.Question);
|
||||||
|
// If no, the deletion exits
|
||||||
|
if (result == DialogResult.No)
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Deletion
|
||||||
|
foreach (ListViewItem aSyllabary in LVSyllabary.SelectedItems) {
|
||||||
|
SyllabaryWrapper.Delete(aSyllabary.Text);
|
||||||
|
}
|
||||||
|
reloadListView();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void LVSyllabary_DoubleClick(object sender, EventArgs e) {
|
||||||
|
if (LVSyllabary.SelectedItems.Count == 1) {
|
||||||
|
// Edit item
|
||||||
|
LVSullabary_EditItem();
|
||||||
|
} else if (LVSyllabary.SelectedItems.Count == 0) {
|
||||||
|
// New item
|
||||||
|
LVSyllabary_NewItem();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void Bnew_Click(object sender, EventArgs e) {
|
||||||
|
LVSyllabary_NewItem();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void LVSyllabary_NewItem() {
|
||||||
|
SyllabaryForm mySF = new SyllabaryForm();
|
||||||
|
if (mySF.ShowDialog() == DialogResult.OK) {
|
||||||
|
SyllabaryWrapper.Add(mySF.MySyllabaire);
|
||||||
|
reloadListView();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// Edit sullabary
|
||||||
|
private void Bedit_Click(object sender, EventArgs e) {
|
||||||
|
LVSullabary_EditItem();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void LVSullabary_EditItem() {
|
||||||
|
Syllabary thisSyllabary = SyllabaryWrapper.Get(LVSyllabary.SelectedItems[0].Text);
|
||||||
|
SyllabaryForm mySF = new SyllabaryForm(thisSyllabary);
|
||||||
|
if (mySF.ShowDialog() == DialogResult.OK) {
|
||||||
|
SyllabaryWrapper.Replace(thisSyllabary.title, mySF.MySyllabaire);
|
||||||
|
reloadListView();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void Bduplicate_Click(object sender, EventArgs e) {
|
||||||
|
foreach (ListViewItem lvItem in LVSyllabary.SelectedItems) {
|
||||||
|
// clone
|
||||||
|
Syllabary thisSyllabary = SyllabaryWrapper.Get(lvItem.Text);
|
||||||
|
Syllabary clonedSyllabary = (Syllabary)thisSyllabary.Clone();
|
||||||
|
SyllabaryWrapper.Add(clonedSyllabary);
|
||||||
|
}
|
||||||
|
// add on the list
|
||||||
|
reloadListView();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
private void Bexport_Click(object sender, EventArgs e) {
|
||||||
|
SaveFileDialog sfd = new SaveFileDialog();
|
||||||
|
sfd.FileName = LVSyllabary.SelectedItems[0].Text;
|
||||||
|
sfd.Filter = "eXtensible Markup Language (*.xml)|*.xml";
|
||||||
|
if (sfd.ShowDialog() == DialogResult.OK) {
|
||||||
|
SyllabaryIoManager Siom = new SyllabaryIoManager();
|
||||||
|
Syllabary thisSyllabary = SyllabaryWrapper.Get(LVSyllabary.SelectedItems[0].Text);
|
||||||
|
Siom.saveSyllabary(thisSyllabary, sfd.FileName);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
private void BexportAll_Click(object sender, EventArgs e) {
|
||||||
|
FolderBrowserDialog fbd = new FolderBrowserDialog();
|
||||||
|
if (fbd.ShowDialog() == DialogResult.OK) {
|
||||||
|
SyllabaryIoManager Siom = new SyllabaryIoManager();
|
||||||
|
foreach (Syllabary item in SyllabaryWrapper.GetAll()) {
|
||||||
|
Siom.saveSyllabary(item, Path.Combine(fbd.SelectedPath, item.title));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void Bimport_Click(object sender, EventArgs e) {
|
||||||
|
OpenFileDialog ofd = new OpenFileDialog();
|
||||||
|
ofd.Multiselect = true;
|
||||||
|
ofd.Filter = "eXtensible Markup Language (*.xml)|*.xml";
|
||||||
|
if (ofd.ShowDialog() == DialogResult.OK) {
|
||||||
|
SyllabaryIoManager Siom = new SyllabaryIoManager();
|
||||||
|
foreach (string item in ofd.FileNames) {
|
||||||
|
Syllabary thisSyllabary = Siom.loadSyllabary(item);
|
||||||
|
SyllabaryWrapper.Add(thisSyllabary);
|
||||||
|
}
|
||||||
|
reloadListView();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void ManageSyllabaryForm_Load(object sender, EventArgs e) {
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
265
WordGen/View/ManageSyllabaryForm.resx
Normal file
@ -0,0 +1,265 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<root>
|
||||||
|
<!--
|
||||||
|
Microsoft ResX Schema
|
||||||
|
|
||||||
|
Version 2.0
|
||||||
|
|
||||||
|
The primary goals of this format is to allow a simple XML format
|
||||||
|
that is mostly human readable. The generation and parsing of the
|
||||||
|
various data types are done through the TypeConverter classes
|
||||||
|
associated with the data types.
|
||||||
|
|
||||||
|
Example:
|
||||||
|
|
||||||
|
... ado.net/XML headers & schema ...
|
||||||
|
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||||
|
<resheader name="version">2.0</resheader>
|
||||||
|
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||||
|
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||||
|
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||||
|
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||||
|
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||||
|
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||||
|
</data>
|
||||||
|
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||||
|
<comment>This is a comment</comment>
|
||||||
|
</data>
|
||||||
|
|
||||||
|
There are any number of "resheader" rows that contain simple
|
||||||
|
name/value pairs.
|
||||||
|
|
||||||
|
Each data row contains a name, and value. The row also contains a
|
||||||
|
type or mimetype. Type corresponds to a .NET class that support
|
||||||
|
text/value conversion through the TypeConverter architecture.
|
||||||
|
Classes that don't support this are serialized and stored with the
|
||||||
|
mimetype set.
|
||||||
|
|
||||||
|
The mimetype is used for serialized objects, and tells the
|
||||||
|
ResXResourceReader how to depersist the object. This is currently not
|
||||||
|
extensible. For a given mimetype the value must be set accordingly:
|
||||||
|
|
||||||
|
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||||
|
that the ResXResourceWriter will generate, however the reader can
|
||||||
|
read any of the formats listed below.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.binary.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.soap.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||||
|
value : The object must be serialized into a byte array
|
||||||
|
: using a System.ComponentModel.TypeConverter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
-->
|
||||||
|
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||||
|
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||||
|
<xsd:element name="root" msdata:IsDataSet="true">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:choice maxOccurs="unbounded">
|
||||||
|
<xsd:element name="metadata">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="assembly">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:attribute name="alias" type="xsd:string" />
|
||||||
|
<xsd:attribute name="name" type="xsd:string" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="data">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="resheader">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:choice>
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:schema>
|
||||||
|
<resheader name="resmimetype">
|
||||||
|
<value>text/microsoft-resx</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="version">
|
||||||
|
<value>2.0</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="reader">
|
||||||
|
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="writer">
|
||||||
|
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
<metadata name="TSeditor.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||||
|
<value>17, 17</value>
|
||||||
|
</metadata>
|
||||||
|
<metadata name="ILbig.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||||
|
<value>377, 17</value>
|
||||||
|
</metadata>
|
||||||
|
<data name="ILbig.ImageStream" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||||
|
<value>
|
||||||
|
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
|
||||||
|
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
|
||||||
|
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAACg
|
||||||
|
DAAAAk1TRnQBSQFMAgEBAgEAATgBAAE4AQABIAEAASABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
|
||||||
|
AwABgAMAASADAAEBAQABCAYAARAYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA
|
||||||
|
AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5
|
||||||
|
AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA
|
||||||
|
AWYDAAGZAwABzAIAATMDAAIzAgABMwFmAgABMwGZAgABMwHMAgABMwH/AgABZgMAAWYBMwIAAmYCAAFm
|
||||||
|
AZkCAAFmAcwCAAFmAf8CAAGZAwABmQEzAgABmQFmAgACmQIAAZkBzAIAAZkB/wIAAcwDAAHMATMCAAHM
|
||||||
|
AWYCAAHMAZkCAALMAgABzAH/AgAB/wFmAgAB/wGZAgAB/wHMAQABMwH/AgAB/wEAATMBAAEzAQABZgEA
|
||||||
|
ATMBAAGZAQABMwEAAcwBAAEzAQAB/wEAAf8BMwIAAzMBAAIzAWYBAAIzAZkBAAIzAcwBAAIzAf8BAAEz
|
||||||
|
AWYCAAEzAWYBMwEAATMCZgEAATMBZgGZAQABMwFmAcwBAAEzAWYB/wEAATMBmQIAATMBmQEzAQABMwGZ
|
||||||
|
AWYBAAEzApkBAAEzAZkBzAEAATMBmQH/AQABMwHMAgABMwHMATMBAAEzAcwBZgEAATMBzAGZAQABMwLM
|
||||||
|
AQABMwHMAf8BAAEzAf8BMwEAATMB/wFmAQABMwH/AZkBAAEzAf8BzAEAATMC/wEAAWYDAAFmAQABMwEA
|
||||||
|
AWYBAAFmAQABZgEAAZkBAAFmAQABzAEAAWYBAAH/AQABZgEzAgABZgIzAQABZgEzAWYBAAFmATMBmQEA
|
||||||
|
AWYBMwHMAQABZgEzAf8BAAJmAgACZgEzAQADZgEAAmYBmQEAAmYBzAEAAWYBmQIAAWYBmQEzAQABZgGZ
|
||||||
|
AWYBAAFmApkBAAFmAZkBzAEAAWYBmQH/AQABZgHMAgABZgHMATMBAAFmAcwBmQEAAWYCzAEAAWYBzAH/
|
||||||
|
AQABZgH/AgABZgH/ATMBAAFmAf8BmQEAAWYB/wHMAQABzAEAAf8BAAH/AQABzAEAApkCAAGZATMBmQEA
|
||||||
|
AZkBAAGZAQABmQEAAcwBAAGZAwABmQIzAQABmQEAAWYBAAGZATMBzAEAAZkBAAH/AQABmQFmAgABmQFm
|
||||||
|
ATMBAAGZATMBZgEAAZkBZgGZAQABmQFmAcwBAAGZATMB/wEAApkBMwEAApkBZgEAA5kBAAKZAcwBAAKZ
|
||||||
|
Af8BAAGZAcwCAAGZAcwBMwEAAWYBzAFmAQABmQHMAZkBAAGZAswBAAGZAcwB/wEAAZkB/wIAAZkB/wEz
|
||||||
|
AQABmQHMAWYBAAGZAf8BmQEAAZkB/wHMAQABmQL/AQABzAMAAZkBAAEzAQABzAEAAWYBAAHMAQABmQEA
|
||||||
|
AcwBAAHMAQABmQEzAgABzAIzAQABzAEzAWYBAAHMATMBmQEAAcwBMwHMAQABzAEzAf8BAAHMAWYCAAHM
|
||||||
|
AWYBMwEAAZkCZgEAAcwBZgGZAQABzAFmAcwBAAGZAWYB/wEAAcwBmQIAAcwBmQEzAQABzAGZAWYBAAHM
|
||||||
|
ApkBAAHMAZkBzAEAAcwBmQH/AQACzAIAAswBMwEAAswBZgEAAswBmQEAA8wBAALMAf8BAAHMAf8CAAHM
|
||||||
|
Af8BMwEAAZkB/wFmAQABzAH/AZkBAAHMAf8BzAEAAcwC/wEAAcwBAAEzAQAB/wEAAWYBAAH/AQABmQEA
|
||||||
|
AcwBMwIAAf8CMwEAAf8BMwFmAQAB/wEzAZkBAAH/ATMBzAEAAf8BMwH/AQAB/wFmAgAB/wFmATMBAAHM
|
||||||
|
AmYBAAH/AWYBmQEAAf8BZgHMAQABzAFmAf8BAAH/AZkCAAH/AZkBMwEAAf8BmQFmAQAB/wKZAQAB/wGZ
|
||||||
|
AcwBAAH/AZkB/wEAAf8BzAIAAf8BzAEzAQAB/wHMAWYBAAH/AcwBmQEAAf8CzAEAAf8BzAH/AQAC/wEz
|
||||||
|
AQABzAH/AWYBAAL/AZkBAAL/AcwBAAJmAf8BAAFmAf8BZgEAAWYC/wEAAf8CZgEAAf8BZgH/AQAC/wFm
|
||||||
|
AQABIQEAAaUBAANfAQADdwEAA4YBAAOWAQADywEAA7IBAAPXAQAD3QEAA+MBAAPqAQAD8QEAA/gBAAHw
|
||||||
|
AfsB/wEAAaQCoAEAA4ADAAH/AgAB/wMAAv8BAAH/AwAB/wEAAf8BAAL/AgAD/y4AAf8E9AH/TwAc9A4A
|
||||||
|
CPROABz0DAAB/wP0AfACbQHwA/QB/0wAAvQYFAL0CwAE9AGSBBQBkgT0SwAC9BgUAvQJAAH/A/QB8AFt
|
||||||
|
BhQBbQHwA/QB/0kABPQCFBL0AhQC9AgABPQBkgIUAW0BvAIUAbwBbQIUAZIE9EgABPQCFBL0AhQC9AYA
|
||||||
|
Af8D9AHwAW0CFAGSAvQCFAL0AZICFAFtAfAD9AH/RgAC9AQUEvQCFAL0BQAE9AGSAhQBbQG8A/QCFAP0
|
||||||
|
AbwBbQIUAZIE9EUAAvQEFBL0AhQC9AQAA/QB8AFtAhQBkgX0AhQF9AGSAhQBbQHwA/REAAT0AhQS9AIU
|
||||||
|
AvQEAAL0AZICFAFtAbwG9AIUBvQBvAFtAhQBkgL0RAAE9AIUEvQCFAL0BAAC9AIUAZII9AIUCPQBkgIU
|
||||||
|
AvREAAL0BBQS9AIUAvQEAAL0AhQJ9AIUCfQCFAL0RAAC9AQUEvQCFAL0BAAC9AIUCfQCFAn0AhQC9EQA
|
||||||
|
BPQCFBL0AhQC9AQAAvQCFAj0AfICFAHyCPQCFAL0RAAE9AIUEvQCFAL0BAAC9AIUB/QBBwETAhQBEwEH
|
||||||
|
B/QCFAL0RAAC9AQUEvQCFAL0BAAC9AIUBfQB8gHsARQBEwIHARMBFAHsAfIF9AIUAvREAAL0BBQS9AIU
|
||||||
|
AvQEAAL0AhQE9AEHARMBFAHsAfIC9AHyAewBFAETAQcE9AIUAvREAAT0AhQS9AIUAvQEAAL0AhQC9AHy
|
||||||
|
AewBFAETAQcG9AEHARMBFAHsAfIC9AIUAvREAAT0AhQS9AIUAvQEAAL0AhQB9AEHARMBFAHsAfII9AHy
|
||||||
|
AewBFAETAQcB9AIUAvREAAL0BBQE9AoUBPQCFAL0BAAC9AIUAewBFAETAQcM9AEHARMBFAHsAhQC9EQA
|
||||||
|
AvQEFAT0ChQE9AIUAvQEAAL0AxQB7AHyDvQB8gHsAxQC9EQABPQCFAT0ChQE9AIUAvQEAAL0AhQBbRL0
|
||||||
|
AW0CFAL0RAAE9AIUBPQKFAT0AhQC9AQAAvQBkgIUAW0BvA70AbwBbQIUAZIC9EQAAvQEFBL0AhQC9AQA
|
||||||
|
A/QB8AFtAhQBkgz0AZICFAFtAfAD9EQAAvQEFBL0AhQC9AUABPQBkgIUAW0BvAj0AbwBbQIUAZIE9EUA
|
||||||
|
BPQCFBL0AhQC9AYAAf8D9AHwAW0CFAGSBvQBkgIUAW0B8AP0Af9GAAT0AhQS9AIUAvQIAAT0AZICFAFt
|
||||||
|
AbwC9AG8AW0CFAGSBPRIAAL0GBQC9AkAAf8D9AHwAW0CFAKSAhQBbQHwA/QB/0kAAvQYFAL0CwAE9AGS
|
||||||
|
BBQBkgT0SwAc9AwAAf8D9AHwAm0B8AP0Af9MABz0DgAI9HkAAf8E9AH/TQABQgFNAT4HAAE+AwABKAMA
|
||||||
|
AYADAAEgAwABAQEAAQEGAAECFgAD/wEABf8B+AEfAf8IAAHAAgABAwH/AfABDwH/CAABwAIAAQMB/wHA
|
||||||
|
AQMB/wgAAcACAAEDAf8BgAEBAf8IAAHAAgABAwH+AgABfwgAAcACAAEDAfwCAAE/CAABwAIAAQMB8AIA
|
||||||
|
AQ8IAAHAAgABAwHgAgABBwgAAcACAAEDAcACAAEDCAABwAIAAQMBwAIAAQMIAAHAAgABAwHAAgABAwgA
|
||||||
|
AcACAAEDAcACAAEDCAABwAIAAQMBwAIAAQMIAAHAAgABAwHAAgABAwgAAcACAAEDAcACAAEDCAABwAIA
|
||||||
|
AQMBwAIAAQMIAAHAAgABAwHAAgABAwgAAcACAAEDAcACAAEDCAABwAIAAQMBwAIAAQMIAAHAAgABAwHA
|
||||||
|
AgABAwgAAcACAAEDAcACAAEDCAABwAIAAQMBwAIAAQMIAAHAAgABAwHAAgABAwgAAcACAAEDAcACAAED
|
||||||
|
CAABwAIAAQMB4AIAAQcIAAHAAgABAwHwAgABDwgAAcACAAEDAfwCAAE/CAABwAIAAQMB/gIAAX8IAAHA
|
||||||
|
AgABAwH/AYABAQH/CAABwAIAAQMB/wHAAQMB/wgAAcACAAEDAf8B8AEPAf8IAAX/AfgBHwH/CAAL
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
|
<metadata name="ILsmall.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||||
|
<value>114, 17</value>
|
||||||
|
</metadata>
|
||||||
|
<data name="ILsmall.ImageStream" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||||
|
<value>
|
||||||
|
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
|
||||||
|
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
|
||||||
|
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAABO
|
||||||
|
CQAAAk1TRnQBSQFMAgEBAgEAAXABAAFwAQABEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
|
||||||
|
AwABQAMAARADAAEBAQABCAYAAQQYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA
|
||||||
|
AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5
|
||||||
|
AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA
|
||||||
|
AWYDAAGZAwABzAIAATMDAAIzAgABMwFmAgABMwGZAgABMwHMAgABMwH/AgABZgMAAWYBMwIAAmYCAAFm
|
||||||
|
AZkCAAFmAcwCAAFmAf8CAAGZAwABmQEzAgABmQFmAgACmQIAAZkBzAIAAZkB/wIAAcwDAAHMATMCAAHM
|
||||||
|
AWYCAAHMAZkCAALMAgABzAH/AgAB/wFmAgAB/wGZAgAB/wHMAQABMwH/AgAB/wEAATMBAAEzAQABZgEA
|
||||||
|
ATMBAAGZAQABMwEAAcwBAAEzAQAB/wEAAf8BMwIAAzMBAAIzAWYBAAIzAZkBAAIzAcwBAAIzAf8BAAEz
|
||||||
|
AWYCAAEzAWYBMwEAATMCZgEAATMBZgGZAQABMwFmAcwBAAEzAWYB/wEAATMBmQIAATMBmQEzAQABMwGZ
|
||||||
|
AWYBAAEzApkBAAEzAZkBzAEAATMBmQH/AQABMwHMAgABMwHMATMBAAEzAcwBZgEAATMBzAGZAQABMwLM
|
||||||
|
AQABMwHMAf8BAAEzAf8BMwEAATMB/wFmAQABMwH/AZkBAAEzAf8BzAEAATMC/wEAAWYDAAFmAQABMwEA
|
||||||
|
AWYBAAFmAQABZgEAAZkBAAFmAQABzAEAAWYBAAH/AQABZgEzAgABZgIzAQABZgEzAWYBAAFmATMBmQEA
|
||||||
|
AWYBMwHMAQABZgEzAf8BAAJmAgACZgEzAQADZgEAAmYBmQEAAmYBzAEAAWYBmQIAAWYBmQEzAQABZgGZ
|
||||||
|
AWYBAAFmApkBAAFmAZkBzAEAAWYBmQH/AQABZgHMAgABZgHMATMBAAFmAcwBmQEAAWYCzAEAAWYBzAH/
|
||||||
|
AQABZgH/AgABZgH/ATMBAAFmAf8BmQEAAWYB/wHMAQABzAEAAf8BAAH/AQABzAEAApkCAAGZATMBmQEA
|
||||||
|
AZkBAAGZAQABmQEAAcwBAAGZAwABmQIzAQABmQEAAWYBAAGZATMBzAEAAZkBAAH/AQABmQFmAgABmQFm
|
||||||
|
ATMBAAGZATMBZgEAAZkBZgGZAQABmQFmAcwBAAGZATMB/wEAApkBMwEAApkBZgEAA5kBAAKZAcwBAAKZ
|
||||||
|
Af8BAAGZAcwCAAGZAcwBMwEAAWYBzAFmAQABmQHMAZkBAAGZAswBAAGZAcwB/wEAAZkB/wIAAZkB/wEz
|
||||||
|
AQABmQHMAWYBAAGZAf8BmQEAAZkB/wHMAQABmQL/AQABzAMAAZkBAAEzAQABzAEAAWYBAAHMAQABmQEA
|
||||||
|
AcwBAAHMAQABmQEzAgABzAIzAQABzAEzAWYBAAHMATMBmQEAAcwBMwHMAQABzAEzAf8BAAHMAWYCAAHM
|
||||||
|
AWYBMwEAAZkCZgEAAcwBZgGZAQABzAFmAcwBAAGZAWYB/wEAAcwBmQIAAcwBmQEzAQABzAGZAWYBAAHM
|
||||||
|
ApkBAAHMAZkBzAEAAcwBmQH/AQACzAIAAswBMwEAAswBZgEAAswBmQEAA8wBAALMAf8BAAHMAf8CAAHM
|
||||||
|
Af8BMwEAAZkB/wFmAQABzAH/AZkBAAHMAf8BzAEAAcwC/wEAAcwBAAEzAQAB/wEAAWYBAAH/AQABmQEA
|
||||||
|
AcwBMwIAAf8CMwEAAf8BMwFmAQAB/wEzAZkBAAH/ATMBzAEAAf8BMwH/AQAB/wFmAgAB/wFmATMBAAHM
|
||||||
|
AmYBAAH/AWYBmQEAAf8BZgHMAQABzAFmAf8BAAH/AZkCAAH/AZkBMwEAAf8BmQFmAQAB/wKZAQAB/wGZ
|
||||||
|
AcwBAAH/AZkB/wEAAf8BzAIAAf8BzAEzAQAB/wHMAWYBAAH/AcwBmQEAAf8CzAEAAf8BzAH/AQAC/wEz
|
||||||
|
AQABzAH/AWYBAAL/AZkBAAL/AcwBAAJmAf8BAAFmAf8BZgEAAWYC/wEAAf8CZgEAAf8BZgH/AQAC/wFm
|
||||||
|
AQABIQEAAaUBAANfAQADdwEAA4YBAAOWAQADywEAA7IBAAPXAQAD3QEAA+MBAAPqAQAD8QEAA/gBAAHw
|
||||||
|
AfsB/wEAAaQCoAEAA4ADAAH/AgAB/wMAAv8BAAH/AwAB/wEAAf8BAAL/AgAD/xcABPQnAA70BQAB/wH0
|
||||||
|
AfACbQHwAfQB/yUAAfQMFAH0BAAC9AGSARMCbQETAZIC9CQAAvQBFAn0ARQB9AIAAf8B9AHwAW0B7AHy
|
||||||
|
ApIB8gHsAW0B8AH0Af8iAAH0AhQJ9AEUAfQCAAH0AZIBEwEHAvQCkgL0AQcBEwGSAfQiAAL0ARQJ9AEU
|
||||||
|
AfQCAAH0ARQB8gP0ApID9AHyARQB9CIAAfQCFAn0ARQB9AIAAfQBFAT0ApIE9AEUAfQiAAL0ARQJ9AEU
|
||||||
|
AfQCAAH0ARQD9AH3AuwB9wP0ARQB9CIAAfQCFAn0ARQB9AIAAfQBFAH0AfEB7AH3AvQB9wHsAfEB9AEU
|
||||||
|
AfQiAAL0ARQJ9AEUAfQCAAH0ARQB9wHsAfEE9AHxAewB9wEUAfQiAAH0AhQC9AUUAvQBFAH0AgAB9AEU
|
||||||
|
AZII9AGSARQB9CIAAvQBFAL0BRQC9AEUAfQCAAH0AZIBEwEHBvQBBwETAZIB9CIAAfQCFAn0ARQB9AIA
|
||||||
|
Af8B9AHwAW0B7AHyAvQB8gHsAW0B8AH0Af8iAAL0ARQJ9AEUAfQEAAL0AZIBEwIHARMBkgL0JAAB9AwU
|
||||||
|
AfQFAAH/AfQB8AJtAfAB9AH/JQAO9AcABPQmAAFCAU0BPgcAAT4DAAEoAwABQAMAARADAAEBAQABAQUA
|
||||||
|
AYAXAAP/AQAC/wH8AT8EAAGAAQEB8AEPBAABgAEBAeABBwQAAYABAQGAAQEEAAGAAQEBgAEBBAABgAEB
|
||||||
|
AYABAQQAAYABAQGAAQEEAAGAAQEBgAEBBAABgAEBAYABAQQAAYABAQGAAQEEAAGAAQEBgAEBBAABgAEB
|
||||||
|
AYABAQQAAYABAQGAAQEEAAGAAQEB4AEHBAABgAEBAfABDwQAAYABAQH8AT8EAAs=
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
|
<metadata name="syllabaryBindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||||
|
<value>199, 17</value>
|
||||||
|
</metadata>
|
||||||
|
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||||
|
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>
|
||||||
|
AAABAAEAEBAAAAAAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAQAQAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAD29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b2
|
||||||
|
9v/29vb/9vb2/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
|
||||||
|
Qv9CQkL/9vb2//b29v9CQkL/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv
|
||||||
|
8P/x7/D/QkJC//b29v/29vb/QkJC//Hv8P80xjj/NMY4/zTGOP/x7/D/fHx8/3x8fP98fHz/fHx8//Hv
|
||||||
|
8P/x7/D/8e/w/0JCQv/29vb/9vb2/0JCQv/x7/D/NMY4/zTGOP80xjj/8e/w//Hv8P/x7/D/8e/w//Hv
|
||||||
|
8P/x7/D/8e/w//Hv8P9CQkL/9vb2//b29v9CQkL/8e/w/zTGOP80xjj/NMY4//Hv8P9CQkL/QkJC/0JC
|
||||||
|
Qv9CQkL/QkJC/0JCQv/x7/D/QkJC//b29v/29vb/QkJC//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv
|
||||||
|
8P/x7/D/8e/w//Hv8P/x7/D/8e/w/0JCQv/29vb/9vb2/0JCQv/x7/D/nFMA/5xTAP+cUwD/8e/w/3x8
|
||||||
|
fP98fHz/fHx8/3x8fP/x7/D/8e/w//Hv8P9CQkL/9vb2//b29v9CQkL/8e/w/5xTAP+cUwD/nFMA//Hv
|
||||||
|
8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/QkJC//b29v/29vb/QkJC//Hv8P+cUwD/nFMA/5xT
|
||||||
|
AP/x7/D/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/8e/w/0JCQv/29vb/9vb2/0JCQv/x7/D/8e/w//Hv
|
||||||
|
8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P9CQkL/9vb2//b29v9CQkL/QkJC/0JC
|
||||||
|
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC//b29v/29vb/QkJC/0JC
|
||||||
|
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/29vb/9vb2/0JC
|
||||||
|
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/9vb2//b2
|
||||||
|
9v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b2
|
||||||
|
9v////8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af//
|
||||||
|
/wH///8BAAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA
|
||||||
|
//8AAP//AAD//w==
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
|
</root>
|
247
WordGen/View/ResultForm.Designer.cs
generated
Normal file
@ -0,0 +1,247 @@
|
|||||||
|
namespace WordGen.View {
|
||||||
|
partial class ResultForm {
|
||||||
|
/// <summary>
|
||||||
|
/// Required designer variable.
|
||||||
|
/// </summary>
|
||||||
|
private System.ComponentModel.IContainer components = null;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Clean up any resources being used.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
|
||||||
|
protected override void Dispose(bool disposing) {
|
||||||
|
if (disposing && (components != null)) {
|
||||||
|
components.Dispose();
|
||||||
|
}
|
||||||
|
base.Dispose(disposing);
|
||||||
|
}
|
||||||
|
|
||||||
|
#region Windows Form Designer generated code
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Required method for Designer support - do not modify
|
||||||
|
/// the contents of this method with the code editor.
|
||||||
|
/// </summary>
|
||||||
|
private void InitializeComponent() {
|
||||||
|
this.components = new System.ComponentModel.Container();
|
||||||
|
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(ResultForm));
|
||||||
|
System.Windows.Forms.ListViewItem listViewItem3 = new System.Windows.Forms.ListViewItem(new string[] {
|
||||||
|
"Mot incomplet",
|
||||||
|
resources.GetString("LVresults.Items")}, 1);
|
||||||
|
System.Windows.Forms.ListViewItem listViewItem4 = new System.Windows.Forms.ListViewItem("Mot", 0);
|
||||||
|
this.TSresult = new System.Windows.Forms.ToolStrip();
|
||||||
|
this.Bcopy = new System.Windows.Forms.ToolStripButton();
|
||||||
|
this.Binfo = new System.Windows.Forms.ToolStripButton();
|
||||||
|
this.Sep1 = new System.Windows.Forms.ToolStripSeparator();
|
||||||
|
this.Bsave = new System.Windows.Forms.ToolStripButton();
|
||||||
|
this.BlockForms = new System.Windows.Forms.ToolStripButton();
|
||||||
|
this.Bview = new System.Windows.Forms.ToolStripDropDownButton();
|
||||||
|
this.BviewDetail = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
|
this.BviewSmall = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
|
this.BviewTile = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
|
this.LVresults = new System.Windows.Forms.ListView();
|
||||||
|
this.CHname = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
|
||||||
|
this.CHerror = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
|
||||||
|
this.ILresultsLarge = new System.Windows.Forms.ImageList(this.components);
|
||||||
|
this.ILresultsSmall = new System.Windows.Forms.ImageList(this.components);
|
||||||
|
this.ttErrorInfo = new System.Windows.Forms.ToolTip(this.components);
|
||||||
|
this.TSresult.SuspendLayout();
|
||||||
|
this.SuspendLayout();
|
||||||
|
//
|
||||||
|
// TSresult
|
||||||
|
//
|
||||||
|
this.TSresult.GripStyle = System.Windows.Forms.ToolStripGripStyle.Hidden;
|
||||||
|
this.TSresult.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||||
|
this.Bcopy,
|
||||||
|
this.Binfo,
|
||||||
|
this.Sep1,
|
||||||
|
this.Bsave,
|
||||||
|
this.BlockForms,
|
||||||
|
this.Bview});
|
||||||
|
this.TSresult.Location = new System.Drawing.Point(0, 0);
|
||||||
|
this.TSresult.Name = "TSresult";
|
||||||
|
this.TSresult.Size = new System.Drawing.Size(275, 25);
|
||||||
|
this.TSresult.TabIndex = 0;
|
||||||
|
this.TSresult.Text = "toolStrip1";
|
||||||
|
//
|
||||||
|
// Bcopy
|
||||||
|
//
|
||||||
|
this.Bcopy.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
|
||||||
|
this.Bcopy.Image = global::WordGen.Properties.Resources.Copy_6524;
|
||||||
|
this.Bcopy.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||||
|
this.Bcopy.Name = "Bcopy";
|
||||||
|
this.Bcopy.Size = new System.Drawing.Size(23, 22);
|
||||||
|
this.Bcopy.Text = "BCopy";
|
||||||
|
//
|
||||||
|
// Binfo
|
||||||
|
//
|
||||||
|
this.Binfo.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
|
||||||
|
this.Binfo.Image = global::WordGen.Properties.Resources.StatusAnnotations_Information_16xMD;
|
||||||
|
this.Binfo.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||||
|
this.Binfo.Name = "Binfo";
|
||||||
|
this.Binfo.Size = new System.Drawing.Size(23, 22);
|
||||||
|
this.Binfo.Text = "Binfo";
|
||||||
|
this.Binfo.Click += new System.EventHandler(this.Binfo_Click);
|
||||||
|
//
|
||||||
|
// Sep1
|
||||||
|
//
|
||||||
|
this.Sep1.Name = "Sep1";
|
||||||
|
this.Sep1.Size = new System.Drawing.Size(6, 25);
|
||||||
|
//
|
||||||
|
// Bsave
|
||||||
|
//
|
||||||
|
this.Bsave.Image = global::WordGen.Properties.Resources.save_16xLG;
|
||||||
|
this.Bsave.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||||
|
this.Bsave.Name = "Bsave";
|
||||||
|
this.Bsave.Size = new System.Drawing.Size(92, 22);
|
||||||
|
this.Bsave.Text = "Enregistrer...";
|
||||||
|
//
|
||||||
|
// BlockForms
|
||||||
|
//
|
||||||
|
this.BlockForms.Alignment = System.Windows.Forms.ToolStripItemAlignment.Right;
|
||||||
|
this.BlockForms.Checked = true;
|
||||||
|
this.BlockForms.CheckState = System.Windows.Forms.CheckState.Checked;
|
||||||
|
this.BlockForms.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
|
||||||
|
this.BlockForms.Image = global::WordGen.Properties.Resources.lock_16xLG;
|
||||||
|
this.BlockForms.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||||
|
this.BlockForms.Name = "BlockForms";
|
||||||
|
this.BlockForms.Size = new System.Drawing.Size(23, 22);
|
||||||
|
this.BlockForms.Text = "Lier les deux fenêtres";
|
||||||
|
this.BlockForms.Click += new System.EventHandler(this.BLockMove_Click);
|
||||||
|
//
|
||||||
|
// Bview
|
||||||
|
//
|
||||||
|
this.Bview.Alignment = System.Windows.Forms.ToolStripItemAlignment.Right;
|
||||||
|
this.Bview.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
|
||||||
|
this.Bview.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||||
|
this.BviewDetail,
|
||||||
|
this.BviewSmall,
|
||||||
|
this.BviewTile});
|
||||||
|
this.Bview.Image = ((System.Drawing.Image)(resources.GetObject("Bview.Image")));
|
||||||
|
this.Bview.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||||
|
this.Bview.Name = "Bview";
|
||||||
|
this.Bview.Size = new System.Drawing.Size(29, 22);
|
||||||
|
this.Bview.Text = "Affichage des mots";
|
||||||
|
this.Bview.ToolTipText = "Affichage des mots";
|
||||||
|
//
|
||||||
|
// BviewDetail
|
||||||
|
//
|
||||||
|
this.BviewDetail.Image = global::WordGen.Properties.Resources.Views_Detail_16;
|
||||||
|
this.BviewDetail.Name = "BviewDetail";
|
||||||
|
this.BviewDetail.Size = new System.Drawing.Size(120, 22);
|
||||||
|
this.BviewDetail.Text = "Détail";
|
||||||
|
this.BviewDetail.Click += new System.EventHandler(this.BviewDetail_Click);
|
||||||
|
//
|
||||||
|
// BviewSmall
|
||||||
|
//
|
||||||
|
this.BviewSmall.Image = global::WordGen.Properties.Resources.Views_list_16;
|
||||||
|
this.BviewSmall.Name = "BviewSmall";
|
||||||
|
this.BviewSmall.Size = new System.Drawing.Size(120, 22);
|
||||||
|
this.BviewSmall.Text = "Liste";
|
||||||
|
this.BviewSmall.Click += new System.EventHandler(this.BviewSmall_Click);
|
||||||
|
//
|
||||||
|
// BviewTile
|
||||||
|
//
|
||||||
|
this.BviewTile.Image = global::WordGen.Properties.Resources.Views_Content_16;
|
||||||
|
this.BviewTile.Name = "BviewTile";
|
||||||
|
this.BviewTile.Size = new System.Drawing.Size(120, 22);
|
||||||
|
this.BviewTile.Text = "Contenu";
|
||||||
|
this.BviewTile.Click += new System.EventHandler(this.BviewTile_Click);
|
||||||
|
//
|
||||||
|
// LVresults
|
||||||
|
//
|
||||||
|
this.LVresults.BorderStyle = System.Windows.Forms.BorderStyle.None;
|
||||||
|
this.LVresults.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] {
|
||||||
|
this.CHname,
|
||||||
|
this.CHerror});
|
||||||
|
this.LVresults.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||||
|
this.LVresults.FullRowSelect = true;
|
||||||
|
this.LVresults.HeaderStyle = System.Windows.Forms.ColumnHeaderStyle.Nonclickable;
|
||||||
|
this.LVresults.Items.AddRange(new System.Windows.Forms.ListViewItem[] {
|
||||||
|
listViewItem3,
|
||||||
|
listViewItem4});
|
||||||
|
this.LVresults.LargeImageList = this.ILresultsLarge;
|
||||||
|
this.LVresults.Location = new System.Drawing.Point(0, 25);
|
||||||
|
this.LVresults.Name = "LVresults";
|
||||||
|
this.LVresults.ShowGroups = false;
|
||||||
|
this.LVresults.ShowItemToolTips = true;
|
||||||
|
this.LVresults.Size = new System.Drawing.Size(275, 436);
|
||||||
|
this.LVresults.SmallImageList = this.ILresultsSmall;
|
||||||
|
this.LVresults.TabIndex = 1;
|
||||||
|
this.LVresults.UseCompatibleStateImageBehavior = false;
|
||||||
|
this.LVresults.View = System.Windows.Forms.View.SmallIcon;
|
||||||
|
this.LVresults.SelectedIndexChanged += new System.EventHandler(this.LVresults_SelectedIndexChanged);
|
||||||
|
this.LVresults.DoubleClick += new System.EventHandler(this.LVresults_DoubleClick);
|
||||||
|
//
|
||||||
|
// CHname
|
||||||
|
//
|
||||||
|
this.CHname.Text = "Mot";
|
||||||
|
this.CHname.Width = 90;
|
||||||
|
//
|
||||||
|
// CHerror
|
||||||
|
//
|
||||||
|
this.CHerror.Text = "Erreur";
|
||||||
|
this.CHerror.Width = 182;
|
||||||
|
//
|
||||||
|
// ILresultsLarge
|
||||||
|
//
|
||||||
|
this.ILresultsLarge.ImageStream = ((System.Windows.Forms.ImageListStreamer)(resources.GetObject("ILresultsLarge.ImageStream")));
|
||||||
|
this.ILresultsLarge.TransparentColor = System.Drawing.Color.Transparent;
|
||||||
|
this.ILresultsLarge.Images.SetKeyName(0, "Textfile_818_32x.png");
|
||||||
|
this.ILresultsLarge.Images.SetKeyName(1, "BrokenlinktoFile_431_32x.png");
|
||||||
|
//
|
||||||
|
// ILresultsSmall
|
||||||
|
//
|
||||||
|
this.ILresultsSmall.ImageStream = ((System.Windows.Forms.ImageListStreamer)(resources.GetObject("ILresultsSmall.ImageStream")));
|
||||||
|
this.ILresultsSmall.TransparentColor = System.Drawing.Color.Transparent;
|
||||||
|
this.ILresultsSmall.Images.SetKeyName(0, "Textfile_818_16x.png");
|
||||||
|
this.ILresultsSmall.Images.SetKeyName(1, "BrokenlinktoFile_431_16x.png");
|
||||||
|
this.ILresultsSmall.Images.SetKeyName(2, "Strings_7959_16x.png");
|
||||||
|
//
|
||||||
|
// ResultForm
|
||||||
|
//
|
||||||
|
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||||
|
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||||
|
this.ClientSize = new System.Drawing.Size(275, 461);
|
||||||
|
this.Controls.Add(this.LVresults);
|
||||||
|
this.Controls.Add(this.TSresult);
|
||||||
|
this.Font = new System.Drawing.Font("Segoe UI", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||||
|
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
|
||||||
|
this.MaximizeBox = false;
|
||||||
|
this.MinimumSize = new System.Drawing.Size(250, 320);
|
||||||
|
this.Name = "ResultForm";
|
||||||
|
this.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide;
|
||||||
|
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
|
||||||
|
this.Text = "ResultForm";
|
||||||
|
this.FormClosed += new System.Windows.Forms.FormClosedEventHandler(this.ResultForm_FormClosed);
|
||||||
|
this.Load += new System.EventHandler(this.ResultForm_Load);
|
||||||
|
this.Shown += new System.EventHandler(this.ResultForm_Shown);
|
||||||
|
this.Move += new System.EventHandler(this.ResultForm_Move);
|
||||||
|
this.Resize += new System.EventHandler(this.ResultForm_Resize);
|
||||||
|
this.TSresult.ResumeLayout(false);
|
||||||
|
this.TSresult.PerformLayout();
|
||||||
|
this.ResumeLayout(false);
|
||||||
|
this.PerformLayout();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
private System.Windows.Forms.ToolStrip TSresult;
|
||||||
|
private System.Windows.Forms.ToolStripButton Bcopy;
|
||||||
|
private System.Windows.Forms.ToolStripSeparator Sep1;
|
||||||
|
private System.Windows.Forms.ToolStripButton Bsave;
|
||||||
|
private System.Windows.Forms.ToolStripButton BlockForms;
|
||||||
|
private System.Windows.Forms.ListView LVresults;
|
||||||
|
private System.Windows.Forms.ColumnHeader CHname;
|
||||||
|
private System.Windows.Forms.ColumnHeader CHerror;
|
||||||
|
private System.Windows.Forms.ToolStripDropDownButton Bview;
|
||||||
|
private System.Windows.Forms.ToolStripMenuItem BviewDetail;
|
||||||
|
private System.Windows.Forms.ToolStripMenuItem BviewSmall;
|
||||||
|
private System.Windows.Forms.ToolStripMenuItem BviewTile;
|
||||||
|
private System.Windows.Forms.ImageList ILresultsSmall;
|
||||||
|
private System.Windows.Forms.ImageList ILresultsLarge;
|
||||||
|
private System.Windows.Forms.ToolStripButton Binfo;
|
||||||
|
private System.Windows.Forms.ToolTip ttErrorInfo;
|
||||||
|
}
|
||||||
|
}
|
138
WordGen/View/ResultForm.cs
Normal file
@ -0,0 +1,138 @@
|
|||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.ComponentModel;
|
||||||
|
using System.Data;
|
||||||
|
using System.Drawing;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
using System.Windows.Forms;
|
||||||
|
using WordGen.Model.Exceptions;
|
||||||
|
using WordGen.View.LocalizationString;
|
||||||
|
|
||||||
|
namespace WordGen.View {
|
||||||
|
public partial class ResultForm : Form {
|
||||||
|
|
||||||
|
private bool _isLocked;
|
||||||
|
public bool isLocked
|
||||||
|
{
|
||||||
|
get { return _isLocked; }
|
||||||
|
set
|
||||||
|
{
|
||||||
|
_isLocked = value;
|
||||||
|
BlockForms.Checked = value;
|
||||||
|
BlockForms.Image = (value) ? WordGen.Properties.Resources.lock_16xLG : WordGen.Properties.Resources.unlock_16xLG;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public ResultForm() {
|
||||||
|
InitializeComponent();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void ResultForm_Load(object sender, EventArgs e) {
|
||||||
|
BviewSmall_Click(sender, e);
|
||||||
|
isLocked = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void ResultForm_Move(object sender, EventArgs e) {
|
||||||
|
if (this.ContainsFocus) {
|
||||||
|
isLocked = false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void BLockMove_Click(object sender, EventArgs e) {
|
||||||
|
isLocked = !BlockForms.Checked;
|
||||||
|
}
|
||||||
|
|
||||||
|
internal void setList(Dictionary<string, GeneratorException> results) {
|
||||||
|
LVresults.Items.Clear();
|
||||||
|
foreach (KeyValuePair<string, GeneratorException> aWord in results) {
|
||||||
|
ListViewItem aLvi = new ListViewItem();
|
||||||
|
aLvi.Text = aWord.Key;
|
||||||
|
aLvi.ImageIndex = (aWord.Value != null) ? 1 : 0;
|
||||||
|
if (aWord.Value != null) {
|
||||||
|
ListViewItem.ListViewSubItem aLvsi = new ListViewItem.ListViewSubItem(aLvi, aWord.Value.Message);
|
||||||
|
if (aWord.Value.GetType() == new EmptyConsonnantListException().GetType()) {
|
||||||
|
aLvi.Tag = (EmptyConsonnantListException)aWord.Value;
|
||||||
|
} else if (aWord.Value.GetType() == new EmptyVowelListException().GetType()) {
|
||||||
|
aLvi.Tag = (EmptyVowelListException)aWord.Value;
|
||||||
|
} else if (aWord.Value.GetType() == new EmptySyllableListException().GetType()) {
|
||||||
|
aLvi.Tag = (EmptySyllableListException)aWord.Value;
|
||||||
|
} else if (aWord.Value.GetType() == new NoBeforeSyllableMatchException().GetType()) {
|
||||||
|
aLvi.Tag = (NoBeforeSyllableMatchException)aWord.Value;
|
||||||
|
} else {
|
||||||
|
aLvi.Tag = aWord.Value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
LVresults.Items.Add(aLvi);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
internal void showWordInfo() {
|
||||||
|
GeneratorException reason = (GeneratorException)LVresults.SelectedItems[0].Tag;
|
||||||
|
MessageBox.Show(reason.Message, Messages.ResultForm_InformationTitle, MessageBoxButtons.OK, MessageBoxIcon.Information);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void BviewDetail_Click(object sender, EventArgs e) {
|
||||||
|
LVresults.View = System.Windows.Forms.View.Details;
|
||||||
|
Bview.Image = BviewDetail.Image;
|
||||||
|
LVresults.Columns[0].Width = Convert.ToInt32(0.3 * this.Width);
|
||||||
|
LVresults.Columns[1].Width = Convert.ToInt32(0.7 * this.Width) - 18;
|
||||||
|
BviewDetail.Checked = true;
|
||||||
|
BviewSmall.Checked = false;
|
||||||
|
BviewTile.Checked = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void BviewSmall_Click(object sender, EventArgs e) {
|
||||||
|
LVresults.View = System.Windows.Forms.View.SmallIcon;
|
||||||
|
Bview.Image = BviewSmall.Image;
|
||||||
|
BviewDetail.Checked = false;
|
||||||
|
BviewSmall.Checked = true;
|
||||||
|
BviewTile.Checked = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void BviewTile_Click(object sender, EventArgs e) {
|
||||||
|
LVresults.View = System.Windows.Forms.View.Tile;
|
||||||
|
Bview.Image = BviewTile.Image;
|
||||||
|
BviewDetail.Checked = false;
|
||||||
|
BviewSmall.Checked = false;
|
||||||
|
BviewTile.Checked = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void ResultForm_FormClosed(object sender, FormClosedEventArgs e) {
|
||||||
|
this.Dispose();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void ResultForm_Resize(object sender, EventArgs e) {
|
||||||
|
if (LVresults.View == System.Windows.Forms.View.Details) {
|
||||||
|
LVresults.Columns[0].Width = Convert.ToInt32(0.3 * this.Width);
|
||||||
|
LVresults.Columns[1].Width = Convert.ToInt32(0.7 * this.Width) - 18;
|
||||||
|
} else {
|
||||||
|
LVresults.ArrangeIcons(ListViewAlignment.SnapToGrid);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void Binfo_Click(object sender, EventArgs e) {
|
||||||
|
if (LVresults.SelectedItems[0].Tag != null) {
|
||||||
|
showWordInfo();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void LVresults_SelectedIndexChanged(object sender, EventArgs e) {
|
||||||
|
var hasSelection = (LVresults.SelectedItems.Count > 0);
|
||||||
|
Bcopy.Enabled = hasSelection;
|
||||||
|
Binfo.Enabled = (hasSelection && (LVresults.SelectedItems[0].Tag != null));
|
||||||
|
}
|
||||||
|
|
||||||
|
private void LVresults_DoubleClick(object sender, EventArgs e) {
|
||||||
|
if (LVresults.SelectedItems[0].Tag != null) {
|
||||||
|
showWordInfo();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void ResultForm_Shown(object sender, EventArgs e) {
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
345
WordGen/View/ResultForm.resx
Normal file
@ -0,0 +1,345 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<root>
|
||||||
|
<!--
|
||||||
|
Microsoft ResX Schema
|
||||||
|
|
||||||
|
Version 2.0
|
||||||
|
|
||||||
|
The primary goals of this format is to allow a simple XML format
|
||||||
|
that is mostly human readable. The generation and parsing of the
|
||||||
|
various data types are done through the TypeConverter classes
|
||||||
|
associated with the data types.
|
||||||
|
|
||||||
|
Example:
|
||||||
|
|
||||||
|
... ado.net/XML headers & schema ...
|
||||||
|
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||||
|
<resheader name="version">2.0</resheader>
|
||||||
|
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||||
|
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||||
|
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||||
|
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||||
|
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||||
|
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||||
|
</data>
|
||||||
|
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||||
|
<comment>This is a comment</comment>
|
||||||
|
</data>
|
||||||
|
|
||||||
|
There are any number of "resheader" rows that contain simple
|
||||||
|
name/value pairs.
|
||||||
|
|
||||||
|
Each data row contains a name, and value. The row also contains a
|
||||||
|
type or mimetype. Type corresponds to a .NET class that support
|
||||||
|
text/value conversion through the TypeConverter architecture.
|
||||||
|
Classes that don't support this are serialized and stored with the
|
||||||
|
mimetype set.
|
||||||
|
|
||||||
|
The mimetype is used for serialized objects, and tells the
|
||||||
|
ResXResourceReader how to depersist the object. This is currently not
|
||||||
|
extensible. For a given mimetype the value must be set accordingly:
|
||||||
|
|
||||||
|
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||||
|
that the ResXResourceWriter will generate, however the reader can
|
||||||
|
read any of the formats listed below.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.binary.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.soap.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||||
|
value : The object must be serialized into a byte array
|
||||||
|
: using a System.ComponentModel.TypeConverter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
-->
|
||||||
|
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||||
|
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||||
|
<xsd:element name="root" msdata:IsDataSet="true">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:choice maxOccurs="unbounded">
|
||||||
|
<xsd:element name="metadata">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="assembly">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:attribute name="alias" type="xsd:string" />
|
||||||
|
<xsd:attribute name="name" type="xsd:string" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="data">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="resheader">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:choice>
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:schema>
|
||||||
|
<resheader name="resmimetype">
|
||||||
|
<value>text/microsoft-resx</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="version">
|
||||||
|
<value>2.0</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="reader">
|
||||||
|
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="writer">
|
||||||
|
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
<metadata name="TSresult.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||||
|
<value>17, 17</value>
|
||||||
|
</metadata>
|
||||||
|
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||||
|
<data name="Bview.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>
|
||||||
|
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
||||||
|
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAABXSURBVDhPzY4xDgAgCAN5G///i7qwajSpMcIg4iDJLZQc
|
||||||
|
JRGpEYaAma/4TJBTcXEkwKcdZEpgHUEG1ux9Aw9Hgr63QKYE1hFkYM3eN/CgBDdMQQSKDVED6Aq6C57l
|
||||||
|
g/wAAAAASUVORK5CYII=
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
|
<data name="LVresults.Items" xml:space="preserve">
|
||||||
|
<value>Conloquiis nodum eique urgentis tractatus incumberet nimis incumberet destitutus scriptis cum confidentia nimis clandestinis vi cum effundendis tamquam aliis rebus clandestinis codicem interiret per aliis curarum publici publici mollioribus curarum.</value>
|
||||||
|
</data>
|
||||||
|
<metadata name="ILresultsLarge.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||||
|
<value>248, 17</value>
|
||||||
|
</metadata>
|
||||||
|
<data name="ILresultsLarge.ImageStream" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||||
|
<value>
|
||||||
|
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
|
||||||
|
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
|
||||||
|
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAACU
|
||||||
|
CwAAAk1TRnQBSQFMAgEBAgEAAVgBAAFYAQABIAEAASABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
|
||||||
|
AwABgAMAASADAAEBAQABCAYAARAYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA
|
||||||
|
AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5
|
||||||
|
AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA
|
||||||
|
AWYDAAGZAwABzAIAATMDAAIzAgABMwFmAgABMwGZAgABMwHMAgABMwH/AgABZgMAAWYBMwIAAmYCAAFm
|
||||||
|
AZkCAAFmAcwCAAFmAf8CAAGZAwABmQEzAgABmQFmAgACmQIAAZkBzAIAAZkB/wIAAcwDAAHMATMCAAHM
|
||||||
|
AWYCAAHMAZkCAALMAgABzAH/AgAB/wFmAgAB/wGZAgAB/wHMAQABMwH/AgAB/wEAATMBAAEzAQABZgEA
|
||||||
|
ATMBAAGZAQABMwEAAcwBAAEzAQAB/wEAAf8BMwIAAzMBAAIzAWYBAAIzAZkBAAIzAcwBAAIzAf8BAAEz
|
||||||
|
AWYCAAEzAWYBMwEAATMCZgEAATMBZgGZAQABMwFmAcwBAAEzAWYB/wEAATMBmQIAATMBmQEzAQABMwGZ
|
||||||
|
AWYBAAEzApkBAAEzAZkBzAEAATMBmQH/AQABMwHMAgABMwHMATMBAAEzAcwBZgEAATMBzAGZAQABMwLM
|
||||||
|
AQABMwHMAf8BAAEzAf8BMwEAATMB/wFmAQABMwH/AZkBAAEzAf8BzAEAATMC/wEAAWYDAAFmAQABMwEA
|
||||||
|
AWYBAAFmAQABZgEAAZkBAAFmAQABzAEAAWYBAAH/AQABZgEzAgABZgIzAQABZgEzAWYBAAFmATMBmQEA
|
||||||
|
AWYBMwHMAQABZgEzAf8BAAJmAgACZgEzAQADZgEAAmYBmQEAAmYBzAEAAWYBmQIAAWYBmQEzAQABZgGZ
|
||||||
|
AWYBAAFmApkBAAFmAZkBzAEAAWYBmQH/AQABZgHMAgABZgHMATMBAAFmAcwBmQEAAWYCzAEAAWYBzAH/
|
||||||
|
AQABZgH/AgABZgH/ATMBAAFmAf8BmQEAAWYB/wHMAQABzAEAAf8BAAH/AQABzAEAApkCAAGZATMBmQEA
|
||||||
|
AZkBAAGZAQABmQEAAcwBAAGZAwABmQIzAQABmQEAAWYBAAGZATMBzAEAAZkBAAH/AQABmQFmAgABmQFm
|
||||||
|
ATMBAAGZATMBZgEAAZkBZgGZAQABmQFmAcwBAAGZATMB/wEAApkBMwEAApkBZgEAA5kBAAKZAcwBAAKZ
|
||||||
|
Af8BAAGZAcwCAAGZAcwBMwEAAWYBzAFmAQABmQHMAZkBAAGZAswBAAGZAcwB/wEAAZkB/wIAAZkB/wEz
|
||||||
|
AQABmQHMAWYBAAGZAf8BmQEAAZkB/wHMAQABmQL/AQABzAMAAZkBAAEzAQABzAEAAWYBAAHMAQABmQEA
|
||||||
|
AcwBAAHMAQABmQEzAgABzAIzAQABzAEzAWYBAAHMATMBmQEAAcwBMwHMAQABzAEzAf8BAAHMAWYCAAHM
|
||||||
|
AWYBMwEAAZkCZgEAAcwBZgGZAQABzAFmAcwBAAGZAWYB/wEAAcwBmQIAAcwBmQEzAQABzAGZAWYBAAHM
|
||||||
|
ApkBAAHMAZkBzAEAAcwBmQH/AQACzAIAAswBMwEAAswBZgEAAswBmQEAA8wBAALMAf8BAAHMAf8CAAHM
|
||||||
|
Af8BMwEAAZkB/wFmAQABzAH/AZkBAAHMAf8BzAEAAcwC/wEAAcwBAAEzAQAB/wEAAWYBAAH/AQABmQEA
|
||||||
|
AcwBMwIAAf8CMwEAAf8BMwFmAQAB/wEzAZkBAAH/ATMBzAEAAf8BMwH/AQAB/wFmAgAB/wFmATMBAAHM
|
||||||
|
AmYBAAH/AWYBmQEAAf8BZgHMAQABzAFmAf8BAAH/AZkCAAH/AZkBMwEAAf8BmQFmAQAB/wKZAQAB/wGZ
|
||||||
|
AcwBAAH/AZkB/wEAAf8BzAIAAf8BzAEzAQAB/wHMAWYBAAH/AcwBmQEAAf8CzAEAAf8BzAH/AQAC/wEz
|
||||||
|
AQABzAH/AWYBAAL/AZkBAAL/AcwBAAJmAf8BAAFmAf8BZgEAAWYC/wEAAf8CZgEAAf8BZgH/AQAC/wFm
|
||||||
|
AQABIQEAAaUBAANfAQADdwEAA4YBAAOWAQADywEAA7IBAAPXAQAD3QEAA+MBAAPqAQAD8QEAA/gBAAHw
|
||||||
|
AfsB/wEAAaQCoAEAA4ADAAH/AgAB/wMAAv8BAAH/AwAB/wEAAf8BAAL/AgAD/zIADvRxABD0RQAW9BUA
|
||||||
|
AvQBmgo4AZoC9EQAGPQUAAL0AcMEOAIABDgBwwL0RAAC9AHsEhQB7QL0BwAQ9AFZAzgCAAM4AXoC9EUA
|
||||||
|
AvQUFAHzAfQGABH0AcMIOAHDAvRFAAL0AhQQ9AIUAvQGAAL0Ae0NFAGSAfQBWQI4AgACOAF6AvRGAAL0
|
||||||
|
AhQQ9AIUAvQGAAL0DhQBEwHzAcMCOAIAAjgBwwL0RgAC9AIUAvQMFAL0AhQC9AYAAvQCFA/0AVkBOAIA
|
||||||
|
ATgBegL0RwAC9AIUAvQMFAL0AhQC9AYAAvQCFA/0AcMBOAIAATgBwwL0RwAC9AIUEPQCFAL0BgAC9AIU
|
||||||
|
EPQBWQI4AXoC9EgAAvQCFBD0AhQC9AYAAvQCFBD0AcMCOAHDAvRIAAL0AhQC9AwUAvQCFAL0BgAC9AIU
|
||||||
|
EfQBWQF6AvRJAAL0AhQC9AwUAvQCFAL0BgAC9AIUEPQB8wLDAvRJAAL0AhQQ9AIUAvQGAAL0AhQQ9AJt
|
||||||
|
AvRKAAL0AhQQ9AIUAvQGAAL0AhQQ9AIUAvRKAAL0AhQC9AwUAvQCFAL0BgAC9AIUEPQCFAL0SgAC9AIU
|
||||||
|
AvQMFAL0AhQC9AYAAvQCFBD0AhQC9EoAAvQCFBD0AhQC9AYAAvQCFBD0AhQC9EoAAvQCFBD0AhQC9AYA
|
||||||
|
AvQCFBD0AhQC9EoAAvQCFAL0BxQC9AcUAvQGAAL0AhQQ9AIUAvRKAAL0AhQC9AcUAvQGFAHsAvQGAAL0
|
||||||
|
AhQQ9AIUAvRKAAL0AhQL9AUUAewD9AYAAvQCFAv0BxQC9EoAAvQCFAv0BBQB7AP0BwAC9AIUC/QGFAHs
|
||||||
|
AvRKAAL0AhQL9AMUAewD9AgAAvQCFAv0BRQB7AP0SgAB9AHzAhQL9AIUAewD9AkAAvQCFAv0BBQB7AP0
|
||||||
|
SwAB9AHzDhQB7AP0CgAC9AIUC/QDFAHsA/RMAAL0AewMFAHsA/QLAAH0AfMCFAv0AhQB7AP0TQAS9AwA
|
||||||
|
AfQB8w4UAewD9E8AEPQNAAL0Ae0MFAHsA/RtABL0bwAQ9E0AAUIBTQE+BwABPgMAASgDAAGAAwABIAMA
|
||||||
|
AQEBAAEBBgABAhYAA/8BAAb/AYABAQgABv8KAAH4AgABHwL/CgAB8AIAAQ8C/woAAfACAAEPAeACAAEB
|
||||||
|
CAAB8AIAAQ8BwAIAAQEIAAHwAgABDwHAAgABAwgAAfACAAEPAcACAAEDCAAB8AIAAQ8BwAIAAQcIAAHw
|
||||||
|
AgABDwHAAgABBwgAAfACAAEPAcACAAEPCAAB8AIAAQ8BwAIAAQ8IAAHwAgABDwHAAgABHwgAAfACAAEP
|
||||||
|
AcACAAEfCAAB8AIAAQ8BwAIAAT8IAAHwAgABDwHAAgABPwgAAfACAAEPAcACAAE/CAAB8AIAAQ8BwAIA
|
||||||
|
AT8IAAHwAgABDwHAAgABPwgAAfACAAEPAcACAAE/CAAB8AIAAQ8BwAIAAT8IAAHwAgABDwHAAgABPwgA
|
||||||
|
AfACAAEPAcACAAE/CAAB8AIAAR8BwAIAAT8IAAHwAgABPwHAAgABPwgAAfACAAF/AcACAAF/CAAB8AIA
|
||||||
|
Af8BwAIAAf8IAAHwAQABAQH/AcABAAEBAf8IAAHwAQABAwH/AcABAAEDAf8IAAH4AQABBwH/AcABAAEH
|
||||||
|
Af8IAAT/AcABAAEPAf8IAAT/AeABAAEfAf8IAAs=
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
|
<metadata name="ILresultsSmall.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||||
|
<value>122, 17</value>
|
||||||
|
</metadata>
|
||||||
|
<data name="ILresultsSmall.ImageStream" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||||
|
<value>
|
||||||
|
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
|
||||||
|
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
|
||||||
|
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAADG
|
||||||
|
CQAAAk1TRnQBSQFMAgEBAwEAAVgBAAFYAQABEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
|
||||||
|
AwABQAMAARADAAEBAQABCAYAAQQYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA
|
||||||
|
AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5
|
||||||
|
AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA
|
||||||
|
AWYDAAGZAwABzAIAATMDAAIzAgABMwFmAgABMwGZAgABMwHMAgABMwH/AgABZgMAAWYBMwIAAmYCAAFm
|
||||||
|
AZkCAAFmAcwCAAFmAf8CAAGZAwABmQEzAgABmQFmAgACmQIAAZkBzAIAAZkB/wIAAcwDAAHMATMCAAHM
|
||||||
|
AWYCAAHMAZkCAALMAgABzAH/AgAB/wFmAgAB/wGZAgAB/wHMAQABMwH/AgAB/wEAATMBAAEzAQABZgEA
|
||||||
|
ATMBAAGZAQABMwEAAcwBAAEzAQAB/wEAAf8BMwIAAzMBAAIzAWYBAAIzAZkBAAIzAcwBAAIzAf8BAAEz
|
||||||
|
AWYCAAEzAWYBMwEAATMCZgEAATMBZgGZAQABMwFmAcwBAAEzAWYB/wEAATMBmQIAATMBmQEzAQABMwGZ
|
||||||
|
AWYBAAEzApkBAAEzAZkBzAEAATMBmQH/AQABMwHMAgABMwHMATMBAAEzAcwBZgEAATMBzAGZAQABMwLM
|
||||||
|
AQABMwHMAf8BAAEzAf8BMwEAATMB/wFmAQABMwH/AZkBAAEzAf8BzAEAATMC/wEAAWYDAAFmAQABMwEA
|
||||||
|
AWYBAAFmAQABZgEAAZkBAAFmAQABzAEAAWYBAAH/AQABZgEzAgABZgIzAQABZgEzAWYBAAFmATMBmQEA
|
||||||
|
AWYBMwHMAQABZgEzAf8BAAJmAgACZgEzAQADZgEAAmYBmQEAAmYBzAEAAWYBmQIAAWYBmQEzAQABZgGZ
|
||||||
|
AWYBAAFmApkBAAFmAZkBzAEAAWYBmQH/AQABZgHMAgABZgHMATMBAAFmAcwBmQEAAWYCzAEAAWYBzAH/
|
||||||
|
AQABZgH/AgABZgH/ATMBAAFmAf8BmQEAAWYB/wHMAQABzAEAAf8BAAH/AQABzAEAApkCAAGZATMBmQEA
|
||||||
|
AZkBAAGZAQABmQEAAcwBAAGZAwABmQIzAQABmQEAAWYBAAGZATMBzAEAAZkBAAH/AQABmQFmAgABmQFm
|
||||||
|
ATMBAAGZATMBZgEAAZkBZgGZAQABmQFmAcwBAAGZATMB/wEAApkBMwEAApkBZgEAA5kBAAKZAcwBAAKZ
|
||||||
|
Af8BAAGZAcwCAAGZAcwBMwEAAWYBzAFmAQABmQHMAZkBAAGZAswBAAGZAcwB/wEAAZkB/wIAAZkB/wEz
|
||||||
|
AQABmQHMAWYBAAGZAf8BmQEAAZkB/wHMAQABmQL/AQABzAMAAZkBAAEzAQABzAEAAWYBAAHMAQABmQEA
|
||||||
|
AcwBAAHMAQABmQEzAgABzAIzAQABzAEzAWYBAAHMATMBmQEAAcwBMwHMAQABzAEzAf8BAAHMAWYCAAHM
|
||||||
|
AWYBMwEAAZkCZgEAAcwBZgGZAQABzAFmAcwBAAGZAWYB/wEAAcwBmQIAAcwBmQEzAQABzAGZAWYBAAHM
|
||||||
|
ApkBAAHMAZkBzAEAAcwBmQH/AQACzAIAAswBMwEAAswBZgEAAswBmQEAA8wBAALMAf8BAAHMAf8CAAHM
|
||||||
|
Af8BMwEAAZkB/wFmAQABzAH/AZkBAAHMAf8BzAEAAcwC/wEAAcwBAAEzAQAB/wEAAWYBAAH/AQABmQEA
|
||||||
|
AcwBMwIAAf8CMwEAAf8BMwFmAQAB/wEzAZkBAAH/ATMBzAEAAf8BMwH/AQAB/wFmAgAB/wFmATMBAAHM
|
||||||
|
AmYBAAH/AWYBmQEAAf8BZgHMAQABzAFmAf8BAAH/AZkCAAH/AZkBMwEAAf8BmQFmAQAB/wKZAQAB/wGZ
|
||||||
|
AcwBAAH/AZkB/wEAAf8BzAIAAf8BzAEzAQAB/wHMAWYBAAH/AcwBmQEAAf8CzAEAAf8BzAH/AQAC/wEz
|
||||||
|
AQABzAH/AWYBAAL/AZkBAAL/AcwBAAJmAf8BAAFmAf8BZgEAAWYC/wEAAf8CZgEAAf8BZgH/AQAC/wFm
|
||||||
|
AQABIQEAAaUBAANfAQADdwEAA4YBAAOWAQADywEAA7IBAAPXAQAD3QEAA+MBAAPqAQAD8QEAA/gBAAHw
|
||||||
|
AfsB/wEAAaQCoAEAA4ADAAH/AgAB/wMAAv8BAAH/AwAB/wEAAf8BAAL/AgAD/xgACfQiAAz0CAAB/wH0
|
||||||
|
AVkFOAFZEfQSAAH0ChQB9AIACPQBWQI4AQACOAFZAvQOFAH0EgAB9AEUCPQBFAH0AgAB9AYUAeoBmgU4
|
||||||
|
AcMC9AEUDPQBFAH0EgAB9AEUAfQGFAH0ARQB9AIAAfQBFAf0AVkBOAEAATgBWQH0AQAB9AEUDPQBFAH0
|
||||||
|
EgAB9AEUCPQBFAH0AgAB9AEUB/QBmgE4AQABOAHDAfQBAAH0ARQM9AEUAfQSAAH0ARQB9AYUAfQBFAH0
|
||||||
|
AgAB9AEUCPQBWQE4AVkB9AIAAfQBFAH0AxQB9AMUAfQCFAH0ARQB9BIAAfQBFAj0ARQB9AIAAfQBFAj0
|
||||||
|
AZoBOAGaAfQCAAH0ARQB9AEUAfQBFAH0ARQB9AEUAfQBFAL0ARQB9BIAAfQBFAH0BhQB9AEUAfQCAAH0
|
||||||
|
ARQI9AHvAvQB/wIAAfQBFAL0AhQB9AEUAfQBFAH0ARQC9AEUAfQSAAH0ARQI9AEUAfQCAAH0ARQI9AEU
|
||||||
|
AfQEAAH0ARQB9AMUAfQDFAH0AhQB9AEUAfQSAAH0ARQB9AMUAfQEFAH0AgAB9AEUCPQBFAH0BAAB9AEU
|
||||||
|
BfQBFAb0ARQB9BIAAfQBFAX0AxQB7AH0AgAB9AEUBfQEFAH0BAAB9AEUDPQBFAH0EgAB9AEUBfQCFAHs
|
||||||
|
AfQB/wIAAfQBFAX0AxQB7AH0BAAB9AEUDPQBFAH0EgAB9AcUAZIB9AH/AwAB9AEUBfQCFAHsAfQB/wQA
|
||||||
|
AfQOFAH0EgAJ9AH/BAAB9AcUAewB9AH/BQAQ9CAACfQB/yYAAUIBTQE+BwABPgMAASgDAAFAAwABEAMA
|
||||||
|
AQEBAAEBBQABgBcAA/8BAAL/Af4BAAL/AgABwAEDAfwFAAHAAQMGAAHAAQMGAAHAAQMBAAEBBAABwAED
|
||||||
|
AQABAQQAAcABAwEAAQMEAAHAAQMBAAEDBAABwAEDAQABAwQAAcABAwEAAQ8EAAHAAQMBAAEPBAABwAED
|
||||||
|
AQABDwQAAcABAwEAAQ8EAAHAAQcBAAEPBAABwAEPAQABHwQAAv8BAAE/Av8CAAs=
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
|
<metadata name="ttErrorInfo.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||||
|
<value>374, 17</value>
|
||||||
|
</metadata>
|
||||||
|
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>
|
||||||
|
AAABAAIAEBAAAAAAIABoBAAAJgAAACAgAAAAACAAqBAAAI4EAAAoAAAAEAAAACAAAAABACAAAAAAAEAE
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAA////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af//
|
||||||
|
/wH///8B////Af///wH///8B////Af///wH///8B9vb2bfb29vf29vb/9vb2//b29v/29vb/9vb2//b2
|
||||||
|
9v/29vb/9vb2//b29vv29vaB////Af///wH///8B////Afb29vdTU1P/QkJC/0JCQv9CQkL/QkJC/0JC
|
||||||
|
Qv9CQkL/QkJC/0JCQv9VVVX/8/Pz+////wH///8B////Af///wH29vb/QkJC//Hv8P/x7/D/8e/w//Hv
|
||||||
|
8P/x7/D/8e/w//Hv8P/x7/D/QkJC//b29v////8B////Af///wH///8B9vb2/0JCQv/x7/D/QkJC/0JC
|
||||||
|
Qv9CQkL/QkJC/0JCQv9CQkL/8e/w/0JCQv/29vb/////Af///wH///8B////Afb29v9CQkL/8e/w//Hv
|
||||||
|
8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P9CQkL/9vb2/////wH///8B////Af///wH29vb/QkJC//Hv
|
||||||
|
8P9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/x7/D/QkJC//b29v////8B////Af///wH///8B9vb2/0JC
|
||||||
|
Qv/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w/0JCQv/29vb/////Af///wH///8B////Afb2
|
||||||
|
9v9CQkL/8e/w/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC//Hv8P9CQkL/9vb2/////wH///8B////Af//
|
||||||
|
/wH29vb/QkJC//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/QkJC//b29v////8B////Af//
|
||||||
|
/wH///8B9vb2/0JCQv/x7/D/QkJC/0JCQv9CQkL/mZiZ/5mYmf9CQkL/QkJC/1NTU//29vb/////Af//
|
||||||
|
/wH///8B////Afb29v9CQkL/8e/w//Hv8P/x7/D/8e/w//Hv8P+ZmJn/QkJC/1NTU//a2tr/9vb2j///
|
||||||
|
/wH///8B////Af///wHz8/P/QkJC//Hv8P/x7/D/8e/w//Hv8P/x7/D/mZiZ/1NTU//a2tr/9vb2j///
|
||||||
|
/wH///8B////Af///wH///8B8/Pz91NTU/9CQkL/QkJC/0JCQv9CQkL/QkJC/1NTU//a2tr/9vb2j///
|
||||||
|
/wH///8B////Af///wH///8B////Afb29m329vb39vb2//b29v/29vb/9vb2//b29v/29vb/9vb2e///
|
||||||
|
/wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af//
|
||||||
|
/wH///8B////Af///wH///8B////AQAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA
|
||||||
|
//8AAP//AAD//wAA//8AAP//AAD//wAA//8oAAAAIAAAAEAAAAABACAAAAAAAIAQAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAA////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af//
|
||||||
|
/wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af//
|
||||||
|
/wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af//
|
||||||
|
/wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af//
|
||||||
|
/wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B9vb2Yfb29t/29vb/9vb2//b2
|
||||||
|
9v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b2
|
||||||
|
9v/29vbv9vb2gf///wH///8B////Af///wH///8B////Af///wH///8B////Afb29lH29vb/9vb2//b2
|
||||||
|
9v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b2
|
||||||
|
9v/29vb/9vb2//b29v/29vb/9vb2gf///wH///8B////Af///wH///8B////Af///wH///8B9vb23/b2
|
||||||
|
9v+Ghob/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
|
||||||
|
Qv9CQkL/QkJC/0JCQv9CQkL/kZGR//b29v/29vbv////Af///wH///8B////Af///wH///8B////Af//
|
||||||
|
/wH29vb/9vb2/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
|
||||||
|
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/6+vr//b29v////8B////Af///wH///8B////Af//
|
||||||
|
/wH///8B////Afb29v/29vb/QkJC/0JCQv/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv
|
||||||
|
8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/QkJC/0JCQv/29vb/9vb2/////wH///8B////Af//
|
||||||
|
/wH///8B////Af///wH///8B9vb2//b29v9CQkL/QkJC//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv
|
||||||
|
8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P9CQkL/QkJC//b29v/29vb/////Af//
|
||||||
|
/wH///8B////Af///wH///8B////Af///wH29vb/9vb2/0JCQv9CQkL/8e/w//Hv8P9CQkL/QkJC/0JC
|
||||||
|
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/x7/D/8e/w/0JCQv9CQkL/9vb2//b2
|
||||||
|
9v////8B////Af///wH///8B////Af///wH///8B////Afb29v/29vb/QkJC/0JCQv/x7/D/8e/w/0JC
|
||||||
|
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC//Hv8P/x7/D/QkJC/0JC
|
||||||
|
Qv/29vb/9vb2/////wH///8B////Af///wH///8B////Af///wH///8B9vb2//b29v9CQkL/QkJC//Hv
|
||||||
|
8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv
|
||||||
|
8P9CQkL/QkJC//b29v/29vb/////Af///wH///8B////Af///wH///8B////Af///wH29vb/9vb2/0JC
|
||||||
|
Qv9CQkL/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv
|
||||||
|
8P/x7/D/8e/w/0JCQv9CQkL/9vb2//b29v////8B////Af///wH///8B////Af///wH///8B////Afb2
|
||||||
|
9v/29vb/QkJC/0JCQv/x7/D/8e/w/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
|
||||||
|
Qv9CQkL/QkJC//Hv8P/x7/D/QkJC/0JCQv/29vb/9vb2/////wH///8B////Af///wH///8B////Af//
|
||||||
|
/wH///8B9vb2//b29v9CQkL/QkJC//Hv8P/x7/D/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
|
||||||
|
Qv9CQkL/QkJC/0JCQv9CQkL/8e/w//Hv8P9CQkL/QkJC//b29v/29vb/////Af///wH///8B////Af//
|
||||||
|
/wH///8B////Af///wH29vb/9vb2/0JCQv9CQkL/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv
|
||||||
|
8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w/0JCQv9CQkL/9vb2//b29v////8B////Af//
|
||||||
|
/wH///8B////Af///wH///8B////Afb29v/29vb/QkJC/0JCQv/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv
|
||||||
|
8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/QkJC/0JCQv/29vb/9vb2////
|
||||||
|
/wH///8B////Af///wH///8B////Af///wH///8B9vb2//b29v9CQkL/QkJC//Hv8P/x7/D/QkJC/0JC
|
||||||
|
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/8e/w//Hv8P9CQkL/QkJC//b2
|
||||||
|
9v/29vb/////Af///wH///8B////Af///wH///8B////Af///wH29vb/9vb2/0JCQv9CQkL/8e/w//Hv
|
||||||
|
8P9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv/x7/D/8e/w/0JC
|
||||||
|
Qv9CQkL/9vb2//b29v////8B////Af///wH///8B////Af///wH///8B////Afb29v/29vb/QkJC/0JC
|
||||||
|
Qv/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv
|
||||||
|
8P/x7/D/QkJC/0JCQv/29vb/9vb2/////wH///8B////Af///wH///8B////Af///wH///8B9vb2//b2
|
||||||
|
9v9CQkL/QkJC//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv
|
||||||
|
8P/x7/D/8e/w//Hv8P9CQkL/QkJC//b29v/29vb/////Af///wH///8B////Af///wH///8B////Af//
|
||||||
|
/wH29vb/9vb2/0JCQv9CQkL/8e/w//Hv8P9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/8e/w//Hv
|
||||||
|
8P9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/9vb2//b29v////8B////Af///wH///8B////Af//
|
||||||
|
/wH///8B////Afb29v/29vb/QkJC/0JCQv/x7/D/8e/w/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
|
||||||
|
Qv/x7/D/8e/w/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/4aGhv/29vb/9vb2/////wH///8B////Af//
|
||||||
|
/wH///8B////Af///wH///8B9vb2//b29v9CQkL/QkJC//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv
|
||||||
|
8P/x7/D/8e/w//Hv8P/x7/D/QkJC/0JCQv9CQkL/QkJC/0JCQv+Ghob/9vb2//b29v/29vaf////Af//
|
||||||
|
/wH///8B////Af///wH///8B////Af///wH29vb/9vb2/0JCQv9CQkL/8e/w//Hv8P/x7/D/8e/w//Hv
|
||||||
|
8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P9CQkL/QkJC/0JCQv9CQkL/hoaG//b29v/29vb/9vb2n///
|
||||||
|
/wH///8B////Af///wH///8B////Af///wH///8B////Afb29v/29vb/QkJC/0JCQv/x7/D/8e/w//Hv
|
||||||
|
8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w/0JCQv9CQkL/QkJC/4aGhv/29vb/9vb2//b2
|
||||||
|
9p////8B////Af///wH///8B////Af///wH///8B////Af///wH///8B9vb2/+vr6/9CQkL/QkJC//Hv
|
||||||
|
8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/QkJC/0JCQv+Ghob/9vb2//b2
|
||||||
|
9v/29vaf////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH29vb/6+vr/0JC
|
||||||
|
Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/hoaG//b2
|
||||||
|
9v/29vb/9vb2n////wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Afb2
|
||||||
|
9t/29vb/hoaG/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/4aG
|
||||||
|
hv/29vb/9vb2//b29p////8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af//
|
||||||
|
/wH///8B9vb2Yfb29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b2
|
||||||
|
9v/29vb/9vb2//b29v/29vaP////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af//
|
||||||
|
/wH///8B////Af///wH///8B9vb2Ufb29t/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b2
|
||||||
|
9v/29vb/9vb2//b29v/29vb/9vb2Yf///wH///8B////Af///wH///8B////Af///wH///8B////Af//
|
||||||
|
/wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af//
|
||||||
|
/wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af//
|
||||||
|
/wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af//
|
||||||
|
/wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af//
|
||||||
|
/wH///8B////Af///wH///8B////AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
|
</root>
|
342
WordGen/View/SyllabaryForm.Designer.cs
generated
Normal file
@ -0,0 +1,342 @@
|
|||||||
|
namespace WordGen.View {
|
||||||
|
partial class SyllabaryForm {
|
||||||
|
/// <summary>
|
||||||
|
/// Required designer variable.
|
||||||
|
/// </summary>
|
||||||
|
private System.ComponentModel.IContainer components = null;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Clean up any resources being used.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
|
||||||
|
protected override void Dispose(bool disposing) {
|
||||||
|
if (disposing && (components != null)) {
|
||||||
|
components.Dispose();
|
||||||
|
}
|
||||||
|
base.Dispose(disposing);
|
||||||
|
}
|
||||||
|
|
||||||
|
#region Windows Form Designer generated code
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Required method for Designer support - do not modify
|
||||||
|
/// the contents of this method with the code editor.
|
||||||
|
/// </summary>
|
||||||
|
private void InitializeComponent() {
|
||||||
|
this.components = new System.ComponentModel.Container();
|
||||||
|
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(SyllabaryForm));
|
||||||
|
this.LsyllabaryName = new System.Windows.Forms.Label();
|
||||||
|
this.TBsyllabaryName = new System.Windows.Forms.TextBox();
|
||||||
|
this.TBconsonants = new System.Windows.Forms.TextBox();
|
||||||
|
this.TBvowels = new System.Windows.Forms.TextBox();
|
||||||
|
this.TBsyllables = new System.Windows.Forms.TextBox();
|
||||||
|
this.Cliste = new System.Windows.Forms.TableLayoutPanel();
|
||||||
|
this.Lsyllable = new System.Windows.Forms.Label();
|
||||||
|
this.Lconsonant = new System.Windows.Forms.Label();
|
||||||
|
this.Lvowel = new System.Windows.Forms.Label();
|
||||||
|
this.DDbeginSyllables = new System.Windows.Forms.ComboBox();
|
||||||
|
this.DDendSyllables = new System.Windows.Forms.ComboBox();
|
||||||
|
this.EPsyllabary = new System.Windows.Forms.ErrorProvider(this.components);
|
||||||
|
this.BCancel = new System.Windows.Forms.Button();
|
||||||
|
this.BOk = new System.Windows.Forms.Button();
|
||||||
|
this.LbeginSyllable = new System.Windows.Forms.Label();
|
||||||
|
this.LendSyllable = new System.Windows.Forms.Label();
|
||||||
|
this.TTsyllablesHelp = new System.Windows.Forms.ToolTip(this.components);
|
||||||
|
this.LhelpBeginSyllable = new System.Windows.Forms.Label();
|
||||||
|
this.LhelpEndSyllable = new System.Windows.Forms.Label();
|
||||||
|
this.Cliste.SuspendLayout();
|
||||||
|
((System.ComponentModel.ISupportInitialize)(this.EPsyllabary)).BeginInit();
|
||||||
|
this.SuspendLayout();
|
||||||
|
//
|
||||||
|
// LsyllabaryName
|
||||||
|
//
|
||||||
|
this.LsyllabaryName.AutoSize = true;
|
||||||
|
this.LsyllabaryName.Location = new System.Drawing.Point(12, 15);
|
||||||
|
this.LsyllabaryName.Name = "LsyllabaryName";
|
||||||
|
this.LsyllabaryName.Size = new System.Drawing.Size(100, 13);
|
||||||
|
this.LsyllabaryName.TabIndex = 0;
|
||||||
|
this.LsyllabaryName.Text = "Nom du Syllabaire";
|
||||||
|
//
|
||||||
|
// TBsyllabaryName
|
||||||
|
//
|
||||||
|
this.TBsyllabaryName.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
|
||||||
|
| System.Windows.Forms.AnchorStyles.Right)));
|
||||||
|
this.TBsyllabaryName.Location = new System.Drawing.Point(118, 12);
|
||||||
|
this.TBsyllabaryName.MaxLength = 50;
|
||||||
|
this.TBsyllabaryName.Name = "TBsyllabaryName";
|
||||||
|
this.TBsyllabaryName.Size = new System.Drawing.Size(244, 22);
|
||||||
|
this.TBsyllabaryName.TabIndex = 1;
|
||||||
|
this.TBsyllabaryName.TextChanged += new System.EventHandler(this.TBsyllabaryName_TextChanged);
|
||||||
|
this.TBsyllabaryName.KeyDown += new System.Windows.Forms.KeyEventHandler(this.SyllabaireForm_KeyDown);
|
||||||
|
//
|
||||||
|
// TBconsonants
|
||||||
|
//
|
||||||
|
this.TBconsonants.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||||
|
this.TBconsonants.Location = new System.Drawing.Point(128, 23);
|
||||||
|
this.TBconsonants.Multiline = true;
|
||||||
|
this.TBconsonants.Name = "TBconsonants";
|
||||||
|
this.TBconsonants.ScrollBars = System.Windows.Forms.ScrollBars.Vertical;
|
||||||
|
this.TBconsonants.Size = new System.Drawing.Size(119, 202);
|
||||||
|
this.TBconsonants.TabIndex = 4;
|
||||||
|
this.TBconsonants.WordWrap = false;
|
||||||
|
this.TBconsonants.KeyDown += new System.Windows.Forms.KeyEventHandler(this.SyllabaireForm_KeyDown);
|
||||||
|
//
|
||||||
|
// TBvowels
|
||||||
|
//
|
||||||
|
this.TBvowels.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||||
|
this.TBvowels.Location = new System.Drawing.Point(3, 23);
|
||||||
|
this.TBvowels.Multiline = true;
|
||||||
|
this.TBvowels.Name = "TBvowels";
|
||||||
|
this.TBvowels.ScrollBars = System.Windows.Forms.ScrollBars.Vertical;
|
||||||
|
this.TBvowels.Size = new System.Drawing.Size(119, 202);
|
||||||
|
this.TBvowels.TabIndex = 3;
|
||||||
|
this.TBvowels.WordWrap = false;
|
||||||
|
this.TBvowels.KeyDown += new System.Windows.Forms.KeyEventHandler(this.SyllabaireForm_KeyDown);
|
||||||
|
//
|
||||||
|
// TBsyllables
|
||||||
|
//
|
||||||
|
this.TBsyllables.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||||
|
this.TBsyllables.Location = new System.Drawing.Point(253, 23);
|
||||||
|
this.TBsyllables.Multiline = true;
|
||||||
|
this.TBsyllables.Name = "TBsyllables";
|
||||||
|
this.TBsyllables.ScrollBars = System.Windows.Forms.ScrollBars.Vertical;
|
||||||
|
this.TBsyllables.Size = new System.Drawing.Size(120, 202);
|
||||||
|
this.TBsyllables.TabIndex = 5;
|
||||||
|
this.TBsyllables.WordWrap = false;
|
||||||
|
this.TBsyllables.TextChanged += new System.EventHandler(this.TBsyllables_TextChanged);
|
||||||
|
this.TBsyllables.KeyDown += new System.Windows.Forms.KeyEventHandler(this.SyllabaireForm_KeyDown);
|
||||||
|
//
|
||||||
|
// Cliste
|
||||||
|
//
|
||||||
|
this.Cliste.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
||||||
|
| System.Windows.Forms.AnchorStyles.Left)
|
||||||
|
| System.Windows.Forms.AnchorStyles.Right)));
|
||||||
|
this.Cliste.ColumnCount = 3;
|
||||||
|
this.Cliste.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 33.33332F));
|
||||||
|
this.Cliste.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 33.33334F));
|
||||||
|
this.Cliste.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 33.33334F));
|
||||||
|
this.Cliste.Controls.Add(this.Lsyllable, 2, 0);
|
||||||
|
this.Cliste.Controls.Add(this.Lconsonant, 1, 0);
|
||||||
|
this.Cliste.Controls.Add(this.Lvowel, 0, 0);
|
||||||
|
this.Cliste.Controls.Add(this.TBsyllables, 2, 1);
|
||||||
|
this.Cliste.Controls.Add(this.TBvowels, 0, 1);
|
||||||
|
this.Cliste.Controls.Add(this.TBconsonants, 1, 1);
|
||||||
|
this.Cliste.Location = new System.Drawing.Point(12, 40);
|
||||||
|
this.Cliste.Name = "Cliste";
|
||||||
|
this.Cliste.RowCount = 2;
|
||||||
|
this.Cliste.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 20F));
|
||||||
|
this.Cliste.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
|
||||||
|
this.Cliste.Size = new System.Drawing.Size(376, 228);
|
||||||
|
this.Cliste.TabIndex = 2;
|
||||||
|
//
|
||||||
|
// Lsyllable
|
||||||
|
//
|
||||||
|
this.Lsyllable.AutoSize = true;
|
||||||
|
this.Lsyllable.Dock = System.Windows.Forms.DockStyle.Left;
|
||||||
|
this.Lsyllable.Location = new System.Drawing.Point(253, 0);
|
||||||
|
this.Lsyllable.Name = "Lsyllable";
|
||||||
|
this.Lsyllable.Size = new System.Drawing.Size(43, 20);
|
||||||
|
this.Lsyllable.TabIndex = 2;
|
||||||
|
this.Lsyllable.Text = "Syllabe";
|
||||||
|
this.Lsyllable.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
||||||
|
//
|
||||||
|
// Lconsonant
|
||||||
|
//
|
||||||
|
this.Lconsonant.AutoSize = true;
|
||||||
|
this.Lconsonant.Dock = System.Windows.Forms.DockStyle.Left;
|
||||||
|
this.Lconsonant.Location = new System.Drawing.Point(128, 0);
|
||||||
|
this.Lconsonant.Name = "Lconsonant";
|
||||||
|
this.Lconsonant.Size = new System.Drawing.Size(60, 20);
|
||||||
|
this.Lconsonant.TabIndex = 1;
|
||||||
|
this.Lconsonant.Text = "Consonne";
|
||||||
|
this.Lconsonant.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
||||||
|
//
|
||||||
|
// Lvowel
|
||||||
|
//
|
||||||
|
this.Lvowel.AutoSize = true;
|
||||||
|
this.Lvowel.Dock = System.Windows.Forms.DockStyle.Left;
|
||||||
|
this.Lvowel.Location = new System.Drawing.Point(3, 0);
|
||||||
|
this.Lvowel.Name = "Lvowel";
|
||||||
|
this.Lvowel.Size = new System.Drawing.Size(43, 20);
|
||||||
|
this.Lvowel.TabIndex = 0;
|
||||||
|
this.Lvowel.Text = "Voyelle";
|
||||||
|
this.Lvowel.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
||||||
|
//
|
||||||
|
// DDbeginSyllables
|
||||||
|
//
|
||||||
|
this.DDbeginSyllables.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)
|
||||||
|
| System.Windows.Forms.AnchorStyles.Right)));
|
||||||
|
this.DDbeginSyllables.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||||
|
this.DDbeginSyllables.Enabled = false;
|
||||||
|
this.DDbeginSyllables.FormattingEnabled = true;
|
||||||
|
this.DDbeginSyllables.Items.AddRange(new object[] {
|
||||||
|
"Ne pas adapter",
|
||||||
|
"Choisir automatiquement",
|
||||||
|
"Intercaller automatiquement"});
|
||||||
|
this.DDbeginSyllables.Location = new System.Drawing.Point(196, 277);
|
||||||
|
this.DDbeginSyllables.Name = "DDbeginSyllables";
|
||||||
|
this.DDbeginSyllables.Size = new System.Drawing.Size(166, 21);
|
||||||
|
this.DDbeginSyllables.TabIndex = 4;
|
||||||
|
this.DDbeginSyllables.KeyDown += new System.Windows.Forms.KeyEventHandler(this.SyllabaireForm_KeyDown);
|
||||||
|
//
|
||||||
|
// DDendSyllables
|
||||||
|
//
|
||||||
|
this.DDendSyllables.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)
|
||||||
|
| System.Windows.Forms.AnchorStyles.Right)));
|
||||||
|
this.DDendSyllables.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||||
|
this.DDendSyllables.Enabled = false;
|
||||||
|
this.DDendSyllables.FormattingEnabled = true;
|
||||||
|
this.DDendSyllables.Items.AddRange(new object[] {
|
||||||
|
"Ne pas adapter",
|
||||||
|
"Intercaler automatiquement"});
|
||||||
|
this.DDendSyllables.Location = new System.Drawing.Point(196, 304);
|
||||||
|
this.DDendSyllables.Name = "DDendSyllables";
|
||||||
|
this.DDendSyllables.Size = new System.Drawing.Size(166, 21);
|
||||||
|
this.DDendSyllables.TabIndex = 7;
|
||||||
|
this.DDendSyllables.KeyDown += new System.Windows.Forms.KeyEventHandler(this.SyllabaireForm_KeyDown);
|
||||||
|
//
|
||||||
|
// EPsyllabary
|
||||||
|
//
|
||||||
|
this.EPsyllabary.ContainerControl = this;
|
||||||
|
this.EPsyllabary.Icon = ((System.Drawing.Icon)(resources.GetObject("EPsyllabary.Icon")));
|
||||||
|
//
|
||||||
|
// BCancel
|
||||||
|
//
|
||||||
|
this.BCancel.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
|
||||||
|
this.BCancel.DialogResult = System.Windows.Forms.DialogResult.Cancel;
|
||||||
|
this.BCancel.Image = global::WordGen.Properties.Resources.Close_16xLG;
|
||||||
|
this.BCancel.Location = new System.Drawing.Point(313, 341);
|
||||||
|
this.BCancel.Name = "BCancel";
|
||||||
|
this.BCancel.Size = new System.Drawing.Size(75, 23);
|
||||||
|
this.BCancel.TabIndex = 10;
|
||||||
|
this.BCancel.Text = "&Annuler";
|
||||||
|
this.BCancel.TextImageRelation = System.Windows.Forms.TextImageRelation.ImageBeforeText;
|
||||||
|
this.BCancel.UseVisualStyleBackColor = true;
|
||||||
|
this.BCancel.Click += new System.EventHandler(this.BCancel_Click);
|
||||||
|
this.BCancel.KeyDown += new System.Windows.Forms.KeyEventHandler(this.SyllabaireForm_KeyDown);
|
||||||
|
//
|
||||||
|
// BOk
|
||||||
|
//
|
||||||
|
this.BOk.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
|
||||||
|
this.BOk.Image = global::WordGen.Properties.Resources.StatusAnnotations_Complete_and_ok_16xLG;
|
||||||
|
this.BOk.Location = new System.Drawing.Point(232, 341);
|
||||||
|
this.BOk.Name = "BOk";
|
||||||
|
this.BOk.Size = new System.Drawing.Size(75, 23);
|
||||||
|
this.BOk.TabIndex = 9;
|
||||||
|
this.BOk.Text = "&OK";
|
||||||
|
this.BOk.TextImageRelation = System.Windows.Forms.TextImageRelation.ImageBeforeText;
|
||||||
|
this.BOk.UseVisualStyleBackColor = true;
|
||||||
|
this.BOk.Click += new System.EventHandler(this.BOk_Click);
|
||||||
|
this.BOk.KeyDown += new System.Windows.Forms.KeyEventHandler(this.SyllabaireForm_KeyDown);
|
||||||
|
//
|
||||||
|
// LbeginSyllable
|
||||||
|
//
|
||||||
|
this.LbeginSyllable.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
|
||||||
|
this.LbeginSyllable.AutoSize = true;
|
||||||
|
this.LbeginSyllable.Location = new System.Drawing.Point(12, 280);
|
||||||
|
this.LbeginSyllable.Name = "LbeginSyllable";
|
||||||
|
this.LbeginSyllable.Size = new System.Drawing.Size(97, 13);
|
||||||
|
this.LbeginSyllable.TabIndex = 3;
|
||||||
|
this.LbeginSyllable.Text = "Avant une syllabe";
|
||||||
|
//
|
||||||
|
// LendSyllable
|
||||||
|
//
|
||||||
|
this.LendSyllable.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
|
||||||
|
this.LendSyllable.AutoSize = true;
|
||||||
|
this.LendSyllable.Location = new System.Drawing.Point(12, 307);
|
||||||
|
this.LendSyllable.Name = "LendSyllable";
|
||||||
|
this.LendSyllable.Size = new System.Drawing.Size(97, 13);
|
||||||
|
this.LendSyllable.TabIndex = 6;
|
||||||
|
this.LendSyllable.Text = "Après une syllabe";
|
||||||
|
//
|
||||||
|
// TTsyllablesHelp
|
||||||
|
//
|
||||||
|
this.TTsyllablesHelp.AutomaticDelay = 0;
|
||||||
|
this.TTsyllablesHelp.AutoPopDelay = 50000;
|
||||||
|
this.TTsyllablesHelp.InitialDelay = 500;
|
||||||
|
this.TTsyllablesHelp.ReshowDelay = 100;
|
||||||
|
this.TTsyllablesHelp.ShowAlways = true;
|
||||||
|
this.TTsyllablesHelp.ToolTipIcon = System.Windows.Forms.ToolTipIcon.Info;
|
||||||
|
//
|
||||||
|
// LhelpBeginSyllable
|
||||||
|
//
|
||||||
|
this.LhelpBeginSyllable.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
|
||||||
|
this.LhelpBeginSyllable.Image = global::WordGen.Properties.Resources.StatusAnnotations_Help_and_inconclusive_16xLG_color;
|
||||||
|
this.LhelpBeginSyllable.Location = new System.Drawing.Point(368, 280);
|
||||||
|
this.LhelpBeginSyllable.Name = "LhelpBeginSyllable";
|
||||||
|
this.LhelpBeginSyllable.Size = new System.Drawing.Size(16, 16);
|
||||||
|
this.LhelpBeginSyllable.TabIndex = 5;
|
||||||
|
this.LhelpBeginSyllable.MouseHover += new System.EventHandler(this.LhelpBeginSyllable_MouseHover);
|
||||||
|
//
|
||||||
|
// LhelpEndSyllable
|
||||||
|
//
|
||||||
|
this.LhelpEndSyllable.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
|
||||||
|
this.LhelpEndSyllable.Image = global::WordGen.Properties.Resources.StatusAnnotations_Help_and_inconclusive_16xLG_color;
|
||||||
|
this.LhelpEndSyllable.Location = new System.Drawing.Point(368, 307);
|
||||||
|
this.LhelpEndSyllable.Name = "LhelpEndSyllable";
|
||||||
|
this.LhelpEndSyllable.Size = new System.Drawing.Size(16, 16);
|
||||||
|
this.LhelpEndSyllable.TabIndex = 8;
|
||||||
|
this.LhelpEndSyllable.MouseHover += new System.EventHandler(this.LhelpEndSyllable_MouseHover);
|
||||||
|
//
|
||||||
|
// SyllabaryForm
|
||||||
|
//
|
||||||
|
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||||
|
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||||
|
this.CancelButton = this.BCancel;
|
||||||
|
this.ClientSize = new System.Drawing.Size(400, 376);
|
||||||
|
this.Controls.Add(this.DDbeginSyllables);
|
||||||
|
this.Controls.Add(this.LbeginSyllable);
|
||||||
|
this.Controls.Add(this.LhelpBeginSyllable);
|
||||||
|
this.Controls.Add(this.DDendSyllables);
|
||||||
|
this.Controls.Add(this.LendSyllable);
|
||||||
|
this.Controls.Add(this.LhelpEndSyllable);
|
||||||
|
this.Controls.Add(this.BCancel);
|
||||||
|
this.Controls.Add(this.BOk);
|
||||||
|
this.Controls.Add(this.Cliste);
|
||||||
|
this.Controls.Add(this.TBsyllabaryName);
|
||||||
|
this.Controls.Add(this.LsyllabaryName);
|
||||||
|
this.Font = new System.Drawing.Font("Segoe UI", 8.25F);
|
||||||
|
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
|
||||||
|
this.MaximizeBox = false;
|
||||||
|
this.MinimizeBox = false;
|
||||||
|
this.MinimumSize = new System.Drawing.Size(400, 400);
|
||||||
|
this.Name = "SyllabaryForm";
|
||||||
|
this.ShowInTaskbar = false;
|
||||||
|
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
|
||||||
|
this.Text = "Syllabaire";
|
||||||
|
this.Load += new System.EventHandler(this.Syllabaire_Load);
|
||||||
|
this.KeyDown += new System.Windows.Forms.KeyEventHandler(this.SyllabaireForm_KeyDown);
|
||||||
|
this.Cliste.ResumeLayout(false);
|
||||||
|
this.Cliste.PerformLayout();
|
||||||
|
((System.ComponentModel.ISupportInitialize)(this.EPsyllabary)).EndInit();
|
||||||
|
this.ResumeLayout(false);
|
||||||
|
this.PerformLayout();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
private System.Windows.Forms.Label LsyllabaryName;
|
||||||
|
private System.Windows.Forms.TextBox TBsyllabaryName;
|
||||||
|
private System.Windows.Forms.TextBox TBconsonants;
|
||||||
|
private System.Windows.Forms.TextBox TBvowels;
|
||||||
|
private System.Windows.Forms.TextBox TBsyllables;
|
||||||
|
private System.Windows.Forms.TableLayoutPanel Cliste;
|
||||||
|
private System.Windows.Forms.Button BOk;
|
||||||
|
private System.Windows.Forms.Button BCancel;
|
||||||
|
private System.Windows.Forms.ComboBox DDbeginSyllables;
|
||||||
|
private System.Windows.Forms.ComboBox DDendSyllables;
|
||||||
|
private System.Windows.Forms.ErrorProvider EPsyllabary;
|
||||||
|
private System.Windows.Forms.ToolTip TTsyllablesHelp;
|
||||||
|
private System.Windows.Forms.Label Lsyllable;
|
||||||
|
private System.Windows.Forms.Label Lconsonant;
|
||||||
|
private System.Windows.Forms.Label Lvowel;
|
||||||
|
private System.Windows.Forms.Label LendSyllable;
|
||||||
|
private System.Windows.Forms.Label LbeginSyllable;
|
||||||
|
private System.Windows.Forms.Label LhelpBeginSyllable;
|
||||||
|
private System.Windows.Forms.Label LhelpEndSyllable;
|
||||||
|
|
||||||
|
public object getSyllabaire { get; internal set; }
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
149
WordGen/View/SyllabaryForm.cs
Normal file
@ -0,0 +1,149 @@
|
|||||||
|
using WordGen.Model;
|
||||||
|
using WordGen.View.LocalizationString;
|
||||||
|
using System;
|
||||||
|
using System.Text;
|
||||||
|
using System.Windows.Forms;
|
||||||
|
|
||||||
|
|
||||||
|
namespace WordGen.View {
|
||||||
|
public partial class SyllabaryForm : Form {
|
||||||
|
|
||||||
|
private Syllabary _mysillab;
|
||||||
|
|
||||||
|
public Syllabary MySyllabaire {
|
||||||
|
get { return _mysillab; }
|
||||||
|
}
|
||||||
|
|
||||||
|
// Default constructor (New)
|
||||||
|
public SyllabaryForm() {
|
||||||
|
InitializeComponent();
|
||||||
|
_mysillab = new Syllabary();
|
||||||
|
DDbeginSyllables.SelectedIndex = 0;
|
||||||
|
DDendSyllables.SelectedIndex = 0;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
// Constructor with Syllabary to load (Edit)
|
||||||
|
public SyllabaryForm(Syllabary thisSyllabary) {
|
||||||
|
InitializeComponent();
|
||||||
|
_mysillab = thisSyllabary;
|
||||||
|
TBsyllabaryName.Text = thisSyllabary.title;
|
||||||
|
StringBuilder composer = new StringBuilder();
|
||||||
|
|
||||||
|
foreach (var aCons in thisSyllabary.consonants) {
|
||||||
|
composer.AppendLine(aCons);
|
||||||
|
}
|
||||||
|
TBconsonants.Text = composer.ToString();
|
||||||
|
|
||||||
|
composer.Clear();
|
||||||
|
foreach (var aVow in thisSyllabary.vowels) {
|
||||||
|
composer.AppendLine(aVow);
|
||||||
|
}
|
||||||
|
TBvowels.Text = composer.ToString();
|
||||||
|
|
||||||
|
composer.Clear();
|
||||||
|
foreach (var aSyl in thisSyllabary.syllables) {
|
||||||
|
composer.AppendLine(aSyl);
|
||||||
|
}
|
||||||
|
TBsyllables.Text = composer.ToString();
|
||||||
|
|
||||||
|
DDbeginSyllables.SelectedIndex = (int)_mysillab.beforeSyllable;
|
||||||
|
DDendSyllables.SelectedIndex = (int)_mysillab.afterSyllable;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
private void Syllabaire_Load(object sender, EventArgs e) {
|
||||||
|
TTsyllablesHelp.SetToolTip(LhelpBeginSyllable, Messages.SyllabaireForm_HelpBeginSyllable);
|
||||||
|
TTsyllablesHelp.SetToolTip(LhelpEndSyllable, Messages.SyllabaireForm_HelpEndSyllable);
|
||||||
|
}
|
||||||
|
|
||||||
|
private bool form_validation() {
|
||||||
|
bool everythingOK = true;
|
||||||
|
if (String.IsNullOrEmpty(TBsyllabaryName.Text.Trim())) {
|
||||||
|
everythingOK = false;
|
||||||
|
EPsyllabary.SetError(TBsyllabaryName, Messages.SyllabaireForm_ErrorNoName);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (String.IsNullOrEmpty(TBconsonants.Text.Trim()) && String.IsNullOrEmpty(TBvowels.Text.Trim()) && String.IsNullOrEmpty(TBsyllables.Text.Trim())) {
|
||||||
|
everythingOK = false;
|
||||||
|
EPsyllabary.SetError(Lsyllable, Messages.SyllabaireForm_ErrorNoUseElements);
|
||||||
|
}
|
||||||
|
|
||||||
|
string[] slipschars = { "\r\n" };
|
||||||
|
|
||||||
|
if (everythingOK) {
|
||||||
|
_mysillab.title = TBsyllabaryName.Text;
|
||||||
|
_mysillab.consonants.Clear();
|
||||||
|
_mysillab.vowels.Clear();
|
||||||
|
_mysillab.syllables.Clear();
|
||||||
|
_mysillab.consonants.AddRange(TBconsonants.Text.Split(slipschars, StringSplitOptions.RemoveEmptyEntries));
|
||||||
|
_mysillab.syllables.AddRange(TBsyllables.Text.Split(slipschars, StringSplitOptions.RemoveEmptyEntries));
|
||||||
|
_mysillab.vowels.AddRange(TBvowels.Text.Split(slipschars, StringSplitOptions.RemoveEmptyEntries));
|
||||||
|
switch (DDbeginSyllables.SelectedIndex) {
|
||||||
|
case 1:
|
||||||
|
_mysillab.beforeSyllable = BeforeSyllable.AutoSelect;
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
_mysillab.beforeSyllable = BeforeSyllable.AutoInsert;
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
_mysillab.beforeSyllable = BeforeSyllable.AsIs;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
switch (DDendSyllables.SelectedIndex) {
|
||||||
|
case 1:
|
||||||
|
_mysillab.afterSyllable = AfterSyllable.AutoInsert;
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
_mysillab.afterSyllable = AfterSyllable.AsIs;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return everythingOK;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void BOk_Click(object sender, EventArgs e) {
|
||||||
|
if (form_validation()) {
|
||||||
|
this.DialogResult = DialogResult.OK;
|
||||||
|
this.Close();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void TBsyllabaryName_TextChanged(object sender, EventArgs e) {
|
||||||
|
EPsyllabary.SetError(TBsyllabaryName, String.Empty);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void BCancel_Click(object sender, EventArgs e) {
|
||||||
|
this.DialogResult = DialogResult.Cancel;
|
||||||
|
this.Close();
|
||||||
|
this.Dispose();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void SyllabaireForm_KeyDown(object sender, System.Windows.Forms.KeyEventArgs e) {
|
||||||
|
if (e.Modifiers == Keys.Alt && e.KeyCode == Keys.Enter) {
|
||||||
|
e.Handled = true;
|
||||||
|
e.SuppressKeyPress = true;
|
||||||
|
if (form_validation()) {
|
||||||
|
this.DialogResult = DialogResult.OK;
|
||||||
|
this.Close();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
private void TBsyllables_TextChanged(object sender, EventArgs e) {
|
||||||
|
var useSyllables = !String.IsNullOrEmpty(TBsyllables.Text.Trim());
|
||||||
|
DDendSyllables.Enabled = useSyllables;
|
||||||
|
DDbeginSyllables.Enabled = useSyllables;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void LhelpBeginSyllable_MouseHover(object sender, EventArgs e) {
|
||||||
|
TTsyllablesHelp.ToolTipTitle = Messages.SyllabaireForm_HelpBeginSyllableTitle;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void LhelpEndSyllable_MouseHover(object sender, EventArgs e) {
|
||||||
|
TTsyllablesHelp.ToolTipTitle = Messages.SyllabaireForm_HelpEndSyllableTitle;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
175
WordGen/View/SyllabaryForm.resx
Normal file
@ -0,0 +1,175 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<root>
|
||||||
|
<!--
|
||||||
|
Microsoft ResX Schema
|
||||||
|
|
||||||
|
Version 2.0
|
||||||
|
|
||||||
|
The primary goals of this format is to allow a simple XML format
|
||||||
|
that is mostly human readable. The generation and parsing of the
|
||||||
|
various data types are done through the TypeConverter classes
|
||||||
|
associated with the data types.
|
||||||
|
|
||||||
|
Example:
|
||||||
|
|
||||||
|
... ado.net/XML headers & schema ...
|
||||||
|
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||||
|
<resheader name="version">2.0</resheader>
|
||||||
|
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||||
|
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||||
|
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||||
|
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||||
|
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||||
|
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||||
|
</data>
|
||||||
|
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||||
|
<comment>This is a comment</comment>
|
||||||
|
</data>
|
||||||
|
|
||||||
|
There are any number of "resheader" rows that contain simple
|
||||||
|
name/value pairs.
|
||||||
|
|
||||||
|
Each data row contains a name, and value. The row also contains a
|
||||||
|
type or mimetype. Type corresponds to a .NET class that support
|
||||||
|
text/value conversion through the TypeConverter architecture.
|
||||||
|
Classes that don't support this are serialized and stored with the
|
||||||
|
mimetype set.
|
||||||
|
|
||||||
|
The mimetype is used for serialized objects, and tells the
|
||||||
|
ResXResourceReader how to depersist the object. This is currently not
|
||||||
|
extensible. For a given mimetype the value must be set accordingly:
|
||||||
|
|
||||||
|
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||||
|
that the ResXResourceWriter will generate, however the reader can
|
||||||
|
read any of the formats listed below.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.binary.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.soap.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||||
|
value : The object must be serialized into a byte array
|
||||||
|
: using a System.ComponentModel.TypeConverter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
-->
|
||||||
|
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||||
|
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||||
|
<xsd:element name="root" msdata:IsDataSet="true">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:choice maxOccurs="unbounded">
|
||||||
|
<xsd:element name="metadata">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="assembly">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:attribute name="alias" type="xsd:string" />
|
||||||
|
<xsd:attribute name="name" type="xsd:string" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="data">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="resheader">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:choice>
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:schema>
|
||||||
|
<resheader name="resmimetype">
|
||||||
|
<value>text/microsoft-resx</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="version">
|
||||||
|
<value>2.0</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="reader">
|
||||||
|
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="writer">
|
||||||
|
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
<metadata name="EPsyllabary.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||||
|
<value>17, 17</value>
|
||||||
|
</metadata>
|
||||||
|
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||||
|
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>
|
||||||
|
AAABAAEAEBAAAAAAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAQAQAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAD///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af///wH///8B////Af//
|
||||||
|
/wH///8B////Afb29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b2
|
||||||
|
9v/29vb/////Af///wH29vb/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
|
||||||
|
Qv9CQkL/9vb2/////wH///8B9vb2//b29v9CQkL/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv
|
||||||
|
8P/x7/D/QkJC//b29v////8B////Afb29v9CQkL/QkJC//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv
|
||||||
|
8P/x7/D/8e/w/0JCQv/29vb/////Af///wH29vb/9vb2/0JCQv/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv
|
||||||
|
8P/x7/D/8e/w//Hv8P9CQkL/9vb2/////wH///8B9vb2/0JCQv9CQkL/8e/w//Hv8P/x7/D/8e/w//Hv
|
||||||
|
8P/x7/D/8e/w//Hv8P/x7/D/QkJC//b29v////8B////Afb29v/29vb/QkJC//Hv8P/x7/D/8e/w//Hv
|
||||||
|
8P/x7/D/8e/w//Hv8P/x7/D/8e/w/0JCQv/29vb/////Af///wH29vb/QkJC/0JCQv/x7/D/8e/w//Hv
|
||||||
|
8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P9CQkL/9vb2/////wH///8B9vb2//b29v9CQkL/8e/w//Hv
|
||||||
|
8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/QkJC//b29v////8B////Afb29v9CQkL/QkJC//Hv
|
||||||
|
8P/x7/D/QkJC/0JCQv9CQkL/QkJC/0JCQv/x7/D/8e/w/0JCQv/29vb/////Af///wH29vb/9vb2/0JC
|
||||||
|
Qv/x7/D/8e/w/0JCQv9CQkL/QkJC/0JCQv9CQkL/8e/w//Hv8P9CQkL/9vb2/////wH///8B9vb2/0JC
|
||||||
|
Qv9CQkL/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/QkJC//b29v////8B////Afb2
|
||||||
|
9v/29vb/QkJC//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w//Hv8P/x7/D/8e/w/0JCQv/29vb/////Af//
|
||||||
|
/wH29vb/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/9vb2////
|
||||||
|
/wH///8B9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b2
|
||||||
|
9v////8BAAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA
|
||||||
|
//8AAP//AAD//w==
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
|
<data name="EPsyllabary.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>
|
||||||
|
AAABAAEAEBAAAAAAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAQAQAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAD///8B9vb2n/b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b29v/29vb/9vb2//b2
|
||||||
|
9p////8B9vb2n7Ozs/9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
|
||||||
|
Qv+zs7P/9vb2n/b29t9ZWVn/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
|
||||||
|
Qv9CQkL/WVlZ//b29t/29vZhs7Oz/0JCQv9CQkL/QkJC/0JCQv9CQkL/8e/w//Hv8P9CQkL/QkJC/0JC
|
||||||
|
Qv9CQkL/QkJC/7Ozs//29vZh////Afb29t9ZWVn/QkJC/0JCQv9CQkL/QkJC//Hv8P/x7/D/QkJC/0JC
|
||||||
|
Qv9CQkL/QkJC/1lZWf/29vbf////Af///wH29vZhs7Oz/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JC
|
||||||
|
Qv9CQkL/QkJC/0JCQv+zs7P/9vb2Yf///wH///8B////Afb29t9ZWVn/QkJC/0JCQv9CQkL/8e/w//Hv
|
||||||
|
8P9CQkL/QkJC/0JCQv9ZWVn/9vb23////wH///8B////Af///wH29vZhs7Oz/0JCQv9CQkL/QkJC//Hv
|
||||||
|
8P/x7/D/QkJC/0JCQv9CQkL/s7Oz//b29mH///8B////Af///wH///8B////Afb29t9ZWVn/QkJC/0JC
|
||||||
|
Qv/x7/D/8e/w/0JCQv9CQkL/WVlZ//b29t////8B////Af///wH///8B////Af///wH29vZhs7Oz/0JC
|
||||||
|
Qv9CQkL/8e/w//Hv8P9CQkL/QkJC/7Ozs//29vZh////Af///wH///8B////Af///wH///8B////Afb2
|
||||||
|
9t9ZWVn/QkJC//Hv8P/x7/D/QkJC/1lZWf/29vbf////Af///wH///8B////Af///wH///8B////Af//
|
||||||
|
/wH29vZhs7Oz/0JCQv9CQkL/QkJC/0JCQv+zs7P/9vb2Yf///wH///8B////Af///wH///8B////Af//
|
||||||
|
/wH///8B////Afb29t9ZWVn/QkJC/0JCQv9ZWVn/9vb23////wH///8B////Af///wH///8B////Af//
|
||||||
|
/wH///8B////Af///wH29vZhs7Oz/0JCQv9CQkL/s7Oz//b29mH///8B////Af///wH///8B////Af//
|
||||||
|
/wH///8B////Af///wH///8B////Afb29t9ZWVn/WVlZ//b29t////8B////Af///wH///8B////Af//
|
||||||
|
/wH///8B////Af///wH///8B////Af///wH29vZh9vb2//b29v/29vZh////Af///wH///8B////Af//
|
||||||
|
/wH///8BAAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA
|
||||||
|
//8AAP//AAD//w==
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
|
<metadata name="TTsyllablesHelp.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||||
|
<value>129, 17</value>
|
||||||
|
</metadata>
|
||||||
|
</root>
|
314
WordGen/WordGen.csproj
Normal file
@ -0,0 +1,314 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
||||||
|
<PropertyGroup>
|
||||||
|
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||||
|
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||||
|
<ProjectGuid>{C3EAC4E8-793D-4E5C-A76E-2A8A8BB72562}</ProjectGuid>
|
||||||
|
<OutputType>WinExe</OutputType>
|
||||||
|
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||||
|
<RootNamespace>WordGen</RootNamespace>
|
||||||
|
<AssemblyName>WordGen</AssemblyName>
|
||||||
|
<TargetFrameworkVersion>v4.5.2</TargetFrameworkVersion>
|
||||||
|
<FileAlignment>512</FileAlignment>
|
||||||
|
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
|
||||||
|
<SccProjectName>SAK</SccProjectName>
|
||||||
|
<SccLocalPath>SAK</SccLocalPath>
|
||||||
|
<SccAuxPath>SAK</SccAuxPath>
|
||||||
|
<SccProvider>SAK</SccProvider>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||||
|
<PlatformTarget>AnyCPU</PlatformTarget>
|
||||||
|
<DebugSymbols>true</DebugSymbols>
|
||||||
|
<DebugType>full</DebugType>
|
||||||
|
<Optimize>false</Optimize>
|
||||||
|
<OutputPath>bin\Debug\</OutputPath>
|
||||||
|
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
||||||
|
<ErrorReport>prompt</ErrorReport>
|
||||||
|
<WarningLevel>4</WarningLevel>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||||
|
<PlatformTarget>AnyCPU</PlatformTarget>
|
||||||
|
<DebugType>pdbonly</DebugType>
|
||||||
|
<Optimize>true</Optimize>
|
||||||
|
<OutputPath>bin\Release\</OutputPath>
|
||||||
|
<DefineConstants>TRACE</DefineConstants>
|
||||||
|
<ErrorReport>prompt</ErrorReport>
|
||||||
|
<WarningLevel>4</WarningLevel>
|
||||||
|
</PropertyGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<Reference Include="System" />
|
||||||
|
<Reference Include="System.Core" />
|
||||||
|
<Reference Include="System.Xml.Linq" />
|
||||||
|
<Reference Include="System.Data.DataSetExtensions" />
|
||||||
|
<Reference Include="Microsoft.CSharp" />
|
||||||
|
<Reference Include="System.Data" />
|
||||||
|
<Reference Include="System.Deployment" />
|
||||||
|
<Reference Include="System.Drawing" />
|
||||||
|
<Reference Include="System.Net.Http" />
|
||||||
|
<Reference Include="System.Windows.Forms" />
|
||||||
|
<Reference Include="System.Xml" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<Compile Include="Model\Exceptions\EmptySyllableListException.cs" />
|
||||||
|
<Compile Include="Model\Exceptions\EmptyVowelListException.cs" />
|
||||||
|
<Compile Include="Model\Exceptions\EmptyConsonnantListException.cs" />
|
||||||
|
<Compile Include="Model\Exceptions\GeneratorException.cs" />
|
||||||
|
<Compile Include="Model\Exceptions\NoBeforeSyllableMatchException.cs" />
|
||||||
|
<Compile Include="Model\GeneratorSettings.cs" />
|
||||||
|
<Compile Include="Model\SyllabaryWrapper.cs" />
|
||||||
|
<Compile Include="Model\Enumerations\AfterSyllable.cs" />
|
||||||
|
<Compile Include="Model\Enumerations\BeforeSyllable.cs" />
|
||||||
|
<Compile Include="Model\Generator.cs" />
|
||||||
|
<Compile Include="Controler\Persistance\FileManager.cs" />
|
||||||
|
<Compile Include="Controler\Persistance\SyllabaryIoManager.cs" />
|
||||||
|
<Compile Include="Model\Syllabary.cs" />
|
||||||
|
<Compile Include="Controler\Program.cs" />
|
||||||
|
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||||
|
<Compile Include="Controler\Settings.cs" />
|
||||||
|
<Compile Include="View\LocalizationString\Messages1.Designer.cs">
|
||||||
|
<AutoGen>True</AutoGen>
|
||||||
|
<DesignTime>True</DesignTime>
|
||||||
|
<DependentUpon>Messages.resx</DependentUpon>
|
||||||
|
</Compile>
|
||||||
|
<Compile Include="View\MainForm.cs">
|
||||||
|
<SubType>Form</SubType>
|
||||||
|
</Compile>
|
||||||
|
<Compile Include="View\MainForm.designer.cs">
|
||||||
|
<DependentUpon>MainForm.cs</DependentUpon>
|
||||||
|
</Compile>
|
||||||
|
<Compile Include="View\ManageSyllabaryForm.cs">
|
||||||
|
<SubType>Form</SubType>
|
||||||
|
</Compile>
|
||||||
|
<Compile Include="View\ManageSyllabaryForm.Designer.cs">
|
||||||
|
<DependentUpon>ManageSyllabaryForm.cs</DependentUpon>
|
||||||
|
</Compile>
|
||||||
|
<Compile Include="View\ResultForm.cs">
|
||||||
|
<SubType>Form</SubType>
|
||||||
|
</Compile>
|
||||||
|
<Compile Include="View\ResultForm.Designer.cs">
|
||||||
|
<DependentUpon>ResultForm.cs</DependentUpon>
|
||||||
|
</Compile>
|
||||||
|
<Compile Include="View\SyllabaryForm.cs">
|
||||||
|
<SubType>Form</SubType>
|
||||||
|
</Compile>
|
||||||
|
<Compile Include="View\SyllabaryForm.Designer.cs">
|
||||||
|
<DependentUpon>SyllabaryForm.cs</DependentUpon>
|
||||||
|
</Compile>
|
||||||
|
<EmbeddedResource Include="Properties\Resources.resx">
|
||||||
|
<Generator>ResXFileCodeGenerator</Generator>
|
||||||
|
<LastGenOutput>Resources.Designer.cs</LastGenOutput>
|
||||||
|
<SubType>Designer</SubType>
|
||||||
|
</EmbeddedResource>
|
||||||
|
<Compile Include="Properties\Resources.Designer.cs">
|
||||||
|
<AutoGen>True</AutoGen>
|
||||||
|
<DependentUpon>Resources.resx</DependentUpon>
|
||||||
|
<DesignTime>True</DesignTime>
|
||||||
|
</Compile>
|
||||||
|
<EmbeddedResource Include="View\LocalizationString\Messages.en.resx" />
|
||||||
|
<EmbeddedResource Include="View\LocalizationString\Messages.resx">
|
||||||
|
<Generator>PublicResXFileCodeGenerator</Generator>
|
||||||
|
<LastGenOutput>Messages1.Designer.cs</LastGenOutput>
|
||||||
|
<SubType>Designer</SubType>
|
||||||
|
</EmbeddedResource>
|
||||||
|
<EmbeddedResource Include="View\MainForm.resx">
|
||||||
|
<DependentUpon>MainForm.cs</DependentUpon>
|
||||||
|
</EmbeddedResource>
|
||||||
|
<EmbeddedResource Include="View\ManageSyllabaryForm.resx">
|
||||||
|
<DependentUpon>ManageSyllabaryForm.cs</DependentUpon>
|
||||||
|
</EmbeddedResource>
|
||||||
|
<EmbeddedResource Include="View\ResultForm.resx">
|
||||||
|
<DependentUpon>ResultForm.cs</DependentUpon>
|
||||||
|
</EmbeddedResource>
|
||||||
|
<EmbeddedResource Include="View\SyllabaryForm.resx">
|
||||||
|
<DependentUpon>SyllabaryForm.cs</DependentUpon>
|
||||||
|
</EmbeddedResource>
|
||||||
|
<None Include="Model\ClassDiagram.cd" />
|
||||||
|
<None Include="Properties\DataSources\WordGen.Model.Syllabary.datasource" />
|
||||||
|
<None Include="Properties\Settings.settings">
|
||||||
|
<Generator>PublicSettingsSingleFileGenerator</Generator>
|
||||||
|
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
|
||||||
|
</None>
|
||||||
|
<Compile Include="Properties\Settings.Designer.cs">
|
||||||
|
<AutoGen>True</AutoGen>
|
||||||
|
<DependentUpon>Settings.settings</DependentUpon>
|
||||||
|
<DesignTimeSharedInput>True</DesignTimeSharedInput>
|
||||||
|
</Compile>
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="App.config" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Resources\gear_16xLG.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Resources\action_Cancel_16xLG.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Resources\arrow_run_16xLG.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Resources\Close_16xLG.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Resources\Close_6519.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Resources\CloseResults_8579.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Resources\Copy_6524.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Resources\Cut_6523.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Resources\EditTitleString_357.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Resources\Folder%28special-open%29_5844_16x.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Resources\folder_Open_16xLG.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Resources\NewBuildDefinition_8952.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Resources\NewFile_6276.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Resources\Open_6529.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Resources\Paste_6520.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Resources\RefactoringLog_12810.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Resources\Remove_16xLG.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Resources\Running_16xLG.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Resources\save_16xLG.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Resources\Saveall_6518.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Resources\StatusAnnotations_Complete_and_ok_16xLG.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Resources\StatusAnnotations_Complete_and_ok_16xLG_color.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Resources\StatusAnnotations_Help_and_inconclusive_16xLG_color.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Resources\StatusAnnotations_Warning_16xLG.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Resources\StatusAnnotations_Warning_16xLG_color.ico" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Resources\StatusAnnotations_Warning_16xLG_color.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Resources\action_add_16xLG.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Resources\ASCube_32xLG.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Resources\ASCube_16xLG.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Resources\PencilAngled_16xLG_color.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Resources\Textfile_818_32x.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Resources\Textfile_818_16x.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Resources\lock_16xLG.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Resources\Views_7953.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Resources\WindowsForm_817_16x.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Resources\Strings_7959_16x.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Resources\Strings_7959_32x.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Resources\StatusAnnotations_Alert_32xMD.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Resources\StatusAnnotations_Alert_32xMD_color.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Resources\StatusAnnotations_Alert_16xMD_color.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Resources\StatusAnnotations_Alert_16xMD.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Resources\BrokenlinktoFile_431_32x.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Resources\BrokenlinktoFile_431_16x.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Resources\Views_Content_16.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Resources\Views_Detail_16.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Resources\Views_list_16.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Resources\StatusAnnotations_Information_16xMD.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Resources\unlock_16xLG.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Resources\Views_Content_16.ico" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Resources\ASCube_16xLG.ico" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Resources\Textfile_818_16x.ico" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Resources\RefactoringLog_12810.ico" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Resources\StatusAnnotations_Warning_16xLG.ico" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Resources\Textfile_818_32x.ico" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Resources\ASCube_32xLG.ico" />
|
||||||
|
</ItemGroup>
|
||||||
|
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||||
|
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||||
|
Other similar extension points exist, see Microsoft.Common.targets.
|
||||||
|
<Target Name="BeforeBuild">
|
||||||
|
</Target>
|
||||||
|
<Target Name="AfterBuild">
|
||||||
|
</Target>
|
||||||
|
-->
|
||||||
|
</Project>
|