223 lines
8.3 KiB
ObjectPascal
223 lines
8.3 KiB
ObjectPascal
|
{
|
||
|
Apophysis Copyright (C) 2001-2004 Mark Townsend
|
||
|
Apophysis Copyright (C) 2005-2006 Ronald Hordijk, Piotr Borys, Peter Sdobnov
|
||
|
Apophysis "3D hack" Copyright (C) 2007-2008 Peter Sdobnov
|
||
|
|
||
|
This program is free software; you can redistribute it and/or modify
|
||
|
it under the terms of the GNU General Public License as published by
|
||
|
the Free Software Foundation; either version 2 of the License, or
|
||
|
(at your option) any later version.
|
||
|
|
||
|
This program is distributed in the hope that it will be useful,
|
||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||
|
GNU General Public License for more details.
|
||
|
|
||
|
You should have received a copy of the GNU General Public License
|
||
|
along with this program; if not, write to the Free Software
|
||
|
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||
|
}
|
||
|
program Apophysis7X;
|
||
|
|
||
|
{%ToDo 'Assets\Apophysis7X.todo'}
|
||
|
{$R 'Resources\Apophysis7X.res'}
|
||
|
{$SetPEFlags $20}
|
||
|
|
||
|
{$ifdef VER240}
|
||
|
// we need to update TMS Scripter to the XE3 version...
|
||
|
{$ifndef DisableScripting}
|
||
|
{$Define DisableScripting}
|
||
|
{$endif}
|
||
|
{$endif}
|
||
|
|
||
|
uses
|
||
|
|
||
|
{-- BASIC --}
|
||
|
FastMM4 in 'System\FastMM4.pas',
|
||
|
FastMM4Messages in 'System\FastMM4Messages.pas',
|
||
|
Forms, Dialogs, SysUtils,
|
||
|
Binary in 'IO\Binary.pas',
|
||
|
Base64 in 'IO\Base64.pas',
|
||
|
sdStringTable in 'System\sdStringTable.pas',
|
||
|
CustomDrawControl in 'System\CustomDrawControl.pas',
|
||
|
LibXmlComps in 'System\LibXmlComps.pas',
|
||
|
LibXmlParser in 'System\LibXmlParser.pas',
|
||
|
Windows7 in 'System\Windows7.pas',
|
||
|
RegexHelper in 'System\RegexHelper.pas',
|
||
|
CurvesControl in 'System\CurvesControl.pas',
|
||
|
|
||
|
{$ifdef Apo7X64}
|
||
|
// if on x64, we don't use assembler
|
||
|
{$else}
|
||
|
AsmRandom in 'System\AsmRandom.pas',
|
||
|
{$endif}
|
||
|
|
||
|
{-- CORE --}
|
||
|
Global in 'Core\Global.pas',
|
||
|
CommandLine in 'IO\CommandLine.pas',
|
||
|
MissingPlugin in 'IO\MissingPlugin.pas',
|
||
|
Settings in 'IO\Settings.pas',
|
||
|
Translation in 'Core\Translation.pas',
|
||
|
ParameterIO in 'IO\ParameterIO.pas',
|
||
|
Bezier in 'Core\Bezier.pas',
|
||
|
|
||
|
{-- FLAME --}
|
||
|
RndFlame in 'Flame\RndFlame.pas',
|
||
|
ControlPoint in 'Flame\ControlPoint.pas',
|
||
|
cmapdata in 'ColorMap\cmapdata.pas',
|
||
|
cmap in 'ColorMap\cmap.pas',
|
||
|
GradientHlpr in 'ColorMap\GradientHlpr.pas',
|
||
|
XFormMan in 'Core\XFormMan.pas',
|
||
|
XForm in 'Flame\XForm.pas',
|
||
|
BaseVariation in 'Core\BaseVariation.pas',
|
||
|
|
||
|
{-- RENDERER --}
|
||
|
RenderingCommon in 'Rendering\RenderingCommon.pas',
|
||
|
RenderingInterface in 'Rendering\RenderingInterface.pas',
|
||
|
RenderingImplementation in 'Rendering\RenderingImplementation.pas',
|
||
|
BucketFillerThread in 'Rendering\BucketFillerThread.pas',
|
||
|
RenderThread in 'Rendering\RenderThread.pas',
|
||
|
ImageMaker in 'Rendering\ImageMaker.pas',
|
||
|
|
||
|
{-- VARIATIONS --}
|
||
|
varHemisphere in 'Variations\varHemisphere.pas',
|
||
|
varLog in 'Variations\varLog.pas',
|
||
|
varPolar2 in 'Variations\varPolar2.pas',
|
||
|
varRings2 in 'Variations\varRings2.pas',
|
||
|
varFan2 in 'Variations\varFan2.pas',
|
||
|
varCross in 'Variations\varCross.pas',
|
||
|
varWedge in 'Variations\varWedge.pas',
|
||
|
varEpispiral in 'Variations\varEpispiral.pas',
|
||
|
varBwraps in 'Variations\varBwraps.pas',
|
||
|
varPDJ in 'Variations\varPDJ.pas',
|
||
|
varJuliaN in 'Variations\varJuliaN.pas',
|
||
|
varJuliaScope in 'Variations\varJuliaScope.pas',
|
||
|
varJulia3Djf in 'Variations\varJulia3Djf.pas',
|
||
|
varJulia3Dz in 'Variations\varJulia3Dz.pas',
|
||
|
varCurl in 'Variations\varCurl.pas',
|
||
|
varCurl3D in 'Variations\varCurl3D.pas',
|
||
|
varRadialBlur in 'Variations\varRadialBlur.pas',
|
||
|
varBlurCircle in 'Variations\varBlurCircle.pas',
|
||
|
varBlurZoom in 'Variations\varBlurZoom.pas',
|
||
|
varBlurPixelize in 'Variations\varBlurPixelize.pas',
|
||
|
varFalloff2 in 'Variations\varFalloff2.pas',
|
||
|
varRectangles in 'Variations\varRectangles.pas',
|
||
|
varSplits in 'Variations\varSplits.pas',
|
||
|
varSeparation in 'Variations\varSeparation.pas',
|
||
|
varBipolar in 'Variations\varBipolar.pas',
|
||
|
varLoonie in 'Variations\varLoonie.pas',
|
||
|
varEscher in 'Variations\varEscher.pas',
|
||
|
varScry in 'Variations\varScry.pas',
|
||
|
varNGon in 'Variations\varNGon.pas',
|
||
|
varFoci in 'Variations\varFoci.pas',
|
||
|
varLazysusan in 'Variations\varLazysusan.pas',
|
||
|
varMobius in 'Variations\varMobius.pas',
|
||
|
varCrop in 'Variations\varCrop.pas',
|
||
|
// circlecrop
|
||
|
varElliptic in 'Variations\varElliptic.pas',
|
||
|
varWaves2 in 'Variations\varWaves2.pas',
|
||
|
varAuger in 'Variations\varAuger.pas',
|
||
|
// glynnsim2
|
||
|
// flux
|
||
|
// boarders2
|
||
|
varPreSpherical in 'Variations\varPreSpherical.pas',
|
||
|
varPreSinusoidal in 'Variations\varPreSinusoidal.pas',
|
||
|
varPreDisc in 'Variations\varPreDisc.pas',
|
||
|
// pre_boarders2
|
||
|
varPreBwraps in 'Variations\varPreBwraps.pas',
|
||
|
varPreCrop in 'Variations\varPreCrop.pas',
|
||
|
// pre_circlecrop
|
||
|
varPreFalloff2 in 'Variations\varPreFalloff2.pas',
|
||
|
// post_boarders2
|
||
|
varPostBwraps in 'Variations\varPostBwraps.pas',
|
||
|
varPostCurl in 'Variations\varPostCurl.pas',
|
||
|
varPostCurl3D in 'Variations\varPostCurl3D.pas',
|
||
|
varPostCrop in 'Variations\varPostCrop.pas',
|
||
|
// post_circlecrop
|
||
|
varPostFalloff2 in 'Variations\varPostFalloff2.pas',
|
||
|
varGenericPlugin in 'Variations\varGenericPlugin.pas',
|
||
|
|
||
|
{-- GUI --}
|
||
|
Main in 'Forms\Main.pas' {MainForm},
|
||
|
Tracer in 'Forms\Tracer.pas' {TraceForm},
|
||
|
About in 'Forms\About.pas' {AboutForm},
|
||
|
Adjust in 'Forms\Adjust.pas' {AdjustForm},
|
||
|
Browser in 'Forms\Browser.pas' {GradientBrowser},
|
||
|
Editor in 'Forms\Editor.pas' {EditForm},
|
||
|
FormExport in 'Forms\FormExport.pas' {ExportDialog},
|
||
|
formPostProcess in 'Forms\formPostProcess.pas' {frmPostProcess},
|
||
|
FormRender in 'Forms\FormRender.pas' {RenderForm},
|
||
|
Fullscreen in 'Forms\Fullscreen.pas' {FullscreenForm},
|
||
|
ImageColoring in 'Forms\ImageColoring.pas' {frmImageColoring},
|
||
|
LoadTracker in 'Forms\LoadTracker.pas' {LoadForm},
|
||
|
Mutate in 'Forms\Mutate.pas' {MutateForm},
|
||
|
Options in 'Forms\Options.pas' {OptionsForm},
|
||
|
Save in 'Forms\Save.pas' {SaveForm},
|
||
|
SavePreset in 'Forms\SavePreset.pas' {SavePresetForm},
|
||
|
SplashForm in 'Forms\SplashForm.pas' {SplashWindow},
|
||
|
Template in 'Forms\Template.pas' {TemplateForm},
|
||
|
Curves in 'Forms\Curves.pas' {CurvesForm}
|
||
|
|
||
|
{$ifdef DisableScripting};
|
||
|
// if scripting is disabled, don't import the scripting form units
|
||
|
{$else},
|
||
|
Preview in 'Forms\Preview.pas' {PreviewForm},
|
||
|
FormFavorites in 'Forms\FormFavorites.pas' {FavoritesForm},
|
||
|
ScriptForm in 'Forms\ScriptForm.pas' {ScriptEditor},
|
||
|
ScriptRender in 'Forms\ScriptRender.pas'; {ScriptRenderForm}
|
||
|
{$endif}
|
||
|
|
||
|
begin
|
||
|
InitializePlugins;
|
||
|
|
||
|
SplashWindow := TSplashWindow.Create(Application);
|
||
|
SplashWindow.Show;
|
||
|
|
||
|
Application.Initialize;
|
||
|
SplashWindow.Update;
|
||
|
|
||
|
{$ifdef Apo7X64}
|
||
|
Application.Title := 'Apophysis 7x (32 bit)';
|
||
|
{$else}
|
||
|
Application.Title := 'Apophysis 7x (64 bit)';
|
||
|
{$endif}
|
||
|
Application.HelpFile := 'Apophysis7x.chm';
|
||
|
Application.CreateForm(TMainForm, MainForm);
|
||
|
Application.CreateForm(TTraceForm, TraceForm);
|
||
|
Application.CreateForm(TAboutForm, AboutForm);
|
||
|
Application.CreateForm(TAdjustForm, AdjustForm);
|
||
|
Application.CreateForm(TGradientBrowser, GradientBrowser);
|
||
|
Application.CreateForm(TEditForm, EditForm);
|
||
|
Application.CreateForm(TExportDialog, ExportDialog);
|
||
|
Application.CreateForm(TfrmPostProcess, frmPostProcess);
|
||
|
Application.CreateForm(TRenderForm, RenderForm);
|
||
|
Application.CreateForm(TFullscreenForm, FullscreenForm);
|
||
|
Application.CreateForm(TfrmImageColoring, frmImageColoring);
|
||
|
Application.CreateForm(TLoadForm, LoadForm);
|
||
|
Application.CreateForm(TMutateForm, MutateForm);
|
||
|
Application.CreateForm(TOptionsForm, OptionsForm);
|
||
|
Application.CreateForm(TSaveForm, SaveForm);
|
||
|
Application.CreateForm(TSavePresetForm, SavePresetForm);
|
||
|
Application.CreateForm(TTemplateForm, TemplateForm);
|
||
|
Application.CreateForm(TCurvesForm, CurvesForm);
|
||
|
|
||
|
{$ifdef DisableScripting}
|
||
|
// if scripting is disabled, don't create the scripting forms
|
||
|
{$else}
|
||
|
Application.CreateForm(TPreviewForm, PreviewForm);
|
||
|
Application.CreateForm(TFavoritesForm, FavoritesForm);
|
||
|
Application.CreateForm(TScriptEditor, ScriptEditor);
|
||
|
Application.CreateForm(TScriptRenderForm, ScriptRenderForm);
|
||
|
{$endif}
|
||
|
|
||
|
Application.UpdateFormatSettings := False;
|
||
|
{$ifdef VER240}
|
||
|
FormatSettings.DecimalSeparator := '.';
|
||
|
{$else}
|
||
|
DecimalSeparator := '.';
|
||
|
{$endif}
|
||
|
Application.Run;
|
||
|
end.
|
||
|
|
||
|
|