1
0
forked from 0ad/0ad

Updated the Atlas-based tools build system, to create several .exes and one .dll. And some other minor changes that I'll try to remember later.

This was SVN commit r2323.
This commit is contained in:
Ykkrosh 2005-05-19 02:46:42 +00:00
parent ccd79ecd85
commit 7f3a74f077
26 changed files with 627 additions and 145 deletions

View File

@ -8,6 +8,16 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "AtlasObject", "AtlasObject\
ProjectSection(ProjectDependencies) = postProject
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ActorEditor", "AtlasFrontends\ActorEditor.vcproj", "{E859DDC0-224A-41F6-B09F-E320EC8DDA35}"
ProjectSection(ProjectDependencies) = postProject
{E99BA969-D540-4F23-822E-37C499E8F704} = {E99BA969-D540-4F23-822E-37C499E8F704}
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ColourTester", "AtlasFrontends\ColourTester.vcproj", "{C018BE85-EBFE-428E-8626-3CCB77052715}"
ProjectSection(ProjectDependencies) = postProject
{E99BA969-D540-4F23-822E-37C499E8F704} = {E99BA969-D540-4F23-822E-37C499E8F704}
EndProjectSection
EndProject
Global
GlobalSection(SolutionConfiguration) = preSolution
Debug = Debug
@ -22,6 +32,14 @@ Global
{228B468D-3C2E-45BF-9833-C626E1A35B04}.Debug.Build.0 = Debug|Win32
{228B468D-3C2E-45BF-9833-C626E1A35B04}.Release.ActiveCfg = Release|Win32
{228B468D-3C2E-45BF-9833-C626E1A35B04}.Release.Build.0 = Release|Win32
{E859DDC0-224A-41F6-B09F-E320EC8DDA35}.Debug.ActiveCfg = Debug|Win32
{E859DDC0-224A-41F6-B09F-E320EC8DDA35}.Debug.Build.0 = Debug|Win32
{E859DDC0-224A-41F6-B09F-E320EC8DDA35}.Release.ActiveCfg = Release|Win32
{E859DDC0-224A-41F6-B09F-E320EC8DDA35}.Release.Build.0 = Release|Win32
{C018BE85-EBFE-428E-8626-3CCB77052715}.Debug.ActiveCfg = Debug|Win32
{C018BE85-EBFE-428E-8626-3CCB77052715}.Debug.Build.0 = Debug|Win32
{C018BE85-EBFE-428E-8626-3CCB77052715}.Release.ActiveCfg = Release|Win32
{C018BE85-EBFE-428E-8626-3CCB77052715}.Release.Build.0 = Release|Win32
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
EndGlobalSection

View File

@ -0,0 +1,11 @@
#define WIN32_LEAN_AND_MEAN
#include <windows.h>
#define ATLASDLLIMPEXP __declspec(dllimport)
#include "AtlasUI/Misc/DLLInterface.h"
int APIENTRY wWinMain(HINSTANCE, HINSTANCE, LPTSTR, int) {
StartWindow(L"ActorEditor");
return 0;
}

View File

