Achieve TextEditor demo before colorizing is introduced again.
@@ -9,8 +9,6 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Lib", "Lib", "{739DADD1-5B9
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "GacUILite", "..\Lib\GacUILite\GacUILite.vcxproj", "{96C559CA-9718-4BEC-A053-28A0AB6A8CA2}"
|
||||
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}"
|
||||
EndProject
|
||||
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|x64.ActiveCfg = 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.Build.0 = Debug|Win32
|
||||
{FBBBA8BF-96A4-4096-8204-A92571100F0E}.Debug|x64.ActiveCfg = Debug|x64
|
||||
|
||||
BIN
Tutorial/GacUI_Controls/TextEditor.zip
Normal 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);
|
||||
}
|
||||
@@ -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>
|
||||
@@ -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>
|
||||
@@ -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>
|
||||
@@ -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>
|
||||
|
Before Width: | Height: | Size: 150 B |
|
Before Width: | Height: | Size: 379 B |
|
Before Width: | Height: | Size: 743 B |
|
Before Width: | Height: | Size: 319 B |
|
Before Width: | Height: | Size: 275 B |
|
Before Width: | Height: | Size: 450 B |
|
Before Width: | Height: | Size: 478 B |
@@ -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>
|
||||
|
Before Width: | Height: | Size: 321 B |
|
Before Width: | Height: | Size: 217 B |
|
Before Width: | Height: | Size: 291 B |
|
Before Width: | Height: | Size: 343 B |
|
Before Width: | Height: | Size: 204 B |
|
Before Width: | Height: | Size: 236 B |
@@ -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>
|
||||
@@ -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>
|
||||
@@ -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
|
||||
@@ -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
|
||||
@@ -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
|
||||
@@ -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
|
||||
@@ -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
|
||||
@@ -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
|
||||
@@ -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
|
||||
@@ -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
|
||||
@@ -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
|
||||
@@ -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
|
||||