Kaynağa Gözat

* Wasm version of demo

Michaël Van Canneyt 1 yıl önce
ebeveyn
işleme
356b68dac3

+ 107 - 0
demo/ButtonGenerator/WasmButtonGenerator.lpi

@@ -0,0 +1,107 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<CONFIG>
+  <ProjectOptions>
+    <Version Value="12"/>
+    <General>
+      <Flags>
+        <MainUnitHasCreateFormStatements Value="False"/>
+        <MainUnitHasTitleStatement Value="False"/>
+        <MainUnitHasScaledStatement Value="False"/>
+      </Flags>
+      <SessionStorage Value="InProjectDir"/>
+      <Title Value="Webassembly Button Generator demo"/>
+      <UseAppBundle Value="False"/>
+      <ResourceType Value="res"/>
+    </General>
+    <BuildModes>
+      <Item Name="Default" Default="True"/>
+      <Item Name="Wasm">
+        <CompilerOptions>
+          <Version Value="11"/>
+          <Target>
+            <Filename Value="WasmButtonGenerator.wasm"/>
+          </Target>
+          <SearchPaths>
+            <IncludeFiles Value="$(ProjOutDir)"/>
+            <UnitOutputDirectory Value="lib/$(TargetCPU)-$(TargetOS)"/>
+          </SearchPaths>
+          <CodeGeneration>
+            <TargetCPU Value="wasm32"/>
+            <TargetOS Value="wasi"/>
+            <Subtarget Value="browser"/>
+          </CodeGeneration>
+          <Linking>
+            <Debugging>
+              <GenerateDebugInfo Value="False"/>
+            </Debugging>
+            <Options>
+              <ExecutableType Value="Library"/>
+            </Options>
+          </Linking>
+        </CompilerOptions>
+      </Item>
+    </BuildModes>
+    <PublishOptions>
+      <Version Value="2"/>
+      <UseFileFilters Value="True"/>
+    </PublishOptions>
+    <RunParams>
+      <FormatVersion Value="2"/>
+    </RunParams>
+    <RequiredPackages>
+      <Item>
+        <PackageName Value="fresnelwasm"/>
+      </Item>
+      <Item>
+        <PackageName Value="FresnelBase"/>
+      </Item>
+    </RequiredPackages>
+    <Units>
+      <Unit>
+        <Filename Value="WasmButtonGenerator.lpr"/>
+        <IsPartOfProject Value="True"/>
+      </Unit>
+      <Unit>
+        <Filename Value="form.main.pp"/>
+        <IsPartOfProject Value="True"/>
+      </Unit>
+    </Units>
+  </ProjectOptions>
+  <CompilerOptions>
+    <Version Value="11"/>
+    <Target>
+      <Filename Value="basic"/>
+    </Target>
+    <SearchPaths>
+      <IncludeFiles Value="$(ProjOutDir)"/>
+      <OtherUnitFiles Value="../Slider;../CheckBox"/>
+      <UnitOutputDirectory Value="lib/$(TargetCPU)-$(TargetOS)"/>
+    </SearchPaths>
+    <CodeGeneration>
+      <TargetCPU Value="wasm32"/>
+      <TargetOS Value="wasi"/>
+      <Subtarget Value="browser"/>
+    </CodeGeneration>
+    <Linking>
+      <Debugging>
+        <GenerateDebugInfo Value="False"/>
+      </Debugging>
+      <Options>
+        <ExecutableType Value="Library"/>
+      </Options>
+    </Linking>
+  </CompilerOptions>
+  <Debugging>
+    <Exceptions>
+      <Item>
+        <Name Value="EAbort"/>
+      </Item>
+      <Item>
+        <Name Value="ECodetoolError"/>
+      </Item>
+      <Item>
+        <Name Value="EFOpenError"/>
+      </Item>
+    </Exceptions>
+  </Debugging>
+</CONFIG>

+ 18 - 0
demo/ButtonGenerator/WasmButtonGenerator.lpr

@@ -0,0 +1,18 @@
+library WasmButtonGenerator;
+
+{$mode objfpc}{$H+}
+
+uses
+  nothreads,
+  Fresnel.Forms,
+  form.main, fresnel.wasm.api, DemoSlider, DemoCheckBox, DemoButtonGenerator,
+  fresnel.wasm.app;
+
+
+begin
+//  Application.HookFresnelLog:=True;
+  Application.Initialize;
+  Application.CreateFormNew(TFresnelForm1, FresnelForm1);
+  Application.Run;
+end.
+

+ 42 - 0
demo/ButtonGenerator/form.main.pp

@@ -0,0 +1,42 @@
+unit form.main;
+
+{$mode objfpc}{$H+}
+
+interface
+
+uses
+  Classes, SysUtils, Fresnel.Forms, Fresnel.DOM, Fresnel.Controls,
+  DemoButtonGenerator;
+
+type
+
+  { TFresnelForm1 }
+
+  TFresnelForm1 = class(TFresnelForm)
+  public
+    constructor createNew(aOwner : TComponent); override;
+  end;
+
+var
+  FresnelForm1: TFresnelForm1;
+
+implementation
+
+
+{ TFresnelForm1 }
+
+constructor TFresnelForm1.createNew(aOwner : TComponent);
+var
+  ButtonGenerator: TDemoButtonGenerator;
+begin
+  Inherited;
+  Stylesheet.Add(TDemoButtonGenerator.cStyle);
+  ButtonGenerator:=TDemoButtonGenerator.Create(Self);
+  with ButtonGenerator do begin
+    Name:='ButtonGenerator';
+    Parent:=Self;
+  end;
+end;
+
+end.
+