@ -0,0 +1,120 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="7.10"
Name="ActorEditor"
ProjectGUID=""
Keyword="Win32Proj">
<Platforms>
<Platform
Name="Win32"/>
</Platforms>
<Configurations>
<Configuration
Name="Release|Win32"
OutputDirectory="..\..\..\..\binaries\system"
IntermediateDirectory="..\..\..\..\build\workspaces\atlas\Debug\frontend"
ConfigurationType="1"
CharacterSet="1">
<Tool
Name="VCCLCompilerTool"
Optimization="1"
AdditionalIncludeDirectories=".."
PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS"
RuntimeLibrary="2"
WarningLevel="4"
Detect64BitPortabilityProblems="TRUE"
DebugInformationFormat="3"/>
<Tool
Name="VCCustomBuildTool"/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="AtlasUI.lib"
OutputFile="$(OutDir)/ActorEditor.exe"
AdditionalLibraryDirectories="$(OutDir)"
GenerateDebugInformation="TRUE"
ProgramDatabaseFile="$(OutDir)/ActorEditor.pdb"
SubSystem="2"
OptimizeReferences="2"
EnableCOMDATFolding="2"
OptimizeForWindows98="1"
TargetMachine="1"/>
<Tool
Name="VCMIDLTool"/>
<Tool
Name="VCPostBuildEventTool"/>
<Tool
Name="VCPreBuildEventTool"/>
<Tool
Name="VCPreLinkEventTool"/>
<Tool
Name="VCResourceCompilerTool"/>
<Tool
Name="VCWebServiceProxyGeneratorTool"/>
<Tool
Name="VCXMLDataGeneratorTool"/>
<Tool
Name="VCWebDeploymentTool"/>
<Tool
Name="VCManagedWrapperGeneratorTool"/>
<Tool
Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
</Configuration>
<Configuration
Name="Debug|Win32"
OutputDirectory="..\..\..\..\binaries\system"
IntermediateDirectory="..\..\..\..\build\workspaces\atlas\Debug\frontend"
ConfigurationType="1"
CharacterSet="1">
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories=".."
PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS"
RuntimeLibrary="3"
WarningLevel="4"
Detect64BitPortabilityProblems="TRUE"
DebugInformationFormat="3"/>
<Tool
Name="VCCustomBuildTool"/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="AtlasUI_d.lib"
OutputFile="$(OutDir)/ActorEditor_d.exe"
AdditionalLibraryDirectories="$(OutDir)"
GenerateDebugInformation="TRUE"
ProgramDatabaseFile="$(OutDir)/ActorEditor_d.pdb"
SubSystem="2"
TargetMachine="1"/>
<Tool
Name="VCMIDLTool"/>
<Tool
Name="VCPostBuildEventTool"/>
<Tool
Name="VCPreBuildEventTool"/>
<Tool
Name="VCPreLinkEventTool"/>
<Tool
Name="VCResourceCompilerTool"/>
<Tool
Name="VCWebServiceProxyGeneratorTool"/>
<Tool
Name="VCXMLDataGeneratorTool"/>
<Tool
Name="VCWebDeploymentTool"/>
<Tool
Name="VCManagedWrapperGeneratorTool"/>
<Tool
Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
</Configuration>
</Configurations>
<References>
</References>
<Files>
<File
RelativePath=".\ActorEditor.cpp">
</File>
</Files>
<Globals>
</Globals>
</VisualStudioProject>

View File

@ -0,0 +1,11 @@
#define WIN32_LEAN_AND_MEAN
#include <windows.h>
#define ATLASDLLIMPEXP __declspec(dllimport)
#include "AtlasUI/Misc/DLLInterface.h"
int APIENTRY wWinMain(HINSTANCE, HINSTANCE, LPTSTR, int) {
StartWindow(L"ColourTester");
return 0;
}

View File

