Achieve TextEditor demo before colorizing is introduced again.

This commit is contained in:
vczh
2025-09-22 06:43:28 -07:00
parent 8116ea3717
commit 3141248f4b
35 changed files with 0 additions and 5507 deletions

View File

@@ -9,8 +9,6 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Lib", "Lib", "{739DADD1-5B9
EndProject EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "GacUILite", "..\Lib\GacUILite\GacUILite.vcxproj", "{96C559CA-9718-4BEC-A053-28A0AB6A8CA2}" Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "GacUILite", "..\Lib\GacUILite\GacUILite.vcxproj", "{96C559CA-9718-4BEC-A053-28A0AB6A8CA2}"
EndProject EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "TextEditor", "TextEditor\TextEditor.vcxproj", "{66069A5E-F697-42E2-8D9E-7D6E82019838}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ColorPicker", "ColorPicker\ColorPicker.vcxproj", "{FBBBA8BF-96A4-4096-8204-A92571100F0E}" Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ColorPicker", "ColorPicker\ColorPicker.vcxproj", "{FBBBA8BF-96A4-4096-8204-A92571100F0E}"
EndProject EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "AddressBook", "AddressBook\AddressBook.vcxproj", "{7F92FCD2-8A1E-4C73-9949-91555BEF3832}" Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "AddressBook", "AddressBook\AddressBook.vcxproj", "{7F92FCD2-8A1E-4C73-9949-91555BEF3832}"
@@ -71,14 +69,6 @@ Global
{96C559CA-9718-4BEC-A053-28A0AB6A8CA2}.Release|Win32.Build.0 = Release|Win32 {96C559CA-9718-4BEC-A053-28A0AB6A8CA2}.Release|Win32.Build.0 = Release|Win32
{96C559CA-9718-4BEC-A053-28A0AB6A8CA2}.Release|x64.ActiveCfg = Release|x64 {96C559CA-9718-4BEC-A053-28A0AB6A8CA2}.Release|x64.ActiveCfg = Release|x64
{96C559CA-9718-4BEC-A053-28A0AB6A8CA2}.Release|x64.Build.0 = Release|x64 {96C559CA-9718-4BEC-A053-28A0AB6A8CA2}.Release|x64.Build.0 = Release|x64
{66069A5E-F697-42E2-8D9E-7D6E82019838}.Debug|Win32.ActiveCfg = Debug|Win32
{66069A5E-F697-42E2-8D9E-7D6E82019838}.Debug|Win32.Build.0 = Debug|Win32
{66069A5E-F697-42E2-8D9E-7D6E82019838}.Debug|x64.ActiveCfg = Debug|x64
{66069A5E-F697-42E2-8D9E-7D6E82019838}.Debug|x64.Build.0 = Debug|x64
{66069A5E-F697-42E2-8D9E-7D6E82019838}.Release|Win32.ActiveCfg = Release|Win32
{66069A5E-F697-42E2-8D9E-7D6E82019838}.Release|Win32.Build.0 = Release|Win32
{66069A5E-F697-42E2-8D9E-7D6E82019838}.Release|x64.ActiveCfg = Release|x64
{66069A5E-F697-42E2-8D9E-7D6E82019838}.Release|x64.Build.0 = Release|x64
{FBBBA8BF-96A4-4096-8204-A92571100F0E}.Debug|Win32.ActiveCfg = Debug|Win32 {FBBBA8BF-96A4-4096-8204-A92571100F0E}.Debug|Win32.ActiveCfg = Debug|Win32
{FBBBA8BF-96A4-4096-8204-A92571100F0E}.Debug|Win32.Build.0 = Debug|Win32 {FBBBA8BF-96A4-4096-8204-A92571100F0E}.Debug|Win32.Build.0 = Debug|Win32
{FBBBA8BF-96A4-4096-8204-A92571100F0E}.Debug|x64.ActiveCfg = Debug|x64 {FBBBA8BF-96A4-4096-8204-A92571100F0E}.Debug|x64.ActiveCfg = Debug|x64

Binary file not shown.

View File

@@ -1,116 +0,0 @@
#define GAC_HEADER_USE_NAMESPACE
#include "UI/Source/Demo.h"
#ifdef VCZH_MSVC
#include <Windows.h>
#endif
using namespace vl::collections;
using namespace vl::stream;
#pragma comment(linker,"\"/manifestdependency:type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='*' publicKeyToken='6595b64144ccf1df' language='*'\"")
void GuiMain()
{
{
FileStream fileStream(L"../UIRes/TextEditor.bin", FileStream::ReadOnly);
GetResourceManager()->LoadResourceOrPending(fileStream);
}
demo::MainWindow window;
window.MoveToScreenCenter();
GetApplication()->Run(&window);
}
/***********************************************************************
OpenUrl
***********************************************************************/
void OpenUrl(const WString& url)
{
#ifdef VCZH_MSVC
ShellExecute(NULL, L"OPEN", url.Buffer(), NULL, NULL, SW_MAXIMIZE);
#endif
}
/***********************************************************************
SetTokenizer
***********************************************************************/
class XmlColorizer : public GuiTextBoxRegexColorizer
{
public:
XmlColorizer()
{
text::ColorEntry entry;
entry.normal.text = Color(255, 255, 255);
entry.normal.background = Color(0, 0, 0, 0);
entry.selectedFocused.text = Color(255, 255, 255);
entry.selectedFocused.background = Color(0, 122, 204);
entry.selectedUnfocused.text = Color(255, 255, 255);
entry.selectedUnfocused.background = Color(0, 122, 204);
SetDefaultColor(entry);
entry.normal.text = Color(0, 128, 0);
AddToken(L"/<!--([^/-]|-[^/-]|--[^>])*--/>", entry);
entry.normal.text = Color(128, 0, 255);
AddToken(L"/<!/[CDATA/[([^/]]|/][^/]]|/]/][^>])*/]/]/>", entry);
entry.normal.text = Color(255, 255, 255);
AddToken(L"\"[^\"]*\"", entry);
entry.normal.text = Color(0, 0, 255);
AddToken(L"[<>=]", entry);
entry.normal.text = Color(255, 0, 0);
AddToken(L"[a-zA-Z0-9_/-:]+", entry);
entry.normal.text = Color(163, 21, 21);
AddExtraToken(entry);
Setup();
}
void ColorizeTokenContextSensitive(vint lineIndex, const wchar_t* text, vint start, vint length, vint& token, vint& contextState)override
{
// 0 < 1 name 2 att > 0
switch (token)
{
case 3:
if (length == 1)
{
switch (text[start])
{
case '<':
contextState = 1;
break;
case '>':
contextState = 0;
break;
}
}
break;
case 4:
switch (contextState)
{
case 0:
token = -1;
break;
case 1:
token = 5;
contextState = 2;
break;
}
break;
}
}
vint GetContextStartState()override
{
return 0;
}
};
void SetColorizer(GuiMultilineTextBox* textBox, bool forXml)
{
textBox->SetColorizer(forXml ? Ptr(new XmlColorizer) : nullptr);
}

View File

@@ -1,203 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Debug|x64">
<Configuration>Debug</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|x64">
<Configuration>Release</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{66069A5E-F697-42E2-8D9E-7D6E82019838}</ProjectGuid>
<Keyword>Win32Proj</Keyword>
<RootNamespace>TextEditor</RootNamespace>
<WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<PlatformToolset>v143</PlatformToolset>
<CharacterSet>Unicode</CharacterSet>
<PreferredToolArchitecture>x64</PreferredToolArchitecture>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<PlatformToolset>v143</PlatformToolset>
<CharacterSet>Unicode</CharacterSet>
<PreferredToolArchitecture>x64</PreferredToolArchitecture>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<PlatformToolset>v143</PlatformToolset>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>Unicode</CharacterSet>
<PreferredToolArchitecture>x64</PreferredToolArchitecture>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<PlatformToolset>v143</PlatformToolset>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>Unicode</CharacterSet>
<PreferredToolArchitecture>x64</PreferredToolArchitecture>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<LinkIncremental>true</LinkIncremental>
<IncludePath>$(ProjectDir)..\..\..\Import;$(IncludePath)</IncludePath>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<LinkIncremental>true</LinkIncremental>
<IncludePath>$(ProjectDir)..\..\..\Import;$(IncludePath)</IncludePath>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<LinkIncremental>false</LinkIncremental>
<IncludePath>$(ProjectDir)..\..\..\Import;$(IncludePath)</IncludePath>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<LinkIncremental>false</LinkIncremental>
<IncludePath>$(ProjectDir)..\..\..\Import;$(IncludePath)</IncludePath>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<Optimization>Disabled</Optimization>
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;%(PreprocessorDefinitions);VCZH_DEBUG_NO_REFLECTION</PreprocessorDefinitions>
<SDLCheck>true</SDLCheck>
<LanguageStandard>stdcpp20</LanguageStandard>
</ClCompile>
<Link>
<SubSystem>Windows</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<ClCompile>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<Optimization>Disabled</Optimization>
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;%(PreprocessorDefinitions);VCZH_DEBUG_NO_REFLECTION</PreprocessorDefinitions>
<SDLCheck>true</SDLCheck>
<LanguageStandard>stdcpp20</LanguageStandard>
</ClCompile>
<Link>
<SubSystem>Windows</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<WarningLevel>Level3</WarningLevel>
<PrecompiledHeader>
</PrecompiledHeader>
<Optimization>MaxSpeed</Optimization>
<FunctionLevelLinking>true</FunctionLevelLinking>
<IntrinsicFunctions>true</IntrinsicFunctions>
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;%(PreprocessorDefinitions);VCZH_DEBUG_NO_REFLECTION</PreprocessorDefinitions>
<SDLCheck>true</SDLCheck>
<LanguageStandard>stdcpp20</LanguageStandard>
</ClCompile>
<Link>
<SubSystem>Windows</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<OptimizeReferences>true</OptimizeReferences>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<ClCompile>
<WarningLevel>Level3</WarningLevel>
<PrecompiledHeader>
</PrecompiledHeader>
<Optimization>MaxSpeed</Optimization>
<FunctionLevelLinking>true</FunctionLevelLinking>
<IntrinsicFunctions>true</IntrinsicFunctions>
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;%(PreprocessorDefinitions);VCZH_DEBUG_NO_REFLECTION</PreprocessorDefinitions>
<SDLCheck>true</SDLCheck>
<LanguageStandard>stdcpp20</LanguageStandard>
</ClCompile>
<Link>
<SubSystem>Windows</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<OptimizeReferences>true</OptimizeReferences>
</Link>
</ItemDefinitionGroup>
<ItemGroup>
<ClCompile Include="Main.cpp" />
<ClCompile Include="UI\Source\AboutWindow.cpp" />
<ClCompile Include="UI\Source\DemoPartialClasses.cpp" />
<ClCompile Include="UI\Source\FindWindow.cpp" />
<ClCompile Include="UI\Source\MainWindow.cpp" />
</ItemGroup>
<ItemGroup>
<Xml Include="UI\AboutWindow.xml" />
<Xml Include="UI\FindWindow.xml" />
<Xml Include="UI\Images\Folder.xml" />
<Xml Include="UI\MainWindow.xml" />
<Xml Include="UI\Resource.xml" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="UI\Source\AboutWindow.h" />
<ClInclude Include="UI\Source\Demo.h" />
<ClInclude Include="UI\Source\DemoPartialClasses.h" />
<ClInclude Include="UI\Source\FindWindow.h" />
<ClInclude Include="UI\Source\MainWindow.h" />
<ClInclude Include="Utilities.h" />
</ItemGroup>
<ItemGroup>
<Image Include="UI\Images\EditCopy.png" />
<Image Include="UI\Images\EditCut.png" />
<Image Include="UI\Images\EditDelete.png" />
<Image Include="UI\Images\EditFind.png" />
<Image Include="UI\Images\EditPaste.png" />
<Image Include="UI\Images\EditRedo.png" />
<Image Include="UI\Images\EditUndo.png" />
<Image Include="UI\Images\New.png" />
<Image Include="UI\Images\NewText.png" />
<Image Include="UI\Images\NewXml.png" />
<Image Include="UI\Images\Open.png" />
<Image Include="UI\Images\Save.png" />
<Image Include="UI\Images\SaveAs.png" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\..\Lib\GacUILite\GacUILite.vcxproj">
<Project>{96c559ca-9718-4bec-a053-28a0ab6a8ca2}</Project>
</ProjectReference>
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>

View File

@@ -1,118 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Source Files">
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter>
<Filter Include="Header Files">
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
<Extensions>h;hh;hpp;hxx;hm;inl;inc;xsd</Extensions>
</Filter>
<Filter Include="Resource Files">
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
</Filter>
<Filter Include="UI">
<UniqueIdentifier>{da083a3e-40d5-4084-9b00-ea95886358e4}</UniqueIdentifier>
</Filter>
<Filter Include="Resource Files\Images">
<UniqueIdentifier>{08c7de64-704d-4f99-8f25-512fdc4620ec}</UniqueIdentifier>
</Filter>
</ItemGroup>
<ItemGroup>
<ClCompile Include="Main.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="UI\Source\DemoPartialClasses.cpp">
<Filter>UI</Filter>
</ClCompile>
<ClCompile Include="UI\Source\MainWindow.cpp">
<Filter>UI</Filter>
</ClCompile>
<ClCompile Include="UI\Source\AboutWindow.cpp">
<Filter>UI</Filter>
</ClCompile>
<ClCompile Include="UI\Source\FindWindow.cpp">
<Filter>UI</Filter>
</ClCompile>
</ItemGroup>
<ItemGroup>
<Xml Include="UI\Resource.xml">
<Filter>Resource Files</Filter>
</Xml>
<Xml Include="UI\Images\Folder.xml">
<Filter>Resource Files\Images</Filter>
</Xml>
<Xml Include="UI\AboutWindow.xml">
<Filter>Resource Files</Filter>
</Xml>
<Xml Include="UI\MainWindow.xml">
<Filter>Resource Files</Filter>
</Xml>
<Xml Include="UI\FindWindow.xml">
<Filter>Resource Files</Filter>
</Xml>
</ItemGroup>
<ItemGroup>
<ClInclude Include="UI\Source\DemoPartialClasses.h">
<Filter>UI</Filter>
</ClInclude>
<ClInclude Include="UI\Source\Demo.h">
<Filter>UI</Filter>
</ClInclude>
<ClInclude Include="UI\Source\MainWindow.h">
<Filter>UI</Filter>
</ClInclude>
<ClInclude Include="UI\Source\AboutWindow.h">
<Filter>UI</Filter>
</ClInclude>
<ClInclude Include="Utilities.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="UI\Source\FindWindow.h">
<Filter>UI</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
<Image Include="UI\Images\EditCopy.png">
<Filter>Resource Files\Images</Filter>
</Image>
<Image Include="UI\Images\EditCut.png">
<Filter>Resource Files\Images</Filter>
</Image>
<Image Include="UI\Images\EditDelete.png">
<Filter>Resource Files\Images</Filter>
</Image>
<Image Include="UI\Images\EditFind.png">
<Filter>Resource Files\Images</Filter>
</Image>
<Image Include="UI\Images\EditPaste.png">
<Filter>Resource Files\Images</Filter>
</Image>
<Image Include="UI\Images\EditRedo.png">
<Filter>Resource Files\Images</Filter>
</Image>
<Image Include="UI\Images\EditUndo.png">
<Filter>Resource Files\Images</Filter>
</Image>
<Image Include="UI\Images\New.png">
<Filter>Resource Files\Images</Filter>
</Image>
<Image Include="UI\Images\NewText.png">
<Filter>Resource Files\Images</Filter>
</Image>
<Image Include="UI\Images\NewXml.png">
<Filter>Resource Files\Images</Filter>
</Image>
<Image Include="UI\Images\Open.png">
<Filter>Resource Files\Images</Filter>
</Image>
<Image Include="UI\Images\Save.png">
<Filter>Resource Files\Images</Filter>
</Image>
<Image Include="UI\Images\SaveAs.png">
<Filter>Resource Files\Images</Filter>
</Image>
</ItemGroup>
</Project>

View File

@@ -1,75 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Folder>
<Image content="File">..\..\..\GacUI_Layout\RichTextEmbedding\UI\Gaclib.png</Image>
<Doc name="Description">
<Doc>
<Content>
<p align="Center">
<div style="Title">
<b>TextEditor by GacUI</b>
</div>
</p>
<p>
<div style="Body">
<nop>Welcome to the demo!</nop>
</div>
</p>
<p>
<div style="Body">
<b>Author: </b>Zihan Chen (vczh)<br/>
<b>Website: </b><a href="http://www.gaclib.net">http://www.gaclib.net</a><br/>
<b>Github: </b><a href="https://github.com/vczh-libraries/Release">https://github.com/vczh-libraries/Release</a><br/>
</div>
</p>
</Content>
<Styles>
<Style name="Content">
<face>Segoe UI</face>
</Style>
<Style name="Title" parent="Content">
<size>24</size>
<b>true</b>
</Style>
<Style name="Body" parent="Content">
<size>14</size>
</Style>
</Styles>
</Doc>
</Doc>
<Instance name="AboutWindowResource">
<Instance ref.CodeBehind="true" ref.Class="demo::AboutWindow">
<Window ref.Name="self" Text="About TextEditor" ClientSize="x:480 y:360" MaximizedBox="false" MinimizedBox="false" SizeBox="false">
<Table AlignmentToParent="left:0 top:0 right:0 bottom:0" CellPadding="5">
<att.Rows>
<CellOption>composeType:MinSize</CellOption>
<CellOption>composeType:Percentage percentage:1.0</CellOption>
<CellOption>composeType:MinSize</CellOption>
</att.Rows>
<att.Columns>
<CellOption>composeType:Percentage percentage:1.0</CellOption>
<CellOption>composeType:MinSize</CellOption>
<CellOption>composeType:Percentage percentage:1.0</CellOption>
</att.Columns>
<Cell Site="row:0 column:1" PreferredMinSize="x:320 y:128">
<ImageFrameElement Stretch="true" Image-uri="res://AboutWindow/Gaclib.png"/>
</Cell>
<Cell Site="row:1 column:1">
<DocumentLabel ref.Name="documentLabel" Document-uri="res://AboutWindow/Description">
<att.BoundsComposition-set AlignmentToParent="left:0 top:0 right:0 bottom:0"/>
<ev.ActiveHyperlinkExecuted>documentLabel_ActiveHyperlinkExecuted</ev.ActiveHyperlinkExecuted>
</DocumentLabel>
</Cell>
<Cell Site="row:2 column:0 columnSpan:3">
<Button Text="Close" ev.Clicked-eval="self.Close();">
<att.BoundsComposition-set AlignmentToParent="left:-1 top:0 right:0 bottom:0" PreferredMinSize="x:100 y:30"/>
</Button>
</Cell>
</Table>
</Window>
</Instance>
</Instance>
</Folder>

View File

@@ -1,99 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Folder>
<Instance name="FindWindowResource">
<Instance ref.Class="demo::FindWindow" xmlns:x="presentation::controls::GuiSelectableButton::*">
<ref.Members>
<![CDATA[
@cpp:UserImpl
@cpp:Protected
func FindNext(toFind : string, caseSensitive : bool, down : bool) : bool {}
var textBox : MultilineTextBox* = null;
]]>
</ref.Members>
<Window ref.Name="self" Text="Find" ClientSize="x:360 y:150" MinimizedBox="false" MaximizedBox="false">
<att.ContainerComposition-set PreferredMinSize="x:360 y:150"/>
<x:MutexGroupController ref.Name="groupDirection"/>
<MessageDialog ref.Name="dialogContentNotFound"
Input="DisplayOK"
Title-eval="self.Text"
Text="Content not found."
/>
<Table AlignmentToParent="left:0 top:0 right:0 bottom:0" CellPadding="5">
<att.Rows>
<CellOption>composeType:MinSize</CellOption>
<CellOption>composeType:MinSize</CellOption>
<CellOption>composeType:Percentage percentage:1.0</CellOption>
<CellOption>composeType:MinSize</CellOption>
</att.Rows>
<att.Columns>
<CellOption>composeType:MinSize</CellOption>
<CellOption>composeType:Percentage percentage:1.0</CellOption>
<CellOption>composeType:MinSize</CellOption>
<CellOption>composeType:MinSize</CellOption>
</att.Columns>
<Cell Site="row:0 column:0">
<Label Text="To Find:">
<att.BoundsComposition-set AlignmentToParent="left:5 top:5 right:5 bottom:5"/>
</Label>
</Cell>
<Cell Site="row:0 column:1 columnSpan:3">
<SinglelineTextBox ref.Name="textFind">
<att.BoundsComposition-set AlignmentToParent="left:0 top:0 right:0 bottom:0"/>
</SinglelineTextBox>
</Cell>
<Cell Site="row:1 column:0 columnSpan:4">
<Stack Direction="Horizontal" AlignmentToParent="left:5 top:5 right:5 bottom:5" Padding="20" MinSizeLimitation="LimitToElementAndChildren">
<StackItem>
<CheckBox ref.Name="checkCase" Text="Case Sensitive"/>
</StackItem>
<StackItem>
<GroupBox Text="Direction">
<att.BoundsComposition-set AlignmentToParent="left:0 top:0 right:-1 bottom:0"/>
<att.ContainerComposition-set MinSizeLimitation="LimitToElementAndChildren"/>
<Stack Direction="Horizontal" AlignmentToParent="left:5 top:5 right:5 bottom:5" Padding="20" MinSizeLimitation="LimitToElementAndChildren">
<StackItem>
<RadioButton ref.Name="radioUp" Text="Up" GroupController-ref="groupDirection"/>
</StackItem>
<StackItem>
<RadioButton ref.Name="radioDown" Text="Down" GroupController-ref="groupDirection" Selected="true"/>
</StackItem>
</Stack>
</GroupBox>
</StackItem>
</Stack>
</Cell>
<Cell Site="row:3 column:2">
<Button Text="Find Next">
<att.BoundsComposition-set PreferredMinSize="x:100 y:30"/>
<ev.Clicked-eval>
<![CDATA[
{
if (not self.FindNext(textFind.Text, checkCase.Selected, radioDown.Selected))
{
dialogContentNotFound.ShowDialog();
}
}
]]>
</ev.Clicked-eval>
</Button>
</Cell>
<Cell Site="row:3 column:3">
<Button Text="Close">
<att.BoundsComposition-set PreferredMinSize="x:100 y:30"/>
<ev.Clicked-eval>self.Close();</ev.Clicked-eval>
</Button>
</Cell>
</Table>
</Window>
</Instance>
</Instance>
</Folder>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 150 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 379 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 743 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 319 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 275 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 450 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 478 B

View File

@@ -1,16 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Folder>
<Image content="File">New.png</Image>
<Image content="File">NewText.png</Image>
<Image content="File">NewXml.png</Image>
<Image content="File">Open.png</Image>
<Image content="File">Save.png</Image>
<Image content="File">SaveAs.png</Image>
<Image content="File">EditCopy.png</Image>
<Image content="File">EditCut.png</Image>
<Image content="File">EditDelete.png</Image>
<Image content="File">EditFind.png</Image>
<Image content="File">EditPaste.png</Image>
<Image content="File">EditRedo.png</Image>
<Image content="File">EditUndo.png</Image>
</Folder>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 321 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 217 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 291 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 343 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 204 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 236 B

View File

@@ -1,293 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Folder>
<Instance name="MainWindowResource">
<Instance ref.CodeBehind="true" ref.Class="demo::MainWindow">
<ref.Members>
<![CDATA[
@cpp:UserImpl
func CanCloseFile() : bool {}
@cpp:UserImpl
func LoadFile(path : string) : bool {}
@cpp:UserImpl
func OpenFile(filterIndex : int) : bool {}
@cpp:UserImpl
func SaveFile(saveAs : bool) : bool {}
@cpp:UserImpl
func SetupTextConfig() : void {}
@cpp:UserImpl
func SetupXmlConfig() : void {}
@cpp:Protected
var fileName : string = "";
@cpp:Protected
var isXml : bool = false;
@cpp:Protected
var findWindow : GuiWindow^ = null;
@cpp:Protected
var recentFiles : observe ToolstripCommand*[] = {};
@cpp:Protected
func AddRecentFile(path : string) : void
{
for (i in range [0, recentFiles.Count))
{
if (recentFiles[i].Text == path)
{
var existingCommand = recentFiles[i];
recentFiles.RemoveAt(i);
recentFiles.Insert(0, existingCommand);
return;
}
}
if (recentFiles.Count == 10)
{
recentFiles.RemoveAt(9);
}
var command = new ToolstripCommand*();
command.Text = path;
attach(command.Executed, func(sender : GuiGraphicsComposition*, arguments : GuiEventArgs*) : void
{
LoadFile(path);
});
recentFiles.Insert(0, command);
}
]]>
</ref.Members>
<Window ref.Name="self" Text="TextEditor" ClientSize="x:480 y:320" ev.WindowClosing="window_Closing">
<att.ContainerComposition-set PreferredMinSize="x:480 y:320"/>
<ToolstripCommand ref.Name="commandFileNewText" Text="Text File" Image-uri="res://Images/NewText.png">
<ev.Executed>commandFileNewText_Executed</ev.Executed>
</ToolstripCommand>
<ToolstripCommand ref.Name="commandFileNewXml" Text="Xml File" Image-uri="res://Images/NewXml.png">
<ev.Executed>commandFileNewXml_Executed</ev.Executed>
</ToolstripCommand>
<ToolstripCommand ref.Name="commandFileOpen" Text="Open ..." Image-uri="res://Images/Open.png" ShortcutBuilder="Ctrl+O">
<ev.Executed>commandFileOpen_Executed</ev.Executed>
</ToolstripCommand>
<ToolstripCommand ref.Name="commandFileOpenText" Text="Text File ..." Image-uri="res://Images/NewText.png">
<ev.Executed>commandFileOpenText_Executed</ev.Executed>
</ToolstripCommand>
<ToolstripCommand ref.Name="commandFileOpenXml" Text="Xml File ..." Image-uri="res://Images/NewXml.png">
<ev.Executed>commandFileOpenXml_Executed</ev.Executed>
</ToolstripCommand>
<ToolstripCommand ref.Name="commandFileSave" Text="Save" Image-uri="res://Images/Save.png" ShortcutBuilder="Ctrl+S">
<ev.Executed>commandFileSave_Executed</ev.Executed>
</ToolstripCommand>
<ToolstripCommand ref.Name="commandFileSaveAs" Text="Save As ..." Image-uri="res://Images/SaveAs.png">
<ev.Executed>commandFileSaveAs_Executed</ev.Executed>
</ToolstripCommand>
<ToolstripCommand ref.Name="commandFileExit" Text="Exit">
<ev.Executed>commandFileExit_Executed</ev.Executed>
</ToolstripCommand>
<ToolstripCommand ref.Name="commandEditUndo" Text="Undo" Image-uri="res://Images/EditUndo.png" ShortcutBuilder="Ctrl+Z">
<att.Enabled-bind>textBox.observe as _(_.CanUndo() on _.UndoRedoChanged)</att.Enabled-bind>
<ev.Executed>commandEditUndo_Executed</ev.Executed>
</ToolstripCommand>
<ToolstripCommand ref.Name="commandEditRedo" Text="Redo" Image-uri="res://Images/EditRedo.png" ShortcutBuilder="Ctrl+Y">
<att.Enabled-bind>textBox.observe as _(_.CanRedo() on _.UndoRedoChanged)</att.Enabled-bind>
<ev.Executed>commandEditRedo_Executed</ev.Executed>
</ToolstripCommand>
<ToolstripCommand ref.Name="commandEditCut" Text="Cut" Image-uri="res://Images/EditCut.png" ShortcutBuilder="Ctrl+X">
<att.Enabled-bind>textBox.observe as _(_.CanCut() on _.SelectionChanged)</att.Enabled-bind>
<ev.Executed>commandEditCut_Executed</ev.Executed>
</ToolstripCommand>
<ToolstripCommand ref.Name="commandEditCopy" Text="Copy" Image-uri="res://Images/EditCopy.png" ShortcutBuilder="Ctrl+C">
<att.Enabled-bind>textBox.observe as _(_.CanCopy() on _.SelectionChanged)</att.Enabled-bind>
<ev.Executed>commandEditCopy_Executed</ev.Executed>
</ToolstripCommand>
<ToolstripCommand ref.Name="commandEditPaste" Text="Paste" Image-uri="res://Images/EditPaste.png" ShortcutBuilder="Ctrl+V">
<att.Enabled-bind>textBox.observe as _(_.CanPaste() on self.ClipboardUpdated)</att.Enabled-bind>
<ev.Executed>commandEditPaste_Executed</ev.Executed>
</ToolstripCommand>
<ToolstripCommand ref.Name="commandEditDelete" Text="Delete" Image-uri="res://Images/EditDelete.png">
<att.Enabled-bind>textBox.observe as _(_.CanCut() on _.SelectionChanged)</att.Enabled-bind>
<ev.Executed>commandEditDelete_Executed</ev.Executed>
</ToolstripCommand>
<ToolstripCommand ref.Name="commandEditSelect" Text="Select All" ShortcutBuilder="Ctrl+A">
<ev.Executed>commandEditSelect_Executed</ev.Executed>
</ToolstripCommand>
<ToolstripCommand ref.Name="commandEditFind" Text="Find ..." Image-uri="res://Images/EditFind.png" ShortcutBuilder="Ctrl+F">
<ev.Executed>commandEditFind_Executed</ev.Executed>
</ToolstripCommand>
<ToolstripCommand ref.Name="commandAbout" Text="About TextEditor ...">
<ev.Executed>commandAbout_Executed</ev.Executed>
</ToolstripCommand>
<MessageDialog ref.Name="dialogQueryClose"
Input="DisplayYesNoCancel"
Icon="IconQuestion"
Title-eval="self.Text"
Text="Do you want to save this file?"
/>
<MessageDialog ref.Name="dialogCannotOpen"
Input="DisplayOK"
Icon="IconError"
Title-eval="self.Text"
Text="Cannot open the selected file."
/>
<MessageDialog ref.Name="dialogCannotSave"
Input="DisplayOK"
Icon="IconError"
Title-eval="self.Text"
Text="Cannot save the selected file."
/>
<OpenFileDialog ref.Name="dialogOpen"
Filter="Text Files (*.txt)|*.txt|XML Files (*.xml)|*.xml|All Files (*.*)|*.*"
Title-eval="self.Text"
DefaultExtension="txt"
Options="FileDialogFileMustExist|FileDialogDereferenceLinks"
/>
<SaveFileDialog ref.Name="dialogSave"
Filter="Text Files (*.txt)|*.txt|XML Files (*.xml)|*.xml|All Files (*.*)|*.*"
Title-eval="self.Text"
DefaultExtension="txt"
Options="FileDialogPromptCreateFile|FileDialogPromptOverwriteFile|FileDialogDirectoryMustExist|FileDialogAddToRecent"
/>
<Table AlignmentToParent="left:0 top:0 right:0 bottom:0" MinSizeLimitation="LimitToElementAndChildren">
<att.Rows>
<CellOption>composeType:MinSize</CellOption>
<CellOption>composeType:MinSize</CellOption>
<CellOption>composeType:Percentage percentage:1.0</CellOption>
</att.Rows>
<att.Columns>
<CellOption>composeType:Percentage percentage:1.0</CellOption>
</att.Columns>
<Cell Site="row:0 column:0">
<ToolstripMenuBar>
<att.BoundsComposition-set AlignmentToParent="left:0 top:0 right:0 bottom:0"/>
<MenuBarButton Text="File" Alt="F">
<att.SubMenu-set>
<ToolstripGroupContainer>
<ToolstripGroup>
<MenuItemButton Text="New" Alt="N" Image-uri="res://Images/New.png">
<att.SubMenu-set>
<MenuItemButton Command-ref="commandFileNewText" Alt="T"/>
<MenuItemButton Command-ref="commandFileNewXml" Alt="X"/>
</att.SubMenu-set>
</MenuItemButton>
<MenuItemButton Command-ref="commandFileOpen" Alt="O"/>
<MenuItemButton Command-ref="commandFileSave" Alt="S"/>
<MenuItemButton Command-ref="commandFileSaveAs" Alt="A"/>
</ToolstripGroup>
<MenuItemButton Text="Recent Files">
<att.SubMenu-set>
<MenuItemButton Text="(Empty)" Enabled="false" Visible-bind="self.recentFiles.observe as _(_.Count == 0 on _.ItemChanged)" />
<CustomControl Visible-bind="self.recentFiles.observe as _(_.Count != 0 on _.ItemChanged)">
<RepeatStack AlignmentToParent="left:0 top:0 right:0 bottom:0" MinSizeLimitation="LimitToElementAndChildren" Direction="Vertical">
<att.ItemSource-eval>self.recentFiles</att.ItemSource-eval>
<att.ItemTemplate>demo::RecentFileItemTemplate</att.ItemTemplate>
</RepeatStack>
</CustomControl>
</att.SubMenu-set>
</MenuItemButton>
<MenuItemButton Command-ref="commandFileExit" Alt="X"/>
</ToolstripGroupContainer>
</att.SubMenu-set>
</MenuBarButton>
<MenuBarButton Text="Edit" Alt="E">
<att.SubMenu-set>
<ToolstripGroupContainer>
<ToolstripGroup>
<MenuItemButton Command-ref="commandEditUndo" Alt="U"/>
<MenuItemButton Command-ref="commandEditRedo" Alt="R"/>
</ToolstripGroup>
<ToolstripGroup>
<MenuItemButton Command-ref="commandEditCut" Alt="X"/>
<MenuItemButton Command-ref="commandEditCopy" Alt="C"/>
<MenuItemButton Command-ref="commandEditPaste" Alt="V"/>
</ToolstripGroup>
<ToolstripGroup>
<MenuItemButton Command-ref="commandEditDelete" Alt="D"/>
<MenuItemButton Command-ref="commandEditSelect" Alt="A"/>
</ToolstripGroup>
<MenuItemButton Command-ref="commandEditFind" Alt="F"/>
</ToolstripGroupContainer>
</att.SubMenu-set>
</MenuBarButton>
<MenuBarButton Text="Help" Alt="H">
<att.SubMenu-set>
<MenuItemButton Command-ref="commandAbout" Alt="A"/>
</att.SubMenu-set>
</MenuBarButton>
</ToolstripMenuBar>
</Cell>
<Cell Site="row:1 column:0">
<ToolstripToolBar>
<att.BoundsComposition-set AlignmentToParent="left:0 top:0 right:0 bottom:0"/>
<ToolstripGroupContainer>
<ToolstripGroup>
<ToolstripDropdownButton Image-uri="res://Images/New.png" Alt="N">
<att.SubMenu-set>
<MenuItemButton Command-ref="commandFileNewText" Alt="T"/>
<MenuItemButton Command-ref="commandFileNewXml" Alt="X"/>
</att.SubMenu-set>
</ToolstripDropdownButton>
<ToolstripSplitButton Command-ref="commandFileOpen" Alt="O">
<att.SubMenu-set>
<MenuItemButton Command-ref="commandFileOpenText" Alt="T"/>
<MenuItemButton Command-ref="commandFileOpenXml" Alt="X"/>
</att.SubMenu-set>
</ToolstripSplitButton>
</ToolstripGroup>
<ToolstripGroup>
<ToolstripButton Command-ref="commandFileSave" Alt="S"/>
<ToolstripButton Command-ref="commandFileSaveAs" Alt="A"/>
</ToolstripGroup>
<ToolstripGroup>
<ToolstripButton Command-ref="commandEditUndo" Alt="U"/>
<ToolstripButton Command-ref="commandEditRedo" Alt="R"/>
</ToolstripGroup>
<ToolstripGroup>
<ToolstripButton Command-ref="commandEditCut" Alt="X"/>
<ToolstripButton Command-ref="commandEditCopy" Alt="C"/>
<ToolstripButton Command-ref="commandEditPaste" Alt="V"/>
</ToolstripGroup>
<ToolstripButton Command-ref="commandEditDelete" Alt="D"/>
<ToolstripButton Command-ref="commandEditFind" Alt="I"/>
</ToolstripGroupContainer>
</ToolstripToolBar>
</Cell>
<Cell Site="row:2 column:0">
<MultilineTextBox ref.Name="textBox" HorizontalAlwaysVisible="false" VerticalAlwaysVisible="false">
<att.BoundsComposition-set AlignmentToParent="left:0 top:0 right:0 bottom:0"/>
</MultilineTextBox>
</Cell>
</Table>
</Window>
</Instance>
</Instance>
<Instance name="RecentFileItemTemplateResource">
<Instance ref.CodeBehind="false" ref.Class="demo::RecentFileItemTemplate">
<ref.Parameter Name="ViewModel" Class="presentation::controls::GuiToolstripCommand"/>
<ControlTemplate MinSizeLimitation="LimitToElementAndChildren">
<MenuItemButton Command-ref="ViewModel">
<att.BoundsComposition-set AlignmentToParent="left:0 top:0 right:0 bottom:0"/>
</MenuItemButton>
</ControlTemplate>
</Instance>
</Instance>
</Folder>

View File

@@ -1,15 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Resource>
<Folder name="GacGenConfig">
<Folder name="Cpp">
<Text name="SourceFolder">Source</Text>
<Text name="Resource">..\..\UIRes\TextEditor.bin</Text>
<Text name="NormalInclude">../../Utilities.h</Text>
<Text name="Name">Demo</Text>
</Folder>
</Folder>
<Folder name="Images" content="Link">Images\Folder.xml</Folder>
<Folder name="AboutWindow" content="Link">AboutWindow.xml</Folder>
<Folder name="FindWindow" content="Link">FindWindow.xml</Folder>
<Folder name="MainWindow" content="Link">MainWindow.xml</Folder>
</Resource>

View File

@@ -1,71 +0,0 @@
/***********************************************************************
!!!!!! DO NOT MODIFY !!!!!!
GacGen.exe Resource.xml
This file is generated by Workflow compiler
https://github.com/vczh-libraries
***********************************************************************/
#include "Demo.h"
/* CodePack:BeginIgnore() */
#ifndef VCZH_DEBUG_NO_REFLECTION
/* CodePack:ConditionOff(VCZH_DEBUG_NO_REFLECTION, DemoReflection.h) */
#include "DemoReflection.h"
#endif
/* CodePack:EndIgnore() */
#if defined( _MSC_VER)
#pragma warning(push)
#pragma warning(disable:4250)
#elif defined(__clang__)
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wparentheses-equality"
#elif defined(__GNUC__)
#pragma GCC diagnostic push
#endif
#define GLOBAL_SYMBOL ::vl_workflow_global::Demo::
#define GLOBAL_NAME ::vl_workflow_global::Demo::Instance().
#define GLOBAL_OBJ &::vl_workflow_global::Demo::Instance()
/* USER_CONTENT_BEGIN(custom global declarations) */
/* USER_CONTENT_END() */
/***********************************************************************
Class (::demo::AboutWindow)
***********************************************************************/
namespace demo
{
void AboutWindow::documentLabel_ActiveHyperlinkExecuted(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments)
{/* USER_CONTENT_BEGIN(::demo::AboutWindow) */
OpenUrl(documentLabel->GetActiveHyperlinkReference());
}/* USER_CONTENT_END() */
AboutWindow::AboutWindow()
: ::vl::presentation::controls::GuiWindow(::vl::presentation::theme::ThemeName::Window)
{
auto __vwsn_resource_ = ::vl::__vwsn::This(::vl::presentation::GetResourceManager())->GetResourceFromClassName(::vl::WString::Unmanaged(L"demo::AboutWindow"));
auto __vwsn_resolver_ = ::vl::Ptr<::vl::presentation::GuiResourcePathResolver>(new ::vl::presentation::GuiResourcePathResolver(__vwsn_resource_, ::vl::__vwsn::This(__vwsn_resource_.Obj())->GetWorkingDirectory()));
::vl::__vwsn::This(this)->SetResourceResolver(__vwsn_resolver_);
::vl::__vwsn::This(this)->__vwsn_demo_AboutWindow_Initialize(this);
}
AboutWindow::~AboutWindow()
{
this->FinalizeInstanceRecursively(static_cast<::vl::presentation::controls::GuiControlHost*>(this));
}
}
#undef GLOBAL_SYMBOL
#undef GLOBAL_NAME
#undef GLOBAL_OBJ
#if defined( _MSC_VER)
#pragma warning(pop)
#elif defined(__clang__)
#pragma clang diagnostic pop
#elif defined(__GNUC__)
#pragma GCC diagnostic pop
#endif

View File

@@ -1,54 +0,0 @@
/***********************************************************************
!!!!!! DO NOT MODIFY !!!!!!
GacGen.exe Resource.xml
This file is generated by Workflow compiler
https://github.com/vczh-libraries
***********************************************************************/
#ifndef VCZH_WORKFLOW_COMPILER_GENERATED_ABOUTWINDOW
#define VCZH_WORKFLOW_COMPILER_GENERATED_ABOUTWINDOW
#include "DemoPartialClasses.h"
#if defined( _MSC_VER)
#pragma warning(push)
#pragma warning(disable:4250)
#elif defined(__clang__)
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wparentheses-equality"
#elif defined(__GNUC__)
#pragma GCC diagnostic push
#endif
namespace demo
{
class AboutWindow : public ::vl::presentation::controls::GuiWindow, public ::demo::AboutWindowConstructor, public ::vl::reflection::Description<AboutWindow>
{
friend class ::demo::AboutWindowConstructor;
friend struct ::vl_workflow_global::__vwsnf2_Demo_demo_AboutWindowConstructor___vwsn_demo_AboutWindow_Initialize_;
friend struct ::vl_workflow_global::__vwsno1_Demo_demo_AboutWindowConstructor___vwsn_demo_AboutWindow_Initialize_;
#ifdef VCZH_DESCRIPTABLEOBJECT_WITH_METADATA
friend struct ::vl::reflection::description::CustomTypeDescriptorSelector<AboutWindow>;
#endif
protected:
void documentLabel_ActiveHyperlinkExecuted(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments);
public:
AboutWindow();
~AboutWindow();
/* USER_CONTENT_BEGIN(custom members of ::demo::AboutWindow) */
/* USER_CONTENT_END() */
};
}
#if defined( _MSC_VER)
#pragma warning(pop)
#elif defined(__clang__)
#pragma clang diagnostic pop
#elif defined(__GNUC__)
#pragma GCC diagnostic pop
#endif
#endif

View File

@@ -1,18 +0,0 @@
/***********************************************************************
!!!!!! DO NOT MODIFY !!!!!!
GacGen.exe Resource.xml
This file is generated by Workflow compiler
https://github.com/vczh-libraries
***********************************************************************/
#ifndef VCZH_WORKFLOW_COMPILER_GENERATED_DEMO
#define VCZH_WORKFLOW_COMPILER_GENERATED_DEMO
#include "DemoPartialClasses.h"
#include "AboutWindow.h"
#include "FindWindow.h"
#include "MainWindow.h"
#endif

View File

@@ -1,304 +0,0 @@
/***********************************************************************
!!!!!! DO NOT MODIFY !!!!!!
GacGen.exe Resource.xml
This file is generated by Workflow compiler
https://github.com/vczh-libraries
***********************************************************************/
#include "DemoReflection.h"
#if defined( _MSC_VER)
#pragma warning(push)
#pragma warning(disable:4250)
#elif defined(__clang__)
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wparentheses-equality"
#elif defined(__GNUC__)
#pragma GCC diagnostic push
#endif
/***********************************************************************
Reflection
***********************************************************************/
namespace vl
{
namespace reflection
{
namespace description
{
#ifndef VCZH_DEBUG_NO_REFLECTION
IMPL_CPP_TYPE_INFO(demo::AboutWindow)
IMPL_CPP_TYPE_INFO(demo::AboutWindowConstructor)
IMPL_CPP_TYPE_INFO(demo::FindWindow)
IMPL_CPP_TYPE_INFO(demo::FindWindowConstructor)
IMPL_CPP_TYPE_INFO(demo::MainWindow)
IMPL_CPP_TYPE_INFO(demo::MainWindowConstructor)
IMPL_CPP_TYPE_INFO(demo::RecentFileItemTemplate)
IMPL_CPP_TYPE_INFO(demo::RecentFileItemTemplateConstructor)
#ifdef VCZH_DESCRIPTABLEOBJECT_WITH_METADATA
#define _ ,
BEGIN_CLASS_MEMBER(::demo::AboutWindow)
CLASS_MEMBER_BASE(::vl::presentation::controls::GuiWindow)
CLASS_MEMBER_BASE(::demo::AboutWindowConstructor)
CLASS_MEMBER_CONSTRUCTOR(::demo::AboutWindow*(), NO_PARAMETER)
CLASS_MEMBER_METHOD(documentLabel_ActiveHyperlinkExecuted, { L"sender" _ L"arguments" })
END_CLASS_MEMBER(::demo::AboutWindow)
BEGIN_CLASS_MEMBER(::demo::AboutWindowConstructor)
CLASS_MEMBER_BASE(::vl::reflection::DescriptableObject)
CLASS_MEMBER_CONSTRUCTOR(::vl::Ptr<::demo::AboutWindowConstructor>(), NO_PARAMETER)
CLASS_MEMBER_METHOD(__vwsn_demo_AboutWindow_Initialize, { L"__vwsn_this_" })
CLASS_MEMBER_FIELD(__vwsn_precompile_0)
CLASS_MEMBER_FIELD(__vwsn_precompile_1)
CLASS_MEMBER_FIELD(__vwsn_precompile_2)
CLASS_MEMBER_FIELD(__vwsn_precompile_3)
CLASS_MEMBER_FIELD(__vwsn_precompile_4)
CLASS_MEMBER_FIELD(__vwsn_precompile_5)
CLASS_MEMBER_FIELD(__vwsn_precompile_6)
CLASS_MEMBER_FIELD(__vwsn_precompile_7)
CLASS_MEMBER_FIELD(documentLabel)
CLASS_MEMBER_FIELD(self)
END_CLASS_MEMBER(::demo::AboutWindowConstructor)
BEGIN_CLASS_MEMBER(::demo::FindWindow)
CLASS_MEMBER_BASE(::vl::presentation::controls::GuiWindow)
CLASS_MEMBER_BASE(::demo::FindWindowConstructor)
CLASS_MEMBER_CONSTRUCTOR(::demo::FindWindow*(), NO_PARAMETER)
CLASS_MEMBER_METHOD(FindNext, { L"toFind" _ L"caseSensitive" _ L"down" })
CLASS_MEMBER_FIELD(textBox)
END_CLASS_MEMBER(::demo::FindWindow)
BEGIN_CLASS_MEMBER(::demo::FindWindowConstructor)
CLASS_MEMBER_BASE(::vl::reflection::DescriptableObject)
CLASS_MEMBER_CONSTRUCTOR(::vl::Ptr<::demo::FindWindowConstructor>(), NO_PARAMETER)
CLASS_MEMBER_METHOD(__vwsn_demo_FindWindow_Initialize, { L"__vwsn_this_" })
CLASS_MEMBER_FIELD(__vwsn_precompile_0)
CLASS_MEMBER_FIELD(__vwsn_precompile_1)
CLASS_MEMBER_FIELD(__vwsn_precompile_10)
CLASS_MEMBER_FIELD(__vwsn_precompile_11)
CLASS_MEMBER_FIELD(__vwsn_precompile_12)
CLASS_MEMBER_FIELD(__vwsn_precompile_13)
CLASS_MEMBER_FIELD(__vwsn_precompile_14)
CLASS_MEMBER_FIELD(__vwsn_precompile_15)
CLASS_MEMBER_FIELD(__vwsn_precompile_16)
CLASS_MEMBER_FIELD(__vwsn_precompile_17)
CLASS_MEMBER_FIELD(__vwsn_precompile_18)
CLASS_MEMBER_FIELD(__vwsn_precompile_19)
CLASS_MEMBER_FIELD(__vwsn_precompile_2)
CLASS_MEMBER_FIELD(__vwsn_precompile_20)
CLASS_MEMBER_FIELD(__vwsn_precompile_21)
CLASS_MEMBER_FIELD(__vwsn_precompile_22)
CLASS_MEMBER_FIELD(__vwsn_precompile_3)
CLASS_MEMBER_FIELD(__vwsn_precompile_4)
CLASS_MEMBER_FIELD(__vwsn_precompile_5)
CLASS_MEMBER_FIELD(__vwsn_precompile_6)
CLASS_MEMBER_FIELD(__vwsn_precompile_7)
CLASS_MEMBER_FIELD(__vwsn_precompile_8)
CLASS_MEMBER_FIELD(__vwsn_precompile_9)
CLASS_MEMBER_FIELD(checkCase)
CLASS_MEMBER_FIELD(dialogContentNotFound)
CLASS_MEMBER_FIELD(groupDirection)
CLASS_MEMBER_FIELD(radioDown)
CLASS_MEMBER_FIELD(radioUp)
CLASS_MEMBER_FIELD(self)
CLASS_MEMBER_FIELD(textFind)
END_CLASS_MEMBER(::demo::FindWindowConstructor)
BEGIN_CLASS_MEMBER(::demo::MainWindow)
CLASS_MEMBER_BASE(::vl::presentation::controls::GuiWindow)
CLASS_MEMBER_BASE(::demo::MainWindowConstructor)
CLASS_MEMBER_CONSTRUCTOR(::demo::MainWindow*(), NO_PARAMETER)
CLASS_MEMBER_METHOD(AddRecentFile, { L"path" })
CLASS_MEMBER_METHOD(CanCloseFile, NO_PARAMETER)
CLASS_MEMBER_METHOD(LoadFile, { L"path" })
CLASS_MEMBER_METHOD(OpenFile, { L"filterIndex" })
CLASS_MEMBER_METHOD(SaveFile, { L"saveAs" })
CLASS_MEMBER_METHOD(SetupTextConfig, NO_PARAMETER)
CLASS_MEMBER_METHOD(SetupXmlConfig, NO_PARAMETER)
CLASS_MEMBER_METHOD(commandAbout_Executed, { L"sender" _ L"arguments" })
CLASS_MEMBER_METHOD(commandEditCopy_Executed, { L"sender" _ L"arguments" })
CLASS_MEMBER_METHOD(commandEditCut_Executed, { L"sender" _ L"arguments" })
CLASS_MEMBER_METHOD(commandEditDelete_Executed, { L"sender" _ L"arguments" })
CLASS_MEMBER_METHOD(commandEditFind_Executed, { L"sender" _ L"arguments" })
CLASS_MEMBER_METHOD(commandEditPaste_Executed, { L"sender" _ L"arguments" })
CLASS_MEMBER_METHOD(commandEditRedo_Executed, { L"sender" _ L"arguments" })
CLASS_MEMBER_METHOD(commandEditSelect_Executed, { L"sender" _ L"arguments" })
CLASS_MEMBER_METHOD(commandEditUndo_Executed, { L"sender" _ L"arguments" })
CLASS_MEMBER_METHOD(commandFileExit_Executed, { L"sender" _ L"arguments" })
CLASS_MEMBER_METHOD(commandFileNewText_Executed, { L"sender" _ L"arguments" })
CLASS_MEMBER_METHOD(commandFileNewXml_Executed, { L"sender" _ L"arguments" })
CLASS_MEMBER_METHOD(commandFileOpenText_Executed, { L"sender" _ L"arguments" })
CLASS_MEMBER_METHOD(commandFileOpenXml_Executed, { L"sender" _ L"arguments" })
CLASS_MEMBER_METHOD(commandFileOpen_Executed, { L"sender" _ L"arguments" })
CLASS_MEMBER_METHOD(commandFileSaveAs_Executed, { L"sender" _ L"arguments" })
CLASS_MEMBER_METHOD(commandFileSave_Executed, { L"sender" _ L"arguments" })
CLASS_MEMBER_METHOD(window_Closing, { L"sender" _ L"arguments" })
CLASS_MEMBER_FIELD(fileName)
CLASS_MEMBER_FIELD(findWindow)
CLASS_MEMBER_FIELD(isXml)
CLASS_MEMBER_FIELD(recentFiles)
END_CLASS_MEMBER(::demo::MainWindow)
BEGIN_CLASS_MEMBER(::demo::MainWindowConstructor)
CLASS_MEMBER_BASE(::vl::reflection::DescriptableObject)
CLASS_MEMBER_CONSTRUCTOR(::vl::Ptr<::demo::MainWindowConstructor>(), NO_PARAMETER)
CLASS_MEMBER_METHOD(__vwsn_demo_MainWindow_Initialize, { L"__vwsn_this_" })
CLASS_MEMBER_FIELD(__vwsn_precompile_0)
CLASS_MEMBER_FIELD(__vwsn_precompile_1)
CLASS_MEMBER_FIELD(__vwsn_precompile_10)
CLASS_MEMBER_FIELD(__vwsn_precompile_11)
CLASS_MEMBER_FIELD(__vwsn_precompile_12)
CLASS_MEMBER_FIELD(__vwsn_precompile_13)
CLASS_MEMBER_FIELD(__vwsn_precompile_14)
CLASS_MEMBER_FIELD(__vwsn_precompile_15)
CLASS_MEMBER_FIELD(__vwsn_precompile_16)
CLASS_MEMBER_FIELD(__vwsn_precompile_17)
CLASS_MEMBER_FIELD(__vwsn_precompile_18)
CLASS_MEMBER_FIELD(__vwsn_precompile_19)
CLASS_MEMBER_FIELD(__vwsn_precompile_2)
CLASS_MEMBER_FIELD(__vwsn_precompile_20)
CLASS_MEMBER_FIELD(__vwsn_precompile_21)
CLASS_MEMBER_FIELD(__vwsn_precompile_22)
CLASS_MEMBER_FIELD(__vwsn_precompile_23)
CLASS_MEMBER_FIELD(__vwsn_precompile_24)
CLASS_MEMBER_FIELD(__vwsn_precompile_25)
CLASS_MEMBER_FIELD(__vwsn_precompile_26)
CLASS_MEMBER_FIELD(__vwsn_precompile_27)
CLASS_MEMBER_FIELD(__vwsn_precompile_28)
CLASS_MEMBER_FIELD(__vwsn_precompile_29)
CLASS_MEMBER_FIELD(__vwsn_precompile_3)
CLASS_MEMBER_FIELD(__vwsn_precompile_30)
CLASS_MEMBER_FIELD(__vwsn_precompile_31)
CLASS_MEMBER_FIELD(__vwsn_precompile_32)
CLASS_MEMBER_FIELD(__vwsn_precompile_33)
CLASS_MEMBER_FIELD(__vwsn_precompile_34)
CLASS_MEMBER_FIELD(__vwsn_precompile_35)
CLASS_MEMBER_FIELD(__vwsn_precompile_36)
CLASS_MEMBER_FIELD(__vwsn_precompile_37)
CLASS_MEMBER_FIELD(__vwsn_precompile_38)
CLASS_MEMBER_FIELD(__vwsn_precompile_39)
CLASS_MEMBER_FIELD(__vwsn_precompile_4)
CLASS_MEMBER_FIELD(__vwsn_precompile_40)
CLASS_MEMBER_FIELD(__vwsn_precompile_41)
CLASS_MEMBER_FIELD(__vwsn_precompile_42)
CLASS_MEMBER_FIELD(__vwsn_precompile_43)
CLASS_MEMBER_FIELD(__vwsn_precompile_44)
CLASS_MEMBER_FIELD(__vwsn_precompile_45)
CLASS_MEMBER_FIELD(__vwsn_precompile_46)
CLASS_MEMBER_FIELD(__vwsn_precompile_47)
CLASS_MEMBER_FIELD(__vwsn_precompile_48)
CLASS_MEMBER_FIELD(__vwsn_precompile_49)
CLASS_MEMBER_FIELD(__vwsn_precompile_5)
CLASS_MEMBER_FIELD(__vwsn_precompile_50)
CLASS_MEMBER_FIELD(__vwsn_precompile_51)
CLASS_MEMBER_FIELD(__vwsn_precompile_52)
CLASS_MEMBER_FIELD(__vwsn_precompile_53)
CLASS_MEMBER_FIELD(__vwsn_precompile_54)
CLASS_MEMBER_FIELD(__vwsn_precompile_55)
CLASS_MEMBER_FIELD(__vwsn_precompile_56)
CLASS_MEMBER_FIELD(__vwsn_precompile_57)
CLASS_MEMBER_FIELD(__vwsn_precompile_58)
CLASS_MEMBER_FIELD(__vwsn_precompile_59)
CLASS_MEMBER_FIELD(__vwsn_precompile_6)
CLASS_MEMBER_FIELD(__vwsn_precompile_60)
CLASS_MEMBER_FIELD(__vwsn_precompile_61)
CLASS_MEMBER_FIELD(__vwsn_precompile_62)
CLASS_MEMBER_FIELD(__vwsn_precompile_63)
CLASS_MEMBER_FIELD(__vwsn_precompile_64)
CLASS_MEMBER_FIELD(__vwsn_precompile_65)
CLASS_MEMBER_FIELD(__vwsn_precompile_7)
CLASS_MEMBER_FIELD(__vwsn_precompile_8)
CLASS_MEMBER_FIELD(__vwsn_precompile_9)
CLASS_MEMBER_FIELD(commandAbout)
CLASS_MEMBER_FIELD(commandEditCopy)
CLASS_MEMBER_FIELD(commandEditCut)
CLASS_MEMBER_FIELD(commandEditDelete)
CLASS_MEMBER_FIELD(commandEditFind)
CLASS_MEMBER_FIELD(commandEditPaste)
CLASS_MEMBER_FIELD(commandEditRedo)
CLASS_MEMBER_FIELD(commandEditSelect)
CLASS_MEMBER_FIELD(commandEditUndo)
CLASS_MEMBER_FIELD(commandFileExit)
CLASS_MEMBER_FIELD(commandFileNewText)
CLASS_MEMBER_FIELD(commandFileNewXml)
CLASS_MEMBER_FIELD(commandFileOpen)
CLASS_MEMBER_FIELD(commandFileOpenText)
CLASS_MEMBER_FIELD(commandFileOpenXml)
CLASS_MEMBER_FIELD(commandFileSave)
CLASS_MEMBER_FIELD(commandFileSaveAs)
CLASS_MEMBER_FIELD(dialogCannotOpen)
CLASS_MEMBER_FIELD(dialogCannotSave)
CLASS_MEMBER_FIELD(dialogOpen)
CLASS_MEMBER_FIELD(dialogQueryClose)
CLASS_MEMBER_FIELD(dialogSave)
CLASS_MEMBER_FIELD(self)
CLASS_MEMBER_FIELD(textBox)
END_CLASS_MEMBER(::demo::MainWindowConstructor)
BEGIN_CLASS_MEMBER(::demo::RecentFileItemTemplate)
CLASS_MEMBER_BASE(::vl::presentation::templates::GuiControlTemplate)
CLASS_MEMBER_BASE(::demo::RecentFileItemTemplateConstructor)
CLASS_MEMBER_CONSTRUCTOR(::demo::RecentFileItemTemplate*(::vl::presentation::controls::GuiToolstripCommand*), { L"__vwsn_ctor_parameter_ViewModel" })
CLASS_MEMBER_METHOD(GetViewModel, NO_PARAMETER)
CLASS_MEMBER_FIELD(__vwsn_parameter_ViewModel)
CLASS_MEMBER_PROPERTY_READONLY(ViewModel, GetViewModel)
END_CLASS_MEMBER(::demo::RecentFileItemTemplate)
BEGIN_CLASS_MEMBER(::demo::RecentFileItemTemplateConstructor)
CLASS_MEMBER_BASE(::vl::reflection::DescriptableObject)
CLASS_MEMBER_CONSTRUCTOR(::vl::Ptr<::demo::RecentFileItemTemplateConstructor>(), NO_PARAMETER)
CLASS_MEMBER_METHOD(__vwsn_demo_RecentFileItemTemplate_Initialize, { L"__vwsn_this_" })
CLASS_MEMBER_FIELD(__vwsn_precompile_0)
CLASS_MEMBER_FIELD(__vwsn_precompile_1)
CLASS_MEMBER_FIELD(__vwsn_precompile_2)
CLASS_MEMBER_FIELD(ViewModel)
END_CLASS_MEMBER(::demo::RecentFileItemTemplateConstructor)
#undef _
class DemoTypeLoader : public Object, public ITypeLoader
{
public:
void Load(ITypeManager* manager)
{
ADD_TYPE_INFO(::demo::AboutWindow)
ADD_TYPE_INFO(::demo::AboutWindowConstructor)
ADD_TYPE_INFO(::demo::FindWindow)
ADD_TYPE_INFO(::demo::FindWindowConstructor)
ADD_TYPE_INFO(::demo::MainWindow)
ADD_TYPE_INFO(::demo::MainWindowConstructor)
ADD_TYPE_INFO(::demo::RecentFileItemTemplate)
ADD_TYPE_INFO(::demo::RecentFileItemTemplateConstructor)
}
void Unload(ITypeManager* manager)
{
}
};
#endif
#endif
bool LoadDemoTypes()
{
#ifdef VCZH_DESCRIPTABLEOBJECT_WITH_METADATA
if (auto manager = GetGlobalTypeManager())
{
return manager->AddTypeLoader(Ptr(new DemoTypeLoader));
}
#endif
return false;
}
}
}
}
#if defined( _MSC_VER)
#pragma warning(pop)
#elif defined(__clang__)
#pragma clang diagnostic pop
#elif defined(__GNUC__)
#pragma GCC diagnostic pop
#endif

View File

@@ -1,59 +0,0 @@
/***********************************************************************
!!!!!! DO NOT MODIFY !!!!!!
GacGen.exe Resource.xml
This file is generated by Workflow compiler
https://github.com/vczh-libraries
***********************************************************************/
#ifndef VCZH_WORKFLOW_COMPILER_GENERATED_DEMOREFLECTION
#define VCZH_WORKFLOW_COMPILER_GENERATED_DEMOREFLECTION
#include "Demo.h"
#if defined( _MSC_VER)
#pragma warning(push)
#pragma warning(disable:4250)
#elif defined(__clang__)
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wparentheses-equality"
#elif defined(__GNUC__)
#pragma GCC diagnostic push
#endif
/***********************************************************************
Reflection
***********************************************************************/
namespace vl
{
namespace reflection
{
namespace description
{
#ifndef VCZH_DEBUG_NO_REFLECTION
DECL_TYPE_INFO(::demo::AboutWindow)
DECL_TYPE_INFO(::demo::AboutWindowConstructor)
DECL_TYPE_INFO(::demo::FindWindow)
DECL_TYPE_INFO(::demo::FindWindowConstructor)
DECL_TYPE_INFO(::demo::MainWindow)
DECL_TYPE_INFO(::demo::MainWindowConstructor)
DECL_TYPE_INFO(::demo::RecentFileItemTemplate)
DECL_TYPE_INFO(::demo::RecentFileItemTemplateConstructor)
#endif
extern bool LoadDemoTypes();
}
}
}
#if defined( _MSC_VER)
#pragma warning(pop)
#elif defined(__clang__)
#pragma clang diagnostic pop
#elif defined(__GNUC__)
#pragma GCC diagnostic pop
#endif
#endif

View File

@@ -1,125 +0,0 @@
/***********************************************************************
!!!!!! DO NOT MODIFY !!!!!!
GacGen.exe Resource.xml
This file is generated by Workflow compiler
https://github.com/vczh-libraries
***********************************************************************/
#include "Demo.h"
/* CodePack:BeginIgnore() */
#ifndef VCZH_DEBUG_NO_REFLECTION
/* CodePack:ConditionOff(VCZH_DEBUG_NO_REFLECTION, DemoReflection.h) */
#include "DemoReflection.h"
#endif
/* CodePack:EndIgnore() */
#if defined( _MSC_VER)
#pragma warning(push)
#pragma warning(disable:4250)
#elif defined(__clang__)
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wparentheses-equality"
#elif defined(__GNUC__)
#pragma GCC diagnostic push
#endif
#define GLOBAL_SYMBOL ::vl_workflow_global::Demo::
#define GLOBAL_NAME ::vl_workflow_global::Demo::Instance().
#define GLOBAL_OBJ &::vl_workflow_global::Demo::Instance()
/* USER_CONTENT_BEGIN(custom global declarations) */
/* USER_CONTENT_END() */
/***********************************************************************
Class (::demo::FindWindow)
***********************************************************************/
namespace demo
{
bool FindWindow::FindNext(const ::vl::WString& toFind, bool caseSensitive, bool down)
{/* USER_CONTENT_BEGIN(::demo::FindWindow) */
auto position = textBox->GetCaretEnd();
auto rowCount = textBox->GetRowCount();
auto normalization = caseSensitive ? Locale::None : Locale::IgnoreCase;
for (vint i = position.row; 0 <= i&&i < rowCount; (down ? i++ : i--))
{
auto rowText = textBox->GetRowText(i);
auto fragment = rowText;
if (i == position.row)
{
if (down)
{
fragment = rowText.Right(rowText.Length() - position.column);
}
else
{
fragment = rowText.Left(position.column);
}
}
auto pair = down
? INVLOC.FindFirst(fragment, toFind, normalization)
: INVLOC.FindLast(fragment, toFind, normalization)
;
if (pair.key != -1)
{
TextPos begin, end;
if (i == position.row && down)
{
begin = TextPos(i, pair.key + position.column);
}
else
{
begin = TextPos(i, pair.key);
}
if (down)
{
end = TextPos(begin.row, begin.column + pair.value);
}
else
{
end = TextPos(begin.row, begin.column);
begin.column += pair.value;
}
textBox->Select(begin, end);
textBox->SetFocused();
return true;
}
}
return false;
}/* USER_CONTENT_END() */
FindWindow::FindWindow()
: ::vl::presentation::controls::GuiWindow(::vl::presentation::theme::ThemeName::Window)
, textBox(static_cast<::vl::presentation::controls::GuiMultilineTextBox*>(nullptr))
{
auto __vwsn_resource_ = ::vl::__vwsn::This(::vl::presentation::GetResourceManager())->GetResourceFromClassName(::vl::WString::Unmanaged(L"demo::FindWindow"));
auto __vwsn_resolver_ = ::vl::Ptr<::vl::presentation::GuiResourcePathResolver>(new ::vl::presentation::GuiResourcePathResolver(__vwsn_resource_, ::vl::__vwsn::This(__vwsn_resource_.Obj())->GetWorkingDirectory()));
::vl::__vwsn::This(this)->SetResourceResolver(__vwsn_resolver_);
::vl::__vwsn::This(this)->__vwsn_demo_FindWindow_Initialize(this);
}
FindWindow::~FindWindow()
{
this->FinalizeInstanceRecursively(static_cast<::vl::presentation::controls::GuiControlHost*>(this));
}
}
#undef GLOBAL_SYMBOL
#undef GLOBAL_NAME
#undef GLOBAL_OBJ
#if defined( _MSC_VER)
#pragma warning(pop)
#elif defined(__clang__)
#pragma clang diagnostic pop
#elif defined(__GNUC__)
#pragma GCC diagnostic pop
#endif

View File

@@ -1,55 +0,0 @@
/***********************************************************************
!!!!!! DO NOT MODIFY !!!!!!
GacGen.exe Resource.xml
This file is generated by Workflow compiler
https://github.com/vczh-libraries
***********************************************************************/
#ifndef VCZH_WORKFLOW_COMPILER_GENERATED_FINDWINDOW
#define VCZH_WORKFLOW_COMPILER_GENERATED_FINDWINDOW
#include "DemoPartialClasses.h"
#if defined( _MSC_VER)
#pragma warning(push)
#pragma warning(disable:4250)
#elif defined(__clang__)
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wparentheses-equality"
#elif defined(__GNUC__)
#pragma GCC diagnostic push
#endif
namespace demo
{
class FindWindow : public ::vl::presentation::controls::GuiWindow, public ::demo::FindWindowConstructor, public ::vl::reflection::Description<FindWindow>
{
friend class ::demo::FindWindowConstructor;
friend struct ::vl_workflow_global::__vwsnf3_Demo_demo_FindWindowConstructor___vwsn_demo_FindWindow_Initialize_;
friend struct ::vl_workflow_global::__vwsnf4_Demo_demo_FindWindowConstructor___vwsn_demo_FindWindow_Initialize_;
#ifdef VCZH_DESCRIPTABLEOBJECT_WITH_METADATA
friend struct ::vl::reflection::description::CustomTypeDescriptorSelector<FindWindow>;
#endif
protected:
bool FindNext(const ::vl::WString& toFind, bool caseSensitive, bool down);
public:
::vl::presentation::controls::GuiMultilineTextBox* textBox;
FindWindow();
~FindWindow();
/* USER_CONTENT_BEGIN(custom members of ::demo::FindWindow) */
/* USER_CONTENT_END() */
};
}
#if defined( _MSC_VER)
#pragma warning(pop)
#elif defined(__clang__)
#pragma clang diagnostic pop
#elif defined(__GNUC__)
#pragma GCC diagnostic pop
#endif
#endif

View File

@@ -1,351 +0,0 @@
/***********************************************************************
!!!!!! DO NOT MODIFY !!!!!!
GacGen.exe Resource.xml
This file is generated by Workflow compiler
https://github.com/vczh-libraries
***********************************************************************/
#include "Demo.h"
/* CodePack:BeginIgnore() */
#ifndef VCZH_DEBUG_NO_REFLECTION
/* CodePack:ConditionOff(VCZH_DEBUG_NO_REFLECTION, DemoReflection.h) */
#include "DemoReflection.h"
#endif
/* CodePack:EndIgnore() */
#if defined( _MSC_VER)
#pragma warning(push)
#pragma warning(disable:4250)
#elif defined(__clang__)
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wparentheses-equality"
#elif defined(__GNUC__)
#pragma GCC diagnostic push
#endif
#define GLOBAL_SYMBOL ::vl_workflow_global::Demo::
#define GLOBAL_NAME ::vl_workflow_global::Demo::Instance().
#define GLOBAL_OBJ &::vl_workflow_global::Demo::Instance()
/* USER_CONTENT_BEGIN(custom global declarations) */
/* USER_CONTENT_END() */
/***********************************************************************
Class (::demo::MainWindow)
***********************************************************************/
namespace demo
{
bool MainWindow::CanCloseFile()
{/* USER_CONTENT_BEGIN(::demo::MainWindow) */
if (textBox->GetModified())
{
switch (dialogQueryClose->ShowDialog())
{
case INativeDialogService::MessageBoxButtonsOutput::SelectYes:
return SaveFile(false);
case INativeDialogService::MessageBoxButtonsOutput::SelectNo:
return true;
default:
return false;
}
}
else
{
return true;
}
}/* USER_CONTENT_END() */
bool MainWindow::LoadFile(const ::vl::WString& path)
{/* USER_CONTENT_BEGIN(::demo::MainWindow) */
stream::FileStream fileStream(path, stream::FileStream::ReadOnly);
if (fileStream.IsAvailable())
{
stream::BomDecoder decoder;
stream::DecoderStream decoderStream(fileStream, decoder);
stream::StreamReader reader(decoderStream);
textBox->SetText(reader.ReadToEnd());
textBox->Select(TextPos(), TextPos());
textBox->SetFocused();
textBox->ClearUndoRedo();
fileName = dialogOpen->GetFileName();
if (INVLOC.EndsWith(fileName, L".xml", Locale::IgnoreCase))
{
SetupXmlConfig();
}
else
{
SetupTextConfig();
}
GetApplication()->InvokeInMainThread(this, [=]()
{
AddRecentFile(path);
});
return true;
}
else
{
return false;
}
}/* USER_CONTENT_END() */
bool MainWindow::OpenFile(::vl::vint filterIndex)
{/* USER_CONTENT_BEGIN(::demo::MainWindow) */
if (CanCloseFile())
{
dialogOpen->SetFilterIndex(filterIndex);
if (dialogOpen->ShowDialog())
{
if (LoadFile(dialogOpen->GetFileName()))
{
return true;
}
else
{
dialogCannotOpen->ShowDialog();
}
}
}
return false;
}/* USER_CONTENT_END() */
bool MainWindow::SaveFile(bool saveAs)
{/* USER_CONTENT_BEGIN(::demo::MainWindow) */
WString targetFileName = fileName;
if (saveAs || targetFileName == L"")
{
dialogSave->SetFilterIndex(isXml ? 1 : 0);
if (dialogSave->ShowDialog())
{
targetFileName = dialogSave->GetFileName();
}
else
{
return false;
}
}
stream::FileStream fileStream(targetFileName, stream::FileStream::WriteOnly);
if (fileStream.IsAvailable())
{
stream::BomEncoder encoder(stream::BomEncoder::Utf16);
stream::EncoderStream encoderStream(fileStream, encoder);
stream::StreamWriter writer(encoderStream);
writer.WriteString(textBox->GetText());
textBox->NotifyModificationSaved();
fileName = targetFileName;
if (INVLOC.EndsWith(fileName, L".xml", Locale::IgnoreCase))
{
SetupXmlConfig();
}
else
{
SetupTextConfig();
}
GetApplication()->InvokeInMainThread(this, [=]()
{
AddRecentFile(targetFileName);
});
return true;
}
else
{
dialogCannotSave->ShowDialog();
}
return false;
}/* USER_CONTENT_END() */
void MainWindow::SetupTextConfig()
{/* USER_CONTENT_BEGIN(::demo::MainWindow) */
if (isXml == true)
{
isXml = false;
SetColorizer(textBox, false);
}
}/* USER_CONTENT_END() */
void MainWindow::SetupXmlConfig()
{/* USER_CONTENT_BEGIN(::demo::MainWindow) */
if (isXml == false)
{
isXml = true;
SetColorizer(textBox, true);
}
}/* USER_CONTENT_END() */
void MainWindow::AddRecentFile(const ::vl::WString& path)
{
{
auto __vwsn_for_begin_i = static_cast<::vl::vint>(0);
auto __vwsn_for_end_i = (::vl::__vwsn::This(this->recentFiles.Obj())->GetCount() - static_cast<::vl::vint>(1));
auto i = __vwsn_for_begin_i;
while ((i <= __vwsn_for_end_i))
{
{
if ((::vl::__vwsn::This(::vl::__vwsn::Unbox<::vl::presentation::controls::GuiToolstripCommand*>(::vl::__vwsn::This(this->recentFiles.Obj())->Get(i)))->GetText() == path))
{
auto existingCommand = ::vl::__vwsn::Unbox<::vl::presentation::controls::GuiToolstripCommand*>(::vl::__vwsn::This(this->recentFiles.Obj())->Get(i));
::vl::__vwsn::This(this->recentFiles.Obj())->RemoveAt(i);
::vl::__vwsn::This(this->recentFiles.Obj())->Insert(static_cast<::vl::vint>(0), ::vl::__vwsn::Box(existingCommand));
return;
}
}
(i = (i + static_cast<::vl::vint>(1)));
}
}
if ((::vl::__vwsn::This(this->recentFiles.Obj())->GetCount() == static_cast<::vl::vint>(10)))
{
::vl::__vwsn::This(this->recentFiles.Obj())->RemoveAt(static_cast<::vl::vint>(9));
}
auto command = new ::vl::presentation::controls::GuiToolstripCommand();
::vl::__vwsn::This(command)->SetText(path);
::vl::__vwsn::EventAttach(::vl::__vwsn::This(command)->Executed, vl::Func(::vl_workflow_global::__vwsnf32_Demo_demo_MainWindow_AddRecentFile_(path, this)));
::vl::__vwsn::This(this->recentFiles.Obj())->Insert(static_cast<::vl::vint>(0), ::vl::__vwsn::Box(command));
}
void MainWindow::commandFileNewText_Executed(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments)
{/* USER_CONTENT_BEGIN(::demo::MainWindow) */
if (CanCloseFile())
{
textBox->SetText(L"");
textBox->ClearUndoRedo();
SetupTextConfig();
}
}/* USER_CONTENT_END() */
void MainWindow::commandFileNewXml_Executed(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments)
{/* USER_CONTENT_BEGIN(::demo::MainWindow) */
if (CanCloseFile())
{
textBox->SetText(L"");
textBox->ClearUndoRedo();
SetupXmlConfig();
}
}/* USER_CONTENT_END() */
void MainWindow::commandFileOpen_Executed(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments)
{/* USER_CONTENT_BEGIN(::demo::MainWindow) */
OpenFile(dialogOpen->GetFilterIndex());
}/* USER_CONTENT_END() */
void MainWindow::commandFileOpenText_Executed(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments)
{/* USER_CONTENT_BEGIN(::demo::MainWindow) */
OpenFile(0);
}/* USER_CONTENT_END() */
void MainWindow::commandFileOpenXml_Executed(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments)
{/* USER_CONTENT_BEGIN(::demo::MainWindow) */
OpenFile(1);
}/* USER_CONTENT_END() */
void MainWindow::commandFileSave_Executed(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments)
{/* USER_CONTENT_BEGIN(::demo::MainWindow) */
SaveFile(false);
}/* USER_CONTENT_END() */
void MainWindow::commandFileSaveAs_Executed(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments)
{/* USER_CONTENT_BEGIN(::demo::MainWindow) */
SaveFile(true);
}/* USER_CONTENT_END() */
void MainWindow::commandFileExit_Executed(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments)
{/* USER_CONTENT_BEGIN(::demo::MainWindow) */
Close();
}/* USER_CONTENT_END() */
void MainWindow::commandEditUndo_Executed(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments)
{/* USER_CONTENT_BEGIN(::demo::MainWindow) */
textBox->Undo();
}/* USER_CONTENT_END() */
void MainWindow::commandEditRedo_Executed(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments)
{/* USER_CONTENT_BEGIN(::demo::MainWindow) */
textBox->Redo();
}/* USER_CONTENT_END() */
void MainWindow::commandEditCut_Executed(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments)
{/* USER_CONTENT_BEGIN(::demo::MainWindow) */
textBox->Cut();
}/* USER_CONTENT_END() */
void MainWindow::commandEditCopy_Executed(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments)
{/* USER_CONTENT_BEGIN(::demo::MainWindow) */
textBox->Copy();
}/* USER_CONTENT_END() */
void MainWindow::commandEditPaste_Executed(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments)
{/* USER_CONTENT_BEGIN(::demo::MainWindow) */
textBox->Paste();
}/* USER_CONTENT_END() */
void MainWindow::commandEditDelete_Executed(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments)
{/* USER_CONTENT_BEGIN(::demo::MainWindow) */
textBox->SetSelectionText(L"");
}/* USER_CONTENT_END() */
void MainWindow::commandEditSelect_Executed(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments)
{/* USER_CONTENT_BEGIN(::demo::MainWindow) */
textBox->SelectAll();
}/* USER_CONTENT_END() */
void MainWindow::commandEditFind_Executed(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments)
{/* USER_CONTENT_BEGIN(::demo::MainWindow) */
if (!findWindow)
{
auto window = Ptr(new FindWindow);
window->textBox = textBox;
window->MoveToScreenCenter();
window->GetNativeWindow()->SetParent(GetNativeWindow());
findWindow = window;
}
findWindow->Show();
}/* USER_CONTENT_END() */
void MainWindow::commandAbout_Executed(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments)
{/* USER_CONTENT_BEGIN(::demo::MainWindow) */
auto window = new AboutWindow;
window->MoveToScreenCenter();
window->ShowModalAndDelete(this, []() {});
}/* USER_CONTENT_END() */
void MainWindow::window_Closing(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiRequestEventArgs* arguments)
{/* USER_CONTENT_BEGIN(::demo::MainWindow) */
arguments->cancel = !CanCloseFile();
}/* USER_CONTENT_END() */
MainWindow::MainWindow()
: ::vl::presentation::controls::GuiWindow(::vl::presentation::theme::ThemeName::Window)
, fileName(::vl::WString::Unmanaged(L""))
, isXml(false)
, findWindow(::vl::Ptr<::vl::presentation::controls::GuiWindow>())
, recentFiles(::vl::reflection::description::IValueObservableList::Create())
{
auto __vwsn_resource_ = ::vl::__vwsn::This(::vl::presentation::GetResourceManager())->GetResourceFromClassName(::vl::WString::Unmanaged(L"demo::MainWindow"));
auto __vwsn_resolver_ = ::vl::Ptr<::vl::presentation::GuiResourcePathResolver>(new ::vl::presentation::GuiResourcePathResolver(__vwsn_resource_, ::vl::__vwsn::This(__vwsn_resource_.Obj())->GetWorkingDirectory()));
::vl::__vwsn::This(this)->SetResourceResolver(__vwsn_resolver_);
::vl::__vwsn::This(this)->__vwsn_demo_MainWindow_Initialize(this);
}
MainWindow::~MainWindow()
{
this->FinalizeInstanceRecursively(static_cast<::vl::presentation::controls::GuiControlHost*>(this));
}
}
#undef GLOBAL_SYMBOL
#undef GLOBAL_NAME
#undef GLOBAL_OBJ
#if defined( _MSC_VER)
#pragma warning(pop)
#elif defined(__clang__)
#pragma clang diagnostic pop
#elif defined(__GNUC__)
#pragma GCC diagnostic pop
#endif

View File

@@ -1,117 +0,0 @@
/***********************************************************************
!!!!!! DO NOT MODIFY !!!!!!
GacGen.exe Resource.xml
This file is generated by Workflow compiler
https://github.com/vczh-libraries
***********************************************************************/
#ifndef VCZH_WORKFLOW_COMPILER_GENERATED_MAINWINDOW
#define VCZH_WORKFLOW_COMPILER_GENERATED_MAINWINDOW
#include "DemoPartialClasses.h"
#if defined( _MSC_VER)
#pragma warning(push)
#pragma warning(disable:4250)
#elif defined(__clang__)
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wparentheses-equality"
#elif defined(__GNUC__)
#pragma GCC diagnostic push
#endif
namespace demo
{
class MainWindow : public ::vl::presentation::controls::GuiWindow, public ::demo::MainWindowConstructor, public ::vl::reflection::Description<MainWindow>
{
friend struct ::vl_workflow_global::__vwsnf32_Demo_demo_MainWindow_AddRecentFile_;
friend class ::demo::MainWindowConstructor;
friend class ::vl_workflow_global::__vwsnc1_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize__vl_reflection_description_IValueSubscription;
friend class ::vl_workflow_global::__vwsnc2_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize__vl_reflection_description_IValueSubscription;
friend class ::vl_workflow_global::__vwsnc3_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize__vl_reflection_description_IValueSubscription;
friend class ::vl_workflow_global::__vwsnc4_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize__vl_reflection_description_IValueSubscription;
friend class ::vl_workflow_global::__vwsnc5_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize__vl_reflection_description_IValueSubscription;
friend class ::vl_workflow_global::__vwsnc6_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize__vl_reflection_description_IValueSubscription;
friend class ::vl_workflow_global::__vwsnc7_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize__vl_reflection_description_IValueSubscription;
friend class ::vl_workflow_global::__vwsnc8_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize__vl_reflection_description_IValueSubscription;
friend struct ::vl_workflow_global::__vwsnf14_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_;
friend struct ::vl_workflow_global::__vwsnf16_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_;
friend struct ::vl_workflow_global::__vwsnf18_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_;
friend struct ::vl_workflow_global::__vwsnf20_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_;
friend struct ::vl_workflow_global::__vwsnf22_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_;
friend struct ::vl_workflow_global::__vwsnf24_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_;
friend struct ::vl_workflow_global::__vwsnf29_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_;
friend struct ::vl_workflow_global::__vwsnf30_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_;
friend struct ::vl_workflow_global::__vwsnf5_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_;
friend struct ::vl_workflow_global::__vwsno10_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_;
friend struct ::vl_workflow_global::__vwsno11_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_;
friend struct ::vl_workflow_global::__vwsno12_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_;
friend struct ::vl_workflow_global::__vwsno13_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_;
friend struct ::vl_workflow_global::__vwsno15_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_;
friend struct ::vl_workflow_global::__vwsno17_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_;
friend struct ::vl_workflow_global::__vwsno19_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_;
friend struct ::vl_workflow_global::__vwsno21_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_;
friend struct ::vl_workflow_global::__vwsno23_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_;
friend struct ::vl_workflow_global::__vwsno25_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_;
friend struct ::vl_workflow_global::__vwsno26_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_;
friend struct ::vl_workflow_global::__vwsno27_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_;
friend struct ::vl_workflow_global::__vwsno28_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_;
friend struct ::vl_workflow_global::__vwsno31_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_;
friend struct ::vl_workflow_global::__vwsno6_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_;
friend struct ::vl_workflow_global::__vwsno7_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_;
friend struct ::vl_workflow_global::__vwsno8_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_;
friend struct ::vl_workflow_global::__vwsno9_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_;
#ifdef VCZH_DESCRIPTABLEOBJECT_WITH_METADATA
friend struct ::vl::reflection::description::CustomTypeDescriptorSelector<MainWindow>;
#endif
public:
bool CanCloseFile();
bool LoadFile(const ::vl::WString& path);
bool OpenFile(::vl::vint filterIndex);
bool SaveFile(bool saveAs);
void SetupTextConfig();
void SetupXmlConfig();
protected:
::vl::WString fileName;
bool isXml;
::vl::Ptr<::vl::presentation::controls::GuiWindow> findWindow;
::vl::Ptr<::vl::reflection::description::IValueObservableList> recentFiles;
void AddRecentFile(const ::vl::WString& path);
void commandFileNewText_Executed(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments);
void commandFileNewXml_Executed(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments);
void commandFileOpen_Executed(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments);
void commandFileOpenText_Executed(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments);
void commandFileOpenXml_Executed(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments);
void commandFileSave_Executed(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments);
void commandFileSaveAs_Executed(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments);
void commandFileExit_Executed(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments);
void commandEditUndo_Executed(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments);
void commandEditRedo_Executed(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments);
void commandEditCut_Executed(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments);
void commandEditCopy_Executed(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments);
void commandEditPaste_Executed(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments);
void commandEditDelete_Executed(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments);
void commandEditSelect_Executed(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments);
void commandEditFind_Executed(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments);
void commandAbout_Executed(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments);
void window_Closing(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiRequestEventArgs* arguments);
public:
MainWindow();
~MainWindow();
/* USER_CONTENT_BEGIN(custom members of ::demo::MainWindow) */
/* USER_CONTENT_END() */
};
}
#if defined( _MSC_VER)
#pragma warning(pop)
#elif defined(__clang__)
#pragma clang diagnostic pop
#elif defined(__GNUC__)
#pragma GCC diagnostic pop
#endif
#endif

View File

@@ -1,13 +0,0 @@
#ifndef VCZH_TUTORIAL_CONTROLS_TEXTEDITOR
#define VCZH_TUTORIAL_CONTROLS_TEXTEDITOR
#include "GacUI.h"
using namespace vl;
using namespace vl::presentation;
using namespace vl::presentation::controls;
extern void OpenUrl(const WString& url);
extern void SetColorizer(GuiMultilineTextBox* textBox, bool forXml);
#endif