Mercurial > repos > snowblizz-super-API-ideas
changeset 18:3c228f093a71
Re #16 - Complete Rollcall file loading
* Add default implementation to "do create" method in non-native factory
Also commit csproj changes and removal of old mdp file
author | IBBoard <dev@ibboard.co.uk> |
---|---|
date | Sat, 21 Feb 2009 14:23:53 +0000 |
parents | a99d3b8466ba |
children | 57451981545c |
files | IBBoard.WarFoundry.API.csproj IBBoard.WarFoundry.API.csproj.user IBBoard.WarFoundry.API.mdp api/Factories/AbstractNonNativeFileExtensionWarFoundryFactory.cs |
diffstat | 4 files changed, 99 insertions(+), 274 deletions(-) [+] |
line wrap: on
line diff
--- a/IBBoard.WarFoundry.API.csproj Mon Jan 26 20:29:37 2009 +0000 +++ b/IBBoard.WarFoundry.API.csproj Sat Feb 21 14:23:53 2009 +0000 @@ -1,93 +1,49 @@ <?xml version="1.0" encoding="utf-8"?> <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <PropertyGroup> - <ProjectType>Local</ProjectType> - <ProductVersion>8.0.50727</ProductVersion> - <SchemaVersion>2.0</SchemaVersion> - <ProjectGuid>{59EC117B-F955-44D5-8461-8F44F3A7481A}</ProjectGuid> <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform> - <ApplicationIcon> - </ApplicationIcon> - <AssemblyKeyContainerName> - </AssemblyKeyContainerName> + <ProductVersion>8.0.50727</ProductVersion> + <SchemaVersion>2.0</SchemaVersion> + <ProjectGuid>{951E6C7A-7FBA-4F68-9D9E-F48618BB9626}</ProjectGuid> + <OutputType>Library</OutputType> + <AppDesignerFolder>Properties</AppDesignerFolder> + <RootNamespace>IBBoard.WarFoundry.API</RootNamespace> <AssemblyName>IBBoard.WarFoundry.API</AssemblyName> - <AssemblyOriginatorKeyFile> - </AssemblyOriginatorKeyFile> - <DefaultClientScript>JScript</DefaultClientScript> - <DefaultHTMLPageLayout>Grid</DefaultHTMLPageLayout> - <DefaultTargetSchema>IE50</DefaultTargetSchema> - <DelaySign>false</DelaySign> - <OutputType>Library</OutputType> - <RootNamespace>IBBoard.WarFoundry</RootNamespace> - <RunPostBuildEvent>OnBuildSuccess</RunPostBuildEvent> <StartupObject> </StartupObject> - <FileUpgradeFlags> - </FileUpgradeFlags> - <UpgradeBackupLocation> - </UpgradeBackupLocation> </PropertyGroup> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> + <DebugSymbols>true</DebugSymbols> + <DebugType>full</DebugType> + <Optimize>false</Optimize> <OutputPath>bin\Debug\</OutputPath> - <AllowUnsafeBlocks>false</AllowUnsafeBlocks> - <BaseAddress>285212672</BaseAddress> - <CheckForOverflowUnderflow>false</CheckForOverflowUnderflow> - <ConfigurationOverrideFile> - </ConfigurationOverrideFile> <DefineConstants>DEBUG;TRACE</DefineConstants> - <DocumentationFile> - </DocumentationFile> - <DebugSymbols>true</DebugSymbols> - <FileAlignment>4096</FileAlignment> - <NoStdLib>false</NoStdLib> - <NoWarn> - </NoWarn> - <Optimize>false</Optimize> - <RegisterForComInterop>false</RegisterForComInterop> - <RemoveIntegerChecks>false</RemoveIntegerChecks> - <TreatWarningsAsErrors>false</TreatWarningsAsErrors> + <ErrorReport>prompt</ErrorReport> <WarningLevel>4</WarningLevel> - <DebugType>full</DebugType> - <ErrorReport>prompt</ErrorReport> </PropertyGroup> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> - <OutputPath>bin\Release\</OutputPath> - <AllowUnsafeBlocks>false</AllowUnsafeBlocks> - <BaseAddress>285212672</BaseAddress> - <CheckForOverflowUnderflow>false</CheckForOverflowUnderflow> - <ConfigurationOverrideFile> - </ConfigurationOverrideFile> - <DefineConstants>TRACE</DefineConstants> - <DocumentationFile> - </DocumentationFile> - <DebugSymbols>false</DebugSymbols> - <FileAlignment>4096</FileAlignment> - <NoStdLib>false</NoStdLib> - <NoWarn> - </NoWarn> + <DebugType>pdbonly</DebugType> <Optimize>true</Optimize> - <RegisterForComInterop>false</RegisterForComInterop> - <RemoveIntegerChecks>false</RemoveIntegerChecks> - <TreatWarningsAsErrors>false</TreatWarningsAsErrors> + <OutputPath>bin\Release\</OutputPath> + <DefineConstants>TRACE</DefineConstants> + <ErrorReport>prompt</ErrorReport> <WarningLevel>4</WarningLevel> - <DebugType>none</DebugType> - <ErrorReport>prompt</ErrorReport> </PropertyGroup> + <Import Project="$(MSBuildBinPath)\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> + --> <ItemGroup> - <Reference Include="log4net, Version=1.2.10.0, Culture=neutral, PublicKeyToken=1b44e1d426115821" /> - <Reference Include="nunit.framework, Version=2.4.3.0, Culture=neutral, PublicKeyToken=96d09a1eb7f44a77" /> - <Reference Include="System" /> - <Reference Include="System.Data" /> - <Reference Include="System.Windows.Forms" /> - <Reference Include="System.Xml" /> - <ProjectReference Include="..\IBBoard\IBBoard.mdp"> - <Name>IBBoard</Name> - </ProjectReference> - <Reference Include="ICSharpCode.SharpZipLib, Version=0.85.4.369, Culture=neutral, PublicKeyToken=1b03e6acf1164f73"> - <SpecificVersion>False</SpecificVersion> - <HintPath>libs\ICSharpCode.SharpZipLib.dll</HintPath> - </Reference> + <None Include="COPYING.GPL" /> + <None Include="COPYING.LGPL" /> + <None Include="dtds\army.dtd" /> + <None Include="dtds\race.dtd" /> + <None Include="dtds\system.dtd" /> </ItemGroup> <ItemGroup> <Compile Include="api\Commands\CreateAndAddUnitCommand.cs" /> @@ -97,6 +53,40 @@ <Compile Include="api\Commands\SetUnitEquipmentAmountCommand.cs" /> <Compile Include="api\Commands\SetUnitSizeCommand.cs" /> <Compile Include="api\Delegates.cs" /> + <Compile Include="api\Factories\AbstractNativeWarFoundryFactory.cs" /> + <Compile Include="api\Factories\AbstractNonNativeFileExtensionWarFoundryFactory.cs" /> + <Compile Include="api\Factories\AbstractNonNativeWarFoundryFactory.cs" /> + <Compile Include="api\Factories\AbstractWarFoundryFactory.cs" /> + <Compile Include="api\Factories\INativeWarFoundryFactory.cs" /> + <Compile Include="api\Factories\INonNativeWarFoundryFactory.cs" /> + <Compile Include="api\Factories\IWarFoundryFactory.cs" /> + <Compile Include="api\Factories\WarFoundryFactoryFactory.cs" /> + <Compile Include="api\Factories\Xml\WarFoundryXmlElementName.cs" /> + <Compile Include="api\Factories\Xml\WarFoundryXmlFactory.cs" /> + <Compile Include="api\Factories\Xml\WarFoundryXmlSaver.cs" /> + <Compile Include="api\FileLoadFailure.cs" /> + <Compile Include="api\Objects\Ability.cs" /> + <Compile Include="api\Objects\ArmourType.cs" /> + <Compile Include="api\Objects\Army.cs" /> + <Compile Include="api\Objects\ArmyCategory.cs" /> + <Compile Include="api\Objects\Category.cs" /> + <Compile Include="api\Objects\DuplicateItemException.cs" /> + <Compile Include="api\Objects\EquipmentItem.cs" /> + <Compile Include="api\Objects\GameSystem.cs" /> + <Compile Include="api\Objects\IWarFoundryNativeSourceObject.cs" /> + <Compile Include="api\Objects\IWarFoundryObject.cs" /> + <Compile Include="api\Objects\IWarFoundryStagedLoadObject.cs" /> + <Compile Include="api\Objects\Race.cs" /> + <Compile Include="api\Objects\Stat.cs" /> + <Compile Include="api\Objects\Stats.cs" /> + <Compile Include="api\Objects\StatSlot.cs" /> + <Compile Include="api\Objects\SystemStats.cs" /> + <Compile Include="api\Objects\Unit.cs" /> + <Compile Include="api\Objects\UnitEquipmentItem.cs" /> + <Compile Include="api\Objects\UnitEquipmentItemObj.cs" /> + <Compile Include="api\Objects\UnitType.cs" /> + <Compile Include="api\Objects\WarFoundryObject.cs" /> + <Compile Include="api\Objects\WarFoundryStagedLoadingObject.cs" /> <Compile Include="api\Requirements\AbstractArmyRequirement.cs" /> <Compile Include="api\Requirements\AbstractFailedRequirement.cs" /> <Compile Include="api\Requirements\AbstractRequirement.cs" /> @@ -115,61 +105,33 @@ <Compile Include="api\Requirements\UnitRequirementMaxNumber.cs" /> <Compile Include="api\Requirements\UnitRequirementMinNumber.cs" /> <Compile Include="api\Requirements\UnitRequiresAtLeastRequirement.cs" /> - <Compile Include="api\WarFoundryCore.cs" /> - <Compile Include="AssemblyInfo.cs" /> - <Compile Include="api\Factories\Xml\WarFoundryXmlElementName.cs" /> - <Compile Include="api\Factories\Xml\WarFoundryXmlFactory.cs" /> - <Compile Include="api\Factories\Xml\WarFoundryXmlSaver.cs" /> - <Compile Include="api\Factories\AbstractNativeWarFoundryFactory.cs" /> - <Compile Include="api\Factories\AbstractNonNativeFileExtensionWarFoundryFactory.cs" /> - <Compile Include="api\Factories\AbstractNonNativeWarFoundryFactory.cs" /> - <Compile Include="api\Factories\AbstractWarFoundryFactory.cs" /> - <Compile Include="api\Factories\INativeWarFoundryFactory.cs" /> - <Compile Include="api\Factories\INonNativeWarFoundryFactory.cs" /> - <Compile Include="api\Factories\IWarFoundryFactory.cs" /> - <Compile Include="api\Factories\WarFoundryFactoryFactory.cs" /> - <Compile Include="api\Objects\Ability.cs" /> - <Compile Include="api\Objects\ArmourType.cs" /> - <Compile Include="api\Objects\Army.cs" /> - <Compile Include="api\Objects\ArmyCategory.cs" /> - <Compile Include="api\Objects\Category.cs" /> - <Compile Include="api\Objects\EquipmentItem.cs" /> - <Compile Include="api\Objects\GameSystem.cs" /> - <Compile Include="api\Objects\IWarFoundryNativeSourceObject.cs" /> - <Compile Include="api\Objects\IWarFoundryObject.cs" /> - <Compile Include="api\Objects\IWarFoundryStagedLoadObject.cs" /> - <Compile Include="api\Objects\Race.cs" /> - <Compile Include="api\Objects\StagedLoadingGameSystem.cs" /> - <Compile Include="api\Objects\StagedLoadingRace.cs" /> - <Compile Include="api\Objects\Stat.cs" /> - <Compile Include="api\Objects\Stats.cs" /> - <Compile Include="api\Objects\StatSlot.cs" /> - <Compile Include="api\Objects\SystemStats.cs" /> - <Compile Include="api\Objects\SystemStatsSet.cs" /> - <Compile Include="api\Objects\Unit.cs" /> - <Compile Include="api\Objects\UnitEquipmentItem.cs" /> - <Compile Include="api\Objects\UnitEquipmentItemObj.cs" /> - <Compile Include="api\Objects\UnitType.cs" /> - <Compile Include="api\Objects\WarFoundryObject.cs" /> <Compile Include="api\Savers\IWarFoundryFileSaver.cs" /> <Compile Include="api\Savers\WarFoundrySaver.cs" /> + <Compile Include="api\WarFoundryCore.cs" /> <Compile Include="api\WarFoundryLoader.cs" /> + <Compile Include="AssemblyInfo.cs" /> </ItemGroup> <ItemGroup> + <Content Include="libs\ICSharpCode.SharpZipLib.dll" /> <Content Include="libs\log4net.dll" /> <Content Include="libs\log4net.xml" /> </ItemGroup> <ItemGroup> - <Folder Include="testdata\" /> + <ProjectReference Include="..\IBBoard\IBBoard.csproj"> + <Project>{5DFD64F6-FC2B-4B4F-B92E-483BAC468105}</Project> + <Name>IBBoard</Name> + </ProjectReference> + <ProjectReference Include="..\IBBoard.Log4Net\IBBoard.Log4Net.csproj"> + <Project>{DCBA3FB1-267A-4D89-955B-5C05785EE1CD}</Project> + <Name>IBBoard.Log4Net</Name> + </ProjectReference> </ItemGroup> - <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" /> - <PropertyGroup> - <PreBuildEvent> - </PreBuildEvent> - <PostBuildEvent> - </PostBuildEvent> - </PropertyGroup> <ItemGroup> - <None Include="libs\ICSharpCode.SharpZipLib.dll" /> + <Reference Include="System.Xml" /> + <Reference Include="System" /> + <Reference Include="ICSharpCode.SharpZipLib, Version=0.85.4.369, Culture=neutral, PublicKeyToken=1b03e6acf1164f73"> + <SpecificVersion>False</SpecificVersion> + <HintPath>libs\ICSharpCode.SharpZipLib.dll</HintPath> + </Reference> </ItemGroup> </Project> \ No newline at end of file
--- a/IBBoard.WarFoundry.API.csproj.user Mon Jan 26 20:29:37 2009 +0000 +++ b/IBBoard.WarFoundry.API.csproj.user Sat Feb 21 14:23:53 2009 +0000 @@ -1,58 +1,5 @@ <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <PropertyGroup> - <LastOpenVersion>7.10.3077</LastOpenVersion> - <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> - <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform> - <ReferencePath> - </ReferencePath> - <CopyProjectDestinationFolder> - </CopyProjectDestinationFolder> - <CopyProjectUncPath> - </CopyProjectUncPath> - <CopyProjectOption>0</CopyProjectOption> - <ProjectView>ShowAllFiles</ProjectView> - <ProjectTrust>0</ProjectTrust> - </PropertyGroup> - <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> - <EnableASPDebugging>false</EnableASPDebugging> - <EnableASPXDebugging>false</EnableASPXDebugging> - <EnableUnmanagedDebugging>false</EnableUnmanagedDebugging> - <EnableSQLServerDebugging>false</EnableSQLServerDebugging> - <RemoteDebugEnabled>false</RemoteDebugEnabled> - <RemoteDebugMachine> - </RemoteDebugMachine> - <StartAction>Project</StartAction> - <StartArguments> - </StartArguments> - <StartPage> - </StartPage> - <StartProgram> - </StartProgram> - <StartURL> - </StartURL> - <StartWorkingDirectory> - </StartWorkingDirectory> - <StartWithIE>true</StartWithIE> - </PropertyGroup> - <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> - <EnableASPDebugging>false</EnableASPDebugging> - <EnableASPXDebugging>false</EnableASPXDebugging> - <EnableUnmanagedDebugging>false</EnableUnmanagedDebugging> - <EnableSQLServerDebugging>false</EnableSQLServerDebugging> - <RemoteDebugEnabled>false</RemoteDebugEnabled> - <RemoteDebugMachine> - </RemoteDebugMachine> - <StartAction>Project</StartAction> - <StartArguments> - </StartArguments> - <StartPage> - </StartPage> - <StartProgram> - </StartProgram> - <StartURL> - </StartURL> - <StartWorkingDirectory> - </StartWorkingDirectory> - <StartWithIE>true</StartWithIE> + <ProjectView>ProjectFiles</ProjectView> </PropertyGroup> </Project> \ No newline at end of file
--- a/IBBoard.WarFoundry.API.mdp Mon Jan 26 20:29:37 2009 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,104 +0,0 @@ -<Project name="IBBoard.WarFoundry.API" fileversion="2.0" language="C#" DefaultNamespace="IBBoard.WarFoundry" clr-version="Net_2_0" ctype="DotNetProject"> - <Configurations active="Debug"> - <Configuration name="Debug" ctype="DotNetProjectConfiguration"> - <Output directory="bin/Debug/" assemblyKeyFile="." assembly="IBBoard.WarFoundry.API" /> - <Build debugmode="True" target="Library" /> - <Execution runwithwarnings="False" consolepause="True" runtime="MsNet" clr-version="Net_2_0" /> - <CodeGeneration compiler="Mcs" warninglevel="4" optimize="True" unsafecodeallowed="False" generateoverflowchecks="True" generatexmldocumentation="False" ctype="CSharpCompilerParameters" /> - </Configuration> - <Configuration name="Release" ctype="DotNetProjectConfiguration"> - <Output directory="bin/Release/" assembly="IBBoard.WarFoundry.API" /> - <Build debugmode="False" target="Library" /> - <Execution runwithwarnings="False" consolepause="True" runtime="MsNet" clr-version="Net_2_0" /> - <CodeGeneration compiler="Mcs" warninglevel="4" optimize="True" unsafecodeallowed="False" generateoverflowchecks="True" generatexmldocumentation="True" ctype="CSharpCompilerParameters" /> - </Configuration> - </Configurations> - <Contents> - <File name="AssemblyInfo.cs" subtype="Code" buildaction="Compile" /> - <File name="api/Delegates.cs" subtype="Code" buildaction="Compile" /> - <File name="api/Commands/CreateAndAddUnitCommand.cs" subtype="Code" buildaction="Compile" /> - <File name="api/Commands/RemoveUnitCommand.cs" subtype="Code" buildaction="Compile" /> - <File name="api/Commands/ReplaceUnitEquipmentCommand.cs" subtype="Code" buildaction="Compile" /> - <File name="api/Commands/SetNameCommand.cs" subtype="Code" buildaction="Compile" /> - <File name="api/Commands/SetUnitEquipmentAmountCommand.cs" subtype="Code" buildaction="Compile" /> - <File name="api/Commands/SetUnitSizeCommand.cs" subtype="Code" buildaction="Compile" /> - <File name="libs/log4net.dll" subtype="Code" buildaction="Nothing" /> - <File name="libs/log4net.xml" subtype="Code" buildaction="Nothing" /> - <File name="api/Requirements" subtype="Directory" buildaction="Compile" /> - <File name="api/Requirements/UnitExcludesRequirement.cs" subtype="Code" buildaction="Compile" /> - <File name="api/Requirements/UnitRequirementItem.cs" subtype="Code" buildaction="Compile" /> - <File name="api/Requirements/UnitRequirement.cs" subtype="Code" buildaction="Compile" /> - <File name="api/Requirements/RequirementAND.cs" subtype="Code" buildaction="Compile" /> - <File name="api/Requirements/RequirementOR.cs" subtype="Code" buildaction="Compile" /> - <File name="api/Requirements/UnitRequiresAtLeastRequirement.cs" subtype="Code" buildaction="Compile" /> - <File name="api/Requirements/UnitMinNumberReached.cs" subtype="Code" buildaction="Compile" /> - <File name="api/Requirements/UnitMaxNumberReached.cs" subtype="Code" buildaction="Compile" /> - <File name="api/Requirements/FailedUnitRequirement.cs" subtype="Code" buildaction="Compile" /> - <File name="api/Requirements/UnitExclusion.cs" subtype="Code" buildaction="Compile" /> - <File name="api/Requirements/AbstractArmyRequirement.cs" subtype="Code" buildaction="Compile" /> - <File name="api/Requirements/FailedRequirement.cs" subtype="Code" buildaction="Compile" /> - <File name="api/Requirements/UnitRequirementMaxNumber.cs" subtype="Code" buildaction="Compile" /> - <File name="api/Requirements/UnitRequirementMinNumber.cs" subtype="Code" buildaction="Compile" /> - <File name="api/Requirements/AbstractFailedRequirement.cs" subtype="Code" buildaction="Compile" /> - <File name="api/Requirements/Delegates.cs" subtype="Code" buildaction="Compile" /> - <File name="api/WarFoundryCore.cs" subtype="Code" buildaction="Compile" /> - <File name="api/Requirements/AbstractRequirement.cs" subtype="Code" buildaction="Compile" /> - <File name="api/Requirements/AbstractUnitRequirement.cs" subtype="Code" buildaction="Compile" /> - <File name="libs/ICSharpCode.SharpZipLib.dll" subtype="Code" buildaction="Nothing" /> - <File name="api/WarFoundryLoader.cs" subtype="Code" buildaction="Compile" /> - <File name="api/Factories" subtype="Directory" buildaction="Compile" /> - <File name="api/Factories/AbstractNativeWarFoundryFactory.cs" subtype="Code" buildaction="Compile" /> - <File name="api/Factories/WarFoundryFactoryFactory.cs" subtype="Code" buildaction="Compile" /> - <File name="api/Objects" subtype="Directory" buildaction="Compile" /> - <File name="api/Objects/Ability.cs" subtype="Code" buildaction="Compile" /> - <File name="api/Objects/ArmourType.cs" subtype="Code" buildaction="Compile" /> - <File name="api/Objects/Army.cs" subtype="Code" buildaction="Compile" /> - <File name="api/Objects/ArmyCategory.cs" subtype="Code" buildaction="Compile" /> - <File name="api/Objects/Category.cs" subtype="Code" buildaction="Compile" /> - <File name="api/Objects/EquipmentItem.cs" subtype="Code" buildaction="Compile" /> - <File name="api/Objects/GameSystem.cs" subtype="Code" buildaction="Compile" /> - <File name="api/Objects/Stat.cs" subtype="Code" buildaction="Compile" /> - <File name="api/Objects/Stats.cs" subtype="Code" buildaction="Compile" /> - <File name="api/Objects/StatSlot.cs" subtype="Code" buildaction="Compile" /> - <File name="api/Objects/SystemStats.cs" subtype="Code" buildaction="Compile" /> - <File name="api/Objects/Unit.cs" subtype="Code" buildaction="Compile" /> - <File name="api/Objects/UnitEquipmentItem.cs" subtype="Code" buildaction="Compile" /> - <File name="api/Objects/UnitEquipmentItemObj.cs" subtype="Code" buildaction="Compile" /> - <File name="api/Objects/UnitType.cs" subtype="Code" buildaction="Compile" /> - <File name="api/Objects/WarFoundryObject.cs" subtype="Code" buildaction="Compile" /> - <File name="api/Factories/Xml" subtype="Directory" buildaction="Compile" /> - <File name="api/Factories/Xml/WarFoundryXmlSaver.cs" subtype="Code" buildaction="Compile" /> - <File name="api/Factories/Xml/WarFoundryXmlFactory.cs" subtype="Code" buildaction="Compile" /> - <File name="api/Factories/Xml/WarFoundryXmlElementName.cs" subtype="Code" buildaction="Compile" /> - <File name="api/Factories/AbstractNonNativeWarFoundryFactory.cs" subtype="Code" buildaction="Compile" /> - <File name="api/Factories/IWarFoundryFactory.cs" subtype="Code" buildaction="Compile" /> - <File name="api/Factories/AbstractWarFoundryFactory.cs" subtype="Code" buildaction="Compile" /> - <File name="api/Factories/AbstractNonNativeFileExtensionWarFoundryFactory.cs" subtype="Code" buildaction="Compile" /> - <File name="api/Savers" subtype="Directory" buildaction="Compile" /> - <File name="api/Savers/IWarFoundryFileSaver.cs" subtype="Code" buildaction="Compile" /> - <File name="api/Savers/WarFoundrySaver.cs" subtype="Code" buildaction="Compile" /> - <File name="api/Factories/INonNativeWarFoundryFactory.cs" subtype="Code" buildaction="Compile" /> - <File name="api/Factories/INativeWarFoundryFactory.cs" subtype="Code" buildaction="Compile" /> - <File name="api/Objects/Race.cs" subtype="Code" buildaction="Compile" /> - <File name="api/Objects/IWarFoundryNativeSourceObject.cs" subtype="Code" buildaction="Compile" /> - <File name="api/Objects/IWarFoundryObject.cs" subtype="Code" buildaction="Compile" /> - <File name="dtds/army.dtd" subtype="Code" buildaction="Nothing" /> - <File name="dtds/race.dtd" subtype="Code" buildaction="Nothing" /> - <File name="dtds/system.dtd" subtype="Code" buildaction="Nothing" /> - <File name="api/Objects/WarFoundryStagedLoadingObject.cs" subtype="Code" buildaction="Compile" /> - <File name="api/Objects/IWarFoundryStagedLoadObject.cs" subtype="Code" buildaction="Compile" /> - <File name="api/Objects/DuplicateItemException.cs" subtype="Code" buildaction="Compile" /> - <File name="api/FileLoadFailure.cs" subtype="Code" buildaction="Compile" /> - <File name="COPYING.GPL" subtype="Code" buildaction="Nothing" /> - <File name="COPYING.LGPL" subtype="Code" buildaction="Nothing" /> - </Contents> - <References> - <ProjectReference type="Gac" localcopy="True" refto="System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" /> - <ProjectReference type="Gac" localcopy="True" refto="System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" /> - <ProjectReference type="Gac" localcopy="True" refto="System.Xml, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" /> - <ProjectReference type="Project" localcopy="True" refto="IBBoard" /> - <ProjectReference type="Gac" localcopy="True" refto="System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" /> - <ProjectReference type="Assembly" localcopy="True" refto="libs/ICSharpCode.SharpZipLib.dll" /> - </References> - <GtkDesignInfo /> -</Project> \ No newline at end of file
--- a/api/Factories/AbstractNonNativeFileExtensionWarFoundryFactory.cs Mon Jan 26 20:29:37 2009 +0000 +++ b/api/Factories/AbstractNonNativeFileExtensionWarFoundryFactory.cs Sat Feb 21 14:23:53 2009 +0000 @@ -43,5 +43,25 @@ protected abstract Army CreateArmyFromFile(FileInfo file); protected abstract Race CreateRaceFromFile(FileInfo file); protected abstract GameSystem CreateGameSystemFromFile(FileInfo file); + + protected override ICollection<IWarFoundryObject> DoCreateObjectsFromFile (FileInfo file) + { + ICollection<IWarFoundryObject> objects = new List<IWarFoundryObject>(); + + if (CheckCanHandleFileAsRace(file)) + { + objects.Add(CreateRaceFromFile(file)); + } + else if (CheckCanHandleFileAsGameSystem(file)) + { + objects.Add(CreateGameSystemFromFile(file)); + } + else if (CheckCanHandleFileAsArmy(file)) + { + objects.Add(CreateArmyFromFile(file)); + } + + return objects; + } } }