@ -0,0 +1,120 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="7.10"
Name="ColourTester"
ProjectGUID=""
Keyword="Win32Proj">
<Platforms>
<Platform
Name="Win32"/>
</Platforms>
<Configurations>
<Configuration
Name="Release|Win32"
OutputDirectory="..\..\..\..\binaries\system"
IntermediateDirectory="..\..\..\..\build\workspaces\atlas\Debug\frontend"
ConfigurationType="1"
CharacterSet="1">
<Tool
Name="VCCLCompilerTool"
Optimization="1"
AdditionalIncludeDirectories=".."
PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS"
RuntimeLibrary="2"
WarningLevel="4"
Detect64BitPortabilityProblems="TRUE"
DebugInformationFormat="3"/>
<Tool
Name="VCCustomBuildTool"/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="AtlasUI.lib"
OutputFile="$(OutDir)/ColourTester.exe"
AdditionalLibraryDirectories="$(OutDir)"
GenerateDebugInformation="TRUE"
ProgramDatabaseFile="$(OutDir)/ColourTester.pdb"
SubSystem="2"
OptimizeReferences="2"
EnableCOMDATFolding="2"
OptimizeForWindows98="1"
TargetMachine="1"/>
<Tool
Name="VCMIDLTool"/>
<Tool
Name="VCPostBuildEventTool"/>
<Tool
Name="VCPreBuildEventTool"/>
<Tool
Name="VCPreLinkEventTool"/>
<Tool
Name="VCResourceCompilerTool"/>
<Tool
Name="VCWebServiceProxyGeneratorTool"/>
<Tool
Name="VCXMLDataGeneratorTool"/>
<Tool
Name="VCWebDeploymentTool"/>
<Tool
Name="VCManagedWrapperGeneratorTool"/>
<Tool
Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
</Configuration>
<Configuration
Name="Debug|Win32"
OutputDirectory="..\..\..\..\binaries\system"
IntermediateDirectory="..\..\..\..\build\workspaces\atlas\Debug\frontend"
ConfigurationType="1"
CharacterSet="1">
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories=".."
PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS"
RuntimeLibrary="3"
WarningLevel="4"
Detect64BitPortabilityProblems="TRUE"
DebugInformationFormat="3"/>
<Tool
Name="VCCustomBuildTool"/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="AtlasUI_d.lib"
OutputFile="$(OutDir)/ColourTester_d.exe"
AdditionalLibraryDirectories="$(OutDir)"
GenerateDebugInformation="TRUE"
ProgramDatabaseFile="$(OutDir)/ColourTester_d.pdb"
SubSystem="2"
TargetMachine="1"/>
<Tool
Name="VCMIDLTool"/>
<Tool
Name="VCPostBuildEventTool"/>
<Tool
Name="VCPreBuildEventTool"/>
<Tool
Name="VCPreLinkEventTool"/>
<Tool
Name="VCResourceCompilerTool"/>
<Tool
Name="VCWebServiceProxyGeneratorTool"/>
<Tool
Name="VCXMLDataGeneratorTool"/>
<Tool
Name="VCWebDeploymentTool"/>
<Tool
Name="VCManagedWrapperGeneratorTool"/>
<Tool
Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
</Configuration>
</Configurations>
<References>
</References>
<Files>
<File
RelativePath=".\ColourTester.cpp">
</File>
</Files>
<Globals>
</Globals>
</VisualStudioProject>

View File

@ -0,0 +1,11 @@
#define WIN32_LEAN_AND_MEAN
#include <windows.h>
#define ATLASDLLIMPEXP __declspec(dllimport)
#include "AtlasUI/Misc/DLLInterface.h"
int APIENTRY wWinMain(HINSTANCE, HINSTANCE, LPTSTR, int) {
StartWindow(L"$$WINDOW_NAME$$");
return 0;
}

View File

@ -0,0 +1,120 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="7.10"
Name="$$PROJECT_NAME$$"
ProjectGUID="$$GUID$$"
Keyword="Win32Proj">
<Platforms>
<Platform
Name="Win32"/>
</Platforms>
<Configurations>
<Configuration
Name="Release|Win32"
OutputDirectory="..\..\..\..\binaries\system"
IntermediateDirectory="..\..\..\..\build\workspaces\atlas\Debug\frontend"
ConfigurationType="1"
CharacterSet="1">
<Tool
Name="VCCLCompilerTool"
Optimization="1"
AdditionalIncludeDirectories=".."
PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS"
RuntimeLibrary="2"
WarningLevel="4"
Detect64BitPortabilityProblems="TRUE"
DebugInformationFormat="3"/>
<Tool
Name="VCCustomBuildTool"/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="AtlasUI.lib"
OutputFile="$(OutDir)/$$EXE_NAME$$.exe"
AdditionalLibraryDirectories="$(OutDir)"
GenerateDebugInformation="TRUE"
ProgramDatabaseFile="$(OutDir)/$$PROJECT_NAME$$.pdb"
SubSystem="2"
OptimizeReferences="2"
EnableCOMDATFolding="2"
OptimizeForWindows98="1"
TargetMachine="1"/>
<Tool
Name="VCMIDLTool"/>
<Tool
Name="VCPostBuildEventTool"/>
<Tool
Name="VCPreBuildEventTool"/>
<Tool
Name="VCPreLinkEventTool"/>
<Tool
Name="VCResourceCompilerTool"/>
<Tool
Name="VCWebServiceProxyGeneratorTool"/>
<Tool
Name="VCXMLDataGeneratorTool"/>
<Tool
Name="VCWebDeploymentTool"/>
<Tool
Name="VCManagedWrapperGeneratorTool"/>
<Tool
Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
</Configuration>
<Configuration
Name="Debug|Win32"
OutputDirectory="..\..\..\..\binaries\system"
IntermediateDirectory="..\..\..\..\build\workspaces\atlas\Debug\frontend"
ConfigurationType="1"
CharacterSet="1">
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories=".."
PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS"
RuntimeLibrary="3"
WarningLevel="4"
Detect64BitPortabilityProblems="TRUE"
DebugInformationFormat="3"/>
<Tool
Name="VCCustomBuildTool"/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="AtlasUI_d.lib"
OutputFile="$(OutDir)/$$EXE_NAME$$_d.exe"
AdditionalLibraryDirectories="$(OutDir)"
GenerateDebugInformation="TRUE"
ProgramDatabaseFile="$(OutDir)/$$PROJECT_NAME$$_d.pdb"
SubSystem="2"
TargetMachine="1"/>
<Tool
Name="VCMIDLTool"/>
<Tool
Name="VCPostBuildEventTool"/>
<Tool
Name="VCPreBuildEventTool"/>
<Tool
Name="VCPreLinkEventTool"/>
<Tool
Name="VCResourceCompilerTool"/>
<Tool
Name="VCWebServiceProxyGeneratorTool"/>
<Tool
Name="VCXMLDataGeneratorTool"/>
<Tool
Name="VCWebDeploymentTool"/>
<Tool
Name="VCManagedWrapperGeneratorTool"/>
<Tool
Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
</Configuration>
</Configurations>
<References>
</References>
<Files>
<File
RelativePath=".\$$PROJECT_NAME$$.cpp">
</File>
</Files>
<Globals>
</Globals>
</VisualStudioProject>

View File

@ -0,0 +1,31 @@
use strict;
use warnings;
my @files = qw( .cpp .vcproj );
my @progs = (
{
PROJECT_NAME => "ActorEditor",
GUID => "",
EXE_NAME => "ActorEditor",
WINDOW_NAME => "ActorEditor",
},
{
PROJECT_NAME => "ColourTester",
GUID => "",
EXE_NAME => "ColourTester",
WINDOW_NAME => "ColourTester",
},
);
for my $p (@progs) {
for my $f (@files) {
open IN, "<", "_template$f" or die "Error opening _template$f: $!";
open OUT, ">", "$p->{PROJECT_NAME}$f" or die "Error opening $p->{PROJECT_NAME}$f: $!";
while (<IN>) {
s/\$\$([A-Z_]+)\$\$/ $p->{$1} /eg;
print OUT;
}
}
}

View File

@ -12,8 +12,8 @@
<Configurations>
<Configuration
Name="Debug|Win32"
OutputDirectory="Debug"
IntermediateDirectory="Debug"
OutputDirectory="..\..\..\..\binaries\system"
IntermediateDirectory="..\..\..\..\build\workspaces\atlas\Debug\atobj"
ConfigurationType="4"
CharacterSet="2">
<Tool
@ -21,19 +21,18 @@
Optimization="0"
AdditionalIncludeDirectories="../../../../libraries/xerces/include"
PreprocessorDefinitions="WIN32;_DEBUG;_LIB"
StringPooling="TRUE"
MinimalRebuild="TRUE"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
UsePrecompiledHeader="0"
WarningLevel="4"
Detect64BitPortabilityProblems="TRUE"
DebugInformationFormat="4"/>
DebugInformationFormat="3"/>
<Tool
Name="VCCustomBuildTool"/>
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)/AtlasObject.lib"
AdditionalLibraryDirectories="E:\0ad\svnc\trunk\libraries\xerces\lib"/>
OutputFile="$(OutDir)/AtlasObject_d.lib"
AdditionalLibraryDirectories=""/>
<Tool
Name="VCMIDLTool"/>
<Tool
@ -55,8 +54,8 @@
</Configuration>
<Configuration
Name="Release|Win32"
OutputDirectory="Release"
IntermediateDirectory="Release"
OutputDirectory="..\..\..\..\binaries\system"
IntermediateDirectory="..\..\..\..\build\workspaces\atlas\Release\atobj"
ConfigurationType="4"
CharacterSet="2">
<Tool
@ -64,8 +63,8 @@
Optimization="1"
AdditionalIncludeDirectories="../../../../libraries/xerces/include"
PreprocessorDefinitions="WIN32;NDEBUG;_LIB"
StringPooling="TRUE"
RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="4"
Detect64BitPortabilityProblems="TRUE"
DebugInformationFormat="3"/>
@ -74,7 +73,7 @@
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)/AtlasObject.lib"
AdditionalLibraryDirectories="E:\0ad\svnc\trunk\libraries\xerces\lib"/>
AdditionalLibraryDirectories=""/>
<Tool
Name="VCMIDLTool"/>
<Tool

View File

@ -1,12 +1,8 @@
#include "AtlasObject.h"
#include "AtlasObjectImpl.h"
#include <sstream>
#include <stdlib.h>
#include <assert.h>
#define ATSMARTPTR_IMPL(T) \
template<> void AtSmartPtr<T>::inc_ref() \
{ \

View File

@ -1,7 +1,17 @@
#include "AtlasObject.h"
#include <string>
#include <map>
#ifdef _MSC_VER
// Avoid complaints about unreachable code; the optimiser is realising
// that some code is incapable of throwing, then warning about the catch
// block that will never be executed.
#pragma warning(disable: 4702)
#include <map>
#pragma warning(default: 4702)
#else
#include <map>
#endif
// AtNode is an immutable tree node, with a string and and multimap of children.
class AtNode

View File

@ -3,13 +3,13 @@
// (This is done in order to avoid forcing inclusion of all the
// STL headers when they're not needed)
#ifdef new // HACK: to make the STL headers happy with a redefined 'new'
# undef new
//#ifdef new // HACK: to make the STL headers happy with a redefined 'new'
//# undef new
//# include <string>
//# define new new(_NORMAL_BLOCK ,__FILE__, __LINE__)
//#else
# include <string>
# define new new(_NORMAL_BLOCK ,__FILE__, __LINE__)
#else
# include <string>
#endif
//#endif
class AtObj;

View File

@ -19,7 +19,6 @@
#include <xercesc/parsers/XercesDOMParser.hpp>
#include <xercesc/dom/DOM.hpp>
#include <xercesc/util/PlatformUtils.hpp>
#include <xercesc/util/XMLString.hpp>
#include <xercesc/framework/LocalFileFormatTarget.hpp>
#include <xercesc/sax/SAXParseException.hpp>
@ -46,6 +45,7 @@ private:
char* systemId = XMLString::transcode(err.getSystemId());
char* message = XMLString::transcode(err.getMessage());
// TODO: do something
(void)severity;
XMLString::release(&systemId);
XMLString::release(&message);
}

View File

@ -65,7 +65,12 @@ ActorEditor::ActorEditor(wxWindow* parent)
materialsPanel->SetSizer(materialsSizer);
m_Material = new wxTextCtrl(materialsPanel, wxID_ANY, _T(""));
// m_Material = new wxTextCtrl(materialsPanel, wxID_ANY, _T(""));
wxArrayString materials;
AtObj list (Datafile::ReadList("materials"));
for (AtIter it = list["material"]; it.defined(); ++it)
materials.Add(it);
m_Material = new wxComboBox(materialsPanel, wxID_ANY, _T(""), wxDefaultPosition, wxDefaultSize, materials);
materialsSizer->Add(m_Material, wxSizerFlags().Border(wxALL, 2));
//////////////////////////////////////////////////////////////////////////

View File

@ -21,7 +21,7 @@ private:
ActorEditorListCtrl* m_ActorEditorListCtrl;
wxCheckBox* m_CastShadows;
wxTextCtrl* m_Material;
wxComboBox* m_Material;
DECLARE_EVENT_TABLE();
};

View File

@ -21,6 +21,7 @@ ActorEditorListCtrl::ActorEditorListCtrl(wxWindow* parent)
COLOUR(Anim, (e,f,e), (c,f,c));
COLOUR(Prop, (e,e,f), (c,c,f));
COLOUR(Colour, (f,e,f), (f,c,f));
COLOUR(None, (f,f,f), (f,f,f));
#undef COLOUR
@ -97,5 +98,5 @@ wxListItemAttr* ActorEditorListCtrl::OnGetItemAttr(long item) const
return const_cast<wxListItemAttr*>(&m_ListItemAttr_Colour[item%2]);
}
return DraggableListCtrl::OnGetItemAttr(item);
return const_cast<wxListItemAttr*>(&m_ListItemAttr_None[item%2]);
}

View File

@ -22,4 +22,5 @@ private:
wxListItemAttr m_ListItemAttr_Anim[2];
wxListItemAttr m_ListItemAttr_Prop[2];
wxListItemAttr m_ListItemAttr_Colour[2];
wxListItemAttr m_ListItemAttr_None[2];
};

View File

@ -50,6 +50,8 @@ AnimListEditorListCtrl::AnimListEditorListCtrl(wxWindow* parent)
AddColumnType(_("Anim name"), 100, "@name", new FieldEditCtrl_List("animations"));
AddColumnType(_("File"), 200, "@file", new FieldEditCtrl_File(_T("art/animation/"), _("Animation files (*.psa)|*.psa|All files (*.*)|*.*")));
AddColumnType(_("Speed"), 50, "@speed", new FieldEditCtrl_Text());
AddColumnType(_("Load"), 30, "@load", new FieldEditCtrl_Text());
AddColumnType(_("Event"), 30, "@event", new FieldEditCtrl_Text());
}
void AnimListEditorListCtrl::DoImport(AtObj& in)

View File

@ -13,8 +13,8 @@
<Configuration
Name="Debug|Win32"
OutputDirectory="..\..\..\..\binaries\system"
IntermediateDirectory="..\..\..\..\build\_atlas\Debug"
ConfigurationType="1"
IntermediateDirectory="..\..\..\..\build\workspaces\atlas\Debug\ui"
ConfigurationType="2"
CharacterSet="1">
<Tool
Name="VCCLCompilerTool"
@ -33,11 +33,11 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="comctl32.lib rpcrt4.lib"
OutputFile="$(OutDir)/actored_d.exe"
OutputFile="$(OutDir)/AtlasUI_d.dll"
LinkIncremental="2"
AdditionalLibraryDirectories="E:\wx\wxWidgets\lib\vc_lib;..\..\..\..\libraries\xerces\lib;..\..\..\..\libraries\devil\src\lib"
GenerateDebugInformation="TRUE"
ProgramDatabaseFile="$(OutDir)/actored.pdb"
ProgramDatabaseFile="$(OutDir)/AtlasUI_d.pdb"
SubSystem="2"
TargetMachine="1"/>
<Tool
@ -64,8 +64,8 @@
<Configuration
Name="Release|Win32"
OutputDirectory="..\..\..\..\binaries\system"
IntermediateDirectory="..\..\..\..\build\_atlas\Release"
ConfigurationType="1"
IntermediateDirectory="..\..\..\..\build\workspaces\atlas\Release\ui"
ConfigurationType="2"
CharacterSet="1">
<Tool
Name="VCCLCompilerTool"
@ -83,10 +83,11 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="comctl32.lib rpcrt4.lib"
OutputFile="$(OutDir)/actored.exe"
OutputFile="$(OutDir)/AtlasUI.dll"
LinkIncremental="1"
AdditionalLibraryDirectories="E:\wx\wxWidgets\lib\vc_lib;..\..\..\..\libraries\xerces\lib;..\..\..\..\libraries\devil\src\lib"
GenerateDebugInformation="FALSE"
GenerateDebugInformation="TRUE"
ProgramDatabaseFile="$(OutDir)/AtlasUI.pdb"
SubSystem="2"
OptimizeReferences="2"
EnableCOMDATFolding="2"
@ -276,22 +277,10 @@
Name="Misc"
Filter="">
<File
RelativePath=".\Misc\actored.cpp">
<FileConfiguration
Name="Debug|Win32"
ExcludedFromBuild="TRUE">
<Tool
Name="VCCLCompilerTool"/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32"
ExcludedFromBuild="TRUE">
<Tool
Name="VCCLCompilerTool"/>
</FileConfiguration>
RelativePath=".\Misc\DLLInterface.cpp">
</File>
<File
RelativePath=".\Misc\colourtest.cpp">
RelativePath=".\Misc\DLLInterface.h">
</File>
<File
RelativePath=".\Misc\stdafx.cpp">

View File

@ -6,15 +6,29 @@
#include "ColourTesterColourCtrl.h"
#include "ColourTesterFileCtrl.h"
//#include "AtlasObject/AtlasObject.h"
//#include "Datafile.h"
//#include "wx/file.h"
#include "wx/dnd.h"
BEGIN_EVENT_TABLE(ColourTester, wxFrame)
//EVT_MENU(ID_Custom1, OnCreateEntity)
END_EVENT_TABLE()
class DropTarget : public wxFileDropTarget
{
public:
DropTarget(ColourTesterImageCtrl* imgctrl)
: m_ImageCtrl(imgctrl)
{}
bool OnDropFiles(wxCoord WXUNUSED(x), wxCoord WXUNUSED(y), const wxArrayString& filenames)
{
if (filenames.GetCount() >= 1)
m_ImageCtrl->SetImageFile(filenames[0]);
return true;
}
private:
ColourTesterImageCtrl* m_ImageCtrl;
};
ColourTester::ColourTester(wxWindow* parent)
: wxFrame(parent, wxID_ANY, _("Colour Tester"), wxDefaultPosition, wxSize(800, 700))
{
@ -47,4 +61,8 @@ ColourTester::ColourTester(wxWindow* parent)
bottomSizer->Add((wxPanel*)new ColourTesterColourCtrl(mainPanel, m_ImageCtrl),
wxSizerFlags().Border(wxALL, 10));
//////////////////////////////////////////////////////////////////////////
SetDropTarget(new DropTarget(m_ImageCtrl));
}

View File

@ -0,0 +1,91 @@
#include "stdafx.h"
#include "DLLInterface.h"
#include "Datafile.h"
#include "ActorEditor/ActorEditor.h"
#include "ColourTester/ColourTester.h"
#include "wx/config.h"
// Global variables, to remember state between DllMain and StartWindow and OnInit
wxString g_InitialWindowType;
HINSTANCE g_Module;
bool g_IsLoaded = false;
BOOL APIENTRY DllMain(HINSTANCE hModule, DWORD fdwReason, LPVOID WXUNUSED(lpReserved))
{
switch (fdwReason)
{
case DLL_PROCESS_ATTACH:
g_Module = hModule;
return TRUE;
case DLL_PROCESS_DETACH:
if (g_IsLoaded)
{
wxEntryCleanup();
g_IsLoaded = false;
}
break;
}
return TRUE;
}
ATLASDLLIMPEXP void StartWindow(wchar_t* type)
{
g_InitialWindowType = type;
wxEntry(g_Module);
}
class wxDLLApp : public wxApp
{
public:
virtual bool OnInit()
{
// Initialise the global config file
wxConfigBase::Set(new wxConfig(_T("Atlas Editor"), _T("Wildfire Games")));
// Assume that the .exe is located in .../binaries/system. (We can't
// just use the cwd, since that isn't correct when being executed by
// dragging-and-dropping onto the program in Explorer.)
Datafile::SetSystemDirectory(argv[0]);
// Display the Actor Editor window
wxFrame* frame;
if (g_InitialWindowType == _T("ActorEditor"))
frame = new ActorEditor(NULL);
else if (g_InitialWindowType == _T("ColourTester"))
frame = new ColourTester(NULL);
else
{
wxFAIL_MSG(_("Internal error: invalid window type"));
return false;
}
frame->Show();
SetTopWindow(frame);
// One argument => argv[1] is a filename to open
if (argc > 1)
{
wxChar* filename = argv[1];
if (wxFile::Exists(filename))
{
AtlasWindow* win = wxDynamicCast(frame, AtlasWindow);
if (win)
win->OpenFile(filename);
}
else
wxLogError(_("Cannot find file '%s'"), filename);
}
return true;
}
};
IMPLEMENT_APP_NO_MAIN(wxDLLApp)

View File

@ -0,0 +1,3 @@
#include <wchar.h>
ATLASDLLIMPEXP void StartWindow(wchar_t* type);

View File

@ -1,43 +0,0 @@
// Just a boring app that creates an ActorEditor window
#include "stdafx.h"
#include "ActorEditor/ActorEditor.h"
#include "Datafile.h"
#include "wx/file.h"
#include "wx/config.h"
class MyApp: public wxApp
{
bool OnInit()
{
// Initialise the global config file
wxConfigBase::Set(new wxConfig(_T("Atlas Editor"), _T("Wildfire Games")));
// Assume that the .exe is located in .../binaries/system. (We can't
// just use the cwd, since that isn't correct when being executed by
// dragging-and-dropping onto the program in Explorer.)
Datafile::SetSystemDirectory(argv[0]);
// Display the Actor Editor window
AtlasWindow *frame = new ActorEditor(NULL);
frame->Show();
SetTopWindow(frame);
// One argument => argv[1] is a filename to open
if (argc > 1)
{
wxChar* filename = argv[1];
if (wxFile::Exists(filename))
frame->OpenFile(filename);
else
wxLogError(_("Cannot find file '%s'"), filename);
}
return true;
}
};
IMPLEMENT_APP(MyApp)

View File

@ -1,50 +0,0 @@
// Just another boring app that creates a ColourTester window
#include "stdafx.h"
#include "ColourTester/ColourTester.h"
#include "Datafile.h"
#include "wx/file.h"
#include "wx/config.h"
#include "wx/generic/colrdlgg.h"
#include "wx/generic/filedlgg.h"
#include "wx/generic/dirctrlg.h"
#include "wx/generic/dirdlgg.h"
class MyApp: public wxApp
{
bool OnInit()
{
// Initialise the global config file
wxConfigBase::Set(new wxConfig(_T("Atlas Editor"), _T("Wildfire Games")));
// Assume that the .exe is located in .../binaries/system. (We can't
// just use the cwd, since that isn't correct when being executed by
// dragging-and-dropping onto the program in Explorer.)
Datafile::SetSystemDirectory(argv[0]);
// Display the main program window
wxFrame *frame = new ColourTester(NULL);
frame->Show();
SetTopWindow(frame);
/*
// One argument => argv[1] is a filename to open
if (argc > 1)
{
wxChar* filename = argv[1];
if (wxFile::Exists(filename))
frame->OpenFile(filename);
else
wxLogError(_("Cannot find file '%s'"), filename);
}
*/
return true;
}
};
IMPLEMENT_APP(MyApp)

View File

@ -37,3 +37,6 @@
// If no PCH, just include a load of common headers anyway
# include "wx/wx.h"
#endif
#define ATLASDLLIMPEXP __declspec(dllexport)

View File

@ -1,3 +1,18 @@
Colour tester:
* Display DDS info (compression, size)
==============================
Actor editor:
* Fix new actor fields
==============================
General and/or unsorted miscellany:
* Regression testing
* Open actors from prop-actor selection