From f1a46d0fe15a0f33f715ebea18f3fb8393cf59ae Mon Sep 17 00:00:00 2001 From: vczh Date: Mon, 20 Mar 2023 23:11:07 -0700 Subject: [PATCH] Update release --- Import/GacUI.Windows.cpp | 198 +- Import/GacUI.Windows.h | 44 +- Import/GacUI.cpp | 10955 ++++++++++++++++- Import/GacUI.h | 4510 ++++++- Import/GacUICompiler.cpp | 57 +- Import/GacUIReflection.cpp | 815 +- Import/GacUIReflection.h | 259 +- Import/VlppGlrParserCompiler.cpp | 76 +- Import/VlppReflection.cpp | 4 +- Import/VlppWorkflowCompiler.cpp | 2 +- Tools/Reflection32.bin | Bin 703856 -> 721968 bytes Tools/Reflection64.bin | Bin 703856 -> 721968 bytes Tutorial/GacUI_HelloWorlds/UIRes/Xml.bin.x64 | Bin 25176 -> 25176 bytes Tutorial/GacUI_HelloWorlds/UIRes/Xml.bin.x86 | Bin 25176 -> 25176 bytes 14 files changed, 16014 insertions(+), 906 deletions(-) diff --git a/Import/GacUI.Windows.cpp b/Import/GacUI.Windows.cpp index c2c25fa9..8cf4f225 100644 --- a/Import/GacUI.Windows.cpp +++ b/Import/GacUI.Windows.cpp @@ -1822,9 +1822,9 @@ WindowsController WindowsForm* mainWindow = nullptr; HWND mainWindowHandle = 0; - WindowsCallbackService callbackService; - WindowsResourceService resourceService; + SharedCallbackService callbackService; SharedAsyncService asyncService; + WindowsResourceService resourceService; WindowsClipboardService clipboardService; WindowsImageService imageService; WindowsScreenService screenService; @@ -1955,7 +1955,7 @@ WindowsController windowsForm->InvokeDestroying(); if (windowsForm != 0 && windows.Keys().Contains(windowsForm->GetWindowHandle())) { - callbackService.InvokeNativeWindowDestroyed(window); + callbackService.InvokeNativeWindowDestroying(window); windows.Remove(windowsForm->GetWindowHandle()); if (mainWindow == windowsForm) { @@ -1970,19 +1970,28 @@ WindowsController return mainWindow; } + inline bool RunOneCycleInternal() + { + MSG message; + if (!GetMessage(&message, NULL, 0, 0)) return false; + TranslateMessage(&message); + DispatchMessage(&message); + asyncService.ExecuteAsyncTasks(); + return true; + } + void Run(INativeWindow* window)override { mainWindow = dynamic_cast(GetWindowsForm(window)); mainWindowHandle = mainWindow->GetWindowHandle(); mainWindow->SetIsMainWindow(); mainWindow->Show(); - MSG message; - while(GetMessage(&message, NULL, 0, 0)) - { - TranslateMessage(&message); - DispatchMessage(&message); - asyncService.ExecuteAsyncTasks(); - } + while (RunOneCycleInternal()); + } + + bool RunOneCycle()override + { + return RunOneCycleInternal(); } INativeWindow* GetWindow(NativePoint location)override @@ -2807,7 +2816,7 @@ int SetupWindowsDirect2DRendererInternal(bool hosted) StartWindowsNativeController(hInstance); auto nativeController = GetWindowsNativeController(); if (hosted) hostedController = new GuiHostedController(nativeController); - SetCurrentController(hostedController ? hostedController : nativeController); + SetNativeController(hostedController ? hostedController : nativeController); { // install listener @@ -2822,7 +2831,7 @@ int SetupWindowsDirect2DRendererInternal(bool hosted) } // destroy controller - SetCurrentController(nullptr); + SetNativeController(nullptr); if (hostedController) delete hostedController; StopWindowsNativeController(); return 0; @@ -8398,8 +8407,7 @@ namespace vl if (needPaintAfterResize) { needPaintAfterResize = false; - auto callbackService = GetWindowsNativeController()->CallbackService(); - dynamic_cast(callbackService)->InvokeGlobalTimer(); + GetWindowsNativeController()->CallbackService()->Invoker()->InvokeGlobalTimer(); } IWindowsForm* form=GetWindowsForm(window); WinControlDC controlDC(form->GetWindowHandle()); @@ -8534,7 +8542,7 @@ int SetupWindowsGDIRendererInternal(bool hosted) StartWindowsNativeController(hInstance); auto nativeController = GetWindowsNativeController(); if (hosted) hostedController = new GuiHostedController(nativeController); - SetCurrentController(hostedController ? hostedController : nativeController); + SetNativeController(hostedController ? hostedController : nativeController); { // install listener @@ -8549,7 +8557,7 @@ int SetupWindowsGDIRendererInternal(bool hosted) } // destroy controller - SetCurrentController(nullptr); + SetNativeController(nullptr); if (hostedController) delete hostedController; StopWindowsNativeController(); return 0; @@ -12966,86 +12974,6 @@ void RendererMainGDI(GuiHostedController* hostedController) elements_windows_gdi::SetWindowsGDIResourceManager(nullptr); } -/*********************************************************************** -.\SERVICESIMPL\WINDOWSCALLBACKSERVICE.CPP -***********************************************************************/ - -namespace vl -{ - namespace presentation - { - namespace windows - { - -/*********************************************************************** -WindowsCallbackService -***********************************************************************/ - - WindowsCallbackService::WindowsCallbackService() - { - } - - bool WindowsCallbackService::InstallListener(INativeControllerListener* listener) - { - if(listeners.Contains(listener)) - { - return false; - } - else - { - listeners.Add(listener); - return true; - } - } - - bool WindowsCallbackService::UninstallListener(INativeControllerListener* listener) - { - if(listeners.Contains(listener)) - { - listeners.Remove(listener); - return true; - } - else - { - return false; - } - } - - void WindowsCallbackService::InvokeGlobalTimer() - { - for(vint i=0;iGlobalTimer(); - } - } - - void WindowsCallbackService::InvokeClipboardUpdated() - { - for(vint i=0;iClipboardUpdated(); - } - } - - void WindowsCallbackService::InvokeNativeWindowCreated(INativeWindow* window) - { - for(vint i=0;iNativeWindowCreated(window); - } - } - - void WindowsCallbackService::InvokeNativeWindowDestroyed(INativeWindow* window) - { - for(vint i=0;iNativeWindowDestroying(window); - } - } - } - } -} - /*********************************************************************** .\SERVICESIMPL\WINDOWSCLIPBOARDSERVICE.CPP ***********************************************************************/ @@ -14440,58 +14368,58 @@ WindowsCursor ***********************************************************************/ WindowsCursor::WindowsCursor(HCURSOR _handle) - :handle(_handle) - ,isSystemCursor(false) - ,systemCursorType(INativeCursor::Arrow) + : handle(_handle) + , isSystemCursor(false) + , systemCursorType(INativeCursor::Arrow) { } WindowsCursor::WindowsCursor(SystemCursorType type) :handle(NULL) - ,isSystemCursor(true) - ,systemCursorType(type) + , isSystemCursor(true) + , systemCursorType(type) { - LPWSTR id=NULL; - switch(type) + LPWSTR id = NULL; + switch (type) { case SmallWaiting: - id=IDC_APPSTARTING; + id = IDC_APPSTARTING; break; case LargeWaiting: - id=IDC_WAIT; + id = IDC_WAIT; break; case Arrow: - id=IDC_ARROW; + id = IDC_ARROW; break; case Cross: - id=IDC_CROSS; + id = IDC_CROSS; break; case Hand: - id=IDC_HAND; + id = IDC_HAND; break; case Help: - id=IDC_HELP; + id = IDC_HELP; break; case IBeam: - id=IDC_IBEAM; + id = IDC_IBEAM; break; case SizeAll: - id=IDC_SIZEALL; + id = IDC_SIZEALL; break; case SizeNESW: - id=IDC_SIZENESW; + id = IDC_SIZENESW; break; case SizeNS: - id=IDC_SIZENS; + id = IDC_SIZENS; break; case SizeNWSE: - id=IDC_SIZENWSE; + id = IDC_SIZENWSE; break; case SizeWE: - id=IDC_SIZEWE; + id = IDC_SIZEWE; break; } - handle=(HCURSOR)LoadImage(NULL, id, IMAGE_CURSOR, 0, 0, LR_DEFAULTSIZE|LR_SHARED); + handle = (HCURSOR)LoadImage(NULL, id, IMAGE_CURSOR, 0, 0, LR_DEFAULTSIZE | LR_SHARED); } bool WindowsCursor::IsSystemCursor() @@ -14517,33 +14445,33 @@ WindowsResourceService { { systemCursors.Resize(INativeCursor::SystemCursorCount); - for(vint i=0;i& fonts) + { + auto proc = [](const LOGFONTW* lpelf, const TEXTMETRICW* lpntm, DWORD fontType, LPARAM lParam) -> int + { + auto&& fonts = *(collections::List*)lParam; + fonts.Add(lpelf->lfFaceName); + return 1; + }; + + HDC refHdc = GetDC(NULL); + EnumFontFamilies(refHdc, NULL, proc, (LPARAM)&fonts); + ReleaseDC(NULL, refHdc); } } } diff --git a/Import/GacUI.Windows.h b/Import/GacUI.Windows.h index 1c5ca651..e1bc0a95 100644 --- a/Import/GacUI.Windows.h +++ b/Import/GacUI.Windows.h @@ -1748,49 +1748,6 @@ Renderers #endif -/*********************************************************************** -.\SERVICESIMPL\WINDOWSCALLBACKSERVICE.H -***********************************************************************/ -/*********************************************************************** -Vczh Library++ 3.0 -Developer: Zihan Chen(vczh) -GacUI::Native Window::Windows Implementation - -Interfaces: -***********************************************************************/ - -#ifndef VCZH_PRESENTATION_WINDOWS_SERVICESIMPL_WINDOWSCALLBACKSERVICE -#define VCZH_PRESENTATION_WINDOWS_SERVICESIMPL_WINDOWSCALLBACKSERVICE - - -namespace vl -{ - namespace presentation - { - namespace windows - { - class WindowsCallbackService : public Object, public INativeCallbackService - { - protected: - collections::List listeners; - - public: - WindowsCallbackService(); - - bool InstallListener(INativeControllerListener* listener)override; - bool UninstallListener(INativeControllerListener* listener)override; - - void InvokeGlobalTimer(); - void InvokeClipboardUpdated(); - void InvokeNativeWindowCreated(INativeWindow* window); - void InvokeNativeWindowDestroyed(INativeWindow* window); - }; - } - } -} - -#endif - /*********************************************************************** .\SERVICESIMPL\WINDOWSCLIPBOARDSERVICE.H ***********************************************************************/ @@ -2245,6 +2202,7 @@ namespace vl INativeCursor* GetDefaultSystemCursor()override; FontProperties GetDefaultFont()override; void SetDefaultFont(const FontProperties& value)override; + void EnumerateFonts(collections::List& fonts)override; }; } } diff --git a/Import/GacUI.cpp b/Import/GacUI.cpp index 2aa86f88..157a57ce 100644 --- a/Import/GacUI.cpp +++ b/Import/GacUI.cpp @@ -174,6 +174,9 @@ namespace vl { namespace presentation { + extern void GuiInitializeUtilities(); + extern void GuiFinalizeUtilities(); + namespace controls { using namespace collections; @@ -230,12 +233,47 @@ GuiApplication void GuiApplication::RegisterWindow(GuiWindow* window) { +#define ERROR_MESSAGE_PREFIX L"vl::presentation::controls::GuiApplication::RegisterWindow(GuiWindow*)#" + CHECK_ERROR(!window->registeredInApplication, ERROR_MESSAGE_PREFIX L"The window has been registered"); + window->registeredInApplication = true; windows.Add(window); + if (auto nativeWindow = window->GetNativeWindow()) + { + windowMap.Add(nativeWindow, window); + } +#undef ERROR_MESSAGE_PREFIX } void GuiApplication::UnregisterWindow(GuiWindow* window) { +#define ERROR_MESSAGE_PREFIX L"vl::presentation::controls::GuiApplication::UnregisterWindow(GuiWindow*)#" + CHECK_ERROR(window->registeredInApplication, ERROR_MESSAGE_PREFIX L"The window has not been registered"); + window->registeredInApplication = false; + if (auto nativeWindow = window->GetNativeWindow()) + { + windowMap.Remove(nativeWindow); + } windows.Remove(window); +#undef ERROR_MESSAGE_PREFIX + } + + void GuiApplication::NotifyNativeWindowChanged(GuiControlHost* controlHost, INativeWindow* previousNativeWindow) + { +#define ERROR_MESSAGE_PREFIX L"vl::presentation::controls::GuiApplication::NotifyNativeWindowChanged(GuiControlsHost*, INativeWindow*)#" + if (auto window = dynamic_cast(controlHost)) + { + if (!window->registeredInApplication) return; + if (previousNativeWindow) + { + CHECK_ERROR(windowMap[previousNativeWindow] == window, ERROR_MESSAGE_PREFIX L"Unpaired arguments."); + windowMap.Remove(previousNativeWindow); + } + if (auto nativeWindow = window->GetNativeWindow()) + { + windowMap.Add(nativeWindow, window); + } + } +#undef ERROR_MESSAGE_PREFIX } void GuiApplication::RegisterPopupOpened(GuiPopup* popup) @@ -292,6 +330,11 @@ GuiApplication } } + bool GuiApplication::RunOneCycle() + { + return GetCurrentController()->WindowService()->RunOneCycle(); + } + GuiWindow* GuiApplication::GetMainWindow() { return mainWindow; @@ -319,6 +362,12 @@ GuiApplication return 0; } + GuiWindow* GuiApplication::GetWindowFromNative(INativeWindow* nativeWindow) + { + vint index = windowMap.Keys().IndexOf(nativeWindow); + return index == -1 ? nullptr : windowMap.Values()[index]; + } + void GuiApplication::ShowTooltip(GuiControl* owner, GuiControl* tooltip, vint preferredContentWidth, Point location) { GuiWindow* ownerWindow = dynamic_cast(owner->GetRelatedControlHost()); @@ -507,7 +556,9 @@ GuiApplicationMain application = &app; IAsyncScheduler::RegisterSchedulerForCurrentThread(Ptr(new UIThreadAsyncScheduler)); IAsyncScheduler::RegisterDefaultScheduler(Ptr(new OtherThreadAsyncScheduler)); + GuiInitializeUtilities(); GuiMain(); + GuiFinalizeUtilities(); IAsyncScheduler::UnregisterDefaultScheduler(); IAsyncScheduler::UnregisterSchedulerForCurrentThread(); } @@ -1762,6 +1813,16 @@ namespace vl GuiControlHost ***********************************************************************/ + void GuiControlHost::DeleteThis() + { + auto callback = callbackAfterDeleteThis; + delete this; + if (callback) + { + callback(); + } + } + void GuiControlHost::OnNativeWindowChanged() { } @@ -1936,7 +1997,7 @@ GuiControlHost { GetApplication()->InvokeInMainThread(this, [=]() { - delete this; + DeleteThis(); }); } SetNativeWindow(nullptr); @@ -1978,17 +2039,23 @@ GuiControlHost delete host; } - void GuiControlHost::DeleteAfterProcessingAllEvents() + void GuiControlHost::DeleteAfterProcessingAllEvents(const Func& callback) { + CHECK_ERROR(!deleteWhenDestroyed, L"vl::presentation::controls::GuiControlHost::DeleteAfterProcessingAllEvents()#This function cannot be called twice."); + deleteWhenDestroyed = true; + callbackAfterDeleteThis = callback; + auto window = host->GetNativeWindow(); if (calledDestroyed || !window) { - delete this; + DeleteThis(); } else { - deleteWhenDestroyed = true; - GetCurrentController()->WindowService()->DestroyNativeWindow(window); + GetApplication()->InvokeInMainThread(this, [window]() + { + GetCurrentController()->WindowService()->DestroyNativeWindow(window); + }); } } @@ -2009,7 +2076,8 @@ GuiControlHost void GuiControlHost::SetNativeWindow(INativeWindow* window) { - if(host->GetNativeWindow()) + auto previousNativeWindow = host->GetNativeWindow(); + if(previousNativeWindow) { host->GetNativeWindow()->UninstallListener(this); } @@ -2025,6 +2093,7 @@ GuiControlHost { host->GetNativeWindow()->InstallListener(this); } + GetApplication()->NotifyNativeWindowChanged(this, previousNativeWindow); OnNativeWindowChanged(); } @@ -2683,7 +2752,16 @@ GuiWindow ShowModal(owner, [=]() { callback(); - DeleteAfterProcessingAllEvents(); + DeleteAfterProcessingAllEvents({}); + }); + } + + void GuiWindow::ShowModalAndDelete(GuiWindow* owner, const Func& callbackClosed, const Func& callbackDeleted) + { + ShowModal(owner, [=]() + { + callbackClosed(); + DeleteAfterProcessingAllEvents(callbackDeleted); }); } @@ -3948,7 +4026,7 @@ Helper Functions { if (auto controlHost = dynamic_cast(value)) { - controlHost->DeleteAfterProcessingAllEvents(); + controlHost->DeleteAfterProcessingAllEvents({}); } else { @@ -4230,8 +4308,9 @@ GuiGraphicsHost } } - void GuiGraphicsHost::OnMouseInput(const NativeWindowMouseInfo& info, GuiMouseEvent GuiGraphicsEventReceiver::* eventReceiverEvent) + void GuiGraphicsHost::OnMouseInput(const NativeWindowMouseInfo& info, bool capture, bool release, GuiMouseEvent GuiGraphicsEventReceiver::* eventReceiverEvent) { + if (capture) MouseCapture(info); GuiGraphicsComposition* composition = 0; if (mouseCaptureComposition) { @@ -4242,6 +4321,8 @@ GuiGraphicsHost auto point = hostRecord.nativeWindow->Convert(NativePoint(info.x, info.y)); composition = windowComposition->FindComposition(point, true); } + if (release) MouseUncapture(info); + if (composition) { Rect bounds = composition->GetGlobalBounds(); @@ -4371,68 +4452,62 @@ GuiGraphicsHost void GuiGraphicsHost::LeftButtonDown(const NativeWindowMouseInfo& info) { altActionManager->CloseAltHost(); - MouseCapture(info); - OnMouseInput(info, &GuiGraphicsEventReceiver::leftButtonDown); + OnMouseInput(info, true, false, &GuiGraphicsEventReceiver::leftButtonDown); } void GuiGraphicsHost::LeftButtonUp(const NativeWindowMouseInfo& info) { - OnMouseInput(info, &GuiGraphicsEventReceiver::leftButtonUp); - MouseUncapture(info); + OnMouseInput(info, false, true, &GuiGraphicsEventReceiver::leftButtonUp); } void GuiGraphicsHost::LeftButtonDoubleClick(const NativeWindowMouseInfo& info) { LeftButtonDown(info); - OnMouseInput(info, &GuiGraphicsEventReceiver::leftButtonDoubleClick); + OnMouseInput(info, false, false, &GuiGraphicsEventReceiver::leftButtonDoubleClick); } void GuiGraphicsHost::RightButtonDown(const NativeWindowMouseInfo& info) { altActionManager->CloseAltHost(); - MouseCapture(info); - OnMouseInput(info, &GuiGraphicsEventReceiver::rightButtonDown); + OnMouseInput(info, true, false, &GuiGraphicsEventReceiver::rightButtonDown); } void GuiGraphicsHost::RightButtonUp(const NativeWindowMouseInfo& info) { - OnMouseInput(info, &GuiGraphicsEventReceiver::rightButtonUp); - MouseUncapture(info); + OnMouseInput(info, false, true, &GuiGraphicsEventReceiver::rightButtonUp); } void GuiGraphicsHost::RightButtonDoubleClick(const NativeWindowMouseInfo& info) { RightButtonDown(info); - OnMouseInput(info, &GuiGraphicsEventReceiver::rightButtonDoubleClick); + OnMouseInput(info, false, false, &GuiGraphicsEventReceiver::rightButtonDoubleClick); } void GuiGraphicsHost::MiddleButtonDown(const NativeWindowMouseInfo& info) { altActionManager->CloseAltHost(); - MouseCapture(info); - OnMouseInput(info, &GuiGraphicsEventReceiver::middleButtonDown); + OnMouseInput(info, true, false, &GuiGraphicsEventReceiver::middleButtonDown); } void GuiGraphicsHost::MiddleButtonUp(const NativeWindowMouseInfo& info) { - OnMouseInput(info, &GuiGraphicsEventReceiver::middleButtonUp); - MouseUncapture(info); + OnMouseInput(info, false, true, &GuiGraphicsEventReceiver::middleButtonUp); } void GuiGraphicsHost::MiddleButtonDoubleClick(const NativeWindowMouseInfo& info) { MiddleButtonDown(info); - OnMouseInput(info, &GuiGraphicsEventReceiver::middleButtonDoubleClick); + OnMouseInput(info, false, false, &GuiGraphicsEventReceiver::middleButtonDoubleClick); } void GuiGraphicsHost::HorizontalWheel(const NativeWindowMouseInfo& info) { - OnMouseInput(info, &GuiGraphicsEventReceiver::horizontalWheel); + OnMouseInput(info, false, false, &GuiGraphicsEventReceiver::horizontalWheel); } void GuiGraphicsHost::VerticalWheel(const NativeWindowMouseInfo& info) { - OnMouseInput(info, &GuiGraphicsEventReceiver::verticalWheel); + OnMouseInput(info, false, false, &GuiGraphicsEventReceiver::verticalWheel); } void GuiGraphicsHost::MouseMoving(const NativeWindowMouseInfo& info) @@ -4496,7 +4571,7 @@ GuiGraphicsHost hostRecord.nativeWindow->SetWindowCursor(GetCurrentController()->ResourceService()->GetDefaultSystemCursor()); } - OnMouseInput(info, &GuiGraphicsEventReceiver::mouseMove); + OnMouseInput(info, false, false, &GuiGraphicsEventReceiver::mouseMove); } void GuiGraphicsHost::MouseEntered() @@ -9592,6 +9667,22 @@ GuiComboBoxBase { } +/*********************************************************************** +GuiComboButton +***********************************************************************/ + + GuiComboButton::GuiComboButton(theme::ThemeName themeName, GuiControl* _dropdownControl) + :GuiComboBoxBase(themeName) + , dropdownControl(_dropdownControl) + { + dropdownControl->GetBoundsComposition()->SetAlignmentToParent(Margin(0, 0, 0, 0)); + GetSubMenu()->GetContainerComposition()->AddChild(dropdownControl->GetBoundsComposition()); + } + + GuiComboButton::~GuiComboButton() + { + } + /*********************************************************************** GuiComboBoxListControl ***********************************************************************/ @@ -9679,12 +9770,16 @@ GuiComboBoxListControl Size adoptedSize = containedListControl->GetAdoptedSize(expectedSize); Size clientSize = GetPreferredMenuClientSize(); - clientSize.y = adoptedSize.y + subMenu->GetClientSize().y - containedListControl->GetBoundsComposition()->GetBounds().Height(); - SetPreferredMenuClientSize(clientSize); - - if (GetSubMenuOpening()) + vint height = adoptedSize.y + subMenu->GetClientSize().y - containedListControl->GetBoundsComposition()->GetBounds().Height(); + if (clientSize.y != height) { - subMenu->SetClientSize(clientSize); + clientSize.y = height; + SetPreferredMenuClientSize(clientSize); + + if (GetSubMenuOpening()) + { + subMenu->SetClientSize(clientSize); + } } } } @@ -33507,16 +33602,156 @@ INativeControllerListener Native Window Provider ***********************************************************************/ - INativeController* currentController=0; + class SubstitutableController; + INativeController* nativeController = nullptr; + SubstitutableController* substitutableController = nullptr; + + class SubstitutableController + : public Object + , public INativeController + , public INativeServiceSubstitution + { + public: + WString GetExecutablePath() override + { + return nativeController->GetExecutablePath(); + } + + // Substitutable Service + + template + struct Substitution + { + T* service = nullptr; + bool optional = false; + bool requested = false; + bool unsubstituted = false; + + void Substitute(T* _service, bool _optional) + { + CHECK_ERROR( + !requested, + L"The service cannot be substituted because it has been used." + ); + service = _service; + optional = _optional; + } + + void Unsubstitute(T* _service) + { + if (service == _service) + { + if (requested) + { + unsubstituted = true; + } + service = nullptr; + } + } + + T* GetService() + { + CHECK_ERROR( + !unsubstituted, + L"The service cannot be used because it has been unsubstituted." + ); + requested = true; + + auto nativeService = (nativeController->*Getter)(); + if (service && (!nativeService || !optional)) + { + return service; + } + + CHECK_ERROR( + nativeService != nullptr, + L"Required service does not exist." + ); + return nativeService; + } + }; + + // Unsubstitutable Service + + template + T* GetUnsubstitutableService() + { + auto nativeService = (nativeController->*Getter)(); + CHECK_ERROR( + nativeService != nullptr, + L"Required service does not exist." + ); + return nativeService; + } + + // INativeServiceSubstitution and INativeController + +#define GET_SUBSTITUTABLE_SERVICE(NAME) \ + Substitution< \ + INative##NAME##Service, \ + &INativeController::NAME##Service \ + > substituted##NAME; \ + \ + void Substitute(INative##NAME##Service* service, bool optional) override \ + { \ + substituted##NAME.Substitute(service, optional); \ + } \ + \ + void Unsubstitute(INative##NAME##Service* service) override \ + { \ + substituted##NAME.Unsubstitute(service); \ + } \ + \ + INative##NAME##Service* NAME##Service() override \ + { \ + return substituted##NAME.GetService(); \ + } \ + + GUI_SUBSTITUTABLE_SERVICES(GET_SUBSTITUTABLE_SERVICE) +#undef GET_SUBSTITUTABLE_SERVICE + +#define GET_UNSUBSTITUTABLE_SERVICE(NAME) \ + INative##NAME##Service* NAME##Service() override \ + { \ + return GetUnsubstitutableService< \ + INative##NAME##Service, \ + &INativeController::NAME##Service \ + >(); \ + } \ + + GUI_UNSUBSTITUTABLE_SERVICES(GET_UNSUBSTITUTABLE_SERVICE) +#undef GET_UNSUBSTITUTABLE_SERVICE + }; + + INativeServiceSubstitution* GetNativeServiceSubstitution() + { + return substitutableController; + } INativeController* GetCurrentController() { - return currentController; + return substitutableController; } - void SetCurrentController(INativeController* controller) + void SetNativeController(INativeController* controller) { - currentController=controller; + nativeController = controller; + + if (nativeController) + { + if (!substitutableController) + { + substitutableController = new SubstitutableController(); + } + } + else + { + if (substitutableController) + { + delete substitutableController; + substitutableController = 0; + } + } } /*********************************************************************** @@ -33546,215 +33781,6 @@ Helper Functions } } -/*********************************************************************** -.\NATIVEWINDOW\SHAREDSERVICES\GUISHAREDASYNCSERVICE.CPP -***********************************************************************/ - -namespace vl -{ - namespace presentation - { - using namespace collections; - -/*********************************************************************** -SharedAsyncService::TaskItem -***********************************************************************/ - - SharedAsyncService::TaskItem::TaskItem() - :semaphore(0) - { - } - - SharedAsyncService::TaskItem::TaskItem(Semaphore* _semaphore, const Func& _proc) - :semaphore(_semaphore) - ,proc(_proc) - { - } - - SharedAsyncService::TaskItem::~TaskItem() - { - } - -/*********************************************************************** -SharedAsyncService::DelayItem -***********************************************************************/ - - SharedAsyncService::DelayItem::DelayItem(SharedAsyncService* _service, const Func& _proc, bool _executeInMainThread, vint milliseconds) - :service(_service) - ,proc(_proc) - ,status(INativeDelay::Pending) - ,executeTime(DateTime::LocalTime().Forward(milliseconds)) - ,executeInMainThread(_executeInMainThread) - { - } - - SharedAsyncService::DelayItem::~DelayItem() - { - } - - INativeDelay::ExecuteStatus SharedAsyncService::DelayItem::GetStatus() - { - return status; - } - - bool SharedAsyncService::DelayItem::Delay(vint milliseconds) - { - SPIN_LOCK(service->taskListLock) - { - if(status==INativeDelay::Pending) - { - executeTime=DateTime::LocalTime().Forward(milliseconds); - return true; - } - } - return false; - } - - bool SharedAsyncService::DelayItem::Cancel() - { - SPIN_LOCK(service->taskListLock) - { - if(status==INativeDelay::Pending) - { - if(service->delayItems.Remove(this)) - { - status=INativeDelay::Canceled; - return true; - } - } - } - return false; - } - -/*********************************************************************** -SharedAsyncService -***********************************************************************/ - - SharedAsyncService::SharedAsyncService() - :mainThreadId(Thread::GetCurrentThreadId()) - { - } - - SharedAsyncService::~SharedAsyncService() - { - } - - void SharedAsyncService::ExecuteAsyncTasks() - { - DateTime now=DateTime::LocalTime(); - Array items; - List> executableDelayItems; - - SPIN_LOCK(taskListLock) - { - CopyFrom(items, taskItems); - taskItems.RemoveRange(0, items.Count()); - for(vint i=delayItems.Count()-1;i>=0;i--) - { - Ptr item=delayItems[i]; - if(now.filetime>=item->executeTime.filetime) - { - item->status=INativeDelay::Executing; - executableDelayItems.Add(item); - delayItems.RemoveAt(i); - } - } - } - - for (auto item : items) - { - item.proc(); - if(item.semaphore) - { - item.semaphore->Release(); - } - } - for (auto item : executableDelayItems) - { - if(item->executeInMainThread) - { - item->proc(); - item->status=INativeDelay::Executed; - } - else - { - InvokeAsync([=]() - { - item->proc(); - item->status=INativeDelay::Executed; - }); - } - } - } - - bool SharedAsyncService::IsInMainThread(INativeWindow* window) - { - return Thread::GetCurrentThreadId()==mainThreadId; - } - - void SharedAsyncService::InvokeAsync(const Func& proc) - { - ThreadPoolLite::Queue(proc); - } - - void SharedAsyncService::InvokeInMainThread(INativeWindow* window, const Func& proc) - { - SPIN_LOCK(taskListLock) - { - TaskItem item(0, proc); - taskItems.Add(item); - } - } - - bool SharedAsyncService::InvokeInMainThreadAndWait(INativeWindow* window, const Func& proc, vint milliseconds) - { - Semaphore semaphore; - semaphore.Create(0, 1); - - SPIN_LOCK(taskListLock) - { - TaskItem item(&semaphore, proc); - taskItems.Add(item); - } - -#ifdef VCZH_MSVC - if(milliseconds<0) - { - return semaphore.Wait(); - } - else - { - return semaphore.WaitForTime(milliseconds); - } -#else - return semaphore.Wait(); -#endif - } - - Ptr SharedAsyncService::DelayExecute(const Func& proc, vint milliseconds) - { - Ptr delay; - SPIN_LOCK(taskListLock) - { - delay=Ptr(new DelayItem(this, proc, false, milliseconds)); - delayItems.Add(delay); - } - return delay; - } - - Ptr SharedAsyncService::DelayExecuteInMainThread(const Func& proc, vint milliseconds) - { - Ptr delay; - SPIN_LOCK(taskListLock) - { - delay=Ptr(new DelayItem(this, proc, true, milliseconds)); - delayItems.Add(delay); - } - return delay; - } - } -} - /*********************************************************************** .\PLATFORMPROVIDERS\GACGEN\GACGENCONTROLLER.CPP ***********************************************************************/ @@ -33837,6 +33863,11 @@ public: return true; } + INativeCallbackInvoker* Invoker() override + { + CHECK_FAIL(L"Not implemented!"); + } + //////////////////////////////////////////////////////////////////// // INativeResourceService //////////////////////////////////////////////////////////////////// @@ -33870,6 +33901,11 @@ public: CHECK_FAIL(L"Not implemented!"); } + void EnumerateFonts(collections::List& fonts) override + { + CHECK_FAIL(L"Not implemented!"); + } + //////////////////////////////////////////////////////////////////// // INativeImageService //////////////////////////////////////////////////////////////////// @@ -33975,9 +34011,9 @@ extern void GuiApplicationMain(); int SetupGacGenNativeController() { GacGenNativeController controller; - SetCurrentController(&controller); + SetNativeController(&controller); GuiApplicationMain(); - SetCurrentController(nullptr); + SetNativeController(nullptr); return 0; } @@ -34636,10 +34672,7 @@ GuiHostedController::INativeControllerListener void GuiHostedController::GlobalTimer() { - for (auto listener : listeners) - { - listener->GlobalTimer(); - } + callbackService.InvokeGlobalTimer(); if (hostedResourceManager && nativeWindow && nativeWindow->IsVisible()) { @@ -34730,10 +34763,7 @@ GuiHostedController::INativeControllerListener void GuiHostedController::ClipboardUpdated() { - for (auto listener : listeners) - { - listener->ClipboardUpdated(); - } + callbackService.InvokeClipboardUpdated(); } void GuiHostedController::NativeWindowDestroying(INativeWindow* window) @@ -34752,7 +34782,7 @@ GuiHostedController::INativeController INativeCallbackService* GuiHostedController::CallbackService() { - return this; + return &callbackService; } INativeResourceService* GuiHostedController::ResourceService() @@ -34782,7 +34812,8 @@ GuiHostedController::INativeController INativeDialogService* GuiHostedController::DialogService() { - return this; + // Use FakeDialogServiceBase + return nullptr; } WString GuiHostedController::GetExecutablePath() @@ -34800,36 +34831,6 @@ GuiHostedController::INativeController return this; } -/*********************************************************************** -GuiHostedController::INativeCallbackService -***********************************************************************/ - - bool GuiHostedController::InstallListener(INativeControllerListener* listener) - { - if (listeners.Contains(listener)) - { - return false; - } - else - { - listeners.Add(listener); - return true; - } - } - - bool GuiHostedController::UninstallListener(INativeControllerListener* listener) - { - if (listeners.Contains(listener)) - { - listeners.Remove(listener); - return true; - } - else - { - return false; - } - } - /*********************************************************************** GuiHostedController::INativeAsyncService ***********************************************************************/ @@ -34864,30 +34865,6 @@ GuiHostedController::INativeAsyncService return nativeController->AsyncService()->DelayExecuteInMainThread(proc, milliseconds); } -/*********************************************************************** -GuiHostedController::INativeDialogService -***********************************************************************/ - - INativeDialogService::MessageBoxButtonsOutput GuiHostedController::ShowMessageBox(INativeWindow* window, const WString& text, const WString& title, MessageBoxButtonsInput buttons, MessageBoxDefaultButton defaultButton, MessageBoxIcons icon, MessageBoxModalOptions modal) - { - return nativeController->DialogService()->ShowMessageBox(nativeWindow, text, title, buttons, defaultButton, icon, modal); - } - - bool GuiHostedController::ShowColorDialog(INativeWindow* window, Color& selection, bool selected, ColorDialogCustomColorOptions customColorOptions, Color* customColors) - { - return nativeController->DialogService()->ShowColorDialog(nativeWindow, selection, selected, customColorOptions, customColors); - } - - bool GuiHostedController::ShowFontDialog(INativeWindow* window, FontProperties& selectionFont, Color& selectionColor, bool selected, bool showEffect, bool forceFontExist) - { - return nativeController->DialogService()->ShowFontDialog(nativeWindow, selectionFont, selectionColor, selected, showEffect, forceFontExist); - } - - bool GuiHostedController::ShowFileDialog(INativeWindow* window, collections::List& selectionFileNames, vint& selectionFilterIndex, FileDialogTypes dialogType, const WString& title, const WString& initialFileName, const WString& initialDirectory, const WString& defaultExtension, const WString& filter, FileDialogOptions options) - { - return nativeController->DialogService()->ShowFileDialog(nativeWindow, selectionFileNames, selectionFilterIndex, dialogType, title, initialFileName, initialDirectory, defaultExtension, filter, options); - } - /*********************************************************************** GuiHostedController::INativeScreenService ***********************************************************************/ @@ -34959,11 +34936,7 @@ GuiHostedController::INativeWindowService createdWindows.Add(hostedWindow); wmManager->RegisterWindow(&hostedWindow->wmWindow); - for (auto listener : listeners) - { - listener->NativeWindowCreated(hostedWindow.Obj()); - } - + callbackService.InvokeNativeWindowCreated(hostedWindow.Obj()); if (mainWindow) { hostedWindow->BecomeNonMainWindow(); @@ -34997,11 +34970,8 @@ GuiHostedController::INativeWindowService { listener->Destroying(); } - for (auto listener : listeners) - { - listener->NativeWindowDestroying(hostedWindow); - } + callbackService.InvokeNativeWindowDestroying(hostedWindow); wmManager->UnregisterWindow(&hostedWindow->wmWindow); createdWindows.RemoveAt(index); @@ -35092,6 +35062,11 @@ GuiHostedController::INativeWindowService #undef ERROR_MESSAGE_PREFIX } + bool GuiHostedController::RunOneCycle() + { + return nativeController->WindowService()->RunOneCycle(); + } + /*********************************************************************** GuiHostedController ***********************************************************************/ @@ -36104,17 +36079,6 @@ GuiNonMainHostedWindowProxy void Hide() override { - bool cancel = false; - for (auto listener : data->listeners) - { - listener->BeforeClosing(cancel); - if (cancel) return; - } - - for (auto listener : data->listeners) - { - listener->AfterClosing(); - } data->wmWindow.SetVisible(false); } @@ -43912,3 +43876,10332 @@ Type Resolver Plugin } } + +/*********************************************************************** +.\UTILITIES\GUIUTILITIESREGISTRATION.CPP +***********************************************************************/ + +namespace vl +{ + namespace presentation + { + +/*********************************************************************** +Utilities Registration +***********************************************************************/ + + FakeClipboardService* fakeClipboardService = nullptr; + FakeDialogService* fakeDialogService = nullptr; + + void GuiInitializeUtilities() + { + if (!fakeClipboardService) + { + fakeClipboardService = new FakeClipboardService; + GetNativeServiceSubstitution()->Substitute(fakeClipboardService, true); + } + + if (!fakeDialogService) + { + fakeDialogService = new FakeDialogService; + GetNativeServiceSubstitution()->Substitute(fakeDialogService, true); + } + } + + void GuiFinalizeUtilities() + { + if (fakeClipboardService) + { + GetNativeServiceSubstitution()->Unsubstitute(fakeClipboardService); + delete fakeClipboardService; + fakeClipboardService = nullptr; + } + + if (fakeDialogService) + { + GetNativeServiceSubstitution()->Unsubstitute(fakeDialogService); + delete fakeDialogService; + fakeDialogService = nullptr; + } + } + } +} + +/*********************************************************************** +.\UTILITIES\FAKESERVICES\GUIFAKECLIPBOARDSERVICE.CPP +***********************************************************************/ + +namespace vl +{ + namespace presentation + { + +/*********************************************************************** +FakeClipboardReader +***********************************************************************/ + + class FakeClipboardReader : public Object, public INativeClipboardReader + { + public: + Nullable text; + Ptr document; + Ptr image; + + bool ContainsText() override + { + return text; + } + + WString GetText() override + { + return text ? text.Value() : WString(); + } + + bool ContainsDocument() override + { + return document; + } + + Ptr GetDocument() override + { + return document; + } + + bool ContainsImage() override + { + return image; + } + + Ptr GetImage() override + { + return image; + } + }; + +/*********************************************************************** +FakeClipboardWriter +***********************************************************************/ + + class FakeClipboardWriter : public Object, public INativeClipboardWriter + { + public: + FakeClipboardService* service; + Ptr reader; + + FakeClipboardWriter(FakeClipboardService* _service) + : service(_service) + { + } + + void SetText(const WString& value) override + { + if (reader) reader->text = value; + } + + void SetDocument(Ptr value) override + { + if (reader) reader->document = value; + } + + void SetImage(Ptr value) override + { + if (reader) reader->image = value; + } + + bool Submit() override + { + if (!reader) return false; + service->reader = reader; + reader = nullptr; + service = nullptr; + return true; + } + }; + +/*********************************************************************** +FakeClipboardService +***********************************************************************/ + + FakeClipboardService::FakeClipboardService() + : reader(Ptr(new FakeClipboardReader)) + { + } + + FakeClipboardService::~FakeClipboardService() + { + } + + Ptr FakeClipboardService::ReadClipboard() + { + return reader; + } + + Ptr FakeClipboardService::WriteClipboard() + { + return Ptr(new FakeClipboardWriter(this)); + } + } +} + +/*********************************************************************** +.\UTILITIES\FAKESERVICES\GUIFAKEDIALOGSERVICEBASE.CPP +***********************************************************************/ + +namespace vl +{ + namespace presentation + { + using namespace compositions; + using namespace controls; + +/*********************************************************************** +FakeDialogServiceBase +***********************************************************************/ + + void FakeDialogServiceBase::ShowModalDialogAndDelete(Ptr viewModel, controls::GuiWindow* owner, controls::GuiWindow* dialog) + { + auto app = GetApplication(); + bool exit = false; + dialog->WindowOpened.AttachLambda([=](GuiGraphicsComposition* sender, GuiEventArgs& arguments) + { + dialog->ForceCalculateSizeImmediately(); + dialog->MoveToScreenCenter(); + }); + dialog->ShowModalAndDelete(owner, [&exit]() { exit = true; }, [viewModel]() { (void)viewModel; }); + while (!exit && app->RunOneCycle()); + } + + FakeDialogServiceBase::FakeDialogServiceBase() + { + } + + FakeDialogServiceBase::~FakeDialogServiceBase() + { + } + } +} + +/*********************************************************************** +.\UTILITIES\FAKESERVICES\GUIFAKEDIALOGSERVICEBASE_COLORDIALOG.CPP +***********************************************************************/ + +namespace vl +{ + namespace presentation + { + using namespace controls; + +/*********************************************************************** +View Model (IColorDialogViewModel) +***********************************************************************/ + + class FakeColorDialogViewModel : public Object, public virtual IColorDialogViewModel + { + public: + bool confirmed = false; + Color color; + + bool GetConfirmed() override { return confirmed; } + void SetConfirmed(bool value) override { confirmed = value; } + + Color GetColor() override { return color; } + void SetColor(Color value) override { color = value; } + }; + +/*********************************************************************** +FakeDialogServiceBase +***********************************************************************/ + + bool FakeDialogServiceBase::ShowColorDialog( + INativeWindow* window, + Color& selection, + bool selected, + ColorDialogCustomColorOptions customColorOptions, + Color* customColors + ) + { + auto vm = Ptr(new FakeColorDialogViewModel); + vm->color = selection; + { + auto owner = GetApplication()->GetWindowFromNative(window); + auto dialog = CreateColorDialog(vm); + ShowModalDialogAndDelete(vm, owner, dialog); + } + if (vm->confirmed) + { + selection = vm->color; + } + return vm->confirmed; + } + } +} + +/*********************************************************************** +.\UTILITIES\FAKESERVICES\GUIFAKEDIALOGSERVICEBASE_FILEDIALOG.CPP +***********************************************************************/ + +namespace vl +{ + namespace presentation + { + using namespace collections; + using namespace regex; + using namespace controls; + +/*********************************************************************** +View Model (IFileDialogFilter) +***********************************************************************/ + + class FileDialogFilter : public Object, public virtual IFileDialogFilter + { + public: + WString name; + WString filter; + Nullable defaultExtension; + Ptr regexFilter; + + WString GetName() override + { + return name; + } + + WString GetFilter() override + { + return filter; + } + + Nullable GetDefaultExtension() override + { + return defaultExtension; + } + + bool FilterFile(Ptr file) override + { + if (file->GetType() != FileDialogFileType::File) return true; + auto name = file->GetName(); + auto match = regexFilter->MatchHead(name); + return match && match->Result().Length() == name.Length(); + } + }; + +/*********************************************************************** +View Model (IFileDialogFolder) +***********************************************************************/ + + class FileDialogFolder : public Object, public virtual IFileDialogFolder + { + using FolderMap = Dictionary>; + protected: + vint taskId = 0; + bool taskFired = false; + + public: + FileDialogFolder* parent = nullptr; + FileDialogFolderType type = FileDialogFolderType::Placeholder; + filesystem::Folder folder; + WString name; + vint index = -1; + WString textLoadingFolders; + + // the placeholder node will always be the last one + Folders children; + FolderMap childrenByName; + + void AddChild(Ptr child) + { + child->textLoadingFolders = textLoadingFolders; + child->parent = this; + if (child->type == FileDialogFolderType::Folder) + { + childrenByName.Add(child->name, child); + } + child->index = HasPlaceholderChild() ? children.Count() - 1 : children.Count(); + children.Insert(child->index, child); + } + + bool HasPlaceholderChild() + { + return children.Count() > 0 && children[children.Count() - 1]->GetType() == FileDialogFolderType::Placeholder; + } + + void AddPlaceholderChild() + { + if (HasPlaceholderChild()) return; + CHECK_ERROR(textLoadingFolders.Length() > 0, L"vl::presentation::FileDialogFolder::AddPlaceholderChild()#textLoadingFolders is not initialized."); + auto child = Ptr(new FileDialogFolder); + child->name = textLoadingFolders; + AddChild(child); + } + + void RemovePlaceholderChild() + { + if (HasPlaceholderChild()) + { + children.RemoveAt(children.Count() - 1); + } + } + + FileDialogFolder() = default; + + FileDialogFolder(const filesystem::Folder& _folder) + : type(FileDialogFolderType::Folder) + , folder(_folder) + , name(_folder.GetFilePath().GetName()) + { + } + + Ptr GetParent() override + { + return Ptr(static_cast(parent)); + } + + FileDialogFolderType GetType() override + { + if (type == FileDialogFolderType::Placeholder && !taskFired) + { + taskFired = true; + auto taskFolder = Ptr(parent); + vint taskFolderId = ++taskFolder->taskId; + GetApplication()->InvokeAsync([taskFolder, taskFolderId]() + { + auto subFolders = Ptr(new List); + if (!taskFolder->folder.GetFolders(*subFolders.Obj())) + { + subFolders->Clear(); + } + + GetApplication()->InvokeInMainThread(nullptr, [taskFolder, taskFolderId, subFolders]() + { + if (taskFolder->taskId == taskFolderId) + { + taskFolder->RemovePlaceholderChild(); + for (auto subFolder : *subFolders.Obj()) + { + if (!taskFolder->childrenByName.Keys().Contains(subFolder.GetFilePath().GetName())) + { + auto child = Ptr(new FileDialogFolder(subFolder)); + taskFolder->AddChild(child); + child->AddPlaceholderChild(); + } + } + } + }); + }); + } + return type; + } + + WString GetFullPath() override + { + return folder.GetFilePath().GetFullPath(); + } + + WString GetName() override + { + return name; + } + + vint GetIndex() override + { + return index; + } + + Folders& GetFolders() override + { + return children; + } + + Ptr TryGetFolder(const WString& name) override + { + vint index = childrenByName.Keys().IndexOf(name); + if (index == -1) return {}; + return childrenByName.Values()[index]; + } + }; + +/*********************************************************************** +View Model (IFileDialogFile) +***********************************************************************/ + + class FileDialogFile : public Object, public virtual IFileDialogFile + { + public: + FileDialogFileType type = FileDialogFileType::Placeholder; + Ptr associatedFolder; + WString name; + + FileDialogFileType GetType() override + { + return type; + } + + Ptr GetAssociatedFolder() override + { + return associatedFolder; + } + + WString GetName() override + { + return name; + } + }; + +/*********************************************************************** +View Model (IFileDialogViewModel) +***********************************************************************/ + + class FileDialogViewModel : public Object, public virtual IFileDialogViewModel + { + using ConfirmedSelection = collections::List; + protected: + WString textLoadingFolders; + WString textLoadingFiles; + WString dialogErrorEmptySelection; + WString dialogErrorFileNotExist; + WString dialogErrorFileExpected; + WString dialogErrorFolderNotExist; + WString dialogErrorMultipleSelectionNotEnabled; + WString dialogAskCreateFile; + WString dialogAskOverrideFile; + + bool isLoadingFiles = false; + filesystem::FilePath loadingPath; + vint loadingTaskId = 0; + Files files; + Regex regexDisplayString{ L";" }; + + public: + bool selectToSave = false; + bool confirmed = false; + ConfirmedSelection confirmedSelection; + + WString title; + bool enabledMultipleSelection = false; + bool fileMustExist = false; + bool folderMustExist = false; + bool promptCreateFile = false; + bool promptOverriteFile = false; + WString defaultExtension; + + Filters filters; + Ptr selectedFilter; + + WString initialDirectory; + Ptr rootFolder; + Ptr selectedFolder; + + WString GetTitle() override + { + return title; + } + + bool GetEnabledMultipleSelection() override + { + return enabledMultipleSelection; + } + + WString GetDefaultExtension() override + { + return defaultExtension; + } + + const Filters& GetFilters() override + { + return filters; + } + + Ptr GetSelectedFilter() override + { + return selectedFilter; + } + + void SetSelectedFilter(Ptr value) override + { + if (auto filter = value.Cast()) + { + if (selectedFilter != filter && filters.Contains(value.Obj())) + { + selectedFilter = filter; + SelectedFilterChanged(); + } + } + } + + Ptr GetRootFolder() override + { + return rootFolder; + } + + Ptr GetSelectedFolder() override + { + return selectedFolder; + } + + void SetSelectedFolderInternal(Ptr value, bool refreshFile) + { + if (auto folder = value.Cast()) + { + if (selectedFolder != folder) + { + selectedFolder = folder; + SelectedFolderChanged(); + + if (refreshFile && loadingPath != selectedFolder->folder.GetFilePath()) + { + RefreshFiles(); + } + } + } + } + + void SetSelectedFolderInternal(filesystem::FilePath path, bool refreshFile) + { + List fragments; + while (!path.IsRoot()) + { + fragments.Add(path); + path = path.GetFolder(); + } + + auto folder = rootFolder; + for (vint i = fragments.Count() - 1; i >= 0; i--) + { + auto fragment = fragments[i]; + vint index = folder->childrenByName.Keys().IndexOf(fragment.GetName()); + if (index == -1) + { + auto child = Ptr(new FileDialogFolder(fragment)); + folder->AddChild(child); + child->AddPlaceholderChild(); + folder = child; + } + else + { + folder = folder->childrenByName.Values()[index]; + } + } + + SetSelectedFolderInternal(folder, refreshFile); + } + + void SetSelectedFolder(Ptr value) override + { + SetSelectedFolderInternal(value, true); + } + + bool GetIsLoadingFiles() override + { + return isLoadingFiles; + } + + Files& GetFiles() override + { + return files; + } + + void RefreshFiles() override + { + if (!selectedFolder) return; + + vint taskId = ++loadingTaskId; + auto taskFolder = selectedFolder; + auto taskPath = (loadingPath = selectedFolder->folder.GetFilePath()); + if (!isLoadingFiles) + { + isLoadingFiles = true; + IsLoadingFilesChanged(); + + files.Clear(); + { + auto item = Ptr(new FileDialogFile); + item->name = textLoadingFiles; + files.Add(item); + } + } + + auto vm = Ptr(this); + GetApplication()->InvokeAsync([taskId, taskFolder, taskPath, vm]() + { + auto folders = Ptr(new List); + auto files = Ptr(new List); + filesystem::Folder loadingFolder = taskPath; + if (!loadingFolder.GetFolders(*folders.Obj()) || !loadingFolder.GetFiles(*files.Obj())) + { + folders->Clear(); + files->Clear(); + } + + GetApplication()->InvokeInMainThread(nullptr, [taskId, taskFolder, folders, files, vm]() + { + if (vm->loadingTaskId == taskId) + { + vm->files.Clear(); + + for (auto folder : *folders.Obj()) + { + auto item = Ptr(new FileDialogFile); + item->type = FileDialogFileType::Folder; + item->name = folder.GetFilePath().GetName(); + + vint index = taskFolder->childrenByName.Keys().IndexOf(item->name); + if (index == -1) + { + auto associatedFolder = Ptr(new FileDialogFolder(folder)); + taskFolder->AddChild(associatedFolder); + associatedFolder->AddPlaceholderChild(); + item->associatedFolder = associatedFolder; + } + else + { + item->associatedFolder = taskFolder->childrenByName.Values()[index]; + } + + vm->files.Add(item); + } + + for (auto file : *files.Obj()) + { + auto item = Ptr(new FileDialogFile); + item->type = FileDialogFileType::File; + item->name = file.GetFilePath().GetName(); + vm->files.Add(item); + } + + vm->isLoadingFiles = false; + vm->IsLoadingFilesChanged(); + } + }); + }); + } + + WString GetDisplayString(collections::LazyList> files) override + { + return From(files) + .FindType() + .Where([](auto file) { return file->type != FileDialogFileType::Placeholder; }) + .Select([](auto file) { return WString::Unmanaged(L"\"") + file->name + WString::Unmanaged(L"\""); }) + .Aggregate(WString::Empty, [](auto&& a, auto&& b) + { + return a == WString::Empty ? b : a + WString::Unmanaged(L";") + b; + }); + } + + Selection ParseDisplayString(const WString& displayString) override + { + auto items = Ptr(new RegexMatch::List); + regexDisplayString.Split(displayString, false, *items.Obj()); + return From(LazyList>(items)) + .Select([](auto item) { return item->Result().Value(); }) + .Select([](auto item) + { + if (item.Length() >= 2 && item[0] == L'\"' && item[item.Length() - 1] == L'\"') + { + return item.Sub(1, item.Length() - 2); + } + else + { + return item; + } + }); + } + + bool TryConfirm(controls::GuiWindow* owner, Selection selectedPaths) override + { + auto wd = selectedFolder->folder.GetFilePath(); + List paths; + CopyFrom( + paths, + selectedPaths.Select([this, wd](auto path) { return wd / path; }) + ); + + if (paths.Count() == 0) + { + GetCurrentController()->DialogService()->ShowMessageBox( + owner->GetNativeWindow(), + dialogErrorEmptySelection, + owner->GetText(), + INativeDialogService::DisplayOK, + INativeDialogService::DefaultFirst, + INativeDialogService::IconError + ); + return false; + } + else if (paths.Count() == 1) + { + auto path = paths[0]; + if (filesystem::Folder(path).Exists()) + { + SetSelectedFolderInternal(path, true); + return false; + } + } + else + { + if (!enabledMultipleSelection) + { + GetCurrentController()->DialogService()->ShowMessageBox( + owner->GetNativeWindow(), + dialogErrorMultipleSelectionNotEnabled, + owner->GetText(), + INativeDialogService::DisplayOK, + INativeDialogService::DefaultFirst, + INativeDialogService::IconError + ); + return false; + } + } + + List files, folders, unexistings; + for (auto [path, index] : indexed(paths)) + { + if (filesystem::File(path).Exists()) + { + files.Add(index); + } + else if (filesystem::Folder(path).Exists()) + { + folders.Add(index); + } + else + { + unexistings.Add(index); + } + } + + if (folders.Count() > 0) + { + auto message = stream::GenerateToStream([&](stream::TextWriter& writer) + { + writer.WriteString(dialogErrorFileExpected); + for (vint index : folders) + { + writer.WriteLine(WString::Empty); + writer.WriteString(L" "); + writer.WriteString(wd.GetRelativePathFor(paths[index])); + } + }); + GetCurrentController()->DialogService()->ShowMessageBox( + owner->GetNativeWindow(), + message, + owner->GetText(), + INativeDialogService::DisplayOK, + INativeDialogService::DefaultFirst, + INativeDialogService::IconError + ); + return false; + } + + if (unexistings.Count() > 0) + { + if (fileMustExist) + { + auto message = stream::GenerateToStream([&](stream::TextWriter& writer) + { + writer.WriteString(dialogErrorFileNotExist); + for (vint index : unexistings) + { + writer.WriteLine(WString::Empty); + writer.WriteString(L" "); + writer.WriteString(wd.GetRelativePathFor(paths[index])); + } + }); + GetCurrentController()->DialogService()->ShowMessageBox( + owner->GetNativeWindow(), + message, + owner->GetText(), + INativeDialogService::DisplayOK, + INativeDialogService::DefaultFirst, + INativeDialogService::IconError + ); + return false; + } + + if (folderMustExist) + { + SortedList folderOfUnexistings; + for (vint index : unexistings) + { + auto path = paths[index].GetFolder(); + if(!folderOfUnexistings.Contains(path)) + { + folderOfUnexistings.Add(path); + } + } + + for (vint i = folderOfUnexistings.Count() - 1; i >= 0; i--) + { + if (filesystem::Folder(folderOfUnexistings[i]).Exists()) + { + folderOfUnexistings.RemoveAt(i); + } + } + + if (folderOfUnexistings.Count() > 0) + { + auto message = stream::GenerateToStream([&](stream::TextWriter& writer) + { + writer.WriteString(dialogErrorFolderNotExist); + for (auto path : folderOfUnexistings) + { + writer.WriteLine(WString::Empty); + writer.WriteString(L" "); + writer.WriteString(wd.GetRelativePathFor(path)); + } + }); + GetCurrentController()->DialogService()->ShowMessageBox( + owner->GetNativeWindow(), + message, + owner->GetText(), + INativeDialogService::DisplayOK, + INativeDialogService::DefaultFirst, + INativeDialogService::IconError + ); + return false; + } + } + + WString questionMessage; + List* questionFiles = nullptr; + if (selectToSave && promptOverriteFile) + { + questionMessage = dialogAskOverrideFile; + questionFiles = &files; + } + if (!selectToSave && promptCreateFile) + { + questionMessage = dialogAskCreateFile; + questionFiles = &unexistings; + } + + if (questionFiles && questionFiles->Count() > 0) + { + auto message = stream::GenerateToStream([&](stream::TextWriter& writer) + { + writer.WriteString(questionMessage); + for (vint index : *questionFiles) + { + writer.WriteLine(WString::Empty); + writer.WriteString(L" "); + writer.WriteString(wd.GetRelativePathFor(paths[index])); + } + }); + + auto result = GetCurrentController()->DialogService()->ShowMessageBox( + owner->GetNativeWindow(), + message, + owner->GetText(), + INativeDialogService::DisplayOKCancel, + INativeDialogService::DefaultThird, + INativeDialogService::IconQuestion + ); + + if (result == INativeDialogService::SelectCancel) + { + return false; + } + } + } + + CopyFrom( + confirmedSelection, + From(paths).Select([](auto path) { return path.GetFullPath(); }) + ); + + Nullable extension; + if (selectedFilter) + { + extension = selectedFilter->GetDefaultExtension(); + } + + if (!extension && defaultExtension!=WString::Empty) + { + extension = defaultExtension; + } + + if (extension) + { + auto&& sExt = WString::Unmanaged(L".") + extension.Value(); + vint lExt = sExt.Length(); + + for (vint i = 0; i < confirmedSelection.Count(); i++) + { + WString& selection = confirmedSelection[i]; + if (selection.Length() >= lExt && selection.Right(lExt) == sExt) + { + continue; + } + selection += sExt; + } + } + + confirmed = true; + return true; + } + + void InitLocalizedText( + const WString& _textLoadingFolders, + const WString& _textLoadingFiles, + const WString& _dialogErrorEmptySelection, + const WString& _dialogErrorFileNotExist, + const WString& _dialogErrorFileExpected, + const WString& _dialogErrorFolderNotExist, + const WString& _dialogErrorMultipleSelectionNotEnabled, + const WString& _dialogAskCreateFile, + const WString& _dialogAskOverrideFile + ) override + { + textLoadingFolders = _textLoadingFolders; + textLoadingFiles = _textLoadingFiles; + dialogErrorEmptySelection = _dialogErrorEmptySelection; + dialogErrorFileNotExist = _dialogErrorFileNotExist; + dialogErrorFileExpected = _dialogErrorFileExpected; + dialogErrorFolderNotExist = _dialogErrorFolderNotExist; + dialogErrorMultipleSelectionNotEnabled = _dialogErrorMultipleSelectionNotEnabled; + dialogAskCreateFile = _dialogAskCreateFile; + dialogAskOverrideFile = _dialogAskOverrideFile; + + rootFolder->textLoadingFolders = textLoadingFolders; + rootFolder->AddPlaceholderChild(); + + if (initialDirectory != WString::Empty) + { + filesystem::FilePath path = initialDirectory; + if (filesystem::Folder(path).Exists()) + { + SetSelectedFolderInternal(path, false); + return; + } + } + SetSelectedFolderInternal(rootFolder, false); + } + }; + +/*********************************************************************** +FakeDialogServiceBase +***********************************************************************/ + + bool FakeDialogServiceBase::ShowFileDialog( + INativeWindow* window, + collections::List& selectionFileNames, + vint& selectionFilterIndex, + FileDialogTypes dialogType, + const WString& title, + const WString& initialFileName, + const WString& initialDirectory, + const WString& defaultExtension, + const WString& filter, + FileDialogOptions options + ) + { + auto vm = Ptr(new FileDialogViewModel); + vm->title = title; + vm->enabledMultipleSelection = (options & INativeDialogService::FileDialogAllowMultipleSelection) != 0; + vm->fileMustExist = (options & INativeDialogService::FileDialogFileMustExist) != 0; + vm->folderMustExist = (options & INativeDialogService::FileDialogDirectoryMustExist) != 0; + vm->promptCreateFile = (options & INativeDialogService::FileDialogPromptCreateFile) != 0; + vm->promptOverriteFile = (options & INativeDialogService::FileDialogPromptOverwriteFile) != 0; + vm->defaultExtension = defaultExtension; + + Regex regexFilterExt(L"/*.[^*?]+"); + Regex regexWildcard(L"[*? ]"); + vint filterStart = 0; + while (true) + { + vint first = -1; + vint second = -1; + vint count = filter.Length(); + + for (vint i = filterStart; i < count; i++) + { + if (filter[i] == L'|') + { + first = i; + break; + } + } + if (first == -1) break; + + for (vint i = first + 1; i < count; i++) + { + if (filter[i] == L'|') + { + second = i; + break; + } + } + + auto filterItem = Ptr(new FileDialogFilter); + filterItem->name = filter.Sub(filterStart, first - filterStart); + filterItem->filter = filter.Sub(first + 1, (second == -1 ? count : second) - first - 1); + + if (auto match = regexFilterExt.MatchHead(filterItem->filter)) + { + if (match->Result().Length() == filterItem->filter.Length()) + { + filterItem->defaultExtension = filterItem->filter.Right(filterItem->filter.Length() - 2); + } + } + + auto regexFilter = stream::GenerateToStream([&](stream::TextWriter& writer) + { + writer.WriteChar(L'^'); + List> matches; + regexWildcard.Cut(filterItem->filter, false, matches); + for (auto match : matches) + { + if (match->Success()) + { + if (match->Result().Value() == WString::Unmanaged(L"*")) + { + writer.WriteString(WString::Unmanaged(L"/.*")); + } + else + { + writer.WriteString(WString::Unmanaged(L"/.")); + } + } + else + { + writer.WriteString(u32tow(regex_internal::EscapeTextForRegex(wtou32(match->Result().Value())))); + } + } + writer.WriteChar(L'$'); + }); + filterItem->regexFilter = Ptr(new Regex(regexFilter)); + + vm->filters.Add(filterItem); + + if (second == -1) break; + filterStart = second + 1; + } + + if (vm->filters.Count() > 0) + { + if (selectionFilterIndex < 0 || vm->filters.Count() <= selectionFilterIndex) + { + selectionFilterIndex = 0; + } + vm->selectedFilter = vm->filters[selectionFilterIndex].Cast(); + } + + vm->initialDirectory = initialDirectory; + vm->rootFolder = Ptr(new FileDialogFolder); + vm->rootFolder->type = FileDialogFolderType::Root; + + switch (dialogType) + { + case INativeDialogService::FileDialogOpen: + case INativeDialogService::FileDialogOpenPreview: + { + vm->selectToSave = false; + auto owner = GetApplication()->GetWindowFromNative(window); + auto dialog = CreateOpenFileDialog(vm); + ShowModalDialogAndDelete(vm, owner, dialog); + } + break; + case INativeDialogService::FileDialogSave: + case INativeDialogService::FileDialogSavePreview: + { + vm->selectToSave = true; + auto owner = GetApplication()->GetWindowFromNative(window); + auto dialog = CreateSaveFileDialog(vm); + ShowModalDialogAndDelete(vm, owner, dialog); + } + break; + } + + if (vm->filters.Count() > 0) + { + selectionFilterIndex = vm->filters.IndexOf(vm->selectedFilter.Obj()); + } + + if (vm->confirmed) + { + CopyFrom(selectionFileNames, vm->confirmedSelection); + } + return vm->confirmed; + } + } +} + +/*********************************************************************** +.\UTILITIES\FAKESERVICES\GUIFAKEDIALOGSERVICEBASE_FONTDIALOG.CPP +***********************************************************************/ + +namespace vl +{ + namespace presentation + { + using namespace collections; + using namespace controls; + +/*********************************************************************** +View Model (ICommonFontDialogViewModel) +***********************************************************************/ + + template + class FakeFontDialogViewModel : public Object, public virtual IViewModel + { + public: + using FontList = collections::List; + + bool confirmed = false; + bool fontMustExist = false; + FontList fontList; + + bool GetConfirmed() override { return confirmed; } + void SetConfirmed(bool value) override { confirmed = value; } + + bool GetFontMustExist() override { return fontMustExist; } + const FontList& GetFontList() override { return fontList; } + }; + +/*********************************************************************** +View Model (ISimpleFontDialogViewModel) +***********************************************************************/ + + class FakeSimpleFontDialogViewModel : public FakeFontDialogViewModel + { + public: + WString fontFamily; + vint fontSize = 0; + + WString GetFontFamily() override { return fontFamily; } + void SetFontFamily(const WString& value) override { fontFamily = value; } + + vint GetFontSize() override { return fontSize; } + void SetFontSize(vint value) override { fontSize = value; } + }; + +/*********************************************************************** +View Model (IFullFontDialogViewModel) +***********************************************************************/ + + class FakeFullFontDialogViewModel : public FakeFontDialogViewModel + { + public: + Color color; + FontProperties font; + + Color GetColor() override { return color; } + void SetColor(Color value) override { color = value; } + + FontProperties GetFont() override { return font; } + void SetFont(const FontProperties& value) override { font = value; } + + bool SelectColor(controls::GuiWindow* owner) override + { + return GetCurrentController()->DialogService()->ShowColorDialog( + owner->GetNativeWindow(), + color + ); + } + }; + +/*********************************************************************** +FakeDialogServiceBase +***********************************************************************/ + + bool FakeDialogServiceBase::ShowFontDialog( + INativeWindow* window, + FontProperties& selectionFont, + Color& selectionColor, + bool selected, + bool showEffect, + bool forceFontExist + ) + { + auto initVm = [=](auto vm) + { + vm->fontMustExist = forceFontExist; + GetCurrentController()->ResourceService()->EnumerateFonts(vm->fontList); + if (vm->fontList.Count() > 0) + { + Sort( + &vm->fontList[0], + vm->fontList.Count(), + Func([](WString a, WString b) {return WString::Compare(a, b); }) + ); + } + }; + + if (showEffect) + { + auto vm = Ptr(new FakeFullFontDialogViewModel); + initVm(vm); + + vm->font = selectionFont; + vm->color = selectionColor; + { + auto owner = GetApplication()->GetWindowFromNative(window); + auto dialog = CreateFullFontDialog(vm); + ShowModalDialogAndDelete(vm, owner, dialog); + } + if (vm->confirmed) + { + selectionFont = vm->font; + selectionColor = vm->color; + } + return vm->confirmed; + } + else + { + auto vm = Ptr(new FakeSimpleFontDialogViewModel); + initVm(vm); + + vm->fontFamily = selectionFont.fontFamily; + vm->fontSize = selectionFont.size; + { + auto owner = GetApplication()->GetWindowFromNative(window); + auto dialog = CreateSimpleFontDialog(vm); + ShowModalDialogAndDelete(vm, owner, dialog); + } + if (vm->confirmed) + { + selectionFont.fontFamily = vm->fontFamily; + selectionFont.size = vm->fontSize; + } + return vm->confirmed; + } + } + } +} + +/*********************************************************************** +.\UTILITIES\FAKESERVICES\GUIFAKEDIALOGSERVICEBASE_MESSAGEBOX.CPP +***********************************************************************/ + +namespace vl +{ + namespace presentation + { + using namespace controls; + +/*********************************************************************** +View Model (IMessageBoxDialogViewModel) +***********************************************************************/ + + class FakeMessageBoxDialogViewModel : public Object, public virtual IMessageBoxDialogViewModel + { + public: + class Action : public Object, public virtual IMessageBoxDialogAction + { + public: + FakeMessageBoxDialogViewModel* viewModel; + ButtonItem button; + + Action(FakeMessageBoxDialogViewModel* _viewModel, ButtonItem _button) + : viewModel(_viewModel) + , button(_button) + { + } + + ButtonItem GetButton() override { return button; } + void PerformAction() override { viewModel->result = button; } + }; + + WString text; + WString title; + Icon icon; + ButtonItemList buttons; + ButtonItem defaultButton; + ButtonItem result; + + WString GetText() override { return text; } + WString GetTitle() override { return title; } + Icon GetIcon() override { return icon; } + const ButtonItemList& GetButtons() override { return buttons; } + ButtonItem GetDefaultButton() override { return defaultButton; } + ButtonItem GetResult() override { return result; } + }; + +/*********************************************************************** +FakeDialogServiceBase +***********************************************************************/ + + FakeDialogServiceBase::MessageBoxButtonsOutput FakeDialogServiceBase::ShowMessageBox( + INativeWindow* window, + const WString& text, + const WString& title, + MessageBoxButtonsInput buttons, + MessageBoxDefaultButton defaultButton, + MessageBoxIcons icon, + MessageBoxModalOptions modal + ) + { + auto vm = Ptr(new FakeMessageBoxDialogViewModel); + vm->text = text; + vm->title = title; + vm->icon = icon; + +#define USE_BUTTON(NAME) vm->buttons.Add(Ptr(new FakeMessageBoxDialogViewModel::Action(vm.Obj(), INativeDialogService::Select##NAME))) + switch (buttons) + { + case DisplayOK: USE_BUTTON(OK); break; + case DisplayOKCancel: USE_BUTTON(OK); USE_BUTTON(Cancel); break; + case DisplayYesNo: USE_BUTTON(Yes); USE_BUTTON(No); break; + case DisplayYesNoCancel: USE_BUTTON(Yes); USE_BUTTON(No); USE_BUTTON(Cancel); break; + case DisplayRetryCancel: USE_BUTTON(Retry); USE_BUTTON(Cancel); break; + case DisplayAbortRetryIgnore: USE_BUTTON(Abort); USE_BUTTON(Retry); USE_BUTTON(Ignore); break; + case DisplayCancelTryAgainContinue: USE_BUTTON(Cancel); USE_BUTTON(TryAgain); USE_BUTTON(Continue); break; + default: USE_BUTTON(OK); break; + } +#undef USE_BUTTON + +#define USE_DEFAULT_BUTTON(INDEX) if (vm->buttons.Count() > INDEX) vm->defaultButton = vm->buttons[INDEX]->GetButton() + USE_DEFAULT_BUTTON(0); + switch (defaultButton) + { + case DefaultSecond: USE_DEFAULT_BUTTON(1); break; + case DefaultThird: USE_DEFAULT_BUTTON(2); break; + default:; + } +#undef USE_DEFAULT_BUTTON + + vm->result = vm->defaultButton; + { + auto owner = GetApplication()->GetWindowFromNative(window); + auto dialog = CreateMessageBoxDialog(vm); + ShowModalDialogAndDelete(vm, owner, dialog); + } + return vm->result; + } + } +} + +/*********************************************************************** +.\UTILITIES\FAKESERVICES\DIALOGS\GUIFAKEDIALOGSERVICE.CPP +***********************************************************************/ + +namespace vl +{ + namespace presentation + { + using namespace controls; + +/*********************************************************************** +FakeDialogService +***********************************************************************/ + + controls::GuiWindow* FakeDialogService::CreateMessageBoxDialog(Ptr< IMessageBoxDialogViewModel> viewModel) + { + return new gaclib_controls::MessageBoxWindow(viewModel); + } + + controls::GuiWindow* FakeDialogService::CreateColorDialog(Ptr viewModel) + { + return new gaclib_controls::ColorDialogWindow(viewModel); + } + + controls::GuiWindow* FakeDialogService::CreateSimpleFontDialog(Ptr viewModel) + { + return new gaclib_controls::SimpleFontDialogWindow(viewModel); + } + + controls::GuiWindow* FakeDialogService::CreateFullFontDialog(Ptr viewModel) + { + return new gaclib_controls::FullFontDialogWindow(viewModel); + } + + controls::GuiWindow* FakeDialogService::CreateOpenFileDialog(Ptr viewModel) + { + auto dialog = new gaclib_controls::FileDialogWindow(viewModel); + dialog->MakeOpenFileDialog(); + return dialog; + } + + controls::GuiWindow* FakeDialogService::CreateSaveFileDialog(Ptr viewModel) + { + auto dialog = new gaclib_controls::FileDialogWindow(viewModel); + dialog->MakeSaveFileDialog(); + return dialog; + } + + FakeDialogService::FakeDialogService() + { + } + + FakeDialogService::~FakeDialogService() + { + } + } +} + +/*********************************************************************** +.\UTILITIES\FAKESERVICES\DIALOGS\SOURCE\GUIFAKEDIALOGSERVICEUI.CPP +***********************************************************************/ +/*********************************************************************** +!!!!!! DO NOT MODIFY !!!!!! + +GacGen.exe Resource.xml + +This file is generated by Workflow compiler +https://github.com/vczh-libraries +***********************************************************************/ + + +#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::GuiFakeDialogServiceUI:: +#define GLOBAL_NAME ::vl_workflow_global::GuiFakeDialogServiceUI::Instance(). +#define GLOBAL_OBJ &::vl_workflow_global::GuiFakeDialogServiceUI::Instance() + +/*********************************************************************** +Global Variables +***********************************************************************/ + +BEGIN_GLOBAL_STORAGE_CLASS(vl_workflow_global_GuiFakeDialogServiceUI) + vl_workflow_global::GuiFakeDialogServiceUI instance; + INITIALIZE_GLOBAL_STORAGE_CLASS + FINALIZE_GLOBAL_STORAGE_CLASS +END_GLOBAL_STORAGE_CLASS(vl_workflow_global_GuiFakeDialogServiceUI) + +namespace vl_workflow_global +{ +/*********************************************************************** +Global Functions +***********************************************************************/ + + GuiFakeDialogServiceUI& GuiFakeDialogServiceUI::Instance() + { + return Getvl_workflow_global_GuiFakeDialogServiceUI().instance; + } + +/*********************************************************************** +Closures +***********************************************************************/ + + //------------------------------------------------------------------- + + __vwsnf10_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_::__vwsnf10_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_(::gaclib_controls::ColorDialogControlConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf10_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(__vwsnthis_0->self)->GetValue(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::presentation::Color>(__vwsn_value_); + if ((__vwsn_old_ == __vwsn_new_)) + { + return; + } + ::vl::__vwsn::This(__vwsnthis_0->self)->SetValue(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf11_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_::__vwsnf11_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_(::gaclib_controls::ColorDialogControlConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf11_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(__vwsnthis_0->self)->GetStrings(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::Ptr<::gaclib_controls::IDialogStringsStrings>>(__vwsn_value_); + if ((__vwsn_old_.Obj() == __vwsn_new_.Obj())) + { + return; + } + ::vl::__vwsn::This(__vwsnthis_0->self)->SetStrings(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf12_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize_::__vwsnf12_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize_(::gaclib_controls::ColorDialogWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf12_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(__vwsnthis_0->__vwsn_precompile_4)->GetText(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::WString>(__vwsn_value_); + if ((__vwsn_old_ == __vwsn_new_)) + { + return; + } + ::vl::__vwsn::This(__vwsnthis_0->__vwsn_precompile_4)->SetText(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf13_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize_::__vwsnf13_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize_(::gaclib_controls::ColorDialogWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf13_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize_::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const + { + ::vl::__vwsn::This(__vwsnthis_0->ViewModel.Obj())->SetConfirmed(true); + ::vl::__vwsn::This(__vwsnthis_0->ViewModel.Obj())->SetColor(::vl::__vwsn::This(__vwsnthis_0->colorControl)->GetValue()); + ::vl::__vwsn::This(__vwsnthis_0->self)->Close(); + } + + //------------------------------------------------------------------- + + __vwsnf14_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize_::__vwsnf14_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize_(::gaclib_controls::ColorDialogWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf14_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(__vwsnthis_0->__vwsn_precompile_7)->GetText(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::WString>(__vwsn_value_); + if ((__vwsn_old_ == __vwsn_new_)) + { + return; + } + ::vl::__vwsn::This(__vwsnthis_0->__vwsn_precompile_7)->SetText(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf15_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize_::__vwsnf15_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize_(::gaclib_controls::ColorDialogWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf15_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize_::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const + { + ::vl::__vwsn::This(__vwsnthis_0->self)->Close(); + } + + //------------------------------------------------------------------- + + __vwsnf16_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize_::__vwsnf16_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize_(::gaclib_controls::ColorDialogWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf16_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(__vwsnthis_0->self)->GetText(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::WString>(__vwsn_value_); + if ((__vwsn_old_ == __vwsn_new_)) + { + return; + } + ::vl::__vwsn::This(__vwsnthis_0->self)->SetText(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf17_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize_::__vwsnf17_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize_(::gaclib_controls::ColorDialogWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf17_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(__vwsnthis_0->self)->GetStrings(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::Ptr<::gaclib_controls::IDialogStringsStrings>>(__vwsn_value_); + if ((__vwsn_old_.Obj() == __vwsn_new_.Obj())) + { + return; + } + ::vl::__vwsn::This(__vwsnthis_0->self)->SetStrings(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf18_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize_::__vwsnf18_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize_(::gaclib_controls::FileDialogWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf18_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize_::operator()() const + { + ::vl::__vwsn::This(::vl::presentation::controls::GetApplication())->InvokeInMainThread(::vl::__vwsn::This(__vwsnthis_0->self)->GetRelatedControlHost(), vl::Func(::vl_workflow_global::__vwsnf19_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize__(__vwsnthis_0))); + } + + //------------------------------------------------------------------- + + __vwsnf19_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize__::__vwsnf19_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize__(::gaclib_controls::FileDialogWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf19_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize__::operator()() const + { + ::vl::__vwsn::This(__vwsnthis_0->self)->Close(); + } + + //------------------------------------------------------------------- + + __vwsnf1_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize_::__vwsnf1_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize_(::gaclib_controls::ColorComponentControlConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf1_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(__vwsnthis_0->textBox)->GetText(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::WString>(__vwsn_value_); + if ((__vwsn_old_ == __vwsn_new_)) + { + return; + } + ::vl::__vwsn::This(__vwsnthis_0->textBox)->SetText(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf20_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize_::__vwsnf20_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize_(::gaclib_controls::FileDialogWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf20_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(__vwsnthis_0->buttonOK)->GetEnabled(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox(__vwsn_value_); + if ((__vwsn_old_ == __vwsn_new_)) + { + return; + } + ::vl::__vwsn::This(__vwsnthis_0->buttonOK)->SetEnabled(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf21_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize_::__vwsnf21_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize_(::gaclib_controls::FileDialogWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf21_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize_::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const + { + if (::vl::__vwsn::This(__vwsnthis_0->ViewModel.Obj())->TryConfirm(static_cast<::vl::presentation::controls::GuiWindow*>(__vwsnthis_0->self), ::vl::__vwsn::This(__vwsnthis_0->filePickerControl)->GetSelection())) + { + ::vl::__vwsn::This(__vwsnthis_0->self)->Close(); + } + } + + //------------------------------------------------------------------- + + __vwsnf22_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize_::__vwsnf22_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize_(::gaclib_controls::FileDialogWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf22_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(__vwsnthis_0->__vwsn_precompile_6)->GetText(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::WString>(__vwsn_value_); + if ((__vwsn_old_ == __vwsn_new_)) + { + return; + } + ::vl::__vwsn::This(__vwsnthis_0->__vwsn_precompile_6)->SetText(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf23_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize_::__vwsnf23_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize_(::gaclib_controls::FileDialogWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf23_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize_::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const + { + ::vl::__vwsn::This(__vwsnthis_0->self)->Close(); + } + + //------------------------------------------------------------------- + + __vwsnf24_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize_::__vwsnf24_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize_(::gaclib_controls::FileDialogWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf24_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(__vwsnthis_0->self)->GetStrings(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::Ptr<::gaclib_controls::IDialogStringsStrings>>(__vwsn_value_); + if ((__vwsn_old_.Obj() == __vwsn_new_.Obj())) + { + return; + } + ::vl::__vwsn::This(__vwsnthis_0->self)->SetStrings(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf25_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindow___vwsn_instance_ctor__::__vwsnf25_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindow___vwsn_instance_ctor__(::gaclib_controls::FileDialogWindow* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf25_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindow___vwsn_instance_ctor__::operator()() const + { + ::vl::__vwsn::This(__vwsnthis_0->filePickerControl)->LocateSelectedFolderInTreeView(); + } + + //------------------------------------------------------------------- + + __vwsnf26_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_::__vwsnf26_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_(::gaclib_controls::FilePickerControlConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + ::vl::Ptr<::vl::reflection::description::IValueEnumerable> __vwsnf26_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_item_) const + { + auto item = ::vl::__vwsn::Unbox<::vl::Ptr<::vl::presentation::IFileDialogFolder>>(__vwsn_item_); + return ::vl::Ptr<::vl::reflection::description::IValueEnumerable>(::vl::__vwsn::UnboxCollection<::vl::reflection::description::IValueObservableList>(::vl::__vwsn::This(item.Obj())->GetFolders())); + } + + //------------------------------------------------------------------- + + __vwsnf27_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_::__vwsnf27_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_(::gaclib_controls::FilePickerControlConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + ::vl::WString __vwsnf27_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_item_) const + { + auto item = ::vl::__vwsn::Unbox<::vl::Ptr<::vl::presentation::IFileDialogFolder>>(__vwsn_item_); + return ::vl::__vwsn::This(item.Obj())->GetName(); + } + + //------------------------------------------------------------------- + + __vwsnf28_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_::__vwsnf28_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_(::gaclib_controls::FilePickerControlConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + ::vl::WString __vwsnf28_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_item_) const + { + auto item = ::vl::__vwsn::Unbox<::vl::Ptr<::vl::presentation::IFileDialogFile>>(__vwsn_item_); + return ::vl::__vwsn::This(item.Obj())->GetName(); + } + + //------------------------------------------------------------------- + + __vwsnf29_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_::__vwsnf29_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_(::gaclib_controls::FilePickerControlConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + ::vl::WString __vwsnf29_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_item_) const + { + auto item = ::vl::__vwsn::Unbox<::vl::Ptr<::vl::presentation::IFileDialogFilter>>(__vwsn_item_); + return ::vl::__vwsn::This(item.Obj())->GetName(); + } + + //------------------------------------------------------------------- + + __vwsnf2_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize_::__vwsnf2_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize_(::gaclib_controls::ColorComponentControlConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf2_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(__vwsnthis_0->textBox)->GetAlt(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::WString>(__vwsn_value_); + if ((__vwsn_old_ == __vwsn_new_)) + { + return; + } + ::vl::__vwsn::This(__vwsnthis_0->textBox)->SetAlt(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf30_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_::__vwsnf30_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_(::gaclib_controls::FilePickerControlConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf30_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(__vwsnthis_0->__vwsn_precompile_2)->GetText(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::WString>(__vwsn_value_); + if ((__vwsn_old_ == __vwsn_new_)) + { + return; + } + ::vl::__vwsn::This(__vwsnthis_0->__vwsn_precompile_2)->SetText(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf32_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_::__vwsnf32_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_(::gaclib_controls::FilePickerControlConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf32_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(__vwsnthis_0->dataGrid)->GetAdditionalFilter(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::Ptr<::vl::presentation::controls::list::IDataFilter>>(__vwsn_value_); + if ((__vwsn_old_.Obj() == __vwsn_new_.Obj())) + { + return; + } + ::vl::__vwsn::This(__vwsnthis_0->dataGrid)->SetAdditionalFilter(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf33_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_::__vwsnf33_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_(::gaclib_controls::FilePickerControlConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf33_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiKeyEventArgs* arguments) const + { + if (((((! ::vl::__vwsn::This(arguments)->ctrl) && (! ::vl::__vwsn::This(arguments)->shift)) && (! ::vl::__vwsn::This(arguments)->alt)) && (::vl::__vwsn::This(arguments)->code == ::vl::presentation::VKEY::KEY_RETURN))) + { + if (::vl::__vwsn::This(__vwsnthis_0->ViewModel.Obj())->TryConfirm(::vl::__vwsn::Ensure(::vl::__vwsn::RawPtrCast<::vl::presentation::controls::GuiWindow>(::vl::__vwsn::This(__vwsnthis_0->self)->GetRelatedControlHost())), ::vl::__vwsn::This(__vwsnthis_0->self)->GetSelection())) + { + ::vl::__vwsn::EventInvoke(::vl::__vwsn::This(__vwsnthis_0->self)->RequestClose)(); + } + } + } + + //------------------------------------------------------------------- + + __vwsnf35_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_::__vwsnf35_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_(::gaclib_controls::FilePickerControlConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf35_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const + { + ::vl::__vwsn::This(__vwsnthis_0->textBox)->SetText(::vl::__vwsn::This(__vwsnthis_0->ViewModel.Obj())->GetDisplayString(::vl::__vwsn::This(__vwsnthis_0->self)->GetSelectedFiles())); + ::vl::__vwsn::This(__vwsnthis_0->textBox)->Select([&](){ ::vl::presentation::TextPos __vwsn_temp__; __vwsn_temp__.row = static_cast<::vl::vint>(0); __vwsn_temp__.column = static_cast<::vl::vint>(0); return __vwsn_temp__; }(), [&](){ ::vl::presentation::TextPos __vwsn_temp__; __vwsn_temp__.row = static_cast<::vl::vint>(0); __vwsn_temp__.column = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + } + + //------------------------------------------------------------------- + + __vwsnf36_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_::__vwsnf36_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_(::gaclib_controls::FilePickerControlConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf36_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiItemMouseEventArgs* arguments) const + { + auto file = ::vl::__vwsn::This(__vwsnthis_0->ViewModel.Obj())->GetFiles()[::vl::__vwsn::This(arguments)->itemIndex]; + auto selection = ::vl::__vwsn::This(__vwsnthis_0->ViewModel.Obj())->ParseDisplayString(::vl::__vwsn::This(__vwsnthis_0->ViewModel.Obj())->GetDisplayString(::vl::reflection::description::GetLazyList<::vl::Ptr<::vl::presentation::IFileDialogFile>>((::vl::__vwsn::CreateList().Add(file)).list))); + ::vl::__vwsn::This(::vl::presentation::controls::GetApplication())->InvokeInMainThread(::vl::__vwsn::This(__vwsnthis_0->self)->GetRelatedControlHost(), vl::Func(::vl_workflow_global::__vwsnf37_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__(selection, __vwsnthis_0))); + } + + //------------------------------------------------------------------- + + __vwsnf37_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__::__vwsnf37_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__(::vl::collections::LazyList<::vl::WString> __vwsnctor_selection, ::gaclib_controls::FilePickerControlConstructor* __vwsnctorthis_0) + :selection(__vwsnctor_selection) + , __vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf37_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__::operator()() const + { + if (::vl::__vwsn::This(__vwsnthis_0->ViewModel.Obj())->TryConfirm(::vl::__vwsn::Ensure(::vl::__vwsn::RawPtrCast<::vl::presentation::controls::GuiWindow>(::vl::__vwsn::This(__vwsnthis_0->self)->GetRelatedControlHost())), this->selection)) + { + ::vl::__vwsn::EventInvoke(::vl::__vwsn::This(__vwsnthis_0->self)->RequestClose)(); + } + } + + //------------------------------------------------------------------- + + __vwsnf38_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_::__vwsnf38_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_(::gaclib_controls::FilePickerControlConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf38_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(__vwsnthis_0->__vwsn_precompile_17)->GetText(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::WString>(__vwsn_value_); + if ((__vwsn_old_ == __vwsn_new_)) + { + return; + } + ::vl::__vwsn::This(__vwsnthis_0->__vwsn_precompile_17)->SetText(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf39_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_::__vwsnf39_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_(::gaclib_controls::FilePickerControlConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf39_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiKeyEventArgs* arguments) const + { + if (((((! ::vl::__vwsn::This(arguments)->ctrl) && (! ::vl::__vwsn::This(arguments)->shift)) && (! ::vl::__vwsn::This(arguments)->alt)) && (::vl::__vwsn::This(arguments)->code == ::vl::presentation::VKEY::KEY_RETURN))) + { + if (::vl::__vwsn::This(__vwsnthis_0->ViewModel.Obj())->TryConfirm(::vl::__vwsn::Ensure(::vl::__vwsn::RawPtrCast<::vl::presentation::controls::GuiWindow>(::vl::__vwsn::This(__vwsnthis_0->self)->GetRelatedControlHost())), ::vl::__vwsn::This(__vwsnthis_0->self)->GetSelection())) + { + ::vl::__vwsn::EventInvoke(::vl::__vwsn::This(__vwsnthis_0->self)->RequestClose)(); + } + } + } + + //------------------------------------------------------------------- + + __vwsnf3_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize_::__vwsnf3_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize_(::gaclib_controls::ColorComponentControlConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf3_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize_::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const + { + auto value = [&](){ try{ return ::vl::__vwsn::Parse<::vl::vint>(::vl::__vwsn::This(__vwsnthis_0->textBox)->GetText()); } catch(...){ return (- static_cast<::vl::vint>(1)); } }(); + if ((value == (- static_cast<::vl::vint>(1)))) + { + return; + } + else if ((value < static_cast<::vl::vint>(0))) + { + ::vl::__vwsn::This(__vwsnthis_0->tracker)->SetPosition(static_cast<::vl::vint>(0)); + } + else if ((value > static_cast<::vl::vint>(255))) + { + ::vl::__vwsn::This(__vwsnthis_0->tracker)->SetPosition(static_cast<::vl::vint>(255)); + } + else + { + ::vl::__vwsn::This(__vwsnthis_0->tracker)->SetPosition(value); + } + } + + //------------------------------------------------------------------- + + __vwsnf40_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_::__vwsnf40_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_(::gaclib_controls::FilePickerControlConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf40_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(__vwsnthis_0->__vwsn_precompile_24.Obj())->GetSelectedFilter(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::Ptr<::vl::presentation::IFileDialogFilter>>(__vwsn_value_); + if ((__vwsn_old_.Obj() == __vwsn_new_.Obj())) + { + return; + } + ::vl::__vwsn::This(__vwsnthis_0->__vwsn_precompile_24.Obj())->SetSelectedFilter(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf41_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_::__vwsnf41_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_(::gaclib_controls::FilePickerControlConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf41_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(__vwsnthis_0->__vwsn_precompile_24.Obj())->GetSelectedFolder(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::Ptr<::vl::presentation::IFileDialogFolder>>(__vwsn_value_); + if ((__vwsn_old_.Obj() == __vwsn_new_.Obj())) + { + return; + } + ::vl::__vwsn::This(__vwsnthis_0->__vwsn_precompile_24.Obj())->SetSelectedFolder(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf42_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_::__vwsnf42_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_(::gaclib_controls::FilePickerControlConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf42_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_::operator()() const + { + ::vl::__vwsn::This(__vwsnthis_0->self)->LocateSelectedFolderInTreeView(); + } + + //------------------------------------------------------------------- + + __vwsnf43_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_::__vwsnf43_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_(::gaclib_controls::FilePickerControlConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf43_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(__vwsnthis_0->self)->GetStrings(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::Ptr<::gaclib_controls::IDialogStringsStrings>>(__vwsn_value_); + if ((__vwsn_old_.Obj() == __vwsn_new_.Obj())) + { + return; + } + ::vl::__vwsn::This(__vwsnthis_0->self)->SetStrings(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf44_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControl_GetSelectedFiles_::__vwsnf44_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControl_GetSelectedFiles_(::gaclib_controls::FilePickerControl* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + ::vl::Ptr<::vl::reflection::description::ICoroutine> __vwsnf44_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControl_GetSelectedFiles_::operator()(::vl::reflection::description::EnumerableCoroutine::IImpl* __vwsn_co_impl_) const + { + return ::vl::Ptr<::vl::reflection::description::ICoroutine>(new ::vl_workflow_global::__vwsnc24_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControl_GetSelectedFiles___vl_reflection_description_ICoroutine(__vwsn_co_impl_, __vwsnthis_0)); + } + + //------------------------------------------------------------------- + + __vwsnf46_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_::__vwsnf46_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_(::gaclib_controls::FontNameControlConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf46_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const + { + if (((::vl::__vwsn::This(__vwsnthis_0->textList)->GetSelectedItemIndex() != (- static_cast<::vl::vint>(1))) && (::vl::__vwsn::This(__vwsnthis_0->textBox)->GetText() != ::vl::__vwsn::This(__vwsnthis_0->textList)->GetSelectedItemText()))) + { + ::vl::__vwsn::This(__vwsnthis_0->textBox)->SetText(::vl::__vwsn::This(__vwsnthis_0->textList)->GetSelectedItemText()); + } + } + + //------------------------------------------------------------------- + + __vwsnf47_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_::__vwsnf47_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_(::gaclib_controls::FontNameControlConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf47_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(__vwsnthis_0->__vwsn_precompile_0)->GetText(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::WString>(__vwsn_value_); + if ((__vwsn_old_ == __vwsn_new_)) + { + return; + } + ::vl::__vwsn::This(__vwsnthis_0->__vwsn_precompile_0)->SetText(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf48_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_::__vwsnf48_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_(::gaclib_controls::FontNameControlConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf48_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(__vwsnthis_0->self)->GetValue(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::WString>(__vwsn_value_); + if ((__vwsn_old_ == __vwsn_new_)) + { + return; + } + ::vl::__vwsn::This(__vwsnthis_0->self)->SetValue(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf49_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_::__vwsnf49_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_(::gaclib_controls::FontNameControlConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf49_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(__vwsnthis_0->self)->GetLegal(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox(__vwsn_value_); + if ((__vwsn_old_ == __vwsn_new_)) + { + return; + } + ::vl::__vwsn::This(__vwsnthis_0->self)->SetLegal(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf4_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize_::__vwsnf4_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize_(::gaclib_controls::ColorComponentControlConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf4_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(__vwsnthis_0->self)->GetValue(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::vint>(__vwsn_value_); + if ((__vwsn_old_ == __vwsn_new_)) + { + return; + } + ::vl::__vwsn::This(__vwsnthis_0->self)->SetValue(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf50_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_::__vwsnf50_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_(::gaclib_controls::FontNameControlConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf50_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_::operator()() const + { + ::vl::__vwsn::This(__vwsnthis_0->self)->UpdateSelectedIndex(); + } + + //------------------------------------------------------------------- + + __vwsnf51_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_::__vwsnf51_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_(::gaclib_controls::FontNameControlConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf51_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(__vwsnthis_0->self)->GetStrings(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::Ptr<::gaclib_controls::IDialogStringsStrings>>(__vwsn_value_); + if ((__vwsn_old_.Obj() == __vwsn_new_.Obj())) + { + return; + } + ::vl::__vwsn::This(__vwsnthis_0->self)->SetStrings(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf53_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_::__vwsnf53_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_(::gaclib_controls::FontSizeControlConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf53_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const + { + if (((::vl::__vwsn::This(__vwsnthis_0->textList)->GetSelectedItemIndex() != (- static_cast<::vl::vint>(1))) && (::vl::__vwsn::This(__vwsnthis_0->textBox)->GetText() != ::vl::__vwsn::This(__vwsnthis_0->textList)->GetSelectedItemText()))) + { + ::vl::__vwsn::This(__vwsnthis_0->textBox)->SetText(::vl::__vwsn::This(__vwsnthis_0->textList)->GetSelectedItemText()); + } + } + + //------------------------------------------------------------------- + + __vwsnf54_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_::__vwsnf54_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_(::gaclib_controls::FontSizeControlConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf54_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(__vwsnthis_0->__vwsn_precompile_0)->GetText(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::WString>(__vwsn_value_); + if ((__vwsn_old_ == __vwsn_new_)) + { + return; + } + ::vl::__vwsn::This(__vwsnthis_0->__vwsn_precompile_0)->SetText(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf55_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_::__vwsnf55_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_(::gaclib_controls::FontSizeControlConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf55_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(__vwsnthis_0->self)->GetValue(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::vint>(__vwsn_value_); + if ((__vwsn_old_ == __vwsn_new_)) + { + return; + } + ::vl::__vwsn::This(__vwsnthis_0->self)->SetValue(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf56_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_::__vwsnf56_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_(::gaclib_controls::FontSizeControlConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf56_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(__vwsnthis_0->self)->GetLegal(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox(__vwsn_value_); + if ((__vwsn_old_ == __vwsn_new_)) + { + return; + } + ::vl::__vwsn::This(__vwsnthis_0->self)->SetLegal(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf57_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_::__vwsnf57_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_(::gaclib_controls::FontSizeControlConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf57_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_::operator()() const + { + ::vl::__vwsn::This(__vwsnthis_0->self)->UpdateSelectedIndex(); + } + + //------------------------------------------------------------------- + + __vwsnf58_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_::__vwsnf58_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_(::gaclib_controls::FontSizeControlConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf58_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(__vwsnthis_0->self)->GetStrings(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::Ptr<::gaclib_controls::IDialogStringsStrings>>(__vwsn_value_); + if ((__vwsn_old_.Obj() == __vwsn_new_.Obj())) + { + return; + } + ::vl::__vwsn::This(__vwsnthis_0->self)->SetStrings(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf59_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_::__vwsnf59_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_(::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf59_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(__vwsnthis_0->checkBold)->GetText(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::WString>(__vwsn_value_); + if ((__vwsn_old_ == __vwsn_new_)) + { + return; + } + ::vl::__vwsn::This(__vwsnthis_0->checkBold)->SetText(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf5_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_::__vwsnf5_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_(::gaclib_controls::ColorDialogControlConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf5_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(__vwsnthis_0->__vwsn_precompile_2)->GetText(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::WString>(__vwsn_value_); + if ((__vwsn_old_ == __vwsn_new_)) + { + return; + } + ::vl::__vwsn::This(__vwsnthis_0->__vwsn_precompile_2)->SetText(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf60_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_::__vwsnf60_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_(::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf60_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(__vwsnthis_0->checkItalic)->GetText(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::WString>(__vwsn_value_); + if ((__vwsn_old_ == __vwsn_new_)) + { + return; + } + ::vl::__vwsn::This(__vwsnthis_0->checkItalic)->SetText(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf61_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_::__vwsnf61_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_(::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf61_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(__vwsnthis_0->checkUnderline)->GetText(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::WString>(__vwsn_value_); + if ((__vwsn_old_ == __vwsn_new_)) + { + return; + } + ::vl::__vwsn::This(__vwsnthis_0->checkUnderline)->SetText(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf62_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_::__vwsnf62_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_(::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf62_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(__vwsnthis_0->checkHAA)->GetText(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::WString>(__vwsn_value_); + if ((__vwsn_old_ == __vwsn_new_)) + { + return; + } + ::vl::__vwsn::This(__vwsnthis_0->checkHAA)->SetText(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf63_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_::__vwsnf63_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_(::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf63_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(__vwsnthis_0->checkVAA)->GetText(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::WString>(__vwsn_value_); + if ((__vwsn_old_ == __vwsn_new_)) + { + return; + } + ::vl::__vwsn::This(__vwsnthis_0->checkVAA)->SetText(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf64_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_::__vwsnf64_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_(::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf64_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(__vwsnthis_0->__vwsn_precompile_8)->GetText(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::WString>(__vwsn_value_); + if ((__vwsn_old_ == __vwsn_new_)) + { + return; + } + ::vl::__vwsn::This(__vwsnthis_0->__vwsn_precompile_8)->SetText(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf65_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_::__vwsnf65_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_(::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf65_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiMouseEventArgs* arguments) const + { + if (::vl::__vwsn::This(__vwsnthis_0->ViewModel.Obj())->SelectColor(static_cast<::vl::presentation::controls::GuiWindow*>(__vwsnthis_0->self))) + { + ::vl::__vwsn::This(__vwsnthis_0->colorBackground.Obj())->SetColor(::vl::__vwsn::This(__vwsnthis_0->ViewModel.Obj())->GetColor()); + } + } + + //------------------------------------------------------------------- + + __vwsnf66_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_::__vwsnf66_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_(::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf66_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(__vwsnthis_0->__vwsn_precompile_17)->GetText(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::WString>(__vwsn_value_); + if ((__vwsn_old_ == __vwsn_new_)) + { + return; + } + ::vl::__vwsn::This(__vwsnthis_0->__vwsn_precompile_17)->SetText(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf67_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_::__vwsnf67_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_(::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf67_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(__vwsnthis_0->__vwsn_precompile_25)->GetFont(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::Nullable<::vl::presentation::FontProperties>>(__vwsn_value_); + if ((__vwsn_old_ == __vwsn_new_)) + { + return; + } + ::vl::__vwsn::This(__vwsnthis_0->__vwsn_precompile_25)->SetFont(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf68_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_::__vwsnf68_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_(::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf68_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(__vwsnthis_0->__vwsn_precompile_22)->GetText(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::WString>(__vwsn_value_); + if ((__vwsn_old_ == __vwsn_new_)) + { + return; + } + ::vl::__vwsn::This(__vwsnthis_0->__vwsn_precompile_22)->SetText(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf69_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_::__vwsnf69_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_(::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf69_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(__vwsnthis_0->__vwsn_precompile_29)->GetText(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::WString>(__vwsn_value_); + if ((__vwsn_old_ == __vwsn_new_)) + { + return; + } + ::vl::__vwsn::This(__vwsnthis_0->__vwsn_precompile_29)->SetText(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf6_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_::__vwsnf6_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_(::gaclib_controls::ColorDialogControlConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf6_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(__vwsnthis_0->__vwsn_precompile_4)->GetText(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::WString>(__vwsn_value_); + if ((__vwsn_old_ == __vwsn_new_)) + { + return; + } + ::vl::__vwsn::This(__vwsnthis_0->__vwsn_precompile_4)->SetText(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf70_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_::__vwsnf70_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_(::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf70_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(__vwsnthis_0->__vwsn_precompile_29)->GetEnabled(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox(__vwsn_value_); + if ((__vwsn_old_ == __vwsn_new_)) + { + return; + } + ::vl::__vwsn::This(__vwsnthis_0->__vwsn_precompile_29)->SetEnabled(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf71_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_::__vwsnf71_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_(::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf71_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const + { + ::vl::__vwsn::This(__vwsnthis_0->ViewModel.Obj())->SetConfirmed(true); + ::vl::__vwsn::This(__vwsnthis_0->ViewModel.Obj())->SetFont([&](){ ::vl::presentation::FontProperties __vwsn_temp__; __vwsn_temp__.fontFamily = ::vl::__vwsn::This(__vwsnthis_0->nameControl)->GetValue(); __vwsn_temp__.size = ::vl::__vwsn::This(__vwsnthis_0->sizeControl)->GetValue(); __vwsn_temp__.bold = ::vl::__vwsn::This(__vwsnthis_0->checkBold)->GetSelected(); __vwsn_temp__.italic = ::vl::__vwsn::This(__vwsnthis_0->checkItalic)->GetSelected(); __vwsn_temp__.underline = ::vl::__vwsn::This(__vwsnthis_0->checkUnderline)->GetSelected(); __vwsn_temp__.antialias = ::vl::__vwsn::This(__vwsnthis_0->checkHAA)->GetSelected(); __vwsn_temp__.verticalAntialias = ::vl::__vwsn::This(__vwsnthis_0->checkVAA)->GetSelected(); return __vwsn_temp__; }()); + ::vl::__vwsn::This(__vwsnthis_0->self)->Close(); + } + + //------------------------------------------------------------------- + + __vwsnf72_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_::__vwsnf72_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_(::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf72_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(__vwsnthis_0->__vwsn_precompile_32)->GetText(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::WString>(__vwsn_value_); + if ((__vwsn_old_ == __vwsn_new_)) + { + return; + } + ::vl::__vwsn::This(__vwsnthis_0->__vwsn_precompile_32)->SetText(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf73_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_::__vwsnf73_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_(::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf73_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const + { + ::vl::__vwsn::This(__vwsnthis_0->self)->Close(); + } + + //------------------------------------------------------------------- + + __vwsnf74_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_::__vwsnf74_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_(::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf74_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(__vwsnthis_0->self)->GetText(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::WString>(__vwsn_value_); + if ((__vwsn_old_ == __vwsn_new_)) + { + return; + } + ::vl::__vwsn::This(__vwsnthis_0->self)->SetText(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf75_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_::__vwsnf75_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_(::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf75_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(__vwsnthis_0->self)->GetStrings(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::Ptr<::gaclib_controls::IDialogStringsStrings>>(__vwsn_value_); + if ((__vwsn_old_.Obj() == __vwsn_new_.Obj())) + { + return; + } + ::vl::__vwsn::This(__vwsnthis_0->self)->SetStrings(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf76_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_::__vwsnf76_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_(::gaclib_controls::SimpleFontDialogWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf76_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(__vwsnthis_0->__vwsn_precompile_11)->GetFont(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::Nullable<::vl::presentation::FontProperties>>(__vwsn_value_); + if ((__vwsn_old_ == __vwsn_new_)) + { + return; + } + ::vl::__vwsn::This(__vwsnthis_0->__vwsn_precompile_11)->SetFont(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf77_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_::__vwsnf77_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_(::gaclib_controls::SimpleFontDialogWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf77_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(__vwsnthis_0->__vwsn_precompile_8)->GetText(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::WString>(__vwsn_value_); + if ((__vwsn_old_ == __vwsn_new_)) + { + return; + } + ::vl::__vwsn::This(__vwsnthis_0->__vwsn_precompile_8)->SetText(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf78_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_::__vwsnf78_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_(::gaclib_controls::SimpleFontDialogWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf78_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(__vwsnthis_0->__vwsn_precompile_15)->GetText(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::WString>(__vwsn_value_); + if ((__vwsn_old_ == __vwsn_new_)) + { + return; + } + ::vl::__vwsn::This(__vwsnthis_0->__vwsn_precompile_15)->SetText(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf79_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_::__vwsnf79_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_(::gaclib_controls::SimpleFontDialogWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf79_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(__vwsnthis_0->__vwsn_precompile_15)->GetEnabled(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox(__vwsn_value_); + if ((__vwsn_old_ == __vwsn_new_)) + { + return; + } + ::vl::__vwsn::This(__vwsnthis_0->__vwsn_precompile_15)->SetEnabled(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf7_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_::__vwsnf7_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_(::gaclib_controls::ColorDialogControlConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf7_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(__vwsnthis_0->__vwsn_precompile_6)->GetText(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::WString>(__vwsn_value_); + if ((__vwsn_old_ == __vwsn_new_)) + { + return; + } + ::vl::__vwsn::This(__vwsnthis_0->__vwsn_precompile_6)->SetText(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf80_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_::__vwsnf80_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_(::gaclib_controls::SimpleFontDialogWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf80_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const + { + ::vl::__vwsn::This(__vwsnthis_0->ViewModel.Obj())->SetConfirmed(true); + ::vl::__vwsn::This(__vwsnthis_0->ViewModel.Obj())->SetFontFamily(::vl::__vwsn::This(__vwsnthis_0->nameControl)->GetValue()); + ::vl::__vwsn::This(__vwsnthis_0->ViewModel.Obj())->SetFontSize(::vl::__vwsn::This(__vwsnthis_0->sizeControl)->GetValue()); + ::vl::__vwsn::This(__vwsnthis_0->self)->Close(); + } + + //------------------------------------------------------------------- + + __vwsnf81_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_::__vwsnf81_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_(::gaclib_controls::SimpleFontDialogWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf81_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(__vwsnthis_0->__vwsn_precompile_18)->GetText(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::WString>(__vwsn_value_); + if ((__vwsn_old_ == __vwsn_new_)) + { + return; + } + ::vl::__vwsn::This(__vwsnthis_0->__vwsn_precompile_18)->SetText(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf82_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_::__vwsnf82_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_(::gaclib_controls::SimpleFontDialogWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf82_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const + { + ::vl::__vwsn::This(__vwsnthis_0->self)->Close(); + } + + //------------------------------------------------------------------- + + __vwsnf83_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_::__vwsnf83_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_(::gaclib_controls::SimpleFontDialogWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf83_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(__vwsnthis_0->self)->GetText(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::WString>(__vwsn_value_); + if ((__vwsn_old_ == __vwsn_new_)) + { + return; + } + ::vl::__vwsn::This(__vwsnthis_0->self)->SetText(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf84_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_::__vwsnf84_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_(::gaclib_controls::SimpleFontDialogWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf84_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(__vwsnthis_0->self)->GetStrings(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::Ptr<::gaclib_controls::IDialogStringsStrings>>(__vwsn_value_); + if ((__vwsn_old_.Obj() == __vwsn_new_.Obj())) + { + return; + } + ::vl::__vwsn::This(__vwsnthis_0->self)->SetStrings(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf85_GuiFakeDialogServiceUI_gaclib_controls_MessageBoxButtonTemplateConstructor___vwsn_gaclib_controls_MessageBoxButtonTemplate_Initialize_::__vwsnf85_GuiFakeDialogServiceUI_gaclib_controls_MessageBoxButtonTemplateConstructor___vwsn_gaclib_controls_MessageBoxButtonTemplate_Initialize_(::gaclib_controls::MessageBoxButtonTemplateConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf85_GuiFakeDialogServiceUI_gaclib_controls_MessageBoxButtonTemplateConstructor___vwsn_gaclib_controls_MessageBoxButtonTemplate_Initialize_::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const + { + ::vl::__vwsn::This(__vwsnthis_0->Action.Obj())->PerformAction(); + ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0->self)->GetRelatedControlHost())->Close(); + } + + //------------------------------------------------------------------- + + __vwsnf86_GuiFakeDialogServiceUI_gaclib_controls_MessageBoxButtonTemplateConstructor___vwsn_gaclib_controls_MessageBoxButtonTemplate_Initialize_::__vwsnf86_GuiFakeDialogServiceUI_gaclib_controls_MessageBoxButtonTemplateConstructor___vwsn_gaclib_controls_MessageBoxButtonTemplate_Initialize_(::gaclib_controls::MessageBoxButtonTemplateConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf86_GuiFakeDialogServiceUI_gaclib_controls_MessageBoxButtonTemplateConstructor___vwsn_gaclib_controls_MessageBoxButtonTemplate_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(__vwsnthis_0->self)->GetStrings(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::Ptr<::gaclib_controls::IDialogStringsStrings>>(__vwsn_value_); + if ((__vwsn_old_.Obj() == __vwsn_new_.Obj())) + { + return; + } + ::vl::__vwsn::This(__vwsnthis_0->self)->SetStrings(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf87_GuiFakeDialogServiceUI_gaclib_controls_MessageBoxWindowConstructor___vwsn_gaclib_controls_MessageBoxWindow_Initialize_::__vwsnf87_GuiFakeDialogServiceUI_gaclib_controls_MessageBoxWindowConstructor___vwsn_gaclib_controls_MessageBoxWindow_Initialize_(::gaclib_controls::MessageBoxWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + ::vl::presentation::templates::GuiTemplate* __vwsnf87_GuiFakeDialogServiceUI_gaclib_controls_MessageBoxWindowConstructor___vwsn_gaclib_controls_MessageBoxWindow_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_viewModel_) const + { + { + if ([&](){ auto __vwsn_temp__ = __vwsn_viewModel_; return __vwsn_temp__.GetSharedPtr() && ::vl::__vwsn::RawPtrCast<::vl::presentation::IMessageBoxDialogAction>(__vwsn_temp__.GetRawPtr()) != nullptr; }()) + { + return static_cast<::vl::presentation::templates::GuiTemplate*>(new ::gaclib_controls::MessageBoxButtonTemplate(::vl::__vwsn::Unbox<::vl::Ptr<::vl::presentation::IMessageBoxDialogAction>>(__vwsn_viewModel_))); + } + } + throw ::vl::Exception(::vl::WString::Unmanaged(L"Cannot find a matched control template to create.")); + } + + //------------------------------------------------------------------- + + __vwsnf8_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_::__vwsnf8_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_(::gaclib_controls::ColorDialogControlConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf8_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(__vwsnthis_0->__vwsn_precompile_8)->GetText(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::WString>(__vwsn_value_); + if ((__vwsn_old_ == __vwsn_new_)) + { + return; + } + ::vl::__vwsn::This(__vwsnthis_0->__vwsn_precompile_8)->SetText(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf9_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_::__vwsnf9_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_(::gaclib_controls::ColorDialogControlConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnf9_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(__vwsnthis_0->__vwsn_precompile_16.Obj())->GetColor(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::presentation::Color>(__vwsn_value_); + if ((__vwsn_old_ == __vwsn_new_)) + { + return; + } + ::vl::__vwsn::This(__vwsnthis_0->__vwsn_precompile_16.Obj())->SetColor(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsno31_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_::__vwsno31_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_(::gaclib_controls::FilePickerControlConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + ::vl::Ptr<::vl::presentation::GuiImageData> __vwsno31_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsno_1) const + { + return [&](auto node){ return ((::vl::__vwsn::This(node.Obj())->GetType() == ::vl::presentation::FileDialogFolderType::Folder) ? ::vl::__vwsn::This(__vwsnthis_0->self)->imageFolder : ::vl::Ptr<::vl::presentation::GuiImageData>()); }(::vl::__vwsn::Unbox<::vl::Ptr<::vl::presentation::IFileDialogFolder>>(__vwsno_1)); + } + + //------------------------------------------------------------------- + + __vwsno34_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_::__vwsno34_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_(::gaclib_controls::FilePickerControlConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + ::vl::Ptr<::vl::presentation::GuiImageData> __vwsno34_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsno_1) const + { + return [&](auto node){ return ((::vl::__vwsn::This(node.Obj())->GetType() == ::vl::presentation::FileDialogFileType::Folder) ? ::vl::__vwsn::This(__vwsnthis_0->self)->imageFolder : ((::vl::__vwsn::This(node.Obj())->GetType() == ::vl::presentation::FileDialogFileType::File) ? ::vl::__vwsn::This(__vwsnthis_0->self)->imageFile : ::vl::Ptr<::vl::presentation::GuiImageData>())); }(::vl::__vwsn::Unbox<::vl::Ptr<::vl::presentation::IFileDialogFile>>(__vwsno_1)); + } + + //------------------------------------------------------------------- + + __vwsno45_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_::__vwsno45_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_(::gaclib_controls::FontNameControlConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + ::vl::WString __vwsno45_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsno_1) const + { + return ::vl::__vwsn::Unbox<::vl::WString>(__vwsno_1); + } + + //------------------------------------------------------------------- + + __vwsno52_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_::__vwsno52_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_(::gaclib_controls::FontSizeControlConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + ::vl::WString __vwsno52_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsno_1) const + { + return ::vl::__vwsn::ToString(::vl::__vwsn::Unbox<::vl::vint>(__vwsno_1)); + } + + //------------------------------------------------------------------- + + __vwsnc10_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription::__vwsnc10_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::ColorDialogControlConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + this->__vwsn_bind_cache_0 = static_cast<::vl::presentation::controls::GuiApplication*>(nullptr); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + } + + void __vwsnc10_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = ::gaclib_controls::DialogStrings::Get(::vl::__vwsn::This(__vwsn_bind_cache_0)->GetLocale()); + ::vl::__vwsn::EventInvoke(this->ValueChanged)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + + void __vwsnc10_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0() + { + this->__vwsn_bind_activator_(); + } + + bool __vwsnc10_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription::Open() + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + (__vwsn_bind_cache_0 = [&](){ try{ return ::vl::presentation::controls::GetApplication(); } catch(...){ return static_cast<::vl::presentation::controls::GuiApplication*>(nullptr); } }()); + (__vwsn_bind_handler_0_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0)->LocaleChanged, ::vl::Func(this, &__vwsnc10_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + return true; + } + return false; + } + + bool __vwsnc10_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription::Update() + { + if ((__vwsn_bind_opened_ && (! __vwsn_bind_closed_))) + { + this->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc10_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + if (static_cast(__vwsn_bind_handler_0_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0)->LocaleChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + (__vwsn_bind_cache_0 = static_cast<::vl::presentation::controls::GuiApplication*>(nullptr)); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc11_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsnc11_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::ColorDialogWindow* __vwsnctor___vwsn_this_, ::gaclib_controls::ColorDialogWindowConstructor* __vwsnctorthis_0) + :__vwsn_this_(__vwsnctor___vwsn_this_) + , __vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + this->__vwsn_bind_cache_0 = static_cast<::gaclib_controls::ColorDialogWindow*>(nullptr); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + } + + void __vwsnc11_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsn_bind_cache_0)->GetStrings().Obj())->OK(); + ::vl::__vwsn::EventInvoke(this->ValueChanged)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + + void __vwsnc11_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0() + { + this->__vwsn_bind_activator_(); + } + + bool __vwsnc11_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Open() + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + (__vwsn_bind_cache_0 = [&](){ try{ return __vwsn_this_; } catch(...){ return static_cast<::gaclib_controls::ColorDialogWindow*>(nullptr); } }()); + (__vwsn_bind_handler_0_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0)->StringsChanged, ::vl::Func(this, &__vwsnc11_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + return true; + } + return false; + } + + bool __vwsnc11_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Update() + { + if ((__vwsn_bind_opened_ && (! __vwsn_bind_closed_))) + { + this->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc11_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + if (static_cast(__vwsn_bind_handler_0_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0)->StringsChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + (__vwsn_bind_cache_0 = static_cast<::gaclib_controls::ColorDialogWindow*>(nullptr)); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc12_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsnc12_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::ColorDialogWindow* __vwsnctor___vwsn_this_, ::gaclib_controls::ColorDialogWindowConstructor* __vwsnctorthis_0) + :__vwsn_this_(__vwsnctor___vwsn_this_) + , __vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + this->__vwsn_bind_cache_0 = static_cast<::gaclib_controls::ColorDialogWindow*>(nullptr); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + } + + void __vwsnc12_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsn_bind_cache_0)->GetStrings().Obj())->Cancel(); + ::vl::__vwsn::EventInvoke(this->ValueChanged)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + + void __vwsnc12_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0() + { + this->__vwsn_bind_activator_(); + } + + bool __vwsnc12_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Open() + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + (__vwsn_bind_cache_0 = [&](){ try{ return __vwsn_this_; } catch(...){ return static_cast<::gaclib_controls::ColorDialogWindow*>(nullptr); } }()); + (__vwsn_bind_handler_0_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0)->StringsChanged, ::vl::Func(this, &__vwsnc12_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + return true; + } + return false; + } + + bool __vwsnc12_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Update() + { + if ((__vwsn_bind_opened_ && (! __vwsn_bind_closed_))) + { + this->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc12_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + if (static_cast(__vwsn_bind_handler_0_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0)->StringsChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + (__vwsn_bind_cache_0 = static_cast<::gaclib_controls::ColorDialogWindow*>(nullptr)); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc13_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsnc13_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::ColorDialogWindow* __vwsnctor___vwsn_this_, ::gaclib_controls::ColorDialogWindowConstructor* __vwsnctorthis_0) + :__vwsn_this_(__vwsnctor___vwsn_this_) + , __vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + this->__vwsn_bind_cache_0 = static_cast<::gaclib_controls::ColorDialogWindow*>(nullptr); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + } + + void __vwsnc13_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsn_bind_cache_0)->GetStrings().Obj())->ColorDialogTitle(); + ::vl::__vwsn::EventInvoke(this->ValueChanged)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + + void __vwsnc13_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0() + { + this->__vwsn_bind_activator_(); + } + + bool __vwsnc13_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Open() + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + (__vwsn_bind_cache_0 = [&](){ try{ return __vwsn_this_; } catch(...){ return static_cast<::gaclib_controls::ColorDialogWindow*>(nullptr); } }()); + (__vwsn_bind_handler_0_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0)->StringsChanged, ::vl::Func(this, &__vwsnc13_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + return true; + } + return false; + } + + bool __vwsnc13_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Update() + { + if ((__vwsn_bind_opened_ && (! __vwsn_bind_closed_))) + { + this->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc13_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + if (static_cast(__vwsn_bind_handler_0_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0)->StringsChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + (__vwsn_bind_cache_0 = static_cast<::gaclib_controls::ColorDialogWindow*>(nullptr)); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc14_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsnc14_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::ColorDialogWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + this->__vwsn_bind_cache_0 = static_cast<::vl::presentation::controls::GuiApplication*>(nullptr); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + } + + void __vwsnc14_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = ::gaclib_controls::DialogStrings::Get(::vl::__vwsn::This(__vwsn_bind_cache_0)->GetLocale()); + ::vl::__vwsn::EventInvoke(this->ValueChanged)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + + void __vwsnc14_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0() + { + this->__vwsn_bind_activator_(); + } + + bool __vwsnc14_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Open() + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + (__vwsn_bind_cache_0 = [&](){ try{ return ::vl::presentation::controls::GetApplication(); } catch(...){ return static_cast<::vl::presentation::controls::GuiApplication*>(nullptr); } }()); + (__vwsn_bind_handler_0_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0)->LocaleChanged, ::vl::Func(this, &__vwsnc14_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + return true; + } + return false; + } + + bool __vwsnc14_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Update() + { + if ((__vwsn_bind_opened_ && (! __vwsn_bind_closed_))) + { + this->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc14_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + if (static_cast(__vwsn_bind_handler_0_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0)->LocaleChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + (__vwsn_bind_cache_0 = static_cast<::vl::presentation::controls::GuiApplication*>(nullptr)); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc15_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsnc15_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FileDialogWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + this->__vwsn_bind_cache_0 = ::vl::Ptr<::vl::presentation::IFileDialogViewModel>(); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + } + + void __vwsnc15_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = (! ::vl::__vwsn::This(__vwsn_bind_cache_0.Obj())->GetIsLoadingFiles()); + ::vl::__vwsn::EventInvoke(this->ValueChanged)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + + void __vwsnc15_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0() + { + this->__vwsn_bind_activator_(); + } + + bool __vwsnc15_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Open() + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + (__vwsn_bind_cache_0 = [&](){ try{ return __vwsnthis_0->ViewModel; } catch(...){ return ::vl::Ptr<::vl::presentation::IFileDialogViewModel>(); } }()); + (__vwsn_bind_handler_0_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0.Obj())->IsLoadingFilesChanged, ::vl::Func(this, &__vwsnc15_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + return true; + } + return false; + } + + bool __vwsnc15_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Update() + { + if ((__vwsn_bind_opened_ && (! __vwsn_bind_closed_))) + { + this->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc15_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + if (static_cast(__vwsn_bind_handler_0_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0.Obj())->IsLoadingFilesChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + (__vwsn_bind_cache_0 = ::vl::Ptr<::vl::presentation::IFileDialogViewModel>()); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc16_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsnc16_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FileDialogWindow* __vwsnctor___vwsn_this_, ::gaclib_controls::FileDialogWindowConstructor* __vwsnctorthis_0) + :__vwsn_this_(__vwsnctor___vwsn_this_) + , __vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + this->__vwsn_bind_cache_0 = static_cast<::gaclib_controls::FileDialogWindow*>(nullptr); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + } + + void __vwsnc16_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsn_bind_cache_0)->GetStrings().Obj())->Cancel(); + ::vl::__vwsn::EventInvoke(this->ValueChanged)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + + void __vwsnc16_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0() + { + this->__vwsn_bind_activator_(); + } + + bool __vwsnc16_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Open() + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + (__vwsn_bind_cache_0 = [&](){ try{ return __vwsn_this_; } catch(...){ return static_cast<::gaclib_controls::FileDialogWindow*>(nullptr); } }()); + (__vwsn_bind_handler_0_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0)->StringsChanged, ::vl::Func(this, &__vwsnc16_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + return true; + } + return false; + } + + bool __vwsnc16_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Update() + { + if ((__vwsn_bind_opened_ && (! __vwsn_bind_closed_))) + { + this->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc16_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + if (static_cast(__vwsn_bind_handler_0_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0)->StringsChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + (__vwsn_bind_cache_0 = static_cast<::gaclib_controls::FileDialogWindow*>(nullptr)); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc17_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsnc17_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FileDialogWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + this->__vwsn_bind_cache_0 = static_cast<::vl::presentation::controls::GuiApplication*>(nullptr); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + } + + void __vwsnc17_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = ::gaclib_controls::DialogStrings::Get(::vl::__vwsn::This(__vwsn_bind_cache_0)->GetLocale()); + ::vl::__vwsn::EventInvoke(this->ValueChanged)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + + void __vwsnc17_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0() + { + this->__vwsn_bind_activator_(); + } + + bool __vwsnc17_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Open() + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + (__vwsn_bind_cache_0 = [&](){ try{ return ::vl::presentation::controls::GetApplication(); } catch(...){ return static_cast<::vl::presentation::controls::GuiApplication*>(nullptr); } }()); + (__vwsn_bind_handler_0_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0)->LocaleChanged, ::vl::Func(this, &__vwsnc17_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + return true; + } + return false; + } + + bool __vwsnc17_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Update() + { + if ((__vwsn_bind_opened_ && (! __vwsn_bind_closed_))) + { + this->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc17_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + if (static_cast(__vwsn_bind_handler_0_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0)->LocaleChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + (__vwsn_bind_cache_0 = static_cast<::vl::presentation::controls::GuiApplication*>(nullptr)); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc18_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription::__vwsnc18_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FilePickerControlConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + this->__vwsn_bind_cache_0 = ::vl::Ptr<::vl::presentation::IFileDialogViewModel>(); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + } + + void __vwsnc18_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = [&](){ try{ return ::vl::__vwsn::This(::vl::__vwsn::This(__vwsn_bind_cache_0.Obj())->GetSelectedFolder().Obj())->GetFullPath(); } catch(...){ return ::vl::WString::Unmanaged(L""); } }(); + ::vl::__vwsn::EventInvoke(this->ValueChanged)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + + void __vwsnc18_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0() + { + this->__vwsn_bind_activator_(); + } + + bool __vwsnc18_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription::Open() + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + (__vwsn_bind_cache_0 = [&](){ try{ return __vwsnthis_0->ViewModel; } catch(...){ return ::vl::Ptr<::vl::presentation::IFileDialogViewModel>(); } }()); + (__vwsn_bind_handler_0_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0.Obj())->SelectedFolderChanged, ::vl::Func(this, &__vwsnc18_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + return true; + } + return false; + } + + bool __vwsnc18_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription::Update() + { + if ((__vwsn_bind_opened_ && (! __vwsn_bind_closed_))) + { + this->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc18_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + if (static_cast(__vwsn_bind_handler_0_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0.Obj())->SelectedFolderChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + (__vwsn_bind_cache_0 = ::vl::Ptr<::vl::presentation::IFileDialogViewModel>()); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc19_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription::__vwsnc19_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FilePickerControlConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + this->__vwsn_bind_cache_0 = ::vl::Ptr<::vl::presentation::IFileDialogViewModel>(); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + } + + void __vwsnc19_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = ::vl::__vwsn::This(__vwsnthis_0->self)->CreateFileFilter(::vl::__vwsn::This(__vwsn_bind_cache_0.Obj())->GetSelectedFilter()); + ::vl::__vwsn::EventInvoke(this->ValueChanged)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + + void __vwsnc19_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0() + { + this->__vwsn_bind_activator_(); + } + + bool __vwsnc19_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription::Open() + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + (__vwsn_bind_cache_0 = [&](){ try{ return __vwsnthis_0->ViewModel; } catch(...){ return ::vl::Ptr<::vl::presentation::IFileDialogViewModel>(); } }()); + (__vwsn_bind_handler_0_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0.Obj())->SelectedFilterChanged, ::vl::Func(this, &__vwsnc19_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + return true; + } + return false; + } + + bool __vwsnc19_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription::Update() + { + if ((__vwsn_bind_opened_ && (! __vwsn_bind_closed_))) + { + this->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc19_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + if (static_cast(__vwsn_bind_handler_0_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0.Obj())->SelectedFilterChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + (__vwsn_bind_cache_0 = ::vl::Ptr<::vl::presentation::IFileDialogViewModel>()); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc1_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize__vl_reflection_description_IValueSubscription::__vwsnc1_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::ColorComponentControlConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + this->__vwsn_bind_cache_0 = static_cast<::gaclib_controls::ColorComponentControl*>(nullptr); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + } + + void __vwsnc1_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = ::vl::__vwsn::ToString(::vl::__vwsn::This(__vwsn_bind_cache_0)->GetValue()); + ::vl::__vwsn::EventInvoke(this->ValueChanged)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + + void __vwsnc1_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0() + { + this->__vwsn_bind_activator_(); + } + + bool __vwsnc1_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize__vl_reflection_description_IValueSubscription::Open() + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + (__vwsn_bind_cache_0 = [&](){ try{ return __vwsnthis_0->self; } catch(...){ return static_cast<::gaclib_controls::ColorComponentControl*>(nullptr); } }()); + (__vwsn_bind_handler_0_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0)->ValueChanged, ::vl::Func(this, &__vwsnc1_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + return true; + } + return false; + } + + bool __vwsnc1_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize__vl_reflection_description_IValueSubscription::Update() + { + if ((__vwsn_bind_opened_ && (! __vwsn_bind_closed_))) + { + this->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc1_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize__vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + if (static_cast(__vwsn_bind_handler_0_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0)->ValueChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + (__vwsn_bind_cache_0 = static_cast<::gaclib_controls::ColorComponentControl*>(nullptr)); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc20_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription::__vwsnc20_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FilePickerControl* __vwsnctor___vwsn_this_, ::gaclib_controls::FilePickerControlConstructor* __vwsnctorthis_0) + :__vwsn_this_(__vwsnctor___vwsn_this_) + , __vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + this->__vwsn_bind_cache_0 = static_cast<::gaclib_controls::FilePickerControl*>(nullptr); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + } + + void __vwsnc20_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsn_bind_cache_0)->GetStrings().Obj())->FileDialogFileName(); + ::vl::__vwsn::EventInvoke(this->ValueChanged)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + + void __vwsnc20_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0() + { + this->__vwsn_bind_activator_(); + } + + bool __vwsnc20_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription::Open() + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + (__vwsn_bind_cache_0 = [&](){ try{ return __vwsn_this_; } catch(...){ return static_cast<::gaclib_controls::FilePickerControl*>(nullptr); } }()); + (__vwsn_bind_handler_0_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0)->StringsChanged, ::vl::Func(this, &__vwsnc20_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + return true; + } + return false; + } + + bool __vwsnc20_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription::Update() + { + if ((__vwsn_bind_opened_ && (! __vwsn_bind_closed_))) + { + this->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc20_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + if (static_cast(__vwsn_bind_handler_0_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0)->StringsChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + (__vwsn_bind_cache_0 = static_cast<::gaclib_controls::FilePickerControl*>(nullptr)); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc21_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription::__vwsnc21_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FilePickerControlConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + this->__vwsn_bind_cache_0 = static_cast<::vl::presentation::controls::GuiComboBoxListControl*>(nullptr); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + } + + void __vwsnc21_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = ::vl::__vwsn::UnboxWeak<::vl::Ptr<::vl::presentation::IFileDialogFilter>>(::vl::__vwsn::This(__vwsn_bind_cache_0)->GetSelectedItem()); + ::vl::__vwsn::EventInvoke(this->ValueChanged)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + + void __vwsnc21_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0(::vl::presentation::compositions::GuiGraphicsComposition* __vwsn_bind_callback_argument_0, ::vl::presentation::compositions::GuiEventArgs* __vwsn_bind_callback_argument_1) + { + this->__vwsn_bind_activator_(); + } + + bool __vwsnc21_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription::Open() + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + (__vwsn_bind_cache_0 = [&](){ try{ return __vwsnthis_0->comboBox; } catch(...){ return static_cast<::vl::presentation::controls::GuiComboBoxListControl*>(nullptr); } }()); + (__vwsn_bind_handler_0_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0)->SelectedIndexChanged, ::vl::Func(this, &__vwsnc21_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + return true; + } + return false; + } + + bool __vwsnc21_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription::Update() + { + if ((__vwsn_bind_opened_ && (! __vwsn_bind_closed_))) + { + this->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc21_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + if (static_cast(__vwsn_bind_handler_0_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0)->SelectedIndexChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + (__vwsn_bind_cache_0 = static_cast<::vl::presentation::controls::GuiComboBoxListControl*>(nullptr)); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc22_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription::__vwsnc22_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FilePickerControlConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + this->__vwsn_bind_cache_0 = static_cast<::vl::presentation::controls::GuiBindableTreeView*>(nullptr); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + } + + void __vwsnc22_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = ::vl::__vwsn::UnboxWeak<::vl::Ptr<::vl::presentation::IFileDialogFolder>>(::vl::__vwsn::This(__vwsn_bind_cache_0)->GetSelectedItem()); + ::vl::__vwsn::EventInvoke(this->ValueChanged)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + + void __vwsnc22_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0(::vl::presentation::compositions::GuiGraphicsComposition* __vwsn_bind_callback_argument_0, ::vl::presentation::compositions::GuiEventArgs* __vwsn_bind_callback_argument_1) + { + this->__vwsn_bind_activator_(); + } + + bool __vwsnc22_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription::Open() + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + (__vwsn_bind_cache_0 = [&](){ try{ return __vwsnthis_0->treeView; } catch(...){ return static_cast<::vl::presentation::controls::GuiBindableTreeView*>(nullptr); } }()); + (__vwsn_bind_handler_0_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0)->SelectionChanged, ::vl::Func(this, &__vwsnc22_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + return true; + } + return false; + } + + bool __vwsnc22_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription::Update() + { + if ((__vwsn_bind_opened_ && (! __vwsn_bind_closed_))) + { + this->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc22_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + if (static_cast(__vwsn_bind_handler_0_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0)->SelectionChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + (__vwsn_bind_cache_0 = static_cast<::vl::presentation::controls::GuiBindableTreeView*>(nullptr)); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc23_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription::__vwsnc23_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FilePickerControlConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + this->__vwsn_bind_cache_0 = static_cast<::vl::presentation::controls::GuiApplication*>(nullptr); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + } + + void __vwsnc23_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = ::gaclib_controls::DialogStrings::Get(::vl::__vwsn::This(__vwsn_bind_cache_0)->GetLocale()); + ::vl::__vwsn::EventInvoke(this->ValueChanged)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + + void __vwsnc23_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0() + { + this->__vwsn_bind_activator_(); + } + + bool __vwsnc23_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription::Open() + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + (__vwsn_bind_cache_0 = [&](){ try{ return ::vl::presentation::controls::GetApplication(); } catch(...){ return static_cast<::vl::presentation::controls::GuiApplication*>(nullptr); } }()); + (__vwsn_bind_handler_0_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0)->LocaleChanged, ::vl::Func(this, &__vwsnc23_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + return true; + } + return false; + } + + bool __vwsnc23_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription::Update() + { + if ((__vwsn_bind_opened_ && (! __vwsn_bind_closed_))) + { + this->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc23_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + if (static_cast(__vwsn_bind_handler_0_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0)->LocaleChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + (__vwsn_bind_cache_0 = static_cast<::vl::presentation::controls::GuiApplication*>(nullptr)); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc24_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControl_GetSelectedFiles___vl_reflection_description_ICoroutine::__vwsnc24_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControl_GetSelectedFiles___vl_reflection_description_ICoroutine(::vl::reflection::description::EnumerableCoroutine::IImpl* __vwsnctor___vwsn_co_impl_, ::gaclib_controls::FilePickerControl* __vwsnctorthis_0) + :__vwsn_co_impl_(__vwsnctor___vwsn_co_impl_) + , __vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + this->__vwsn_co0_file = ::vl::Ptr<::vl::presentation::IFileDialogFile>(); + this->__vwsn_co1_item = static_cast<::vl::vint>(0); + this->__vwsn_co2_for_enumerable_item = ::vl::Ptr<::vl::reflection::description::IValueEnumerable>(); + this->__vwsn_co3_for_enumerator_item = ::vl::Ptr<::vl::reflection::description::IValueEnumerator>(); + this->__vwsn_co_state_ = static_cast<::vl::vint>(0); + this->__vwsn_co_state_before_pause_ = (- static_cast<::vl::vint>(1)); + this->__vwsn_prop_Failure = ::vl::Ptr<::vl::reflection::description::IValueException>(); + this->__vwsn_prop_Status = ::vl::reflection::description::CoroutineStatus::Waiting; + } + + ::vl::Ptr<::vl::reflection::description::IValueException> __vwsnc24_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControl_GetSelectedFiles___vl_reflection_description_ICoroutine::GetFailure() + { + return __vwsn_prop_Failure; + } + void __vwsnc24_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControl_GetSelectedFiles___vl_reflection_description_ICoroutine::SetFailure(::vl::Ptr<::vl::reflection::description::IValueException> __vwsn_value_) + { + (__vwsn_prop_Failure = __vwsn_value_); + } + + ::vl::reflection::description::CoroutineStatus __vwsnc24_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControl_GetSelectedFiles___vl_reflection_description_ICoroutine::GetStatus() + { + return __vwsn_prop_Status; + } + void __vwsnc24_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControl_GetSelectedFiles___vl_reflection_description_ICoroutine::SetStatus(::vl::reflection::description::CoroutineStatus __vwsn_value_) + { + (__vwsn_prop_Status = __vwsn_value_); + } + + void __vwsnc24_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControl_GetSelectedFiles___vl_reflection_description_ICoroutine::Resume(bool __vwsn_raise_exception_, ::vl::Ptr<::vl::reflection::description::CoroutineResult> __vwsn_co_result_) + { + if ((this->GetStatus() != ::vl::reflection::description::CoroutineStatus::Waiting)) + { + throw ::vl::Exception(::vl::WString::Unmanaged(L"Resume should be called only when the coroutine is in the waiting status.")); + } + this->SetStatus(::vl::reflection::description::CoroutineStatus::Executing); + try + { + { + if ((__vwsn_co_state_before_pause_ != (- static_cast<::vl::vint>(1)))) + { + if ((! static_cast(__vwsn_co_result_))) + { + (__vwsn_co_state_before_pause_ = (- static_cast<::vl::vint>(1))); + } + else if ((! static_cast(::vl::__vwsn::This(__vwsn_co_result_.Obj())->GetFailure()))) + { + (__vwsn_co_state_before_pause_ = (- static_cast<::vl::vint>(1))); + } + else + { + { + (__vwsn_co_state_before_pause_ = (- static_cast<::vl::vint>(1))); + throw ::vl::Exception(::vl::__vwsn::This(::vl::__vwsn::This(__vwsn_co_result_.Obj())->GetFailure().Obj())->GetMessage()); + } + } + } + while (true) + { + if ((__vwsn_co_state_ == static_cast<::vl::vint>(0))) + { + (__vwsn_co2_for_enumerable_item = ::vl::Ptr<::vl::reflection::description::IValueEnumerable>(::vl::__vwsn::UnboxCollection<::vl::reflection::description::IValueReadonlyList>(::vl::__vwsn::This(__vwsnthis_0->dataGrid)->GetSelectedItems()))); + (__vwsn_co3_for_enumerator_item = ::vl::__vwsn::This(__vwsn_co2_for_enumerable_item.Obj())->CreateEnumerator()); + if (::vl::__vwsn::This(__vwsn_co3_for_enumerator_item.Obj())->Next()) + { + (__vwsn_co_state_ = static_cast<::vl::vint>(3)); + continue; + } + (__vwsn_co_state_ = static_cast<::vl::vint>(1)); + continue; + } + if ((__vwsn_co_state_ == static_cast<::vl::vint>(1))) + { + this->SetStatus(::vl::reflection::description::CoroutineStatus::Stopped); + return; + } + if ((__vwsn_co_state_ == static_cast<::vl::vint>(2))) + { + if (::vl::__vwsn::This(__vwsn_co3_for_enumerator_item.Obj())->Next()) + { + (__vwsn_co_state_ = static_cast<::vl::vint>(3)); + continue; + } + (__vwsn_co_state_ = static_cast<::vl::vint>(1)); + continue; + } + if ((__vwsn_co_state_ == static_cast<::vl::vint>(3))) + { + (__vwsn_co1_item = ::vl::__vwsn::Unbox<::vl::vint>(::vl::__vwsn::This(__vwsn_co3_for_enumerator_item.Obj())->GetCurrent())); + (__vwsn_co0_file = ::vl::Ptr<::vl::presentation::IFileDialogFile>(::vl::__vwsn::This(__vwsnthis_0->GetViewModel().Obj())->GetFiles()[__vwsn_co1_item])); + if (static_cast(__vwsn_co0_file)) + { + this->SetStatus(::vl::reflection::description::CoroutineStatus::Waiting); + (__vwsn_co_state_before_pause_ = __vwsn_co_state_); + (__vwsn_co_state_ = static_cast<::vl::vint>(4)); + { + ::vl::reflection::description::EnumerableCoroutine::YieldAndPause(__vwsn_co_impl_, ::vl::__vwsn::Box(__vwsn_co0_file)); + } + return; + } + (__vwsn_co_state_ = static_cast<::vl::vint>(2)); + continue; + } + if ((__vwsn_co_state_ == static_cast<::vl::vint>(4))) + { + if (static_cast(__vwsn_co_result_)) + { + if (static_cast(::vl::__vwsn::This(__vwsn_co_result_.Obj())->GetFailure())) + { + throw ::vl::Exception(::vl::__vwsn::This(::vl::__vwsn::This(__vwsn_co_result_.Obj())->GetFailure().Obj())->GetMessage()); + } + } + (__vwsn_co_state_ = static_cast<::vl::vint>(2)); + continue; + } + } + } + } + catch(const ::vl::Exception& __vwsne_0) + { + auto __vwsn_co_ex_ = ::vl::reflection::description::IValueException::Create(__vwsne_0.Message()); + { + this->SetFailure(__vwsn_co_ex_); + this->SetStatus(::vl::reflection::description::CoroutineStatus::Stopped); + if (__vwsn_raise_exception_) + { + throw; + } + } + } + } + + //------------------------------------------------------------------- + + __vwsnc25_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControl_CreateFileFilter__vl_presentation_controls_list_IDataFilter::__vwsnc25_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControl_CreateFileFilter__vl_presentation_controls_list_IDataFilter(::vl::Ptr<::vl::presentation::IFileDialogFilter> __vwsnctor_filter, ::gaclib_controls::FilePickerControl* __vwsnctorthis_0) + :filter(__vwsnctor_filter) + , __vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsnc25_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControl_CreateFileFilter__vl_presentation_controls_list_IDataFilter::SetCallback(::vl::presentation::controls::list::IDataProcessorCallback* value) + { + } + + bool __vwsnc25_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControl_CreateFileFilter__vl_presentation_controls_list_IDataFilter::Filter(const ::vl::reflection::description::Value& row) + { + return ::vl::__vwsn::This(filter.Obj())->FilterFile(::vl::__vwsn::Unbox<::vl::Ptr<::vl::presentation::IFileDialogFile>>(row)); + } + + //------------------------------------------------------------------- + + __vwsnc26_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize__vl_reflection_description_IValueSubscription::__vwsnc26_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FontNameControl* __vwsnctor___vwsn_this_, ::gaclib_controls::FontNameControlConstructor* __vwsnctorthis_0) + :__vwsn_this_(__vwsnctor___vwsn_this_) + , __vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + this->__vwsn_bind_cache_0 = static_cast<::gaclib_controls::FontNameControl*>(nullptr); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + } + + void __vwsnc26_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsn_bind_cache_0)->GetStrings().Obj())->FontNameGroup(); + ::vl::__vwsn::EventInvoke(this->ValueChanged)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + + void __vwsnc26_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0() + { + this->__vwsn_bind_activator_(); + } + + bool __vwsnc26_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize__vl_reflection_description_IValueSubscription::Open() + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + (__vwsn_bind_cache_0 = [&](){ try{ return __vwsn_this_; } catch(...){ return static_cast<::gaclib_controls::FontNameControl*>(nullptr); } }()); + (__vwsn_bind_handler_0_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0)->StringsChanged, ::vl::Func(this, &__vwsnc26_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + return true; + } + return false; + } + + bool __vwsnc26_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize__vl_reflection_description_IValueSubscription::Update() + { + if ((__vwsn_bind_opened_ && (! __vwsn_bind_closed_))) + { + this->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc26_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize__vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + if (static_cast(__vwsn_bind_handler_0_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0)->StringsChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + (__vwsn_bind_cache_0 = static_cast<::gaclib_controls::FontNameControl*>(nullptr)); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc27_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize__vl_reflection_description_IValueSubscription::__vwsnc27_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FontNameControlConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + this->__vwsn_bind_cache_0 = static_cast<::vl::presentation::controls::GuiSinglelineTextBox*>(nullptr); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + } + + void __vwsnc27_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = ::vl::__vwsn::This(__vwsn_bind_cache_0)->GetText(); + ::vl::__vwsn::EventInvoke(this->ValueChanged)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + + void __vwsnc27_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0(::vl::presentation::compositions::GuiGraphicsComposition* __vwsn_bind_callback_argument_0, ::vl::presentation::compositions::GuiEventArgs* __vwsn_bind_callback_argument_1) + { + this->__vwsn_bind_activator_(); + } + + bool __vwsnc27_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize__vl_reflection_description_IValueSubscription::Open() + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + (__vwsn_bind_cache_0 = [&](){ try{ return __vwsnthis_0->textBox; } catch(...){ return static_cast<::vl::presentation::controls::GuiSinglelineTextBox*>(nullptr); } }()); + (__vwsn_bind_handler_0_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0)->TextChanged, ::vl::Func(this, &__vwsnc27_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + return true; + } + return false; + } + + bool __vwsnc27_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize__vl_reflection_description_IValueSubscription::Update() + { + if ((__vwsn_bind_opened_ && (! __vwsn_bind_closed_))) + { + this->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc27_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize__vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + if (static_cast(__vwsn_bind_handler_0_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0)->TextChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + (__vwsn_bind_cache_0 = static_cast<::vl::presentation::controls::GuiSinglelineTextBox*>(nullptr)); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc28_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize__vl_reflection_description_IValueSubscription::__vwsnc28_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FontNameControlConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + this->__vwsn_bind_cache_0 = static_cast<::vl::presentation::controls::GuiSinglelineTextBox*>(nullptr); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + } + + void __vwsnc28_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = ((! ::vl::__vwsn::This(__vwsnthis_0->ViewModel.Obj())->GetFontMustExist()) || (::vl::__vwsn::This(::vl::__vwsn::UnboxCollection<::vl::reflection::description::IValueReadonlyList>(::vl::__vwsn::This(__vwsnthis_0->ViewModel.Obj())->GetFontList()).Obj())->IndexOf(::vl::__vwsn::Box(::vl::__vwsn::This(__vwsn_bind_cache_0)->GetText())) != (- static_cast<::vl::vint>(1)))); + ::vl::__vwsn::EventInvoke(this->ValueChanged)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + + void __vwsnc28_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0(::vl::presentation::compositions::GuiGraphicsComposition* __vwsn_bind_callback_argument_0, ::vl::presentation::compositions::GuiEventArgs* __vwsn_bind_callback_argument_1) + { + this->__vwsn_bind_activator_(); + } + + bool __vwsnc28_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize__vl_reflection_description_IValueSubscription::Open() + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + (__vwsn_bind_cache_0 = [&](){ try{ return __vwsnthis_0->textBox; } catch(...){ return static_cast<::vl::presentation::controls::GuiSinglelineTextBox*>(nullptr); } }()); + (__vwsn_bind_handler_0_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0)->TextChanged, ::vl::Func(this, &__vwsnc28_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + return true; + } + return false; + } + + bool __vwsnc28_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize__vl_reflection_description_IValueSubscription::Update() + { + if ((__vwsn_bind_opened_ && (! __vwsn_bind_closed_))) + { + this->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc28_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize__vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + if (static_cast(__vwsn_bind_handler_0_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0)->TextChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + (__vwsn_bind_cache_0 = static_cast<::vl::presentation::controls::GuiSinglelineTextBox*>(nullptr)); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc29_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize__vl_reflection_description_IValueSubscription::__vwsnc29_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FontNameControlConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + this->__vwsn_bind_cache_0 = static_cast<::vl::presentation::controls::GuiApplication*>(nullptr); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + } + + void __vwsnc29_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = ::gaclib_controls::DialogStrings::Get(::vl::__vwsn::This(__vwsn_bind_cache_0)->GetLocale()); + ::vl::__vwsn::EventInvoke(this->ValueChanged)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + + void __vwsnc29_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0() + { + this->__vwsn_bind_activator_(); + } + + bool __vwsnc29_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize__vl_reflection_description_IValueSubscription::Open() + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + (__vwsn_bind_cache_0 = [&](){ try{ return ::vl::presentation::controls::GetApplication(); } catch(...){ return static_cast<::vl::presentation::controls::GuiApplication*>(nullptr); } }()); + (__vwsn_bind_handler_0_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0)->LocaleChanged, ::vl::Func(this, &__vwsnc29_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + return true; + } + return false; + } + + bool __vwsnc29_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize__vl_reflection_description_IValueSubscription::Update() + { + if ((__vwsn_bind_opened_ && (! __vwsn_bind_closed_))) + { + this->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc29_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize__vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + if (static_cast(__vwsn_bind_handler_0_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0)->LocaleChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + (__vwsn_bind_cache_0 = static_cast<::vl::presentation::controls::GuiApplication*>(nullptr)); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc2_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize__vl_reflection_description_IValueSubscription::__vwsnc2_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::ColorComponentControlConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + this->__vwsn_bind_cache_0 = static_cast<::gaclib_controls::ColorComponentControl*>(nullptr); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + } + + void __vwsnc2_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = ::vl::__vwsn::This(__vwsn_bind_cache_0)->GetTextBoxAlt(); + ::vl::__vwsn::EventInvoke(this->ValueChanged)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + + void __vwsnc2_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0() + { + this->__vwsn_bind_activator_(); + } + + bool __vwsnc2_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize__vl_reflection_description_IValueSubscription::Open() + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + (__vwsn_bind_cache_0 = [&](){ try{ return __vwsnthis_0->self; } catch(...){ return static_cast<::gaclib_controls::ColorComponentControl*>(nullptr); } }()); + (__vwsn_bind_handler_0_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0)->TextBoxAltChanged, ::vl::Func(this, &__vwsnc2_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + return true; + } + return false; + } + + bool __vwsnc2_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize__vl_reflection_description_IValueSubscription::Update() + { + if ((__vwsn_bind_opened_ && (! __vwsn_bind_closed_))) + { + this->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc2_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize__vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + if (static_cast(__vwsn_bind_handler_0_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0)->TextBoxAltChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + (__vwsn_bind_cache_0 = static_cast<::gaclib_controls::ColorComponentControl*>(nullptr)); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc30_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize__vl_reflection_description_IValueSubscription::__vwsnc30_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FontSizeControl* __vwsnctor___vwsn_this_, ::gaclib_controls::FontSizeControlConstructor* __vwsnctorthis_0) + :__vwsn_this_(__vwsnctor___vwsn_this_) + , __vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + this->__vwsn_bind_cache_0 = static_cast<::gaclib_controls::FontSizeControl*>(nullptr); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + } + + void __vwsnc30_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsn_bind_cache_0)->GetStrings().Obj())->FontSizeGroup(); + ::vl::__vwsn::EventInvoke(this->ValueChanged)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + + void __vwsnc30_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0() + { + this->__vwsn_bind_activator_(); + } + + bool __vwsnc30_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize__vl_reflection_description_IValueSubscription::Open() + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + (__vwsn_bind_cache_0 = [&](){ try{ return __vwsn_this_; } catch(...){ return static_cast<::gaclib_controls::FontSizeControl*>(nullptr); } }()); + (__vwsn_bind_handler_0_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0)->StringsChanged, ::vl::Func(this, &__vwsnc30_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + return true; + } + return false; + } + + bool __vwsnc30_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize__vl_reflection_description_IValueSubscription::Update() + { + if ((__vwsn_bind_opened_ && (! __vwsn_bind_closed_))) + { + this->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc30_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize__vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + if (static_cast(__vwsn_bind_handler_0_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0)->StringsChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + (__vwsn_bind_cache_0 = static_cast<::gaclib_controls::FontSizeControl*>(nullptr)); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc31_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize__vl_reflection_description_IValueSubscription::__vwsnc31_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FontSizeControlConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + this->__vwsn_bind_cache_0 = static_cast<::vl::presentation::controls::GuiSinglelineTextBox*>(nullptr); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + } + + void __vwsnc31_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = [&](){ try{ return ::vl::__vwsn::Parse<::vl::vint>(::vl::__vwsn::This(__vwsn_bind_cache_0)->GetText()); } catch(...){ return (- static_cast<::vl::vint>(1)); } }(); + ::vl::__vwsn::EventInvoke(this->ValueChanged)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + + void __vwsnc31_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0(::vl::presentation::compositions::GuiGraphicsComposition* __vwsn_bind_callback_argument_0, ::vl::presentation::compositions::GuiEventArgs* __vwsn_bind_callback_argument_1) + { + this->__vwsn_bind_activator_(); + } + + bool __vwsnc31_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize__vl_reflection_description_IValueSubscription::Open() + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + (__vwsn_bind_cache_0 = [&](){ try{ return __vwsnthis_0->textBox; } catch(...){ return static_cast<::vl::presentation::controls::GuiSinglelineTextBox*>(nullptr); } }()); + (__vwsn_bind_handler_0_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0)->TextChanged, ::vl::Func(this, &__vwsnc31_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + return true; + } + return false; + } + + bool __vwsnc31_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize__vl_reflection_description_IValueSubscription::Update() + { + if ((__vwsn_bind_opened_ && (! __vwsn_bind_closed_))) + { + this->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc31_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize__vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + if (static_cast(__vwsn_bind_handler_0_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0)->TextChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + (__vwsn_bind_cache_0 = static_cast<::vl::presentation::controls::GuiSinglelineTextBox*>(nullptr)); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc32_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize__vl_reflection_description_IValueSubscription::__vwsnc32_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FontSizeControlConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + this->__vwsn_bind_cache_0 = static_cast<::gaclib_controls::FontSizeControl*>(nullptr); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + } + + void __vwsnc32_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = (::vl::__vwsn::This(__vwsn_bind_cache_0)->GetValue() > static_cast<::vl::vint>(0)); + ::vl::__vwsn::EventInvoke(this->ValueChanged)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + + void __vwsnc32_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0() + { + this->__vwsn_bind_activator_(); + } + + bool __vwsnc32_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize__vl_reflection_description_IValueSubscription::Open() + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + (__vwsn_bind_cache_0 = [&](){ try{ return __vwsnthis_0->self; } catch(...){ return static_cast<::gaclib_controls::FontSizeControl*>(nullptr); } }()); + (__vwsn_bind_handler_0_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0)->ValueChanged, ::vl::Func(this, &__vwsnc32_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + return true; + } + return false; + } + + bool __vwsnc32_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize__vl_reflection_description_IValueSubscription::Update() + { + if ((__vwsn_bind_opened_ && (! __vwsn_bind_closed_))) + { + this->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc32_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize__vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + if (static_cast(__vwsn_bind_handler_0_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0)->ValueChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + (__vwsn_bind_cache_0 = static_cast<::gaclib_controls::FontSizeControl*>(nullptr)); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc33_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize__vl_reflection_description_IValueSubscription::__vwsnc33_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FontSizeControlConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + this->__vwsn_bind_cache_0 = static_cast<::vl::presentation::controls::GuiApplication*>(nullptr); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + } + + void __vwsnc33_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = ::gaclib_controls::DialogStrings::Get(::vl::__vwsn::This(__vwsn_bind_cache_0)->GetLocale()); + ::vl::__vwsn::EventInvoke(this->ValueChanged)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + + void __vwsnc33_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0() + { + this->__vwsn_bind_activator_(); + } + + bool __vwsnc33_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize__vl_reflection_description_IValueSubscription::Open() + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + (__vwsn_bind_cache_0 = [&](){ try{ return ::vl::presentation::controls::GetApplication(); } catch(...){ return static_cast<::vl::presentation::controls::GuiApplication*>(nullptr); } }()); + (__vwsn_bind_handler_0_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0)->LocaleChanged, ::vl::Func(this, &__vwsnc33_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + return true; + } + return false; + } + + bool __vwsnc33_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize__vl_reflection_description_IValueSubscription::Update() + { + if ((__vwsn_bind_opened_ && (! __vwsn_bind_closed_))) + { + this->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc33_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize__vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + if (static_cast(__vwsn_bind_handler_0_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0)->LocaleChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + (__vwsn_bind_cache_0 = static_cast<::vl::presentation::controls::GuiApplication*>(nullptr)); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc34_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsnc34_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FullFontDialogWindow* __vwsnctor___vwsn_this_, ::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0) + :__vwsn_this_(__vwsnctor___vwsn_this_) + , __vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + this->__vwsn_bind_cache_0 = static_cast<::gaclib_controls::FullFontDialogWindow*>(nullptr); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + } + + void __vwsnc34_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsn_bind_cache_0)->GetStrings().Obj())->Bold(); + ::vl::__vwsn::EventInvoke(this->ValueChanged)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + + void __vwsnc34_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0() + { + this->__vwsn_bind_activator_(); + } + + bool __vwsnc34_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Open() + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + (__vwsn_bind_cache_0 = [&](){ try{ return __vwsn_this_; } catch(...){ return static_cast<::gaclib_controls::FullFontDialogWindow*>(nullptr); } }()); + (__vwsn_bind_handler_0_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0)->StringsChanged, ::vl::Func(this, &__vwsnc34_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + return true; + } + return false; + } + + bool __vwsnc34_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Update() + { + if ((__vwsn_bind_opened_ && (! __vwsn_bind_closed_))) + { + this->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc34_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + if (static_cast(__vwsn_bind_handler_0_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0)->StringsChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + (__vwsn_bind_cache_0 = static_cast<::gaclib_controls::FullFontDialogWindow*>(nullptr)); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc35_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsnc35_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FullFontDialogWindow* __vwsnctor___vwsn_this_, ::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0) + :__vwsn_this_(__vwsnctor___vwsn_this_) + , __vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + this->__vwsn_bind_cache_0 = static_cast<::gaclib_controls::FullFontDialogWindow*>(nullptr); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + } + + void __vwsnc35_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsn_bind_cache_0)->GetStrings().Obj())->Italic(); + ::vl::__vwsn::EventInvoke(this->ValueChanged)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + + void __vwsnc35_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0() + { + this->__vwsn_bind_activator_(); + } + + bool __vwsnc35_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Open() + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + (__vwsn_bind_cache_0 = [&](){ try{ return __vwsn_this_; } catch(...){ return static_cast<::gaclib_controls::FullFontDialogWindow*>(nullptr); } }()); + (__vwsn_bind_handler_0_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0)->StringsChanged, ::vl::Func(this, &__vwsnc35_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + return true; + } + return false; + } + + bool __vwsnc35_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Update() + { + if ((__vwsn_bind_opened_ && (! __vwsn_bind_closed_))) + { + this->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc35_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + if (static_cast(__vwsn_bind_handler_0_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0)->StringsChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + (__vwsn_bind_cache_0 = static_cast<::gaclib_controls::FullFontDialogWindow*>(nullptr)); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc36_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsnc36_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FullFontDialogWindow* __vwsnctor___vwsn_this_, ::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0) + :__vwsn_this_(__vwsnctor___vwsn_this_) + , __vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + this->__vwsn_bind_cache_0 = static_cast<::gaclib_controls::FullFontDialogWindow*>(nullptr); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + } + + void __vwsnc36_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsn_bind_cache_0)->GetStrings().Obj())->Underline(); + ::vl::__vwsn::EventInvoke(this->ValueChanged)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + + void __vwsnc36_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0() + { + this->__vwsn_bind_activator_(); + } + + bool __vwsnc36_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Open() + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + (__vwsn_bind_cache_0 = [&](){ try{ return __vwsn_this_; } catch(...){ return static_cast<::gaclib_controls::FullFontDialogWindow*>(nullptr); } }()); + (__vwsn_bind_handler_0_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0)->StringsChanged, ::vl::Func(this, &__vwsnc36_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + return true; + } + return false; + } + + bool __vwsnc36_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Update() + { + if ((__vwsn_bind_opened_ && (! __vwsn_bind_closed_))) + { + this->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc36_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + if (static_cast(__vwsn_bind_handler_0_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0)->StringsChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + (__vwsn_bind_cache_0 = static_cast<::gaclib_controls::FullFontDialogWindow*>(nullptr)); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc37_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsnc37_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FullFontDialogWindow* __vwsnctor___vwsn_this_, ::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0) + :__vwsn_this_(__vwsnctor___vwsn_this_) + , __vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + this->__vwsn_bind_cache_0 = static_cast<::gaclib_controls::FullFontDialogWindow*>(nullptr); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + } + + void __vwsnc37_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsn_bind_cache_0)->GetStrings().Obj())->HAA(); + ::vl::__vwsn::EventInvoke(this->ValueChanged)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + + void __vwsnc37_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0() + { + this->__vwsn_bind_activator_(); + } + + bool __vwsnc37_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Open() + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + (__vwsn_bind_cache_0 = [&](){ try{ return __vwsn_this_; } catch(...){ return static_cast<::gaclib_controls::FullFontDialogWindow*>(nullptr); } }()); + (__vwsn_bind_handler_0_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0)->StringsChanged, ::vl::Func(this, &__vwsnc37_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + return true; + } + return false; + } + + bool __vwsnc37_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Update() + { + if ((__vwsn_bind_opened_ && (! __vwsn_bind_closed_))) + { + this->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc37_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + if (static_cast(__vwsn_bind_handler_0_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0)->StringsChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + (__vwsn_bind_cache_0 = static_cast<::gaclib_controls::FullFontDialogWindow*>(nullptr)); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc38_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsnc38_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FullFontDialogWindow* __vwsnctor___vwsn_this_, ::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0) + :__vwsn_this_(__vwsnctor___vwsn_this_) + , __vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + this->__vwsn_bind_cache_0 = static_cast<::gaclib_controls::FullFontDialogWindow*>(nullptr); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + } + + void __vwsnc38_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsn_bind_cache_0)->GetStrings().Obj())->VAA(); + ::vl::__vwsn::EventInvoke(this->ValueChanged)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + + void __vwsnc38_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0() + { + this->__vwsn_bind_activator_(); + } + + bool __vwsnc38_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Open() + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + (__vwsn_bind_cache_0 = [&](){ try{ return __vwsn_this_; } catch(...){ return static_cast<::gaclib_controls::FullFontDialogWindow*>(nullptr); } }()); + (__vwsn_bind_handler_0_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0)->StringsChanged, ::vl::Func(this, &__vwsnc38_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + return true; + } + return false; + } + + bool __vwsnc38_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Update() + { + if ((__vwsn_bind_opened_ && (! __vwsn_bind_closed_))) + { + this->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc38_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + if (static_cast(__vwsn_bind_handler_0_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0)->StringsChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + (__vwsn_bind_cache_0 = static_cast<::gaclib_controls::FullFontDialogWindow*>(nullptr)); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc39_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsnc39_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FullFontDialogWindow* __vwsnctor___vwsn_this_, ::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0) + :__vwsn_this_(__vwsnctor___vwsn_this_) + , __vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + this->__vwsn_bind_cache_0 = static_cast<::gaclib_controls::FullFontDialogWindow*>(nullptr); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + } + + void __vwsnc39_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsn_bind_cache_0)->GetStrings().Obj())->FontEffectGroup(); + ::vl::__vwsn::EventInvoke(this->ValueChanged)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + + void __vwsnc39_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0() + { + this->__vwsn_bind_activator_(); + } + + bool __vwsnc39_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Open() + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + (__vwsn_bind_cache_0 = [&](){ try{ return __vwsn_this_; } catch(...){ return static_cast<::gaclib_controls::FullFontDialogWindow*>(nullptr); } }()); + (__vwsn_bind_handler_0_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0)->StringsChanged, ::vl::Func(this, &__vwsnc39_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + return true; + } + return false; + } + + bool __vwsnc39_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Update() + { + if ((__vwsn_bind_opened_ && (! __vwsn_bind_closed_))) + { + this->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc39_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + if (static_cast(__vwsn_bind_handler_0_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0)->StringsChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + (__vwsn_bind_cache_0 = static_cast<::gaclib_controls::FullFontDialogWindow*>(nullptr)); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc3_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize__vl_reflection_description_IValueSubscription::__vwsnc3_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::ColorComponentControlConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + this->__vwsn_bind_cache_0 = static_cast<::vl::presentation::controls::GuiScroll*>(nullptr); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + } + + void __vwsnc3_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = ::vl::__vwsn::This(__vwsn_bind_cache_0)->GetPosition(); + ::vl::__vwsn::EventInvoke(this->ValueChanged)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + + void __vwsnc3_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0(::vl::presentation::compositions::GuiGraphicsComposition* __vwsn_bind_callback_argument_0, ::vl::presentation::compositions::GuiEventArgs* __vwsn_bind_callback_argument_1) + { + this->__vwsn_bind_activator_(); + } + + bool __vwsnc3_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize__vl_reflection_description_IValueSubscription::Open() + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + (__vwsn_bind_cache_0 = [&](){ try{ return __vwsnthis_0->tracker; } catch(...){ return static_cast<::vl::presentation::controls::GuiScroll*>(nullptr); } }()); + (__vwsn_bind_handler_0_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0)->PositionChanged, ::vl::Func(this, &__vwsnc3_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + return true; + } + return false; + } + + bool __vwsnc3_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize__vl_reflection_description_IValueSubscription::Update() + { + if ((__vwsn_bind_opened_ && (! __vwsn_bind_closed_))) + { + this->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc3_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize__vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + if (static_cast(__vwsn_bind_handler_0_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0)->PositionChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + (__vwsn_bind_cache_0 = static_cast<::vl::presentation::controls::GuiScroll*>(nullptr)); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc40_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsnc40_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FullFontDialogWindow* __vwsnctor___vwsn_this_, ::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0) + :__vwsn_this_(__vwsnctor___vwsn_this_) + , __vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + this->__vwsn_bind_cache_0 = static_cast<::gaclib_controls::FullFontDialogWindow*>(nullptr); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + } + + void __vwsnc40_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsn_bind_cache_0)->GetStrings().Obj())->FontColorGroup(); + ::vl::__vwsn::EventInvoke(this->ValueChanged)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + + void __vwsnc40_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0() + { + this->__vwsn_bind_activator_(); + } + + bool __vwsnc40_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Open() + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + (__vwsn_bind_cache_0 = [&](){ try{ return __vwsn_this_; } catch(...){ return static_cast<::gaclib_controls::FullFontDialogWindow*>(nullptr); } }()); + (__vwsn_bind_handler_0_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0)->StringsChanged, ::vl::Func(this, &__vwsnc40_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + return true; + } + return false; + } + + bool __vwsnc40_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Update() + { + if ((__vwsn_bind_opened_ && (! __vwsn_bind_closed_))) + { + this->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc40_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + if (static_cast(__vwsn_bind_handler_0_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0)->StringsChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + (__vwsn_bind_cache_0 = static_cast<::gaclib_controls::FullFontDialogWindow*>(nullptr)); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc41_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsnc41_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + this->__vwsn_bind_cache_0 = static_cast<::gaclib_controls::FontNameControl*>(nullptr); + this->__vwsn_bind_cache_1 = static_cast<::gaclib_controls::FontNameControl*>(nullptr); + this->__vwsn_bind_cache_2 = static_cast<::gaclib_controls::FontSizeControl*>(nullptr); + this->__vwsn_bind_cache_3 = static_cast<::gaclib_controls::FontSizeControl*>(nullptr); + this->__vwsn_bind_cache_4 = static_cast<::vl::presentation::controls::GuiSelectableButton*>(nullptr); + this->__vwsn_bind_cache_5 = static_cast<::vl::presentation::controls::GuiSelectableButton*>(nullptr); + this->__vwsn_bind_cache_6 = static_cast<::vl::presentation::controls::GuiSelectableButton*>(nullptr); + this->__vwsn_bind_cache_7 = static_cast<::vl::presentation::controls::GuiSelectableButton*>(nullptr); + this->__vwsn_bind_cache_8 = static_cast<::vl::presentation::controls::GuiSelectableButton*>(nullptr); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_handler_1_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_handler_2_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_handler_3_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_handler_4_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_handler_5_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_handler_6_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_handler_7_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_handler_8_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + } + + void __vwsnc41_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = [&](auto defaultFont){ return [&](){ ::vl::presentation::FontProperties __vwsn_temp__; __vwsn_temp__.fontFamily = (::vl::__vwsn::This(::vl::__vwsn::UnboxCollection<::vl::reflection::description::IValueReadonlyList>(::vl::__vwsn::This(__vwsnthis_0->ViewModel.Obj())->GetFontList()).Obj())->Contains(::vl::__vwsn::Box(::vl::__vwsn::This(__vwsn_bind_cache_0)->GetValue())) ? ::vl::__vwsn::This(__vwsn_bind_cache_1)->GetValue() : defaultFont.fontFamily); __vwsn_temp__.size = ((::vl::__vwsn::This(__vwsn_bind_cache_2)->GetValue() > static_cast<::vl::vint>(0)) ? ::vl::__vwsn::This(__vwsn_bind_cache_3)->GetValue() : defaultFont.size); __vwsn_temp__.bold = ::vl::__vwsn::This(__vwsn_bind_cache_4)->GetSelected(); __vwsn_temp__.italic = ::vl::__vwsn::This(__vwsn_bind_cache_5)->GetSelected(); __vwsn_temp__.underline = ::vl::__vwsn::This(__vwsn_bind_cache_6)->GetSelected(); __vwsn_temp__.antialias = ::vl::__vwsn::This(__vwsn_bind_cache_7)->GetSelected(); __vwsn_temp__.verticalAntialias = ::vl::__vwsn::This(__vwsn_bind_cache_8)->GetSelected(); return __vwsn_temp__; }(); }(::vl::__vwsn::This(::vl::__vwsn::This(::vl::presentation::GetCurrentController())->ResourceService())->GetDefaultFont()); + ::vl::__vwsn::EventInvoke(this->ValueChanged)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + + void __vwsnc41_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0() + { + this->__vwsn_bind_activator_(); + } + + void __vwsnc41_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_1_0() + { + this->__vwsn_bind_activator_(); + } + + void __vwsnc41_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_2_0() + { + this->__vwsn_bind_activator_(); + } + + void __vwsnc41_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_3_0() + { + this->__vwsn_bind_activator_(); + } + + void __vwsnc41_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_4_0(::vl::presentation::compositions::GuiGraphicsComposition* __vwsn_bind_callback_argument_0, ::vl::presentation::compositions::GuiEventArgs* __vwsn_bind_callback_argument_1) + { + this->__vwsn_bind_activator_(); + } + + void __vwsnc41_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_5_0(::vl::presentation::compositions::GuiGraphicsComposition* __vwsn_bind_callback_argument_0, ::vl::presentation::compositions::GuiEventArgs* __vwsn_bind_callback_argument_1) + { + this->__vwsn_bind_activator_(); + } + + void __vwsnc41_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_6_0(::vl::presentation::compositions::GuiGraphicsComposition* __vwsn_bind_callback_argument_0, ::vl::presentation::compositions::GuiEventArgs* __vwsn_bind_callback_argument_1) + { + this->__vwsn_bind_activator_(); + } + + void __vwsnc41_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_7_0(::vl::presentation::compositions::GuiGraphicsComposition* __vwsn_bind_callback_argument_0, ::vl::presentation::compositions::GuiEventArgs* __vwsn_bind_callback_argument_1) + { + this->__vwsn_bind_activator_(); + } + + void __vwsnc41_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_8_0(::vl::presentation::compositions::GuiGraphicsComposition* __vwsn_bind_callback_argument_0, ::vl::presentation::compositions::GuiEventArgs* __vwsn_bind_callback_argument_1) + { + this->__vwsn_bind_activator_(); + } + + bool __vwsnc41_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Open() + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + (__vwsn_bind_cache_0 = [&](){ try{ return __vwsnthis_0->nameControl; } catch(...){ return static_cast<::gaclib_controls::FontNameControl*>(nullptr); } }()); + (__vwsn_bind_cache_1 = [&](){ try{ return __vwsnthis_0->nameControl; } catch(...){ return static_cast<::gaclib_controls::FontNameControl*>(nullptr); } }()); + (__vwsn_bind_cache_2 = [&](){ try{ return __vwsnthis_0->sizeControl; } catch(...){ return static_cast<::gaclib_controls::FontSizeControl*>(nullptr); } }()); + (__vwsn_bind_cache_3 = [&](){ try{ return __vwsnthis_0->sizeControl; } catch(...){ return static_cast<::gaclib_controls::FontSizeControl*>(nullptr); } }()); + (__vwsn_bind_cache_4 = [&](){ try{ return __vwsnthis_0->checkBold; } catch(...){ return static_cast<::vl::presentation::controls::GuiSelectableButton*>(nullptr); } }()); + (__vwsn_bind_cache_5 = [&](){ try{ return __vwsnthis_0->checkItalic; } catch(...){ return static_cast<::vl::presentation::controls::GuiSelectableButton*>(nullptr); } }()); + (__vwsn_bind_cache_6 = [&](){ try{ return __vwsnthis_0->checkUnderline; } catch(...){ return static_cast<::vl::presentation::controls::GuiSelectableButton*>(nullptr); } }()); + (__vwsn_bind_cache_7 = [&](){ try{ return __vwsnthis_0->checkHAA; } catch(...){ return static_cast<::vl::presentation::controls::GuiSelectableButton*>(nullptr); } }()); + (__vwsn_bind_cache_8 = [&](){ try{ return __vwsnthis_0->checkVAA; } catch(...){ return static_cast<::vl::presentation::controls::GuiSelectableButton*>(nullptr); } }()); + (__vwsn_bind_handler_0_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0)->ValueChanged, ::vl::Func(this, &__vwsnc41_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + (__vwsn_bind_handler_1_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_1)->ValueChanged, ::vl::Func(this, &__vwsnc41_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_1_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + (__vwsn_bind_handler_2_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_2)->ValueChanged, ::vl::Func(this, &__vwsnc41_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_2_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + (__vwsn_bind_handler_3_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_3)->ValueChanged, ::vl::Func(this, &__vwsnc41_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_3_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + (__vwsn_bind_handler_4_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_4)->SelectedChanged, ::vl::Func(this, &__vwsnc41_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_4_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + (__vwsn_bind_handler_5_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_5)->SelectedChanged, ::vl::Func(this, &__vwsnc41_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_5_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + (__vwsn_bind_handler_6_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_6)->SelectedChanged, ::vl::Func(this, &__vwsnc41_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_6_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + (__vwsn_bind_handler_7_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_7)->SelectedChanged, ::vl::Func(this, &__vwsnc41_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_7_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + (__vwsn_bind_handler_8_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_8)->SelectedChanged, ::vl::Func(this, &__vwsnc41_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_8_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + return true; + } + return false; + } + + bool __vwsnc41_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Update() + { + if ((__vwsn_bind_opened_ && (! __vwsn_bind_closed_))) + { + this->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc41_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + if (static_cast(__vwsn_bind_handler_0_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0)->ValueChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + if (static_cast(__vwsn_bind_handler_1_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_1)->ValueChanged, __vwsn_bind_handler_1_0); + (__vwsn_bind_handler_1_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + if (static_cast(__vwsn_bind_handler_2_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_2)->ValueChanged, __vwsn_bind_handler_2_0); + (__vwsn_bind_handler_2_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + if (static_cast(__vwsn_bind_handler_3_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_3)->ValueChanged, __vwsn_bind_handler_3_0); + (__vwsn_bind_handler_3_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + if (static_cast(__vwsn_bind_handler_4_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_4)->SelectedChanged, __vwsn_bind_handler_4_0); + (__vwsn_bind_handler_4_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + if (static_cast(__vwsn_bind_handler_5_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_5)->SelectedChanged, __vwsn_bind_handler_5_0); + (__vwsn_bind_handler_5_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + if (static_cast(__vwsn_bind_handler_6_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_6)->SelectedChanged, __vwsn_bind_handler_6_0); + (__vwsn_bind_handler_6_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + if (static_cast(__vwsn_bind_handler_7_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_7)->SelectedChanged, __vwsn_bind_handler_7_0); + (__vwsn_bind_handler_7_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + if (static_cast(__vwsn_bind_handler_8_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_8)->SelectedChanged, __vwsn_bind_handler_8_0); + (__vwsn_bind_handler_8_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + (__vwsn_bind_cache_0 = static_cast<::gaclib_controls::FontNameControl*>(nullptr)); + (__vwsn_bind_cache_1 = static_cast<::gaclib_controls::FontNameControl*>(nullptr)); + (__vwsn_bind_cache_2 = static_cast<::gaclib_controls::FontSizeControl*>(nullptr)); + (__vwsn_bind_cache_3 = static_cast<::gaclib_controls::FontSizeControl*>(nullptr)); + (__vwsn_bind_cache_4 = static_cast<::vl::presentation::controls::GuiSelectableButton*>(nullptr)); + (__vwsn_bind_cache_5 = static_cast<::vl::presentation::controls::GuiSelectableButton*>(nullptr)); + (__vwsn_bind_cache_6 = static_cast<::vl::presentation::controls::GuiSelectableButton*>(nullptr)); + (__vwsn_bind_cache_7 = static_cast<::vl::presentation::controls::GuiSelectableButton*>(nullptr)); + (__vwsn_bind_cache_8 = static_cast<::vl::presentation::controls::GuiSelectableButton*>(nullptr)); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + (__vwsn_bind_handler_1_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + (__vwsn_bind_handler_2_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + (__vwsn_bind_handler_3_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + (__vwsn_bind_handler_4_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + (__vwsn_bind_handler_5_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + (__vwsn_bind_handler_6_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + (__vwsn_bind_handler_7_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + (__vwsn_bind_handler_8_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc42_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsnc42_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FullFontDialogWindow* __vwsnctor___vwsn_this_, ::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0) + :__vwsn_this_(__vwsnctor___vwsn_this_) + , __vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + this->__vwsn_bind_cache_0 = static_cast<::gaclib_controls::FullFontDialogWindow*>(nullptr); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + } + + void __vwsnc42_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsn_bind_cache_0)->GetStrings().Obj())->FontPreviewGroup(); + ::vl::__vwsn::EventInvoke(this->ValueChanged)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + + void __vwsnc42_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0() + { + this->__vwsn_bind_activator_(); + } + + bool __vwsnc42_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Open() + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + (__vwsn_bind_cache_0 = [&](){ try{ return __vwsn_this_; } catch(...){ return static_cast<::gaclib_controls::FullFontDialogWindow*>(nullptr); } }()); + (__vwsn_bind_handler_0_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0)->StringsChanged, ::vl::Func(this, &__vwsnc42_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + return true; + } + return false; + } + + bool __vwsnc42_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Update() + { + if ((__vwsn_bind_opened_ && (! __vwsn_bind_closed_))) + { + this->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc42_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + if (static_cast(__vwsn_bind_handler_0_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0)->StringsChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + (__vwsn_bind_cache_0 = static_cast<::gaclib_controls::FullFontDialogWindow*>(nullptr)); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc43_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsnc43_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FullFontDialogWindow* __vwsnctor___vwsn_this_, ::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0) + :__vwsn_this_(__vwsnctor___vwsn_this_) + , __vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + this->__vwsn_bind_cache_0 = static_cast<::gaclib_controls::FullFontDialogWindow*>(nullptr); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + } + + void __vwsnc43_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsn_bind_cache_0)->GetStrings().Obj())->OK(); + ::vl::__vwsn::EventInvoke(this->ValueChanged)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + + void __vwsnc43_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0() + { + this->__vwsn_bind_activator_(); + } + + bool __vwsnc43_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Open() + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + (__vwsn_bind_cache_0 = [&](){ try{ return __vwsn_this_; } catch(...){ return static_cast<::gaclib_controls::FullFontDialogWindow*>(nullptr); } }()); + (__vwsn_bind_handler_0_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0)->StringsChanged, ::vl::Func(this, &__vwsnc43_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + return true; + } + return false; + } + + bool __vwsnc43_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Update() + { + if ((__vwsn_bind_opened_ && (! __vwsn_bind_closed_))) + { + this->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc43_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + if (static_cast(__vwsn_bind_handler_0_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0)->StringsChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + (__vwsn_bind_cache_0 = static_cast<::gaclib_controls::FullFontDialogWindow*>(nullptr)); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc44_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsnc44_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + this->__vwsn_bind_cache_0 = static_cast<::gaclib_controls::FontNameControl*>(nullptr); + this->__vwsn_bind_cache_1 = static_cast<::gaclib_controls::FontSizeControl*>(nullptr); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_handler_1_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + } + + void __vwsnc44_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = (::vl::__vwsn::This(__vwsn_bind_cache_0)->GetLegal() && ::vl::__vwsn::This(__vwsn_bind_cache_1)->GetLegal()); + ::vl::__vwsn::EventInvoke(this->ValueChanged)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + + void __vwsnc44_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0() + { + this->__vwsn_bind_activator_(); + } + + void __vwsnc44_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_1_0() + { + this->__vwsn_bind_activator_(); + } + + bool __vwsnc44_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Open() + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + (__vwsn_bind_cache_0 = [&](){ try{ return __vwsnthis_0->nameControl; } catch(...){ return static_cast<::gaclib_controls::FontNameControl*>(nullptr); } }()); + (__vwsn_bind_cache_1 = [&](){ try{ return __vwsnthis_0->sizeControl; } catch(...){ return static_cast<::gaclib_controls::FontSizeControl*>(nullptr); } }()); + (__vwsn_bind_handler_0_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0)->LegalChanged, ::vl::Func(this, &__vwsnc44_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + (__vwsn_bind_handler_1_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_1)->LegalChanged, ::vl::Func(this, &__vwsnc44_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_1_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + return true; + } + return false; + } + + bool __vwsnc44_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Update() + { + if ((__vwsn_bind_opened_ && (! __vwsn_bind_closed_))) + { + this->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc44_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + if (static_cast(__vwsn_bind_handler_0_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0)->LegalChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + if (static_cast(__vwsn_bind_handler_1_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_1)->LegalChanged, __vwsn_bind_handler_1_0); + (__vwsn_bind_handler_1_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + (__vwsn_bind_cache_0 = static_cast<::gaclib_controls::FontNameControl*>(nullptr)); + (__vwsn_bind_cache_1 = static_cast<::gaclib_controls::FontSizeControl*>(nullptr)); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + (__vwsn_bind_handler_1_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc45_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsnc45_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FullFontDialogWindow* __vwsnctor___vwsn_this_, ::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0) + :__vwsn_this_(__vwsnctor___vwsn_this_) + , __vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + this->__vwsn_bind_cache_0 = static_cast<::gaclib_controls::FullFontDialogWindow*>(nullptr); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + } + + void __vwsnc45_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsn_bind_cache_0)->GetStrings().Obj())->Cancel(); + ::vl::__vwsn::EventInvoke(this->ValueChanged)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + + void __vwsnc45_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0() + { + this->__vwsn_bind_activator_(); + } + + bool __vwsnc45_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Open() + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + (__vwsn_bind_cache_0 = [&](){ try{ return __vwsn_this_; } catch(...){ return static_cast<::gaclib_controls::FullFontDialogWindow*>(nullptr); } }()); + (__vwsn_bind_handler_0_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0)->StringsChanged, ::vl::Func(this, &__vwsnc45_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + return true; + } + return false; + } + + bool __vwsnc45_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Update() + { + if ((__vwsn_bind_opened_ && (! __vwsn_bind_closed_))) + { + this->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc45_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + if (static_cast(__vwsn_bind_handler_0_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0)->StringsChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + (__vwsn_bind_cache_0 = static_cast<::gaclib_controls::FullFontDialogWindow*>(nullptr)); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc46_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsnc46_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FullFontDialogWindow* __vwsnctor___vwsn_this_, ::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0) + :__vwsn_this_(__vwsnctor___vwsn_this_) + , __vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + this->__vwsn_bind_cache_0 = static_cast<::gaclib_controls::FullFontDialogWindow*>(nullptr); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + } + + void __vwsnc46_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsn_bind_cache_0)->GetStrings().Obj())->FontDialogTitle(); + ::vl::__vwsn::EventInvoke(this->ValueChanged)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + + void __vwsnc46_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0() + { + this->__vwsn_bind_activator_(); + } + + bool __vwsnc46_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Open() + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + (__vwsn_bind_cache_0 = [&](){ try{ return __vwsn_this_; } catch(...){ return static_cast<::gaclib_controls::FullFontDialogWindow*>(nullptr); } }()); + (__vwsn_bind_handler_0_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0)->StringsChanged, ::vl::Func(this, &__vwsnc46_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + return true; + } + return false; + } + + bool __vwsnc46_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Update() + { + if ((__vwsn_bind_opened_ && (! __vwsn_bind_closed_))) + { + this->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc46_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + if (static_cast(__vwsn_bind_handler_0_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0)->StringsChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + (__vwsn_bind_cache_0 = static_cast<::gaclib_controls::FullFontDialogWindow*>(nullptr)); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc47_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsnc47_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + this->__vwsn_bind_cache_0 = static_cast<::vl::presentation::controls::GuiApplication*>(nullptr); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + } + + void __vwsnc47_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = ::gaclib_controls::DialogStrings::Get(::vl::__vwsn::This(__vwsn_bind_cache_0)->GetLocale()); + ::vl::__vwsn::EventInvoke(this->ValueChanged)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + + void __vwsnc47_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0() + { + this->__vwsn_bind_activator_(); + } + + bool __vwsnc47_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Open() + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + (__vwsn_bind_cache_0 = [&](){ try{ return ::vl::presentation::controls::GetApplication(); } catch(...){ return static_cast<::vl::presentation::controls::GuiApplication*>(nullptr); } }()); + (__vwsn_bind_handler_0_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0)->LocaleChanged, ::vl::Func(this, &__vwsnc47_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + return true; + } + return false; + } + + bool __vwsnc47_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Update() + { + if ((__vwsn_bind_opened_ && (! __vwsn_bind_closed_))) + { + this->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc47_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + if (static_cast(__vwsn_bind_handler_0_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0)->LocaleChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + (__vwsn_bind_cache_0 = static_cast<::vl::presentation::controls::GuiApplication*>(nullptr)); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc48_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsnc48_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::SimpleFontDialogWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + this->__vwsn_bind_cache_0 = static_cast<::gaclib_controls::FontNameControl*>(nullptr); + this->__vwsn_bind_cache_1 = static_cast<::gaclib_controls::FontNameControl*>(nullptr); + this->__vwsn_bind_cache_2 = static_cast<::gaclib_controls::FontSizeControl*>(nullptr); + this->__vwsn_bind_cache_3 = static_cast<::gaclib_controls::FontSizeControl*>(nullptr); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_handler_1_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_handler_2_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_handler_3_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + } + + void __vwsnc48_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = [&](auto defaultFont){ return [&](){ ::vl::presentation::FontProperties __vwsn_temp__; __vwsn_temp__.fontFamily = (::vl::__vwsn::This(::vl::__vwsn::UnboxCollection<::vl::reflection::description::IValueReadonlyList>(::vl::__vwsn::This(__vwsnthis_0->ViewModel.Obj())->GetFontList()).Obj())->Contains(::vl::__vwsn::Box(::vl::__vwsn::This(__vwsn_bind_cache_0)->GetValue())) ? ::vl::__vwsn::This(__vwsn_bind_cache_1)->GetValue() : defaultFont.fontFamily); __vwsn_temp__.size = ((::vl::__vwsn::This(__vwsn_bind_cache_2)->GetValue() > static_cast<::vl::vint>(0)) ? ::vl::__vwsn::This(__vwsn_bind_cache_3)->GetValue() : defaultFont.size); __vwsn_temp__.antialias = true; __vwsn_temp__.verticalAntialias = true; return __vwsn_temp__; }(); }(::vl::__vwsn::This(::vl::__vwsn::This(::vl::presentation::GetCurrentController())->ResourceService())->GetDefaultFont()); + ::vl::__vwsn::EventInvoke(this->ValueChanged)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + + void __vwsnc48_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0() + { + this->__vwsn_bind_activator_(); + } + + void __vwsnc48_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_1_0() + { + this->__vwsn_bind_activator_(); + } + + void __vwsnc48_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_2_0() + { + this->__vwsn_bind_activator_(); + } + + void __vwsnc48_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_3_0() + { + this->__vwsn_bind_activator_(); + } + + bool __vwsnc48_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Open() + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + (__vwsn_bind_cache_0 = [&](){ try{ return __vwsnthis_0->nameControl; } catch(...){ return static_cast<::gaclib_controls::FontNameControl*>(nullptr); } }()); + (__vwsn_bind_cache_1 = [&](){ try{ return __vwsnthis_0->nameControl; } catch(...){ return static_cast<::gaclib_controls::FontNameControl*>(nullptr); } }()); + (__vwsn_bind_cache_2 = [&](){ try{ return __vwsnthis_0->sizeControl; } catch(...){ return static_cast<::gaclib_controls::FontSizeControl*>(nullptr); } }()); + (__vwsn_bind_cache_3 = [&](){ try{ return __vwsnthis_0->sizeControl; } catch(...){ return static_cast<::gaclib_controls::FontSizeControl*>(nullptr); } }()); + (__vwsn_bind_handler_0_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0)->ValueChanged, ::vl::Func(this, &__vwsnc48_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + (__vwsn_bind_handler_1_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_1)->ValueChanged, ::vl::Func(this, &__vwsnc48_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_1_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + (__vwsn_bind_handler_2_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_2)->ValueChanged, ::vl::Func(this, &__vwsnc48_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_2_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + (__vwsn_bind_handler_3_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_3)->ValueChanged, ::vl::Func(this, &__vwsnc48_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_3_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + return true; + } + return false; + } + + bool __vwsnc48_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Update() + { + if ((__vwsn_bind_opened_ && (! __vwsn_bind_closed_))) + { + this->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc48_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + if (static_cast(__vwsn_bind_handler_0_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0)->ValueChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + if (static_cast(__vwsn_bind_handler_1_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_1)->ValueChanged, __vwsn_bind_handler_1_0); + (__vwsn_bind_handler_1_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + if (static_cast(__vwsn_bind_handler_2_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_2)->ValueChanged, __vwsn_bind_handler_2_0); + (__vwsn_bind_handler_2_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + if (static_cast(__vwsn_bind_handler_3_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_3)->ValueChanged, __vwsn_bind_handler_3_0); + (__vwsn_bind_handler_3_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + (__vwsn_bind_cache_0 = static_cast<::gaclib_controls::FontNameControl*>(nullptr)); + (__vwsn_bind_cache_1 = static_cast<::gaclib_controls::FontNameControl*>(nullptr)); + (__vwsn_bind_cache_2 = static_cast<::gaclib_controls::FontSizeControl*>(nullptr)); + (__vwsn_bind_cache_3 = static_cast<::gaclib_controls::FontSizeControl*>(nullptr)); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + (__vwsn_bind_handler_1_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + (__vwsn_bind_handler_2_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + (__vwsn_bind_handler_3_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc49_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsnc49_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::SimpleFontDialogWindow* __vwsnctor___vwsn_this_, ::gaclib_controls::SimpleFontDialogWindowConstructor* __vwsnctorthis_0) + :__vwsn_this_(__vwsnctor___vwsn_this_) + , __vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + this->__vwsn_bind_cache_0 = static_cast<::gaclib_controls::SimpleFontDialogWindow*>(nullptr); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + } + + void __vwsnc49_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsn_bind_cache_0)->GetStrings().Obj())->FontPreviewGroup(); + ::vl::__vwsn::EventInvoke(this->ValueChanged)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + + void __vwsnc49_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0() + { + this->__vwsn_bind_activator_(); + } + + bool __vwsnc49_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Open() + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + (__vwsn_bind_cache_0 = [&](){ try{ return __vwsn_this_; } catch(...){ return static_cast<::gaclib_controls::SimpleFontDialogWindow*>(nullptr); } }()); + (__vwsn_bind_handler_0_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0)->StringsChanged, ::vl::Func(this, &__vwsnc49_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + return true; + } + return false; + } + + bool __vwsnc49_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Update() + { + if ((__vwsn_bind_opened_ && (! __vwsn_bind_closed_))) + { + this->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc49_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + if (static_cast(__vwsn_bind_handler_0_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0)->StringsChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + (__vwsn_bind_cache_0 = static_cast<::gaclib_controls::SimpleFontDialogWindow*>(nullptr)); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc4_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription::__vwsnc4_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::ColorDialogControl* __vwsnctor___vwsn_this_, ::gaclib_controls::ColorDialogControlConstructor* __vwsnctorthis_0) + :__vwsn_this_(__vwsnctor___vwsn_this_) + , __vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + this->__vwsn_bind_cache_0 = static_cast<::gaclib_controls::ColorDialogControl*>(nullptr); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + } + + void __vwsnc4_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsn_bind_cache_0)->GetStrings().Obj())->Red(); + ::vl::__vwsn::EventInvoke(this->ValueChanged)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + + void __vwsnc4_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0() + { + this->__vwsn_bind_activator_(); + } + + bool __vwsnc4_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription::Open() + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + (__vwsn_bind_cache_0 = [&](){ try{ return __vwsn_this_; } catch(...){ return static_cast<::gaclib_controls::ColorDialogControl*>(nullptr); } }()); + (__vwsn_bind_handler_0_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0)->StringsChanged, ::vl::Func(this, &__vwsnc4_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + return true; + } + return false; + } + + bool __vwsnc4_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription::Update() + { + if ((__vwsn_bind_opened_ && (! __vwsn_bind_closed_))) + { + this->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc4_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + if (static_cast(__vwsn_bind_handler_0_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0)->StringsChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + (__vwsn_bind_cache_0 = static_cast<::gaclib_controls::ColorDialogControl*>(nullptr)); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc50_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsnc50_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::SimpleFontDialogWindow* __vwsnctor___vwsn_this_, ::gaclib_controls::SimpleFontDialogWindowConstructor* __vwsnctorthis_0) + :__vwsn_this_(__vwsnctor___vwsn_this_) + , __vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + this->__vwsn_bind_cache_0 = static_cast<::gaclib_controls::SimpleFontDialogWindow*>(nullptr); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + } + + void __vwsnc50_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsn_bind_cache_0)->GetStrings().Obj())->OK(); + ::vl::__vwsn::EventInvoke(this->ValueChanged)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + + void __vwsnc50_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0() + { + this->__vwsn_bind_activator_(); + } + + bool __vwsnc50_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Open() + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + (__vwsn_bind_cache_0 = [&](){ try{ return __vwsn_this_; } catch(...){ return static_cast<::gaclib_controls::SimpleFontDialogWindow*>(nullptr); } }()); + (__vwsn_bind_handler_0_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0)->StringsChanged, ::vl::Func(this, &__vwsnc50_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + return true; + } + return false; + } + + bool __vwsnc50_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Update() + { + if ((__vwsn_bind_opened_ && (! __vwsn_bind_closed_))) + { + this->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc50_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + if (static_cast(__vwsn_bind_handler_0_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0)->StringsChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + (__vwsn_bind_cache_0 = static_cast<::gaclib_controls::SimpleFontDialogWindow*>(nullptr)); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc51_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsnc51_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::SimpleFontDialogWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + this->__vwsn_bind_cache_0 = static_cast<::gaclib_controls::FontNameControl*>(nullptr); + this->__vwsn_bind_cache_1 = static_cast<::gaclib_controls::FontSizeControl*>(nullptr); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_handler_1_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + } + + void __vwsnc51_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = (::vl::__vwsn::This(__vwsn_bind_cache_0)->GetLegal() && ::vl::__vwsn::This(__vwsn_bind_cache_1)->GetLegal()); + ::vl::__vwsn::EventInvoke(this->ValueChanged)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + + void __vwsnc51_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0() + { + this->__vwsn_bind_activator_(); + } + + void __vwsnc51_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_1_0() + { + this->__vwsn_bind_activator_(); + } + + bool __vwsnc51_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Open() + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + (__vwsn_bind_cache_0 = [&](){ try{ return __vwsnthis_0->nameControl; } catch(...){ return static_cast<::gaclib_controls::FontNameControl*>(nullptr); } }()); + (__vwsn_bind_cache_1 = [&](){ try{ return __vwsnthis_0->sizeControl; } catch(...){ return static_cast<::gaclib_controls::FontSizeControl*>(nullptr); } }()); + (__vwsn_bind_handler_0_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0)->LegalChanged, ::vl::Func(this, &__vwsnc51_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + (__vwsn_bind_handler_1_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_1)->LegalChanged, ::vl::Func(this, &__vwsnc51_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_1_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + return true; + } + return false; + } + + bool __vwsnc51_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Update() + { + if ((__vwsn_bind_opened_ && (! __vwsn_bind_closed_))) + { + this->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc51_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + if (static_cast(__vwsn_bind_handler_0_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0)->LegalChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + if (static_cast(__vwsn_bind_handler_1_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_1)->LegalChanged, __vwsn_bind_handler_1_0); + (__vwsn_bind_handler_1_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + (__vwsn_bind_cache_0 = static_cast<::gaclib_controls::FontNameControl*>(nullptr)); + (__vwsn_bind_cache_1 = static_cast<::gaclib_controls::FontSizeControl*>(nullptr)); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + (__vwsn_bind_handler_1_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc52_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsnc52_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::SimpleFontDialogWindow* __vwsnctor___vwsn_this_, ::gaclib_controls::SimpleFontDialogWindowConstructor* __vwsnctorthis_0) + :__vwsn_this_(__vwsnctor___vwsn_this_) + , __vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + this->__vwsn_bind_cache_0 = static_cast<::gaclib_controls::SimpleFontDialogWindow*>(nullptr); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + } + + void __vwsnc52_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsn_bind_cache_0)->GetStrings().Obj())->Cancel(); + ::vl::__vwsn::EventInvoke(this->ValueChanged)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + + void __vwsnc52_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0() + { + this->__vwsn_bind_activator_(); + } + + bool __vwsnc52_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Open() + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + (__vwsn_bind_cache_0 = [&](){ try{ return __vwsn_this_; } catch(...){ return static_cast<::gaclib_controls::SimpleFontDialogWindow*>(nullptr); } }()); + (__vwsn_bind_handler_0_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0)->StringsChanged, ::vl::Func(this, &__vwsnc52_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + return true; + } + return false; + } + + bool __vwsnc52_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Update() + { + if ((__vwsn_bind_opened_ && (! __vwsn_bind_closed_))) + { + this->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc52_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + if (static_cast(__vwsn_bind_handler_0_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0)->StringsChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + (__vwsn_bind_cache_0 = static_cast<::gaclib_controls::SimpleFontDialogWindow*>(nullptr)); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc53_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsnc53_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::SimpleFontDialogWindow* __vwsnctor___vwsn_this_, ::gaclib_controls::SimpleFontDialogWindowConstructor* __vwsnctorthis_0) + :__vwsn_this_(__vwsnctor___vwsn_this_) + , __vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + this->__vwsn_bind_cache_0 = static_cast<::gaclib_controls::SimpleFontDialogWindow*>(nullptr); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + } + + void __vwsnc53_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsn_bind_cache_0)->GetStrings().Obj())->FontDialogTitle(); + ::vl::__vwsn::EventInvoke(this->ValueChanged)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + + void __vwsnc53_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0() + { + this->__vwsn_bind_activator_(); + } + + bool __vwsnc53_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Open() + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + (__vwsn_bind_cache_0 = [&](){ try{ return __vwsn_this_; } catch(...){ return static_cast<::gaclib_controls::SimpleFontDialogWindow*>(nullptr); } }()); + (__vwsn_bind_handler_0_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0)->StringsChanged, ::vl::Func(this, &__vwsnc53_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + return true; + } + return false; + } + + bool __vwsnc53_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Update() + { + if ((__vwsn_bind_opened_ && (! __vwsn_bind_closed_))) + { + this->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc53_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + if (static_cast(__vwsn_bind_handler_0_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0)->StringsChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + (__vwsn_bind_cache_0 = static_cast<::gaclib_controls::SimpleFontDialogWindow*>(nullptr)); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc54_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsnc54_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::SimpleFontDialogWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + this->__vwsn_bind_cache_0 = static_cast<::vl::presentation::controls::GuiApplication*>(nullptr); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + } + + void __vwsnc54_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = ::gaclib_controls::DialogStrings::Get(::vl::__vwsn::This(__vwsn_bind_cache_0)->GetLocale()); + ::vl::__vwsn::EventInvoke(this->ValueChanged)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + + void __vwsnc54_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0() + { + this->__vwsn_bind_activator_(); + } + + bool __vwsnc54_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Open() + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + (__vwsn_bind_cache_0 = [&](){ try{ return ::vl::presentation::controls::GetApplication(); } catch(...){ return static_cast<::vl::presentation::controls::GuiApplication*>(nullptr); } }()); + (__vwsn_bind_handler_0_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0)->LocaleChanged, ::vl::Func(this, &__vwsnc54_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + return true; + } + return false; + } + + bool __vwsnc54_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Update() + { + if ((__vwsn_bind_opened_ && (! __vwsn_bind_closed_))) + { + this->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc54_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + if (static_cast(__vwsn_bind_handler_0_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0)->LocaleChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + (__vwsn_bind_cache_0 = static_cast<::vl::presentation::controls::GuiApplication*>(nullptr)); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc55_GuiFakeDialogServiceUI_gaclib_controls_MessageBoxButtonTemplateConstructor___vwsn_gaclib_controls_MessageBoxButtonTemplate_Initialize__vl_reflection_description_IValueSubscription::__vwsnc55_GuiFakeDialogServiceUI_gaclib_controls_MessageBoxButtonTemplateConstructor___vwsn_gaclib_controls_MessageBoxButtonTemplate_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::MessageBoxButtonTemplateConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + this->__vwsn_bind_cache_0 = static_cast<::vl::presentation::controls::GuiApplication*>(nullptr); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + } + + void __vwsnc55_GuiFakeDialogServiceUI_gaclib_controls_MessageBoxButtonTemplateConstructor___vwsn_gaclib_controls_MessageBoxButtonTemplate_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = ::gaclib_controls::DialogStrings::Get(::vl::__vwsn::This(__vwsn_bind_cache_0)->GetLocale()); + ::vl::__vwsn::EventInvoke(this->ValueChanged)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + + void __vwsnc55_GuiFakeDialogServiceUI_gaclib_controls_MessageBoxButtonTemplateConstructor___vwsn_gaclib_controls_MessageBoxButtonTemplate_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0() + { + this->__vwsn_bind_activator_(); + } + + bool __vwsnc55_GuiFakeDialogServiceUI_gaclib_controls_MessageBoxButtonTemplateConstructor___vwsn_gaclib_controls_MessageBoxButtonTemplate_Initialize__vl_reflection_description_IValueSubscription::Open() + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + (__vwsn_bind_cache_0 = [&](){ try{ return ::vl::presentation::controls::GetApplication(); } catch(...){ return static_cast<::vl::presentation::controls::GuiApplication*>(nullptr); } }()); + (__vwsn_bind_handler_0_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0)->LocaleChanged, ::vl::Func(this, &__vwsnc55_GuiFakeDialogServiceUI_gaclib_controls_MessageBoxButtonTemplateConstructor___vwsn_gaclib_controls_MessageBoxButtonTemplate_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + return true; + } + return false; + } + + bool __vwsnc55_GuiFakeDialogServiceUI_gaclib_controls_MessageBoxButtonTemplateConstructor___vwsn_gaclib_controls_MessageBoxButtonTemplate_Initialize__vl_reflection_description_IValueSubscription::Update() + { + if ((__vwsn_bind_opened_ && (! __vwsn_bind_closed_))) + { + this->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc55_GuiFakeDialogServiceUI_gaclib_controls_MessageBoxButtonTemplateConstructor___vwsn_gaclib_controls_MessageBoxButtonTemplate_Initialize__vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + if (static_cast(__vwsn_bind_handler_0_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0)->LocaleChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + (__vwsn_bind_cache_0 = static_cast<::vl::presentation::controls::GuiApplication*>(nullptr)); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc56_GuiFakeDialogServiceUI_gaclib_controls_DialogStrings_Get__gaclib_controls_IDialogStringsStrings::__vwsnc56_GuiFakeDialogServiceUI_gaclib_controls_DialogStrings_Get__gaclib_controls_IDialogStringsStrings() + { + } + + ::vl::WString __vwsnc56_GuiFakeDialogServiceUI_gaclib_controls_DialogStrings_Get__gaclib_controls_IDialogStringsStrings::Abort() + { + return ::vl::WString::Unmanaged(L"Abort"); + } + + ::vl::WString __vwsnc56_GuiFakeDialogServiceUI_gaclib_controls_DialogStrings_Get__gaclib_controls_IDialogStringsStrings::Blue() + { + return ::vl::WString::Unmanaged(L"Blue:"); + } + + ::vl::WString __vwsnc56_GuiFakeDialogServiceUI_gaclib_controls_DialogStrings_Get__gaclib_controls_IDialogStringsStrings::Bold() + { + return ::vl::WString::Unmanaged(L"Bold"); + } + + ::vl::WString __vwsnc56_GuiFakeDialogServiceUI_gaclib_controls_DialogStrings_Get__gaclib_controls_IDialogStringsStrings::Cancel() + { + return ::vl::WString::Unmanaged(L"Cancel"); + } + + ::vl::WString __vwsnc56_GuiFakeDialogServiceUI_gaclib_controls_DialogStrings_Get__gaclib_controls_IDialogStringsStrings::Color() + { + return ::vl::WString::Unmanaged(L"Color:"); + } + + ::vl::WString __vwsnc56_GuiFakeDialogServiceUI_gaclib_controls_DialogStrings_Get__gaclib_controls_IDialogStringsStrings::ColorDialogTitle() + { + return ::vl::WString::Unmanaged(L"Choose Color"); + } + + ::vl::WString __vwsnc56_GuiFakeDialogServiceUI_gaclib_controls_DialogStrings_Get__gaclib_controls_IDialogStringsStrings::Continue() + { + return ::vl::WString::Unmanaged(L"Continue"); + } + + ::vl::WString __vwsnc56_GuiFakeDialogServiceUI_gaclib_controls_DialogStrings_Get__gaclib_controls_IDialogStringsStrings::FileDialogAskCreateFile() + { + return ::vl::WString::Unmanaged(L"Do you want to create the following file(s):"); + } + + ::vl::WString __vwsnc56_GuiFakeDialogServiceUI_gaclib_controls_DialogStrings_Get__gaclib_controls_IDialogStringsStrings::FileDialogAskOverrideFile() + { + return ::vl::WString::Unmanaged(L"Do you want to override the following file(s):"); + } + + ::vl::WString __vwsnc56_GuiFakeDialogServiceUI_gaclib_controls_DialogStrings_Get__gaclib_controls_IDialogStringsStrings::FileDialogErrorEmptySelection() + { + return ::vl::WString::Unmanaged(L"At least one file must be selected."); + } + + ::vl::WString __vwsnc56_GuiFakeDialogServiceUI_gaclib_controls_DialogStrings_Get__gaclib_controls_IDialogStringsStrings::FileDialogErrorFileExpected() + { + return ::vl::WString::Unmanaged(L"File(s) expected but folder(s) selected:"); + } + + ::vl::WString __vwsnc56_GuiFakeDialogServiceUI_gaclib_controls_DialogStrings_Get__gaclib_controls_IDialogStringsStrings::FileDialogErrorFileNotExist() + { + return ::vl::WString::Unmanaged(L"File(s) not exist:"); + } + + ::vl::WString __vwsnc56_GuiFakeDialogServiceUI_gaclib_controls_DialogStrings_Get__gaclib_controls_IDialogStringsStrings::FileDialogErrorFolderNotExist() + { + return ::vl::WString::Unmanaged(L"Folder not exist:"); + } + + ::vl::WString __vwsnc56_GuiFakeDialogServiceUI_gaclib_controls_DialogStrings_Get__gaclib_controls_IDialogStringsStrings::FileDialogErrorMultipleSelectionNotEnabled() + { + return ::vl::WString::Unmanaged(L"Multiple selection is not enabled in this dialog."); + } + + ::vl::WString __vwsnc56_GuiFakeDialogServiceUI_gaclib_controls_DialogStrings_Get__gaclib_controls_IDialogStringsStrings::FileDialogFileName() + { + return ::vl::WString::Unmanaged(L"File Name:"); + } + + ::vl::WString __vwsnc56_GuiFakeDialogServiceUI_gaclib_controls_DialogStrings_Get__gaclib_controls_IDialogStringsStrings::FileDialogOpen() + { + return ::vl::WString::Unmanaged(L"Open"); + } + + ::vl::WString __vwsnc56_GuiFakeDialogServiceUI_gaclib_controls_DialogStrings_Get__gaclib_controls_IDialogStringsStrings::FileDialogSave() + { + return ::vl::WString::Unmanaged(L"Save"); + } + + ::vl::WString __vwsnc56_GuiFakeDialogServiceUI_gaclib_controls_DialogStrings_Get__gaclib_controls_IDialogStringsStrings::FileDialogTextLoadingFiles() + { + return ::vl::WString::Unmanaged(L"(Loading Folders and Files...)"); + } + + ::vl::WString __vwsnc56_GuiFakeDialogServiceUI_gaclib_controls_DialogStrings_Get__gaclib_controls_IDialogStringsStrings::FileDialogTextLoadingFolders() + { + return ::vl::WString::Unmanaged(L"(Loading...)"); + } + + ::vl::WString __vwsnc56_GuiFakeDialogServiceUI_gaclib_controls_DialogStrings_Get__gaclib_controls_IDialogStringsStrings::FontColorGroup() + { + return ::vl::WString::Unmanaged(L"Color:"); + } + + ::vl::WString __vwsnc56_GuiFakeDialogServiceUI_gaclib_controls_DialogStrings_Get__gaclib_controls_IDialogStringsStrings::FontColorGroup2() + { + return ::vl::WString::Unmanaged(L"Pick a Color:"); + } + + ::vl::WString __vwsnc56_GuiFakeDialogServiceUI_gaclib_controls_DialogStrings_Get__gaclib_controls_IDialogStringsStrings::FontDialogTitle() + { + return ::vl::WString::Unmanaged(L"Choose Font"); + } + + ::vl::WString __vwsnc56_GuiFakeDialogServiceUI_gaclib_controls_DialogStrings_Get__gaclib_controls_IDialogStringsStrings::FontEffectGroup() + { + return ::vl::WString::Unmanaged(L"Effect:"); + } + + ::vl::WString __vwsnc56_GuiFakeDialogServiceUI_gaclib_controls_DialogStrings_Get__gaclib_controls_IDialogStringsStrings::FontNameGroup() + { + return ::vl::WString::Unmanaged(L"Font:"); + } + + ::vl::WString __vwsnc56_GuiFakeDialogServiceUI_gaclib_controls_DialogStrings_Get__gaclib_controls_IDialogStringsStrings::FontPreviewGroup() + { + return ::vl::WString::Unmanaged(L"Preview:"); + } + + ::vl::WString __vwsnc56_GuiFakeDialogServiceUI_gaclib_controls_DialogStrings_Get__gaclib_controls_IDialogStringsStrings::FontSizeGroup() + { + return ::vl::WString::Unmanaged(L"Size:"); + } + + ::vl::WString __vwsnc56_GuiFakeDialogServiceUI_gaclib_controls_DialogStrings_Get__gaclib_controls_IDialogStringsStrings::Green() + { + return ::vl::WString::Unmanaged(L"Green:"); + } + + ::vl::WString __vwsnc56_GuiFakeDialogServiceUI_gaclib_controls_DialogStrings_Get__gaclib_controls_IDialogStringsStrings::HAA() + { + return ::vl::WString::Unmanaged(L"Horizontal Antialias"); + } + + ::vl::WString __vwsnc56_GuiFakeDialogServiceUI_gaclib_controls_DialogStrings_Get__gaclib_controls_IDialogStringsStrings::Ignore() + { + return ::vl::WString::Unmanaged(L"Ignore"); + } + + ::vl::WString __vwsnc56_GuiFakeDialogServiceUI_gaclib_controls_DialogStrings_Get__gaclib_controls_IDialogStringsStrings::Italic() + { + return ::vl::WString::Unmanaged(L"Italic"); + } + + ::vl::WString __vwsnc56_GuiFakeDialogServiceUI_gaclib_controls_DialogStrings_Get__gaclib_controls_IDialogStringsStrings::No() + { + return ::vl::WString::Unmanaged(L"No"); + } + + ::vl::WString __vwsnc56_GuiFakeDialogServiceUI_gaclib_controls_DialogStrings_Get__gaclib_controls_IDialogStringsStrings::OK() + { + return ::vl::WString::Unmanaged(L"OK"); + } + + ::vl::WString __vwsnc56_GuiFakeDialogServiceUI_gaclib_controls_DialogStrings_Get__gaclib_controls_IDialogStringsStrings::Red() + { + return ::vl::WString::Unmanaged(L"Red:"); + } + + ::vl::WString __vwsnc56_GuiFakeDialogServiceUI_gaclib_controls_DialogStrings_Get__gaclib_controls_IDialogStringsStrings::Retry() + { + return ::vl::WString::Unmanaged(L"Retry"); + } + + ::vl::WString __vwsnc56_GuiFakeDialogServiceUI_gaclib_controls_DialogStrings_Get__gaclib_controls_IDialogStringsStrings::TryAgain() + { + return ::vl::WString::Unmanaged(L"Try Again"); + } + + ::vl::WString __vwsnc56_GuiFakeDialogServiceUI_gaclib_controls_DialogStrings_Get__gaclib_controls_IDialogStringsStrings::Underline() + { + return ::vl::WString::Unmanaged(L"Underline"); + } + + ::vl::WString __vwsnc56_GuiFakeDialogServiceUI_gaclib_controls_DialogStrings_Get__gaclib_controls_IDialogStringsStrings::VAA() + { + return ::vl::WString::Unmanaged(L"Vertical Antialias"); + } + + ::vl::WString __vwsnc56_GuiFakeDialogServiceUI_gaclib_controls_DialogStrings_Get__gaclib_controls_IDialogStringsStrings::Yes() + { + return ::vl::WString::Unmanaged(L"Yes"); + } + + //------------------------------------------------------------------- + + __vwsnc5_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription::__vwsnc5_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::ColorDialogControl* __vwsnctor___vwsn_this_, ::gaclib_controls::ColorDialogControlConstructor* __vwsnctorthis_0) + :__vwsn_this_(__vwsnctor___vwsn_this_) + , __vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + this->__vwsn_bind_cache_0 = static_cast<::gaclib_controls::ColorDialogControl*>(nullptr); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + } + + void __vwsnc5_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsn_bind_cache_0)->GetStrings().Obj())->Green(); + ::vl::__vwsn::EventInvoke(this->ValueChanged)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + + void __vwsnc5_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0() + { + this->__vwsn_bind_activator_(); + } + + bool __vwsnc5_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription::Open() + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + (__vwsn_bind_cache_0 = [&](){ try{ return __vwsn_this_; } catch(...){ return static_cast<::gaclib_controls::ColorDialogControl*>(nullptr); } }()); + (__vwsn_bind_handler_0_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0)->StringsChanged, ::vl::Func(this, &__vwsnc5_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + return true; + } + return false; + } + + bool __vwsnc5_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription::Update() + { + if ((__vwsn_bind_opened_ && (! __vwsn_bind_closed_))) + { + this->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc5_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + if (static_cast(__vwsn_bind_handler_0_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0)->StringsChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + (__vwsn_bind_cache_0 = static_cast<::gaclib_controls::ColorDialogControl*>(nullptr)); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc6_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription::__vwsnc6_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::ColorDialogControl* __vwsnctor___vwsn_this_, ::gaclib_controls::ColorDialogControlConstructor* __vwsnctorthis_0) + :__vwsn_this_(__vwsnctor___vwsn_this_) + , __vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + this->__vwsn_bind_cache_0 = static_cast<::gaclib_controls::ColorDialogControl*>(nullptr); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + } + + void __vwsnc6_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsn_bind_cache_0)->GetStrings().Obj())->Blue(); + ::vl::__vwsn::EventInvoke(this->ValueChanged)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + + void __vwsnc6_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0() + { + this->__vwsn_bind_activator_(); + } + + bool __vwsnc6_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription::Open() + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + (__vwsn_bind_cache_0 = [&](){ try{ return __vwsn_this_; } catch(...){ return static_cast<::gaclib_controls::ColorDialogControl*>(nullptr); } }()); + (__vwsn_bind_handler_0_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0)->StringsChanged, ::vl::Func(this, &__vwsnc6_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + return true; + } + return false; + } + + bool __vwsnc6_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription::Update() + { + if ((__vwsn_bind_opened_ && (! __vwsn_bind_closed_))) + { + this->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc6_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + if (static_cast(__vwsn_bind_handler_0_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0)->StringsChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + (__vwsn_bind_cache_0 = static_cast<::gaclib_controls::ColorDialogControl*>(nullptr)); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc7_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription::__vwsnc7_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::ColorDialogControl* __vwsnctor___vwsn_this_, ::gaclib_controls::ColorDialogControlConstructor* __vwsnctorthis_0) + :__vwsn_this_(__vwsnctor___vwsn_this_) + , __vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + this->__vwsn_bind_cache_0 = static_cast<::gaclib_controls::ColorDialogControl*>(nullptr); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + } + + void __vwsnc7_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsn_bind_cache_0)->GetStrings().Obj())->Color(); + ::vl::__vwsn::EventInvoke(this->ValueChanged)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + + void __vwsnc7_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0() + { + this->__vwsn_bind_activator_(); + } + + bool __vwsnc7_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription::Open() + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + (__vwsn_bind_cache_0 = [&](){ try{ return __vwsn_this_; } catch(...){ return static_cast<::gaclib_controls::ColorDialogControl*>(nullptr); } }()); + (__vwsn_bind_handler_0_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0)->StringsChanged, ::vl::Func(this, &__vwsnc7_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + return true; + } + return false; + } + + bool __vwsnc7_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription::Update() + { + if ((__vwsn_bind_opened_ && (! __vwsn_bind_closed_))) + { + this->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc7_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + if (static_cast(__vwsn_bind_handler_0_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0)->StringsChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + (__vwsn_bind_cache_0 = static_cast<::gaclib_controls::ColorDialogControl*>(nullptr)); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc8_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription::__vwsnc8_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::ColorDialogControlConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + this->__vwsn_bind_cache_0 = static_cast<::gaclib_controls::ColorDialogControl*>(nullptr); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + } + + void __vwsnc8_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = ::vl::__vwsn::This(__vwsn_bind_cache_0)->GetValue(); + ::vl::__vwsn::EventInvoke(this->ValueChanged)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + + void __vwsnc8_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0() + { + this->__vwsn_bind_activator_(); + } + + bool __vwsnc8_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription::Open() + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + (__vwsn_bind_cache_0 = [&](){ try{ return __vwsnthis_0->self; } catch(...){ return static_cast<::gaclib_controls::ColorDialogControl*>(nullptr); } }()); + (__vwsn_bind_handler_0_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0)->ValueChanged, ::vl::Func(this, &__vwsnc8_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + return true; + } + return false; + } + + bool __vwsnc8_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription::Update() + { + if ((__vwsn_bind_opened_ && (! __vwsn_bind_closed_))) + { + this->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc8_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + if (static_cast(__vwsn_bind_handler_0_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0)->ValueChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + (__vwsn_bind_cache_0 = static_cast<::gaclib_controls::ColorDialogControl*>(nullptr)); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc9_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription::__vwsnc9_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::ColorDialogControlConstructor* __vwsnctorthis_0) + :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + this->__vwsn_bind_cache_0 = static_cast<::gaclib_controls::ColorDialogControl*>(nullptr); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_handler_0_1 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_handler_0_2 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + } + + void __vwsnc9_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = ::vl::__vwsn::This(__vwsn_bind_cache_0)->ReadColor(); + ::vl::__vwsn::EventInvoke(this->ValueChanged)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + + void __vwsnc9_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0() + { + this->__vwsn_bind_activator_(); + } + + void __vwsnc9_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_1() + { + this->__vwsn_bind_activator_(); + } + + void __vwsnc9_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_2() + { + this->__vwsn_bind_activator_(); + } + + bool __vwsnc9_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription::Open() + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + (__vwsn_bind_cache_0 = [&](){ try{ return __vwsnthis_0->self; } catch(...){ return static_cast<::gaclib_controls::ColorDialogControl*>(nullptr); } }()); + (__vwsn_bind_handler_0_0 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(::vl::__vwsn::This(__vwsn_bind_cache_0)->colorRed)->ValueChanged, ::vl::Func(this, &__vwsnc9_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + (__vwsn_bind_handler_0_1 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(::vl::__vwsn::This(__vwsn_bind_cache_0)->colorGreen)->ValueChanged, ::vl::Func(this, &__vwsnc9_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_1)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + (__vwsn_bind_handler_0_2 = [&](){ try{ return ::vl::__vwsn::EventAttach(::vl::__vwsn::This(::vl::__vwsn::This(__vwsn_bind_cache_0)->colorBlue)->ValueChanged, ::vl::Func(this, &__vwsnc9_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_2)); } catch(...){ return ::vl::Ptr<::vl::reflection::description::IEventHandler>(); } }()); + return true; + } + return false; + } + + bool __vwsnc9_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription::Update() + { + if ((__vwsn_bind_opened_ && (! __vwsn_bind_closed_))) + { + this->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc9_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + if (static_cast(__vwsn_bind_handler_0_0)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(::vl::__vwsn::This(__vwsn_bind_cache_0)->colorRed)->ValueChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + if (static_cast(__vwsn_bind_handler_0_1)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(::vl::__vwsn::This(__vwsn_bind_cache_0)->colorGreen)->ValueChanged, __vwsn_bind_handler_0_1); + (__vwsn_bind_handler_0_1 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + if (static_cast(__vwsn_bind_handler_0_2)) + { + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(::vl::__vwsn::This(__vwsn_bind_cache_0)->colorBlue)->ValueChanged, __vwsn_bind_handler_0_2); + (__vwsn_bind_handler_0_2 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + } + (__vwsn_bind_cache_0 = static_cast<::gaclib_controls::ColorDialogControl*>(nullptr)); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + (__vwsn_bind_handler_0_1 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + (__vwsn_bind_handler_0_2 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + return true; + } + return false; + } + +} + +/*********************************************************************** +Class (::gaclib_controls::ColorComponentControlConstructor) +***********************************************************************/ + +namespace gaclib_controls +{ + void ColorComponentControlConstructor::__vwsn_gaclib_controls_ColorComponentControl_Initialize(::gaclib_controls::ColorComponentControl* __vwsn_this_) + { + (this->self = __vwsn_this_); + (this->__vwsn_precompile_0 = new ::vl::presentation::compositions::GuiTableComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetCellPadding(static_cast<::vl::vint>(5)); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetBorderVisible(false); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(0); __vwsn_temp__.top = static_cast<::vl::vint>(0); __vwsn_temp__.right = static_cast<::vl::vint>(0); __vwsn_temp__.bottom = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetMinSizeLimitation(::vl::presentation::compositions::GuiGraphicsComposition::MinSizeLimitation::LimitToElementAndChildren); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetRowsAndColumns(static_cast<::vl::vint>(1), static_cast<::vl::vint>(2)); + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetRowOption(static_cast<::vl::vint>(0), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Percentage; __vwsn_temp__.percentage = static_cast(1.0); return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetColumnOption(static_cast<::vl::vint>(0), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Absolute; __vwsn_temp__.absolute = static_cast<::vl::vint>(48); return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetColumnOption(static_cast<::vl::vint>(1), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Percentage; __vwsn_temp__.percentage = static_cast(1.0); return __vwsn_temp__; }()); + } + (this->__vwsn_precompile_1 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_1)->SetSite(static_cast<::vl::vint>(0), static_cast<::vl::vint>(0), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1)); + } + { + (this->textBox = new ::vl::presentation::controls::GuiSinglelineTextBox(::vl::presentation::theme::ThemeName::SinglelineTextBox)); + } + (this->__vwsn_precompile_2 = ::vl::__vwsn::This(this->textBox)->GetBoundsComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_2)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(0); __vwsn_temp__.top = static_cast<::vl::vint>(0); __vwsn_temp__.right = static_cast<::vl::vint>(0); __vwsn_temp__.bottom = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_1)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this->textBox)->GetBoundsComposition())); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_1)); + } + (this->__vwsn_precompile_3 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_3)->SetSite(static_cast<::vl::vint>(0), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1)); + } + { + (this->tracker = new ::vl::presentation::controls::GuiScroll(::vl::presentation::theme::ThemeName::HTracker)); + ::vl::__vwsn::This(this->tracker)->SetPageSize(static_cast<::vl::vint>(0)); + } + { + ::vl::__vwsn::This(this->tracker)->SetBigMove(static_cast<::vl::vint>(16)); + } + { + ::vl::__vwsn::This(this->tracker)->SetSmallMove(static_cast<::vl::vint>(1)); + } + { + ::vl::__vwsn::This(this->tracker)->SetPageSize(static_cast<::vl::vint>(1)); + } + { + ::vl::__vwsn::This(this->tracker)->SetTotalSize(static_cast<::vl::vint>(256)); + } + (this->__vwsn_precompile_4 = ::vl::__vwsn::This(this->tracker)->GetBoundsComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_4)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(0); __vwsn_temp__.top = static_cast<::vl::vint>(0); __vwsn_temp__.right = static_cast<::vl::vint>(0); __vwsn_temp__.bottom = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_3)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this->tracker)->GetBoundsComposition())); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_3)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this->self)->GetContainerComposition())->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_0)); + } + { + auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc1_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize__vl_reflection_description_IValueSubscription(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->ValueChanged, vl::Func(::vl_workflow_global::__vwsnf1_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize_(this))); + ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(__vwsn_created_subscription_); + } + { + auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc2_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize__vl_reflection_description_IValueSubscription(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->ValueChanged, vl::Func(::vl_workflow_global::__vwsnf2_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize_(this))); + ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(__vwsn_created_subscription_); + } + { + auto __vwsn_event_handler_ = vl::Func(::vl_workflow_global::__vwsnf3_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize_(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(this->textBox)->TextChanged, __vwsn_event_handler_); + } + { + auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc3_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize__vl_reflection_description_IValueSubscription(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->ValueChanged, vl::Func(::vl_workflow_global::__vwsnf4_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize_(this))); + ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(__vwsn_created_subscription_); + } + } + + ColorComponentControlConstructor::ColorComponentControlConstructor() + : self(static_cast<::gaclib_controls::ColorComponentControl*>(nullptr)) + , textBox(static_cast<::vl::presentation::controls::GuiSinglelineTextBox*>(nullptr)) + , tracker(static_cast<::vl::presentation::controls::GuiScroll*>(nullptr)) + , __vwsn_precompile_0(static_cast<::vl::presentation::compositions::GuiTableComposition*>(nullptr)) + , __vwsn_precompile_1(static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr)) + , __vwsn_precompile_2(static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr)) + , __vwsn_precompile_3(static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr)) + , __vwsn_precompile_4(static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr)) + { + } + +/*********************************************************************** +Class (::gaclib_controls::ColorComponentControl) +***********************************************************************/ + + ::vl::vint ColorComponentControl::GetValue() + { + return this->__vwsn_prop_Value; + } + void ColorComponentControl::SetValue(::vl::vint __vwsn_value_) + { + if ((this->__vwsn_prop_Value != __vwsn_value_)) + { + (this->__vwsn_prop_Value = __vwsn_value_); + ::vl::__vwsn::EventInvoke(this->ValueChanged)(); + } + } + + ::vl::WString ColorComponentControl::GetTextBoxAlt() + { + return this->__vwsn_prop_TextBoxAlt; + } + void ColorComponentControl::SetTextBoxAlt(const ::vl::WString& __vwsn_value_) + { + if ((this->__vwsn_prop_TextBoxAlt != __vwsn_value_)) + { + (this->__vwsn_prop_TextBoxAlt = __vwsn_value_); + ::vl::__vwsn::EventInvoke(this->TextBoxAltChanged)(); + } + } + + ColorComponentControl::ColorComponentControl() + : ::vl::presentation::controls::GuiCustomControl(::vl::presentation::theme::ThemeName::CustomControl) + , __vwsn_prop_Value(static_cast<::vl::vint>(0)) + , __vwsn_prop_TextBoxAlt(::vl::WString::Unmanaged(L"")) + { + auto __vwsn_resource_ = ::vl::__vwsn::This(::vl::presentation::GetResourceManager())->GetResourceFromClassName(::vl::WString::Unmanaged(L"gaclib_controls::ColorComponentControl")); + 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_gaclib_controls_ColorComponentControl_Initialize(this); + } + + ColorComponentControl::~ColorComponentControl() + { + this->FinalizeInstanceRecursively(static_cast<::vl::presentation::controls::GuiCustomControl*>(this)); + } + +/*********************************************************************** +Class (::gaclib_controls::ColorDialogControlConstructor) +***********************************************************************/ + + void ColorDialogControlConstructor::__vwsn_gaclib_controls_ColorDialogControl_Initialize(::gaclib_controls::ColorDialogControl* __vwsn_this_) + { + (this->self = __vwsn_this_); + (this->ViewModel = ::vl::__vwsn::This(__vwsn_this_)->GetViewModel()); + (this->__vwsn_precompile_0 = new ::vl::presentation::compositions::GuiTableComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetCellPadding(static_cast<::vl::vint>(5)); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetBorderVisible(false); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(0); __vwsn_temp__.top = static_cast<::vl::vint>(0); __vwsn_temp__.right = static_cast<::vl::vint>(0); __vwsn_temp__.bottom = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetMinSizeLimitation(::vl::presentation::compositions::GuiGraphicsComposition::MinSizeLimitation::LimitToElementAndChildren); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetRowsAndColumns(static_cast<::vl::vint>(4), static_cast<::vl::vint>(2)); + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetRowOption(static_cast<::vl::vint>(0), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetRowOption(static_cast<::vl::vint>(1), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetRowOption(static_cast<::vl::vint>(2), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetRowOption(static_cast<::vl::vint>(3), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Percentage; __vwsn_temp__.percentage = static_cast(1.0); return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetColumnOption(static_cast<::vl::vint>(0), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetColumnOption(static_cast<::vl::vint>(1), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Percentage; __vwsn_temp__.percentage = static_cast(1.0); return __vwsn_temp__; }()); + } + (this->__vwsn_precompile_1 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_1)->SetSite(static_cast<::vl::vint>(0), static_cast<::vl::vint>(0), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1)); + } + { + (this->__vwsn_precompile_2 = new ::vl::presentation::controls::GuiLabel(::vl::presentation::theme::ThemeName::Label)); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_1)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this->__vwsn_precompile_2)->GetBoundsComposition())); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_1)); + } + (this->__vwsn_precompile_3 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_3)->SetSite(static_cast<::vl::vint>(1), static_cast<::vl::vint>(0), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1)); + } + { + (this->__vwsn_precompile_4 = new ::vl::presentation::controls::GuiLabel(::vl::presentation::theme::ThemeName::Label)); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_3)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this->__vwsn_precompile_4)->GetBoundsComposition())); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_3)); + } + (this->__vwsn_precompile_5 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_5)->SetSite(static_cast<::vl::vint>(2), static_cast<::vl::vint>(0), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1)); + } + { + (this->__vwsn_precompile_6 = new ::vl::presentation::controls::GuiLabel(::vl::presentation::theme::ThemeName::Label)); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_5)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this->__vwsn_precompile_6)->GetBoundsComposition())); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_5)); + } + (this->__vwsn_precompile_7 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_7)->SetSite(static_cast<::vl::vint>(3), static_cast<::vl::vint>(0), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1)); + } + { + (this->__vwsn_precompile_8 = new ::vl::presentation::controls::GuiLabel(::vl::presentation::theme::ThemeName::Label)); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_7)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this->__vwsn_precompile_8)->GetBoundsComposition())); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_7)); + } + (this->__vwsn_precompile_9 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_9)->SetSite(static_cast<::vl::vint>(0), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1)); + } + (this->colorRed = new ::gaclib_controls::ColorComponentControl()); + { + ::vl::__vwsn::This(this->colorRed)->SetTextBoxAlt(::vl::WString::Unmanaged(L"R")); + } + (this->__vwsn_precompile_10 = ::vl::__vwsn::This(this->colorRed)->GetBoundsComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_10)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(0); __vwsn_temp__.top = static_cast<::vl::vint>(0); __vwsn_temp__.right = static_cast<::vl::vint>(0); __vwsn_temp__.bottom = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_9)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this->colorRed)->GetBoundsComposition())); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_9)); + } + (this->__vwsn_precompile_11 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_11)->SetSite(static_cast<::vl::vint>(1), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1)); + } + (this->colorGreen = new ::gaclib_controls::ColorComponentControl()); + { + ::vl::__vwsn::This(this->colorGreen)->SetTextBoxAlt(::vl::WString::Unmanaged(L"G")); + } + (this->__vwsn_precompile_12 = ::vl::__vwsn::This(this->colorGreen)->GetBoundsComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_12)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(0); __vwsn_temp__.top = static_cast<::vl::vint>(0); __vwsn_temp__.right = static_cast<::vl::vint>(0); __vwsn_temp__.bottom = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_11)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this->colorGreen)->GetBoundsComposition())); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_11)); + } + (this->__vwsn_precompile_13 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_13)->SetSite(static_cast<::vl::vint>(2), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1)); + } + (this->colorBlue = new ::gaclib_controls::ColorComponentControl()); + { + ::vl::__vwsn::This(this->colorBlue)->SetTextBoxAlt(::vl::WString::Unmanaged(L"B")); + } + (this->__vwsn_precompile_14 = ::vl::__vwsn::This(this->colorBlue)->GetBoundsComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_14)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(0); __vwsn_temp__.top = static_cast<::vl::vint>(0); __vwsn_temp__.right = static_cast<::vl::vint>(0); __vwsn_temp__.bottom = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_13)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this->colorBlue)->GetBoundsComposition())); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_13)); + } + (this->__vwsn_precompile_15 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_15)->SetPreferredMinSize([&](){ ::vl::presentation::Size __vwsn_temp__; __vwsn_temp__.x = static_cast<::vl::vint>(256); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_15)->SetSite(static_cast<::vl::vint>(3), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1)); + } + (this->__vwsn_precompile_16 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBackgroundElement>(::vl::reflection::description::Element_Constructor<::vl::presentation::elements::GuiSolidBackgroundElement>())); + { + ::vl::__vwsn::This(this->__vwsn_precompile_15)->SetOwnedElement(::vl::Ptr<::vl::presentation::elements::IGuiGraphicsElement>(this->__vwsn_precompile_16)); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_15)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this->self)->GetContainerComposition())->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_0)); + } + { + auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc4_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription(__vwsn_this_, this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->ValueChanged, vl::Func(::vl_workflow_global::__vwsnf5_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_(this))); + ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(__vwsn_created_subscription_); + } + { + auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc5_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription(__vwsn_this_, this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->ValueChanged, vl::Func(::vl_workflow_global::__vwsnf6_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_(this))); + ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(__vwsn_created_subscription_); + } + { + auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc6_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription(__vwsn_this_, this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->ValueChanged, vl::Func(::vl_workflow_global::__vwsnf7_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_(this))); + ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(__vwsn_created_subscription_); + } + { + auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc7_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription(__vwsn_this_, this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->ValueChanged, vl::Func(::vl_workflow_global::__vwsnf8_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_(this))); + ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(__vwsn_created_subscription_); + } + { + ::vl::__vwsn::This(this->colorRed)->SetValue(static_cast<::vl::vint>(::vl::__vwsn::This(this->ViewModel.Obj())->GetColor().r)); + } + { + ::vl::__vwsn::This(this->colorGreen)->SetValue(static_cast<::vl::vint>(::vl::__vwsn::This(this->ViewModel.Obj())->GetColor().g)); + } + { + ::vl::__vwsn::This(this->colorBlue)->SetValue(static_cast<::vl::vint>(::vl::__vwsn::This(this->ViewModel.Obj())->GetColor().b)); + } + { + auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc8_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->ValueChanged, vl::Func(::vl_workflow_global::__vwsnf9_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_(this))); + ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(__vwsn_created_subscription_); + } + { + auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc9_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->ValueChanged, vl::Func(::vl_workflow_global::__vwsnf10_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_(this))); + ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(__vwsn_created_subscription_); + } + { + auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc10_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->ValueChanged, vl::Func(::vl_workflow_global::__vwsnf11_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_(this))); + ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(__vwsn_created_subscription_); + } + } + + ColorDialogControlConstructor::ColorDialogControlConstructor() + : self(static_cast<::gaclib_controls::ColorDialogControl*>(nullptr)) + , ViewModel(::vl::Ptr<::vl::presentation::IColorDialogViewModel>()) + , colorRed(static_cast<::gaclib_controls::ColorComponentControl*>(nullptr)) + , colorGreen(static_cast<::gaclib_controls::ColorComponentControl*>(nullptr)) + , colorBlue(static_cast<::gaclib_controls::ColorComponentControl*>(nullptr)) + , __vwsn_precompile_0(static_cast<::vl::presentation::compositions::GuiTableComposition*>(nullptr)) + , __vwsn_precompile_1(static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr)) + , __vwsn_precompile_2(static_cast<::vl::presentation::controls::GuiLabel*>(nullptr)) + , __vwsn_precompile_3(static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr)) + , __vwsn_precompile_4(static_cast<::vl::presentation::controls::GuiLabel*>(nullptr)) + , __vwsn_precompile_5(static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr)) + , __vwsn_precompile_6(static_cast<::vl::presentation::controls::GuiLabel*>(nullptr)) + , __vwsn_precompile_7(static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr)) + , __vwsn_precompile_8(static_cast<::vl::presentation::controls::GuiLabel*>(nullptr)) + , __vwsn_precompile_9(static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr)) + , __vwsn_precompile_10(static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr)) + , __vwsn_precompile_11(static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr)) + , __vwsn_precompile_12(static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr)) + , __vwsn_precompile_13(static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr)) + , __vwsn_precompile_14(static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr)) + , __vwsn_precompile_15(static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr)) + , __vwsn_precompile_16(::vl::Ptr<::vl::presentation::elements::GuiSolidBackgroundElement>()) + { + } + +/*********************************************************************** +Class (::gaclib_controls::ColorDialogControl) +***********************************************************************/ + + ::vl::presentation::Color ColorDialogControl::GetValue() + { + return this->__vwsn_prop_Value; + } + void ColorDialogControl::SetValue(::vl::presentation::Color __vwsn_value_) + { + if ((this->__vwsn_prop_Value != __vwsn_value_)) + { + (this->__vwsn_prop_Value = __vwsn_value_); + ::vl::__vwsn::EventInvoke(this->ValueChanged)(); + } + } + + ::vl::presentation::Color ColorDialogControl::ReadColor() + { + return [&](){ ::vl::presentation::Color __vwsn_temp__; __vwsn_temp__.r = static_cast<::vl::vuint8_t>(::vl::__vwsn::This(this->colorRed)->GetValue()); __vwsn_temp__.g = static_cast<::vl::vuint8_t>(::vl::__vwsn::This(this->colorGreen)->GetValue()); __vwsn_temp__.b = static_cast<::vl::vuint8_t>(::vl::__vwsn::This(this->colorBlue)->GetValue()); return __vwsn_temp__; }(); + } + + ::vl::Ptr<::gaclib_controls::IDialogStringsStrings> ColorDialogControl::GetStrings() + { + return this->__vwsn_prop_Strings; + } + void ColorDialogControl::SetStrings(::vl::Ptr<::gaclib_controls::IDialogStringsStrings> __vwsn_value_) + { + if ((this->__vwsn_prop_Strings.Obj() != __vwsn_value_.Obj())) + { + (this->__vwsn_prop_Strings = __vwsn_value_); + ::vl::__vwsn::EventInvoke(this->StringsChanged)(); + } + } + + ::vl::Ptr<::vl::presentation::IColorDialogViewModel> ColorDialogControl::GetViewModel() + { + return this->__vwsn_parameter_ViewModel; + } + + ColorDialogControl::ColorDialogControl(::vl::Ptr<::vl::presentation::IColorDialogViewModel> __vwsn_ctor_parameter_ViewModel) + : ::vl::presentation::controls::GuiCustomControl(::vl::presentation::theme::ThemeName::CustomControl) + , __vwsn_prop_Value(::vl::__vwsn::Parse<::vl::presentation::Color>(::vl::WString::Unmanaged(L"#FFFFFF"))) + , __vwsn_prop_Strings(::gaclib_controls::DialogStrings::Get(::vl::__vwsn::Parse<::vl::Locale>(::vl::WString::Unmanaged(L"en-US")))) + , __vwsn_parameter_ViewModel(::vl::Ptr<::vl::presentation::IColorDialogViewModel>()) + { + (this->__vwsn_parameter_ViewModel = __vwsn_ctor_parameter_ViewModel); + auto __vwsn_resource_ = ::vl::__vwsn::This(::vl::presentation::GetResourceManager())->GetResourceFromClassName(::vl::WString::Unmanaged(L"gaclib_controls::ColorDialogControl")); + 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_gaclib_controls_ColorDialogControl_Initialize(this); + } + + ColorDialogControl::~ColorDialogControl() + { + this->FinalizeInstanceRecursively(static_cast<::vl::presentation::controls::GuiCustomControl*>(this)); + } + +/*********************************************************************** +Class (::gaclib_controls::ColorDialogWindowConstructor) +***********************************************************************/ + + void ColorDialogWindowConstructor::__vwsn_gaclib_controls_ColorDialogWindow_Initialize(::gaclib_controls::ColorDialogWindow* __vwsn_this_) + { + (this->self = __vwsn_this_); + (this->ViewModel = ::vl::__vwsn::This(__vwsn_this_)->GetViewModel()); + { + ::vl::__vwsn::This(this->self)->SetIconVisible(false); + } + { + ::vl::__vwsn::This(this->self)->SetMinimizedBox(false); + } + { + ::vl::__vwsn::This(this->self)->SetMaximizedBox(false); + } + { + ::vl::__vwsn::This(this->self)->SetShowInTaskBar(false); + } + { + ::vl::__vwsn::This(this->self)->SetClientSize([&](){ ::vl::presentation::Size __vwsn_temp__; __vwsn_temp__.x = static_cast<::vl::vint>(240); __vwsn_temp__.y = static_cast<::vl::vint>(120); return __vwsn_temp__; }()); + } + (this->__vwsn_precompile_0 = new ::vl::presentation::compositions::GuiTableComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetCellPadding(static_cast<::vl::vint>(10)); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetBorderVisible(false); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(0); __vwsn_temp__.top = static_cast<::vl::vint>(10); __vwsn_temp__.right = static_cast<::vl::vint>(0); __vwsn_temp__.bottom = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetMinSizeLimitation(::vl::presentation::compositions::GuiGraphicsComposition::MinSizeLimitation::LimitToElementAndChildren); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetRowsAndColumns(static_cast<::vl::vint>(2), static_cast<::vl::vint>(3)); + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetRowOption(static_cast<::vl::vint>(0), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Percentage; __vwsn_temp__.percentage = static_cast(1.0); return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetRowOption(static_cast<::vl::vint>(1), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetColumnOption(static_cast<::vl::vint>(0), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Percentage; __vwsn_temp__.percentage = static_cast(1.0); return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetColumnOption(static_cast<::vl::vint>(1), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetColumnOption(static_cast<::vl::vint>(2), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + } + (this->__vwsn_precompile_1 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_1)->SetSite(static_cast<::vl::vint>(0), static_cast<::vl::vint>(0), static_cast<::vl::vint>(1), static_cast<::vl::vint>(3)); + } + (this->colorControl = new ::gaclib_controls::ColorDialogControl(this->ViewModel)); + (this->__vwsn_precompile_2 = ::vl::__vwsn::This(this->colorControl)->GetBoundsComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_2)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(0); __vwsn_temp__.top = static_cast<::vl::vint>(0); __vwsn_temp__.right = static_cast<::vl::vint>(0); __vwsn_temp__.bottom = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_1)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this->colorControl)->GetBoundsComposition())); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_1)); + } + (this->__vwsn_precompile_3 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_3)->SetSite(static_cast<::vl::vint>(1), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1)); + } + { + (this->__vwsn_precompile_4 = new ::vl::presentation::controls::GuiButton(::vl::presentation::theme::ThemeName::Button)); + } + (this->__vwsn_precompile_5 = ::vl::__vwsn::This(this->__vwsn_precompile_4)->GetBoundsComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_5)->SetPreferredMinSize([&](){ ::vl::presentation::Size __vwsn_temp__; __vwsn_temp__.x = static_cast<::vl::vint>(80); __vwsn_temp__.y = static_cast<::vl::vint>(24); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_5)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(0); __vwsn_temp__.top = static_cast<::vl::vint>(0); __vwsn_temp__.right = static_cast<::vl::vint>(0); __vwsn_temp__.bottom = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_4)->SetAlt(::vl::WString::Unmanaged(L"O")); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_3)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this->__vwsn_precompile_4)->GetBoundsComposition())); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_3)); + } + (this->__vwsn_precompile_6 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_6)->SetSite(static_cast<::vl::vint>(1), static_cast<::vl::vint>(2), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1)); + } + { + (this->__vwsn_precompile_7 = new ::vl::presentation::controls::GuiButton(::vl::presentation::theme::ThemeName::Button)); + } + (this->__vwsn_precompile_8 = ::vl::__vwsn::This(this->__vwsn_precompile_7)->GetBoundsComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_8)->SetPreferredMinSize([&](){ ::vl::presentation::Size __vwsn_temp__; __vwsn_temp__.x = static_cast<::vl::vint>(80); __vwsn_temp__.y = static_cast<::vl::vint>(24); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_8)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(0); __vwsn_temp__.top = static_cast<::vl::vint>(0); __vwsn_temp__.right = static_cast<::vl::vint>(0); __vwsn_temp__.bottom = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_7)->SetAlt(::vl::WString::Unmanaged(L"C")); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_6)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this->__vwsn_precompile_7)->GetBoundsComposition())); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_6)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this->self)->GetContainerComposition())->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_0)); + } + { + auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc11_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize__vl_reflection_description_IValueSubscription(__vwsn_this_, this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->ValueChanged, vl::Func(::vl_workflow_global::__vwsnf12_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize_(this))); + ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(__vwsn_created_subscription_); + } + { + auto __vwsn_event_handler_ = vl::Func(::vl_workflow_global::__vwsnf13_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize_(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(this->__vwsn_precompile_4)->Clicked, __vwsn_event_handler_); + } + { + auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc12_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize__vl_reflection_description_IValueSubscription(__vwsn_this_, this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->ValueChanged, vl::Func(::vl_workflow_global::__vwsnf14_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize_(this))); + ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(__vwsn_created_subscription_); + } + { + auto __vwsn_event_handler_ = vl::Func(::vl_workflow_global::__vwsnf15_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize_(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(this->__vwsn_precompile_7)->Clicked, __vwsn_event_handler_); + } + { + auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc13_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize__vl_reflection_description_IValueSubscription(__vwsn_this_, this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->ValueChanged, vl::Func(::vl_workflow_global::__vwsnf16_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize_(this))); + ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(__vwsn_created_subscription_); + } + { + auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc14_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize__vl_reflection_description_IValueSubscription(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->ValueChanged, vl::Func(::vl_workflow_global::__vwsnf17_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize_(this))); + ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(__vwsn_created_subscription_); + } + } + + ColorDialogWindowConstructor::ColorDialogWindowConstructor() + : self(static_cast<::gaclib_controls::ColorDialogWindow*>(nullptr)) + , ViewModel(::vl::Ptr<::vl::presentation::IColorDialogViewModel>()) + , colorControl(static_cast<::gaclib_controls::ColorDialogControl*>(nullptr)) + , __vwsn_precompile_0(static_cast<::vl::presentation::compositions::GuiTableComposition*>(nullptr)) + , __vwsn_precompile_1(static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr)) + , __vwsn_precompile_2(static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr)) + , __vwsn_precompile_3(static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr)) + , __vwsn_precompile_4(static_cast<::vl::presentation::controls::GuiButton*>(nullptr)) + , __vwsn_precompile_5(static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr)) + , __vwsn_precompile_6(static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr)) + , __vwsn_precompile_7(static_cast<::vl::presentation::controls::GuiButton*>(nullptr)) + , __vwsn_precompile_8(static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr)) + { + } + +/*********************************************************************** +Class (::gaclib_controls::ColorDialogWindow) +***********************************************************************/ + + ::vl::Ptr<::gaclib_controls::IDialogStringsStrings> ColorDialogWindow::GetStrings() + { + return this->__vwsn_prop_Strings; + } + void ColorDialogWindow::SetStrings(::vl::Ptr<::gaclib_controls::IDialogStringsStrings> __vwsn_value_) + { + if ((this->__vwsn_prop_Strings.Obj() != __vwsn_value_.Obj())) + { + (this->__vwsn_prop_Strings = __vwsn_value_); + ::vl::__vwsn::EventInvoke(this->StringsChanged)(); + } + } + + ::vl::Ptr<::vl::presentation::IColorDialogViewModel> ColorDialogWindow::GetViewModel() + { + return this->__vwsn_parameter_ViewModel; + } + + ColorDialogWindow::ColorDialogWindow(::vl::Ptr<::vl::presentation::IColorDialogViewModel> __vwsn_ctor_parameter_ViewModel) + : ::vl::presentation::controls::GuiWindow(::vl::presentation::theme::ThemeName::Window) + , __vwsn_prop_Strings(::gaclib_controls::DialogStrings::Get(::vl::__vwsn::Parse<::vl::Locale>(::vl::WString::Unmanaged(L"en-US")))) + , __vwsn_parameter_ViewModel(::vl::Ptr<::vl::presentation::IColorDialogViewModel>()) + { + (this->__vwsn_parameter_ViewModel = __vwsn_ctor_parameter_ViewModel); + auto __vwsn_resource_ = ::vl::__vwsn::This(::vl::presentation::GetResourceManager())->GetResourceFromClassName(::vl::WString::Unmanaged(L"gaclib_controls::ColorDialogWindow")); + 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_gaclib_controls_ColorDialogWindow_Initialize(this); + } + + ColorDialogWindow::~ColorDialogWindow() + { + this->FinalizeInstanceRecursively(static_cast<::vl::presentation::controls::GuiControlHost*>(this)); + } + +/*********************************************************************** +Class (::gaclib_controls::DialogStrings) +***********************************************************************/ + + ::vl::WString DialogStrings::__vwsn_ls_First(const ::vl::collections::LazyList<::vl::WString>& __vwsn_ls_formats) + { + { + auto __vwsn_for_enumerable_ = ::vl::__vwsn::UnboxCollection<::vl::reflection::description::IValueEnumerable>(__vwsn_ls_formats); + auto __vwsn_for_enumerator_ = ::vl::__vwsn::This(__vwsn_for_enumerable_.Obj())->CreateEnumerator(); + while (::vl::__vwsn::This(__vwsn_for_enumerator_.Obj())->Next()) + { + auto __vwsn_ls_format = ::vl::__vwsn::Unbox<::vl::WString>(::vl::__vwsn::This(__vwsn_for_enumerator_.Obj())->GetCurrent()); + { + return __vwsn_ls_format; + } + } + } + return ::vl::WString::Unmanaged(L""); + } + + ::vl::Ptr<::gaclib_controls::IDialogStringsStrings> DialogStrings::Get(::vl::Locale __vwsn_ls_locale) + { + return ::vl::Ptr<::gaclib_controls::IDialogStringsStrings>(new ::vl_workflow_global::__vwsnc56_GuiFakeDialogServiceUI_gaclib_controls_DialogStrings_Get__gaclib_controls_IDialogStringsStrings()); + } + + DialogStrings::DialogStrings() + { + } + +/*********************************************************************** +Class (::gaclib_controls::FileDialogWindowConstructor) +***********************************************************************/ + + void FileDialogWindowConstructor::__vwsn_gaclib_controls_FileDialogWindow_Initialize(::gaclib_controls::FileDialogWindow* __vwsn_this_) + { + (this->self = __vwsn_this_); + (this->ViewModel = ::vl::__vwsn::This(__vwsn_this_)->GetViewModel()); + { + ::vl::__vwsn::This(this->self)->SetIconVisible(false); + } + { + ::vl::__vwsn::This(this->self)->SetMinimizedBox(false); + } + { + ::vl::__vwsn::This(this->self)->SetMaximizedBox(false); + } + { + ::vl::__vwsn::This(this->self)->SetShowInTaskBar(false); + } + { + ::vl::__vwsn::This(this->self)->SetClientSize([&](){ ::vl::presentation::Size __vwsn_temp__; __vwsn_temp__.x = static_cast<::vl::vint>(480); __vwsn_temp__.y = static_cast<::vl::vint>(360); return __vwsn_temp__; }()); + } + (this->__vwsn_precompile_0 = new ::vl::presentation::compositions::GuiTableComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetCellPadding(static_cast<::vl::vint>(5)); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetBorderVisible(false); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(0); __vwsn_temp__.top = static_cast<::vl::vint>(5); __vwsn_temp__.right = static_cast<::vl::vint>(0); __vwsn_temp__.bottom = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetMinSizeLimitation(::vl::presentation::compositions::GuiGraphicsComposition::MinSizeLimitation::LimitToElementAndChildren); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetRowsAndColumns(static_cast<::vl::vint>(2), static_cast<::vl::vint>(3)); + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetRowOption(static_cast<::vl::vint>(0), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Percentage; __vwsn_temp__.percentage = static_cast(1.0); return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetRowOption(static_cast<::vl::vint>(1), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetColumnOption(static_cast<::vl::vint>(0), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Percentage; __vwsn_temp__.percentage = static_cast(1.0); return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetColumnOption(static_cast<::vl::vint>(1), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetColumnOption(static_cast<::vl::vint>(2), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + } + (this->__vwsn_precompile_1 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_1)->SetSite(static_cast<::vl::vint>(0), static_cast<::vl::vint>(0), static_cast<::vl::vint>(1), static_cast<::vl::vint>(3)); + } + (this->filePickerControl = new ::gaclib_controls::FilePickerControl(this->ViewModel)); + (this->__vwsn_precompile_2 = ::vl::__vwsn::This(this->filePickerControl)->GetBoundsComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_2)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(0); __vwsn_temp__.top = static_cast<::vl::vint>(0); __vwsn_temp__.right = static_cast<::vl::vint>(0); __vwsn_temp__.bottom = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_1)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this->filePickerControl)->GetBoundsComposition())); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_1)); + } + (this->__vwsn_precompile_3 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_3)->SetSite(static_cast<::vl::vint>(1), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1)); + } + { + (this->buttonOK = new ::vl::presentation::controls::GuiButton(::vl::presentation::theme::ThemeName::Button)); + } + (this->__vwsn_precompile_4 = ::vl::__vwsn::This(this->buttonOK)->GetBoundsComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_4)->SetPreferredMinSize([&](){ ::vl::presentation::Size __vwsn_temp__; __vwsn_temp__.x = static_cast<::vl::vint>(80); __vwsn_temp__.y = static_cast<::vl::vint>(24); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_4)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(0); __vwsn_temp__.top = static_cast<::vl::vint>(0); __vwsn_temp__.right = static_cast<::vl::vint>(0); __vwsn_temp__.bottom = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->buttonOK)->SetAlt(::vl::WString::Unmanaged(L"O")); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_3)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this->buttonOK)->GetBoundsComposition())); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_3)); + } + (this->__vwsn_precompile_5 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_5)->SetSite(static_cast<::vl::vint>(1), static_cast<::vl::vint>(2), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1)); + } + { + (this->__vwsn_precompile_6 = new ::vl::presentation::controls::GuiButton(::vl::presentation::theme::ThemeName::Button)); + } + (this->__vwsn_precompile_7 = ::vl::__vwsn::This(this->__vwsn_precompile_6)->GetBoundsComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_7)->SetPreferredMinSize([&](){ ::vl::presentation::Size __vwsn_temp__; __vwsn_temp__.x = static_cast<::vl::vint>(80); __vwsn_temp__.y = static_cast<::vl::vint>(24); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_7)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(0); __vwsn_temp__.top = static_cast<::vl::vint>(0); __vwsn_temp__.right = static_cast<::vl::vint>(0); __vwsn_temp__.bottom = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_6)->SetAlt(::vl::WString::Unmanaged(L"C")); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_5)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this->__vwsn_precompile_6)->GetBoundsComposition())); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_5)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this->self)->GetContainerComposition())->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_0)); + } + { + auto __vwsn_event_handler_ = vl::Func(::vl_workflow_global::__vwsnf18_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize_(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(this->filePickerControl)->RequestClose, __vwsn_event_handler_); + } + { + auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc15_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize__vl_reflection_description_IValueSubscription(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->ValueChanged, vl::Func(::vl_workflow_global::__vwsnf20_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize_(this))); + ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(__vwsn_created_subscription_); + } + { + auto __vwsn_event_handler_ = vl::Func(::vl_workflow_global::__vwsnf21_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize_(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(this->buttonOK)->Clicked, __vwsn_event_handler_); + } + { + auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc16_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize__vl_reflection_description_IValueSubscription(__vwsn_this_, this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->ValueChanged, vl::Func(::vl_workflow_global::__vwsnf22_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize_(this))); + ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(__vwsn_created_subscription_); + } + { + auto __vwsn_event_handler_ = vl::Func(::vl_workflow_global::__vwsnf23_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize_(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(this->__vwsn_precompile_6)->Clicked, __vwsn_event_handler_); + } + { + ::vl::__vwsn::This(this->self)->SetText(::vl::__vwsn::This(this->ViewModel.Obj())->GetTitle()); + } + { + auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc17_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize__vl_reflection_description_IValueSubscription(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->ValueChanged, vl::Func(::vl_workflow_global::__vwsnf24_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize_(this))); + ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(__vwsn_created_subscription_); + } + } + + FileDialogWindowConstructor::FileDialogWindowConstructor() + : self(static_cast<::gaclib_controls::FileDialogWindow*>(nullptr)) + , ViewModel(::vl::Ptr<::vl::presentation::IFileDialogViewModel>()) + , filePickerControl(static_cast<::gaclib_controls::FilePickerControl*>(nullptr)) + , buttonOK(static_cast<::vl::presentation::controls::GuiButton*>(nullptr)) + , __vwsn_precompile_0(static_cast<::vl::presentation::compositions::GuiTableComposition*>(nullptr)) + , __vwsn_precompile_1(static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr)) + , __vwsn_precompile_2(static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr)) + , __vwsn_precompile_3(static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr)) + , __vwsn_precompile_4(static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr)) + , __vwsn_precompile_5(static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr)) + , __vwsn_precompile_6(static_cast<::vl::presentation::controls::GuiButton*>(nullptr)) + , __vwsn_precompile_7(static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr)) + { + } + +/*********************************************************************** +Class (::gaclib_controls::FileDialogWindow) +***********************************************************************/ + + void FileDialogWindow::MakeOpenFileDialog() + { + ::vl::__vwsn::This(this->buttonOK)->SetText(::vl::__vwsn::This(this->GetStrings().Obj())->FileDialogOpen()); + } + + void FileDialogWindow::MakeSaveFileDialog() + { + ::vl::__vwsn::This(this->buttonOK)->SetText(::vl::__vwsn::This(this->GetStrings().Obj())->FileDialogSave()); + } + + ::vl::Ptr<::gaclib_controls::IDialogStringsStrings> FileDialogWindow::GetStrings() + { + return this->__vwsn_prop_Strings; + } + void FileDialogWindow::SetStrings(::vl::Ptr<::gaclib_controls::IDialogStringsStrings> __vwsn_value_) + { + if ((this->__vwsn_prop_Strings.Obj() != __vwsn_value_.Obj())) + { + (this->__vwsn_prop_Strings = __vwsn_value_); + ::vl::__vwsn::EventInvoke(this->StringsChanged)(); + } + } + + ::vl::Ptr<::vl::presentation::IFileDialogViewModel> FileDialogWindow::GetViewModel() + { + return this->__vwsn_parameter_ViewModel; + } + + FileDialogWindow::FileDialogWindow(::vl::Ptr<::vl::presentation::IFileDialogViewModel> __vwsn_ctor_parameter_ViewModel) + : ::vl::presentation::controls::GuiWindow(::vl::presentation::theme::ThemeName::Window) + , __vwsn_prop_Strings(::gaclib_controls::DialogStrings::Get(::vl::__vwsn::Parse<::vl::Locale>(::vl::WString::Unmanaged(L"en-US")))) + , __vwsn_parameter_ViewModel(::vl::Ptr<::vl::presentation::IFileDialogViewModel>()) + { + (this->__vwsn_parameter_ViewModel = __vwsn_ctor_parameter_ViewModel); + auto __vwsn_resource_ = ::vl::__vwsn::This(::vl::presentation::GetResourceManager())->GetResourceFromClassName(::vl::WString::Unmanaged(L"gaclib_controls::FileDialogWindow")); + 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_gaclib_controls_FileDialogWindow_Initialize(this); + this->__vwsn_instance_ctor_(); + } + + void FileDialogWindow::__vwsn_instance_ctor_() + { + ::vl::__vwsn::This(::vl::presentation::controls::GetApplication())->InvokeInMainThread(static_cast<::vl::presentation::controls::GuiControlHost*>(this->self), vl::Func(::vl_workflow_global::__vwsnf25_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindow___vwsn_instance_ctor__(this))); + } + + FileDialogWindow::~FileDialogWindow() + { + this->FinalizeInstanceRecursively(static_cast<::vl::presentation::controls::GuiControlHost*>(this)); + } + +/*********************************************************************** +Class (::gaclib_controls::FilePickerControlConstructor) +***********************************************************************/ + + void FilePickerControlConstructor::__vwsn_gaclib_controls_FilePickerControl_Initialize(::gaclib_controls::FilePickerControl* __vwsn_this_) + { + (this->self = __vwsn_this_); + (this->ViewModel = ::vl::__vwsn::This(__vwsn_this_)->GetViewModel()); + (this->__vwsn_precompile_24 = ::vl::__vwsn::This(this->self)->GetViewModel()); + (this->__vwsn_precompile_0 = new ::vl::presentation::compositions::GuiTableComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetCellPadding(static_cast<::vl::vint>(5)); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetBorderVisible(false); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(0); __vwsn_temp__.top = static_cast<::vl::vint>(0); __vwsn_temp__.right = static_cast<::vl::vint>(0); __vwsn_temp__.bottom = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetMinSizeLimitation(::vl::presentation::compositions::GuiGraphicsComposition::MinSizeLimitation::LimitToElementAndChildren); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetRowsAndColumns(static_cast<::vl::vint>(3), static_cast<::vl::vint>(1)); + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetRowOption(static_cast<::vl::vint>(0), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetRowOption(static_cast<::vl::vint>(1), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Percentage; __vwsn_temp__.percentage = static_cast(1.0); return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetRowOption(static_cast<::vl::vint>(2), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetColumnOption(static_cast<::vl::vint>(0), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Percentage; __vwsn_temp__.percentage = static_cast(1.0); return __vwsn_temp__; }()); + } + (this->__vwsn_precompile_1 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_1)->SetSite(static_cast<::vl::vint>(0), static_cast<::vl::vint>(0), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1)); + } + { + (this->__vwsn_precompile_2 = new ::vl::presentation::controls::GuiLabel(::vl::presentation::theme::ThemeName::Label)); + } + (this->__vwsn_precompile_3 = ::vl::__vwsn::This(this->__vwsn_precompile_2)->GetBoundsComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_3)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(0); __vwsn_temp__.top = static_cast<::vl::vint>(0); __vwsn_temp__.right = static_cast<::vl::vint>(0); __vwsn_temp__.bottom = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_1)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this->__vwsn_precompile_2)->GetBoundsComposition())); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_1)); + } + (this->__vwsn_precompile_4 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_4)->SetSite(static_cast<::vl::vint>(1), static_cast<::vl::vint>(0), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1)); + } + (this->__vwsn_precompile_5 = new ::vl::presentation::compositions::GuiTableComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_5)->SetCellPadding(static_cast<::vl::vint>(5)); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_5)->SetBorderVisible(false); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_5)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(0); __vwsn_temp__.top = static_cast<::vl::vint>(0); __vwsn_temp__.right = static_cast<::vl::vint>(0); __vwsn_temp__.bottom = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_5)->SetMinSizeLimitation(::vl::presentation::compositions::GuiGraphicsComposition::MinSizeLimitation::LimitToElementAndChildren); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_5)->SetRowsAndColumns(static_cast<::vl::vint>(1), static_cast<::vl::vint>(2)); + ::vl::__vwsn::This(this->__vwsn_precompile_5)->SetRowOption(static_cast<::vl::vint>(0), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Percentage; __vwsn_temp__.percentage = static_cast(1.0); return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_5)->SetColumnOption(static_cast<::vl::vint>(0), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Absolute; __vwsn_temp__.absolute = static_cast<::vl::vint>(192); return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_5)->SetColumnOption(static_cast<::vl::vint>(1), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Percentage; __vwsn_temp__.percentage = static_cast(1.0); return __vwsn_temp__; }()); + } + (this->__vwsn_precompile_6 = new ::vl::presentation::compositions::GuiColumnSplitterComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_6)->SetColumnsToTheLeft(static_cast<::vl::vint>(1)); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_5)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_6)); + } + (this->__vwsn_precompile_7 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_7)->SetSite(static_cast<::vl::vint>(0), static_cast<::vl::vint>(0), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1)); + } + { + (this->treeView = new ::vl::presentation::controls::GuiBindableTreeView(::vl::presentation::theme::ThemeName::TreeView)); + } + { + ::vl::__vwsn::This(this->treeView)->SetChildrenProperty(vl::Func(::vl_workflow_global::__vwsnf26_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_(this))); + } + { + ::vl::__vwsn::This(this->treeView)->SetHorizontalAlwaysVisible(false); + } + { + ::vl::__vwsn::This(this->treeView)->SetVerticalAlwaysVisible(false); + } + { + ::vl::__vwsn::This(this->treeView)->SetTextProperty(vl::Func(::vl_workflow_global::__vwsnf27_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_(this))); + } + (this->__vwsn_precompile_8 = ::vl::__vwsn::This(this->treeView)->GetBoundsComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_8)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(0); __vwsn_temp__.top = static_cast<::vl::vint>(0); __vwsn_temp__.right = static_cast<::vl::vint>(0); __vwsn_temp__.bottom = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->treeView)->SetAlt(::vl::WString::Unmanaged(L"D")); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_7)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this->treeView)->GetBoundsComposition())); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_5)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_7)); + } + (this->__vwsn_precompile_9 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_9)->SetSite(static_cast<::vl::vint>(0), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1)); + } + { + (this->dataGrid = new ::vl::presentation::controls::GuiBindableDataGrid(::vl::presentation::theme::ThemeName::ListView)); + } + (this->__vwsn_precompile_12 = ::vl::__vwsn::This(this->dataGrid)->GetFocusableComposition()); + { + ::vl::__vwsn::This(this->dataGrid)->SetView(::vl::presentation::controls::ListViewView::List); + } + { + ::vl::__vwsn::This(this->dataGrid)->SetHorizontalAlwaysVisible(false); + } + { + ::vl::__vwsn::This(this->dataGrid)->SetVerticalAlwaysVisible(false); + } + (this->__vwsn_precompile_11 = ::vl::__vwsn::This(this->dataGrid)->GetBoundsComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_11)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(0); __vwsn_temp__.top = static_cast<::vl::vint>(0); __vwsn_temp__.right = static_cast<::vl::vint>(0); __vwsn_temp__.bottom = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->dataGrid)->SetAlt(::vl::WString::Unmanaged(L"F")); + } + (this->__vwsn_precompile_10 = ::vl::Ptr<::vl::presentation::controls::list::DataColumn>(new ::vl::presentation::controls::list::DataColumn())); + { + ::vl::__vwsn::This(this->__vwsn_precompile_10.Obj())->SetTextProperty(vl::Func(::vl_workflow_global::__vwsnf28_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_(this))); + } + { + auto __vwsn_collection_ = ::vl::__vwsn::UnboxCollection<::vl::reflection::description::IValueList>(::vl::__vwsn::This(this->dataGrid)->GetColumns()); + ::vl::__vwsn::This(__vwsn_collection_.Obj())->Add(::vl::__vwsn::Box(this->__vwsn_precompile_10)); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_9)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this->dataGrid)->GetBoundsComposition())); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_5)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_9)); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_4)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_5)); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_4)); + } + (this->__vwsn_precompile_13 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_13)->SetSite(static_cast<::vl::vint>(2), static_cast<::vl::vint>(0), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1)); + } + (this->__vwsn_precompile_14 = new ::vl::presentation::compositions::GuiTableComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_14)->SetCellPadding(static_cast<::vl::vint>(5)); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_14)->SetBorderVisible(false); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_14)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(0); __vwsn_temp__.top = static_cast<::vl::vint>(0); __vwsn_temp__.right = static_cast<::vl::vint>(0); __vwsn_temp__.bottom = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_14)->SetMinSizeLimitation(::vl::presentation::compositions::GuiGraphicsComposition::MinSizeLimitation::LimitToElementAndChildren); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_14)->SetRowsAndColumns(static_cast<::vl::vint>(1), static_cast<::vl::vint>(3)); + ::vl::__vwsn::This(this->__vwsn_precompile_14)->SetRowOption(static_cast<::vl::vint>(0), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Percentage; __vwsn_temp__.percentage = static_cast(1.0); return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_14)->SetColumnOption(static_cast<::vl::vint>(0), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_14)->SetColumnOption(static_cast<::vl::vint>(1), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Percentage; __vwsn_temp__.percentage = static_cast(1.0); return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_14)->SetColumnOption(static_cast<::vl::vint>(2), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Absolute; __vwsn_temp__.absolute = static_cast<::vl::vint>(120); return __vwsn_temp__; }()); + } + (this->__vwsn_precompile_15 = new ::vl::presentation::compositions::GuiColumnSplitterComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_15)->SetColumnsToTheLeft(static_cast<::vl::vint>(2)); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_14)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_15)); + } + (this->__vwsn_precompile_16 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_16)->SetSite(static_cast<::vl::vint>(0), static_cast<::vl::vint>(0), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1)); + } + { + (this->__vwsn_precompile_17 = new ::vl::presentation::controls::GuiLabel(::vl::presentation::theme::ThemeName::Label)); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_16)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this->__vwsn_precompile_17)->GetBoundsComposition())); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_14)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_16)); + } + (this->__vwsn_precompile_18 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_18)->SetSite(static_cast<::vl::vint>(0), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1)); + } + { + (this->textBox = new ::vl::presentation::controls::GuiSinglelineTextBox(::vl::presentation::theme::ThemeName::SinglelineTextBox)); + } + (this->__vwsn_precompile_20 = ::vl::__vwsn::This(this->textBox)->GetFocusableComposition()); + (this->__vwsn_precompile_19 = ::vl::__vwsn::This(this->textBox)->GetBoundsComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_19)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(0); __vwsn_temp__.top = static_cast<::vl::vint>(0); __vwsn_temp__.right = static_cast<::vl::vint>(0); __vwsn_temp__.bottom = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->textBox)->SetAlt(::vl::WString::Unmanaged(L"S")); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_18)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this->textBox)->GetBoundsComposition())); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_14)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_18)); + } + (this->__vwsn_precompile_21 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_21)->SetSite(static_cast<::vl::vint>(0), static_cast<::vl::vint>(2), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1)); + } + { + (this->__vwsn_precompile_22 = new ::vl::presentation::controls::GuiBindableTextList(::vl::presentation::theme::ThemeName::TextList)); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_22)->SetHorizontalAlwaysVisible(false); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_22)->SetVerticalAlwaysVisible(false); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_22)->SetTextProperty(vl::Func(::vl_workflow_global::__vwsnf29_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_(this))); + } + { + (this->comboBox = new ::vl::presentation::controls::GuiComboBoxListControl(::vl::presentation::theme::ThemeName::ComboBox, static_cast<::vl::presentation::controls::GuiSelectableListControl*>(this->__vwsn_precompile_22))); + } + (this->__vwsn_precompile_23 = ::vl::__vwsn::This(this->comboBox)->GetBoundsComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_23)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(0); __vwsn_temp__.top = static_cast<::vl::vint>(0); __vwsn_temp__.right = static_cast<::vl::vint>(0); __vwsn_temp__.bottom = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->comboBox)->SetAlt(::vl::WString::Unmanaged(L"E")); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_21)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this->comboBox)->GetBoundsComposition())); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_14)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_21)); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_13)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_14)); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_13)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this->self)->GetContainerComposition())->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_0)); + } + { + auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc18_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->ValueChanged, vl::Func(::vl_workflow_global::__vwsnf30_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_(this))); + ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(__vwsn_created_subscription_); + } + { + ::vl::__vwsn::This(this->treeView)->SetImageProperty(vl::Func(::vl_workflow_global::__vwsno31_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_(this))); + } + { + ::vl::__vwsn::This(this->dataGrid)->SetMultiSelect(::vl::__vwsn::This(this->ViewModel.Obj())->GetEnabledMultipleSelection()); + } + { + auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc19_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->ValueChanged, vl::Func(::vl_workflow_global::__vwsnf32_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_(this))); + ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(__vwsn_created_subscription_); + } + { + auto __vwsn_event_handler_ = vl::Func(::vl_workflow_global::__vwsnf33_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(this->__vwsn_precompile_12)->GetEventReceiver()->keyUp, __vwsn_event_handler_); + } + { + ::vl::__vwsn::This(this->dataGrid)->SetSmallImageProperty(vl::Func(::vl_workflow_global::__vwsno34_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_(this))); + } + { + auto __vwsn_event_handler_ = vl::Func(::vl_workflow_global::__vwsnf35_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(this->dataGrid)->SelectionChanged, __vwsn_event_handler_); + } + { + auto __vwsn_event_handler_ = vl::Func(::vl_workflow_global::__vwsnf36_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(this->dataGrid)->ItemLeftButtonDoubleClick, __vwsn_event_handler_); + } + { + auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc20_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription(__vwsn_this_, this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->ValueChanged, vl::Func(::vl_workflow_global::__vwsnf38_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_(this))); + ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(__vwsn_created_subscription_); + } + { + auto __vwsn_event_handler_ = vl::Func(::vl_workflow_global::__vwsnf39_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(this->__vwsn_precompile_20)->GetEventReceiver()->keyUp, __vwsn_event_handler_); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_22)->SetItemSource(::vl::Ptr<::vl::reflection::description::IValueEnumerable>(::vl::__vwsn::UnboxCollection<::vl::reflection::description::IValueReadonlyList>(::vl::__vwsn::This(this->ViewModel.Obj())->GetFilters()))); + } + { + auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc21_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->ValueChanged, vl::Func(::vl_workflow_global::__vwsnf40_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_(this))); + ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(__vwsn_created_subscription_); + } + { + auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc22_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->ValueChanged, vl::Func(::vl_workflow_global::__vwsnf41_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_(this))); + ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(__vwsn_created_subscription_); + } + { + auto __vwsn_event_handler_ = vl::Func(::vl_workflow_global::__vwsnf42_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(this->__vwsn_precompile_24.Obj())->SelectedFolderChanged, __vwsn_event_handler_); + } + { + auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc23_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->ValueChanged, vl::Func(::vl_workflow_global::__vwsnf43_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_(this))); + ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(__vwsn_created_subscription_); + } + } + + FilePickerControlConstructor::FilePickerControlConstructor() + : self(static_cast<::gaclib_controls::FilePickerControl*>(nullptr)) + , ViewModel(::vl::Ptr<::vl::presentation::IFileDialogViewModel>()) + , textBox(static_cast<::vl::presentation::controls::GuiSinglelineTextBox*>(nullptr)) + , treeView(static_cast<::vl::presentation::controls::GuiBindableTreeView*>(nullptr)) + , dataGrid(static_cast<::vl::presentation::controls::GuiBindableDataGrid*>(nullptr)) + , comboBox(static_cast<::vl::presentation::controls::GuiComboBoxListControl*>(nullptr)) + , __vwsn_precompile_0(static_cast<::vl::presentation::compositions::GuiTableComposition*>(nullptr)) + , __vwsn_precompile_1(static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr)) + , __vwsn_precompile_2(static_cast<::vl::presentation::controls::GuiLabel*>(nullptr)) + , __vwsn_precompile_3(static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr)) + , __vwsn_precompile_4(static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr)) + , __vwsn_precompile_5(static_cast<::vl::presentation::compositions::GuiTableComposition*>(nullptr)) + , __vwsn_precompile_6(static_cast<::vl::presentation::compositions::GuiColumnSplitterComposition*>(nullptr)) + , __vwsn_precompile_7(static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr)) + , __vwsn_precompile_8(static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr)) + , __vwsn_precompile_9(static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr)) + , __vwsn_precompile_10(::vl::Ptr<::vl::presentation::controls::list::DataColumn>()) + , __vwsn_precompile_11(static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr)) + , __vwsn_precompile_12(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(nullptr)) + , __vwsn_precompile_13(static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr)) + , __vwsn_precompile_14(static_cast<::vl::presentation::compositions::GuiTableComposition*>(nullptr)) + , __vwsn_precompile_15(static_cast<::vl::presentation::compositions::GuiColumnSplitterComposition*>(nullptr)) + , __vwsn_precompile_16(static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr)) + , __vwsn_precompile_17(static_cast<::vl::presentation::controls::GuiLabel*>(nullptr)) + , __vwsn_precompile_18(static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr)) + , __vwsn_precompile_19(static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr)) + , __vwsn_precompile_20(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(nullptr)) + , __vwsn_precompile_21(static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr)) + , __vwsn_precompile_22(static_cast<::vl::presentation::controls::GuiBindableTextList*>(nullptr)) + , __vwsn_precompile_23(static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr)) + , __vwsn_precompile_24(::vl::Ptr<::vl::presentation::IFileDialogViewModel>()) + { + } + +/*********************************************************************** +Class (::gaclib_controls::FilePickerControl) +***********************************************************************/ + + ::vl::collections::LazyList<::vl::Ptr<::vl::presentation::IFileDialogFile>> FilePickerControl::GetSelectedFiles() + { + return ::vl::reflection::description::GetLazyList<::vl::Ptr<::vl::presentation::IFileDialogFile>>(::vl::reflection::description::EnumerableCoroutine::Create(vl::Func(::vl_workflow_global::__vwsnf44_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControl_GetSelectedFiles_(this)))); + } + + ::vl::collections::LazyList<::vl::WString> FilePickerControl::GetSelection() + { + return ::vl::__vwsn::This(this->GetViewModel().Obj())->ParseDisplayString(::vl::__vwsn::This(this->textBox)->GetText()); + } + + void FilePickerControl::LocateSelectedFolderInTreeView() + { + auto fragments = ::vl::reflection::description::IValueList::Create(); + auto currentFolder = ::vl::__vwsn::This(this->GetViewModel().Obj())->GetSelectedFolder(); + if ((! static_cast(currentFolder))) + { + return; + } + while ((static_cast(currentFolder) && (::vl::__vwsn::This(currentFolder.Obj())->GetType() == ::vl::presentation::FileDialogFolderType::Folder))) + { + ::vl::__vwsn::This(fragments.Obj())->Add(::vl::__vwsn::Box(currentFolder)); + (currentFolder = ::vl::__vwsn::This(currentFolder.Obj())->GetParent()); + } + auto currentNode = ::vl::__vwsn::This(::vl::__vwsn::This(this->treeView)->GetNodeRootProvider())->GetRootNode(); + { + auto __vwsn_for_enumerable_fragment = ::vl::reflection::description::Sys::ReverseEnumerable(::vl::Ptr<::vl::reflection::description::IValueEnumerable>(fragments)); + auto __vwsn_for_enumerator_fragment = ::vl::__vwsn::This(__vwsn_for_enumerable_fragment.Obj())->CreateEnumerator(); + while (::vl::__vwsn::This(__vwsn_for_enumerator_fragment.Obj())->Next()) + { + auto fragment = ::vl::__vwsn::Unbox<::vl::Ptr<::vl::presentation::IFileDialogFolder>>(::vl::__vwsn::This(__vwsn_for_enumerator_fragment.Obj())->GetCurrent()); + { + if ((! static_cast(currentNode))) + { + return; + } + ::vl::__vwsn::This(currentNode.Obj())->SetExpanding(true); + (currentNode = ::vl::__vwsn::This(currentNode.Obj())->GetChild(::vl::__vwsn::This(fragment.Obj())->GetIndex())); + } + } + } + auto index = ::vl::__vwsn::This(::vl::__vwsn::This(this->treeView)->GetNodeItemView())->CalculateNodeVisibilityIndex(::vl::__vwsn::Ensure(static_cast<::vl::presentation::controls::tree::INodeProvider*>(currentNode.Obj()))); + ::vl::__vwsn::This(this->treeView)->EnsureItemVisible(index); + ::vl::__vwsn::This(this->treeView)->SetSelected(index, true); + } + + ::vl::Ptr<::vl::presentation::controls::list::IDataFilter> FilePickerControl::CreateFileFilter(::vl::Ptr<::vl::presentation::IFileDialogFilter> filter) + { + if ((! static_cast(filter))) + { + return ::vl::Ptr<::vl::presentation::controls::list::IDataFilter>(); + } + else + { + return ::vl::Ptr<::vl::presentation::controls::list::IDataFilter>(new ::vl_workflow_global::__vwsnc25_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControl_CreateFileFilter__vl_presentation_controls_list_IDataFilter(filter, this)); + } + } + + ::vl::Ptr<::gaclib_controls::IDialogStringsStrings> FilePickerControl::GetStrings() + { + return this->__vwsn_prop_Strings; + } + void FilePickerControl::SetStrings(::vl::Ptr<::gaclib_controls::IDialogStringsStrings> __vwsn_value_) + { + if ((this->__vwsn_prop_Strings.Obj() != __vwsn_value_.Obj())) + { + (this->__vwsn_prop_Strings = __vwsn_value_); + ::vl::__vwsn::EventInvoke(this->StringsChanged)(); + } + } + + ::vl::Ptr<::vl::presentation::IFileDialogViewModel> FilePickerControl::GetViewModel() + { + return this->__vwsn_parameter_ViewModel; + } + + FilePickerControl::FilePickerControl(::vl::Ptr<::vl::presentation::IFileDialogViewModel> __vwsn_ctor_parameter_ViewModel) + : ::vl::presentation::controls::GuiCustomControl(::vl::presentation::theme::ThemeName::CustomControl) + , imageFolder(::vl::Ptr<::vl::presentation::GuiImageData>()) + , imageFile(::vl::Ptr<::vl::presentation::GuiImageData>()) + , __vwsn_prop_Strings(::gaclib_controls::DialogStrings::Get(::vl::__vwsn::Parse<::vl::Locale>(::vl::WString::Unmanaged(L"en-US")))) + , __vwsn_parameter_ViewModel(::vl::Ptr<::vl::presentation::IFileDialogViewModel>()) + { + (this->__vwsn_parameter_ViewModel = __vwsn_ctor_parameter_ViewModel); + auto __vwsn_resource_ = ::vl::__vwsn::This(::vl::presentation::GetResourceManager())->GetResourceFromClassName(::vl::WString::Unmanaged(L"gaclib_controls::FilePickerControl")); + 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_gaclib_controls_FilePickerControl_Initialize(this); + this->__vwsn_instance_ctor_(); + } + + void FilePickerControl::__vwsn_instance_ctor_() + { + (this->imageFolder = ::vl::__vwsn::Ensure(::vl::__vwsn::SharedPtrCast<::vl::presentation::GuiImageData>(::vl::__vwsn::This(this->self)->ResolveResource(::vl::WString::Unmanaged(L"res"), ::vl::WString::Unmanaged(L"Images/Folder"), true).Obj()))); + (this->imageFile = ::vl::__vwsn::Ensure(::vl::__vwsn::SharedPtrCast<::vl::presentation::GuiImageData>(::vl::__vwsn::This(this->self)->ResolveResource(::vl::WString::Unmanaged(L"res"), ::vl::WString::Unmanaged(L"Images/File"), true).Obj()))); + ::vl::__vwsn::This(this->GetViewModel().Obj())->InitLocalizedText(::vl::__vwsn::This(::vl::__vwsn::This(this->self)->GetStrings().Obj())->FileDialogTextLoadingFolders(), ::vl::__vwsn::This(::vl::__vwsn::This(this->self)->GetStrings().Obj())->FileDialogTextLoadingFiles(), ::vl::__vwsn::This(::vl::__vwsn::This(this->self)->GetStrings().Obj())->FileDialogErrorEmptySelection(), ::vl::__vwsn::This(::vl::__vwsn::This(this->self)->GetStrings().Obj())->FileDialogErrorFileNotExist(), ::vl::__vwsn::This(::vl::__vwsn::This(this->self)->GetStrings().Obj())->FileDialogErrorFileExpected(), ::vl::__vwsn::This(::vl::__vwsn::This(this->self)->GetStrings().Obj())->FileDialogErrorFolderNotExist(), ::vl::__vwsn::This(::vl::__vwsn::This(this->self)->GetStrings().Obj())->FileDialogErrorMultipleSelectionNotEnabled(), ::vl::__vwsn::This(::vl::__vwsn::This(this->self)->GetStrings().Obj())->FileDialogAskCreateFile(), ::vl::__vwsn::This(::vl::__vwsn::This(this->self)->GetStrings().Obj())->FileDialogAskOverrideFile()); + ::vl::__vwsn::This(this->treeView)->SetItemSource(::vl::__vwsn::Box(::vl::__vwsn::This(this->GetViewModel().Obj())->GetRootFolder())); + ::vl::__vwsn::This(this->dataGrid)->SetItemSource(::vl::Ptr<::vl::reflection::description::IValueEnumerable>(::vl::__vwsn::UnboxCollection<::vl::reflection::description::IValueObservableList>(::vl::__vwsn::This(this->GetViewModel().Obj())->GetFiles()))); + ::vl::__vwsn::This(this->comboBox)->SetSelectedIndex(::vl::__vwsn::This(::vl::__vwsn::UnboxCollection<::vl::reflection::description::IValueReadonlyList>(::vl::__vwsn::This(this->GetViewModel().Obj())->GetFilters()).Obj())->IndexOf(::vl::__vwsn::Box(::vl::__vwsn::This(this->GetViewModel().Obj())->GetSelectedFilter()))); + ::vl::__vwsn::This(this->GetViewModel().Obj())->RefreshFiles(); + } + + FilePickerControl::~FilePickerControl() + { + this->FinalizeInstanceRecursively(static_cast<::vl::presentation::controls::GuiCustomControl*>(this)); + } + +/*********************************************************************** +Class (::gaclib_controls::FontNameControlConstructor) +***********************************************************************/ + + void FontNameControlConstructor::__vwsn_gaclib_controls_FontNameControl_Initialize(::gaclib_controls::FontNameControl* __vwsn_this_) + { + (this->self = __vwsn_this_); + (this->ViewModel = ::vl::__vwsn::This(__vwsn_this_)->GetViewModel()); + { + (this->__vwsn_precompile_0 = new ::vl::presentation::controls::GuiControl(::vl::presentation::theme::ThemeName::GroupBox)); + } + (this->__vwsn_precompile_6 = ::vl::__vwsn::This(this->__vwsn_precompile_0)->GetBoundsComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_6)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(0); __vwsn_temp__.top = static_cast<::vl::vint>(0); __vwsn_temp__.right = static_cast<::vl::vint>(0); __vwsn_temp__.bottom = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + } + (this->__vwsn_precompile_1 = new ::vl::presentation::compositions::GuiTableComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_1)->SetCellPadding(static_cast<::vl::vint>(5)); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_1)->SetBorderVisible(false); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_1)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(5); __vwsn_temp__.top = static_cast<::vl::vint>(5); __vwsn_temp__.right = static_cast<::vl::vint>(5); __vwsn_temp__.bottom = static_cast<::vl::vint>(5); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_1)->SetMinSizeLimitation(::vl::presentation::compositions::GuiGraphicsComposition::MinSizeLimitation::LimitToElementAndChildren); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_1)->SetRowsAndColumns(static_cast<::vl::vint>(2), static_cast<::vl::vint>(1)); + ::vl::__vwsn::This(this->__vwsn_precompile_1)->SetRowOption(static_cast<::vl::vint>(0), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_1)->SetRowOption(static_cast<::vl::vint>(1), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Percentage; __vwsn_temp__.percentage = static_cast(1.0); return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_1)->SetColumnOption(static_cast<::vl::vint>(0), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Percentage; __vwsn_temp__.percentage = static_cast(1.0); return __vwsn_temp__; }()); + } + (this->__vwsn_precompile_2 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_2)->SetSite(static_cast<::vl::vint>(0), static_cast<::vl::vint>(0), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1)); + } + { + (this->textBox = new ::vl::presentation::controls::GuiSinglelineTextBox(::vl::presentation::theme::ThemeName::SinglelineTextBox)); + } + (this->__vwsn_precompile_3 = ::vl::__vwsn::This(this->textBox)->GetBoundsComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_3)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(0); __vwsn_temp__.top = static_cast<::vl::vint>(0); __vwsn_temp__.right = static_cast<::vl::vint>(0); __vwsn_temp__.bottom = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->textBox)->SetAlt(::vl::WString::Unmanaged(L"F")); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_2)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this->textBox)->GetBoundsComposition())); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_1)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_2)); + } + (this->__vwsn_precompile_4 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_4)->SetSite(static_cast<::vl::vint>(1), static_cast<::vl::vint>(0), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1)); + } + { + (this->textList = new ::vl::presentation::controls::GuiBindableTextList(::vl::presentation::theme::ThemeName::TextList)); + } + { + ::vl::__vwsn::This(this->textList)->SetHorizontalAlwaysVisible(false); + } + { + ::vl::__vwsn::This(this->textList)->SetVerticalAlwaysVisible(false); + } + (this->__vwsn_precompile_5 = ::vl::__vwsn::This(this->textList)->GetBoundsComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_5)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(0); __vwsn_temp__.top = static_cast<::vl::vint>(0); __vwsn_temp__.right = static_cast<::vl::vint>(0); __vwsn_temp__.bottom = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->textList)->SetAlt(::vl::WString::Unmanaged(L"N")); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_4)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this->textList)->GetBoundsComposition())); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_1)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_4)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this->__vwsn_precompile_0)->GetContainerComposition())->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_1)); + } + { + ::vl::__vwsn::This(this->self)->AddChild(this->__vwsn_precompile_0); + } + { + ::vl::__vwsn::This(this->textBox)->SetReadonly(::vl::__vwsn::This(this->ViewModel.Obj())->GetFontMustExist()); + } + { + ::vl::__vwsn::This(this->textList)->SetItemSource(::vl::Ptr<::vl::reflection::description::IValueEnumerable>(::vl::__vwsn::UnboxCollection<::vl::reflection::description::IValueReadonlyList>(::vl::__vwsn::This(this->ViewModel.Obj())->GetFontList()))); + } + { + ::vl::__vwsn::This(this->textList)->SetTextProperty(vl::Func(::vl_workflow_global::__vwsno45_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_(this))); + } + { + auto __vwsn_event_handler_ = vl::Func(::vl_workflow_global::__vwsnf46_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(this->textList)->SelectionChanged, __vwsn_event_handler_); + } + { + auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc26_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize__vl_reflection_description_IValueSubscription(__vwsn_this_, this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->ValueChanged, vl::Func(::vl_workflow_global::__vwsnf47_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_(this))); + ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(__vwsn_created_subscription_); + } + { + auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc27_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize__vl_reflection_description_IValueSubscription(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->ValueChanged, vl::Func(::vl_workflow_global::__vwsnf48_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_(this))); + ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(__vwsn_created_subscription_); + } + { + auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc28_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize__vl_reflection_description_IValueSubscription(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->ValueChanged, vl::Func(::vl_workflow_global::__vwsnf49_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_(this))); + ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(__vwsn_created_subscription_); + } + { + auto __vwsn_event_handler_ = vl::Func(::vl_workflow_global::__vwsnf50_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(this->self)->ValueChanged, __vwsn_event_handler_); + } + { + auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc29_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize__vl_reflection_description_IValueSubscription(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->ValueChanged, vl::Func(::vl_workflow_global::__vwsnf51_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_(this))); + ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(__vwsn_created_subscription_); + } + } + + FontNameControlConstructor::FontNameControlConstructor() + : self(static_cast<::gaclib_controls::FontNameControl*>(nullptr)) + , ViewModel(::vl::Ptr<::vl::presentation::ICommonFontDialogViewModel>()) + , textBox(static_cast<::vl::presentation::controls::GuiSinglelineTextBox*>(nullptr)) + , textList(static_cast<::vl::presentation::controls::GuiBindableTextList*>(nullptr)) + , __vwsn_precompile_0(static_cast<::vl::presentation::controls::GuiControl*>(nullptr)) + , __vwsn_precompile_1(static_cast<::vl::presentation::compositions::GuiTableComposition*>(nullptr)) + , __vwsn_precompile_2(static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr)) + , __vwsn_precompile_3(static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr)) + , __vwsn_precompile_4(static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr)) + , __vwsn_precompile_5(static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr)) + , __vwsn_precompile_6(static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr)) + { + } + +/*********************************************************************** +Class (::gaclib_controls::FontNameControl) +***********************************************************************/ + + ::vl::WString FontNameControl::GetValue() + { + return this->__vwsn_prop_Value; + } + void FontNameControl::SetValue(const ::vl::WString& __vwsn_value_) + { + if ((this->__vwsn_prop_Value != __vwsn_value_)) + { + (this->__vwsn_prop_Value = __vwsn_value_); + ::vl::__vwsn::EventInvoke(this->ValueChanged)(); + } + } + + bool FontNameControl::GetLegal() + { + return this->__vwsn_prop_Legal; + } + void FontNameControl::SetLegal(bool __vwsn_value_) + { + if ((this->__vwsn_prop_Legal != __vwsn_value_)) + { + (this->__vwsn_prop_Legal = __vwsn_value_); + ::vl::__vwsn::EventInvoke(this->LegalChanged)(); + } + } + + void FontNameControl::UpdateSelectedIndex() + { + auto index = ::vl::__vwsn::This(::vl::__vwsn::UnboxCollection<::vl::reflection::description::IValueReadonlyList>(::vl::__vwsn::This(this->GetViewModel().Obj())->GetFontList()).Obj())->IndexOf(::vl::__vwsn::Box(this->GetValue())); + if ((index > (- static_cast<::vl::vint>(1)))) + { + ::vl::__vwsn::This(this->textList)->SetSelected(index, true); + ::vl::__vwsn::This(this->textList)->EnsureItemVisible(index); + } + } + + void FontNameControl::InitValue(const ::vl::WString& value) + { + ::vl::__vwsn::This(this->textBox)->SetText(value); + ::vl::__vwsn::This(this->textBox)->Select([&](){ ::vl::presentation::TextPos __vwsn_temp__; __vwsn_temp__.row = static_cast<::vl::vint>(0); __vwsn_temp__.column = static_cast<::vl::vint>(0); return __vwsn_temp__; }(), [&](){ ::vl::presentation::TextPos __vwsn_temp__; __vwsn_temp__.row = static_cast<::vl::vint>(0); __vwsn_temp__.column = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + this->UpdateSelectedIndex(); + } + + ::vl::Ptr<::gaclib_controls::IDialogStringsStrings> FontNameControl::GetStrings() + { + return this->__vwsn_prop_Strings; + } + void FontNameControl::SetStrings(::vl::Ptr<::gaclib_controls::IDialogStringsStrings> __vwsn_value_) + { + if ((this->__vwsn_prop_Strings.Obj() != __vwsn_value_.Obj())) + { + (this->__vwsn_prop_Strings = __vwsn_value_); + ::vl::__vwsn::EventInvoke(this->StringsChanged)(); + } + } + + ::vl::Ptr<::vl::presentation::ICommonFontDialogViewModel> FontNameControl::GetViewModel() + { + return this->__vwsn_parameter_ViewModel; + } + + FontNameControl::FontNameControl(::vl::Ptr<::vl::presentation::ICommonFontDialogViewModel> __vwsn_ctor_parameter_ViewModel) + : ::vl::presentation::controls::GuiCustomControl(::vl::presentation::theme::ThemeName::CustomControl) + , __vwsn_prop_Value(::vl::WString::Unmanaged(L"")) + , __vwsn_prop_Legal(false) + , __vwsn_prop_Strings(::gaclib_controls::DialogStrings::Get(::vl::__vwsn::Parse<::vl::Locale>(::vl::WString::Unmanaged(L"en-US")))) + , __vwsn_parameter_ViewModel(::vl::Ptr<::vl::presentation::ICommonFontDialogViewModel>()) + { + (this->__vwsn_parameter_ViewModel = __vwsn_ctor_parameter_ViewModel); + auto __vwsn_resource_ = ::vl::__vwsn::This(::vl::presentation::GetResourceManager())->GetResourceFromClassName(::vl::WString::Unmanaged(L"gaclib_controls::FontNameControl")); + 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_gaclib_controls_FontNameControl_Initialize(this); + } + + FontNameControl::~FontNameControl() + { + this->FinalizeInstanceRecursively(static_cast<::vl::presentation::controls::GuiCustomControl*>(this)); + } + +/*********************************************************************** +Class (::gaclib_controls::FontSizeControlConstructor) +***********************************************************************/ + + void FontSizeControlConstructor::__vwsn_gaclib_controls_FontSizeControl_Initialize(::gaclib_controls::FontSizeControl* __vwsn_this_) + { + (this->self = __vwsn_this_); + { + (this->__vwsn_precompile_0 = new ::vl::presentation::controls::GuiControl(::vl::presentation::theme::ThemeName::GroupBox)); + } + (this->__vwsn_precompile_6 = ::vl::__vwsn::This(this->__vwsn_precompile_0)->GetBoundsComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_6)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(0); __vwsn_temp__.top = static_cast<::vl::vint>(0); __vwsn_temp__.right = static_cast<::vl::vint>(0); __vwsn_temp__.bottom = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + } + (this->__vwsn_precompile_1 = new ::vl::presentation::compositions::GuiTableComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_1)->SetCellPadding(static_cast<::vl::vint>(5)); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_1)->SetBorderVisible(false); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_1)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(5); __vwsn_temp__.top = static_cast<::vl::vint>(5); __vwsn_temp__.right = static_cast<::vl::vint>(5); __vwsn_temp__.bottom = static_cast<::vl::vint>(5); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_1)->SetMinSizeLimitation(::vl::presentation::compositions::GuiGraphicsComposition::MinSizeLimitation::LimitToElementAndChildren); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_1)->SetRowsAndColumns(static_cast<::vl::vint>(2), static_cast<::vl::vint>(1)); + ::vl::__vwsn::This(this->__vwsn_precompile_1)->SetRowOption(static_cast<::vl::vint>(0), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_1)->SetRowOption(static_cast<::vl::vint>(1), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Percentage; __vwsn_temp__.percentage = static_cast(1.0); return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_1)->SetColumnOption(static_cast<::vl::vint>(0), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Percentage; __vwsn_temp__.percentage = static_cast(1.0); return __vwsn_temp__; }()); + } + (this->__vwsn_precompile_2 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_2)->SetSite(static_cast<::vl::vint>(0), static_cast<::vl::vint>(0), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1)); + } + { + (this->textBox = new ::vl::presentation::controls::GuiSinglelineTextBox(::vl::presentation::theme::ThemeName::SinglelineTextBox)); + } + (this->__vwsn_precompile_3 = ::vl::__vwsn::This(this->textBox)->GetBoundsComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_3)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(0); __vwsn_temp__.top = static_cast<::vl::vint>(0); __vwsn_temp__.right = static_cast<::vl::vint>(0); __vwsn_temp__.bottom = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->textBox)->SetAlt(::vl::WString::Unmanaged(L"S")); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_2)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this->textBox)->GetBoundsComposition())); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_1)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_2)); + } + (this->__vwsn_precompile_4 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_4)->SetSite(static_cast<::vl::vint>(1), static_cast<::vl::vint>(0), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1)); + } + { + (this->textList = new ::vl::presentation::controls::GuiBindableTextList(::vl::presentation::theme::ThemeName::TextList)); + } + { + ::vl::__vwsn::This(this->textList)->SetHorizontalAlwaysVisible(false); + } + { + ::vl::__vwsn::This(this->textList)->SetVerticalAlwaysVisible(false); + } + (this->__vwsn_precompile_5 = ::vl::__vwsn::This(this->textList)->GetBoundsComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_5)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(0); __vwsn_temp__.top = static_cast<::vl::vint>(0); __vwsn_temp__.right = static_cast<::vl::vint>(0); __vwsn_temp__.bottom = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->textList)->SetAlt(::vl::WString::Unmanaged(L"L")); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_4)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this->textList)->GetBoundsComposition())); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_1)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_4)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this->__vwsn_precompile_0)->GetContainerComposition())->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_1)); + } + { + ::vl::__vwsn::This(this->self)->AddChild(this->__vwsn_precompile_0); + } + { + ::vl::__vwsn::This(this->textList)->SetItemSource(::vl::Ptr<::vl::reflection::description::IValueEnumerable>(::vl::__vwsn::This(this->self)->GetSizeList())); + } + { + ::vl::__vwsn::This(this->textList)->SetTextProperty(vl::Func(::vl_workflow_global::__vwsno52_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_(this))); + } + { + auto __vwsn_event_handler_ = vl::Func(::vl_workflow_global::__vwsnf53_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(this->textList)->SelectionChanged, __vwsn_event_handler_); + } + { + auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc30_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize__vl_reflection_description_IValueSubscription(__vwsn_this_, this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->ValueChanged, vl::Func(::vl_workflow_global::__vwsnf54_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_(this))); + ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(__vwsn_created_subscription_); + } + { + auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc31_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize__vl_reflection_description_IValueSubscription(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->ValueChanged, vl::Func(::vl_workflow_global::__vwsnf55_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_(this))); + ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(__vwsn_created_subscription_); + } + { + auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc32_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize__vl_reflection_description_IValueSubscription(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->ValueChanged, vl::Func(::vl_workflow_global::__vwsnf56_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_(this))); + ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(__vwsn_created_subscription_); + } + { + auto __vwsn_event_handler_ = vl::Func(::vl_workflow_global::__vwsnf57_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(this->self)->ValueChanged, __vwsn_event_handler_); + } + { + auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc33_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize__vl_reflection_description_IValueSubscription(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->ValueChanged, vl::Func(::vl_workflow_global::__vwsnf58_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_(this))); + ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(__vwsn_created_subscription_); + } + } + + FontSizeControlConstructor::FontSizeControlConstructor() + : self(static_cast<::gaclib_controls::FontSizeControl*>(nullptr)) + , textBox(static_cast<::vl::presentation::controls::GuiSinglelineTextBox*>(nullptr)) + , textList(static_cast<::vl::presentation::controls::GuiBindableTextList*>(nullptr)) + , __vwsn_precompile_0(static_cast<::vl::presentation::controls::GuiControl*>(nullptr)) + , __vwsn_precompile_1(static_cast<::vl::presentation::compositions::GuiTableComposition*>(nullptr)) + , __vwsn_precompile_2(static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr)) + , __vwsn_precompile_3(static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr)) + , __vwsn_precompile_4(static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr)) + , __vwsn_precompile_5(static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr)) + , __vwsn_precompile_6(static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr)) + { + } + +/*********************************************************************** +Class (::gaclib_controls::FontSizeControl) +***********************************************************************/ + + ::vl::Ptr<::vl::reflection::description::IValueList> FontSizeControl::GetSizeList() + { + return this->__vwsn_prop_SizeList; + } + void FontSizeControl::SetSizeList(::vl::Ptr<::vl::reflection::description::IValueList> __vwsn_value_) + { + (this->__vwsn_prop_SizeList = __vwsn_value_); + } + + ::vl::vint FontSizeControl::GetValue() + { + return this->__vwsn_prop_Value; + } + void FontSizeControl::SetValue(::vl::vint __vwsn_value_) + { + if ((this->__vwsn_prop_Value != __vwsn_value_)) + { + (this->__vwsn_prop_Value = __vwsn_value_); + ::vl::__vwsn::EventInvoke(this->ValueChanged)(); + } + } + + bool FontSizeControl::GetLegal() + { + return this->__vwsn_prop_Legal; + } + void FontSizeControl::SetLegal(bool __vwsn_value_) + { + if ((this->__vwsn_prop_Legal != __vwsn_value_)) + { + (this->__vwsn_prop_Legal = __vwsn_value_); + ::vl::__vwsn::EventInvoke(this->LegalChanged)(); + } + } + + void FontSizeControl::UpdateSelectedIndex() + { + auto index = ::vl::__vwsn::This(::vl::__vwsn::This(this->self)->GetSizeList().Obj())->IndexOf(::vl::__vwsn::Box(this->GetValue())); + if ((index > (- static_cast<::vl::vint>(1)))) + { + ::vl::__vwsn::This(this->textList)->SetSelected(index, true); + ::vl::__vwsn::This(this->textList)->EnsureItemVisible(index); + } + } + + void FontSizeControl::InitValue(::vl::vint value) + { + ::vl::__vwsn::This(this->textBox)->SetText(::vl::__vwsn::ToString(value)); + ::vl::__vwsn::This(this->textBox)->Select([&](){ ::vl::presentation::TextPos __vwsn_temp__; __vwsn_temp__.row = static_cast<::vl::vint>(0); __vwsn_temp__.column = static_cast<::vl::vint>(0); return __vwsn_temp__; }(), [&](){ ::vl::presentation::TextPos __vwsn_temp__; __vwsn_temp__.row = static_cast<::vl::vint>(0); __vwsn_temp__.column = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + this->UpdateSelectedIndex(); + } + + ::vl::Ptr<::gaclib_controls::IDialogStringsStrings> FontSizeControl::GetStrings() + { + return this->__vwsn_prop_Strings; + } + void FontSizeControl::SetStrings(::vl::Ptr<::gaclib_controls::IDialogStringsStrings> __vwsn_value_) + { + if ((this->__vwsn_prop_Strings.Obj() != __vwsn_value_.Obj())) + { + (this->__vwsn_prop_Strings = __vwsn_value_); + ::vl::__vwsn::EventInvoke(this->StringsChanged)(); + } + } + + FontSizeControl::FontSizeControl() + : ::vl::presentation::controls::GuiCustomControl(::vl::presentation::theme::ThemeName::CustomControl) + , __vwsn_prop_SizeList((::vl::__vwsn::CreateList().Add(static_cast<::vl::vint>(8)).Add(static_cast<::vl::vint>(9)).Add(static_cast<::vl::vint>(10)).Add(static_cast<::vl::vint>(11)).Add(static_cast<::vl::vint>(12)).Add(static_cast<::vl::vint>(14)).Add(static_cast<::vl::vint>(16)).Add(static_cast<::vl::vint>(18)).Add(static_cast<::vl::vint>(20)).Add(static_cast<::vl::vint>(22)).Add(static_cast<::vl::vint>(24)).Add(static_cast<::vl::vint>(26)).Add(static_cast<::vl::vint>(28)).Add(static_cast<::vl::vint>(36)).Add(static_cast<::vl::vint>(48)).Add(static_cast<::vl::vint>(72))).list) + , __vwsn_prop_Value(static_cast<::vl::vint>(0)) + , __vwsn_prop_Legal(false) + , __vwsn_prop_Strings(::gaclib_controls::DialogStrings::Get(::vl::__vwsn::Parse<::vl::Locale>(::vl::WString::Unmanaged(L"en-US")))) + { + auto __vwsn_resource_ = ::vl::__vwsn::This(::vl::presentation::GetResourceManager())->GetResourceFromClassName(::vl::WString::Unmanaged(L"gaclib_controls::FontSizeControl")); + 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_gaclib_controls_FontSizeControl_Initialize(this); + } + + FontSizeControl::~FontSizeControl() + { + this->FinalizeInstanceRecursively(static_cast<::vl::presentation::controls::GuiCustomControl*>(this)); + } + +/*********************************************************************** +Class (::gaclib_controls::FullFontDialogWindowConstructor) +***********************************************************************/ + + void FullFontDialogWindowConstructor::__vwsn_gaclib_controls_FullFontDialogWindow_Initialize(::gaclib_controls::FullFontDialogWindow* __vwsn_this_) + { + (this->self = __vwsn_this_); + (this->ViewModel = ::vl::__vwsn::This(__vwsn_this_)->GetViewModel()); + { + ::vl::__vwsn::This(this->self)->SetIconVisible(false); + } + { + ::vl::__vwsn::This(this->self)->SetMinimizedBox(false); + } + { + ::vl::__vwsn::This(this->self)->SetMaximizedBox(false); + } + { + ::vl::__vwsn::This(this->self)->SetShowInTaskBar(false); + } + { + ::vl::__vwsn::This(this->self)->SetClientSize([&](){ ::vl::presentation::Size __vwsn_temp__; __vwsn_temp__.x = static_cast<::vl::vint>(360); __vwsn_temp__.y = static_cast<::vl::vint>(480); return __vwsn_temp__; }()); + } + (this->__vwsn_precompile_0 = new ::vl::presentation::compositions::GuiTableComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetCellPadding(static_cast<::vl::vint>(10)); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetBorderVisible(false); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(0); __vwsn_temp__.top = static_cast<::vl::vint>(0); __vwsn_temp__.right = static_cast<::vl::vint>(0); __vwsn_temp__.bottom = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetMinSizeLimitation(::vl::presentation::compositions::GuiGraphicsComposition::MinSizeLimitation::LimitToElementAndChildren); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetRowsAndColumns(static_cast<::vl::vint>(3), static_cast<::vl::vint>(3)); + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetRowOption(static_cast<::vl::vint>(0), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Percentage; __vwsn_temp__.percentage = static_cast(1.0); return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetRowOption(static_cast<::vl::vint>(1), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetRowOption(static_cast<::vl::vint>(2), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetColumnOption(static_cast<::vl::vint>(0), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Percentage; __vwsn_temp__.percentage = static_cast(1.0); return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetColumnOption(static_cast<::vl::vint>(1), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetColumnOption(static_cast<::vl::vint>(2), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + } + (this->__vwsn_precompile_1 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_1)->SetSite(static_cast<::vl::vint>(0), static_cast<::vl::vint>(0), static_cast<::vl::vint>(1), static_cast<::vl::vint>(3)); + } + (this->__vwsn_precompile_2 = new ::vl::presentation::compositions::GuiTableComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_2)->SetCellPadding(static_cast<::vl::vint>(10)); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_2)->SetBorderVisible(false); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_2)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(0); __vwsn_temp__.top = static_cast<::vl::vint>(10); __vwsn_temp__.right = static_cast<::vl::vint>(0); __vwsn_temp__.bottom = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_2)->SetMinSizeLimitation(::vl::presentation::compositions::GuiGraphicsComposition::MinSizeLimitation::LimitToElementAndChildren); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_2)->SetRowsAndColumns(static_cast<::vl::vint>(3), static_cast<::vl::vint>(2)); + ::vl::__vwsn::This(this->__vwsn_precompile_2)->SetRowOption(static_cast<::vl::vint>(0), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Percentage; __vwsn_temp__.percentage = static_cast(1.0); return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_2)->SetRowOption(static_cast<::vl::vint>(1), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_2)->SetRowOption(static_cast<::vl::vint>(2), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_2)->SetColumnOption(static_cast<::vl::vint>(0), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Percentage; __vwsn_temp__.percentage = static_cast(0.5); return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_2)->SetColumnOption(static_cast<::vl::vint>(1), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Percentage; __vwsn_temp__.percentage = static_cast(0.5); return __vwsn_temp__; }()); + } + (this->__vwsn_precompile_3 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_3)->SetSite(static_cast<::vl::vint>(0), static_cast<::vl::vint>(0), static_cast<::vl::vint>(3), static_cast<::vl::vint>(1)); + } + (this->nameControl = new ::gaclib_controls::FontNameControl(::vl::Ptr<::vl::presentation::ICommonFontDialogViewModel>(this->ViewModel))); + (this->__vwsn_precompile_4 = ::vl::__vwsn::This(this->nameControl)->GetBoundsComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_4)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(0); __vwsn_temp__.top = static_cast<::vl::vint>(0); __vwsn_temp__.right = static_cast<::vl::vint>(0); __vwsn_temp__.bottom = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_3)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this->nameControl)->GetBoundsComposition())); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_2)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_3)); + } + (this->__vwsn_precompile_5 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_5)->SetSite(static_cast<::vl::vint>(0), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1)); + } + (this->sizeControl = new ::gaclib_controls::FontSizeControl()); + (this->__vwsn_precompile_6 = ::vl::__vwsn::This(this->sizeControl)->GetBoundsComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_6)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(0); __vwsn_temp__.top = static_cast<::vl::vint>(0); __vwsn_temp__.right = static_cast<::vl::vint>(0); __vwsn_temp__.bottom = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_5)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this->sizeControl)->GetBoundsComposition())); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_2)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_5)); + } + (this->__vwsn_precompile_7 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_7)->SetSite(static_cast<::vl::vint>(1), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1)); + } + { + (this->__vwsn_precompile_8 = new ::vl::presentation::controls::GuiControl(::vl::presentation::theme::ThemeName::GroupBox)); + } + (this->__vwsn_precompile_15 = ::vl::__vwsn::This(this->__vwsn_precompile_8)->GetBoundsComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_15)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(0); __vwsn_temp__.top = static_cast<::vl::vint>(0); __vwsn_temp__.right = static_cast<::vl::vint>(0); __vwsn_temp__.bottom = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + } + (this->__vwsn_precompile_9 = new ::vl::presentation::compositions::GuiStackComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_9)->SetDirection(::vl::presentation::compositions::GuiStackComposition::Direction::Vertical); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_9)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(0); __vwsn_temp__.top = static_cast<::vl::vint>(0); __vwsn_temp__.right = static_cast<::vl::vint>(0); __vwsn_temp__.bottom = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_9)->SetMinSizeLimitation(::vl::presentation::compositions::GuiGraphicsComposition::MinSizeLimitation::LimitToElementAndChildren); + } + (this->__vwsn_precompile_10 = new ::vl::presentation::compositions::GuiStackItemComposition()); + { + (this->checkBold = new ::vl::presentation::controls::GuiSelectableButton(::vl::presentation::theme::ThemeName::CheckBox)); + } + { + ::vl::__vwsn::This(this->checkBold)->SetAlt(::vl::WString::Unmanaged(L"B")); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_10)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this->checkBold)->GetBoundsComposition())); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_9)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_10)); + } + (this->__vwsn_precompile_11 = new ::vl::presentation::compositions::GuiStackItemComposition()); + { + (this->checkItalic = new ::vl::presentation::controls::GuiSelectableButton(::vl::presentation::theme::ThemeName::CheckBox)); + } + { + ::vl::__vwsn::This(this->checkItalic)->SetAlt(::vl::WString::Unmanaged(L"I")); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_11)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this->checkItalic)->GetBoundsComposition())); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_9)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_11)); + } + (this->__vwsn_precompile_12 = new ::vl::presentation::compositions::GuiStackItemComposition()); + { + (this->checkUnderline = new ::vl::presentation::controls::GuiSelectableButton(::vl::presentation::theme::ThemeName::CheckBox)); + } + { + ::vl::__vwsn::This(this->checkUnderline)->SetAlt(::vl::WString::Unmanaged(L"U")); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_12)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this->checkUnderline)->GetBoundsComposition())); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_9)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_12)); + } + (this->__vwsn_precompile_13 = new ::vl::presentation::compositions::GuiStackItemComposition()); + { + (this->checkHAA = new ::vl::presentation::controls::GuiSelectableButton(::vl::presentation::theme::ThemeName::CheckBox)); + } + { + ::vl::__vwsn::This(this->checkHAA)->SetAlt(::vl::WString::Unmanaged(L"H")); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_13)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this->checkHAA)->GetBoundsComposition())); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_9)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_13)); + } + (this->__vwsn_precompile_14 = new ::vl::presentation::compositions::GuiStackItemComposition()); + { + (this->checkVAA = new ::vl::presentation::controls::GuiSelectableButton(::vl::presentation::theme::ThemeName::CheckBox)); + } + { + ::vl::__vwsn::This(this->checkVAA)->SetAlt(::vl::WString::Unmanaged(L"V")); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_14)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this->checkVAA)->GetBoundsComposition())); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_9)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_14)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this->__vwsn_precompile_8)->GetContainerComposition())->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_9)); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_7)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this->__vwsn_precompile_8)->GetBoundsComposition())); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_2)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_7)); + } + (this->__vwsn_precompile_16 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_16)->SetSite(static_cast<::vl::vint>(2), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1)); + } + { + (this->__vwsn_precompile_17 = new ::vl::presentation::controls::GuiControl(::vl::presentation::theme::ThemeName::GroupBox)); + } + (this->__vwsn_precompile_20 = ::vl::__vwsn::This(this->__vwsn_precompile_17)->GetBoundsComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_20)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(0); __vwsn_temp__.top = static_cast<::vl::vint>(0); __vwsn_temp__.right = static_cast<::vl::vint>(0); __vwsn_temp__.bottom = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + } + (this->colorBounds = new ::vl::presentation::compositions::GuiBoundsComposition()); + { + ::vl::__vwsn::This(this->colorBounds)->SetPreferredMinSize([&](){ ::vl::presentation::Size __vwsn_temp__; __vwsn_temp__.y = static_cast<::vl::vint>(20); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->colorBounds)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(1); __vwsn_temp__.top = static_cast<::vl::vint>(1); __vwsn_temp__.right = static_cast<::vl::vint>(1); __vwsn_temp__.bottom = static_cast<::vl::vint>(1); return __vwsn_temp__; }()); + } + (this->__vwsn_precompile_18 = ::vl::Ptr<::vl::presentation::elements::Gui3DBorderElement>(::vl::reflection::description::Element_Constructor<::vl::presentation::elements::Gui3DBorderElement>())); + { + ::vl::__vwsn::This(this->__vwsn_precompile_18.Obj())->SetColor2(::vl::__vwsn::Parse<::vl::presentation::Color>(::vl::WString::Unmanaged(L"#AAAAAA"))); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_18.Obj())->SetColor1(::vl::__vwsn::Parse<::vl::presentation::Color>(::vl::WString::Unmanaged(L"#444444"))); + } + { + ::vl::__vwsn::This(this->colorBounds)->SetOwnedElement(::vl::Ptr<::vl::presentation::elements::IGuiGraphicsElement>(this->__vwsn_precompile_18)); + } + (this->__vwsn_precompile_19 = new ::vl::presentation::compositions::GuiBoundsComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_19)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(1); __vwsn_temp__.top = static_cast<::vl::vint>(1); __vwsn_temp__.right = static_cast<::vl::vint>(1); __vwsn_temp__.bottom = static_cast<::vl::vint>(1); return __vwsn_temp__; }()); + } + (this->colorBackground = ::vl::Ptr<::vl::presentation::elements::GuiSolidBackgroundElement>(::vl::reflection::description::Element_Constructor<::vl::presentation::elements::GuiSolidBackgroundElement>())); + { + ::vl::__vwsn::This(this->__vwsn_precompile_19)->SetOwnedElement(::vl::Ptr<::vl::presentation::elements::IGuiGraphicsElement>(this->colorBackground)); + } + { + ::vl::__vwsn::This(this->colorBounds)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_19)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this->__vwsn_precompile_17)->GetContainerComposition())->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->colorBounds)); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_16)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this->__vwsn_precompile_17)->GetBoundsComposition())); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_2)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_16)); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_1)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_2)); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_1)); + } + (this->__vwsn_precompile_21 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_21)->SetPreferredMinSize([&](){ ::vl::presentation::Size __vwsn_temp__; __vwsn_temp__.y = static_cast<::vl::vint>(48); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_21)->SetSite(static_cast<::vl::vint>(1), static_cast<::vl::vint>(0), static_cast<::vl::vint>(1), static_cast<::vl::vint>(3)); + } + { + (this->__vwsn_precompile_22 = new ::vl::presentation::controls::GuiControl(::vl::presentation::theme::ThemeName::GroupBox)); + } + (this->__vwsn_precompile_27 = ::vl::__vwsn::This(this->__vwsn_precompile_22)->GetBoundsComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_27)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(0); __vwsn_temp__.top = static_cast<::vl::vint>(0); __vwsn_temp__.right = static_cast<::vl::vint>(0); __vwsn_temp__.bottom = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + } + (this->__vwsn_precompile_23 = new ::vl::presentation::compositions::GuiTableComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_23)->SetBorderVisible(false); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_23)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(0); __vwsn_temp__.top = static_cast<::vl::vint>(0); __vwsn_temp__.right = static_cast<::vl::vint>(0); __vwsn_temp__.bottom = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_23)->SetMinSizeLimitation(::vl::presentation::compositions::GuiGraphicsComposition::MinSizeLimitation::LimitToElementAndChildren); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_23)->SetRowsAndColumns(static_cast<::vl::vint>(3), static_cast<::vl::vint>(3)); + ::vl::__vwsn::This(this->__vwsn_precompile_23)->SetRowOption(static_cast<::vl::vint>(0), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Percentage; __vwsn_temp__.percentage = static_cast(1.0); return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_23)->SetRowOption(static_cast<::vl::vint>(1), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_23)->SetRowOption(static_cast<::vl::vint>(2), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Percentage; __vwsn_temp__.percentage = static_cast(1.0); return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_23)->SetColumnOption(static_cast<::vl::vint>(0), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Percentage; __vwsn_temp__.percentage = static_cast(1.0); return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_23)->SetColumnOption(static_cast<::vl::vint>(1), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_23)->SetColumnOption(static_cast<::vl::vint>(2), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Percentage; __vwsn_temp__.percentage = static_cast(1.0); return __vwsn_temp__; }()); + } + (this->__vwsn_precompile_24 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_24)->SetSite(static_cast<::vl::vint>(1), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1)); + } + { + (this->__vwsn_precompile_25 = new ::vl::presentation::controls::GuiLabel(::vl::presentation::theme::ThemeName::Label)); + } + (this->__vwsn_precompile_26 = ::vl::__vwsn::This(this->__vwsn_precompile_25)->GetBoundsComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_26)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(0); __vwsn_temp__.top = static_cast<::vl::vint>(0); __vwsn_temp__.right = static_cast<::vl::vint>(0); __vwsn_temp__.bottom = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_25)->SetText(::vl::WString::Unmanaged(L"ABCxyz")); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_24)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this->__vwsn_precompile_25)->GetBoundsComposition())); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_23)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_24)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this->__vwsn_precompile_22)->GetContainerComposition())->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_23)); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_21)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this->__vwsn_precompile_22)->GetBoundsComposition())); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_21)); + } + (this->__vwsn_precompile_28 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_28)->SetSite(static_cast<::vl::vint>(2), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1)); + } + { + (this->__vwsn_precompile_29 = new ::vl::presentation::controls::GuiButton(::vl::presentation::theme::ThemeName::Button)); + } + (this->__vwsn_precompile_30 = ::vl::__vwsn::This(this->__vwsn_precompile_29)->GetBoundsComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_30)->SetPreferredMinSize([&](){ ::vl::presentation::Size __vwsn_temp__; __vwsn_temp__.x = static_cast<::vl::vint>(80); __vwsn_temp__.y = static_cast<::vl::vint>(24); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_30)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(0); __vwsn_temp__.top = static_cast<::vl::vint>(0); __vwsn_temp__.right = static_cast<::vl::vint>(0); __vwsn_temp__.bottom = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_29)->SetAlt(::vl::WString::Unmanaged(L"O")); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_28)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this->__vwsn_precompile_29)->GetBoundsComposition())); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_28)); + } + (this->__vwsn_precompile_31 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_31)->SetSite(static_cast<::vl::vint>(2), static_cast<::vl::vint>(2), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1)); + } + { + (this->__vwsn_precompile_32 = new ::vl::presentation::controls::GuiButton(::vl::presentation::theme::ThemeName::Button)); + } + (this->__vwsn_precompile_33 = ::vl::__vwsn::This(this->__vwsn_precompile_32)->GetBoundsComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_33)->SetPreferredMinSize([&](){ ::vl::presentation::Size __vwsn_temp__; __vwsn_temp__.x = static_cast<::vl::vint>(80); __vwsn_temp__.y = static_cast<::vl::vint>(24); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_33)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(0); __vwsn_temp__.top = static_cast<::vl::vint>(0); __vwsn_temp__.right = static_cast<::vl::vint>(0); __vwsn_temp__.bottom = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_32)->SetAlt(::vl::WString::Unmanaged(L"C")); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_31)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this->__vwsn_precompile_32)->GetBoundsComposition())); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_31)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this->self)->GetContainerComposition())->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_0)); + } + { + auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc34_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(__vwsn_this_, this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->ValueChanged, vl::Func(::vl_workflow_global::__vwsnf59_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_(this))); + ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(__vwsn_created_subscription_); + } + { + auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc35_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(__vwsn_this_, this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->ValueChanged, vl::Func(::vl_workflow_global::__vwsnf60_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_(this))); + ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(__vwsn_created_subscription_); + } + { + auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc36_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(__vwsn_this_, this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->ValueChanged, vl::Func(::vl_workflow_global::__vwsnf61_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_(this))); + ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(__vwsn_created_subscription_); + } + { + auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc37_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(__vwsn_this_, this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->ValueChanged, vl::Func(::vl_workflow_global::__vwsnf62_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_(this))); + ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(__vwsn_created_subscription_); + } + { + auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc38_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(__vwsn_this_, this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->ValueChanged, vl::Func(::vl_workflow_global::__vwsnf63_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_(this))); + ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(__vwsn_created_subscription_); + } + { + auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc39_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(__vwsn_this_, this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->ValueChanged, vl::Func(::vl_workflow_global::__vwsnf64_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_(this))); + ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(__vwsn_created_subscription_); + } + { + ::vl::__vwsn::This(this->colorBackground.Obj())->SetColor(::vl::__vwsn::This(this->ViewModel.Obj())->GetColor()); + } + { + ::vl::__vwsn::This(this->colorBounds)->SetAssociatedCursor(::vl::__vwsn::This(::vl::__vwsn::This(::vl::presentation::GetCurrentController())->ResourceService())->GetSystemCursor(::vl::presentation::INativeCursor::SystemCursorType::Hand)); + } + { + auto __vwsn_event_handler_ = vl::Func(::vl_workflow_global::__vwsnf65_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(this->colorBounds)->GetEventReceiver()->leftButtonUp, __vwsn_event_handler_); + } + { + auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc40_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(__vwsn_this_, this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->ValueChanged, vl::Func(::vl_workflow_global::__vwsnf66_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_(this))); + ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(__vwsn_created_subscription_); + } + { + auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc41_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->ValueChanged, vl::Func(::vl_workflow_global::__vwsnf67_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_(this))); + ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(__vwsn_created_subscription_); + } + { + auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc42_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(__vwsn_this_, this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->ValueChanged, vl::Func(::vl_workflow_global::__vwsnf68_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_(this))); + ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(__vwsn_created_subscription_); + } + { + auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc43_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(__vwsn_this_, this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->ValueChanged, vl::Func(::vl_workflow_global::__vwsnf69_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_(this))); + ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(__vwsn_created_subscription_); + } + { + auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc44_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->ValueChanged, vl::Func(::vl_workflow_global::__vwsnf70_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_(this))); + ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(__vwsn_created_subscription_); + } + { + auto __vwsn_event_handler_ = vl::Func(::vl_workflow_global::__vwsnf71_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(this->__vwsn_precompile_29)->Clicked, __vwsn_event_handler_); + } + { + auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc45_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(__vwsn_this_, this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->ValueChanged, vl::Func(::vl_workflow_global::__vwsnf72_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_(this))); + ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(__vwsn_created_subscription_); + } + { + auto __vwsn_event_handler_ = vl::Func(::vl_workflow_global::__vwsnf73_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(this->__vwsn_precompile_32)->Clicked, __vwsn_event_handler_); + } + { + auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc46_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(__vwsn_this_, this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->ValueChanged, vl::Func(::vl_workflow_global::__vwsnf74_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_(this))); + ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(__vwsn_created_subscription_); + } + { + auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc47_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->ValueChanged, vl::Func(::vl_workflow_global::__vwsnf75_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_(this))); + ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(__vwsn_created_subscription_); + } + } + + FullFontDialogWindowConstructor::FullFontDialogWindowConstructor() + : self(static_cast<::gaclib_controls::FullFontDialogWindow*>(nullptr)) + , ViewModel(::vl::Ptr<::vl::presentation::IFullFontDialogViewModel>()) + , nameControl(static_cast<::gaclib_controls::FontNameControl*>(nullptr)) + , sizeControl(static_cast<::gaclib_controls::FontSizeControl*>(nullptr)) + , checkBold(static_cast<::vl::presentation::controls::GuiSelectableButton*>(nullptr)) + , checkItalic(static_cast<::vl::presentation::controls::GuiSelectableButton*>(nullptr)) + , checkUnderline(static_cast<::vl::presentation::controls::GuiSelectableButton*>(nullptr)) + , checkHAA(static_cast<::vl::presentation::controls::GuiSelectableButton*>(nullptr)) + , checkVAA(static_cast<::vl::presentation::controls::GuiSelectableButton*>(nullptr)) + , colorBounds(static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr)) + , colorBackground(::vl::Ptr<::vl::presentation::elements::GuiSolidBackgroundElement>()) + , __vwsn_precompile_0(static_cast<::vl::presentation::compositions::GuiTableComposition*>(nullptr)) + , __vwsn_precompile_1(static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr)) + , __vwsn_precompile_2(static_cast<::vl::presentation::compositions::GuiTableComposition*>(nullptr)) + , __vwsn_precompile_3(static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr)) + , __vwsn_precompile_4(static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr)) + , __vwsn_precompile_5(static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr)) + , __vwsn_precompile_6(static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr)) + , __vwsn_precompile_7(static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr)) + , __vwsn_precompile_8(static_cast<::vl::presentation::controls::GuiControl*>(nullptr)) + , __vwsn_precompile_9(static_cast<::vl::presentation::compositions::GuiStackComposition*>(nullptr)) + , __vwsn_precompile_10(static_cast<::vl::presentation::compositions::GuiStackItemComposition*>(nullptr)) + , __vwsn_precompile_11(static_cast<::vl::presentation::compositions::GuiStackItemComposition*>(nullptr)) + , __vwsn_precompile_12(static_cast<::vl::presentation::compositions::GuiStackItemComposition*>(nullptr)) + , __vwsn_precompile_13(static_cast<::vl::presentation::compositions::GuiStackItemComposition*>(nullptr)) + , __vwsn_precompile_14(static_cast<::vl::presentation::compositions::GuiStackItemComposition*>(nullptr)) + , __vwsn_precompile_15(static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr)) + , __vwsn_precompile_16(static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr)) + , __vwsn_precompile_17(static_cast<::vl::presentation::controls::GuiControl*>(nullptr)) + , __vwsn_precompile_18(::vl::Ptr<::vl::presentation::elements::Gui3DBorderElement>()) + , __vwsn_precompile_19(static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr)) + , __vwsn_precompile_20(static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr)) + , __vwsn_precompile_21(static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr)) + , __vwsn_precompile_22(static_cast<::vl::presentation::controls::GuiControl*>(nullptr)) + , __vwsn_precompile_23(static_cast<::vl::presentation::compositions::GuiTableComposition*>(nullptr)) + , __vwsn_precompile_24(static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr)) + , __vwsn_precompile_25(static_cast<::vl::presentation::controls::GuiLabel*>(nullptr)) + , __vwsn_precompile_26(static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr)) + , __vwsn_precompile_27(static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr)) + , __vwsn_precompile_28(static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr)) + , __vwsn_precompile_29(static_cast<::vl::presentation::controls::GuiButton*>(nullptr)) + , __vwsn_precompile_30(static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr)) + , __vwsn_precompile_31(static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr)) + , __vwsn_precompile_32(static_cast<::vl::presentation::controls::GuiButton*>(nullptr)) + , __vwsn_precompile_33(static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr)) + { + } + +/*********************************************************************** +Class (::gaclib_controls::FullFontDialogWindow) +***********************************************************************/ + + ::vl::Ptr<::gaclib_controls::IDialogStringsStrings> FullFontDialogWindow::GetStrings() + { + return this->__vwsn_prop_Strings; + } + void FullFontDialogWindow::SetStrings(::vl::Ptr<::gaclib_controls::IDialogStringsStrings> __vwsn_value_) + { + if ((this->__vwsn_prop_Strings.Obj() != __vwsn_value_.Obj())) + { + (this->__vwsn_prop_Strings = __vwsn_value_); + ::vl::__vwsn::EventInvoke(this->StringsChanged)(); + } + } + + ::vl::Ptr<::vl::presentation::IFullFontDialogViewModel> FullFontDialogWindow::GetViewModel() + { + return this->__vwsn_parameter_ViewModel; + } + + FullFontDialogWindow::FullFontDialogWindow(::vl::Ptr<::vl::presentation::IFullFontDialogViewModel> __vwsn_ctor_parameter_ViewModel) + : ::vl::presentation::controls::GuiWindow(::vl::presentation::theme::ThemeName::Window) + , __vwsn_prop_Strings(::gaclib_controls::DialogStrings::Get(::vl::__vwsn::Parse<::vl::Locale>(::vl::WString::Unmanaged(L"en-US")))) + , __vwsn_parameter_ViewModel(::vl::Ptr<::vl::presentation::IFullFontDialogViewModel>()) + { + (this->__vwsn_parameter_ViewModel = __vwsn_ctor_parameter_ViewModel); + auto __vwsn_resource_ = ::vl::__vwsn::This(::vl::presentation::GetResourceManager())->GetResourceFromClassName(::vl::WString::Unmanaged(L"gaclib_controls::FullFontDialogWindow")); + 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_gaclib_controls_FullFontDialogWindow_Initialize(this); + this->__vwsn_instance_ctor_(); + } + + void FullFontDialogWindow::__vwsn_instance_ctor_() + { + ::vl::__vwsn::This(this->nameControl)->InitValue(::vl::__vwsn::This(this->GetViewModel().Obj())->GetFont().fontFamily); + ::vl::__vwsn::This(this->sizeControl)->InitValue(::vl::__vwsn::This(this->GetViewModel().Obj())->GetFont().size); + ::vl::__vwsn::This(this->checkBold)->SetSelected(::vl::__vwsn::This(this->GetViewModel().Obj())->GetFont().bold); + ::vl::__vwsn::This(this->checkItalic)->SetSelected(::vl::__vwsn::This(this->GetViewModel().Obj())->GetFont().italic); + ::vl::__vwsn::This(this->checkUnderline)->SetSelected(::vl::__vwsn::This(this->GetViewModel().Obj())->GetFont().underline); + ::vl::__vwsn::This(this->checkHAA)->SetSelected(::vl::__vwsn::This(this->GetViewModel().Obj())->GetFont().antialias); + ::vl::__vwsn::This(this->checkVAA)->SetSelected(::vl::__vwsn::This(this->GetViewModel().Obj())->GetFont().verticalAntialias); + } + + FullFontDialogWindow::~FullFontDialogWindow() + { + this->FinalizeInstanceRecursively(static_cast<::vl::presentation::controls::GuiControlHost*>(this)); + } + +/*********************************************************************** +Class (::gaclib_controls::IDialogStringsStrings) +***********************************************************************/ + +/*********************************************************************** +Class (::gaclib_controls::MessageBoxButtonTemplateConstructor) +***********************************************************************/ + + void MessageBoxButtonTemplateConstructor::__vwsn_gaclib_controls_MessageBoxButtonTemplate_Initialize(::gaclib_controls::MessageBoxButtonTemplate* __vwsn_this_) + { + (this->self = __vwsn_this_); + (this->Action = ::vl::__vwsn::This(__vwsn_this_)->GetAction()); + { + ::vl::__vwsn::This(this->self)->SetMinSizeLimitation(::vl::presentation::compositions::GuiGraphicsComposition::MinSizeLimitation::LimitToElementAndChildren); + } + { + (this->__vwsn_precompile_0 = new ::vl::presentation::controls::GuiButton(::vl::presentation::theme::ThemeName::Button)); + } + (this->__vwsn_precompile_1 = ::vl::__vwsn::This(this->__vwsn_precompile_0)->GetBoundsComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_1)->SetPreferredMinSize([&](){ ::vl::presentation::Size __vwsn_temp__; __vwsn_temp__.x = static_cast<::vl::vint>(80); __vwsn_temp__.y = static_cast<::vl::vint>(24); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_1)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(0); __vwsn_temp__.top = static_cast<::vl::vint>(0); __vwsn_temp__.right = static_cast<::vl::vint>(0); __vwsn_temp__.bottom = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->self)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this->__vwsn_precompile_0)->GetBoundsComposition())); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetText(::vl::__vwsn::This(this->self)->GetButtonText(::vl::__vwsn::This(this->Action.Obj())->GetButton(), ::vl::__vwsn::This(this->self)->GetStrings())); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetAlt(::vl::__vwsn::This(this->self)->GetButtonAlt(::vl::__vwsn::This(this->Action.Obj())->GetButton())); + } + { + auto __vwsn_event_handler_ = vl::Func(::vl_workflow_global::__vwsnf85_GuiFakeDialogServiceUI_gaclib_controls_MessageBoxButtonTemplateConstructor___vwsn_gaclib_controls_MessageBoxButtonTemplate_Initialize_(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(this->__vwsn_precompile_0)->Clicked, __vwsn_event_handler_); + } + { + auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc55_GuiFakeDialogServiceUI_gaclib_controls_MessageBoxButtonTemplateConstructor___vwsn_gaclib_controls_MessageBoxButtonTemplate_Initialize__vl_reflection_description_IValueSubscription(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->ValueChanged, vl::Func(::vl_workflow_global::__vwsnf86_GuiFakeDialogServiceUI_gaclib_controls_MessageBoxButtonTemplateConstructor___vwsn_gaclib_controls_MessageBoxButtonTemplate_Initialize_(this))); + ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(__vwsn_created_subscription_); + } + } + + MessageBoxButtonTemplateConstructor::MessageBoxButtonTemplateConstructor() + : Action(::vl::Ptr<::vl::presentation::IMessageBoxDialogAction>()) + , self(static_cast<::gaclib_controls::MessageBoxButtonTemplate*>(nullptr)) + , __vwsn_precompile_0(static_cast<::vl::presentation::controls::GuiButton*>(nullptr)) + , __vwsn_precompile_1(static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr)) + { + } + +/*********************************************************************** +Class (::gaclib_controls::MessageBoxButtonTemplate) +***********************************************************************/ + + ::vl::WString MessageBoxButtonTemplate::GetButtonText(::vl::presentation::INativeDialogService::MessageBoxButtonsOutput button, ::vl::Ptr<::gaclib_controls::IDialogStringsStrings> strings) + { + { + auto __vwsn_switch_0 = button; + if ((__vwsn_switch_0 == ::vl::presentation::INativeDialogService::MessageBoxButtonsOutput::SelectOK)) + { + return ::vl::__vwsn::This(strings.Obj())->OK(); + } + else if ((__vwsn_switch_0 == ::vl::presentation::INativeDialogService::MessageBoxButtonsOutput::SelectCancel)) + { + return ::vl::__vwsn::This(strings.Obj())->Cancel(); + } + else if ((__vwsn_switch_0 == ::vl::presentation::INativeDialogService::MessageBoxButtonsOutput::SelectYes)) + { + return ::vl::__vwsn::This(strings.Obj())->Yes(); + } + else if ((__vwsn_switch_0 == ::vl::presentation::INativeDialogService::MessageBoxButtonsOutput::SelectNo)) + { + return ::vl::__vwsn::This(strings.Obj())->No(); + } + else if ((__vwsn_switch_0 == ::vl::presentation::INativeDialogService::MessageBoxButtonsOutput::SelectRetry)) + { + return ::vl::__vwsn::This(strings.Obj())->Retry(); + } + else if ((__vwsn_switch_0 == ::vl::presentation::INativeDialogService::MessageBoxButtonsOutput::SelectAbort)) + { + return ::vl::__vwsn::This(strings.Obj())->Abort(); + } + else if ((__vwsn_switch_0 == ::vl::presentation::INativeDialogService::MessageBoxButtonsOutput::SelectIgnore)) + { + return ::vl::__vwsn::This(strings.Obj())->Ignore(); + } + else if ((__vwsn_switch_0 == ::vl::presentation::INativeDialogService::MessageBoxButtonsOutput::SelectTryAgain)) + { + return ::vl::__vwsn::This(strings.Obj())->TryAgain(); + } + else if ((__vwsn_switch_0 == ::vl::presentation::INativeDialogService::MessageBoxButtonsOutput::SelectContinue)) + { + return ::vl::__vwsn::This(strings.Obj())->Continue(); + } + else + { + return ::vl::WString::Unmanaged(L""); + } + } + } + + ::vl::WString MessageBoxButtonTemplate::GetButtonAlt(::vl::presentation::INativeDialogService::MessageBoxButtonsOutput button) + { + { + auto __vwsn_switch_1 = button; + if ((__vwsn_switch_1 == ::vl::presentation::INativeDialogService::MessageBoxButtonsOutput::SelectOK)) + { + return ::vl::WString::Unmanaged(L"O"); + } + else if ((__vwsn_switch_1 == ::vl::presentation::INativeDialogService::MessageBoxButtonsOutput::SelectCancel)) + { + return ::vl::WString::Unmanaged(L"C"); + } + else if ((__vwsn_switch_1 == ::vl::presentation::INativeDialogService::MessageBoxButtonsOutput::SelectYes)) + { + return ::vl::WString::Unmanaged(L"Y"); + } + else if ((__vwsn_switch_1 == ::vl::presentation::INativeDialogService::MessageBoxButtonsOutput::SelectNo)) + { + return ::vl::WString::Unmanaged(L"N"); + } + else if ((__vwsn_switch_1 == ::vl::presentation::INativeDialogService::MessageBoxButtonsOutput::SelectRetry)) + { + return ::vl::WString::Unmanaged(L"R"); + } + else if ((__vwsn_switch_1 == ::vl::presentation::INativeDialogService::MessageBoxButtonsOutput::SelectAbort)) + { + return ::vl::WString::Unmanaged(L"A"); + } + else if ((__vwsn_switch_1 == ::vl::presentation::INativeDialogService::MessageBoxButtonsOutput::SelectIgnore)) + { + return ::vl::WString::Unmanaged(L"I"); + } + else if ((__vwsn_switch_1 == ::vl::presentation::INativeDialogService::MessageBoxButtonsOutput::SelectTryAgain)) + { + return ::vl::WString::Unmanaged(L"T"); + } + else if ((__vwsn_switch_1 == ::vl::presentation::INativeDialogService::MessageBoxButtonsOutput::SelectContinue)) + { + return ::vl::WString::Unmanaged(L"K"); + } + else + { + return ::vl::WString::Unmanaged(L""); + } + } + } + + ::vl::Ptr<::gaclib_controls::IDialogStringsStrings> MessageBoxButtonTemplate::GetStrings() + { + return this->__vwsn_prop_Strings; + } + void MessageBoxButtonTemplate::SetStrings(::vl::Ptr<::gaclib_controls::IDialogStringsStrings> __vwsn_value_) + { + if ((this->__vwsn_prop_Strings.Obj() != __vwsn_value_.Obj())) + { + (this->__vwsn_prop_Strings = __vwsn_value_); + ::vl::__vwsn::EventInvoke(this->StringsChanged)(); + } + } + + ::vl::Ptr<::vl::presentation::IMessageBoxDialogAction> MessageBoxButtonTemplate::GetAction() + { + return this->__vwsn_parameter_Action; + } + + MessageBoxButtonTemplate::MessageBoxButtonTemplate(::vl::Ptr<::vl::presentation::IMessageBoxDialogAction> __vwsn_ctor_parameter_Action) + : __vwsn_prop_Strings(::gaclib_controls::DialogStrings::Get(::vl::__vwsn::Parse<::vl::Locale>(::vl::WString::Unmanaged(L"en-US")))) + , __vwsn_parameter_Action(::vl::Ptr<::vl::presentation::IMessageBoxDialogAction>()) + { + (this->__vwsn_parameter_Action = __vwsn_ctor_parameter_Action); + auto __vwsn_resource_ = ::vl::__vwsn::This(::vl::presentation::GetResourceManager())->GetResourceFromClassName(::vl::WString::Unmanaged(L"gaclib_controls::MessageBoxButtonTemplate")); + 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_gaclib_controls_MessageBoxButtonTemplate_Initialize(this); + } + + MessageBoxButtonTemplate::~MessageBoxButtonTemplate() + { + this->FinalizeInstanceRecursively(static_cast<::vl::presentation::templates::GuiTemplate*>(this)); + } + +/*********************************************************************** +Class (::gaclib_controls::MessageBoxWindowConstructor) +***********************************************************************/ + + void MessageBoxWindowConstructor::__vwsn_gaclib_controls_MessageBoxWindow_Initialize(::gaclib_controls::MessageBoxWindow* __vwsn_this_) + { + (this->self = __vwsn_this_); + (this->ViewModel = ::vl::__vwsn::This(__vwsn_this_)->GetViewModel()); + { + ::vl::__vwsn::This(this->self)->SetIconVisible(false); + } + { + ::vl::__vwsn::This(this->self)->SetSizeBox(false); + } + { + ::vl::__vwsn::This(this->self)->SetMinimizedBox(false); + } + { + ::vl::__vwsn::This(this->self)->SetMaximizedBox(false); + } + { + ::vl::__vwsn::This(this->self)->SetShowInTaskBar(false); + } + { + ::vl::__vwsn::This(this->self)->SetClientSize([&](){ ::vl::presentation::Size __vwsn_temp__; __vwsn_temp__.x = static_cast<::vl::vint>(240); __vwsn_temp__.y = static_cast<::vl::vint>(120); return __vwsn_temp__; }()); + } + (this->__vwsn_precompile_0 = new ::vl::presentation::compositions::GuiTableComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetCellPadding(static_cast<::vl::vint>(10)); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetBorderVisible(false); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(0); __vwsn_temp__.top = static_cast<::vl::vint>(10); __vwsn_temp__.right = static_cast<::vl::vint>(0); __vwsn_temp__.bottom = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetMinSizeLimitation(::vl::presentation::compositions::GuiGraphicsComposition::MinSizeLimitation::LimitToElementAndChildren); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetRowsAndColumns(static_cast<::vl::vint>(3), static_cast<::vl::vint>(2)); + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetRowOption(static_cast<::vl::vint>(0), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetRowOption(static_cast<::vl::vint>(1), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Percentage; __vwsn_temp__.percentage = static_cast(1.0); return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetRowOption(static_cast<::vl::vint>(2), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetColumnOption(static_cast<::vl::vint>(0), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetColumnOption(static_cast<::vl::vint>(1), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Percentage; __vwsn_temp__.percentage = static_cast(1.0); return __vwsn_temp__; }()); + } + (this->__vwsn_precompile_1 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_1)->SetSite(static_cast<::vl::vint>(0), static_cast<::vl::vint>(0), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1)); + } + (this->__vwsn_precompile_2 = new ::vl::presentation::compositions::GuiTableComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_2)->SetBorderVisible(false); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_2)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(0); __vwsn_temp__.top = static_cast<::vl::vint>(0); __vwsn_temp__.right = static_cast<::vl::vint>(0); __vwsn_temp__.bottom = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_2)->SetMinSizeLimitation(::vl::presentation::compositions::GuiGraphicsComposition::MinSizeLimitation::LimitToElementAndChildren); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_2)->SetRowsAndColumns(static_cast<::vl::vint>(3), static_cast<::vl::vint>(1)); + ::vl::__vwsn::This(this->__vwsn_precompile_2)->SetRowOption(static_cast<::vl::vint>(0), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Percentage; __vwsn_temp__.percentage = static_cast(1.0); return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_2)->SetRowOption(static_cast<::vl::vint>(1), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_2)->SetRowOption(static_cast<::vl::vint>(2), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Percentage; __vwsn_temp__.percentage = static_cast(1.0); return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_2)->SetColumnOption(static_cast<::vl::vint>(0), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + } + (this->__vwsn_precompile_3 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_3)->SetSite(static_cast<::vl::vint>(1), static_cast<::vl::vint>(0), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1)); + } + (this->__vwsn_precompile_4 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBackgroundElement>(::vl::reflection::description::Element_Constructor<::vl::presentation::elements::GuiSolidBackgroundElement>())); + { + ::vl::__vwsn::This(this->__vwsn_precompile_4.Obj())->SetColor(::vl::__vwsn::Parse<::vl::presentation::Color>(::vl::WString::Unmanaged(L"#FFFFFF"))); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_3)->SetOwnedElement(::vl::Ptr<::vl::presentation::elements::IGuiGraphicsElement>(this->__vwsn_precompile_4)); + } + (this->__vwsn_precompile_5 = new ::vl::presentation::compositions::GuiBoundsComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_5)->SetPreferredMinSize([&](){ ::vl::presentation::Size __vwsn_temp__; __vwsn_temp__.x = static_cast<::vl::vint>(48); __vwsn_temp__.y = static_cast<::vl::vint>(48); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_5)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(0); __vwsn_temp__.top = static_cast<::vl::vint>(0); __vwsn_temp__.right = static_cast<::vl::vint>(0); __vwsn_temp__.bottom = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_5)->SetMinSizeLimitation(::vl::presentation::compositions::GuiGraphicsComposition::MinSizeLimitation::LimitToElementAndChildren); + } + (this->__vwsn_precompile_6 = ::vl::Ptr<::vl::presentation::elements::GuiImageFrameElement>(::vl::reflection::description::Element_Constructor<::vl::presentation::elements::GuiImageFrameElement>())); + { + ::vl::__vwsn::This(this->__vwsn_precompile_6.Obj())->SetStretch(true); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_5)->SetOwnedElement(::vl::Ptr<::vl::presentation::elements::IGuiGraphicsElement>(this->__vwsn_precompile_6)); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_3)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_5)); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_2)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_3)); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_1)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_2)); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_1)); + } + (this->__vwsn_precompile_7 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_7)->SetSite(static_cast<::vl::vint>(0), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1)); + } + (this->__vwsn_precompile_8 = new ::vl::presentation::compositions::GuiTableComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_8)->SetBorderVisible(false); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_8)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(0); __vwsn_temp__.top = static_cast<::vl::vint>(0); __vwsn_temp__.right = static_cast<::vl::vint>(0); __vwsn_temp__.bottom = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_8)->SetMinSizeLimitation(::vl::presentation::compositions::GuiGraphicsComposition::MinSizeLimitation::LimitToElementAndChildren); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_8)->SetRowsAndColumns(static_cast<::vl::vint>(3), static_cast<::vl::vint>(1)); + ::vl::__vwsn::This(this->__vwsn_precompile_8)->SetRowOption(static_cast<::vl::vint>(0), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Percentage; __vwsn_temp__.percentage = static_cast(1.0); return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_8)->SetRowOption(static_cast<::vl::vint>(1), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_8)->SetRowOption(static_cast<::vl::vint>(2), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Percentage; __vwsn_temp__.percentage = static_cast(1.0); return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_8)->SetColumnOption(static_cast<::vl::vint>(0), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + } + (this->__vwsn_precompile_9 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_9)->SetSite(static_cast<::vl::vint>(1), static_cast<::vl::vint>(0), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1)); + } + { + (this->__vwsn_precompile_10 = new ::vl::presentation::controls::GuiLabel(::vl::presentation::theme::ThemeName::Label)); + } + (this->__vwsn_precompile_11 = ::vl::__vwsn::This(this->__vwsn_precompile_10)->GetBoundsComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_11)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(0); __vwsn_temp__.top = static_cast<::vl::vint>(0); __vwsn_temp__.right = static_cast<::vl::vint>(0); __vwsn_temp__.bottom = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_9)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this->__vwsn_precompile_10)->GetBoundsComposition())); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_8)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_9)); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_7)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_8)); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_7)); + } + (this->__vwsn_precompile_12 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_12)->SetSite(static_cast<::vl::vint>(2), static_cast<::vl::vint>(0), static_cast<::vl::vint>(1), static_cast<::vl::vint>(2)); + } + (this->__vwsn_precompile_13 = new ::vl::presentation::compositions::GuiTableComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_13)->SetBorderVisible(false); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_13)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(0); __vwsn_temp__.top = static_cast<::vl::vint>(0); __vwsn_temp__.right = static_cast<::vl::vint>(0); __vwsn_temp__.bottom = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_13)->SetMinSizeLimitation(::vl::presentation::compositions::GuiGraphicsComposition::MinSizeLimitation::LimitToElementAndChildren); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_13)->SetRowsAndColumns(static_cast<::vl::vint>(1), static_cast<::vl::vint>(3)); + ::vl::__vwsn::This(this->__vwsn_precompile_13)->SetRowOption(static_cast<::vl::vint>(0), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_13)->SetColumnOption(static_cast<::vl::vint>(0), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Percentage; __vwsn_temp__.percentage = static_cast(1.0); return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_13)->SetColumnOption(static_cast<::vl::vint>(1), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_13)->SetColumnOption(static_cast<::vl::vint>(2), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Percentage; __vwsn_temp__.percentage = static_cast(1.0); return __vwsn_temp__; }()); + } + (this->__vwsn_precompile_14 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_14)->SetSite(static_cast<::vl::vint>(0), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1)); + } + (this->__vwsn_precompile_15 = new ::vl::presentation::compositions::GuiRepeatStackComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_15)->SetItemTemplate(vl::Func(::vl_workflow_global::__vwsnf87_GuiFakeDialogServiceUI_gaclib_controls_MessageBoxWindowConstructor___vwsn_gaclib_controls_MessageBoxWindow_Initialize_(this))); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_15)->SetPadding(static_cast<::vl::vint>(5)); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_15)->SetDirection(::vl::presentation::compositions::GuiStackComposition::Direction::Horizontal); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_15)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(0); __vwsn_temp__.top = static_cast<::vl::vint>(0); __vwsn_temp__.right = static_cast<::vl::vint>(0); __vwsn_temp__.bottom = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_15)->SetMinSizeLimitation(::vl::presentation::compositions::GuiGraphicsComposition::MinSizeLimitation::LimitToElementAndChildren); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_14)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_15)); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_13)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_14)); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_12)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_13)); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_12)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this->self)->GetContainerComposition())->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_0)); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_6.Obj())->SetImage(::vl::__vwsn::This(this->self)->GetIcon(::vl::__vwsn::This(this->ViewModel.Obj())->GetIcon())); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_10)->SetText(::vl::__vwsn::This(this->ViewModel.Obj())->GetText()); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_15)->SetItemSource(::vl::Ptr<::vl::reflection::description::IValueEnumerable>(::vl::__vwsn::UnboxCollection<::vl::reflection::description::IValueReadonlyList>(::vl::__vwsn::This(this->ViewModel.Obj())->GetButtons()))); + } + { + ::vl::__vwsn::This(this->self)->SetText(::vl::__vwsn::This(this->ViewModel.Obj())->GetTitle()); + } + } + + MessageBoxWindowConstructor::MessageBoxWindowConstructor() + : self(static_cast<::gaclib_controls::MessageBoxWindow*>(nullptr)) + , ViewModel(::vl::Ptr<::vl::presentation::IMessageBoxDialogViewModel>()) + , __vwsn_precompile_0(static_cast<::vl::presentation::compositions::GuiTableComposition*>(nullptr)) + , __vwsn_precompile_1(static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr)) + , __vwsn_precompile_2(static_cast<::vl::presentation::compositions::GuiTableComposition*>(nullptr)) + , __vwsn_precompile_3(static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr)) + , __vwsn_precompile_4(::vl::Ptr<::vl::presentation::elements::GuiSolidBackgroundElement>()) + , __vwsn_precompile_5(static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr)) + , __vwsn_precompile_6(::vl::Ptr<::vl::presentation::elements::GuiImageFrameElement>()) + , __vwsn_precompile_7(static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr)) + , __vwsn_precompile_8(static_cast<::vl::presentation::compositions::GuiTableComposition*>(nullptr)) + , __vwsn_precompile_9(static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr)) + , __vwsn_precompile_10(static_cast<::vl::presentation::controls::GuiLabel*>(nullptr)) + , __vwsn_precompile_11(static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr)) + , __vwsn_precompile_12(static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr)) + , __vwsn_precompile_13(static_cast<::vl::presentation::compositions::GuiTableComposition*>(nullptr)) + , __vwsn_precompile_14(static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr)) + , __vwsn_precompile_15(static_cast<::vl::presentation::compositions::GuiRepeatStackComposition*>(nullptr)) + { + } + +/*********************************************************************** +Class (::gaclib_controls::MessageBoxWindow) +***********************************************************************/ + + ::vl::Ptr<::vl::presentation::INativeImage> MessageBoxWindow::GetIcon(::vl::presentation::INativeDialogService::MessageBoxIcons icon) + { + auto iconUri = ::vl::WString::Unmanaged(L"Images/None"); + { + auto __vwsn_switch_2 = ::vl::__vwsn::This(this->GetViewModel().Obj())->GetIcon(); + if ((__vwsn_switch_2 == ::vl::presentation::INativeDialogService::MessageBoxIcons::IconError)) + { + (iconUri = ::vl::WString::Unmanaged(L"Images/Error")); + } + else if ((__vwsn_switch_2 == ::vl::presentation::INativeDialogService::MessageBoxIcons::IconQuestion)) + { + (iconUri = ::vl::WString::Unmanaged(L"Images/Question")); + } + else if ((__vwsn_switch_2 == ::vl::presentation::INativeDialogService::MessageBoxIcons::IconWarning)) + { + (iconUri = ::vl::WString::Unmanaged(L"Images/Warning")); + } + else if ((__vwsn_switch_2 == ::vl::presentation::INativeDialogService::MessageBoxIcons::IconInformation)) + { + (iconUri = ::vl::WString::Unmanaged(L"Images/Information")); + } + } + return ::vl::__vwsn::This(::vl::__vwsn::Ensure(::vl::__vwsn::SharedPtrCast<::vl::presentation::GuiImageData>(::vl::__vwsn::This(this->self)->ResolveResource(::vl::WString::Unmanaged(L"res"), iconUri, true).Obj())).Obj())->GetImage(); + } + + ::vl::Ptr<::vl::presentation::IMessageBoxDialogViewModel> MessageBoxWindow::GetViewModel() + { + return this->__vwsn_parameter_ViewModel; + } + + MessageBoxWindow::MessageBoxWindow(::vl::Ptr<::vl::presentation::IMessageBoxDialogViewModel> __vwsn_ctor_parameter_ViewModel) + : ::vl::presentation::controls::GuiWindow(::vl::presentation::theme::ThemeName::Window) + , __vwsn_parameter_ViewModel(::vl::Ptr<::vl::presentation::IMessageBoxDialogViewModel>()) + { + (this->__vwsn_parameter_ViewModel = __vwsn_ctor_parameter_ViewModel); + auto __vwsn_resource_ = ::vl::__vwsn::This(::vl::presentation::GetResourceManager())->GetResourceFromClassName(::vl::WString::Unmanaged(L"gaclib_controls::MessageBoxWindow")); + 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_gaclib_controls_MessageBoxWindow_Initialize(this); + } + + MessageBoxWindow::~MessageBoxWindow() + { + this->FinalizeInstanceRecursively(static_cast<::vl::presentation::controls::GuiControlHost*>(this)); + } + +/*********************************************************************** +Class (::gaclib_controls::SimpleFontDialogWindowConstructor) +***********************************************************************/ + + void SimpleFontDialogWindowConstructor::__vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize(::gaclib_controls::SimpleFontDialogWindow* __vwsn_this_) + { + (this->self = __vwsn_this_); + (this->ViewModel = ::vl::__vwsn::This(__vwsn_this_)->GetViewModel()); + { + ::vl::__vwsn::This(this->self)->SetIconVisible(false); + } + { + ::vl::__vwsn::This(this->self)->SetMinimizedBox(false); + } + { + ::vl::__vwsn::This(this->self)->SetMaximizedBox(false); + } + { + ::vl::__vwsn::This(this->self)->SetShowInTaskBar(false); + } + { + ::vl::__vwsn::This(this->self)->SetClientSize([&](){ ::vl::presentation::Size __vwsn_temp__; __vwsn_temp__.x = static_cast<::vl::vint>(360); __vwsn_temp__.y = static_cast<::vl::vint>(360); return __vwsn_temp__; }()); + } + (this->__vwsn_precompile_0 = new ::vl::presentation::compositions::GuiTableComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetCellPadding(static_cast<::vl::vint>(10)); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetBorderVisible(false); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(0); __vwsn_temp__.top = static_cast<::vl::vint>(0); __vwsn_temp__.right = static_cast<::vl::vint>(0); __vwsn_temp__.bottom = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetMinSizeLimitation(::vl::presentation::compositions::GuiGraphicsComposition::MinSizeLimitation::LimitToElementAndChildren); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetRowsAndColumns(static_cast<::vl::vint>(3), static_cast<::vl::vint>(3)); + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetRowOption(static_cast<::vl::vint>(0), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Percentage; __vwsn_temp__.percentage = static_cast(1.0); return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetRowOption(static_cast<::vl::vint>(1), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetRowOption(static_cast<::vl::vint>(2), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetColumnOption(static_cast<::vl::vint>(0), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Percentage; __vwsn_temp__.percentage = static_cast(1.0); return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetColumnOption(static_cast<::vl::vint>(1), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetColumnOption(static_cast<::vl::vint>(2), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + } + (this->__vwsn_precompile_1 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_1)->SetSite(static_cast<::vl::vint>(0), static_cast<::vl::vint>(0), static_cast<::vl::vint>(1), static_cast<::vl::vint>(3)); + } + (this->__vwsn_precompile_2 = new ::vl::presentation::compositions::GuiTableComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_2)->SetCellPadding(static_cast<::vl::vint>(10)); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_2)->SetBorderVisible(false); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_2)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(0); __vwsn_temp__.top = static_cast<::vl::vint>(10); __vwsn_temp__.right = static_cast<::vl::vint>(0); __vwsn_temp__.bottom = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_2)->SetMinSizeLimitation(::vl::presentation::compositions::GuiGraphicsComposition::MinSizeLimitation::LimitToElementAndChildren); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_2)->SetRowsAndColumns(static_cast<::vl::vint>(1), static_cast<::vl::vint>(2)); + ::vl::__vwsn::This(this->__vwsn_precompile_2)->SetRowOption(static_cast<::vl::vint>(0), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Percentage; __vwsn_temp__.percentage = static_cast(1.0); return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_2)->SetColumnOption(static_cast<::vl::vint>(0), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Percentage; __vwsn_temp__.percentage = static_cast(0.5); return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_2)->SetColumnOption(static_cast<::vl::vint>(1), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Percentage; __vwsn_temp__.percentage = static_cast(0.5); return __vwsn_temp__; }()); + } + (this->__vwsn_precompile_3 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_3)->SetSite(static_cast<::vl::vint>(0), static_cast<::vl::vint>(0), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1)); + } + (this->nameControl = new ::gaclib_controls::FontNameControl(::vl::Ptr<::vl::presentation::ICommonFontDialogViewModel>(this->ViewModel))); + (this->__vwsn_precompile_4 = ::vl::__vwsn::This(this->nameControl)->GetBoundsComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_4)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(0); __vwsn_temp__.top = static_cast<::vl::vint>(0); __vwsn_temp__.right = static_cast<::vl::vint>(0); __vwsn_temp__.bottom = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_3)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this->nameControl)->GetBoundsComposition())); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_2)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_3)); + } + (this->__vwsn_precompile_5 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_5)->SetSite(static_cast<::vl::vint>(0), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1)); + } + (this->sizeControl = new ::gaclib_controls::FontSizeControl()); + (this->__vwsn_precompile_6 = ::vl::__vwsn::This(this->sizeControl)->GetBoundsComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_6)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(0); __vwsn_temp__.top = static_cast<::vl::vint>(0); __vwsn_temp__.right = static_cast<::vl::vint>(0); __vwsn_temp__.bottom = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_5)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this->sizeControl)->GetBoundsComposition())); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_2)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_5)); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_1)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_2)); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_1)); + } + (this->__vwsn_precompile_7 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_7)->SetPreferredMinSize([&](){ ::vl::presentation::Size __vwsn_temp__; __vwsn_temp__.y = static_cast<::vl::vint>(48); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_7)->SetSite(static_cast<::vl::vint>(1), static_cast<::vl::vint>(0), static_cast<::vl::vint>(1), static_cast<::vl::vint>(3)); + } + { + (this->__vwsn_precompile_8 = new ::vl::presentation::controls::GuiControl(::vl::presentation::theme::ThemeName::GroupBox)); + } + (this->__vwsn_precompile_13 = ::vl::__vwsn::This(this->__vwsn_precompile_8)->GetBoundsComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_13)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(0); __vwsn_temp__.top = static_cast<::vl::vint>(0); __vwsn_temp__.right = static_cast<::vl::vint>(0); __vwsn_temp__.bottom = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + } + (this->__vwsn_precompile_9 = new ::vl::presentation::compositions::GuiTableComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_9)->SetBorderVisible(false); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_9)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(0); __vwsn_temp__.top = static_cast<::vl::vint>(0); __vwsn_temp__.right = static_cast<::vl::vint>(0); __vwsn_temp__.bottom = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_9)->SetMinSizeLimitation(::vl::presentation::compositions::GuiGraphicsComposition::MinSizeLimitation::LimitToElementAndChildren); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_9)->SetRowsAndColumns(static_cast<::vl::vint>(3), static_cast<::vl::vint>(3)); + ::vl::__vwsn::This(this->__vwsn_precompile_9)->SetRowOption(static_cast<::vl::vint>(0), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Percentage; __vwsn_temp__.percentage = static_cast(1.0); return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_9)->SetRowOption(static_cast<::vl::vint>(1), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_9)->SetRowOption(static_cast<::vl::vint>(2), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Percentage; __vwsn_temp__.percentage = static_cast(1.0); return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_9)->SetColumnOption(static_cast<::vl::vint>(0), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Percentage; __vwsn_temp__.percentage = static_cast(1.0); return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_9)->SetColumnOption(static_cast<::vl::vint>(1), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(this->__vwsn_precompile_9)->SetColumnOption(static_cast<::vl::vint>(2), [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Percentage; __vwsn_temp__.percentage = static_cast(1.0); return __vwsn_temp__; }()); + } + (this->__vwsn_precompile_10 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_10)->SetSite(static_cast<::vl::vint>(1), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1)); + } + { + (this->__vwsn_precompile_11 = new ::vl::presentation::controls::GuiLabel(::vl::presentation::theme::ThemeName::Label)); + } + (this->__vwsn_precompile_12 = ::vl::__vwsn::This(this->__vwsn_precompile_11)->GetBoundsComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_12)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(0); __vwsn_temp__.top = static_cast<::vl::vint>(0); __vwsn_temp__.right = static_cast<::vl::vint>(0); __vwsn_temp__.bottom = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_11)->SetText(::vl::WString::Unmanaged(L"ABCxyz")); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_10)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this->__vwsn_precompile_11)->GetBoundsComposition())); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_9)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_10)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this->__vwsn_precompile_8)->GetContainerComposition())->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_9)); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_7)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this->__vwsn_precompile_8)->GetBoundsComposition())); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_7)); + } + (this->__vwsn_precompile_14 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_14)->SetSite(static_cast<::vl::vint>(2), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1)); + } + { + (this->__vwsn_precompile_15 = new ::vl::presentation::controls::GuiButton(::vl::presentation::theme::ThemeName::Button)); + } + (this->__vwsn_precompile_16 = ::vl::__vwsn::This(this->__vwsn_precompile_15)->GetBoundsComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_16)->SetPreferredMinSize([&](){ ::vl::presentation::Size __vwsn_temp__; __vwsn_temp__.x = static_cast<::vl::vint>(80); __vwsn_temp__.y = static_cast<::vl::vint>(24); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_16)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(0); __vwsn_temp__.top = static_cast<::vl::vint>(0); __vwsn_temp__.right = static_cast<::vl::vint>(0); __vwsn_temp__.bottom = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_15)->SetAlt(::vl::WString::Unmanaged(L"O")); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_14)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this->__vwsn_precompile_15)->GetBoundsComposition())); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_14)); + } + (this->__vwsn_precompile_17 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_17)->SetSite(static_cast<::vl::vint>(2), static_cast<::vl::vint>(2), static_cast<::vl::vint>(1), static_cast<::vl::vint>(1)); + } + { + (this->__vwsn_precompile_18 = new ::vl::presentation::controls::GuiButton(::vl::presentation::theme::ThemeName::Button)); + } + (this->__vwsn_precompile_19 = ::vl::__vwsn::This(this->__vwsn_precompile_18)->GetBoundsComposition()); + { + ::vl::__vwsn::This(this->__vwsn_precompile_19)->SetPreferredMinSize([&](){ ::vl::presentation::Size __vwsn_temp__; __vwsn_temp__.x = static_cast<::vl::vint>(80); __vwsn_temp__.y = static_cast<::vl::vint>(24); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_19)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(0); __vwsn_temp__.top = static_cast<::vl::vint>(0); __vwsn_temp__.right = static_cast<::vl::vint>(0); __vwsn_temp__.bottom = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_18)->SetAlt(::vl::WString::Unmanaged(L"C")); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_17)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this->__vwsn_precompile_18)->GetBoundsComposition())); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_17)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this->self)->GetContainerComposition())->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_0)); + } + { + auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc48_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->ValueChanged, vl::Func(::vl_workflow_global::__vwsnf76_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_(this))); + ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(__vwsn_created_subscription_); + } + { + auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc49_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(__vwsn_this_, this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->ValueChanged, vl::Func(::vl_workflow_global::__vwsnf77_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_(this))); + ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(__vwsn_created_subscription_); + } + { + auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc50_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(__vwsn_this_, this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->ValueChanged, vl::Func(::vl_workflow_global::__vwsnf78_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_(this))); + ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(__vwsn_created_subscription_); + } + { + auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc51_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->ValueChanged, vl::Func(::vl_workflow_global::__vwsnf79_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_(this))); + ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(__vwsn_created_subscription_); + } + { + auto __vwsn_event_handler_ = vl::Func(::vl_workflow_global::__vwsnf80_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(this->__vwsn_precompile_15)->Clicked, __vwsn_event_handler_); + } + { + auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc52_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(__vwsn_this_, this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->ValueChanged, vl::Func(::vl_workflow_global::__vwsnf81_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_(this))); + ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(__vwsn_created_subscription_); + } + { + auto __vwsn_event_handler_ = vl::Func(::vl_workflow_global::__vwsnf82_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(this->__vwsn_precompile_18)->Clicked, __vwsn_event_handler_); + } + { + auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc53_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(__vwsn_this_, this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->ValueChanged, vl::Func(::vl_workflow_global::__vwsnf83_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_(this))); + ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(__vwsn_created_subscription_); + } + { + auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc54_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->ValueChanged, vl::Func(::vl_workflow_global::__vwsnf84_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_(this))); + ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(__vwsn_created_subscription_); + } + } + + SimpleFontDialogWindowConstructor::SimpleFontDialogWindowConstructor() + : self(static_cast<::gaclib_controls::SimpleFontDialogWindow*>(nullptr)) + , ViewModel(::vl::Ptr<::vl::presentation::ISimpleFontDialogViewModel>()) + , nameControl(static_cast<::gaclib_controls::FontNameControl*>(nullptr)) + , sizeControl(static_cast<::gaclib_controls::FontSizeControl*>(nullptr)) + , __vwsn_precompile_0(static_cast<::vl::presentation::compositions::GuiTableComposition*>(nullptr)) + , __vwsn_precompile_1(static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr)) + , __vwsn_precompile_2(static_cast<::vl::presentation::compositions::GuiTableComposition*>(nullptr)) + , __vwsn_precompile_3(static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr)) + , __vwsn_precompile_4(static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr)) + , __vwsn_precompile_5(static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr)) + , __vwsn_precompile_6(static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr)) + , __vwsn_precompile_7(static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr)) + , __vwsn_precompile_8(static_cast<::vl::presentation::controls::GuiControl*>(nullptr)) + , __vwsn_precompile_9(static_cast<::vl::presentation::compositions::GuiTableComposition*>(nullptr)) + , __vwsn_precompile_10(static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr)) + , __vwsn_precompile_11(static_cast<::vl::presentation::controls::GuiLabel*>(nullptr)) + , __vwsn_precompile_12(static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr)) + , __vwsn_precompile_13(static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr)) + , __vwsn_precompile_14(static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr)) + , __vwsn_precompile_15(static_cast<::vl::presentation::controls::GuiButton*>(nullptr)) + , __vwsn_precompile_16(static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr)) + , __vwsn_precompile_17(static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr)) + , __vwsn_precompile_18(static_cast<::vl::presentation::controls::GuiButton*>(nullptr)) + , __vwsn_precompile_19(static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr)) + { + } + +/*********************************************************************** +Class (::gaclib_controls::SimpleFontDialogWindow) +***********************************************************************/ + + ::vl::Ptr<::gaclib_controls::IDialogStringsStrings> SimpleFontDialogWindow::GetStrings() + { + return this->__vwsn_prop_Strings; + } + void SimpleFontDialogWindow::SetStrings(::vl::Ptr<::gaclib_controls::IDialogStringsStrings> __vwsn_value_) + { + if ((this->__vwsn_prop_Strings.Obj() != __vwsn_value_.Obj())) + { + (this->__vwsn_prop_Strings = __vwsn_value_); + ::vl::__vwsn::EventInvoke(this->StringsChanged)(); + } + } + + ::vl::Ptr<::vl::presentation::ISimpleFontDialogViewModel> SimpleFontDialogWindow::GetViewModel() + { + return this->__vwsn_parameter_ViewModel; + } + + SimpleFontDialogWindow::SimpleFontDialogWindow(::vl::Ptr<::vl::presentation::ISimpleFontDialogViewModel> __vwsn_ctor_parameter_ViewModel) + : ::vl::presentation::controls::GuiWindow(::vl::presentation::theme::ThemeName::Window) + , __vwsn_prop_Strings(::gaclib_controls::DialogStrings::Get(::vl::__vwsn::Parse<::vl::Locale>(::vl::WString::Unmanaged(L"en-US")))) + , __vwsn_parameter_ViewModel(::vl::Ptr<::vl::presentation::ISimpleFontDialogViewModel>()) + { + (this->__vwsn_parameter_ViewModel = __vwsn_ctor_parameter_ViewModel); + auto __vwsn_resource_ = ::vl::__vwsn::This(::vl::presentation::GetResourceManager())->GetResourceFromClassName(::vl::WString::Unmanaged(L"gaclib_controls::SimpleFontDialogWindow")); + 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_gaclib_controls_SimpleFontDialogWindow_Initialize(this); + this->__vwsn_instance_ctor_(); + } + + void SimpleFontDialogWindow::__vwsn_instance_ctor_() + { + ::vl::__vwsn::This(this->nameControl)->InitValue(::vl::__vwsn::This(this->GetViewModel().Obj())->GetFontFamily()); + ::vl::__vwsn::This(this->sizeControl)->InitValue(::vl::__vwsn::This(this->GetViewModel().Obj())->GetFontSize()); + } + + SimpleFontDialogWindow::~SimpleFontDialogWindow() + { + 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 + + +/*********************************************************************** +.\UTILITIES\FAKESERVICES\DIALOGS\SOURCE\GUIFAKEDIALOGSERVICEUIRESOURCE.CPP +***********************************************************************/ + +namespace vl +{ + namespace presentation + { + namespace user_resource + { + using namespace collections; + using namespace stream; + using namespace controls; + + class GuiFakeDialogServiceUIResourceReader + { + public: + static const vint parserBufferLength = 31816; // 31816 bytes before compressing + static const vint parserBufferBlock = 1024; + static const vint parserBufferRemain = 72; + static const vint parserBufferRows = 32; + static const char* parserBuffer[32]; + + static void ReadToStream(vl::stream::MemoryStream& stream) + { + DecompressStream(parserBuffer, false, parserBufferRows, parserBufferBlock, parserBufferRemain, stream); + } + }; + + const char* GuiFakeDialogServiceUIResourceReader::parserBuffer[] = { + "\x60\x00\x00\x00\x00\x00\x00\x00\x60\x00\x00\x00\x3C\x52\x65\x73\x6F\x75\x72\x63\x65\x4D\x65\x74\x61\x64\x61\x74\x61\x20\x4E\x61\x6D\x65\x3D\x22\x47\x75\x69\x46\x61\x6B\x65\x44\x69\x61\x6C\x6F\x67\x53\x65\x72\x76\x69\x63\x65\x55\x49\x22\x20\x56\x65\x72\x73\x69\x6F\x6E\x3D\x22\x31\x2E\x30\x22\x3E\x3C\x44\x65\x70\x65\x6E\x64\x65\x6E\x63\x69\x65\x73\x2F\x3E\x3C\x2F\x52\x65\x73\x6F\x75\x72\x63\x65\x4D\x65\x74\x61\x64\x61\x74\x61\x3E\x05\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x4C\x6F\x63\x61\x6C\x69\x7A\x65\x64\x53\x74\x72\x69\x6E\x67\x73\x08\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x49\x6E\x73\x74\x61\x6E\x63\x65\x04\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x54\x65\x78\x74\x05\x00\x00\x00\x00\x00\x00\x00\x05\x00\x00\x00\x49\x6D\x61\x67\x65\x0F\x00\x00\x00\x00\x00\x00\x00\x0F\x00\x00\x00\x43\x6C\x61\x73\x73\x4E\x61\x6D\x65\x52\x65\x63\x6F\x72\x64\x00\x00\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x15\x00\x00\x00\x00\x00\x00\x00\x15\x00\x00\x00\x43\x6F\x6C\x6F\x72\x44\x69\x61\x6C\x6F\x67\x43\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x14\x00\x00\x00\x00\x00\x00\x00\x14\x00\x00\x00\x46\x69\x6C\x65\x44\x69\x61\x6C\x6F\x67\x43\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x14\x00\x00\x00\x00\x00\x00\x00\x14\x00\x00\x00\x46\x6F\x6E\x74\x44\x69\x61\x6C\x6F\x67\x43\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0C\x00\x00\x00\x00\x00\x00\x00\x0C\x00\x00\x00\x47\x61\x63\x47\x65\x6E\x43\x6F\x6E\x66\x69\x67\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x43\x70\x70\x00\x00\x00\x00\x00\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x0D\x00\x00\x00\x00\x00\x00\x00\x0D\x00\x00\x00\x43\x70\x70\x43\x6F\x6D\x70\x72\x65\x73\x73\x65\x64\x1A\x00\x00\x00\x00\x00\x00\x00\x1A\x00\x00\x00\x47\x75\x69\x46\x61\x6B\x65\x44\x69\x61\x6C\x6F\x67\x53\x65\x72\x76\x69\x63\x65\x55\x49\x2E\x63\x70\x70\x02\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x4E\x61\x6D\x65\x16\x00\x00\x00\x00\x00\x00\x00\x16\x00\x00\x00\x47\x75\x69\x46\x61\x6B\x65\x44\x69\x61\x6C\x6F\x67\x53\x65\x72\x76\x69\x63\x65\x55\x49\x02\x00\x00\x00\x00\x00\x00\x00\x0D\x00\x00\x00\x00\x00\x00\x00\x0D\x00\x00\x00\x4E\x6F\x72\x6D\x61\x6C\x49\x6E\x63\x6C\x75\x64\x65\x13\x00\x00\x00\x00\x00\x00\x00\x13\x00\x00\x00\x2E\x2E\x2F\x2E\x2E\x2F\x2E\x2E\x2F\x2E\x2E\x2F\x47\x61\x63\x55\x49\x2E\x68\x02\x00\x00\x00\x00\x00\x00\x00\x11\x00\x00\x00\x00\x00\x00\x00\x11\x00\x00\x00\x52\x65\x66\x6C\x65\x63\x74\x69\x6F\x6E\x49\x6E\x63\x6C\x75\x64\x65\x3C\x00\x00\x00\x00\x00\x00\x00\x3C\x00\x00\x00\x2E\x2E\x2F\x2E\x2E\x2F\x2E\x2E\x2F\x2E\x2E\x2F\x52\x65\x66\x6C\x65\x63\x74\x69\x6F\x6E\x2F\x54\x79\x70\x65\x44\x65\x73\x63\x72\x69\x70\x74\x6F\x72\x73\x2F\x47\x75\x69\x52\x65\x66\x6C\x65\x63\x74\x69\x6F\x6E\x50\x6C\x75\x67\x69\x6E\x2E\x68\x02\x00\x00\x00\x00\x00\x00\x00\x0C\x00\x00\x00\x00\x00\x00\x00\x0C\x00\x00\x00\x53\x6F\x75\x72\x63\x65\x46\x6F\x6C\x64\x65\x72\x06\x00\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x53\x6F\x75\x72\x63\x65\x00\x00\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x49\x6D\x61\x67\x65\x73\x00\x00\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x05\x00\x00\x00\x45\x72\x72\x6F\x72\xDA\x14\x00\x00\x89\x50\x4E\x47\x0D\x0A\x1A\x0A\x00\x00\x00\x0D\x49\x48\x44\x52\x00\x00\x00\xF0\x00\x00\x00\xF0\x08\x06\x00\x00\x00\x3E\x55\xE9\x92\x00\x00\x00\x06\x62\x4B\x47\x44\x00\xFF\x00\xFF\x00\xFF\xA0\xBD\xA7\x93\x00\x00\x14\x8F\x49\x44\x41\x54\x78\x9C\xED\x9D\x79\xB0\x9F\x55\x79\xC7\x3F\xF7\xE6\x26\x21\x85\x34\x81\x84\x80\x20\x92\xB0\x59\x51\xF6\xAD\x42\x14\xA4\x99\x5A\xA6\x82\x6C\x42\x6A\x2D\xAB\x20\x8B\x0B\xE0\x42\xC7\x5A\x44\x16\xC5\xA5\x15\x6C\x1D\xA1", + "\xAD\x54\x10\x24\x41\xDB\x8E\x55\x2C\x65\x06\x87\x2A\xA0\x6C\xB2\x86\x2D\x21\x09\x81\x11\x59\xB2\x10\x48\x02\xDC\x24\xB7\x7F\x9C\xDF\x6F\x72\x8D\x97\xBB\xFD\x9E\xE7\x39\xEF\x79\xDF\xEF\x67\xE6\x99\x7B\xE7\xE6\xE6\xDC\xF3\x3C\xE7\x79\xDE\xDF\x79\xCF\x79\xCE\x73\x40\x08\x21\x84\x10\x42\x08\x21\x84\x10\x42\x08\x21\x84\x10\x42\x08\x21\x84\x10\x42\x08\x21\x84\x10\x42\x08\x21\x84\x10\x42\x08\x21\x84\x10\x42\x08\x21\x84\x10\x42\x08\x21\x84\x10\x42\x88\xBC\x74\xE5\xEE\x80\x18\x36\x53\x80\xE9\x2D\xD9\x1E\x78\x4B\xEB\x67\x53\x80\xA9\xAD\xAF\xE3\x81\x49\xAD\xDF\x1F\x07\x6C\xDA\xFA\x7E\x15\xF0\x46\xEB\xFB\x15\xC0\xEB\xC0\xD2\x8D\xE4\x39\x60\x71\x3F\x59\xE6\xA5\x88\xB0\x43\x01\x5C\x3D\xA6\x01\xBB\xB7\x64\xB7\xD6\xD7\x9D\x81\x89\xC1\xFD\x58\x09\xCC\x07\x1E\x6E\xC9\x43\x2D\x79\x21\xB8\x1F\x62\x10\x14\xC0\x79\x19\x03\xFC\x09\x70\x10\x30\xB3\x25\x33\xB2\xF6\x68\x68\x9E\x03\xEE\x03\x6E\x07\xEE\x00\xEE\x66\xC3\xA7\xBB\x08\x46\x01\x1C\xCF\x2E\xC0\x61\xC0\x5F\x00\xEF\x61\xC3\x34\xB7\x54\x5E\x05\x7E\x01\xFC\x0F\x70\x33\xB0\x20\x6F\x77\x84\xB0\x65\x0C\xF0\x3E\xE0\x9F\x49\xCE\xDD\x57\x73\x99\x0F\x7C\x0B\x38\x18\xE8\x36\xB0\x9F\x10\xE1\x74\x93\xA6\xC3\x57\x00\xBF\x25\x7F\x50\xE5\x92\x17\x81\x6B\x81\x59\x28\x98\x45\x01\xBC\x0D\xB8\x10\x58\x42\xFE\xE0\xA9\x9A\x3C\x0D\x7C\x11\x78\xEB\x68\x8D\x2B\x84\x07\x3D\xC0\x51\xC0\x4D\xC0\x3A\xF2\x07\x4A\xD5\x65\x2D\xF0\x53\xE0\x48\xD2\xEB\x85\x10\x59\xD8\x0C\x38\x1D\x78\x82\xFC\x41\x51\xAA\x2C\x02\xCE\x07\x26\x8F\xD0\xF6\x42\x8C\x9A\x6D\x81\xAF\x02\xCB\xC9\x1F\x00\x75\x91\xE5\xC0\x65\xA4\xE4\x14\x21\x5C\xD8\x92\xE4\x64\xAB\xC9\xEF\xF0\x75\x95\xD7\x81\xAB\x50\x20\x0B\x43\xA6\x90\x16\xA6\x56\x92\xDF\xC1\x9B\x22\xAB\x48\x2B\xF8\x5B\x0D\x3D\x3C\x42\x0C\xCC\x78\xE0\x73\xC0\xCB\xE4\x77\xE8\xA6\xCA\x0A\xE0\x33\xA4\xBC\x6E\x21\x86\xCD\xE1\x34\x23\xE9\xA2\x14\x99\x0F\x7C\x68\xD0\x11\x13\x02\x78\x3B\x70\x2B\xF9\x1D\x56\x32\xB0\xFC\x2F\xE9\x60\x87\x10\xBF\x47\x0F\x69\x3B\x63\x0D\xF9\x9D\x54\x32\xB8\xAC\x21\xAD\x49\x68\x5A\x2D\x00\xD8\x13\xB8\x97\xFC\x8E\x29\x19\x99\x3C\x08\xEC\x3F\xC0\x78\x8A\x86\x30\x16\xB8\x84\x94\x19\x94\xDB\x19\x25\xA3\x93\x5E\xE0\x4B\xA4\x19\x94\x68\x10\x33\x48\xE7\x59\x73\x3B\xA0\xC4\x46\xEE\x42\xEF\xC6\x8D\xE1\x54\xE0\x15\xF2\x3B\x9D\xC4\x56\x56\x02\x27\xD1\x30\x9A\x74\xA0\x7F\x02\xF0\x1D\xE0\xC4\xDC\x1D\xE9\x80\x35\xC0\x53\xA4\x9A\x55\x8B\x5A\x5F\x9F\x67\x43\x5D\xAB\x97\x48\x7B\xA7\x90\xAA\x64\xAC\x6A\x7D\xBF\x29\x1B\x16\x7D\x26\xB3\xA1\x86\xD6\x14\x52\xB2\xC4\x0C\x52\xAD\xAD\x19\xC0\x0E\x24\x5B\x95\xCA\xD5\xC0\xD9\xC0\x6B\xB9\x3B\x12\x41\x53\x02\x78\x06\xF0\x1F\xC0\x5E\xB9\x3B\x32\x02\x96\x01\x77\x02\xBF\x21\xD5\xA4\x7A\x90\x14\xBC\xEB\x9D\xFF\xEE\x18\x60\x47\x60\x0F\x52\x4D\xAE\xBD\x81\x03\x81\xCD\x9D\xFF\xAE\x25\xF7\x01\xC7\x90\x8E\x30\x8A\xC2\x79\x3F\xE9\x93\x29\xF7\x14\x6F\x28\x79\x11\xF8\x01\xF0\x51\x60\x57\xAA\xF5\x70\xED\x22\xF5\xE9\x34\xE0\x06\xCA\xB1\xE7\x2C\x0F\x63\x88\x38\xCE\xA4\xDA\xAB\xCC\x0F\x91\x56\x51\x0F\xA0\xAC\xB3\xB1\x63\x80\x3F\x05\x2E\x22\xCD\x0E\x72\xDB\xF1\xCD\xA4\x97\x74\xE4\x53\x14\x46\x37\xF0\x75\xF2\x3B\xD0\x40\xF2\x28\x70\x01\xA9\x1A\x65\x5D\xD8\x95\x94\x5C\xF1\x18\xF9\xED\x3B\x90\x5C\x46\xB5\x66\x34\x62\x10\x26\x00\x3F\x22\xBF\xD3\xF4\x97\x55\xC0\xF7\x48\xEF\x92\x75\x67\x26\x70\x0D\xD5\x3B\x76\x39\x17\xD8\xC4\x51\x6F\x61\xC0\x44\xE0\xFF\xC8\xEF\x2C\x6D\x59\x04\x9C\xC3\x86\xDB\x12\x9A\xC4\x64\xE0\x3C\xD2\x4A\x79\xEE\x71\x68\xCB\xCF\x49\x95\x54\x44\x05\xD9\x1C\xF8\x35\xF9\x9D\xA4\x8F\x54\xEC\xFC\x38\xCA\x7A\xAF\xF5\xA2\x07\x98\x4D\x75\xD2\x55\xEF\x44\x25\x7C\x2A\xC7\x34\xE0\x7E\xF2\x3B\xC7\x43\xA4\x63\x6F\x7A\xDF\x1A\x98\x59\xC0\x3D\xE4\x1F\xA7\xDF\x90\x2A\xAC\x88\x0A\xB0\x25\x30\x8F\xBC\x0E\x31\x8F\x54\x65\x51\x81\x3B\x34\x5D\xC0\xD1\xE4\x5F\xF0\x7A\x98\x94\xD0\x22\x32\x32\x89\xBC\x53\xB3\x65\xA4\x63\x88\x3A\xDA\x36\x72\x7A\x48\x5B\x3C\x2F\x92\x6F\xFC\x1E\x00\xB6\xF0\x56\x54\x0C\xCC\x44\xF2\xBD\xF3\xAE\x23\x5D\x95\xA2\xC1\xEF\x9C\xA9\xC0\x95\xA4\x0C\xB3\x1C\x63\x79\x27\x5A\xD8\x0A\x67\x02\x70\x1B\x79\x06\x7C\x1E\xCD\xD8\x0E\x8A\x66\x26\xF9\xA6\xD5\xB7\xA2\x2D\xA6\x30\xBA\xC9\xB3\xCF\xDB\x3E\x7B\x3A\xDE\x5F\xC5\xC6\x32\x9E\x74\x46\xBB\x97\xF8\xF1\x9D\x83\xD6\x30\x42", + "\xF8\x06\xF1\x83\xBB\x88\x74\x87\xAF\x88\x61\x7F\x52\x21\xBB\xE8\x71\xFE\x72\x84\x72\x4D\xE6\x4C\xE2\x07\xF5\xDF\xD0\x3B\x52\x0E\x26\x92\xB2\xD7\xA2\xC7\xFB\xB4\x00\xDD\x1A\xC9\xFB\x89\x3D\x98\xB0\x1A\x38\x21\x44\x33\x31\x18\xA7\x10\x5B\x6C\xB0\x17\xF8\xB3\x10\xCD\x1A\xC4\xF6\xC4\x6E\x37\x2C\x01\xF6\x0B\xD1\x4C\x0C\x87\xBD\x80\x85\xC4\x8D\xFF\x52\xD2\x19\x72\x61\xC0\x04\x52\xE6\x4C\xD4\xE0\xDD\x86\xB6\x87\xAA\xC8\x54\xE0\x97\xC4\xF9\xC1\xDD\x68\x65\xDA\x84\xAB\x89\x1B\x34\x9D\x58\xA9\x36\xE3\x81\xEB\x88\xF3\x87\x6B\x63\xD4\xAA\x2F\xA7\x12\x37\x58\x17\xA1\x6D\x84\x12\xE8\x22\xAD\x16\x47\xF9\x85\xD6\x41\x46\xC9\x8E\xC4\xDC\x08\xB8\x9E\x74\xEC\x4D\x94\xC5\xD9\xC4\x64\x6F\xBD\x82\x4A\xD6\x8E\x98\x1E\xE0\x57\xC4\x04\xEF\x27\x82\x74\x12\xF6\x9C\x4E\x4A\x6B\xF5\xF6\x93\xBB\x49\x17\x01\x88\x61\x72\x31\xFE\x83\xB2\x8E\xB2\x4B\xCC\x8A\xC4\x49\xC4\x04\xF1\x85\x31\xEA\x94\xCF\x7E\xF8\xEF\xF7\xAE\x07\x3E\x16\xA5\x90\x70\xE7\x4C\xFC\xA7\xD3\xBD\xC0\x3E\x51\x0A\x95\x4A\x0F\x31\x5B\x46\x9F\x8D\x52\x48\x84\x71\x0E\xFE\x7E\xF3\x20\x9A\x4A\x0F\xCA\xDF\xE1\x3F\x08\x17\x85\x69\x23\xA2\xB9\x0C\x7F\xFF\x39\x3F\x4C\x9B\xC2\xD8\x05\xFF\x94\xB9\x1B\xD0\x56\x51\x9D\xE9\x02\xBE\x8F\xAF\x0F\xAD\x06\x76\x8A\x52\xA8\x24\x6E\xC5\xD7\xF0\xB7\xA1\xCA\x19\x4D\x60\x13\xFC\x33\xB6\x6E\x0E\xD3\xA6\x10\x8E\xC2\xD7\xE0\x0B\x51\x7A\x64\x93\x98\x4A\xBA\x17\xC9\xD3\xA7\x3E\x10\xA6\x4D\xC5\x19\x07\x3C\x89\x9F\xA1\xD7\xA0\xD5\xC3\x26\xB2\x27\xBE\xC5\xE5\x17\xA0\xE2\x0E\x00\xFC\x2D\xBE\x4F\xCA\x93\xE3\x54\x11\x15\xE3\x6F\xF0\xF5\xAD\xC6\x67\xF0\x4D\x05\x5E\xC6\xCF\xC0\xDF\x8D\x53\x45\x54\x94\x6B\xF0\xF3\xAF\xE5\x34\xFC\xD5\xCC\xF3\x02\xB2\x05\xA4\xAA\x0E\xA2\xD9\x6C\x86\xEF\x2B\xDA\xA5\x71\xAA\x54\x8B\xAD\x49\x97\x7E\x79\x18\xB5\x97\x74\xFD\xA5\x10\x90\xB2\xFB\xDE\xC0\xC7\xD7\x5E\x25\xDD\x0C\xD2\x38\x2E\xC7\xEF\xA9\x78\x61\x9C\x1A\xA2\x10\x2E\xC1\xCF\xDF\xBE\x11\xA8\x47\x25\xD8\x16\xBF\xA4\x8D\x79\x68\xBF\x57\xFC\x21\x9B\xE0\x57\x77\x7A\x35\x69\x46\xD9\x18\xBE\x86\x8F\x21\xD7\xA1\xF2\xAF\xE2\xCD\x79\x37\x7E\x27\x97\x1A\xF3\x2E\x3C\x91\xB4\x7A\xE7\x61\xC4\x6F\x07\xEA\x21\xCA\xE4\x2A\x7C\x7C\x6F\x29\x0D\x29\x3F\x7C\x2E\x3E\x06\x5C\x06\x4C\x09\xD4\x43\x94\xC9\x16\xA4\x60\xF3\xF0\xC1\x4F\x06\xEA\x91\x85\x31\xC0\x53\xF8\x18\xEF\xEC\x40\x3D\x44\xD9\x78\x7D\x88\x2C\x22\x1D\x89\xAD\x2D\x5E\x39\xCF\xF3\xA8\xB9\xE1\x84\x29\x63\xF1\x5B\xD0\xFA\x60\xA0\x1E\xE1\xFC\x0C\x1F\xA3\x1D\x19\xA9\x84\xA8\x05\xC7\xE2\xE3\x8B\x3F\x89\x54\x22\x92\xED\xF0\x29\x95\x73\x2F\x3A\xE3\x2B\x46\x4E\x17\x70\x3F\xF6\xFE\xB8\x96\xE4\xEB\xB5\xE3\x4B\xF8\x3C\xF1\x0E\x8B\x54\x42\xD4\x8A\x23\xF0\xF1\xC9\x2F\x44\x2A\x11\x41\x37\xE9\xBE\x21\x6B\x43\xDD\x1D\xA9\x84\xA8\x1D\x5D\xC0\x7D\xD8\xFB\xE5\x22\x6A\x36\x2B\x3C\x18\x9F\x27\xDD\x71\x91\x4A\x88\x5A\xF2\x61\x7C\x7C\xF3\xC0\x48\x25\xBC\xF9\x36\x3E\x4F\x39\xAD\x3C\x8B\x4E\xE9\x01\x16\x63\xEF\x9F\x97\x07\xEA\xE0\xCA\x18\xE0\x39\xEC\x0D\x74\x4E\xA4\x12\xA2\xD6\x9C\x87\xBD\x7F\x3E\x4B\x7A\x75\x2C\x9E\x43\xB1\x37\xCE\x6A\x60\xF3\x48\x25\x44\xAD\x99\x8C\xCF\xD1\xD6\xF7\x7A\x77\x3C\xE2\x09\x71\x94\x43\x9B\x73\x49\xF9\xD4\xA5\x33\x0E\x98\x0D\xCC\x21\x15\x20\xE8\x6D\xC9\x82\xD6\xCF\x66\x93\xF7\x64\x55\xD5\xFB\x67\xC5\x0A\xE0\x3F\x1D\xDA\x3D\xDA\xA1\xCD\x70\x16\x60\xFF\x64\xAB\xC3\x02\xC1\x31\x0C\x6F\x65\x7E\x49\xEB\x77\xD5\x3F\x5F\x0E\xC6\xDE\x4F\x9F\x08\xD5\xC0\x81\x5D\xB0\x37\xCA\xA3\xA1\x1A\xD8\xD3\x0D\x5C\xC1\xC8\xF5\xBE\x82\x98\x19\x53\xD5\xFB\xE7\x45\x17\x30\x1F\x7B\x7F\xDD\x31\x52\x09\x6B\x3E\x85\xBD\x41\x2E\x08\xD5\xC0\x9E\xD1\x04\x47\x5B\xAE\xC1\x37\x48\xBA\xE9\xAC\x08\xDC\x15\x8E\x7D\x8B\xC0\xE3\x56\xCC\xB3\x42\x35\x30\xE6\x66\xEC\x0D\xF2\x8E\x50\x0D\x6C\x39\x86\xCE\xF5\xF7\x0A\xE2\x4E\x83\xB7\x2D\x25\x4F\xA7\xDF\x85\xBD\xBF\x16\x9B\x1B\x3D\x16\xFB\x95\xBD\x07\x43\x35\xB0\x65\x1C\xE9\x86\x08\x0B\x3B\xDC\x80\xED\x1E\x78\x37\xF0\x3D\xA3\xBE\x2D\xA6\xEC\x82\xE7\xF3\xB0\xF5\xD9\x57\x28\x34\x5F\x61\x5F\xEC\x9F\x66\x17\x46\x2A\x60\xCC\x6C\x6C\x6D\x61\x15\xC4\x96\xC1\xDB\x96\xE3\x0D\xFA\x95\x0B\x8F\x69\xF4\x5E\xA1\x1A\x18\xE1\x71\x5F\xEB\x01\xA1\x1A\xD8\x32\x17\x7B\x7B\x74\x3A\x9D\xB6\x9A\x36\x6F\x2C\x73\x3B\xE8\x53\x6E\x0E\xC2\xDE\x1E\x1F\x0F\xD5\xC0\x88\x1B\xB1", + "\x35\xC2\x8B\xA4\xAC\xAE\x52\xB1\x9A\x3E\x5B\x05\xB1\x57\xF0\xF6\xB5\x74\x2D\x95\x31\xD8\x97\xDC\xB9\x21\x54\x03\x23\x9E\xC5\xD6\x08\xD7\xC7\x76\xDF\x1C\xCF\xBB\x8F\x47\x3A\x9D\xF6\x98\x36\xF7\x97\x35\x23\xE8\x4B\x15\xB1\x9E\x2D\x2D\x89\xED\x7E\xE7\x6C\x8D\xBD\x53\x9C\x1A\xAA\x81\x3D\x9E\x37\xE5\x8D\x24\x88\xBD\x83\xB7\x8F\xB4\x78\x59\x32\x67\x60\x6F\x93\x2D\x43\x35\xE8\x90\x3F\xC7\xDE\x00\x25\x6F\x1F\x81\xDF\x14\xBA\xBF\x0C\x35\x9D\xF6\x9C\x36\xF7\x97\x92\xA7\xD0\x00\xBB\x61\x6F\x93\x43\x3D\x3A\xEA\x95\x14\xB0\x9B\x71\x7B\xCB\x29\x3F\x2D\xED\x9E\x80\xBF\x71\x02\xF0\xEF\x0C\x3C\xAE\xDD\xAD\x7F\x3B\x21\xA0\x1F\x11\xBA\x7A\xF2\x08\xA9\x4C\xB1\x25\xD6\x31\x01\x94\x13\xC0\x77\x02\xEB\x8D\xDB\x8C\xE6\xBF\x82\xFE\xCE\x09\xA4\xF5\x82\xFE\xD3\xE9\x6E\xE0\x6A\x62\x82\x17\x7C\x0E\x06\x44\xD2\x07\xDC\x65\xDC\xA6\x4B\x00\x7B\x61\x5D\xA6\xE4\x4B\xB1\xDD\x77\xC1\x32\x91\x63\x38\xD2\x7E\x27\x8E\x78\xE7\xED\x2F\x8B\x29\x3B\x91\xA3\x8D\xF5\x7E\xB0\xF5\x03\xC1\x95\x95\xD8\x2A\x5F\x72\x7A\x5E\x7F\x2C\x52\x29\x47\x22\xD7\x10\xF3\xCE\x5B\xC7\xB1\x3A\x1E\x5B\xBB\x58\x4F\xC9\xDD\x98\x82\xBD\x53\xEC\x1C\xAA\x81\x2F\x9D\x1C\x66\xA8\xBA\x94\x7E\x98\xA1\x3F\xEF\xC0\xDE\x3E\x93\x43\x35\x18\x25\xFB\x60\xAB\xF4\x2A\xCA\x4E\xE0\xD8\x98\xA8\x95\xE0\x68\xF1\x3E\x29\x15\x4D\x0F\xF6\x7B\xF7\x7B\x5A\x77\xD2\xC3\xE0\x33\x8C\xDB\x5B\x48\xBA\x12\xB2\x2E\xAC\x07\x4E\x26\x39\x7C\x5D\x98\x03\x9C\x42\xF9\x0B\x8D\xFD\x59\x0B\x3C\x6D\xDC\xE6\x74\xE3\xF6\x5C\x02\x78\x7B\xE3\xF6\x16\x1B\xB7\x57\x05\xD6\x93\x1C\xBE\x0E\x41\x3C\x07\xF8\x08\xF5\x7A\xC8\xB6\xB1\xDE\xCF\xB6\xFE\x70\x73\x09\xE0\xAD\x8C\xDB\x5B\x64\xDC\x5E\x55\xA8\x43\x10\xD7\x39\x78\xC1\xFE\xC3\x63\x6B\xE3\xF6\x5C\x02\x78\xAA\x71\x7B\x8B\x8D\xDB\xAB\x12\x25\x07\x71\xDD\x83\x17\xEC\x3F\x3C\xCC\xEF\xAF\xF6\x08\x60\xEB\x4E\x3E\x6F\xDC\x5E\xD5\x28\x31\x88\x9B\x10\xBC\x00\xBF\x33\x6E\xAF\x91\x01\xBC\xD4\xB8\xBD\x2A\x52\x52\x10\x37\x25\x78\xC1\xDE\xF7\xAC\x67\xA7\x2E\x3C\x8E\xED\xD2\xFB\xBE\xB1\xDD\xCF\x4A\x74\xD6\xD4\x48\xE5\x06\xEA\xB5\xA5\x37\x14\x07\x60\x6B\xBF\x22\x2A\xAA\x3E\x83\xAD\xD2\xE6\x2B\x77\x15\xA7\xAA\x41\xDC\xB4\xE0\x85\x54\x12\xD6\xD2\x86\xD6\xDB\x52\x2E\xBC\x80\xAD\xD2\x45\x9D\xA3\x34\xA2\x6A\x41\xDC\xC4\xE0\x05\xFB\x73\xED\xD6\xEF\xD4\x2E\x2C\xC7\x56\xE9\x22\xD2\xCF\x1C\xA8\x4A\x10\x37\x35\x78\x21\xDD\xBF\x65\x69\xCB\x22\xAE\x03\xB2\xAE\x3C\x31\x21\xB6\xFB\x95\x22\x77\x10\x37\x39\x78\x01\xFE\x08\x5B\x7B\x16\x51\xA9\x64\x2D\xB6\x4A\x37\xD9\x81\x20\x5F\xEE\x74\xDD\x72\x9B\x47\xC3\x18\x6C\x6D\xBA\xD6\xBA\x83\x4D\x1F\xA0\x52\xE8\xCB\xF0\x37\xC7\x21\xFF\x68\x24\x9A\x42\xDB\x51\x85\x29\x74\x91\xB7\x0A\x18\xD1\xC8\x29\xB4\x16\xB1\x6C\xC8\x1D\xBC\x0A\xE2\x86\x2E\x62\x69\x1B\xA9\x73\xAA\x12\xBC\x4D\x0F\xE2\x46\x6E\x23\x29\x91\xA3\x33\xAA\x16\xBC\x4D\x0E\xE2\xCA\x27\x72\x78\x2C\x52\x58\xCF\xF3\x8B\xC8\x1F\x35\xA2\x5D\x3D\xF2\xC4\xDC\x1D\x19\x80\xD9\xC0\xF7\x69\x56\x10\x5B\xFB\x9E\xF9\x3B\xB0\x47\x00\xBF\x64\xDC\x9E\xF9\x09\x8E\x8A\x52\xE5\xE0\x6D\xD3\xB4\x20\xB6\xF6\x3D\xEB\xD8\x70\x09\x60\xEB\x13\x1C\x4D\x08\xE0\x12\x82\xB7\x4D\x93\x82\xB8\xF2\x27\xEB\x4A\x08\x60\xF3\x2A\x06\x15\xA3\xA4\xE0\x6D\xD3\x94\x20\xB6\xF6\xBD\x22\x02\xD8\x7A\x9A\x30\xDD\xB8\xBD\x2A\x51\x62\xF0\xB6\x69\x42\x10\x5B\x2F\xA0\x16\x31\x85\xB6\xAE\xA0\x31\xDD\xB8\xBD\xAA\x50\x72\xF0\xB6\xA9\x7B\x10\x4F\x37\x6E\xCF\x7C\x1B\xC9\x23\x80\x17\x1B\xB7\x37\xDD\xB8\xBD\x2A\x50\x87\xE0\x6D\x53\xE7\x20\xDE\xC1\xB8\xBD\x45\xC6\xED\xB9\xB0\x37\xB6\x7B\x67\xAB\xA9\xD7\x81\x06\x15\x76\x2F\x83\x1E\xE0\x35\x6C\x6D\xB4\x47\xA8\x06\xA3\x64\x0B\xEC\x9D\xE3\xED\xA1\x1A\xF8\xA2\xAB\x55\xCA\xE0\x9D\xD8\xDB\x67\x52\xA8\x06\x1D\xB0\x02\x5B\xC5\x8F\x8D\xED\xBE\x1B\xBA\xDC\xAC\x1C\x66\x63\x6B\x97\xA2\x8A\x33\xDE\x8B\xAD\xF2\x17\xC5\x76\xDF\x85\x1C\xD7\x8B\x8E\x41\xD7\x8B\x8E\x96\x4B\xB0\xB5\x8B\xCB\xF5\xA2\x5E\xEF\x2C\x0F\x1B\xB7\xB7\xB7\x71\x7B\x39\x38\x9A\xB8\xBC\xEE\xFE\xA5\x5F\xA3\x4B\xD6\x6E\x0F\x1C\x19\xF4\xB7\x3C\xB1\xF6\xB9\x87\x8C\xDB\x73\xE5\x5C\x6C\x9F\x5E\xCB\x28\x7F\x81\x64\x2E\x31\x9F\x80\x6F\xB6\x98\x14\xB9\x78\x36\xB7\x03\x3B\x55\x81\x6E\xEC\x5F\x03\x3F\x11\xAA\x41\x87\xCC\xC2\xDE\x29\x76\x0D\xD5\xC0\x9E\x88\xE9\xF3\x50\x2B\xC1\x51\x41\x6C\x7D", + "\x29\x58\x34\xBB\x63\x6F\x93\x43\x22\x15\xE8\x94\x2D\xB1\x37\xC0\x69\xA1\x1A\xD8\x63\x7D\xD7\xEC\xC6\x32\xDC\x02\x74\x11\xEF\xC4\x6B\x46\x66\x9A\xCA\x71\x16\xF6\x36\x29\xEE\x54\x9D\xF5\xB9\xE0\x1B\x62\xBB\x6F\x8E\x75\xA9\xA1\xD1\x04\x6F\x1B\xEF\x20\x2E\xA2\x74\xCC\x20\xFC\x10\x5B\x7B\x2C\x0E\xED\xBD\x11\x73\xB0\x35\xC2\x52\xCA\x4E\xE8\xF0\x9A\x42\x8F\x36\x81\xC2\x73\x3A\x5D\xF2\x14\xBA\x07\xFB\xB2\x50\xD7\x7B\x75\xD6\x73\x61\xE8\x4E\xE3\xF6\xB6\x00\xF6\x33\x6E\x33\x92\x7B\x1C\xDA\xBC\x16\x38\x99\xB4\xD2\x3C\x52\xD6\xB7\xFE\xEF\xB5\xA6\x3D\x4A\x78\xE8\x1A\xC5\xBB\xB1\xAF\xC3\x76\x87\x71\x7B\x21\xEC\x83\xFD\x93\xBD\xE4\xFD\x60\xEB\xC4\x00\xAB\xA2\xEB\x1E\xD3\xE9\xE3\x0D\xFA\x95\x8B\x4B\xB1\xF7\xDB\x3D\x43\x35\x30\xA2\x07\x78\x05\x5B\x43\x58\xEF\x2F\x47\x62\x99\xC8\x61\x7D\x63\x82\x65\x10\x2F\xA6\xEC\x44\x8E\x47\xB1\xF5\xD9\x97\x29\xF8\xD5\xEF\x67\xD8\x3F\xCD\x4A\xDE\x4E\xB2\x48\xA5\xF4\x3A\x34\x60\xF5\x4E\x5C\x72\x2A\xE5\x1E\xD8\xFB\xEB\x8F\x43\x35\x30\xE6\x93\xD8\x1B\xE4\xC2\x48\x05\x1C\xE8\xE4\x30\x83\xF7\x89\x9F\x4E\x83\xB8\xF4\xC3\x0C\x1E\xD3\xE7\x33\x43\x35\x30\x66\x67\xEC\x0D\xF2\x58\xA8\x06\xF6\x74\x33\xBA\x20\xBE\x82\x98\x6C\xB4\xAA\xF7\xCF\x8B\x2E\x60\x01\xF6\xFE\x5A\x7C\x59\xE4\xF9\xD8\x1B\xE5\xA0\x50\x0D\x7C\x38\x06\x58\xC2\xD0\xBA\x2E\x21\xCF\xB4\xB4\xEA\xFD\xB3\xE6\x7D\xE8\xC3\x66\x40\xBE\x85\xBD\x61\xA2\x12\xF3\xBD\x19\x47\x5A\x9D\x9E\x43\x7A\xFA\xF7\xB6\x64\x41\xEB\x67\xB3\x5B\xBF\x93\x8B\xAA\xF7\xCF\x92\xEB\xB0\xF7\xD3\x6F\x86\x6A\xE0\xC4\xC1\xD8\x1B\x66\x35\xE9\xDE\x1A\x21\x2C\x98\x8C\x4F\xA6\x5C\x1D\x66\x8A\x74\x03\xBF\xC5\xDE\x38\xE7\x46\x2A\x21\x6A\xCD\xA7\xB1\xF7\xCF\x67\x28\x7B\x4D\xE0\xF7\xF0\x98\x46\x3F\x03\x8C\x8D\x54\x42\xD4\x92\xB1\xA4\x3B\x8B\xAC\xFD\xF3\x1F\x22\x95\xF0\x66\x26\xF6\x06\xEA\x23\xBD\x83\x09\xD1\x09\x1F\xC1\xC7\x37\xF7\x8F\x54\xC2\x9B\x6E\x7C\x9E\x72\x25\xE7\xDC\x8A\xFC\x74\x01\xF7\x63\xEF\x97\x4F\xB5\xDA\xAE\x15\x5F\xC4\xE7\x49\xF7\x97\x91\x4A\x88\x5A\x71\x24\x3E\x3E\xF9\xF9\x48\x25\xA2\x78\x2B\xB0\x16\x7B\x63\xDD\x47\x0D\x9F\x76\xC2\x9D\x2E\xE0\x01\xEC\xFD\xB1\x17\xD8\x26\x50\x8F\x50\x6E\xC2\xE7\x89\x77\x74\xA4\x12\xA2\x16\x1C\x8F\x8F\x2F\x16\x9D\xFB\x3C\x14\x1F\xC4\xC7\x68\x8F\xA1\x15\x69\x31\x7C\xC6\x01\x4F\xE2\xE3\x8B\x87\x07\xEA\x11\xCE\x18\x7C\xF2\x4D\xFB\x80\x4F\x05\xEA\x21\xCA\xE6\xB3\xF8\xF8\xE0\x42\x0A\x3E\x3A\x38\x5C\x3C\x4E\x28\xF5\x91\x4A\xCF\x16\x57\x38\x4C\x84\x33\x0D\xFB\x92\xB1\x6D\x39\x3B\x50\x8F\x6C\x6C\x46\x0A\x36\x0F\x03\x5E\x19\xA8\x87\x28\x93\xEF\xE2\xE3\x7B\x2F\x01\x9B\x06\xEA\x91\x95\xAF\xE0\x63\xC4\x75\xA4\xA4\x11\x21\x06\xE2\x60\x52\x2D\x30\x0F\xDF\x2B\xB9\xDC\xD3\x88\xD9\x06\xBF\x3A\xC9\x8F\x51\x76\x49\x17\xE1\xC3\x04\xFC\x16\xAE\x56\x01\x5B\xC5\xA9\x52\x0D\xFE\x11\x1F\x63\xF6\x01\x17\x07\xEA\x21\xCA\xC0\x6B\xD6\xD7\x07\x7C\x2D\x50\x8F\xCA\xB0\x25\xF6\x45\xEF\xDA\xD2\x4B\x2A\x0F\x2A\x04\xA4\x63\x7D\x1E\x49\x44\x7D\x24\x1F\x9E\x16\xA7\x4A\xB5\xF8\x2A\x7E\x4F\xC5\xA7\x80\x3F\x8E\x53\x45\x54\x94\x49\xC0\x22\xFC\xFC\xEC\x92\x38\x55\xAA\xC7\x14\xFC\x96\xF4\xFB\x48\xA5\x52\x45\xB3\xB9\x1E\x3F\xFF\x5A\x8E\x0A\x4B\xF0\x19\xFC\x0C\xDC\x07\x9C\x1A\xA7\x8A\xA8\x18\x67\xE0\xEB\x5B\x4A\x1E\x22\xA5\xB5\x3D\x81\x9F\x91\xD7\x50\xF6\x95\x2C\x62\x74\x1C\x00\xBC\x86\x9F\x5F\x29\x7D\xB7\x1F\x47\xE0\xFB\xA4\x5C\x8C\xB2\xB4\x9A\xC4\x34\xEC\x6F\xC7\xDC\x58\x0E\x0B\xD3\xA6\x10\x6E\xC1\xD7\xE0\xBF\x40\xFB\xC3\x4D\x60\x02\xE9\x62\x3D\x4F\x5F\xFA\x69\x98\x36\x05\xB1\x33\xBE\x77\xE8\xF6\x01\x73\xD1\xD9\xE1\x3A\xD3\x85\xEF\xA2\x55\x1F\x29\x69\x63\xC7\x28\x85\x4A\xE3\x7C\x7C\x8D\xDF\x47\xBA\x3E\x43\xD4\x93\xAF\xE3\xEF\x3F\x9F\x0E\xD3\xA6\x40\x7A\x48\x15\x36\xBC\x07\xE1\x73\x51\x0A\x89\x30\xCE\xC5\xDF\x6F\x1E\x40\x0B\x57\x43\xB2\x0F\x29\x93\xCA\x73\x20\xD6\x93\xB6\x18\x44\x3D\xF8\x38\xFE\xC1\xDB\x0B\xEC\x15\xA5\x50\xE9\x5C\x88\xFF\x80\xAC\x03\x4E\x8A\x51\x47\x38\x72\x2A\x7E\x27\x8C\xFA\xCB\x05\x51\x0A\xD5\x81\x1E\xFC\x57\x12\xDB\x9F\xC4\xDA\x8C\x2F\x97\x33\x48\x0F\x62\x6F\x3F\xB9\x9D\x06\x54\xDA\xB0\x66\x07\xD2\xED\xE6\xDE\x83\xD3\x07\xFC\x7D\x90\x4E\xC2\x8E\x88\x05\xCF\x3E\x52\xAA\xEF\xF4\x18\x95\xEA\xC7\x89\xC4\x0C\x52\x1F\xE9\xB8\x99\xB6\x98\xAA\x4F\x37\x31\xAB\xCD\x6D\xF9\x70\x8C", + "\x5A\xF5\xE5\x5F\x89\x1B\xAC\x1F\x91\x12\x01\x44\x35\x19\x0F\xFC\x80\x38\x7F\xF8\x4E\x8C\x5A\xF5\x66\x13\xD2\x15\x2A\x51\x83\xF6\x4B\x94\x76\x59\x45\xA6\x11\xB3\x2E\xD2\x96\x5F\xA3\xCC\x3D\x33\xB6\x03\x5E\x20\x6E\xF0\x9E\x21\x25\xC3\x8B\x6A\xB0\x0F\xBE\x67\x7A\x37\x96\xE7\x49\x37\x89\x08\x43\x66\xE1\xBF\x3F\xDC\x5F\xD6\xA0\xA3\x88\x55\xE0\x63\xF8\x9E\x2A\xDA\x58\xDE\x00\x0E\x89\x50\xAC\x89\x9C\x4E\xDC\x40\xB6\xE5\x1A\x54\xD9\x23\x07\x93\xF0\xCF\x6B\x1E\x48\x4E\x89\x50\xAE\xC9\x5C\x46\xFC\xA0\x2E\x46\xE5\x6A\x23\x39\x00\xBF\x1B\x3C\x06\x93\x46\x95\x86\xCD\x45\x17\x30\x87\xF8\xC1\xED\x25\x55\xBB\xD4\xC2\x86\x1F\x9B\x00\x5F\xC6\xAF\x00\xDD\x60\x72\x1D\xDA\x46\x0C\x63\x13\xE0\xE7\xC4\x0F\x72\x1F\xA9\x12\xC3\x7B\xFC\x55\x6C\x1C\x87\xE0\x5B\x99\x65\x30\xB9\x05\x3D\x98\xC3\xD9\x8C\xD8\x6D\x85\xFE\xB2\x1E\xF8\x17\x52\x69\x5C\xD1\x19\xD3\x48\xD7\x9D\x44\xE4\x33\x0F\x24\xB7\xD3\xA0\x2B\x51\xAA\xC6\x24\x62\xF7\x88\x37\x96\xE5\xA4\x94\x3E\x3D\xBD\x47\xCE\x58\x52\x1E\xBA\x67\x55\xD2\xA1\xE4\x01\x54\x55\x32\x3B\x53\x81\x87\xC9\xE7\x04\x7D\xC0\xE3\xC0\x87\xD0\x3B\xD4\x70\xE8\x06\x8E\xC3\xEF\x9A\x93\xE1\xCA\xC3\x28\x61\xA7\x32\x6C\x0E\xDC\x45\x5E\x87\x68\x3B\x85\x02\xF9\xCD\x99\x45\x4C\xC1\x86\xA1\xE4\x3E\x14\xBC\x95\x63\x32\x70\x07\xF9\x9D\xA3\xED\x20\x7F\x45\x3A\x16\xD9\x74\xC6\x02\x7F\x0D\xDC\x4F\xFE\x71\xE9\x23\xA5\xCA\x4E\x72\xD5\x58\x8C\x9A\xCD\x80\x5B\xC9\xEF\x24\x6D\x79\x1A\x38\x8F\x66\xBE\x67\x6D\x4E\x2A\xDA\xBF\x84\xFC\xE3\xD0\x96\x5B\xD0\x82\x55\xE5\x19\x4F\xDA\xD3\xCB\xED\x2C\xFD\xE5\x35\xE0\x46\xD2\x14\xB2\xEE\xD3\xEB\x7D\x80\xAB\x48\xD5\x1B\x73\xDB\xBD\xBF\xDC\x48\xDA\x7E\x14\x05\xD0\x85\xEF\x75\x92\x9D\xC8\x93\xA4\x84\x90\x77\xB9\x69\x1F\xCF\xEE\xA4\x4B\xBE\x72\x64\x4F\x0D\x47\x2E\xA6\xFE\x0F\xCE\x5A\x72\x1A\xB1\x07\x20\x46\x2A\xF3\x48\x8E\x7F\x10\x65\x95\x6C\xE9\x21\xA5\x96\x5E\x4A\x4A\x6C\xC9\x6D\xC7\x37\x93\x37\x80\x93\x9D\x6C\x20\x82\x38\x94\xD8\xA3\x88\xA3\x95\x65\xA4\xC2\xF3\x67\x90\x3E\x9D\xBB\x3D\x8C\x31\x4A\xBA\x81\xDD\x80\x33\x81\x1F\x92\xF6\xBF\x73\xDB\x6B\x28\x79\x9E\x06\x9C\x2A\x6A\xCA\xB4\xE2\x6D\xA4\x6A\x1B\x25\x5D\x72\xB6\x82\x94\x69\x76\x3F\xF0\x10\x69\x8B\x6A\x3E\x29\x4F\xD8\x93\x1E\x60\x17\x52\xC0\xEE\x4E\x2A\xA5\x7A\x20\x65\xAD\xDC\xDE\x05\x1C\x0B\x3C\x9B\xBB\x23\xDE\x34\x25\x80\x21\x2D\x60\xFC\x13\xF0\xD1\xDC\x1D\xE9\x80\xD7\x81\x85\xA4\xD3\x51\x8B\x5A\xF2\x3C\xB0\xB4\x9F\xBC\x4C\x0A\xF2\xB5\xA4\xDB\xE3\x01\x26\x92\x02\xB3\x87\x14\x88\x53\xFA\xC9\x56\xC0\x8C\x8D\xA4\xE4\xCC\xB2\x2B\x81\x73\x48\xB6\x12\x35\xE4\x04\xE2\xAA\x5D\x4A\xE2\x64\x05\x2A\x40\xD7\x18\xB6\x27\xDD\x56\x98\xDB\xE9\x24\x36\xF2\x2B\x74\xE1\x58\xE3\xE8\x21\xDD\x00\x51\xE5\x55\x6A\xC9\xE0\xD2\x4B\xAA\xE9\x5D\xD2\x0A\xBE\x30\x66\x0F\xE0\x6E\xF2\x3B\xA3\x64\x64\xF2\x00\xB0\xEF\x00\xE3\x29\x1A\x48\x0F\xE9\x68\xDB\xAB\xE4\x77\x4C\xC9\xE0\xB2\x9A\x74\x84\x53\x9F\xBA\xE2\x0F\xD8\x09\xB8\x99\xFC\x4E\x2A\x19\x58\x6E\x22\x5D\xB9\x23\xC4\xA0\xCC\x02\x1E\x21\xBF\xC3\x4A\x92\x3C\x01\x7C\x60\xD0\x11\x13\x62\x23\xC6\x91\x6E\x63\xCF\x59\x31\xA2\xE9\xB2\x8C\xB4\xA7\xAB\x4B\xB5\xC5\xA8\xD9\x82\xB4\x5A\xAD\xBD\xE3\x38\x79\x95\x54\x3E\xB8\x89\xC7\x30\x85\x13\x53\x49\x4E\x55\xB5\x63\x72\x75\x92\x55\xC0\x15\xC0\xD6\xC3\x1C\x13\x21\x46\xCC\xD6\xA4\x53\x38\x4B\xC9\xEF\xF0\x75\x91\x97\x48\xA7\xB2\xB6\x1A\xC1\x38\x08\xD1\x11\x9B\x92\xAE\x7A\x79\x9C\xFC\x01\x50\xAA\x2C\x24\x6D\xDF\xA9\x4A\x86\xC8\xC6\x18\xE0\x08\xE0\x27\xE4\xB9\x51\xA0\x34\xE9\x05\x7E\x0C\x1C\x8E\xF6\x72\x45\xC5\xD8\x16\xF8\x02\xE9\x93\x25\x77\xA0\x54\x4D\x16\x00\x9F\x07\xB6\x19\xB5\x75\x85\x08\xE4\x9D\xA4\xD5\xEB\x26\x07\xF3\xB3\xA4\x45\xA9\x99\x34\xEB\xE8\xAA\xA8\x11\xDD\xC0\x7B\x81\xCB\xC9\x77\xF7\x4F\xA4\x3C\x0E\x7C\x93\x14\xB4\x55\xAA\x2A\x22\x84\x09\x3B\x00\x67\x91\xDE\x99\x57\x92\x3F\xE0\x3A\x95\x97\x81\xFF\x26\x95\xDB\x99\x61\x68\x27\x31\x0C\x34\xAD\xC9\xCB\x18\x52\xE9\x9A\x99\xA4\xB2\x35\x33\x81\xED\xB2\xF6\x68\x68\x9E\x21\x15\x47\xBF\x93\x74\x31\xD8\x23\xC0\xBA\xAC\x3D\x6A\x30\x0A\xE0\xEA\x31\x95\x54\x8B\x6A\x37\x36\xD4\xA5\xDA\x89\xF8\xAC\xA4\x65\xA4\x85\xA7\x76\x3D\xAE\x47\x80\x07\x49\xFB\xDF\xA2\x22\x28\x80\xCB\x61\x12\x69\x8A\x3A\xBD\x25\x6F\x21\x05\x7B\xFF\xFA\x56\xE3\x5B\xBF\xD7", + "\x4D\xCA\x1F\xDE\xAC\xF5\x7F\x5F\x25\x6D\xDF\xAC\x27\x4D\x79\x5F\x27\x05\xE2\x4B\xAD\xAF\x2F\x02\xBF\x23\xDD\x24\xB1\xA8\x25\x2B\xDD\x35\x12\x42\x08\x21\x84\x10\x42\x08\x21\x84\x10\x42\x08\x21\x84\x10\x42\x08\x21\x84\x10\x42\x08\x21\x84\x10\x42\x08\x21\x84\x10\x42\x08\x21\x84\x10\x42\x08\x21\x84\x10\x42\x08\x21\x84\x10\x42\x14\xCF\xFF\x03\xB1\x8E\xCD\xDE\x86\xA6\xFE\xA6\x00\x00\x00\x00\x49\x45\x4E\x44\xAE\x42\x60\x82\x03\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x46\x69\x6C\x65\x83\x0A\x00\x00\x89\x50\x4E\x47\x0D\x0A\x1A\x0A\x00\x00\x00\x0D\x49\x48\x44\x52\x00\x00\x00\xF0\x00\x00\x00\xF0\x08\x06\x00\x00\x00\x3E\x55\xE9\x92\x00\x00\x00\x06\x62\x4B\x47\x44\x00\xFF\x00\xFF\x00\xFF\xA0\xBD\xA7\x93\x00\x00\x0A\x38\x49\x44\x41\x54\x78\x9C\xED\xDD\x4B\xAC\x5D\x55\x1D\xC7\xF1\x6F\xB1\x5C\x0A\xAD\x60\x62\xD2\x52\x1E\x36\xEA\xA0\x32\xD1\x28\x30\x30\x10\x30\xC1\x47\x9C\xF5\x01\xA6\x13\x67\x0C\x14\x22\xC1\x10\x26\x24\xA2\x71\x0A\x9A\xA0\x4E\x1C\x69\x2B\xC2\x45\x12\x0A\x92\x18\x1F\x09\xB4\x3C\xA2\x09\x15\x13\x62\x10\xB5\x26\x4A\x54\xA8\x46\x45\x21\x69\x69\xAF\xAD\x83\x7D\x6E\x72\xC1\xAB\x9C\x7B\xF7\xDA\xEB\xBF\xFE\x7B\x7F\x3F\xC9\x7F\xBA\xEF\x7F\xAF\xB5\x7E\x77\x9F\xB3\xCF\x7E\x80\x24\x49\x92\x24\x49\x92\x24\x49\x92\x24\x49\x92\x24\x49\x92\x24\x49\x92\x24\x49\x92\x24\x49\x92\x24\x49\x92\x14\x6B\x43\x74\x03\x81\x36\x03\x57\x03\x97\x03\x3B\x67\xB5\x0D\xB8\x00\xD8\x02\x9C\x1D\xD7\x5A\xF3\x4E\x01\x2F\x01\x8F\x00\x77\x00\xAF\xC5\xB6\xA3\xA9\xD8\x06\xDC\x0A\x3C\x01\xBC\x0E\x9C\xB1\x7A\xD7\x12\x70\xD7\x5A\x26\x41\x5A\xAB\x8F\x00\x8F\xD2\x1D\x39\xA2\x17\xFC\x58\xEB\xE7\xC0\xC6\x39\xE7\x43\x9A\xCB\x75\xC0\xD3\xC4\x2F\xEE\xA9\xD4\xF3\xC0\x59\x73\xCD\x8C\xF4\x7F\x6C\x07\x0E\x10\xBF\xA0\xA7\x58\x4F\xE1\x91\x58\x3D\xEC\x03\x5E\x21\x7E\x21\x4F\xB9\xEE\xC5\x23\xB1\xD6\x68\x13\xF0\x4D\xE2\x17\xAF\xD5\xD5\x7E\x0C\xB1\xE6\xB4\x05\xF8\x31\xF1\x8B\xD6\x7A\x63\xDD\x8F\x1F\xA7\xF5\x16\xB6\x01\xCF\x12\xBF\x58\xAD\xD5\xCB\x23\xB1\xFE\xA7\xF3\x31\xBC\x19\xCA\x23\xB1\xFE\xCB\x26\xE0\x30\xF1\x8B\xD3\x9A\xAF\x3C\x12\xEB\x0D\x3C\x61\x95\xAF\x3C\x12\x0B\x80\x1B\x88\x5F\x8C\x96\x21\xD6\x3A\x5C\x84\xBF\xF3\x66\x2F\x3F\x4E\x4F\xD8\x22\xF1\x0B\xD0\xEA\x5F\x1E\x89\x27\xE8\x3A\xE2\x17\x9E\x55\xAE\x3C\x12\x4F\xCC\x93\xC4\x2F\x3A\xAB\x6C\x79\x24\x9E\x88\x6B\x89\x5F\x6C\xD6\x30\xE5\x91\x78\x02\x1E\x25\x7E\xA1\x59\x86\xB8\x29\x59\x1E\xA9\xB3\x15\xF8\x13\x7E\xD4\x1A\xBB\x45\xE0\xD3\x74\x4F\xF9\xD0\x88\x7C\x9E\x61\xFF\xFB\x9F\xA0\xBB\x7F\x78\x37\xB0\x83\x69\x3E\x0F\x2B\xFA\x08\xEC\x91\x78\xC4\x9E\x60\xB8\x05\x73\x1F\xDD\x6F\xCB\x53\x17\x1D\x5C\x43\x3C\x52\x9B\x19\xE6\x01\x74\x4B\xC0\x67\x2A\xEE\x47\xEB\xA2\x43\x6B\x88\x47\xEA\x13\x0C\xB3\x40\x3E\x5B\x73\x27\x12\x88\x0E\xAC\x21\x1E\xA9\x3B\x28\xBF\x30\xEE\xAB\xBA\x07\x39\x44\x87\xD5\x10\x8F\xD4\x7E\xCA\x2E\x88\xE3\xF8\x9D\x77\x35\xD1\x41\x35\xC4\x23\xF5\x33\xCA\x2E\x86\x03\x75\xDB\x4F\x23\x3A\xA4\x86\x78\xA4\x7E\x4F\xD9\x85\xB0\xBB\x6A\xF7\x79\x44\x07\xD4\x10\x8F\xD4\xDF\x28\xBB\x08\xDE\x55\xB7\xFD\x34\xA2\xC3\x39\x6F\x79\xED\x74\x32\xA5\x7F\x42\x9A\xE2\x45\x1A\xF3\x88\x0E\xA6\x21\x1E\xA9\xD2\x93\xAF\xD5\x45\x87\xD2\x10\x8F\x94\x01\xAE\x23\x3A\x90\x86\x78\xA4\x0C\x70\x1D\xD1\x61\x34\xC4\x23\x65\x80\xEB\x88\x0E\xA2\x21\x1E\x29\x03\x5C\x47\xE9\x71\xFE\xF6\x00\xDB\x34\xC4\x09\x19\xE0\x3A\x4A\x8F\xF3\x59\x18\x62\x61\x80\x6B\x19\x62\x9C\x0D\xB1\x0C\x70\x25\x43\x8D\xB3\x21\x9E\x38\x03\x5C\xC7\x90\xE3\x6C\x88\x27\xCC\x00\xD7\x31\xF4\x38\x1B\xE2\x89\x32\xC0\x75\xD4\x18\x67\x43\x3C\x41\x06\xB8\x8E\x5A\xE3\x6C\x88\x27\xC6\x00\xD7\x51\x73\x9C\x0D\xF1\x84\x18\xE0\x3A\x6A\x8F\xB3\x21\x9E\x08\x03\x5C\x47\xC4\x38\x1B\xE2\x09\x30\xC0\x75\x44\x8D\xB3\x21\x1E\x39\x03\x5C\x47\xE4\x38\x1B\xE2\x11\x33\xC0\x75\x44\x8F\xB3\x21\x1E\xA9\xE8\x85\x35\x15\x2D\x8C\xB3\x21\x1E\xA1\x16\x16\xD6\x14\xB4\x32\xCE\x86\x78\x64\x5A\x59\x58\x63\xF7\x2F\xEA\x86\xA6\xB5\x7A\x80\x84\x21\xF6\x19\xBB\x5A\xF6\x52\x74\x03\xC1\x3E\x05\x1C\x22\x59\x88\x0D\xB0\x96\x4D\x3D\xC0\x00\x57\x01\xCF\x91\x28\xC4\x06\x58\xCB\xFE\x1C\xDD\x40\x23\x2E\x03\x8E\x44\x37\x31\x2F\x03\xAC\x65\x69\x16\x6D\x05\x1F\x00\xEE\x8A\x6E\x62\x1E\x1B\xA2\x1B\x98\x43\xE9", + "\x13\x4F\x19\xF6\x39\xC2\x7B\x81\xA3\xD1\x4D\x34\x64\x09\x78\x27\xDD\xC9\xBD\x66\x79\x04\xD6\xB2\xDF\x01\xBF\x8C\x6E\xA2\x21\x1B\x81\x2F\x47\x37\xF1\x56\x0C\xB0\x56\x3A\x18\xDD\x40\x63\xF6\x44\x37\xF0\x56\x32\x7C\x9C\xF4\x23\x74\x3D\xDB\xE8\x3E\x46\x6F\x89\x6E\xA4\x11\x4B\x34\xFE\x32\x3C\x8F\xC0\x5A\xE9\x18\x70\x77\x74\x13\x0D\x69\xFE\xE7\xA4\x0C\x47\x23\x8F\xC0\x75\x6D\x01\x7E\x0B\x5C\x18\xDD\x48\x23\x9A\x5E\x2F\x1E\x81\xF5\x66\xAF\x01\x37\xE1\x65\xA7\x29\x18\x60\xAD\xE6\x20\xF0\xA5\xE8\x26\x34\x0E\xDE\xCC\x10\x63\x03\xDD\x5D\x3A\xD1\x37\x19\x44\x97\x7A\x72\x42\xE2\x9C\x0B\x3C\x48\x7C\x88\x0C\x70\x62\x4E\x48\xAC\x0D\xC0\x9D\xC0\x69\xE2\xC3\x64\x80\x13\x72\x42\xDA\xB0\x9B\xEE\x86\x87\xE8\x40\x19\xE0\x64\x9C\x90\x76\x6C\x06\xBE\xC0\xB4\x6E\xFE\x6F\x5A\xD3\xBF\x71\xCD\x94\x1E\xC4\x0C\xFB\xDC\xBA\xAD\xC0\xCD\xC0\x2E\xE0\xFD\xC1\xBD\x0C\xAD\xE9\xF5\xD2\x74\x73\x33\x06\xB8\x6D\xEF\xA1\x0B\xF2\x07\x81\x8B\x81\xED\xC0\x25\x8C\xE7\x72\xCC\xA6\xD7\x4B\xD3\xCD\xCD\x18\x60\xAD\xC5\xA4\xD6\x8B\x17\x72\x48\x89\x19\x60\x29\x31\x03\x2C\x25\x66\x80\xA5\xC4\x0C\xB0\x94\x98\x01\x96\x12\x33\xC0\x52\x62\x06\x58\x4A\xCC\x00\x4B\x89\x19\x60\x29\x31\x03\x2C\x25\x66\x80\xA5\xC4\x0C\xB0\x94\x98\x01\x96\x12\x33\xC0\x52\x62\x06\x58\x4A\xCC\x00\x4B\x89\x19\x60\x29\x31\x03\x2C\x25\x66\x80\xA5\xC4\x0C\xB0\x94\x98\x01\x96\x12\x33\xC0\x52\x62\x06\x58\x4A\xCC\x00\x4B\x89\x19\x60\x29\x31\x03\x2C\x25\x66\x80\xA5\xC4\x0C\xB0\x94\x98\x01\x1E\xC6\x02\xB0\x0F\x58\x04\x8E\x02\xA7\x88\x7F\x51\x75\xED\x3A\x35\xDB\xF7\xC5\xD9\x58\x2C\xF4\x1A\x51\xA5\x95\xED\x8D\xEB\x7B\x81\x17\x07\xE8\x3B\x7B\xBD\x38\x1B\x9B\xA1\x65\x5B\x2F\xA3\x97\x65\x42\xCE\x02\xEE\x19\xA0\xDF\xB1\xD5\x3D\x0C\xFB\xC9\x2F\xCB\x7A\x99\x8C\x2C\x13\x62\x78\xD7\x16\xE2\xA1\x64\x59\x2F\x93\x91\x61\x42\xF6\x0E\xD0\xE7\xD8\x6B\xA8\x8F\xD3\x19\xD6\x4B\x31\x1B\xA2\x1B\x98\x43\xE9\x41\x2C\xBD\xCF\x0B\xC0\x0B\xC0\xBB\x0B\x6F\x77\xEC\xFE\x00\xEC\x04\x5E\x2F\xBC\xDD\xD6\xD7\x4B\x51\x9E\x85\xEE\x6F\x0F\x86\x77\x3D\x76\x00\xBB\xA2\x9B\xC8\xCE\x00\xF7\xB7\x3B\xBA\x81\xC4\xF6\x44\x37\x90\x9D\x01\xEE\xEF\xCA\xE8\x06\x12\x73\xEC\x7A\x6A\xFA\xF3\xFD\x4C\xEB\xDF\x69\x8E\x03\x9B\x0A\x6F\x73\x2A\x4E\x00\xE7\x16\xDE\x66\xEB\xEB\xA5\x28\x8F\xC0\xFD\x35\x7F\xA6\xB2\x61\xA7\xA3\x1B\xC8\xCE\x00\xF7\xF7\x72\x74\x03\x89\x1D\x8B\x6E\x20\x3B\x03\xDC\xDF\x33\xD1\x0D\x24\xE6\xD8\xF5\x64\x80\xFB\x3B\x18\xDD\x40\x62\x0F\x45\x37\x90\x5D\xD3\x5F\xD0\x67\x5A\x3F\x29\xE1\x85\x1C\xEB\xE3\x85\x1C\x05\x78\x04\xEE\xEF\x24\x70\x7B\x74\x13\x09\xDD\x46\xF9\xF0\xAA\x41\x59\xAE\x6D\xF5\x66\x86\xF9\xCB\x9B\x19\x26\x24\xCB\x84\x78\x3B\xE1\xFC\xE1\xF5\x76\xC2\x09\xC9\x36\x21\xDE\xD0\xBF\x7A\x79\x43\xFF\x00\x9A\xFE\x82\x3E\x53\x7A\x10\x6B\xEC\xF3\x02\xDD\x75\xBE\xBB\x80\x2B\xE8\x2E\xDC\xDF\x58\xE1\xEF\xB6\x64\x89\xEE\x44\xD5\x11\xE0\x61\xBA\x33\xCE\x27\x2B\xFC\xDD\x8C\xEB\x65\xDD\x9A\x6E\x6E\x66\x52\x13\xA2\xDE\x26\xB5\x5E\x3C\x0B\x2D\x25\x66\x80\xA5\xC4\x0C\xB0\x94\x98\x01\x96\x12\x33\xC0\x52\x62\x06\x58\x4A\xCC\x00\x4B\x89\x19\x60\x29\x31\x03\x2C\x25\x66\x80\xA5\xC4\x0C\xB0\x94\x98\x01\x96\x12\x33\xC0\x52\x62\x06\x58\x4A\xCC\x00\x4B\x89\x19\x60\x29\x31\x03\x2C\x25\x66\x80\xA5\xC4\x0C\xB0\x94\x98\x01\x1E\xC6\x02\xB0\x0F\x58\x04\x8E\x02\xA7\x88\x7F\x2A\x64\xED\x3A\x35\xDB\xF7\xC5\xD9\x58\x2C\xF4\x1A\x51\xA5\x95\xED\x31\xA1\x3E\x56\x76\xF5\xF2\xB1\xB2\x13\x95\x65\x42\x7C\xB0\xFB\x7C\xE5\x83\xDD\x27\x26\xCB\x84\x18\xDE\xB5\x85\x78\x28\x59\xD6\xCB\x64\x64\x98\x90\xBD\x03\xF4\x39\xF6\x1A\xEA\xE3\x74\x86\xF5\x52\x4C\xD3\x0F\xAD\x9E\x29\x3D\x88\xBE\x5E\xB4\x0D\xBE\x5E\xB4\x00\xCF\x42\xF7\xB7\x07\xC3\xBB\x1E\x3B\xE8\x5E\x3D\xA3\x1E\x0C\x70\x7F\xBB\xA3\x1B\x48\x6C\x4F\x74\x03\xD9\x19\xE0\xFE\xAE\x8C\x6E\x20\x31\xC7\xAE\xA7\xA6\x3F\xDF\xCF\xB4\xFE\x9D\xE6\x38\xB0\xA9\xF0\x36\xA7\xE2\x04\x70\x6E\xE1\x6D\xB6\xBE\x5E\x8A\xF2\x08\xDC\x5F\xF3\x67\x2A\x1B\x76\x3A\xBA\x81\xEC\x0C\x70\x7F\x2F\x47\x37\x90\xD8\xB1\xE8\x06\xB2\x33\xC0\xFD\x3D\x13\xDD\x40\x62\x8E\x5D\x4F\x06\xB8\xBF\x83\xD1\x0D\x24\xF6\x50\x74\x03\xD9\x35\xFD\x05\x7D\xA6\xF5\x93\x12\x5E\xC8\xB1\x3E\x5E\xC8\x51\x80\x47\xE0\xFE\x4E\x02\xB7\x47\x37\x91\xD0\x6D\x94\x0F\xAF\x1A\x94\xE5\xDA\x56\x6F\x66\x98", + "\xBF\xBC\x99\x61\x42\xB2\x4C\x88\xB7\x13\xCE\x1F\x5E\x6F\x27\x9C\x90\x6C\x13\xE2\x0D\xFD\xAB\x97\x37\xF4\x0F\xA0\xE9\x2F\xE8\x33\xA5\x07\xB1\xC6\x3E\x2F\xD0\x5D\xE7\xBB\x0B\xB8\x82\xEE\xC2\xFD\x8D\x15\xFE\x6E\x4B\x96\xE8\x4E\x54\x1D\x01\x1E\xA6\x3B\xE3\x7C\xB2\xC2\xDF\xCD\xB8\x5E\xD6\xAD\xE9\xE6\x66\x26\x35\x21\xEA\x6D\x52\xEB\xC5\xB3\xD0\x52\x62\x06\x58\x4A\xCC\x00\x4B\x89\x19\x60\x29\x31\x03\x2C\x25\x66\x80\xA5\xC4\x0C\xB0\x94\x98\x01\x96\x12\x33\xC0\x52\x62\x19\x02\x5C\xFA\xF2\x3B\xDF\x92\x37\x5E\xA5\xE7\xB6\xF9\xDB\x1D\x33\x04\xF8\xB5\xC2\xDB\xDB\x5E\x78\x7B\x6A\xC7\x45\x85\xB7\xF7\x6A\xE1\xED\x15\x37\xC5\x00\x5F\x5E\x78\x7B\x6A\x47\xE9\xE7\x4C\x1B\xE0\x02\x5E\x2A\xBC\x3D\xDF\xA4\x30\x5E\xA5\x5F\xD5\xE2\x13\x47\x0B\xD8\x4F\xD9\xFB\x3B\x4F\x00\x17\x57\xDD\x03\xD5\x70\x29\xDD\xDC\x96\x5C\x2B\xDF\xAA\xBA\x07\xEB\x90\xE1\x08\xFC\xEB\xC2\xDB\x3B\x07\xF8\x4A\xE1\x6D\x2A\xDE\x57\xE9\xE6\xB6\xA4\xD2\x6B\x6F\x92\x3E\xCE\x30\x4F\x88\xB8\xA9\xE6\x4E\x68\x50\xB7\x30\xCC\x1A\xF9\x68\xCD\x9D\x18\xAB\xF3\xE8\x4E\xE7\x97\x9E\x9C\x25\xE0\xE6\x8A\xFB\xA1\x61\xDC\x02\xFC\x9B\xF2\xEB\x63\x88\xF7\x36\x4D\xD6\x61\x86\xF9\x0F\x7B\x06\x78\x00\xB8\xA4\xDE\xAE\xA8\x90\x4B\x81\x07\x19\x6E\x5D\x3C\x5E\x6F\x57\xC6\xEF\x56\x86\x9B\xA8\xE5\xFF\xB6\xDF\x01\xAE\xA7\x7B\x40\xBB\x17\x7B\xB4\x67\x81\x6E\x6E\x6E\x00\xBE\x4B\xF9\x13\x56\x6F\xAE\xCF\xD5\xD9\xAD\x7E\x9A\x7E\xDE\xCF\x0A\x5B\x81\x3F\x02\x67\x47\x37\xA2\x49\x58\xA2\xFB\x54\xD6\xFC\xCB\xD7\x32\x9C\x85\x06\xF8\x0B\xF0\xC3\xE8\x26\x34\x19\x3F\x20\x41\x78\x21\x4F\x80\xC1\x9F\x7E\x54\xCF\xDD\xD1\x0D\xCC\x2B\x53\x80\x0F\x03\x4F\x45\x37\xA1\xD1\x3B\x04\x3C\x19\xDD\xC4\xBC\x32\x05\x18\xE0\xCE\xE8\x06\x34\x6A\x67\x80\x2F\x46\x37\xB1\x16\xD9\x02\xFC\x38\x70\x7F\x74\x13\x1A\xAD\x7B\x81\x27\xA2\x9B\x58\x8B\x2C\x67\xA1\x57\xDA\x0E\xFC\x0A\xB8\x20\xBA\x11\x8D\xCA\x3F\x80\xCB\x48\x72\xF2\x6A\x59\xB6\x23\x30\x74\x77\x27\xDD\x18\xDD\x84\x46\xE7\x46\x92\x85\x17\xE0\x6D\xD1\x0D\xAC\xD3\xF3\xC0\x36\xCA\xDF\xFF\xA9\x69\xFA\x3A\xDD\xCD\x10\xAA\xE8\x1C\xE0\x31\x86\xBD\x1A\xC7\x1A\x7F\xFD\x84\xC4\x57\xDE\x65\xFC\x0E\xBC\xD2\xDB\xE9\x4E\xFB\x7F\x28\xB8\x0F\xE5\xF4\x1C\x70\x0D\xF0\xCF\xE8\x46\xD6\x2B\xE3\x77\xE0\x95\x5E\x05\x3E\x09\xFC\x22\xBA\x11\xA5\xF3\x2C\xF0\x31\x12\x87\x77\x4C\xB6\x00\x3F\x22\xFE\xE3\x98\x95\xA3\x1E\x03\xCE\x47\x4D\x39\x07\xF8\x06\xF1\x8B\xC3\x6A\xBB\xBE\x46\xE2\xEF\xBC\x53\x70\x3D\xDD\x6F\x7A\xD1\x0B\xC5\x6A\xAB\xFE\x0E\xEC\x41\x29\x5C\x08\x1C\x00\x4E\x13\xBF\x70\xAC\xF8\xFA\x1E\xDD\xCF\x8E\x4A\xE6\x5A\x86\x7D\x9A\x87\xD5\x76\x1D\xA2\x3B\xCB\xAC\xE4\xAE\x01\xBE\x4F\xF7\x9A\x96\xE8\x45\x65\x0D\x5B\x27\x81\x47\x80\xAB\x99\x80\xEC\xBF\x03\xAF\xD5\x56\x60\x1F\xDD\xC3\xDD\x3F\x4C\xF9\xC7\x90\x2A\xC6\xEB\xC0\x4F\x81\x87\x80\x45\xE0\xAF\xB1\xED\xD4\x33\xB5\x00\xAF\x74\x1E\x70\x15\xDD\xAB\x56\x76\x02\xEF\xA3\x0B\xF8\x3B\xE8\x7E\x96\xF2\x4C\x65\x5B\x4E\xD2\xBD\x66\xE7\x15\xBA\x6B\x96\x5F\x00\x7E\x03\x1C\x01\x9E\x06\x8E\xC7\xB5\x26\x49\x92\x24\x49\x92\x24\x49\x92\x24\x49\x92\x24\x49\x92\x24\x49\x92\x24\x49\x92\x24\x49\x92\x24\x49\x92\x24\x4D\xD7\x7F\x00\x1F\x00\xD6\x0A\x18\x44\x1E\xFC\x00\x00\x00\x00\x49\x45\x4E\x44\xAE\x42\x60\x82\x03\x00\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x46\x6F\x6C\x64\x65\x72\x04\x08\x00\x00\x89\x50\x4E\x47\x0D\x0A\x1A\x0A\x00\x00\x00\x0D\x49\x48\x44\x52\x00\x00\x00\xF0\x00\x00\x00\xF0\x08\x06\x00\x00\x00\x3E\x55\xE9\x92\x00\x00\x00\x06\x62\x4B\x47\x44\x00\xFF\x00\xFF\x00\xFF\xA0\xBD\xA7\x93\x00\x00\x07\xB9\x49\x44\x41\x54\x78\x9C\xED\xDD\xCD\x8F\x55\xE5\x1D\xC0\xF1\xAF\xA3\x02\x8A\x14\xBB\x61\x14\x44\xE3\x8A\x76\x2B\xDA\xA4\xD1\xA2\xC6\x5A\xD3\x74\x03\xA8\x11\x37\xAC\x5C\xB4\x10\x09\x4D\x77\x2E\xDA\x7F\xC0\x9A\x18\x43\xA2\x2B\x2B\xBE\x80\xB6\x31\x0A\x49\x6D\x8C\x66\x00\x35\xBA\x10\x4C\x5C\x58\xEC\xAA\x35\x26\x54\x88\x82\xA1\x94\x99\x61\xEA\x74\xF1\x48\x62\x70\x2E\x73\x2F\xF7\x79\x39\xBF\x7B\xBF\x9F\xE4\xB7\x7D\xCE\x39\x73\xCE\x77\xEE\xFB\xBD\x20\x49\x92\x24\x49\x92\x24\x49\x92\x24\x49\x92\x24\x49\x92\x24\x49\x92\x24\x49\x92\x24\x49\x92\x24\x49\x92\x24\x49\x92\x24\x49\x92\x24\x49\x92\x24\x49\x92\x24\x49\x92\x62\xBB\xAC\xF5\x0E\x0C\x60\x39\x70\x07", + "\xB0\x1E\x58\xF7\xED\x4C\x02\x2B\x81\x15\xC0\x15\xED\x76\xAD\x2F\x73\xC0\xBF\x80\x0F\x81\xD7\x80\x57\x81\xD9\xA6\x7B\x24\x15\x36\x09\xEC\x04\x0E\x01\x33\xC0\xFC\x08\xCD\x67\xC0\xFD\xF9\xFE\x54\x52\x77\xDC\x05\xEC\x07\xCE\xD1\x3E\xB4\xD2\xF3\x38\x30\x91\xE5\xAF\x26\x35\x76\x0F\xF0\x1E\xED\xA3\xAA\x3D\xCF\x61\xC4\x0A\x6C\x35\xB0\x87\xF6\x21\x19\xB1\x34\xA0\x2D\xC0\x29\xDA\x07\xD4\x85\x31\x62\x85\xB1\x0C\x78\x86\xF6\xD1\x74\x6D\x8C\x58\x9D\xB7\x12\x38\x40\xFB\x58\xBA\x3A\x46\xAC\xCE\x9A\x04\x8E\xD0\x3E\x92\xAE\x8F\x11\xAB\x73\x7E\x80\xF1\x0E\x32\x7B\xE8\xFE\x1B\x54\x34\x26\x96\x01\x07\x69\x1F\x45\xB4\xF1\x96\x58\x9D\xF0\x34\xED\x63\x88\x3A\x46\xAC\xA6\x1E\xA2\x7D\x04\xD1\xC7\x88\xD5\xC4\x6A\x7C\x9D\xD7\x88\x15\xD6\x5E\xDA\x5F\xF8\xA3\x34\x3E\xB1\xA5\x6A\xEE\xA1\xFD\x05\x3F\x8A\xE3\x2D\xB1\xAA\x78\x97\xF6\x17\xFB\xA8\x8E\x11\xAB\xA8\x3B\x69\x7F\x91\x8F\xFA\x18\xB1\x8A\xD9\x4F\xFB\x0B\x7C\x1C\xC6\x88\x95\xDD\x24\xE3\xF1\x61\xFC\xAE\x8C\x11\x2B\xAB\xDF\x52\xF6\x82\x9D\x06\x76\x03\x9B\x80\x9B\x80\x2B\xEB\x1C\x56\xDF\x26\x48\x51\x19\xB1\x42\x3A\x44\xB9\x0B\xF5\x25\xD2\x6B\xCB\x5D\x67\xC4\x0A\x69\x39\x65\xBE\x80\x6E\x0E\xF8\x75\xC5\xE3\xC8\xC1\x88\x15\xCE\x7D\x94\xB9\x30\x7F\x53\xF3\x20\x32\x32\x62\x85\xF2\x18\xF9\x2F\xC8\x97\xAA\x1E\x41\x7E\x46\xAC\x30\x72\x5F\xA8\x67\x89\xF1\x98\x77\x31\x46\xAC\x10\x3E\x20\xEF\x45\xB8\xBB\xEE\xEE\x17\x65\xC4\xEA\xBC\x7F\x92\xF7\x02\xDC\x54\x75\xEF\xCB\x33\x62\x75\xDA\x97\xE4\xBD\xF8\x6E\xAC\xBB\xFB\x55\x4C\x00\x7F\xA2\x6E\xC4\x7E\x8A\x49\x7D\xC9\xFD\x12\x52\xD7\xDE\xA4\x91\x8B\x11\x6B\x68\x25\x7E\x9D\x70\x3E\xF3\x7A\x91\x7E\x41\x71\x50\x13\xC0\xB3\xC0\xD6\xD6\x3B\x32\x86\x66\x81\x33\xC0\x49\xE0\x04\x70\x14\xF8\x14\x38\x4C\xFA\x79\x9F\x33\xED\x76\xAD\xAD\xDC\xB7\x1A\xA3\xAE\xC5\x63\x62\xE7\xE2\x33\x43\x7A\x37\xE1\x4E\xD2\xFB\xFA\xC7\x8A\x01\x0F\xCE\x88\xBB\x3B\xE7\x80\x7D\xC0\x86\x9E\x67\x6F\xC4\x18\xF0\xA5\x31\xE2\xEE\xCF\x3B\xC0\xDD\xBD\x4E\xE0\xA8\x30\xE0\x4B\xD7\xE2\x89\x2D\x67\xF0\xD9\x0F\xAC\x5D\xF8\x14\xC6\x67\xC0\xC3\xF1\x96\x38\xC6\x9C\x02\x1E\xEC\x71\x0E\x43\x33\xE0\xE1\x19\x71\x9C\xD9\x05\x2C\x5D\xF8\x34\xC6\x64\xC0\x79\x78\x77\x3A\xCE\x4C\x91\x7E\x71\x73\x24\x18\x70\x3E\xDE\x12\xC7\x99\x23\xC0\xAA\x85\x4F\x63\x2C\x06\x9C\x97\x11\xC7\x99\x23\xA4\x5F\xE0\x0C\xCD\x80\xF3\x33\xE2\x38\xF3\x36\xC1\x1F\x13\x1B\x70\x19\x3E\x26\x8E\x33\xBB\x16\x3E\x85\x31\x18\x70\x39\x46\x1C\x67\x1E\x5E\xF8\x14\x76\x9F\x01\x97\xE5\xDD\xE9\x18\x73\x12\xB8\xAE\xC7\x39\xEC\x34\x03\x2E\xCF\x5B\xE2\x18\xF3\x7C\x8F\xF3\xD7\x69\x06\x5C\x87\xB7\xC4\xDD\x9F\x6F\x48\xBF\x11\x16\x8A\x01\xD7\xE3\x2D\x71\xF7\xE7\x60\xAF\x93\xD7\x55\x06\x5C\xD7\x04\xF0\x24\xED\x2F\x54\xA7\xF7\xFC\xAC\xE7\xD9\xEB\x20\x03\x6E\xE3\x7E\xE0\x33\xDA\x5F\xAC\xCE\xF7\x67\xDF\x45\xCE\xDB\x50\xFC\x4A\x9D\xD1\xB2\x04\xD8\x0C\x6C\x04\x6E\x25\xFD\xF0\x9B\xDF\x81\xD5\xDE\x1C\xB0\x06\x38\xDE\x7A\x47\xFA\xE1\x2D\xB0\x22\xB8\x82\xF4\x0F\x6E\x33\xE9\xD9\xE2\x69\xCA\xDE\x0A\xEF\xA8\x73\x58\xC3\x33\x60\x45\xB4\x06\xD8\x4B\xB9\x80\xA7\xEA\x1D\xCA\x70\x0C\x58\x91\x6D\x23\xDD\xE5\xCD\x7D\x1D\x4F\x03\x57\x55\x3C\x8E\x4B\x66\xC0\x8A\x6E\x3B\x65\x6E\x85\xEF\xCD\xBD\xA3\xFE\xDC\x86\xF4\x7D\xBB\x80\x57\x0A\xAC\xBB\x3E\xF7\x82\x06\x2C\x2D\xEC\x77\xA4\xEF\x87\xCE\x69\x5D\xE6\xF5\x0C\x58\xEA\xE1\x73\xE0\x2F\x99\xD7\x34\x60\xA9\xA2\xD7\x32\xAF\x97\xFD\xD3\x49\x06\x2C\xF5\x76\x38\xF3\x7A\x2B\x32\xAF\xE7\x3B\xB1\xA4\x8B\x58\x42\xDE\xC7\xC1\x33\xC0\xB2\x8C\xEB\x19\xB0\xB4\x88\x4E\x5F\xCF\xDE\x85\x96\x02\x33\x60\x29\x30\x03\x96\x02\x33\x60\x29\x30\x03\x96\x02\x33\x60\x29\x30\x03\x96\x02\x33\x60\x29\x30\x03\x96\x02\x33\x60\x29\x30\x03\x96\x02\x33\x60\x29\x30\x03\x96\x02\x33\x60\x29\x30\x03\x96\x02\x33\x60\x29\x30\x03\x96\x02\x33\x60\x29\x30\x03\x96\x02\x33\x60\x29\x30\x03\x96\x02\x33\x60\x29\x30\x03\x96\x02\x33\x60\x29\x30\x03\x96\x02\x33\x60\x29\x30\x03\x96\x02\x33\x60\x29\x30\x03\x96\x02\x33\x60\x29\x30\x03\x96\x02\x33\x60\x29\x30\x03\x96\x02\x33\x60\x29\x30\x03\x96\x02\x33\x60\x29\x30\x03\x96\x02\x33\x60\x29\x30\x03\x96\x02\x33\x60\x29\x30\x03\x96\x02\x33\x60\x29\x30\x03\x96\x02\x33\x60\x29\x30\x03\x96\x02\x33\x60\x29\x30\x03\x96\x02\x33\x60\x29\x30\x03\x96\x02\x33\x60\x29", + "\x30\x03\x96\x02\x33\x60\x29\x30\x03\x96\x02\x33\x60\x29\x30\x03\x96\x02\x33\x60\x29\x30\x03\x96\x02\x33\x60\x29\x30\x03\x96\x02\x33\x60\x29\x30\x03\x96\x02\x33\x60\x29\x30\x03\x96\x02\x33\x60\x29\x30\x03\x96\x02\x33\x60\x29\x30\x03\x96\x02\x33\x60\x29\x30\x03\x96\x02\x33\x60\x29\x30\x03\x96\x02\x33\x60\x29\x30\x03\x96\x02\x33\x60\x29\x30\x03\x96\x02\x33\x60\x29\x30\x03\x96\x02\x33\x60\x29\x30\x03\x96\x02\x2B\x11\xF0\x6C\xE6\xF5\x96\x64\x5E\x4F\xEA\x57\xEE\x6B\x6F\x26\xF3\x7A\x45\x02\xFE\x4F\xE6\xF5\xAE\xCF\xBC\x9E\xD4\xAF\xD5\x99\xD7\x3B\x9D\x79\xBD\x10\x01\xAF\xCF\xBC\x9E\xD4\xAF\xDB\x32\xAF\x17\x22\xE0\x63\x99\xD7\xDB\x94\x79\x3D\xA9\x5F\x1B\x33\xAF\xF7\xEF\xCC\xEB\x15\xF1\x1C\x30\x9F\x71\xA6\x81\x35\x55\x8F\x40\x82\xB5\xA4\x6B\x2F\xE7\xB5\xFC\x6C\xEE\x9D\x2C\x71\x0B\xFC\x69\xE6\xF5\x96\x02\x7F\xCC\xBC\xA6\xB4\x98\x27\x48\xD7\x5E\x4E\xB9\xDB\x28\xE2\x17\xE4\xFD\xAF\x75\x7E\xB6\xD5\x3C\x08\x8D\xB5\x1D\x94\xB9\x86\x7F\x5E\xF3\x20\x2E\xD5\xD5\xA4\xA7\xCB\x73\x1F\xFC\x1C\xB0\xBD\xE2\x71\x68\x3C\xED\x00\xFE\x47\xFE\xEB\x77\x1A\xB8\xAA\xE2\x71\x0C\xE5\x20\x65\xFE\x83\xCD\x03\x2F\x03\x37\xD4\x3B\x14\x8D\x89\xB5\xC0\x9F\x29\x77\xDD\x4E\xD5\x3B\x94\xE1\xED\xA4\xDC\x1F\xE2\xFC\x7F\xB3\xE7\x81\x07\x80\x9B\xF1\xCD\x1E\x1A\xDC\x12\xD2\xB5\xF3\x20\xF0\x22\xF9\x9F\xB0\xBA\x70\x1E\x2D\x71\x10\x97\x95\x58\x14\x58\x05\x7C\x0E\x5C\x59\x68\x7D\x29\x92\x39\xD2\xBD\xC6\x2F\x72\x2F\x5C\xEA\xBD\xD0\xC7\x81\xBF\x15\x5A\x5B\x8A\xE6\xAF\x14\x88\x17\xCA\x7E\x98\xC1\x97\x7E\xA4\xE4\xF1\x52\x0B\x97\x0C\xF8\x20\xF0\x6E\xC1\xF5\xA5\x08\x0E\x00\xEF\x94\x5A\xBC\xF4\xC7\x09\x7F\x5F\x78\x7D\xA9\xCB\xE6\x81\x3F\x94\xDC\x40\xE9\x80\xA7\x80\x3D\x85\xB7\x21\x75\xD5\x0B\xC0\xA1\x92\x1B\x28\xF5\x2C\xF4\x77\x5D\x0F\xFC\x1D\x58\x59\x61\x5B\x52\x57\x9C\x04\x7E\x4C\xA1\x27\xAF\xCE\xAB\xF1\x8D\x1C\xC7\x80\x47\x2A\x6C\x47\xEA\x92\x47\x28\x1C\x2F\xC0\xE5\xA5\x37\xF0\xAD\x4F\x80\x49\xF2\x7F\xBE\x52\xEA\xA2\xA7\x48\x1F\x86\x28\xAE\xC6\x5D\xE8\xF3\x96\x02\x6F\x00\x77\x57\xDC\xA6\x54\xDB\x5B\xC0\xAF\xC8\xFF\xD5\x52\x0B\xAA\x19\x30\xC0\x0A\xD2\xD3\xEA\xB7\x54\xDE\xAE\x54\xC3\xC7\xC0\x06\xE0\xEB\x5A\x1B\xAC\xFD\xAD\x94\xA7\x81\x5F\x02\x1F\x55\xDE\xAE\x54\xDA\x11\xE0\x5E\x2A\xC6\x0B\x6D\xBE\x56\xF6\x38\xE9\xBF\xD4\x9B\x0D\xB6\x2D\x95\x30\x45\x7A\x68\x78\xBC\xF6\x86\x6B\x3D\x89\x75\xA1\x59\xD2\x47\xB7\x7E\x08\xFC\xA4\xD1\x3E\x48\x39\x3C\x05\x6C\x05\xFE\xDB\x7A\x47\x5A\x79\x80\xF4\x9A\x59\xC9\x8F\x72\x39\x4E\xEE\xF9\x0A\xD8\x8C\x00\xB8\x0E\xD8\x0D\x7C\x43\xFB\x13\xE3\x38\x8B\xCD\x2B\xA4\x97\x45\x75\x81\x3B\x29\xFB\x6D\x1E\x8E\x33\xCC\x1C\x20\x3D\x7F\xA3\x45\x6C\x00\xF6\x91\x1E\x2B\xB7\x3E\x69\xCE\x78\xCF\x2C\xF0\x3A\x70\x07\x1D\x54\xFB\x75\xE0\x41\xAD\x02\xB6\x90\xBE\xDC\xFD\xA7\xE4\xFF\x9A\x4F\x69\x21\x33\xC0\xFB\xC0\xAB\xC0\x5E\xE0\x44\xDB\xDD\xE9\xAD\xEB\x01\x7F\xD7\xD5\xC0\xED\xA4\x9F\x5A\x59\x07\xFC\x88\x14\xF8\xB5\xC0\x35\xF8\xBD\x58\x1A\xCC\x2C\xE9\x67\x80\x4E\x91\xDE\xB3\x7C\x14\xF8\x07\xF0\x21\xF0\x1E\x70\xB6\xDD\xAE\x49\x92\x24\x49\x92\x24\x49\x92\x24\x49\x92\x24\x49\x92\x24\x49\x92\x24\x49\x92\x24\x49\x92\x24\x49\x92\x24\x49\x92\x24\x49\x92\x24\x49\x92\x24\x49\x92\x24\x49\x92\x24\x49\x92\x24\x49\x92\x24\x49\x92\x24\x49\x92\x24\x49\x92\xFA\xF5\x7F\xE6\x8F\xE9\xD0\xA2\xF0\x73\xB6\x00\x00\x00\x00\x49\x45\x4E\x44\xAE\x42\x60\x82\x03\x00\x00\x00\x00\x00\x00\x00\x0B\x00\x00\x00\x00\x00\x00\x00\x0B\x00\x00\x00\x49\x6E\x66\x6F\x72\x6D\x61\x74\x69\x6F\x6E\xF6\x13\x00\x00\x89\x50\x4E\x47\x0D\x0A\x1A\x0A\x00\x00\x00\x0D\x49\x48\x44\x52\x00\x00\x00\xF0\x00\x00\x00\xF0\x08\x06\x00\x00\x00\x3E\x55\xE9\x92\x00\x00\x00\x06\x62\x4B\x47\x44\x00\xFF\x00\xFF\x00\xFF\xA0\xBD\xA7\x93\x00\x00\x13\xAB\x49\x44\x41\x54\x78\x9C\xED\xDD\x79\xB4\x9D\x55\x79\xC7\xF1\xEF\x1D\x32\x49\xD2\x24\x24\x24\x08\x22\x09\x01\xB4\xC8\x20\x22\x50\x21\x8A\xD0\xAC\x85\xB4\xA2\x4C\x22\xB5\xAD\x22\x93\x50\xAA\x32\x88\x74\xD9\x2A\x94\x41\x71\x68\x0B\x69\x5D\x42\x5B\x5D\x62\x1D\x12\x2B\xB5\x16\x91\x94\x55\x28\x15\x88\x80\x46\x08\x24\x4C\x09\x19\x08\x4B\xC4\xCC\x90\x81\xE4\x92\x9C\xFE\xF1\x9C\x6B\x2E\xF1\xE6\xDE\x73\xEF\x7D\x9E\xBD\xDF\xE1\xF7\x59\xEB\x59\x61\x69\xD8\xBC\x7B\xBF\xCF\x3E\xE7\x3D\xFB\xDD\x03\x88\x88", + "\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\xE4\xD5\x96\xFB\x02\xA4\x65\x13\x80\x29\xCD\xD8\x17\x78\x7D\xF3\x7F\x9B\x00\x4C\x6C\xFE\x39\x02\x18\xDB\xFC\xFB\xC3\x81\xDD\x9A\xFF\xBC\x11\xD8\xDA\xFC\xE7\x75\xC0\x16\x60\xF5\x4E\xF1\x02\xB0\xAC\x47\xAC\x89\xAA\x88\xF8\x51\x07\x2E\x9E\x49\xC0\xA1\xCD\x38\xA4\xF9\xE7\x01\xC0\x98\xC4\xD7\xF1\x12\xB0\x08\x78\xBC\x19\x8F\x35\xE3\x37\x89\xAF\x43\xFA\xA0\x0E\x9C\x57\x07\xF0\x66\xE0\x58\x60\x7A\x33\xA6\x66\xBD\xA2\xFE\xBD\x00\xCC\x03\xEE\x07\x1E\x00\x1E\x66\xC7\xB7\xBB\x24\xA6\x0E\x9C\xDE\x81\xC0\x49\xC0\x7B\x80\x77\xB2\xE3\x31\xB7\xAC\x36\x00\x3F\x05\xEE\x04\xE6\x00\x8B\xF3\x5E\x8E\x88\xAF\x0E\xE0\x78\xE0\x9F\xB0\xE4\x6E\x54\x3C\x16\x01\x33\x81\xE3\x80\x76\x87\xF6\x13\x49\xAE\x1D\x7B\x1C\xBE\x09\xF8\x15\xF9\x3B\x55\xAE\x58\x09\x7C\x0B\x98\x81\x3A\xB3\x94\xC0\x1B\x81\xAB\x81\xE7\xC8\xDF\x79\x8A\x16\xCB\x81\xAB\x80\x37\x0C\xB6\x71\x45\x22\x74\x02\xA7\x02\x77\x00\xDB\xC8\xDF\x51\x8A\x1E\xAF\x02\x3F\x06\x4E\xC1\x7E\x5E\x88\x64\x31\x1A\xB8\x00\x78\x9A\xFC\x9D\xA2\xAC\xB1\x14\xB8\x12\x18\x37\xC0\xB6\x17\x19\xB4\xBD\x81\x2F\x02\x6B\xC9\xDF\x01\xAA\x12\x6B\x81\x1B\xB0\xC9\x29\x22\x21\xF6\xC0\x92\x6C\x13\xF9\x13\xBE\xAA\xB1\x05\xB8\x05\x75\x64\x71\x34\x01\x1B\x98\x7A\x89\xFC\x09\x5E\x97\xD8\x88\x8D\xE0\x4F\xEE\xFF\xF6\x88\xF4\x6E\x04\xF0\x69\x60\x3D\xF9\x13\xBA\xAE\xB1\x0E\xF8\x14\x36\xAF\x5B\xA4\x65\x27\x53\x8F\x49\x17\x65\x89\x45\xC0\x07\xFA\xBC\x63\x22\xC0\x9B\x80\xBB\xC9\x9F\xB0\x8A\xDE\xE3\xBF\xB1\x85\x1D\x22\xAF\xD1\x89\xBD\xCE\xD8\x4C\xFE\x24\x55\xF4\x1D\x9B\xB1\x31\x09\x3D\x56\x0B\x00\x6F\x05\x7E\x41\xFE\xC4\x54\x0C\x2C\xE6\x03\x47\xF5\x72\x3F\xA5\x26\x86\x01\xD7\x61\x33\x83\x72\x27\xA3\x62\x70\xD1\x05\xFC\x2D\xF6\x04\x25\x35\x32\x15\x5B\xCF\x9A\x3B\x01\x15\x3E\xF1\x10\xFA\x6D\x5C\x1B\xE7\x02\x2F\x93\x3F\xE9\x14\xBE\xF1\x12\x70\x36\x35\x53\xA7\x05\xFD\xA3\x80\xAF\x01\x1F\xC9\x7D\x21\x43\xB0\x19\x78\x16\xDB\xB3\x6A\x69\xF3\xCF\x17\xD9\xB1\xAF\xD5\x2A\xEC\xDD\x29\xD8\x2E\x19\x1B\x9B\xFF\xBC\x1B\x3B\x06\x7D\xC6\xB1\x63\x0F\xAD\x09\xD8\x64\x89\xA9\xD8\x5E\x5B\x53\x81\xFD\xB0\xB6\x2A\xAB\x6F\x00\x17\x03\xAF\xE4\xBE\x90\x14\xEA\xD2\x81\xA7\x02\xB7\x01\x87\xE7\xBE\x90\x01\x58\x03\xCC\x05\x7E\x89\xED\x49\x35\x1F\xEB\xBC\xDB\x83\xFF\xBB\x1D\xC0\x34\xE0\x30\x6C\x4F\xAE\xB7\x01\xC7\x00\xE3\x83\xFF\xBB\x9E\xE6\x01\xA7\x63\x4B\x18\xA5\xE4\x4E\xC4\xBE\x99\x72\x3F\xE2\xF5\x17\x2B\x81\xEF\x02\xE7\x01\x07\x51\xAC\x0F\xD7\x36\xEC\x9A\xCE\x07\xBE\x47\x79\xDA\x73\x46\x44\x63\x48\x3A\x17\x51\xEC\x51\xE6\xC7\xB0\x51\xD4\xA3\x29\xD7\xDA\xD8\x0E\xE0\x0F\x80\x6B\xB0\xA7\x83\xDC\xED\xB8\xAB\xE8\xC2\x96\x7C\x4A\xC9\xB4\x03\x5F\x26\x7F\x02\xF5\x16\x4F\x00\x9F\xC3\x76\xA3\xAC\x8A\x83\xB0\xC9\x15\x4F\x92\xBF\x7D\x7B\x8B\x1B\x28\xD6\x13\x8D\xF4\x61\x14\xF0\x03\xF2\x27\x4D\xCF\xD8\x08\x7C\x13\xFB\x2D\x59\x75\xD3\x81\x5B\x29\xDE\xB2\xCB\xD9\xC0\xC8\xC0\x7A\x8B\x83\x31\xC0\xFF\x91\x3F\x59\xBA\x63\x29\x70\x09\x3B\x4E\x4B\xA8\x93\x71\xC0\x65\xD8\x48\x79\xEE\xFB\xD0\x1D\xF7\x60\x3B\xA9\x48\x01\x8D\x07\x1E\x24\x7F\x92\x34\xB0\xCD\xCE\xCF\xA4\x5C\xBF\x6B\xA3\x74\x02\x67\x51\x9C\xE9\xAA\x73\xD1\x16\x3E\x85\x33\x09\x78\x84\xFC\xC9\xF1\x18\xB6\xEC\x4D\xBF\xB7\x7A\x37\x03\xF8\x39\xF9\xEF\xD3\x2F\xB1\x1D\x56\xA4\x00\xF6\x00\x16\x92\x37\x21\x16\x62\xBB\x2C\xAA\xE3\xF6\xAF\x0D\x38\x8D\xFC\x03\x5E\x8F\x63\x13\x5A\x24\xA3\xB1\xE4\x7D\x34\x5B\x83\x2D\x43\xD4\xD2\xB6\x81\xEB\xC4\x5E\xF1\xAC\x24\xDF\xFD\x7B\x14\xD8\x3D\xBA\xA2\xD2\xBB\x31\xE4\xFB\xCD\xBB\x0D\x3B\x2A\x45\x37\x7F\xE8\x26\x02\x37\x63\x33\xCC\x72\xDC\xCB\xB9\x68\x60\x2B\xB9\x51\xC0\xBD\xE4\xB9\xE1\x0B\xA9\xC7\xEB\xA0\xD4\xA6\x93\xEF\xB1\xFA\x6E\xF4\x8A\x29\x99\x76\xF2\xBC\xE7\xED\x5E\x7B\x3A\x22\xBE\x8A\xB5\x35\x02\x5B\xA3\xDD\x45\xFA\xFB\x3B\x0B\x8D\x61\x24\xF1\x15\xD2\xDF\xDC\xA5\xD8\x19\xBE\x92\xC6\x51\xD8\x46\x76\xA9\xEF\xF3\xE7\x53\x54\xAE\xCE\x2E\x22\xFD\x4D\xFD\x57\xF4\x1B\x29\x87\x31\xD8\xEC\xB5\xD4\xF7\xFB\xFC\x04\x75\xAB\xA5\x13\x49\xBB\x30\x61\x13\xF0\xE1\x24\x35\x93\xBE\x9C\x43\xDA\xCD\x06\xBB\x80\x3F\x4C\x52\xB3\x1A\xD9\x97\xB4\xAF\x1B\x9E\x03\x8E\x4C\x52\x33\x69", + "\xC5\xE1\xC0\x12\xD2\xDD\xFF\xD5\xD8\x1A\x72\x71\x30\x0A\x9B\x39\x93\xEA\xE6\xDD\x8B\x5E\x0F\x15\xD1\x44\xE0\x3E\xD2\xE5\xC1\xC3\x68\x64\xDA\xC5\x37\x48\x77\xD3\xB4\x62\xA5\xD8\x46\x00\xDF\x26\x5D\x3E\x7C\x2B\x4D\xB5\xAA\xEB\x5C\xD2\xDD\xAC\x6B\xD0\x6B\x84\x32\x68\xC3\x46\x8B\x53\xE5\x85\xC6\x41\x06\x69\x1A\x69\x4E\x04\xDC\x8E\x2D\x7B\x93\x72\xB9\x98\x34\xB3\xB7\x5E\x46\x5B\xD6\x0E\x58\x27\xF0\x33\xD2\x74\xDE\x8F\x27\xAA\x93\xF8\xBB\x00\x9B\xD6\x1A\x9D\x27\x0F\x63\x07\x01\x48\x8B\xAE\x25\xFE\xA6\x6C\xA3\xDC\x5B\xCC\x8A\x39\x9B\x34\x9D\xF8\xEA\x34\xD5\x29\xBF\x23\x89\x7F\xDF\xBB\x1D\xF8\x58\xAA\x0A\x49\xB8\x8B\x88\x7F\x9C\xEE\x02\x8E\x48\x55\xA1\xB2\xEA\x24\xCD\x2B\xA3\x2B\x52\x55\x48\x92\xB9\x84\xF8\xBC\x99\x8F\x1E\xA5\xFB\xF4\xD7\xC4\xDF\x84\x6B\x92\xD5\x46\x52\xBB\x81\xF8\xFC\xB9\x32\x59\x6D\x4A\xE6\x40\xE2\xA7\xCC\x7D\x0F\xBD\x2A\xAA\xB2\x36\xE0\xDF\x88\xCD\xA1\x4D\xC0\xFE\xA9\x2A\x54\x26\x77\x13\xDB\xF0\xF7\xA2\x9D\x33\xEA\x60\x24\xF1\x33\xB6\xE6\x24\xAB\x4D\x49\x9C\x4A\x6C\x83\x2F\x41\xD3\x23\xEB\x64\x22\x76\x2E\x52\x64\x4E\xBD\x37\x59\x6D\x0A\x6E\x38\xF0\x0C\x71\x0D\xBD\x99\xFA\x8C\x1E\x0E\xC7\xB6\x70\x9D\x05\x2C\xC6\x46\x4E\xBB\x9A\xFF\x3C\xAB\xF9\xFF\xD5\xE5\x29\xE4\xAD\xC4\x6E\x2E\xBF\x18\x6D\xEE\x00\xC0\x5F\x11\xFB\x49\xF9\xD1\x74\x55\xC9\xEA\x74\x6C\x15\x55\x7F\xED\xF1\x5C\xF3\xEF\xD6\xC1\x9F\x13\x9B\x5B\xB5\x9F\xC1\x37\x11\x58\x4F\x5C\x03\x7F\x3D\x5D\x55\xB2\x69\x07\x6E\x62\xE0\x6D\x73\x53\xF3\xDF\xAD\xBA\x5B\x89\xCB\xAF\xB5\xD4\xFC\xA7\x59\xE4\x01\x64\x8B\xB1\x5D\x1D\xAA\x6E\x30\x9D\xB7\x67\x27\xAE\xBA\xD1\xC4\xFE\x44\xBB\x3E\x5D\x55\x8A\x65\x4F\xEC\xD0\xAF\x88\x46\xED\xC2\x8E\xBF\xAC\xBA\xD3\x19\x7A\x5B\xD5\xE1\x71\xFA\x48\x60\x2B\x31\xB9\xB6\x01\x3B\x19\xA4\x76\x6E\x24\xEE\x53\xF1\xEA\x74\xD5\xC8\x66\x38\x3E\xBB\x54\x2C\xA3\x1E\x83\x31\xD7\x11\x97\x6F\x5F\x49\x58\x8F\x42\xD8\x9B\xB8\x49\x1B\x0B\xA9\xC7\x48\xEB\x59\xF8\xB5\xD9\x07\x13\x5F\x7B\x0E\x23\x89\xDB\x77\x7A\x13\xF6\x44\x59\x1B\x5F\x22\xA6\x21\xB7\x51\x9F\xED\x5F\x67\xE3\xD7\x6E\xB3\x13\x5F\x7B\x2E\xEF\x20\x6E\xE5\x52\x6D\x7E\x0B\x8F\xC1\x46\xEF\x22\x1A\xF1\xAB\x09\xEB\x91\x9B\xE7\x26\x6F\x4B\x12\x5F\x7B\x4E\xB7\x10\x93\x7B\xAB\xA9\xC9\xF6\xC3\x97\x12\xD3\x80\x6B\x80\x09\x09\xEB\x91\x9B\xE7\x4F\x90\xCD\x89\xAF\x3D\xA7\xDD\xB1\xCE\x16\x91\x83\x9F\x48\x58\x8F\x2C\x3A\x80\x67\x89\x69\xBC\x8B\x13\xD6\xA3\x08\xBC\xDB\xAF\x4E\xA2\xBE\x44\x96\x62\x4B\x62\x2B\x2B\x6A\xCE\xF3\x42\x2A\xDE\x70\xBD\x50\x07\x1E\xBC\x61\xC4\x0D\x68\xBD\x3F\x61\x3D\x92\xFB\x09\x31\x8D\x76\x4A\xCA\x4A\x14\x84\x3A\xF0\xD0\x9C\x41\x4C\x2E\xDE\x9E\xB2\x12\x29\xED\x43\xCC\x56\x39\xBF\xA0\x9E\x6B\x7C\xD5\x81\x87\xA6\x0D\x78\x04\xFF\x76\x7C\x15\xCB\xF5\x24\x52\xCE\x85\x3D\x0F\xFB\x0D\xEC\xED\xB3\xD4\x33\x01\x65\x68\x1A\xC0\x55\x01\xE5\x76\x50\xC1\xCD\x12\xDB\x69\x6D\xA5\xCC\x40\xE3\xE1\x94\x95\x28\x18\x7D\x03\x0F\x5D\x1B\x30\x0F\xFF\xB6\x5C\x4A\xC5\x9E\x0A\x8F\xC3\xBF\x91\x1A\xC0\x99\x29\x2B\x51\x30\xEA\xC0\x3E\x3E\x44\x4C\x6E\x1E\x93\xB2\x12\xD1\xBE\x4A\xCC\xA7\x5C\xDD\x46\x9E\x7B\x52\x07\xF6\xD1\x89\xCD\x07\xF7\x6E\xCF\x1B\x13\xD6\x21\x54\x07\xF0\x02\xFE\x0D\x74\x49\xCA\x4A\x14\x90\x3A\xB0\x9F\xCB\xF0\x6F\xCF\xE7\xA9\xC8\x7A\xEB\x13\xF0\x6F\x9C\x4D\xC0\xF8\x94\x95\x28\x20\x75\x60\x3F\xE3\x88\x59\xDA\xFA\xAE\xE8\x0B\x4F\xF1\x09\x71\x6A\x40\x99\xB3\xB1\xF9\xD4\x22\x1E\xD6\x01\xFF\x11\x50\xEE\x69\x01\x65\x26\xB7\x18\xFF\x4F\xB6\x4A\x0D\x10\x0C\x92\xBE\x81\x7D\x1D\x87\x7F\x9B\x3E\x9D\xB4\x06\x01\x0E\xC4\xBF\x51\x9E\x48\x5A\x83\xE2\x52\x07\xF6\xD5\x06\x2C\xC2\xBF\x5D\xA7\x45\x5E\x74\xF4\x23\xF4\x49\x01\x65\xCE\x0A\x28\x53\xA4\x41\x4C\x6E\x9D\x18\x50\x66\x32\x73\xF0\xFF\x44\xFB\xFD\xA4\x35\x28\x2E\x7D\x03\xFB\x3B\x18\xFF\x76\x2D\xED\xDC\xE8\x61\xF8\x8F\xEC\xCD\x4F\x5A\x83\x62\x53\x07\x8E\xB1\x10\xDF\x76\x7D\x99\xC0\xF9\x0A\x91\x8F\xD0\x87\x01\xAF\x73\x2E\xF3\x87\xCE\xE5\x89\xEC\xCC\x7B\x34\x7A\x34\x70\x88\x73\x99\xBF\x15\xD9\x81\xA7\x07\x94\x79\x67\x40\x99\x22\x3D\x45\x1C\x5C\x16\xB6\x4F\x5B\x64\x07\xF6\x7E\xD5\xB3\x0A\x5B\x3A\x28\x12\xE9\x41\x6C\x7B\x26\x4F\xEA\xC0\xC0\x5D\xD8\x8E\x82\x22\x91\xB6\x01\xFF\xE3\x5C\x66\xE9\x3A\xF0\x9E\xD8\xDE\xCF\x9E\xEE\x71\x2E\x4F\x64\x57\xFE\xD7\xB9\xBC\x7D", + "\x80\x3D\x9C\xCB\x04\xE2\x3A\xF0\xA1\x01\x65\xCE\x0D\x28\x53\xA4\x37\x0F\x04\x94\x19\x32\x90\x15\xD5\x81\xBD\x2F\x76\x2D\x15\x98\x96\x26\xA5\xB1\x00\xFF\xDF\xC1\xB5\xEE\xC0\x73\x81\xED\xCE\x65\x8A\xEC\x4A\x03\x78\xC8\xB9\xCC\x5A\x77\xE0\x79\xCE\xE5\x89\xF4\xC7\x3B\xE7\x4A\xD5\x81\x0F\x70\x2E\xEF\x31\xE7\xF2\x44\xFA\xB3\xC0\xB9\x3C\xEF\x3E\x01\xC4\x74\xE0\x09\xF8\x1F\xAC\xAD\x0E\x2C\xA9\x79\xE7\xDC\x78\x6C\xE3\x00\x57\x11\x1D\x78\x8A\x73\x79\x9B\xA8\xD7\xE1\x5B\x52\x0C\x8B\x80\x57\x9C\xCB\x9C\xE2\x5C\x5E\x48\x07\x9E\xEA\x5C\xDE\x12\x34\x81\x43\xD2\x7B\x15\x58\xEE\x5C\xE6\x14\xE7\xF2\x42\x3A\xF0\xBE\xCE\xE5\x2D\x73\x2E\x4F\xA4\x55\xDE\x4F\x7E\xDE\x5F\x6E\x21\x1D\x78\xB2\x73\x79\x4B\x9D\xCB\x13\x69\xD5\x32\xE7\xF2\xF6\x74\x2E\x2F\xA4\x03\x4F\x74\x2E\x6F\x99\x73\x79\x22\xAD\xF2\xFE\xF2\x70\x3F\xBF\x3A\x6A\x14\xDA\xD3\x8B\xCE\xE5\x89\xB4\xEA\xD7\xCE\xE5\xD5\xB2\x03\xAF\x76\x2E\x4F\xA4\x55\xDE\xB9\xE7\xFD\x74\x5A\x8A\x47\xE8\x55\xCE\xE5\x89\xB4\xCA\xBB\x03\x97\xE2\x1B\x78\x37\xE7\xF2\xF4\x0D\x2C\xB9\x78\x7F\x79\x78\xF7\x8D\x90\x0E\x3C\xC2\xB9\xBC\x0D\xCE\xE5\x89\xB4\x6A\xA3\x73\x79\xDE\x7D\x23\xA4\x03\x0F\x73\x2E\xAF\xCB\xB9\x3C\x91\x56\x6D\x71\x2E\xAF\x14\x1D\xD8\xFB\x22\xBD\x1B\x51\xA4\x55\xDE\xB9\x37\xDC\xB9\xBC\x90\x0E\xEC\x7D\x91\x5B\x9D\xCB\x13\x69\x55\x2D\xBF\x81\x25\x8D\xCD\x8E\x65\x6D\x72\x2C\x4B\x12\x8A\xE8\xC0\xDE\xDF\x98\xEE\x8F\x1D\x15\xE1\x39\xC9\x40\x93\x65\x7A\x57\xF8\x9F\x83\x11\x1D\xB8\xF0\x8F\x1D\x15\xF1\xF3\x82\x96\x55\x25\xDE\xB9\xE7\xFE\x73\x30\xA2\x03\x7B\x8F\x1A\x7B\x8F\x6A\x57\x85\xE7\x31\x33\x11\x87\x5B\x57\x41\xE1\xBF\x81\x23\xAC\xC0\xF7\x70\x28\xF7\x25\x58\x15\x31\x1C\x5B\xEE\x36\xD4\xF6\x5D\x86\x9E\x72\x76\x65\x1A\xBE\xB9\xEC\xBD\xBE\x38\xE4\x1B\xD8\xFB\xE5\xB7\xFB\xFC\xD1\x8A\xD8\x0A\x5C\xE1\x50\xCE\xE5\x94\xE4\x9B\x21\x03\xEF\xDC\xF3\xEE\x1B\x21\x1D\xD8\x7B\xFA\x99\xFB\xFC\xD1\x0A\xB9\x0D\x98\x39\x84\x7F\x7F\x66\xB3\x0C\xE9\x9D\x77\xEE\xB9\xCF\xEB\x8F\xE8\xC0\x85\x9F\x00\x5E\x31\x97\x32\xB8\x4E\x3C\xB3\xF9\xEF\xCA\xAE\x15\x7E\x65\x5D\x19\x3A\xB0\xFB\x2E\x06\x15\xB3\x1D\xF8\x24\x70\x06\x36\xFE\xD0\x9F\x15\xCD\xBF\xFB\x49\xB4\x59\x7E\x7F\xBC\x73\xCF\xBD\x03\x47\x9C\x1C\xEE\xFD\x98\x30\xC5\xB9\xBC\xAA\xBA\x0D\xB8\x1D\x38\x0D\x38\x05\x78\x3B\x3B\xF6\x27\x5B\x8E\x1D\xCD\xFA\x9F\xD8\x88\xB3\x66\xB7\xB5\xC6\x7B\x00\xD5\xFD\x11\x3A\xA2\x03\x7B\x4F\x0A\x98\xE2\x5C\x5E\x95\x6D\x05\x66\x35\x43\x86\x6E\x8A\x73\x79\xDE\x3B\x7C\x84\x3C\x42\x2F\x73\x2E\x6F\x8A\x73\x79\x22\xAD\xDA\xCF\xB9\x3C\xF7\x0D\x1A\x23\x3A\xB0\xF7\x45\x4E\x03\x3A\x9C\xCB\x14\xE9\x4F\x27\xFE\x5F\x1E\xCB\x9C\xCB\x0B\xB1\x3B\xBE\x2F\xBF\x1B\xC0\x9B\x92\xD6\x40\x04\xDE\x82\x7F\x1E\x8F\xF5\xBE\xC8\x88\x6F\xE0\x35\xC0\x7A\xE7\x32\x43\x4E\x76\x13\xE9\x83\x77\xCE\x45\xF4\x8B\xB0\xE5\x84\x8B\x9D\xCB\x3B\xD4\xB9\x3C\x91\xFE\x1C\xEC\x5C\x9E\x77\x9F\x00\xE2\x3A\xF0\xE3\xCE\xE5\xBD\xCD\xB9\x3C\x91\xFE\x78\xE7\x5C\xC8\x09\x9B\x51\x1D\xD8\xFB\x62\x8F\x41\x9B\x0F\x48\x3A\xED\x58\xCE\x79\x2A\x55\x07\xF6\xFE\x06\x1E\x0F\xBC\xD9\xB9\x4C\x91\x5D\x39\x18\xFF\x01\x27\xEF\x3E\x01\xC4\x75\xE0\xF9\x01\x65\x1E\x1B\x50\xA6\x48\x6F\xA6\x07\x94\xB9\x20\xA0\xCC\xB0\x0E\xBC\x12\x78\xDE\xB9\xCC\x13\x9C\xCB\x13\xD9\x95\xE3\x9D\xCB\x5B\x4E\x09\x4F\x18\x99\x85\xEF\x3B\xB4\xD5\x68\x42\x87\xC4\xEB\x04\xD6\xE2\x9B\xBB\xDF\x89\xBA\xD8\xC8\x81\xA1\xB9\xCE\xE5\xED\x0E\x1C\xE9\x5C\xA6\xC8\xCE\xDE\x01\x8C\x73\x2E\xF3\x01\xE7\xF2\x7E\x2B\xB2\x03\x47\x5C\xF4\x1F\x05\x94\x29\xD2\xD3\x7B\x02\xCA\xF4\xFE\x32\x4B\xA2\x13\x78\x19\xDF\x47\x91\x90\x91\x3C\x91\x1E\x9E\xC0\x37\x67\xD7\x53\xE2\x9F\x7E\x3F\xC1\x7F\x3E\xE9\x41\x49\x6B\x20\x75\x72\x18\xFE\xF9\xFA\xA3\xC8\x0B\x8E\x9E\x1C\x31\x27\xA0\xCC\x33\x03\xCA\x14\x81\x98\xDC\x8A\xE8\x03\xC9\x1C\x80\xFF\x27\xDA\x93\x49\x6B\x20\x75\xD1\x86\xCD\x57\xF6\xCE\xD7\xD2\x6F\x8B\xBC\x08\xFF\x46\xD1\xA4\x0E\xF1\x76\x3C\x25\xFC\xB2\x49\x31\xBF\xF8\xCE\x80\x32\x2F\x08\x28\x53\xEA\xED\xDC\x80\x32\x4B\xFD\xF8\xDC\xED\x38\xFC\x3F\xD9\x36\x61\xF3\xA3\xE5\xB5\x86\x03\x67\x61\x93\x68\x16\x63\xC7\xDC\x6C\xC3\x76\x82\xF8\x21\x70\x0E\xF0\xBA\x5C\x17\x57\x60\xE3\xB0\x9C\xD2\x93\x62\x2F\xDA\x81\x5F\xE1\xDF\x38\xDA\xD3\xF8\xB5\x4E\x07\x9E\xA3\xFF\x76\x5B\x89\x7D\xDB", + "\xB4\xE5\xB9\xCC\x42\xBA\x1C\xFF\xFC\x5C\x41\x85\x56\xD0\xCD\x24\xA6\x81\x74\xF0\x99\x25\xC9\x4D\x0C\xBC\xFD\xBE\x8B\x8E\x6E\x05\xCB\xA1\xE5\xF8\xE7\xE7\xDF\xA5\xAC\x44\xB4\xE9\xF8\x37\x50\x03\x7B\x5C\xAC\xBB\xC1\x74\xDE\xEE\xF8\x3E\xFA\x26\xFE\x33\x62\x72\xF3\xA8\x94\x95\x88\xD6\x4E\xCC\xA7\x5C\xDD\xCF\xB5\x3D\x9D\xA1\xB7\xE1\xC7\x93\x5F\x75\x71\xB4\x01\x8F\xE0\x9F\x97\xCF\x52\xC1\x0F\xC6\xAB\x88\xF9\xA4\xFB\xE3\x94\x95\x28\x10\xAF\xE3\x45\xD7\x61\x0B\x45\xEA\xE8\x14\x62\x72\xF2\x33\x29\x2B\x91\xCA\x1B\x80\x57\xF1\x6F\xAC\x79\x54\xF0\xD3\xAE\x05\x67\xE1\xD7\x86\x75\x1C\x10\x6C\x03\x1E\xC5\x3F\x1F\xBB\x80\xBD\x12\xD6\x23\xA9\x3B\x88\xF9\xC4\x3B\x2D\x65\x25\x0A\x62\x36\x7E\xED\x77\x5F\xE2\x6B\x2F\x82\x0F\x12\x93\x8B\xA1\x73\x9F\x73\x7B\x3F\x31\x8D\xF6\x24\xF5\x1B\x91\xF6\x78\x7C\xEE\x8E\x4D\x54\xE8\x95\x47\x0B\x86\x03\xCF\x10\x93\x8B\x27\x27\xAC\x47\x72\x1D\xC4\xCC\x37\x6D\x60\xC7\x65\xD6\xC9\x66\x7C\xDB\xAF\x4E\x13\x63\xAE\x20\x26\x07\x97\x50\xE2\xA5\x83\xAD\xFA\x04\x31\x8D\xB7\x06\x98\x98\xB0\x1E\xB9\x79\xCF\x1C\xF2\xDE\x85\xA2\xA8\x26\x61\x03\x77\x11\x39\x78\x71\xC2\x7A\x64\x33\x1A\xEB\x6C\x11\x0D\x78\x73\xC2\x7A\xE4\xA6\x47\xE8\xC1\xF9\x3A\x31\xB9\xB7\x0A\xD8\x2D\x61\x3D\xB2\xFA\x02\x31\x8D\xB8\x8D\x98\x2D\x41\x8B\x48\x83\x58\x03\x77\x1C\xB0\x9D\x98\xDC\xBB\x26\x61\x3D\xB2\xDB\x0B\xFF\xDF\x70\xDD\xF1\x24\x30\x22\x5D\x55\xB2\xD1\x6B\xA4\x81\x19\x45\xDC\xC0\xD5\x46\x60\x72\xBA\xAA\x14\xC3\xDF\x13\xD3\x98\x0D\xE0\xDA\x84\xF5\xC8\x45\x13\x39\x06\x26\xEA\xA9\xAF\x01\x7C\x29\x61\x3D\x0A\x63\x0F\xFC\x37\xBD\xEB\x8E\x2E\x6C\x7B\xD0\xAA\xD3\x54\xCA\xD6\x1C\x4B\xCC\x24\xA2\x06\x96\xC3\x93\xD2\x55\xA5\x58\xBE\x48\xDC\xA7\xE2\xB3\xC0\xEF\xA5\xAB\x4A\x36\x5A\xCC\xD0\xB7\xB1\xC0\x52\xE2\xF2\xEC\xBA\x74\x55\x29\x9E\x09\xC4\x0D\xE9\x37\x80\x6F\x26\xAB\x49\x3E\x5A\x4E\xD8\xB7\xEF\x10\x97\x5F\x6B\xA9\xD7\xFB\xF3\x5E\x7D\x8A\xB8\x06\x6E\x10\xB3\x55\x4A\x11\x69\x41\xFF\xEF\xBA\x90\xD8\xDC\xAA\xDB\xE4\xA1\x5E\x0D\x07\x9E\x26\xAE\x91\x37\x53\x9F\x23\x59\xB4\xA5\xCE\x0E\x47\x03\xAF\x10\x97\x57\x75\x9C\xBE\xBB\x4B\xEF\x23\xF6\x93\x72\x19\xF5\x9A\xA5\x55\x77\x93\xB0\x1D\x5B\x22\x73\xEA\xA4\x64\xB5\x29\x89\xBB\x88\x6D\xF0\x9F\x52\x8F\xF7\xC3\x75\x37\x0A\x3B\x8B\x28\x32\x97\x7E\x9C\xAC\x36\x25\x72\x00\x31\x3B\x03\xF6\x8C\xD9\xD4\xE3\xB7\x5F\x5D\xB5\x11\x3B\x68\xD5\xC0\x26\x6D\x4C\x4B\x55\xA1\xB2\xB9\x92\xD8\xC6\x6F\x00\xD7\x27\xAB\x8D\xA4\xF6\x65\xE2\xF3\xE7\xF2\x64\xB5\x29\xA1\x4E\x6C\x87\x8D\xE8\x9B\xF0\xE9\x54\x15\x92\x64\x2E\x25\x3E\x6F\x1E\x45\x03\x57\xFD\x3A\x02\x1B\x3D\x8D\xBC\x11\xDB\xB1\x57\x0C\x52\x0D\x7F\x49\x7C\xE7\xED\x02\x0E\x4F\x55\xA1\xB2\xBB\x9A\xF8\x1B\xB2\x0D\x38\x3B\x4D\x75\x24\xD0\xB9\xC4\xAD\x30\xEA\x19\x9F\x4B\x55\xA1\x2A\xE8\x24\x7E\x24\xB1\xFB\x9B\x58\x2F\xE3\xCB\xEB\x42\xEC\x83\x38\x3A\x4F\xEE\xA7\x06\x3B\x6D\x78\xDB\x0F\x3B\xDD\x3C\xFA\xE6\x34\x80\xCF\x26\xAA\x93\xF8\x49\x31\xE0\xD9\xC0\xA6\xFA\x4E\x49\x53\xA5\xEA\xF9\x08\x69\x6E\x52\x03\x5B\x6E\xA6\x57\x4C\xC5\xD7\x4E\x9A\xD1\xE6\xEE\xF8\x50\x9A\x6A\x55\xD7\xBF\x90\xEE\x66\xFD\x00\x9B\x08\x20\xC5\x34\x02\x5B\x84\x91\x2A\x1F\xBE\x96\xA6\x5A\xD5\x36\x12\x3B\x42\x25\xD5\x4D\xBB\x0F\x4D\xBB\x2C\xA2\x49\xA4\x19\x17\xE9\x8E\x07\xD1\xCC\x3D\x37\xFB\x00\xBF\x21\xDD\xCD\x5B\x81\x4D\x86\x97\x62\x38\x82\xD8\x35\xBD\x3B\xC7\x8B\xD8\x49\x22\xE2\x68\x06\xF1\xEF\x87\x7B\xC6\x66\xEA\xB3\x14\xB1\xC8\x3E\x46\xEC\xAA\xA2\x9D\x63\x2B\xF0\xEE\x14\x15\xAB\xA3\x0B\x48\x77\x23\xBB\xE3\x56\xEA\xB1\xB3\x47\xD1\x8C\x25\x7E\x5E\x73\x6F\x71\x4E\x8A\xCA\xD5\xD9\x0D\xA4\xBF\xA9\xCB\xA8\xCF\x76\xB5\x45\x70\x34\x71\x27\x78\xF4\x15\xB5\xDA\x1A\x36\x97\x36\x6C\xC1\x7A\xEA\x9B\xDB\x85\xED\x76\xA9\x81\x8D\x38\x23\x81\xCF\x13\xB7\x01\x5D\x5F\xF1\x6D\xF4\x1A\x31\x99\x91\xC0\x3D\xA4\xBF\xC9\x0D\x6C\x27\x86\x77\xC6\x57\xB1\x76\xDE\x4D\xEC\xCE\x2C\x7D\xC5\x5D\xE8\x83\x39\xB9\xD1\xA4\x7D\xAD\xD0\x33\xB6\x03\xFF\x8C\x6D\x8D\x2B\x43\x33\x09\x3B\xEE\x24\xC5\x7C\xE6\xDE\xE2\x7E\x6A\x74\x24\x4A\xD1\x8C\x25\xED\x3B\xE2\x9D\x63\x2D\x36\xA5\x4F\x9F\xDE\x03\x37\x0C\x9B\x87\x1E\xB9\x2B\x69\x7F\xF1\x28\xDA\x55\x32\xBB\x89\xC0\xE3\xE4\x4B\x82\x06\xF0\x14\xF0\x01\xF4\x1B\xAA\x15\xED\xC0\x99\xC4\x1D\x73\xD2\x6A\x3C\x8E\x26", + "\xEC\x14\xC6\x78\xE0\x21\xF2\x26\x44\x77\x52\xA8\x23\xEF\xDA\x0C\xD2\x6C\xD8\xD0\x5F\xCC\x43\x9D\xB7\x70\xC6\x01\x0F\x90\x3F\x39\xBA\x13\xE4\x4F\xB0\x65\x91\x75\x37\x0C\xF8\x53\xE0\x11\xF2\xDF\x97\x06\x36\x55\x76\x6C\x68\x8D\x65\xD0\x46\x03\x77\x93\x3F\x49\xBA\x63\x39\x70\x19\xF5\xFC\x9D\x35\x1E\xDB\xB4\xBF\x95\xCD\xE6\x53\xC5\x5D\x68\xC0\xAA\xF0\x46\x60\xEF\xF4\x72\x27\x4B\xCF\x78\x05\x3B\x87\x68\x06\xD5\x7F\xBC\x3E\x02\xB8\x05\xDB\xBD\x31\x77\xBB\xF7\x8C\xEF\x63\xAF\x1F\xA5\x04\xDA\x88\x3D\x4E\x72\x28\xF1\x0C\x36\x21\xE4\xE0\xB0\xDA\xA7\x77\x28\x76\xC8\x57\x8E\xD9\x53\xAD\xC4\xB5\x54\xFF\x83\xB3\x92\xCE\x27\xED\x02\x88\x81\xC6\x42\x2C\xF1\x8F\xA5\x5C\x5B\xB6\x74\x62\x53\x4B\xAF\xC7\x26\xB6\xE4\x6E\xC7\x5D\xC5\x56\xE0\xA3\x41\x6D\x20\x89\x9C\x40\xDA\xA5\x88\x83\x8D\x35\xD8\xC6\xF3\x17\x62\xDF\xCE\xED\x11\x8D\x31\x48\xED\xC0\x21\xC0\x45\xC0\xBF\x63\xEF\xBF\x73\xB7\x57\x7F\xF1\x22\x35\x58\x55\x54\x97\xC7\x8A\x37\x62\xBB\x6D\x94\xE9\x90\xB3\x75\xD8\x4C\xB3\x47\x80\xC7\xB0\x57\x54\x8B\xB0\x79\xC2\x91\x3A\x81\x03\xB1\x0E\x7B\x28\xB6\x95\xEA\x31\x94\x6B\xE4\xF6\x21\xE0\x0C\xE0\xF9\xDC\x17\x12\xAD\x2E\x1D\x18\x6C\x00\xE3\x1F\x81\xF3\x72\x5F\xC8\x10\x6C\x01\x96\x60\xAB\xA3\x96\x36\xE3\x45\x60\x75\x8F\x58\x8F\x75\xF2\x57\xB1\xD3\xE3\x01\xC6\x60\x1D\xB3\x13\xEB\x88\x13\x7A\xC4\x64\x60\xEA\x4E\x51\xE6\x99\x65\x37\x03\x97\x60\x6D\x25\x15\xF4\x61\xD2\xED\x76\xA9\x48\x17\xEB\xD0\x06\x74\xB5\xB1\x2F\x76\x5A\x61\xEE\xA4\x53\xF8\xC4\xCF\xD0\x81\x63\xB5\xD3\x89\x9D\x00\x51\xE4\x51\x6A\x45\xDF\xD1\x85\xED\xE9\x5D\xA6\x11\x7C\x71\x76\x18\xF0\x30\xF9\x93\x51\x31\xB0\x78\x14\x78\x7B\x2F\xF7\x53\x6A\xA8\x13\x5B\xDA\xB6\x81\xFC\x89\xA9\xE8\x3B\x36\x61\x4B\x38\xF5\xAD\x2B\xBF\x63\x7F\x60\x0E\xF9\x93\x54\xD1\x7B\xDC\x81\x1D\xB9\x23\xD2\xA7\x19\xC0\x02\xF2\x27\xAC\xC2\xE2\x69\xE0\xBD\x7D\xDE\x31\x91\x9D\x0C\xC7\x4E\x63\xCF\xB9\x63\x44\xDD\x63\x0D\xF6\x4E\x57\x87\x6A\xCB\xA0\xED\x8E\x8D\x56\xEB\xDD\x71\xBA\xD8\x80\x6D\x1F\x5C\xC7\x65\x98\x12\x64\x22\x96\x54\x45\x5B\x26\x57\xA5\xD8\x08\xDC\x04\xEC\xD9\xE2\x3D\x11\x19\xB0\x3D\xB1\x55\x38\xAB\xC9\x9F\xF0\x55\x89\x55\xD8\xAA\xAC\xC9\x03\xB8\x0F\x22\x43\xB2\x1B\x76\xD4\xCB\x53\xE4\xEF\x00\x65\x8D\x25\xD8\xEB\x3B\xED\x92\x21\xD9\x74\x00\xEF\x03\x6E\x27\xCF\x89\x02\x65\x8B\x2E\xE0\x47\xC0\xC9\xE8\x5D\xAE\x14\xCC\xDE\xC0\xDF\x60\xDF\x2C\xB9\x3B\x4A\xD1\x62\x31\xF0\x19\x60\xAF\x41\xB7\xAE\x48\x42\x6F\xC1\x46\xAF\xEB\xDC\x99\x9F\xC7\x06\xA5\xA6\x53\xAF\xA5\xAB\x52\x21\xED\xC0\xBB\x80\x1B\xC9\x77\xF6\x4F\xCA\x78\x0A\xF8\x07\xAC\xD3\x16\x69\x57\x11\x11\x17\xFB\x01\x7F\x81\xFD\x66\x7E\x89\xFC\x1D\x6E\xA8\xB1\x1E\xF8\x2F\x6C\xBB\x9D\xA9\x8E\xED\x24\x2D\xD0\x63\x4D\x5E\x1D\xD8\xD6\x35\xD3\xB1\x6D\x6B\xA6\x03\xFB\x64\xBD\xA2\xFE\xAD\xC0\x36\x47\x9F\x8B\x1D\x0C\xB6\x00\xD8\x96\xF5\x8A\x6A\x4C\x1D\xB8\x78\x26\x62\x7B\x51\x1D\xC2\x8E\x7D\xA9\xF6\x27\xFD\xAC\xA4\x35\xD8\xC0\x53\xF7\x7E\x5C\x0B\x80\xF9\xD8\xFB\x6F\x29\x08\x75\xE0\xF2\x18\x8B\x3D\xA2\x4E\x69\xC6\xEB\xB1\xCE\xDE\x73\x7F\xAB\x11\xCD\xBF\xD7\x8E\xCD\x1F\x1E\xDD\xFC\x77\x37\x60\xAF\x6F\xB6\x63\x8F\xBC\x5B\xB0\x8E\xB8\xAA\xF9\xE7\x4A\xE0\xD7\xD8\x49\x12\x4B\x9B\xF1\x52\x78\x8D\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\xA4\xF4\xFE\x1F\x9F\x26\x82\x4B\xC1\xE1\x03\xEE\x00\x00\x00\x00\x49\x45\x4E\x44\xAE\x42\x60\x82\x03\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x4E\x6F\x6E\x65\x87\x13\x00\x00\x89\x50\x4E\x47\x0D\x0A\x1A\x0A\x00\x00\x00\x0D\x49\x48\x44\x52\x00\x00\x00\xF0\x00\x00\x00\xF0\x08\x06\x00\x00\x00\x3E\x55\xE9\x92\x00\x00\x00\x06\x62\x4B\x47\x44\x00\xFF\x00\xFF\x00\xFF\xA0\xBD\xA7\x93\x00\x00\x13\x3C\x49\x44\x41\x54\x78\x9C\xED\xDD\x79\xB0\xDE\x55\x7D\xC7\xF1\xF7\x93\x9D\x35\xB9\x06\x08\x8B\x40\x22\x7B\xD9\x77\x50\xA4\x0C\x45\x04\xAC\x12\x60\xB0\x68\x3B\x78\x29\xB8\x8C\x83\x40\xAD\xCB\x50\xA8\xA5\x45\x91\x29\x5A\x8C\x4A\xAB\x32\x2D\xB4\x53\x10\x52\x29\x55\x08\x12\xC1\x22\xB6\x6C\xA1\x94\x7D\x4F\x00\x03\x62\x48\x81\xDC\x10\xB2\xDF\xDC\xA7\x7F\x7C\x9F\x3B\x09\xE1\x2E\xCF\x7D\xEE\xF7\x7B\xCE\x6F\xF9\xBC\x66\xCE\x24\x86", + "\xEB\xB9\xE7\xFB\x7B\xCE\x79\x7E\xE7\xF7\x3B\x1B\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x00\x8D\xDC\x05\x10\x37\x5D\xC0\x96\xC0\x58\x60\x73\x60\xFC\x46\xFF\xBD\x17\x58\xD6\xFA\x7B\x0F\xB0\x14\x58\x97\xAC\x74\x12\x42\x0D\xB8\xD8\x1A\xC0\xF6\xC0\xFB\x80\x5D\x80\x9D\x81\x6D\x5B\xFF\xD6\xFF\xE7\x96\xAD\xD4\x89\xB7\xB1\x86\xFC\x06\xF0\x0A\xF0\x5A\xEB\xCF\x57\x81\x05\xC0\x7C\x60\x21\x6A\xE8\x85\xA5\x06\x5C\x1C\xDB\x02\xFB\xB7\xD2\xBE\xAD\xB4\x07\x30\x29\x67\xA1\x80\xB5\xC0\x4B\xC0\x63\xC0\xE3\xAD\xF4\x28\xF0\x02\xD0\xCC\x57\x2C\x01\x35\xE0\x5C\xC6\x03\x87\x02\x87\x03\x47\xB4\xD2\x4E\x59\x4B\x34\x72\x4B\x80\xFB\x37\x48\xF7\xB1\xBE\x8B\x2E\x89\xA8\x01\xA7\xD1\x00\xF6\x03\xFE\xA0\x95\x8E\xC6\x9E\x53\xAB\xA4\x17\x78\x10\xB8\x13\xF8\x25\xD6\xA0\xD7\x64\x2D\x91\xC8\x28\x4C\x02\x8E\x03\x66\x01\x2F\x63\xDD\xCD\x3A\xA5\xE5\xC0\x2D\xC0\x67\xB0\xC7\x03\x91\xC2\x9B\x08\xCC\x04\x6E\xC4\x5E\x10\xE5\x6E\x44\x45\x49\xBD\xC0\x5D\xC0\x67\x81\xF7\x74\x7C\x75\x45\x02\x34\x80\x63\x80\x7F\xC4\x9E\x0B\x73\x37\x96\xA2\xA7\xD5\xC0\xCF\x80\x3F\xC2\xBE\xF0\x44\xB2\x98\x82\x75\x0F\x1F\x27\x7F\xA3\x28\x6B\x5A\x02\xFC\x10\x7B\x3F\x20\x92\xC4\x21\xC0\xF5\xD8\x9D\x24\x77\x03\xA8\x52\xBA\x1B\x38\x0D\x18\xD3\xFE\x47\x21\xD2\x9E\x06\xF6\x42\xEA\x16\xF2\x57\xF4\xAA\xA7\x17\x80\xAF\x02\x93\xDB\xFA\x64\x44\x86\x30\x16\xF8\x24\xF0\x14\xF9\x2B\x76\xDD\xD2\x1B\xC0\xC5\x74\x3E\xCB\x4C\x6A\x6C\x0C\x70\x3A\xF0\x34\xF9\x2B\x72\xDD\xD3\x5B\xC0\xE5\xD8\x3B\x07\x91\x61\x7D\x04\x78\x92\xFC\x15\x57\xE9\x9D\xE9\x75\xE0\x02\x60\xC2\xE0\x1F\x9D\xD4\xD9\xEF\x01\x73\xC8\x5F\x51\x95\x86\x4E\xBF\x01\xCE\x44\xB3\x08\xA5\x65\x2A\x70\x35\xB6\xE2\x26\x77\xE5\x54\x6A\x3F\xFD\x17\x1A\x7E\xAA\xB5\x06\xF6\x4D\xBE\x98\xFC\x95\x51\xA9\xB3\xB4\x16\x9B\xAA\xAA\x17\x5D\x35\xB3\x17\xF0\xDF\xE4\xAF\x80\x4A\x3E\xE9\x65\x6C\x0A\xAB\x54\x5C\x03\x9B\x3D\xB5\x9C\xFC\x95\x4E\xC9\x3F\xCD\xC6\x1E\x89\xA4\x82\xA6\x63\x13\xEA\x73\x57\x32\xA5\xD8\xB4\x08\x38\x99\x9A\xA8\xCB\x9B\xBC\x33\x81\xAB\xA8\xDE\x1A\xDC\x0D\xAD\xC4\xC6\x4C\x97\x63\x0B\xEB\x7B\x37\xFA\xEF\xE3\xB1\xF8\x27\x61\xB3\x9C\x36\x4B\x5A\xBA\xF4\xBE\x0F\x7C\x09\x9B\xF2\x5A\x59\x55\x6F\xC0\x9B\x63\x1F\xE4\xA7\x72\x17\x64\x94\xDE\x06\x9E\xC3\xA6\x19\x2E\x00\x5E\x04\x7E\x0B\xFC\xAE\x95\xFE\x0F\x7B\xA1\x33\x12\xE3\xB0\xA5\x7D\xD3\x80\xF7\xB6\xFE\x9C\x8E\xED\xBD\xB5\x0B\xB0\x1B\xB0\xD5\xE8\x8B\x9E\xD5\xC3\xD8\xAA\xA7\xE7\x73\x17\x24\x4A\x95\x1B\xF0\x7E\xD8\xBA\xDC\x3D\x73\x17\x64\x84\xDE\xC4\xB6\xA8\x99\x87\xED\x43\xF5\x18\xD6\x60\xFB\x32\x94\x65\x3B\xEC\x3A\xEE\x0F\x1C\x04\x1C\x49\xF9\xB6\xFE\x59\x86\xBD\xF7\xB8\x21\x77\x41\xA4\x7D\xA7\x51\x9E\x05\xF5\xAF\x61\xAB\x9B\xCE\xC6\x36\xB1\x2B\xFA\x97\xEA\xF6\xD8\xF5\xBD\x0A\x78\x96\xFC\xD7\xAF\x9D\xD4\x87\x4D\xC7\xD4\x4A\xA7\x82\x6B\x00\x97\x60\x1F\x58\xEE\x4A\x33\x58\x5A\x07\x3C\x00\x5C\x84\xDD\xD9\x8A\xDE\x60\x87\xB3\x23\xB6\xD3\xC6\x1C\xEC\x39\x3C\xF7\xF5\x1D\x2A\xCD\x41\xAB\x9C\x0A\x6B\x53\xE0\x26\xF2\x57\x92\xC1\xEE\x00\xF7\x00\xE7\x62\xDD\xD2\xAA\xDA\x0C\x5B\x04\x72\x33\xB0\x8A\xFC\xD7\x7D\xA0\xF4\x34\xB6\xCF\xB6\x14\xC8\x54\xE0\x5E\xF2\x57\x8E\x8D\xD3\x8B\xC0\x5F\x62\x2F\x87\xEA\xA6\x0B\x38\x07\xDB\x9D\x32\xF7\xE7\xB0\x71\x5A\x04\x1C\x1C\x17\xBA\x8C\xC4\x74\x8A\xB5\xEC\xAF\x17\xEB\x09\x7C\x18\x3D\x73\xF5\xDB\x0F\x1B\x0D\x58\x4A\xFE\xCF\xA7\x3F\x2D\x03\x8E\x8F\x0C\x5A\x86\xB7\x0F\x76\x0C\x48\xEE\xCA\xD0\x5F\x21\xBE\x8B\xBA\x67\x43\x99\x8C\x8D\xCD\x2E\x24\xFF\xE7\xD5\xC4\xF6\xAD\xFE\x44\x68\xC4\x32\xA8\xFD\x29\xC6\x42\x84\x1E\xE0\xAF\xB1\x2E\xA3\xB4\x67\x3C\x36\xB9\xE6\x39\xF2\x7F\x7E\xBD\xAD\xB2\x48\x42\x07\x62\x0B\xBC\x73\x37\xDC\x4B\xD0\x4E\x11\xA3\x31\x0E\x6B\x3C\xCF\x93\xF7\xB3\x5C\x87\x0D\xE3\x49\x02\x07\x61\x93\x1D\x72\x7D\xD8\x6B\xB0\xE7\xB9\xAD\xA3\x03\xAD\x91\x09\xC0\x79\xE4\xFD\x52\xEE\xC3\x5E\xBA\x49\xA0\x3D\xC8\xDB\x6D\xBE\x8D\xF2\xCD\xEC\x2A\x93\x29\xC0\xB7\xB0\x2F\xC9\x1C\x9F\x6F\x2F\xF0\xF1\xF0\x28\x6B\x6A\x27\xF2\xBD\xFC\x78\x19\x9B\x7D\x24\x69\xEC\x4B\xBE\xF5\xDA\xAB\x81\x13\xE2\x43\xAC\x97\xAD\xC9\x33\x6D\xAF", + "\x0F\xDB\xF1\xA1\xCA\xAB\x98\x8A\xAA\x01\x7C\x9A\x3C\x43\x4F\xCB\x81\xF7\xC7\x87\x58\x0F\x13\xC8\xB3\x8E\xF7\x25\xE0\xD8\xF8\xF0\x64\x18\xDB\x01\xB7\x92\xFE\xF3\x7F\x1D\xD8\x35\x41\x7C\x95\xD6\x00\xFE\x85\xF4\x1F\xDE\xB5\x68\x9F\xA5\x22\x69\x00\x5F\x20\xFD\xF4\xCC\x27\xD1\xDC\xE9\x51\xB9\x88\xB4\x1F\xD8\x32\x34\x26\x58\x64\x07\x92\x7E\xEC\x78\x2E\x36\xDC\x25\x23\x74\x22\x69\xB7\x7A\x7D\x02\xBD\x61\x2E\x83\x2D\xB0\xBD\xAF\x52\x36\xE2\x2B\x92\x44\x56\x21\x3B\x61\xBB\x4C\xA4\xFA\x80\xB4\xCC\xAC\x5C\x1A\xD8\x01\x68\xA9\xBE\xE0\xFB\xD0\x28\x44\xDB\x26\x62\xBB\x51\xA4\xFA\x60\x2E\x45\x8B\x0E\xCA\xEA\xA3\xD8\x63\x4F\x8A\xBA\xB2\x04\xDB\x6A\x48\x86\x31\x8B\x34\x1F\xC8\x5A\xE0\xAC\x44\x31\x49\x9C\x83\xB1\xE5\x81\x29\xEA\xCC\x43\xE8\x6C\xA6\x21\x1D\x47\x9A\xDD\x34\xDE\xC6\x0E\x31\x93\x6A\x98\x01\x3C\x43\x9A\x46\x7C\x59\xA2\x98\x4A\xA7\x0B\x9B\xF1\x14\xFD\x01\x2C\x45\x83\xF4\x55\x34\x0D\x7B\x11\x19\x5D\x7F\x7A\x81\xA3\x12\xC5\x54\x2A\xD7\x13\x7F\xF1\x7B\x80\x23\x52\x05\x24\xC9\x6D\x0D\x3C\x4A\x7C\x3D\x5A\x80\xBD\x0D\x97\x96\x8F\x90\xE6\xCE\x7B\x58\xAA\x80\x24\x9B\xA9\xA4\x69\xC4\xDF\x49\x15\x50\xD1\x6D\x8A\x6D\x58\x1E\x79\xB1\x57\x00\xBF\x9F\x2A\x20\xC9\x6E\x1B\xE2\x9F\x89\xD7\xA1\xDE\x1C\x00\x7F\x47\xEC\x85\x5E\x83\x0D\x37\x48\xBD\xCC\xC0\x4E\xAF\x88\xAC\x5B\x0F\x51\xF3\x59\x5A\xFB\x62\x2F\x05\x22\x2F\xF2\x67\x92\x45\x23\x45\x73\x00\xF1\xE3\xC4\xE7\x25\x8B\xA6\x80\xE6\x12\x7B\x71\xBF\x95\x2E\x14\x29\xA8\x93\x88\xBD\x49\xBC\x49\x4D\x8F\x34\x3D\x89\xD8\xC6\x3B\x07\x18\x9B\x2C\x1A\x29\xB2\xAF\x10\x5B\xD7\xAE\x4C\x17\x4A\x31\x8C\x03\x9E\x22\xEE\x82\xBE\x88\x9D\xBC\x27\x02\x36\x77\xFA\xDF\x89\xAB\x6F\xAB\xB1\xD3\x1C\x6B\xA3\x9B\xB8\x8B\xB9\x0A\x38\x24\x59\x24\x52\x16\x5B\x10\x7B\x00\xC0\x75\xE9\x42\xC9\x6B\x1C\xB1\xDB\x88\x5E\x90\x2E\x14\x29\x99\x83\x89\xDB\x30\xAF\x17\xD8\x2B\x5D\x28\xF9\x9C\x45\x5C\xE3\xBD\x93\xF2\x9F\xF6\x27\xB1\x22\x37\x89\xA8\xFC\x5D\x78\x2C\x30\x9F\x98\x8B\xD7\x83\x1D\x75\x29\x32\x94\xB1\xD8\x49\x91\x51\x77\xE1\x4A\x6F\x0A\x71\x1A\x71\xDF\x7E\x9F\x4B\x18\x87\x94\xDB\x1E\xC4\xED\xAF\xF5\x83\x84\x71\x24\x17\xB5\xD7\xEF\xFD\x68\x51\xBE\x8C\xCC\xA5\xC4\xD4\xC5\x15\xC0\x56\x09\xE3\x48\xE6\x30\x62\x2E\xD8\x5A\x60\xEF\x84\x71\x48\x35\x4C\x22\xEE\x65\xEA\x5F\x24\x8C\x23\x99\xA8\xED\x61\xAF\x4A\x19\x84\x54\xCA\x29\xC4\xD4\xC9\x57\xA8\xD8\x1C\xE9\xC9\xD8\x6E\xF7\xDE\x17\xEA\x2D\x6C\x21\xB7\x48\xA7\xEE\x24\xA6\x11\x57\x6A\xC7\x97\xCF\x13\x73\x91\x2E\x4A\x19\x84\x54\xD2\xA1\xC4\xD4\xCD\x9B\x52\x06\x11\xED\x21\xFC\x2F\xD0\xEB\x68\x57\x04\xF1\x11\x71\x74\xCB\x1A\x6C\x5D\x72\xE9\xED\x45\xCC\x37\xDC\x85\x29\x83\x90\x4A\x8B\xBA\x0B\x57\x62\xA9\xE1\xD7\xF0\xBF\x30\x4B\xD1\xD9\x45\xE2\xEB\x17\xF8\xD7\xD3\x5F\x27\x8D\x20\x48\xC4\x4E\x81\xDF\x4E\x1A\x81\xD4\xC1\x89\xF8\xD7\xD3\x75\xC0\xF6\x29\x83\xF0\xB6\x27\xFE\x17\xA5\x17\x98\x9E\x30\x06\xA9\x87\x06\x31\x4B\x5C\xCF\x8D\x2C\x74\xF4\xEC\xA5\x3F\x0C\xC8\xF3\x76\xEC\xEC\x5E\x11\x4F\x4D\x62\xA6\x41\x7E\x2C\x20\xCF\x64\x22\xC6\xD8\x4E\x49\x1A\x81\xD4\xC9\x54\xFC\xE7\x48\xAF\xC4\x76\x5E\x2D\x9D\xCD\xF0\xBF\x18\x8B\x80\xF1\x29\x83\x90\xDA\xB9\x11\xFF\x9B\xCE\x09\x51\x85\x8D\xEC\x42\x1F\x83\x9D\x34\xE8\xE9\x27\xD8\xDC\x67\x91\x28\xD7\x07\xE4\x79\x7C\x40\x9E\xE1\x2E\xC7\xFF\x9B\xEC\xE8\xA4\x11\x48\x1D\x4D\xC4\x86\x29\x3D\xEB\xED\x43\x49\x23\x70\x72\x37\xFE\xDD\x67\xED\x32\x29\x29\x5C\x87\x6F\xDD\x5D\x0B\x6C\x1E\x51\xD0\xA8\x2E\xF4\x78\xFC\x37\x96\xBB\x1D\x1B\x57\x13\x89\x76\x9B\x73\x7E\xE3\xB0\xD9\x5E\xEE\xA2\x1A\xF0\x01\xF8\xBF\x79\x9B\xEB\x9C\x9F\xC8\x60\xEE\xC0\xEE\x9C\x9E\x8E\x74\xCE\x0F\x88\x6D\xC0\x9E\x9A\xD8\x45\x15\x49\x61\x31\xF0\x88\x73\x9E\x07\x39\xE7\x07\xC4\x35\xE0\xFD\x9C\xF3\x7B\x1A\x5B\x7D\x24\x92\x8A\xF7\x3C\xE6\x90\x5D\x63\xCA\xD2\x80\xEF\x71\xCE\x4F\x64\x38\xF7\x39\xE7\xB7\x1B\xB0\x89\x73\x9E\x61\x0D\x78\x1F\xE7\xFC\xEE\x77\xCE\x4F\x64\x38\xDE\x0D\x78\x2C\xB6\x1B\xA6\xAB\x88\x06\xDC\x85\xFF\xB9\x44\xDE\xCF\x23\x22\xC3\x59\x08\xBC\xE1\x9C\xE7\xAE\xCE\xF9\x85\x34\xE0\xE9\xCE\xF9\xAD\xC3\x9E\x81\x45\x52\x7B\xC2\x39\xBF\xE9\xCE\xF9\x95\xA2\x01\xCF\xC7\x26\x84\x17\xC1\x04\xE0\x0C\xE0\x06\xAC\x5C\x6B\x5B\x69\x7E\xEB\xDF\xCE\x68\xFD\x4C\x2E\x2A\x9F\xAF\xC2\x37\xE0\x08\x17\xE0\x3B", + "\x8B\x65\x4E\xDA\xE2\x0F\xEA\x34\xAC\x5B\x35\x5C\x79\x17\xB6\x7E\x56\xE5\x2B\x57\xF9\x06\xE2\x5D\x97\x6F\x4D\x5B\xFC\xCE\x5C\x86\x6F\xD0\xDF\x4F\x5B\xFC\x77\x19\x03\xCC\x62\xE4\xE5\x9E\x45\x9A\xD3\x22\x54\xBE\x38\xDE\xFB\x46\x3F\x98\xB6\xF8\x9D\xF9\x11\xBE\x41\x7F\x39\x6D\xF1\xDF\xA5\x93\xCA\xB7\x61\x25\x54\xF9\x8A\x5D\xBE\xA1\x1C\x48\xE7\x65\x1F\x28\xBD\x90\xB6\xF8\x9D\xF1\x3E\x09\xFD\xCC\xB4\xC5\x7F\x07\x8F\xC3\xD8\x22\xBB\x83\x2A\x5F\xAC\x1D\x86\x28\x57\x27\xA9\x27\x6D\xF1\x3B\xF3\x2B\x7C\x83\xCE\xB5\xC3\xFD\x04\xEC\x1B\x73\xB4\xE5\x7F\x09\xFF\x75\xD1\x2A\x5F\x1A\x9B\xB4\x51\xBE\x91\xA4\x3E\x9C\x8F\x5C\x89\x78\xC6\xF0\x9E\x6D\xE2\x3D\x16\xD7\xAE\x53\x81\x19\x0E\xF9\xEC\x0C\xCC\x74\xC8\x67\x63\x2A\x5F\xBC\x95\xF8\x8E\x80\x34\x70\x5E\xE4\x13\xD1\x80\xBD\xBF\x2D\x57\x38\xE7\xD7\x2E\xCF\xBD\xB7\x4E\x75\xCC\xAB\x9F\xCA\x97\x86\x77\xFD\x73\xDD\x12\xAA\x0C\x0D\x78\x8D\x73\x7E\xED\xF2\x5C\xBF\x19\xB1\x16\x54\xE5\x4B\x63\xB5\x73\x7E\xAE\xED\x23\xA2\x01\x7B\x6F\x3A\x97\x6B\x0F\xAC\xED\x0A\x9A\x57\x44\x9E\x75\x2C\x5F\xBB\xBC\x6F\x20\xAE\x13\x55\x22\x1A\x70\x9F\x73\x7E\x0D\xE7\xFC\x72\xFC\xDE\x88\x18\x54\xBE\x34\xBC\xDB\x88\x6B\xFB\x88\x68\xC0\xDE\x77\xCC\x5C\x53\xEB\x5E\x2B\x68\x5E\x11\x79\xD6\xB1\x7C\xED\xF2\x7E\x24\x74\xED\x92\x47\x34\xE0\x42\x77\x39\x46\xE0\xE1\x82\xE6\x15\x91\x67\x1D\xCB\xD7\x2E\xEF\xFA\xE7\xDA\x3E\x22\x1A\xB0\xF7\x43\xFF\x64\xE7\xFC\xDA\xF5\x53\xC7\xBC\xFE\xC3\x31\xAF\x7E\x2A\x5F\xBC\x06\xFE\x67\x50\xE7\x7A\x29\xDB\xB6\xB9\xF8\x0E\x7E\xE7\x3A\x4A\x65\x33\x6C\x2B\xDB\xD1\x96\x7F\x51\x2B\x2F\x95\xAF\x58\xE5\x6B\xC7\x94\x36\xCB\xD8\x6E\x5A\x83\xF3\xF3\x7C\xC4\x1D\xD8\x7B\xE2\xC5\x54\xE7\xFC\xDA\xB5\x1C\xB8\xD8\x21\x9F\x8B\x5B\x79\x79\x53\xF9\xE2\x79\x6F\x4C\xB1\x04\x6B\xC8\x85\xF6\x3D\x7C\xBF\xB5\x2E\x49\x5A\xFA\x77\xFB\x31\x9D\x97\xFD\xC7\x2A\x5F\xE1\xCB\x37\x94\x0F\xD2\x79\xD9\x07\x4A\x4F\xA6\x2D\x7E\x67\x2E\xC1\x37\xE8\x6B\x53\x16\x7E\x00\x13\x80\xD9\x8C\xBC\xDC\xB3\x49\xF3\x02\x4E\xE5\x8B\x73\x26\xBE\x75\xD9\x7B\xA7\xCB\x10\xE7\xE0\x1B\xF4\x5D\x69\x8B\x3F\xA0\x06\xF0\x05\xDA\x3B\x33\x67\x69\xEB\x67\x53\x8E\x5D\xAA\x7C\x31\xFE\x0A\xDF\xBA\x7C\x43\xDA\xE2\x77\xE6\x78\x7C\x83\x5E\x94\xB6\xF8\x43\xEA\x02\xBE\x88\x7D\x93\xAE\x60\x7D\x19\x57\xB4\xFE\xED\x8B\xAD\x9F\xC9\x45\xE5\xF3\x35\x9A\xEE\xFF\x40\xE9\x9B\x69\x8B\xDF\x99\xDD\xF1\x0D\xBA\x09\x6C\x9D\x34\x82\xF6\x75\x51\xAC\x0A\xB7\x31\x95\x6F\x74\x9E\xC0\xB7\x1E\x7F\x36\x6D\xF1\x3B\x33\x09\xDB\x49\xD2\x33\xF0\x63\x93\x46\x20\x62\xCF\xDF\x6B\xF0\xAD\xC7\x1F\xF6\x2E\x64\xC4\x30\xD2\x2A\x6C\x11\xB6\xA7\x9C\xAB\x51\xA4\x9E\xF6\xC7\x7F\x61\xCE\x33\xCE\xF9\x85\x6D\x1A\xE6\xBD\x1D\x67\xC8\xC9\x6E\x22\x43\xF8\x80\x73\x7E\x4B\xB1\x1D\x37\x5D\x45\x35\xE0\xC7\x9C\xF3\x3B\x92\x62\xBC\x95\x94\xFA\x38\xC2\x39\xBF\x27\xB1\x6E\xB4\xAB\xB2\xDC\x81\xB7\xC1\xFF\xBC\x25\x91\xC1\x34\x80\x63\x9C\xF3\x7C\xDC\x39\x3F\x20\xAE\x01\xCF\x0B\xC8\xD3\xFD\x05\x80\xC8\x20\x0E\x04\xA6\x39\xE7\x19\xB2\x27\x74\x54\x03\x7E\x11\xFF\xF1\xDB\x13\x9C\xF3\x13\x19\x4C\xC4\xCD\xC2\xFB\xB4\xC3\x70\x37\xE1\xFB\x0A\x7E\x0D\xFE\x93\xCB\x45\x06\x72\x3F\xBE\x75\xF7\x4D\x82\x6E\x96\x91\x47\x57\xDC\xEB\x9C\xDF\x78\xE0\x64\xE7\x3C\x45\x36\xB6\x33\x70\x98\x73\x9E\xF7\xE2\xBF\xD5\x14\x10\xDB\x80\x7F\x19\x90\xE7\xE9\x01\x79\x8A\x6C\xE8\x74\xFC\x47\x3C\xEE\x72\xCE\x2F\x89\x06\xF0\x2A\xBE\x5D\x91\xB5\xC0\xF6\x29\x83\x90\xDA\x79\x04\xDF\x3A\xDB\x04\xF6\x4E\x1A\x81\xA3\x7F\xC6\xFF\x62\x5C\x98\x34\x02\xA9\x93\xC3\xF1\xAF\xAF\x2F\x47\x16\x38\xFA\xF8\xC6\xDB\x03\xF2\x3C\x9B\xFC\xC7\x4E\x4A\x35\x9D\x1D\x90\xE7\xDC\x80\x3C\x93\xD9\x02\x3B\x5B\xC6\xFB\x5B\xED\xA3\x29\x83\x90\x5A\x78\x0F\xF0\x36\xFE\x75\x35\xD7\xE1\x7C\x6E\x7E\x8A\xFF\x45\xF9\x55\xCA\x00\xA4\x16\x2E\xC6\xBF\x9E\x2E\x21\xFF\xAE\x22\xA3\xF6\x27\xF8\x5F\x98\x26\x70\x70\xCA\x20\xA4\xD2\x26\xE2\xFF\xC2\xB5\x09\x5C\x93\x32\x88\x28\x5B\x12\xD3\x8D\xF6\xDC\x77\x58\xEA\xED\x5C\x62\x6E\x32\x27\xA6\x0C\x22\xD2\xBF\x12\x73\x81\xBC\x07\xDC\xA5\x7E\x26\x01\xAF\xE0\x5F\x37\x5F\xC5\xF9\x30\xEF\x9C\x8E\x21\xA6\x01\xFF\x3C\x61\x0C\x52\x4D\x7F\x46\x4C\xDD\xFC\x7A\xCA\x20\xA2\x35\x80\xE7\x88\xB9\x50\x5A\xE4\x20\x9D\xEA\x02\x5E\xC7\xBF\x4E\xF6\x01\xBB\x24\x8C\x23\x89\xAF\x10\xD3", + "\x80\x9F\xA4\x42\x5D\x15\x49\xCA\xFB\x10\x82\xFE\x74\x47\xCA\x20\x52\xE9\x22\x66\x9C\xAD\x09\x9C\x9F\x30\x0E\xA9\x86\x7D\xB0\xA9\xB9\x11\xF5\xB1\xF4\x63\xBF\x83\x89\xFA\xC6\x7B\x1B\x98\x91\x30\x0E\x29\xB7\x31\xC0\x3D\xC4\xD4\xC5\x67\xA8\xF0\x4C\xC1\x19\x40\x2F\x31\x17\xEE\xB6\x84\x71\x48\xB9\x9D\x4F\x4C\x1D\x6C\x62\x27\x93\x54\x5A\x27\xE7\xE4\xB4\x9B\x3E\x91\x30\x0E\x29\xA7\x5D\x80\x65\xC4\xD4\xBF\x57\xB1\x61\xA9\x4A\xDB\x1B\xFF\x8D\xDF\xFB\xD3\x4B\xD8\xAC\x1A\x91\x81\x8C\xC3\x16\xD7\x47\xDD\x40\xCE\x4B\x17\x4A\x5E\xD7\x11\x77\x11\xCF\x48\x18\x87\x94\xCB\x25\xC4\xD5\xBB\x97\xA9\xC1\xDD\xB7\xDF\xEE\xC4\xBD\x01\xBC\x31\x61\x1C\x52\x1E\xC7\x12\xF7\xFE\xA5\x09\x7C\x3E\x5D\x28\xC5\xF0\x23\x62\x2E\xE4\x0B\x29\x83\x90\x52\xD8\x11\x58\x4C\x5C\xE3\x7D\x9E\x0A\xAC\x3A\x1A\xA9\x69\xB4\x77\x5E\xEC\x48\xD3\x8A\x94\x41\x48\xE1\x4D\xC2\x7F\x97\xC9\x8D\x53\x6D\x37\x5B\xFC\x32\xFE\x17\x73\x79\xD2\x08\xA4\xC8\x1A\xC4\x2D\xA4\xE9\x4F\x11\x9B\x37\x96\xC6\x34\xD4\x85\x96\x38\x97\x13\xDB\x78\xD7\x02\xFB\x26\x8B\xA6\x80\xBA\xF1\xBF\xA8\xB3\x53\x06\x20\x85\x15\xB5\xC6\x77\xC3\x74\x45\xB2\x68\x0A\x6A\x0E\xFE\x17\xB5\x3B\x65\x00\x52\x48\xDD\xD8\x8A\xA0\xC8\xC6\xBB\x00\xD8\x34\x51\x3C\x85\xD4\x05\xAC\xC6\xF7\xA2\xAE\x6E\xE5\x2B\xF5\x75\x3A\xB1\xC3\x45\x4D\xEC\xCB\xE1\x43\xA9\x02\x2A\xAA\x6E\xFC\x2F\xEC\x9C\x94\x01\x48\xE1\x7C\x92\xB8\xF9\x05\x1B\xA6\x7F\x4A\x15\x50\x91\xA9\xFB\x2C\x9E\x3E\x4D\xDC\x14\xDD\x0D\xD3\x7C\x6C\xBB\xE4\x5A\x53\xF7\x59\x3C\x7D\x95\xF8\x67\xDE\x26\x76\x77\x3F\x22\x51\x4C\x85\xD6\x8D\xFF\xC5\x55\xF7\xB9\x7E\xC6\x02\x7F\x4F\x7C\xC3\xED\x4F\x5F\x4B\x13\x56\xF1\xA9\xFB\x2C\xA3\xB5\x25\x70\x0B\xE9\x1A\xEF\x1D\xD8\x17\x46\xED\x4D\xC1\xBF\xFB\xAC\xC3\xBF\xEB\x65\x77\x6C\x2F\xB4\x54\x8D\x77\x21\xB0\x75\x92\xC8\x4A\xA0\x1B\xFF\x0B\xAC\xEE\x73\x7D\x9C\x4A\xCC\x1C\xFA\xC1\xD2\x2A\xE0\xD0\x24\x91\x95\x84\xBA\xCF\xD2\x89\x49\xC0\x55\xA4\x6B\xB8\xFD\x29\xE2\xC4\xC2\xD2\xD2\xDB\x67\xE9\xC4\xBE\xC0\x63\xA4\x6F\xBC\xDF\x4C\x11\x5C\x99\x9C\x85\xFF\x45\xBE\x35\x69\x04\x92\xD2\x38\x6C\x88\x68\x15\xE9\x1B\xEF\x6C\x2A\xBC\xBB\x64\xA7\xD4\x7D\x96\x76\x1D\x0C\xFC\x2F\xE9\x1B\x6E\x13\xF8\x35\x35\xDA\x1E\xA7\x5D\x7A\xFB\x2C\xED\x98\x02\xCC\x22\x7E\x3E\xF3\x60\xE9\x11\xF4\x48\x36\xA0\x6E\xFC\x2F\xB6\xDE\x3E\x57\xC7\x38\xE0\x73\xC0\x6B\xE4\x69\xB8\x4D\xE0\x09\x60\xAB\xE8\x40\xCB\x4A\xDD\x67\x19\x48\x03\x1B\x1A\x7A\x86\x7C\x0D\xB7\x89\xED\x6B\xB5\x5D\x70\xAC\xA5\x55\xD6\xB7\xCF\x93\x81\xE3\x80\x8B\xB0\x03\xC5\xE7\x63\xF3\x61\xD7\xB6\xFE\x7E\x03\xB6\x8D\x6D\xED\x36\x34\x73\xD0\x00\x3E\x06\x3C\x48\xDE\x86\xDB\x04\x9E\x06\x76\x88\x0D\xB7\xDC\xBA\xF1\xBF\xE8\xDE\xDD\xE7\xF1\xC0\x21\xD8\xF6\xA0\xD7\x02\x4F\xD1\xFE\xEA\x96\xDF\x01\x17\xA2\x67\xA7\x76\x8C\x03\x3E\x0E\x3C\x4C\xFE\x86\xDB\x04\x1E\xC5\xB6\x76\x92\x21\x14\xB1\xFB\xBC\x2B\xB6\x7E\xF4\x3B\xD8\x6E\xFD\x2B\x1D\xCA\xB4\x0C\xB8\x12\xD8\x6D\x94\x65\xAB\xA2\xC9\xC0\x97\xB0\xD3\x33\x72\x37\xDA\xFE\x34\x0F\xBD\x04\x1D\x56\x11\xBA\xCF\x5B\x01\x27\x61\x3B\xF3\xDF\x46\xCC\xA1\xCE\x1B\xA6\x3E\x6C\xF2\xFB\xA9\xD8\x9D\xBD\xCE\x8E\xC4\x16\xC0\x47\x1D\x2D\xDB\x69\xFA\x39\x5A\xD7\xDB\x96\x6E\xFC\x2F\xFE\x50\xDD\xE7\x49\x58\xA5\x39\x1F\x3B\xC2\x65\x7E\xC0\xEF\x1F\x49\x5A\x8C\x1D\xAB\x5A\xA7\x75\xA4\x33\xB0\x47\x8A\xC7\xC9\xDF\x50\x07\x4A\x57\xA3\x43\xE1\xDB\x16\xD9\x7D\x1E\x03\xEC\x05\x7C\x0A\x9B\x27\xFB\x3F\xD8\xD8\x70\xEE\x0A\x32\x58\x9A\x0F\xFC\x2D\xF0\x7E\xAA\x37\xCB\x67\x0F\x6C\x9F\xEF\xFB\x49\xB3\xB8\xBE\x93\xD4\x87\xBD\x90\x94\x36\x45\x74\x9F\x9B\xD8\x22\xEE\x3B\x81\x9E\x80\xBC\x53\xA5\x45\xC0\x35\xC0\x1F\x03\xDB\x76\x7A\x81\x33\xDA\x1C\x7B\x2C\xF9\x36\xF0\x2C\xF9\xAF\xE7\x70\x69\x29\x30\x33\xE4\x4A\x64\xD4\x08\xCE\xBF\x1B\xAB\xA4\x32\xB4\x26\xB6\xBE\xF5\x1E\xE0\xBE\x56\x7A\x2E\x6B\x89\xDE\x6D\x3B\xE0\x70\xEC\xF1\xE4\x03\xAD\xBF\x97\xA5\x1B\xFA\x2C\x70\x0A\x36\x5C\x54\x29\xD1\x0D\x78\x0E\xF6\x2D\x2D\x23\xD7\x83\x0D\x71\x3C\xD6\x4A\xCF\x61\x7B\x11\xFF\x36\xF8\xF7\x4E\xC5\x0E\xC1\xDE\x1D\x5B\x05\xD4\x9F\xDE\x1B\xFC\x7B\xA3\xDC\x8C\xDD\x48\xDE\xCA\x5C\x8E\x10\x91\x0D\xB8\x0B\xEB\x26\x6A\x92\x83\xAF\x15\xC0\x8B\xD8\xD8\xF3\xAB\xAD\xB4\x04\x6B\xF0\x3D\x58\x57\xB1\x7F\xFC\xBA\xA7\xF5\xFF\xD9\x82\xF5\x77\xCB\x2E\x6C", + "\x48\x67\x72\xEB\xEF\x3B\x00\xDB\xB4\xFE\xDC\x19\x9B\x8B\x5C\x05\x2B\x81\x3F\x07\xFE\x21\x77\x41\xCA\xAA\x9B\xFC\xCF\x3D\x4A\xF5\x4C\x4F\x00\xFB\x50\x03\x91\x6F\x42\x4F\x0F\xCC\x5B\x64\x20\xEB\xB0\x97\x6A\x87\x62\x8D\xB8\xF2\xA2\xBA\xD0\xEA\x3E\x4B\x6A\x4F\x03\x7F\x8A\x0D\x63\xD5\x46\xD4\x1D\xF8\x64\xD4\x78\x25\x8D\xD5\xC0\xD7\x81\x83\xA8\x59\xE3\x85\xB8\x61\x00\x75\x9F\x25\x85\x3B\xB0\x63\x44\x8B\x36\xE4\x96\x4C\x44\x17\x5A\xDD\x67\x89\xB6\x10\x9B\xF5\x55\xFB\xB3\xA0\x23\xEE\xC0\xEA\x3E\x4B\x94\x25\xC0\xE5\xC0\x77\xB1\x8D\xEE\x6A\x2F\xA2\x01\x6B\xE2\x86\x78\x5B\x89\x4D\x9F\xBD\x0C\x78\x33\x73\x59\x0A\x25\xA2\x01\x1F\x12\x90\xA7\xD4\xD3\x0A\xE0\x07\xC0\x15\xD8\x63\x99\x6C\x24\xE2\x19\x78\x05\xB0\x49\x40\xBE\x52\x1F\x4B\x81\x1F\x62\x63\xBA\x8B\x33\x97\xA5\xD0\xCA\x32\x19\x3D\xB7\xE5\xC0\x43\xD8\xFE\x4D\x87\x03\x47\xE5\x2D\x4E\x65\x2D\xC0\x9E\x6F\xAF\xC1\x76\x37\x91\x0C\x5E\x20\xFF\x54\xBA\xD1\xA4\x5E\x6C\x11\xC1\xD5\xC0\x39\xC0\x7E\xBC\xFB\x58\xC9\x03\xB0\xAE\xDD\xB2\x02\x94\xB7\xEC\x69\x1D\xB6\x3B\xC6\x4C\xAA\xB7\x46\xBA\x94\x6E\x24\x7F\xA5\x18\x49\x5A\x08\xFC\x1B\xB6\x5F\xD3\xD1\xD8\x3A\xD7\x76\x6D\x89\x6D\x82\x57\x84\x9D\x15\xCB\x96\x5E\x01\xFE\x06\x5B\x40\x21\x05\x72\x06\xF9\x2B\xC7\x60\xA9\x07\xDB\x08\xE0\x1B\xD8\x70\x97\xE7\x3E\xC0\x7B\x02\x97\x52\xFE\x1E\x48\x64\x7A\x03\xEB\xD9\x1C\x8B\x0E\xCB\x76\x11\xF1\x12\x6B\x22\xB6\x80\x3A\xF7\x37\xEB\x5A\x6C\x1D\xED\x03\xD8\xEE\x83\xF3\xB0\x72\xF5\x05\xFF\xDE\x06\xF6\x9C\x3C\xB3\x95\xF6\x08\xFE\x7D\x45\xB7\x18\x3B\x80\xEE\x66\xE0\x17\xD8\x96\x47\xE2\x24\x6A\x31\xC3\x69\xC0\x4F\x82\xF2\x1E\xCC\x02\xDE\xD9\x58\x1F\xA6\x18\x83\xFD\x7B\x61\x1B\x98\x7F\x08\xDB\xC9\xA2\xEA\x87\x66\xF5\x61\xEF\x10\xE6\x02\x3F\xC3\x3E\x93\xE8\x2F\xCD\xDA\x8A\x5C\xD0\x3F\x0B\x38\x2F\x28\xEF\x37\x58\xDF\x50\xFB\xD3\xEB\x41\xBF\xCB\xD3\x26\xC0\x07\xB1\xD3\x1E\x8E\xC2\x26\xE0\x4F\xCC\x5A\xA2\xD1\xEB\xC3\x8E\x45\xB9\x1B\xF8\x4F\xE0\x2E\xEC\xF3\x91\x04\x22\x1B\xF0\x18\x6C\x93\xF3\xD1\x36\xE2\x55\xD8\xDD\x74\xC3\xC6\x3A\x7F\x94\x79\x16\xC5\x44\xEC\x18\xCD\x23\x80\xC3\x80\xFD\xB1\x4D\xE1\x8B\xFC\x7C\xB8\x10\xDB\x2E\x76\x1E\xB6\xFA\xE7\x01\x6C\xDC\x56\x32\x88\xDE\x13\x0B\xAC\x3B\x7D\x25\xB0\x63\x1B\x3F\xDB\x87\x3D\xA7\x6E\xD8\x58\x1F\xC5\x9E\x67\xEB\x62\x13\x60\x6F\x6C\xF8\x6A\x37\xEC\x04\x89\x5D\xB1\x7D\xAA\x52\x6D\x44\xBE\x0A\x7B\x24\xE9\x4F\xCF\x63\x0B\xE4\x1F\x67\xFD\x36\x3D\x52\x00\x29\x1A\x30\xD8\xE2\x86\x53\xB1\x97\x3A\x87\xB0\xFE\x05\xD7\x6F\xB0\xDD\x18\xE7\x61\xDF\xE4\x0F\xA2\x6F\xF3\xA1\x74\x61\x6F\xCE\xB7\x6F\xFD\x39\x8D\xF5\xFB\x5B\x4D\xC1\x86\xB5\x36\x6B\xFD\xEC\x98\xD6\xBF\x83\x6D\xE8\xB6\xAE\xF5\xF7\x95\xAD\xFF\xBD\xB4\x95\x7A\xB0\x23\x3D\x5F\xC3\x36\xCC\x5B\xDC\x4A\xCD\xD8\x50\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x44\x04\xFE\x1F\x5E\x25\x15\x9E\xA9\x3B\xF3\x73\x00\x00\x00\x00\x49\x45\x4E\x44\xAE\x42\x60\x82\x03\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x51\x75\x65\x73\x74\x69\x6F\x6E\x33\x16\x00\x00\x89\x50\x4E\x47\x0D\x0A\x1A\x0A\x00\x00\x00\x0D\x49\x48\x44\x52\x00\x00\x00\xF0\x00\x00\x00\xF0\x08\x06\x00\x00\x00\x3E\x55\xE9\x92\x00\x00\x00\x06\x62\x4B\x47\x44\x00\xFF\x00\xFF\x00\xFF\xA0\xBD\xA7\x93\x00\x00\x15\xE8\x49\x44\x41\x54\x78\x9C\xED\x9D\x79\x94\x5E\x55\x91\xC0\x7F\xDD\xE9\x74\x27\x24\x99\x24\x24\x24\x01\x04\x12\xC2\xA2\xC8\x8E\x80\x4A\x10\xC4\x1C\x81\x19\x40\x90\x55\x87\x51\x30\x80\x30\xB8\xB0\x88\xCC\xA8\xA3\xEC\xA2\x28\x43\x10\x8F\xE0\x20\x8B\x23\xBB\x38\x32\x80\x30\x38\x20\x83\x10\x43\x34\x10\x02\x61\x4B\x48\x37\xCB\x91\x25\x1B\x09\xD9\x3B\xC9\x37\x7F\xD4\xD7\xA6\xE9\x74\x7A\xFB\xAA\xEA\xBE\xA5\x7E\xE7\xD4\x49\x0E\xC6\xFB\xDD\xAA\x5B\xF5\xDE\x7D\xF7\xD6\xAD\x0B\x41\x10\x04\x41\x10\x04\x41\x10\x04\x41\x10\x04\x41\x10\x04\x41\x10\x04\x41\x10\x04\x41\x10\x04\x41\x10\x04\x41\x10\x04\x41\x10\x04\x41\x10\x04\x41\x10\x04\x41\x10\x04\x41\x10\x04\x41\x10\x04\x41\x10\x04\x41\x10\x04\x41\x90\x96\xBA\xD4\x1D\x08\x7A\xCC\x08\x60\x6C\x55\xB6\x01\x36\xAF\xFE\xB7\x11\xC0\xC8\xEA\x9F", + "\x4D\xC0\xD0\xEA\xBF\x6F\x04\x06\x55\xFF\xBE\x0C\x58\x5D\xFD\xFB\xBB\xC0\x2A\x60\x41\x07\x79\x13\x68\x69\x27\x0B\xAD\x14\x09\xF4\x88\x00\xCE\x1E\xA3\x80\x5D\xAB\xB2\x4B\xF5\xCF\xED\x81\x21\xCE\xFD\x58\x02\xCC\x06\x9E\xAD\xCA\xCC\xAA\xBC\xE3\xDC\x8F\xA0\x0B\x22\x80\xD3\xD2\x0F\xF8\x20\xB0\x1F\x30\xA1\x2A\xE3\x92\xF6\xA8\x7B\xDE\x04\xA6\x03\x8F\x03\x4F\x00\xD3\x58\xFF\x76\x0F\x9C\x89\x00\xF6\x67\x07\xE0\x50\xE0\x10\x60\x7F\xD6\x4F\x73\xF3\xCA\x52\xE0\x31\xE0\x01\xE0\x41\x60\x4E\xDA\xEE\x04\x81\x2E\xFD\x80\x4F\x02\xD7\x20\xCE\x5D\x29\xB8\xCC\x06\xAE\x06\x0E\x00\xEA\x15\xEC\x17\x04\xEE\xD4\x23\xD3\xE1\xC9\xC0\x5F\x49\x1F\x54\xA9\x64\x1E\xF0\x4B\x60\x22\x11\xCC\x41\x0E\xD8\x1A\xB8\x00\x78\x8D\xF4\xC1\x93\x35\x79\x15\xF8\x1E\xF0\x81\xBE\x1A\x37\x08\x2C\x68\x00\x8E\x02\xEE\x07\xD6\x92\x3E\x50\xB2\x2E\x6B\x80\xFB\x80\x23\x91\xCF\x8B\x20\x48\xC2\x60\xE0\x34\xE0\x25\xD2\x07\x45\x5E\xA5\x19\x38\x1F\x18\xD6\x4B\xDB\x07\x41\x9F\xD9\x12\xF8\x01\xB0\x88\xF4\x01\x50\x14\x59\x04\x5C\x8E\x24\xA7\x04\x81\x09\x9B\x21\x4E\xB6\x9C\xF4\x0E\x5F\x54\x59\x05\x5C\x47\x04\x72\xA0\xC8\x08\x64\x61\x6A\x09\xE9\x1D\xBC\x2C\xB2\x0C\x59\xC1\x1F\xDD\xFD\xF0\x04\x41\xE7\x34\x01\xDF\x04\x16\x93\xDE\xA1\xCB\x2A\xEF\x02\xDF\x40\xF2\xBA\x83\xA0\xC7\x1C\x4E\x39\x92\x2E\xF2\x22\xB3\x81\x63\xBB\x1C\xB1\x20\x00\x76\x04\x1E\x26\xBD\xC3\x86\x74\x2E\xFF\x83\x1C\xEC\x08\x82\xF7\xD1\x80\x6C\x67\xAC\x20\xBD\x93\x86\x74\x2D\x2B\x90\x35\x89\x98\x56\x07\x00\xEC\x0E\xFC\x85\xF4\x8E\x19\xD2\x3B\x79\x06\xD8\xA7\x93\xF1\x0C\x4A\x42\x7F\xE0\x12\x24\x33\x28\xB5\x33\x86\xF4\x4D\x5A\x81\x0B\x91\x19\x54\x50\x22\xC6\x21\xE7\x59\x53\x3B\x60\x88\x8E\x3C\x49\x7C\x1B\x97\x86\x49\xC0\x7B\xA4\x77\xBA\x10\x5D\x59\x02\x9C\x44\xC9\x28\xD3\x81\xFE\x81\xC0\xCF\x80\x2F\xA6\xEE\x48\x0D\xAC\x00\x5E\x41\x6A\x56\x35\x57\xFF\x7C\x9B\xF5\x75\xAD\xE6\x23\x7B\xA7\x20\x55\x32\x96\x55\xFF\x3E\x88\xF5\x8B\x3E\xC3\x58\x5F\x43\x6B\x04\x92\x2C\x31\x0E\xA9\xB5\x35\x0E\xD8\x16\xB1\x55\x5E\xB9\x01\x38\x13\x58\x99\xBA\x23\x1E\x94\x25\x80\xC7\x01\x77\x03\x7B\xA4\xEE\x48\x2F\x58\x08\x4C\x01\x9E\x42\x6A\x52\x3D\x83\x04\xEF\x3A\xE3\xDF\xED\x07\x8C\x07\x76\x43\x6A\x72\xED\x09\x7C\x1C\x18\x6E\xFC\xBB\x9A\x4C\x07\x8E\x46\x8E\x30\x06\x39\xE7\x60\xE4\xCD\x94\x7A\x8A\xD7\x9D\xCC\x03\x6E\x05\x4E\x01\x76\x22\x5B\x0F\xD7\x3A\xA4\x4F\xA7\x02\xB7\x91\x1F\x7B\x4E\xB4\x30\x46\xE0\xC7\x19\x64\x7B\x95\x79\x26\xB2\x8A\xBA\x2F\xF9\x3A\x1B\xDB\x0F\xF8\x28\x70\x11\x32\x3B\x48\x6D\xC7\x8D\x49\x2B\x72\xE4\x33\xC8\x19\xF5\xC0\x15\xA4\x77\xA0\xCE\xE4\x79\xE0\xBB\x48\x35\xCA\xA2\xB0\x13\x92\x5C\xF1\x02\xE9\xED\xDB\x99\x5C\x4E\xB6\x66\x34\x41\x17\x0C\x04\x7E\x4D\x7A\xA7\x69\x2F\xCB\x80\x9B\x90\x6F\xC9\xA2\x33\x01\xB8\x99\xEC\x1D\xBB\xBC\x03\x18\x60\xA8\x77\xA0\xC0\x10\xE0\xFF\x48\xEF\x2C\x6D\xD2\x0C\x9C\xC5\xFA\xDB\x12\xCA\xC4\x30\xE0\x1C\x64\xA5\x3C\xF5\x38\xB4\xC9\x23\x48\x25\x95\x20\x83\x0C\x07\xA6\x92\xDE\x49\x2A\x48\xB1\xF3\xE3\xC8\xD7\x77\xAD\x15\x0D\xC0\x09\x64\x27\x5D\x75\x0A\x51\xC2\x27\x73\x8C\x02\x9E\x26\xBD\x73\xCC\x44\x8E\xBD\xC5\xF7\x56\xE7\x4C\x04\xFE\x4C\xFA\x71\x7A\x0A\xA9\xB0\x12\x64\x80\xCD\x80\x59\xA4\x75\x88\x59\x48\x95\xC5\x08\xDC\xEE\xA9\x03\x3E\x4B\xFA\x05\xAF\x67\x91\x84\x96\x20\x21\x43\x49\x3B\x35\x5B\x88\x1C\x43\x8C\xA3\x6D\xBD\xA7\x01\xD9\xE2\x99\x47\xBA\xF1\x9B\x01\x6C\x6A\xAD\x68\xD0\x39\x43\x48\xF7\xCD\xBB\x16\xB9\x2A\x25\x06\xBF\x76\x46\x02\xD7\x22\x19\x66\x29\xC6\x72\x0A\xB1\xB0\xE5\xCE\x40\xE0\x51\xD2\x0C\xF8\x2C\xCA\xB1\x1D\xE4\xCD\x04\xD2\x4D\xAB\x1F\x26\xB6\x98\xDC\xA8\x27\xCD\x3E\x6F\xDB\xD9\xD3\x26\x7B\x15\x4B\x4B\x13\x72\x46\xBB\x15\xFF\xF1\xBD\x9D\x58\xC3\x70\xE1\x47\xF8\x0F\x6E\x33\x72\x87\x6F\xE0\xC3\x3E\x48\x21\x3B\xEF\x71\xBE\xCC\x43\xB9\x32\x73\x06\xFE\x83\x7A\x3D\xF1\x8D\x94\x82\x21\x48\xF6\x9A\xF7\x78\x9F\xEA\xA0\x5B\x29\x39\x18\xDF\x83\x09\xCB\x81\x2F\xB8\x68\x16\x74\xC5\x97\xF0\x2D\x36\xD8\x0A\x7C\xCA\x45\xB3\x12\xB1\x0D\xBE\xDB\x0D\xAF\x01\x7B\xBB\x68\x16\xF4\x84\x3D\x80\xB9\xF8\x8D\xFF\x02\xE4\x0C\x79\xA0\xC0\x40\x24\x73\xC6\x6B\xF0\x1E\x25\xB6\x87\xB2\xC8\x48\xE0\x8F\xF8\xF9\xC1\x34\x62\x65\x5A\x85\x1B\xF0\x1B\xB4\x38\xB1\x92\x6D\x9A\x80\x5F\xE1\xE7\x0F\xBF\xF4\x51\xAB\xB8\x4C\xC2\x6F\xB0", + "\x2E\x22\xB6\x11\xF2\x40\x1D\xB2\x5A\xEC\xE5\x17\xB1\x0E\xD2\x47\xC6\xE3\x73\x23\xE0\x3A\xE4\xD8\x5B\x90\x2F\xCE\xC4\x27\x7B\xEB\x3D\xA2\x64\x6D\xAF\x69\x00\xFE\x84\x4F\xF0\x7E\xD5\x49\xA7\x40\x9F\xD3\x90\xB4\x56\x6B\x3F\x99\x86\x5C\x04\x10\xF4\x90\x8B\xB1\x1F\x94\xB5\xE4\xBB\xC4\x6C\x20\x9C\x84\x4F\x10\x5F\xE0\xA3\x4E\xFE\xD9\x1B\xFB\xFD\xDE\x75\xC0\x97\xBD\x14\x0A\xCC\x39\x03\xFB\xE9\x74\x2B\xB0\x97\x97\x42\x79\xA5\x01\x9F\x2D\xA3\xF3\xBC\x14\x0A\xDC\x38\x0B\x7B\xBF\x79\x86\x98\x4A\x77\xC9\xB7\xB1\x1F\x84\x8B\xDC\xB4\x09\xBC\xB9\x1C\x7B\xFF\x39\xDF\x4D\x9B\x9C\xB1\x03\xF6\x29\x73\xB7\x11\x5B\x45\x45\xA6\x0E\xF8\x4F\x6C\x7D\x68\x39\xB0\x9D\x97\x42\x79\xE2\x61\x6C\x0D\xFF\x28\x51\x39\xA3\x0C\x0C\xC0\x3E\x63\xEB\x41\x37\x6D\x72\xC2\x51\xD8\x1A\x7C\x2E\x91\x1E\x59\x26\x46\x22\xF7\x22\x59\xFA\xD4\x61\x6E\xDA\x64\x9C\x46\xE0\x65\xEC\x0C\xBD\x82\x58\x3D\x2C\x23\xBB\x63\x5B\x5C\x7E\x0E\x51\xDC\x01\x80\x7F\xC1\xF6\x49\x79\xB2\x9F\x2A\x41\xC6\xF8\x27\x6C\x7D\xAB\xF4\x19\x7C\x23\x81\xC5\xD8\x19\xF8\x17\x7E\xAA\x04\x19\xE5\x66\xEC\xFC\x6B\x11\x25\xFF\x34\xB3\xBC\x80\x6C\x0E\x52\xD5\x21\x28\x37\x83\xB1\xFD\x44\xBB\xD4\x4F\x95\x6C\x31\x06\xB9\xF4\xCB\xC2\xA8\xAD\xC8\xF5\x97\x41\x00\x92\xDD\xB7\x1A\x1B\x5F\x5B\x8A\xDC\x0C\x52\x3A\xAE\xC2\xEE\xA9\x78\x81\x9F\x1A\x41\x4E\xB8\x04\x3B\x7F\xFB\x91\xA3\x1E\x99\x60\x4B\xEC\x92\x36\x66\x11\xFB\xBD\xC1\x86\x0C\xC0\xAE\xEE\xF4\x72\x64\x46\x59\x1A\x7E\x88\x8D\x21\xD7\x12\xE5\x5F\x83\x8D\xF3\x31\xEC\x4E\x2E\x95\xE6\x5B\x78\x08\xB2\x7A\x67\x61\xC4\x9F\x3A\xEA\x11\xE4\x93\xEB\xB0\xF1\xBD\x05\x94\xA4\xFC\xF0\xD9\xD8\x18\x70\x21\x30\xC2\x51\x8F\x20\x9F\x6C\x8A\x04\x9B\x85\x0F\x7E\xCD\x51\x0F\xC0\x3F\xB1\xBF\x1F\xB2\xA4\xBF\xAD\x41\xDB\x5F\xA1\x9C\x6F\xE0\x7A\x60\x4F\x60\x7F\x60\x2C\xB0\x35\xB0\x55\xF5\xCF\x21\xC8\x4A\xFF\x62\xA4\x3C\xD1\x32\x24\xC5\x70\x6A\x55\x66\x20\x2B\xF6\x65\xE3\x6C\xE0\x4A\x83\x76\x5B\x90\xF2\x3B\x6B\x0C\xDA\xCE\x04\x56\x39\xCF\xB3\x90\xB3\xC4\x65\x61\x38\x72\xEB\xFD\xCD\xC0\x5B\xF4\xDD\x6E\xCB\x91\xC4\xFF\xB3\xAA\x6D\x96\x85\xFE\xD8\x2D\x68\x7D\xC6\x51\x0F\x77\x7E\x87\x8D\xD1\x8E\xF4\x54\x22\x21\x5B\x03\x93\xB1\xD9\x3F\x5F\x09\xDC\x09\x4C\x74\xD3\x26\x2D\xC7\x60\xE3\x8B\xF7\x7A\x2A\xE1\xC9\x56\xD8\x94\xCA\xF9\x0B\xC5\x3F\xE3\xBB\x23\x52\x1F\xDB\x2A\x19\xA1\xA3\x4C\xA3\xF8\x57\xA8\xD6\x01\x4F\xA3\x6F\xBB\x35\x88\xAF\x17\x8E\x0B\xB1\x71\xB6\x43\x3D\x95\x70\xA6\x11\xF8\x3E\xBE\x77\x42\xB5\xC9\x5A\x64\xC5\xB6\xC8\x53\xEB\x23\xB0\xB1\xDD\x77\x3C\x95\xF0\xA0\x1E\xB9\x6F\xC8\xE2\x4D\x51\x54\x3E\x08\x4C\xC7\x3F\x70\x3B\xCA\x02\xA4\x7C\x6B\x11\x67\x39\x75\xD8\xD8\xB8\x99\x82\xD9\xEB\x00\x6C\x9C\xEB\x38\x4F\x25\x9C\xA8\x43\x02\x66\x29\xE9\x83\xB7\xBD\xDC\x48\x31\x0B\xBA\x7D\x1E\x1B\x7B\x15\xEA\x13\xE4\xA7\xD8\x3C\xE5\x8A\xB6\xF2\x5C\x07\x5C\x4D\xFA\x60\xDD\x98\x3C\x44\xF1\x4E\x78\x35\x20\xDB\x3F\xDA\xB6\xBA\xCA\x51\x07\x53\xFA\x01\x6F\xA2\x6F\xA0\xB3\x3C\x95\x70\x20\xEB\xC1\xDB\x26\xD3\x80\xD1\x46\x36\x48\xC5\x39\xE8\xDB\xE9\x0D\xE4\xD3\x31\xF7\x1C\x84\xBE\x71\x96\x53\xAC\xC5\x95\x3A\xE0\x27\xA4\x0F\xCE\x9E\xCA\xCB\x14\x2B\xEB\x6D\x18\x36\x5B\x73\x9F\xF0\x54\xC2\x0A\x0B\xC7\xBC\xD1\x55\x03\x7B\xAE\x24\x7D\x50\xF6\x56\x7E\x4F\xB1\x3E\x61\x2C\xCA\xD1\x16\x62\x1A\x3D\x07\x7D\xC3\x14\x69\x81\xC0\xBA\x22\xA7\xA5\xFC\xD8\xC0\x1E\xA9\x38\x00\x7D\xFB\xBC\xE4\xAA\x81\x01\x3B\xA0\x6F\x94\xE7\x5D\x35\xB0\xA5\x11\x59\x8C\x4B\x1D\x88\xB5\xC8\x89\xEA\x56\x49\x43\x1D\x30\x1B\x7D\xFB\x8C\xB7\xEC\xB4\xF5\x47\xB6\x45\x92\xC5\xED\x06\x6D\xA6\xE2\x28\xE4\x00\x42\x9E\xB9\x0E\x49\xF1\xCC\x3B\x15\x6C\x7C\xEB\x60\x83\x36\xDD\x78\x10\xFD\x27\xDA\x87\x5C\x35\xB0\xE5\x0E\xD2\xBF\x41\x35\xE4\x16\x6D\xC3\x24\x62\x67\xF4\x6D\x93\xDB\xDC\xE8\xFE\xE8\xAF\xEC\x3D\xE3\xAA\x81\x3D\xAF\x90\x3E\xF8\x34\x64\x1D\xB0\xAF\xB2\x6D\x52\x31\x0B\x5D\xDB\xBC\x87\xE1\x62\x9F\xE5\x14\x7A\x37\x60\x13\xE5\x36\xFF\x4B\xB9\xBD\xD4\x6C\x91\xBA\x03\x4A\xD4\x21\x2B\xAE\x45\x48\x1F\xFC\x8D\x72\x7B\x83\x81\x5D\x94\xDB\xFC\x1B\x96\x01\x3C\xC1\xA0\xCD\x07\x0C\xDA\x4C\x49\x25\x75\x07\x14\xF9\x28\x70\x78\xEA\x4E\x28\x60\x71\x71\x99\x59\x9D\x36\xCB\x00\xD6\xDE\xEA\x99\x8F\x1C\x1D\x2C\x12\x6F\xA5\xEE\x80\x32\x93\x52\x77\x40\x81\xA9\x48\x79\x26\x4D", + "\x22\x80\x91\x3C\xDC\xB5\xCA\x6D\xA6\xA6\x68\x0F\xA4\x43\x90\xEB\x72\xF2\xCC\x5A\xE0\x7F\x95\xDB\xCC\x5D\x00\x8F\x41\x6A\x3F\x6B\xF2\x88\x72\x7B\x59\x40\xFB\x9B\xBE\x82\x54\x3D\x99\x84\xAC\xD6\x6F\x02\x0C\x44\xB6\x79\x8E\x46\xB2\x8D\x56\x2A\xFF\x66\x7B\x1A\x81\xE3\x0D\xDB\xF7\xE2\x0F\xCA\xED\x6D\x05\x6C\xA6\xDC\xA6\x29\x9F\x46\x7F\xA5\xB3\x48\xDB\x47\x6D\x34\xA1\x77\x8F\xED\x54\x60\xD7\x1E\xFC\xE6\x18\x64\xDB\xC7\x6A\x45\x7A\x6A\x9F\x2C\x91\x2D\x76\x41\xDF\x2E\x07\xB9\x6A\x50\x23\xE7\xA2\xAB\xFC\x42\x0A\x72\xB2\xA3\x13\x8E\xA5\x76\xFB\xFC\x9C\xDE\x6F\x55\x4C\x42\x2A\x52\x5A\x04\x71\xDE\x0F\x3A\xD4\xA1\x5F\x7A\xF6\xEB\xAE\x1A\xD4\xC8\x4D\xE8\x2A\x7F\x9F\x6B\xEF\xFD\xB9\x86\xBE\xDB\xE6\x3A\xFA\xBE\x7D\x73\x72\x0D\xBF\xDB\x95\xE4\xEA\x6D\xB3\x11\xB4\x0B\x30\x5E\xEF\xDB\xFD\xDA\xD0\x2E\x53\x72\xA1\x6F\xF7\xDD\xA9\xA7\x6F\x41\x7C\x0D\xB5\xCF\x4C\x6E\xE8\xC3\xEF\x76\x27\x45\xB8\xF8\xFA\x62\x74\x6D\xF2\xA4\x6F\xF7\x6B\x63\x09\xBA\xCA\x1F\xED\xDB\xFD\x64\x1C\x87\x1C\x04\xEF\xCE\x1E\x6F\xA0\x57\x4E\x68\x34\xFA\xE3\x75\xB3\x52\xDF\x52\x72\x3C\xBA\x36\xD1\xDE\x9A\x32\x63\x04\xFA\x4F\xF4\xED\x5D\x35\x48\x4B\x13\x72\xC2\xE7\x2E\xE4\xA4\xD2\x9A\xAA\x34\x57\xFF\xDB\x89\xD5\x7F\xA3\xC9\xF5\xE8\x8E\x57\x11\x52\x5E\x3F\x84\xBE\x1F\x0F\x73\xD5\xA0\x8F\xEC\x85\xAE\xD2\xCB\x90\xB2\x3C\x81\x1D\x87\xA0\x3B\x66\x45\x48\x50\x69\x40\xFF\x0A\xDC\xDD\xB5\x3B\x69\xB1\xB2\x3B\x4E\xB9\xBD\xB9\x14\x2F\x81\x23\x6B\x4C\x57\x6E\xAF\x08\x95\x3A\xD6\x20\x5B\x7C\x9A\x8C\x55\x6E\xCF\x24\x80\xB7\x51\x6E\xAF\x45\xB9\xBD\x60\x43\xE6\xA1\xFB\x90\x2C\x4A\xF9\xD9\xB9\xCA\xED\x69\xBF\xDC\x4C\x02\x58\xBB\x62\x61\xB3\x72\x7B\x41\xE7\x44\x00\x6F\x48\x8B\x72\x7B\x63\x94\xDB\x33\x09\x60\xED\x5C\xD8\x16\xE5\xF6\x82\x0D\x19\x83\xA4\x41\x6A\x51\x84\x29\x34\xE8\xBF\x3C\xD4\x13\x5C\x2C\x02\x58\xBB\x93\x6F\x2B\xB7\x17\x6C\x88\xF6\xE2\x4A\x6E\xB6\x4C\xBA\x41\x7B\x31\xAE\x94\x01\xBC\x40\xB9\xBD\x60\x43\xB4\xF7\xD9\x73\x5F\x8D\xB1\x8A\xB6\xEF\xA9\x9F\xD4\xCA\xC3\x14\x7A\xBE\x72\x7B\xC1\xFB\xD9\x1C\xF8\x9C\x72\x9B\x11\xC0\x9D\x93\x8B\x37\xF0\x20\xE5\xF6\xE2\x0D\x6C\xCB\x65\xE8\x8F\xD9\xCB\xCA\xED\xA5\x42\xFB\xE5\xA1\x6D\x67\x93\x00\xD6\xCE\x12\x5A\xAA\xDC\x5E\xB0\x9E\x49\xC0\x49\x06\xED\x16\xE5\x0D\xBC\x4C\xB9\x3D\xED\xD8\x30\x61\x11\x25\x4C\x3F\xCB\x21\xA7\x60\x73\x71\x78\x2B\x39\x3B\xBC\xDE\x05\xC3\xD1\xB5\xCD\x22\xDF\xEE\xF7\x8D\xE5\xE8\x2A\x3D\xD0\xB7\xFB\x85\x67\x0B\xE0\x56\xF4\x03\xB7\x4D\x7E\xEF\xA7\x8A\x39\x9B\xA0\x6B\x1B\xED\x37\xBA\xC9\x7E\x9D\xE6\x7E\x22\xC0\x6A\xE5\xF6\xCA\xC6\x26\x48\x72\xCD\x3E\xC0\x61\xC8\x29\x26\xED\x31\x6A\xCF\x9D\x86\x6D\x7B\xB3\x4A\xB9\xBD\x5C\x4C\xA1\xB5\xA7\x65\x71\x90\xA1\xE7\x34\x02\x27\x20\x57\x84\xCC\xC1\xAE\xE2\xC6\xC6\x64\x35\xF9\x2F\x6A\xD7\x9E\x7E\xE8\xDA\x67\x8D\x6F\xF7\xFB\x46\x4C\xA1\xD3\x70\x34\xF0\x1A\xBE\x01\xDB\x51\x2C\x6A\x2A\xA7\x24\xF3\x53\x68\x0B\x62\x11\xCB\x97\x7A\x60\x32\x69\x03\xB7\x4D\x3E\x6D\xAC\xAB\x37\xA5\x5C\xC4\x7A\x07\x5D\xA5\x8B\xB2\xA2\x69\x45\x56\x82\x57\xBB\x96\x72\x16\x18\x83\xAE\x8D\x72\x71\x4E\xFA\x75\x74\x95\x56\x3F\x82\x55\x20\x8E\x26\x7D\xE0\x56\x90\xCB\xCD\x3E\x62\xAC\x6B\x0A\xC6\xA3\x6B\x27\xED\xF3\xC5\x26\x89\x1C\xDA\xF3\xFC\x22\x2D\x8A\x68\xD2\x08\x5C\x91\xBA\x13\x55\xEE\xA2\x78\xB7\x4C\x80\xBE\xEF\xA9\x7F\x03\x5B\x04\xB0\x76\xFA\x59\xDE\x6B\x0C\x5B\xF1\x59\xB2\x31\x3B\x59\x0C\xFC\x6B\xEA\x4E\x18\xA1\xED\x7B\xEA\x79\xFD\x16\x01\x9C\xF9\x04\xF0\x82\x70\x54\xEA\x0E\x20\xD3\xC2\x93\xD1\xAF\x5C\x91\x15\x32\x7F\xB2\x2E\x0F\x01\xAC\x5E\xC5\xA0\x20\xEC\x9D\xBA\x03\xC8\x14\xBE\x68\x77\x36\xB7\x47\xDB\xF7\x72\x11\xC0\xDA\xD3\x84\xB1\xCA\xED\x15\x85\xCD\x13\xFF\xFE\xA3\xC0\xB7\x13\xF7\xC1\x1A\xED\x4F\x94\x5C\x4C\xA1\xB5\x2B\x68\x8C\x55\x6E\xAF\x28\x54\x12\xFE\xF6\x4C\xA4\xF0\x79\x2E\x32\x8B\x6A\x60\xAC\x72\x7B\xEA\xDB\x48\x16\x01\xDC\xA2\xDC\xDE\x58\xE5\xF6\x8A\x42\xAA\x3D\xC5\x29\xC0\x81\xC8\x7E\x7F\xD1\xD9\x56\xB9\xBD\x66\xE5\xF6\x4C\x02\x58\xBB\x93\xE3\x89\x7C\xE8\xCE\xF8\x73\x82\xDF\x7C\x10\xC9\xB6\xCA\x45\x46\x51\x8D\x34\xA0\xFF\xF2\x68\x51\x6E\xCF\x84\x4D\xD1\x4F\x14\xD8\xD1\x55\x83\x7C\x70\x02\xBE\xC9\x1A\x37\x62\x7B\x8A\x29\x6B\x7C\x18\x7D\x1B\x0E\x75\xD5\xA0\x06\xDE\x45\x57\xF1\x63\x7C\xBB\x9F\x0B\x1A", + "\x91\xED\x1B\xEB\xC0\x7D\x13\xD9\x73\x2E\x1B\xDA\x0F\x48\x93\xD2\x50\x56\x97\x66\xCF\x51\x6E\xAF\x27\x37\xCF\x97\x8D\xD5\xC0\x79\xC6\xBF\x71\x13\xB0\x13\xF0\x1B\xE3\xDF\xC9\x22\x3B\x2B\xB7\xA7\x1D\x13\x80\x5D\x00\x3F\xAB\xDC\xDE\x9E\xCA\xED\x15\x85\xBB\x81\xAB\x0D\xDA\x7D\x18\x98\x88\x24\x69\x94\xE1\x7B\xB7\x33\xB4\x7D\x6E\xA6\x72\x7B\xA6\x9C\x8D\xEE\xF4\x63\x21\x76\x0F\x9B\xBC\xA3\x75\x9C\x70\x15\xF2\xC6\xDD\xCD\xB5\xF7\xD9\xA4\x1E\xFD\xCF\xC0\xAF\xBA\x6A\x50\x23\x13\xD1\xFF\x16\xDB\xC9\x55\x83\xFC\xD1\x97\x03\xFD\x8B\x80\x7B\x80\xAF\x93\x3E\x31\x24\x4B\xEC\x8A\xBE\xFF\x1E\x68\xD1\x51\xAB\x3B\x6C\x2C\x2E\x78\xDE\x0F\x78\xDE\xA0\xDD\xA2\x70\x37\x70\x2F\xB2\xE0\x74\x24\x72\xBC\x6F\x1B\xE4\xCD\x3A\x0F\x49\xB0\x99\x5F\xFD\xFB\x0B\xC0\x1F\x80\xA7\x88\xAB\x5B\x3B\x63\x82\x41\x9B\xCF\x19\xB4\x69\x8A\xF6\xB9\xE0\xDB\x7C\xBB\x1F\x94\x98\xBB\xD0\xF5\xDD\x16\xD7\xDE\x2B\x71\x3B\xBA\x46\x58\x40\x24\x74\x04\xF6\x34\xA0\x5F\x16\xEA\x16\xAB\xCE\x5A\x2E\x0C\x4D\x51\x6E\x6F\x53\xB2\x71\x02\x27\x28\x36\x1F\x43\xBF\x0E\xDB\x13\xCA\xED\xFD\x0D\xCB\x00\xB6\xE8\xF4\xDF\x1B\xB4\x19\x04\xED\x39\xC4\xA0\x4D\xED\x97\x99\x0B\x0D\xC0\x7B\xE8\x4E\x45\xB4\xF7\x97\x83\xA0\x23\xCF\xA3\xEB\xB3\x8B\xC9\xF1\xA7\xDF\xEF\xD0\x35\x46\x85\xD8\x4E\x0A\xEC\xD8\x0D\x7D\x7F\xBD\xC7\xB2\xC3\xD6\xC9\x11\x16\x85\xBE\x8F\x33\x68\x33\x08\xC0\xC6\xB7\x72\x5D\xEC\x7E\x7B\xF4\x9F\x68\x2F\xB8\x6A\x10\x94\x85\x3A\x24\x5F\x59\xDB\x5F\xB3\x50\x78\xB0\x26\x66\xA3\x6F\x94\xFD\x5C\x35\x08\xCA\xC0\x27\xC9\xE1\xCB\xC6\x23\xBF\xF8\x01\x83\x36\x4F\x33\x68\x33\x28\x37\x93\x0C\xDA\xCC\xF5\xF4\xB9\x8D\x03\xD0\x7F\xB2\x2D\x47\xEE\xAD\x09\xDE\x4F\x67\xB7\x13\xB6\x56\xFF\x7E\x7B\xF5\x7F\x2B\xD3\xA1\xFC\x9E\x32\x0C\xFD\x4B\xF9\x0A\x33\x53\xAC\x07\xFE\x8A\xBE\x71\xCE\xF6\x54\x22\x07\xF4\xF4\x30\xC3\x6B\xD5\x7F\x1B\xAC\xE7\x5C\xF4\xFD\xF3\x75\x0A\x74\x82\xEE\x6A\x6C\x0C\xD4\xDF\x53\x89\x8C\xD2\xD7\xE3\x84\x93\x29\x90\x83\xD5\x40\x7F\xE4\xCE\x22\x6D\xFF\xFC\xB1\xA7\x12\xD6\x4C\x40\xDF\x40\x15\x64\x4A\x58\x76\x6A\x39\x0B\x3C\x39\x41\x7F\xB3\xC6\x89\xD8\xF8\xE6\x3E\x9E\x4A\x58\x53\x8F\xCD\x53\x2E\x45\x65\xC6\x2C\xA1\x71\x3B\x61\x99\xA7\xD3\x75\xC0\xD3\xE8\xFB\xE5\x2B\xD5\xB6\x0B\xC5\xF7\xB0\x79\xD2\xFD\x83\xA7\x12\x19\x42\xAB\xA8\x5D\x0B\xD0\xE4\xDB\xF5\xCC\x70\x24\x36\x3E\xF9\x2D\x4F\x25\xBC\xF8\x00\x52\xC9\x5F\xDB\x58\xD3\x29\xE0\xD3\xAE\x07\x68\x56\x4D\x3C\xDE\xB9\xEF\x59\xA0\x0E\x98\x81\xBE\x3F\xB6\x02\x5B\x38\xEA\xE1\xCA\xFD\xD8\x3C\xF1\xCA\x58\xF6\xF4\x0E\xF4\xEC\x77\x87\x73\xDF\xB3\xC0\xF1\xD8\xF8\xA2\x69\xEE\x73\x6A\x3E\x83\x8D\xD1\x5E\xA0\x7C\x2B\xD2\x9A\x35\xA1\x8B\x7A\x3D\xE8\xC6\x68\x04\x5E\xC6\xC6\x17\x0F\x77\xD4\xC3\x9D\x7E\xD8\xE4\x9B\x56\x90\xC2\x6C\x65\x62\x05\x7A\xB6\x5B\xE1\xDC\xF7\xD4\x9C\x87\x8D\x0F\xCE\x25\xC7\x47\x07\x7B\xCA\xD7\xB0\x31\xDE\x42\x60\xA4\xA3\x1E\xA9\x59\x89\x9E\xED\x56\x3A\xF7\x3D\x25\xA3\xD0\x2F\x19\xDB\x26\x67\x3A\xEA\x91\x8C\xC1\x48\xB0\x59\x18\xF0\x5A\x47\x3D\x52\xA3\xB9\x2D\xF7\xAA\x73\xDF\x53\xF2\x0B\x6C\x7C\x6F\x3E\x30\xC8\x51\x8F\xA4\x7C\x1F\x1B\x23\xAE\xC5\xA6\x24\x68\x16\xF9\x2D\x7A\x76\xFB\xAD\x73\xDF\x53\x71\x00\xB0\x0E\x1B\xDF\xBB\xC8\x51\x8F\xE4\x6C\x81\xEE\x37\x5C\x7B\x79\x81\x72\xEC\x6B\x9E\x8C\x9E\xCD\x4E\xF2\xED\x7A\x12\x06\x62\xB7\x70\xB5\x0C\x18\xED\xA7\x4A\x36\xB8\x12\x1B\x63\x56\x80\x8B\x1D\xF5\x48\xC5\x20\xE4\x92\xEF\x5A\x6D\xF5\x16\xE5\x98\xFA\x59\xCD\xFA\x2A\xC0\x0F\x1D\xF5\xC8\x0C\x9B\xA1\x5F\xF4\xAE\x4D\x5A\x91\xF2\xA0\x45\xE7\x14\x6A\xB7\xD5\x29\xEE\xBD\xF6\x67\x3F\x6C\x92\x88\x2A\x88\x0F\x8F\xF2\x53\x25\x5B\xFC\x00\xBB\xA7\xE2\x2B\xC0\xDF\xF9\xA9\x92\x8C\xDB\xE8\xBB\x8D\xCA\x70\xDB\xC5\x50\xA0\x19\x3B\x3F\xBB\xC4\x4F\x95\xEC\x31\x02\xBB\x25\xFD\x0A\x72\xDB\x5E\xD1\x69\x04\xEE\xA4\xF7\xB6\xB9\x93\x72\x1C\xEE\xBF\x05\x3B\xFF\x5A\x44\x14\x96\xE0\x1B\xD8\x19\xB8\x82\x4D\xA9\x94\xAC\x51\x87\x5C\x5F\xB9\x98\xEE\xED\xB1\xB8\xFA\x6F\xCB\x90\x3F\x7E\x3A\xB6\xBE\x55\xB6\xE4\xA1\x4E\x69\x04\x5E\xC2\xCE\xC8\x2B\x28\xCF\x95\x2C\xC3\x81\x73\x80\xC7\x78\x7F\x89\x98\xE5\xD5\xFF\x76\x0E\xE5\x79\x63\xEC\x8B\x6E\xB2\x4B\x47\x29\x63\xFA\xEE\x46\x39\x02\xDB\x27\x65\x0B\xE5\xCA\xD2\x6A\x63\x38\xE5\x09\xD8\xF6\x8C\x42\xFF\x76\xCC\x8E\x72\xA8\x9B\x36", + "\x39\xE1\x21\x6C\x0D\xFE\x18\xE5\xD8\x1F\x2E\x3B\x03\x91\xBB\x88\x2C\x7D\xE9\x3E\x37\x6D\x72\xC4\xF6\xD8\x54\x06\x6C\x2F\x77\x50\x8E\x6F\xBF\xB2\x52\x87\xED\xA2\x55\x05\x49\xDA\x18\xEF\xA5\x50\xDE\x38\x1F\x5B\xE3\x57\x80\x4B\xDD\xB4\x09\xBC\xB9\x02\x7B\xFF\x39\xD7\x4D\x9B\x1C\xD2\x80\x54\xD8\xB0\x1E\x84\x6F\x7A\x29\x14\xB8\x71\x36\xF6\x7E\x33\x83\x58\xB8\xEA\x96\xBD\x90\x4C\x2A\xCB\x81\x58\x87\x6C\x31\x04\xC5\xE0\x2B\xD8\x07\x6F\x2B\xB0\x87\x97\x42\x79\xE7\x02\xEC\x07\x64\x2D\xE5\x48\xE2\x2F\x3A\x93\xB0\x3B\x61\xD4\x5E\xBE\xEB\xA5\x50\x11\x68\xC0\x7E\x25\xB1\xED\x4D\x1C\x9B\xF1\xF9\xE5\x74\xE4\x41\x6C\xED\x27\x8F\x53\x82\x4A\x1B\xDA\x6C\x4B\xCF\x32\x8B\x34\xE4\xDF\x9C\x74\x0A\xF4\xF0\x58\xF0\xAC\x20\xA9\xBE\x63\x7D\x54\x2A\x1E\x5F\xC4\x67\x90\x2A\xC8\x71\xB3\xD8\x62\xCA\x3E\xF5\xF8\xAC\x36\xB7\xC9\xE7\x7D\xD4\x2A\x2E\xFF\x81\xDF\x60\xFD\x1A\x49\x04\x08\xB2\x49\x13\x70\x2B\x7E\xFE\xF0\x33\x1F\xB5\x8A\xCD\x00\xE4\x0A\x15\xAF\x41\xFB\x23\xE5\x4C\xBB\xCC\x3A\xA3\xF0\x59\x17\x69\x93\xA9\x44\xE6\x9E\x1A\x5B\x01\xEF\xE0\x37\x78\xAF\x23\xC9\xF0\x41\x36\xD8\x0B\xDB\x33\xBD\x1D\xE5\x6D\xE4\x26\x91\x40\x91\x89\xD8\xEF\x0F\xB7\x97\x15\x94\xE3\x28\x62\xD6\xF9\x32\xB6\xA7\x8A\x3A\xCA\x6A\xE0\x40\x0F\xC5\xCA\xC8\x69\xF8\x0D\x64\x9B\xDC\x4C\x39\x2A\x7B\x64\x8D\xA1\xD8\xE7\x35\x77\x26\x5F\xF2\x50\xAE\xCC\x5C\x8E\xFF\xA0\xB6\x50\x9E\x72\xB5\x59\x60\x5F\xEC\x6E\xF0\xE8\x4A\x4A\x55\x1A\x36\x15\x75\xC0\xED\xF8\x0F\x6E\x2B\x52\xED\x32\x16\x36\xEC\x18\x00\x5C\x86\x5D\x01\xBA\xAE\xE4\x57\xC4\x36\xA2\x1B\x03\x80\x47\xF0\x1F\xE4\x0A\x52\x89\x61\x7F\x7B\x15\x4B\xC7\x81\xD8\x56\x66\xE9\x4A\x1E\x22\x1E\xCC\xEE\x0C\xC6\x77\x5B\xA1\xBD\xAC\x03\x7E\x8E\x94\xC6\x0D\x6A\x63\x14\x72\xDD\x89\x47\x3E\x73\x67\xF2\x38\xE5\xA8\x8B\x9D\x49\x86\xE2\xBB\x47\xDC\x51\x16\x21\x29\x7D\xF1\xF4\xEE\x3D\xFD\x91\x3C\x74\xCB\xAA\xA4\xDD\xC9\x0C\xCA\x59\x72\x28\x53\x8C\x04\x9E\x25\x9D\x13\x54\x80\x17\x81\x63\x89\x6F\xA8\x9E\x50\x0F\x1C\x87\xDD\x35\x27\x3D\x95\x67\x89\x84\x9D\xCC\x30\x1C\x78\x92\xB4\x0E\xD1\xE6\x14\x11\xC8\x1B\x67\x22\x3E\x05\x1B\xBA\x93\xE9\x44\xF0\x66\x8E\x61\xC0\x13\xA4\x77\x8E\x36\x07\xF9\x1C\x72\x2C\xB2\xEC\xF4\x07\xFE\x11\x78\x9A\xF4\xE3\x52\x41\x52\x65\x87\x9A\x6A\x1C\xF4\x99\xC1\xC0\xC3\xA4\x77\x92\x36\x79\x95\x72\xD5\x62\x6E\xCF\x70\xA4\x68\xFF\x6B\xA4\x1F\x87\x36\x79\x88\x58\xB0\xCA\x3C\x4D\xC8\x9E\x5E\x6A\x67\x69\x2F\x2B\x91\xAB\x4C\x26\x52\xFC\xE9\xF5\x5E\xC0\x75\x48\xF5\xC6\xD4\x76\x6F\x2F\x77\x22\xDB\x8F\x41\x0E\xA8\xC3\xF6\x3A\xC9\x5A\xE4\x65\x24\x21\x64\x67\x33\xED\xFD\xD9\x15\xB9\xE4\x2B\x45\xF6\x54\x4F\xE4\x62\x8A\xFF\xE0\x2C\x24\xA7\xE2\x7B\x00\xA2\xB7\x32\x0B\x71\xFC\xFD\xC8\x57\xC9\x96\x06\x24\xB5\xF4\x52\x24\xB1\x25\xB5\x1D\x37\x26\xAB\x91\x8B\xD0\x83\x1C\x73\x10\xBE\x47\x11\xFB\x2A\x0B\x91\xC2\xF3\xA7\x23\x6F\xE7\x7A\x0B\x63\xF4\x91\x7A\x60\x17\xE0\x0C\xE0\x2E\x64\xFF\x3B\xB5\xBD\xBA\x93\xB7\x29\xC1\xA9\xA2\xB2\x4C\x2B\xB6\x46\xAA\x6D\xE4\xE9\x92\xB3\x77\x91\x4C\xB3\xA7\x81\x99\xC8\x16\xD5\x6C\x24\x4F\xD8\x92\x06\x60\x07\x24\x60\x77\x45\x4A\xA9\x7E\x9C\x7C\xAD\xDC\x3E\x09\x1C\x03\xBC\x91\xBA\x23\xD6\x94\x25\x80\x41\x16\x30\x7E\x42\xBE\x6F\xA4\x5F\x05\xCC\x45\x4E\x47\x35\x57\xE5\x6D\x60\x41\x3B\x59\x8C\x04\xF9\x1A\xE4\xF6\x78\x80\x21\x48\x60\x36\x20\x81\x38\xA2\x9D\x8C\x06\xC6\x75\x90\x3C\x67\x96\x5D\x0B\x9C\x85\xD8\x2A\x28\x20\x5F\xC0\xAF\xDA\x65\x88\x9F\xBC\x4B\x14\xA0\x2B\x0D\xDB\x20\xB7\x15\xA6\x76\xBA\x10\x1D\xF9\x13\x71\xE1\x58\xE9\x68\x40\x6E\x80\xC8\xF2\x2A\x75\x48\xD7\xD2\x8A\xD4\xF4\xCE\xD3\x0A\x7E\xA0\xCC\x6E\xC0\x34\xD2\x3B\x63\x48\xEF\x64\x06\xF0\x91\x4E\xC6\x33\x28\x21\x0D\xC8\xD1\xB6\xA5\xA4\x77\xCC\x90\xAE\x65\x39\x72\x84\x33\xDE\xBA\xC1\x06\x6C\x07\x3C\x48\x7A\x27\x0D\xE9\x5C\xEE\x47\xAE\xDC\x09\x82\x2E\x99\x08\x3C\x47\x7A\x87\x0D\x11\x79\x09\x38\xAC\xCB\x11\x0B\x82\x0E\x34\x22\xB7\xB1\xA7\xAC\x18\x51\x76\x59\x88\xEC\xE9\xC6\xA5\xDA\x41\x9F\xD9\x14\x59\xAD\x8E\xBD\x63\x3F\x59\x8A\x94\x0F\x2E\xE3\x31\xCC\xC0\x88\x91\x88\x53\x65\xED\x98\x5C\x91\x64\x19\x30\x19\x18\xD3\xC3\x31\x09\x82\x5E\x33\x06\x39\x85\xB3\x80\xF4\x0E\x5F\x14\x99\x8F\x9C\xCA\x1A\xDD\x8B\x71\x08\x82\x9A\x18\x84\x5C\xF5\xF2\x22\xE9\x03\x20\xAF\x32\x17\xD9", + "\xBE\x8B\x2A\x19\x41\x32\xFA\x01\x47\x00\xF7\x92\xE6\x46\x81\xBC\x49\x2B\x70\x0F\x70\x38\xB1\x97\x1B\x64\x8C\x2D\x81\xEF\x20\x6F\x96\xD4\x81\x92\x35\x99\x03\x7C\x0B\xD8\xA2\xCF\xD6\x0D\x02\x47\x3E\x8C\xAC\x5E\x97\x39\x98\xDF\x40\x16\xA5\x26\x50\xAE\xA3\xAB\x41\x81\xA8\x07\x3E\x01\x5C\x45\xBA\xBB\x7F\x3C\xE5\x45\xE0\xDF\x91\xA0\xCD\x52\x55\x91\x20\x50\x61\x5B\xE0\x9F\x91\x6F\xE6\x25\xA4\x0F\xB8\x5A\x65\x31\xF0\xDF\x48\xB9\x9D\x71\x8A\x76\x0A\x7A\x40\x4C\x6B\xD2\xD2\x0F\x29\x5D\x33\x01\x29\x5B\x33\x01\xD8\x2A\x69\x8F\xBA\xE7\x75\xA4\x38\xFA\x14\xE4\x62\xB0\xE7\x80\xB5\x49\x7B\x54\x62\x22\x80\xB3\xC7\x48\xA4\x16\xD5\x2E\xAC\xAF\x4B\xB5\x1D\xFE\x59\x49\x0B\x91\x85\xA7\xB6\x7A\x5C\xCF\x01\xCF\x20\xFB\xDF\x41\x46\x88\x00\xCE\x0F\x43\x91\x29\xEA\xD8\xAA\x6C\x8E\x04\x7B\xFB\xFA\x56\x4D\xD5\x7F\x57\x8F\xE4\x0F\x0F\xAE\xFE\x7F\x97\x22\xDB\x37\xEB\x90\x29\xEF\x2A\x24\x10\xE7\x57\xFF\x9C\x07\xBC\x85\xDC\x24\xD1\x5C\x95\x25\xE6\x1A\x05\x41\x10\x04\x41\x10\x04\x41\x10\x04\x41\x10\x04\x41\x10\x04\x41\x10\x04\x41\x10\x04\x41\x10\x04\x41\x10\x04\x41\x10\x04\x41\x10\x04\x41\x10\x04\x41\x10\x04\x41\x10\x04\x41\x10\x04\x41\x10\x04\x41\x10\x04\x41\x10\x04\x41\x90\x7B\xFE\x1F\x25\x9C\xCB\x0D\x81\x4D\x43\xA2\x00\x00\x00\x00\x49\x45\x4E\x44\xAE\x42\x60\x82\x03\x00\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x57\x61\x72\x6E\x69\x6E\x67\x4E\x10\x00\x00\x89\x50\x4E\x47\x0D\x0A\x1A\x0A\x00\x00\x00\x0D\x49\x48\x44\x52\x00\x00\x00\xF0\x00\x00\x00\xF0\x08\x06\x00\x00\x00\x3E\x55\xE9\x92\x00\x00\x00\x06\x62\x4B\x47\x44\x00\xFF\x00\xFF\x00\xFF\xA0\xBD\xA7\x93\x00\x00\x10\x03\x49\x44\x41\x54\x78\x9C\xED\xDD\x79\x90\x5D\x45\x15\xC7\xF1\xEF\x64\x60\x30\x09\x44\x03\x08\x84\x40\x58\x54\x16\x71\x05\x54\x10\x95\x45\x01\xA3\x28\x18\x8C\xE0\x96\x0A\x05\xEE\x08\x8A\x5A\x50\x28\x88\x22\x11\x15\x45\x10\x41\x50\x0A\x14\x64\x11\x0D\x41\x51\x70\x03\x14\x37\x16\x23\x2E\x41\x84\x10\x34\x2E\x09\x0A\x89\x04\x98\xEC\x13\xFF\xE8\x19\x8D\x43\x26\x33\xEF\xBD\xFE\x9D\xBB\xFD\x3E\x55\x5D\x54\xA5\x86\xFB\xCE\xE9\xDB\x7D\xEF\x7B\x77\x39\x0D\x66\x66\x66\x66\x66\x66\x66\x66\x66\x66\x66\x66\x66\x66\x66\x66\x66\x66\x66\x66\x66\x66\x66\x66\x66\x66\x66\x66\x66\x66\x66\x66\x66\x66\x66\xB5\xD0\x55\x74\x00\x96\x55\x37\xB0\x19\x30\x1E\xD8\xB4\xFF\xBF\xAB\x80\xC5\xFD\x6D\x51\x7F\xB3\x9A\xF0\x04\xAE\xB6\xAD\x81\x03\x80\x3D\xFB\xDB\xF3\x81\x31\xC3\xFC\x3F\x8B\x80\x3B\xFB\xDB\x1D\xC0\x4D\xC0\x12\x61\x8C\x66\xB6\x96\xF1\xC0\x34\xE0\x3B\xC0\x4A\x60\x4D\x87\x6D\x69\xFF\xB6\xA6\x01\x63\x03\xF3\x30\x6B\x94\xED\x80\x0B\x81\xE5\x74\x3E\x69\x87\x6A\x8B\x80\x53\x80\x71\x41\x39\x99\xD5\xDE\x44\xE0\x7C\xB4\x13\x77\x70\x7B\x18\xF8\x08\xB0\x71\x40\x7E\x66\xB5\x35\x95\x34\x99\xA2\x26\xEE\xE0\xF6\x00\xB0\x9F\x3A\x49\xB3\xBA\xD9\x02\xB8\x96\xE2\x26\xEE\xDA\xAD\x8F\xF4\xD5\x7D\xB8\x8B\x63\x66\x06\xEC\x0E\x2C\xA0\xF8\x89\x3B\xB8\xDD\x01\x6C\x29\xCC\xDB\xAC\xF2\x0E\x00\x1E\xA1\xF8\xC9\x3A\x54\x9B\x07\xEC\x24\xCB\xDE\xAC\xC2\x8E\x20\xF6\x42\x55\xBB\xED\x41\xD2\xB7\x04\x33\xEB\xB7\x3F\xB0\x82\xE2\x27\xE7\x48\xDB\x02\xD2\x6D\x2D\xB3\xC6\xDB\x85\x74\xFF\xB5\xE8\x49\xD9\x6A\x9B\x03\x3C\x45\xD0\x1F\x66\x95\xB1\x19\x70\x3F\xC5\x4F\xC6\x76\xDB\x8D\xC0\xA8\xEC\xBD\x62\x56\x11\x97\x53\xFC\x24\xEC\xB4\x1D\x97\xBD\x57\xCC\x2A\x60\x32\xC5\x4F\xBE\x1C\xED\x71\x60\xC7\xCC\x7D\x63\x56\x6A\x63\x49\xB7\x64\x8A\x9E\x7C\xB9\xDA\x0D\x79\xBB\xC7\xAC\xDC\x3E\x4B\xF1\x93\x2E\x77\x7B\x63\xD6\x1E\x32\x2B\xA9\xA7\x53\x8D\xFB\xBD\xAD\xB6\xBF\xE1\xD7\x11\xC3\x75\x17\x1D\x40\x03\x5D\x4E\xBA\x75\x54\x37\xE3\x48\xD5\x3F\x6E\x29\x38\x0E\x33\x99\x57\x53\xFC\x99\x52\xD9\x7A\x81\xED\x73\x75\x96\x0D\xCF\x67\xE0\x38\x3D\xC0\x2C\x60\xF3\x80\xCF\x5A\x06\xCC\x06\x7E\x4B\xBA\x58\xB6\x8C\x74\xCF\x59\x7D\xCF\x76\x43\xD2\xFB\xCB\xD7\x88\x3F\xC7\x2C\xDC\x07\xD0\x9F\x01\x6F\x20\x9D\xE5\x7B\xD6\xF1\xF9\xE3\x48\x65\x73\x7E\x1B\x10\xC7\x7E\xED\x77\x93\x59\xF9\x6C\x09\xFC\x1B\xDD\x84\xF9\x3B\x70\xF0\x08\x63\xE9\x02\xDE\x43\xFA\xBA\xAB\x8A\xE7\x2E\xFC\xED\xCE\x6A\xE4\x2B\xE8\x26\xCB\x3D\xC0\xB6\x6D\xC4\xB4\x0F\xDA\x83\xCA\x3B\xDB\x88\xC9\xAC\x74\xF6\x00\x56\xA3\x99\x24\x0F\x01\x3B\x74\x10\xDB\x41\xC2\xD8\xFE\x45\xAA\xA0\x69\x56\x59\x5D", + "\xC0\xAD\xE8\xCE\x72\xD3\x32\xC4\x78\xAE\x30\xBE\xCF\x67\x88\xCF\xAC\x30\x6F\x42\x37\x39\x7E\x4E\x9E\xC2\xFC\x9B\xA0\x2B\xE1\xB3\x12\x78\x56\x86\x18\xCD\xC2\x8D\x06\xFE\x8C\x66\x62\xAC\x06\x5E\x90\x31\xD6\xB7\x89\xE2\x5C\x03\xFC\x28\x63\x9C\x66\x61\x3E\x8E\x6E\x52\x7C\x39\x73\xAC\xA3\x80\xDB\x85\xF1\xBE\x36\x73\xBC\x66\x52\xDB\x92\x5E\xB3\x53\x4C\x86\x25\xC0\x56\x82\x98\x5F\x4C\x2A\x21\xAB\x88\x79\x2E\xB0\x91\x20\x66\x33\x89\x6B\xD0\x9D\xCD\x4E\x10\xC6\x7D\xA5\x30\xEE\x13\x85\x71\x9B\x65\xF3\x12\x74\x67\xB2\xFB\xD0\x9E\xC9\xB6\x01\x1E\x13\xC5\xBE\x04\x98\x20\x8C\xDD\xAC\x63\xDD\xA4\xA7\x90\x54\x67\xB1\x57\x05\xE4\xF0\x51\x61\xFC\x97\x04\xC4\x6F\xD6\xB6\x77\xA1\x1B\xFC\x3F\x08\xCA\x61\x34\x69\x4D\x24\x45\x0E\x7D\xC0\x0B\x83\xF2\x30\x6B\xC9\x78\xD2\xD3\x47\x8A\x81\xBF\x02\xD8\x39\x2E\x15\xDE\x20\xCA\x63\x0D\xF0\x4B\xBC\xB0\xBC\x95\xD0\x39\xE8\x06\xFD\x59\x81\x79\x0C\xB8\xA5\xCD\x58\x47\xD2\xDE\x12\x97\x86\xD9\xF0\x76\x45\xB7\xB2\xC2\x83\x14\x53\x40\xFD\x79\xA4\x0A\x1B\x8A\x9C\x16\xE0\x45\xC4\xAD\x44\x6E\x40\x77\xB6\x3A\x26\x30\x8F\xC1\xBE\xB4\x9E\xB8\x3A\x6D\x67\x04\xE6\x61\x36\xA4\x43\xD1\x0D\xF2\xD9\x14\xFB\x5E\xED\xA6\xA4\x37\x9E\x14\xB9\x2D\x07\x9E\x11\x97\x8A\xD9\x13\xF5\x00\x7F\x42\x37\x81\x5F\x16\x97\xCA\x90\xDE\x87\x2E\xBF\x6F\x05\xE6\x61\xF6\x04\x27\xA2\x1B\xDC\x57\x04\xE6\xB1\x3E\x1B\x00\xBF\x47\x97\xE7\x41\x71\xA9\x98\xFD\xCF\x96\xE8\x16\xE3\xEE\xA5\x5C\xCB\x77\xBE\x02\xDD\x04\x9E\x43\x3A\x48\x98\x85\xBA\x04\xDD\xA0\x3E\x35\x30\x8F\x91\xFA\x36\xBA\x7C\xDF\x13\x98\x87\x99\xB4\x4C\xCE\x7C\x60\x4C\x5C\x2A\x23\xF6\x34\x52\x79\x5A\x45\xCE\x8B\x88\x29\xB7\x6B\x26\x2F\x93\x33\x35\x2E\x95\x96\x7D\x1A\x5D\xDE\x5F\x08\xCC\xC3\x1A\xEC\xAD\xE8\x06\xF1\xCF\x28\xF7\x63\x86\x9B\x00\xFF\x40\x93\xFB\x2A\xE0\x39\x71\xA9\x58\x13\x6D\x4C\xAA\xC1\xAC\x18\xC0\xAB\x49\x5F\xCD\xCB\xEE\x28\x74\x07\xB0\x1F\x07\xE6\x61\x0D\x74\x06\xBA\xC1\x7B\x41\x60\x1E\x9D\x18\x05\xDC\x86\xAE\x1F\x5E\x17\x97\x8A\x35\xC9\x8E\xC0\x52\x34\x83\x76\x31\xF0\xD4\xB8\x54\x3A\xB6\x37\xBA\xA2\x05\xF7\x03\x4F\x8A\x4B\xC5\x9A\x62\x26\xBA\xB3\xCE\xF1\x81\x79\xE4\x72\x39\xBA\xFE\x38\x39\x30\x0F\x6B\x80\x03\xD0\x0D\xD6\xBB\x49\xAB\xFA\x55\xCD\x44\xE0\x51\x34\x7D\xF2\x28\xB0\x75\x5C\x2A\x56\x67\xDD\x68\x57\xF4\x7B\x65\x5C\x2A\xD9\x7D\x04\x5D\xBF\x7C\x2D\x30\x0F\xAB\xB1\x63\xD1\x0D\xD2\x6F\x07\xE6\xA1\xB0\x11\xA9\xD0\x9E\xA2\x6F\xFA\x48\x05\x02\xCD\xDA\xA6\x2C\x93\xB3\x1C\xD8\x29\x2E\x15\x99\xC3\xD1\x1D\xE0\xEE\x44\xBF\x28\xB9\xD5\xD8\x79\xE8\x06\xE7\xA7\x02\xF3\x50\xFB\x3E\xBA\x7E\x9A\x1E\x97\x86\xD5\xC9\x33\x49\x8B\x73\x29\x06\xE5\x42\xE0\xC9\x71\xA9\xC8\xA9\xFB\xCA\xE5\x77\xAC\x65\xCA\xB3\xCA\x51\x81\x79\x44\xF9\x22\xBA\xFE\x3A\x33\x30\x0F\xAB\x81\x29\xE8\x06\xE3\xAF\xA9\xE7\xEF\x3A\x75\xF9\x9D\x3A\x5C\x2F\xB0\x00\x3D\xC0\xBD\x68\x06\x62\xDD\xAF\xAC\xBE\x17\xDD\x81\x6F\x56\x60\x1E\x56\x61\x27\xA3\x1B\x84\x97\x05\xE6\x51\x84\x6E\xE0\x77\xE8\xFA\xAF\xCA\xF7\xCC\x2D\xC0\x56\xE8\xCA\xE4\x3C\x0E\x4C\x8A\x4B\xA5\x30\x7E\x6A\xCD\x0A\x73\x19\xBA\xC1\xF7\xE1\x80\xF8\x7B\x80\x23\x81\xAB\x48\x6B\xF2\xAE\xEC\x6F\x73\xFB\xFF\xED\xC8\xFE\xBF\x51\xBB\x16\x5D\x3F\x1E\x17\x10\xBF\x55\xD0\x5E\xE8\xDE\xB0\x99\x87\xFE\x0D\x9B\xC3\x49\xE5\x78\x86\x8B\x65\x7E\xFF\xDF\x2A\x29\xDF\xDC\x72\xF9\x1D\x7B\x82\x2E\xB4\xEF\xB8\x4E\x11\xC6\x3E\x8A\xF6\xD6\x65\x3A\x07\xED\xD5\xF0\x19\x6D\xC4\x34\xD2\x76\xBE\x30\x6E\xAB\xA0\xE9\xE8\x06\xDB\x4D\xE2\xD8\x3B\x59\x54\xED\x1C\x61\x5C\xCA\xEA\x25\xAB\x80\xE7\x0A\x63\xB7\x0A\xA9\x72\x9D\xA7\x1C\xCF\x21\x2B\xBF\x4E\x4F\xCB\x10\xDF\x50\xED\x56\xCA\x5D\x3F\xCC\x82\x9C\x89\x6E\x90\x9D\x27\x8C\xBB\x87\xF4\xDB\xBA\xD3\x18\xFF\x4C\x7A\xAB\x48\xA1\x0B\xF8\x55\x86\x18\x87\x6A\xAF\x17\xC5\x6D\x15\x51\xE5\x5A\xC7\x47\x66\x8C\xF5\x08\x61\x9C\x4D\xAC\xA1\x6D\x41\xAE\x43\x77\x76\x38\x56\x1C\xFB\xD5\x19\x63\xBD\x5A\x1C\xEB\x57\x33\xC6\x3A\xB8\x9D\x22\x8E\xDD\x4A\xEA\xE5\xE8\x06\xD5\x1C\xF4\x0F\x1C\xE4\xF8\xFA\x3C\xD0\xE6\x89\x63\x6D\xD2\x3A\x52\x16\x40\xBD\xE2\xDE\xC1\x01\x39\xE4\xBC\xCF\xBA\x34\x20\xDE\x93\x32\xC6\x3B\xB8\x7D\x3D\x20\x7E\x2B\x91\xE3\xD1\x0D\xA6\x99\x41\x39\xE4\x8E\x5B\x4D\xFD\x92\xC8\x4B\x03\x72\xB0\x12\xA8\xCB\xAA\xF3\x55\x9B\xC0\x00\x87\x09\xE2\x1E\x68", + "\xB3\xA9\xE7\x6B\x9A\x36\xC8\x05\xE8\x06\xD1\x8C\xC0\x3C\xAA\x38\x81\x01\x6E\x14\xC4\x3E\xD0\x8E\x0E\xCC\xC3\x0A\xB0\x1B\xF5\x29\xFD\x52\xD5\x09\xBC\x2B\xB0\x42\x10\xFF\x1A\xE0\x41\xEA\x55\xAA\xC8\x06\xB9\x19\xDD\xD1\x7F\x5A\x60\x1E\x64\x8E\x3D\x72\x02\x03\x9C\x9B\x39\xF6\xB5\xDB\x67\x02\xF3\xB0\x40\x53\xD1\x0D\x9A\x22\xCA\x9F\x56\x79\x02\xAB\xCB\xF5\xEE\x1C\x97\x8A\x45\x18\x0D\x3C\x80\x66\xC0\xF4\x01\x2F\x8A\x4B\xE5\xBF\xAA\x3C\x81\x01\xDE\xDD\x61\xBC\xEB\x6B\xD7\x07\xE6\x61\x01\x4E\x45\x37\x58\x2E\x8D\x4B\xE3\xFF\x54\x7D\x02\x77\x03\x77\x75\x10\xEF\x70\x6D\x72\x5C\x2A\xA6\x34\x11\x78\x0C\xCD\x20\x29\x72\x11\xAE\xAA\x4F\x60\x80\xFD\x5B\x8C\xB1\x95\x76\x1F\x31\xD5\x47\x4C\xEC\x0A\x74\x83\xE4\xA4\xC0\x3C\x06\xAB\xC3\x04\x06\xF8\xE6\x30\x71\x75\xD2\xDE\x1F\x98\x87\x09\xD4\x79\x21\xEA\xBA\x4C\xE0\x49\xA4\x82\x7F\x8A\x7D\xF4\x08\xA9\x50\xA1\x55\xD0\x28\xE0\x76\x74\x47\xF7\x43\xE3\x52\x59\xA7\xBA\x4C\x60\x80\xD3\xC9\x9F\xCF\x40\xBB\x30\x30\x0F\xCB\xE8\x68\x74\x83\xE2\xC7\x81\x79\x0C\xA5\x4E\x13\x78\x0C\xF0\x17\xF2\xE7\xB4\x86\xF4\x2E\xF2\x9E\x71\xA9\x58\x0E\xCA\x32\x39\x2B\x81\x67\xC7\xA5\x32\xA4\x3A\x4D\x60\x80\x37\xA3\x3B\xE0\xFE\x1C\x97\xDF\xA9\x94\xB3\xD0\x0D\x06\x65\x21\xB8\x56\xD4\x6D\x02\x77\x01\x3F\x45\xB7\xDF\x94\x55\x47\x2C\xA3\xA7\xA3\x2B\x93\xF3\x30\xB0\x59\x5C\x2A\xEB\x55\xB7\x09\x0C\xB0\x3B\xBA\xF2\x3B\x7F\x05\xC6\xC6\xA5\x62\xED\xBA\x1E\xDD\x51\xFC\x5D\x81\x79\x0C\xA7\x8E\x13\x18\xE0\x62\x74\xFB\xEF\xB4\xB8\x34\xAC\x1D\x07\xA2\xDB\xF9\x7F\x20\x55\xF2\x28\x8B\xBA\x4E\xE0\x2D\x80\x7F\xA3\xD9\x87\xBD\xC0\xF6\x61\x99\x58\x4B\x36\x04\xEE\x41\x37\x81\x0F\x8C\x4B\x65\x44\xEA\x3A\x81\x01\x3E\x84\x6E\x3F\x5E\x15\x98\x87\xB5\xE0\x04\x74\x3B\xFD\x9A\xC0\x3C\x46\xAA\xCE\x13\xB8\x07\xF8\x13\xBA\xFD\xB9\x6F\x5C\x2A\x36\x12\x5B\x00\x8B\xD1\xEC\xEC\xA5\xC0\x0E\x71\xA9\x8C\x58\x2F\xF9\x72\x7C\x3C\x38\xF6\x91\x78\x0D\xBA\x09\xFC\x1B\xD2\xCB\x14\x56\x12\x17\xA1\xDB\xD9\xA7\x07\xE6\xD1\x8A\x2A\x95\x95\x6D\xD7\xF7\xD0\xED\xD7\xB7\x07\xE6\x61\xEB\xF1\x7C\xD2\x1A\x44\x8A\x9D\xFC\x37\xCA\x7B\xEB\xA1\x4A\x85\xDD\xDB\xB5\x0B\xBA\xF2\x3B\xFF\x04\x9E\x12\x97\x8A\x0D\xE5\x27\xE8\x8E\xD2\x6F\x0A\xCC\xA3\x55\x55\x59\x5A\xA5\x53\x67\xA3\xDB\xBF\x9F\x0B\xCC\xC3\xD6\x21\xE7\x20\x1E\xDC\x7E\x41\xB9\x1F\xBF\xAB\xC2\xE2\x66\x39\x8C\x03\x16\xA0\xD9\xC7\x2B\x49\x85\x0E\xAD\x00\xA3\x49\x83\x4F\xB1\x63\x57\x03\x2F\x0C\xCB\xA4\x7D\x65\x5F\x5E\x34\x97\x77\xA0\x3B\x50\xFF\x30\x30\x0F\x5B\xCB\x69\xE8\x76\xEA\xC5\x71\x69\x74\xAC\xAC\x0B\x7C\xE7\x34\x0A\xB8\x03\xDD\xFE\x3E\x24\x2E\x15\x03\xD8\x06\x5D\x99\x9C\x25\xC0\x84\xB8\x54\x3A\x36\x8A\xF6\x26\xF1\x39\x54\x6B\x25\x83\x7D\xD0\x15\x67\x98\x4B\xB9\x7F\x46\xD4\x4E\xCE\x2B\xB0\x83\xDB\x87\x02\xF3\xC8\xE9\x70\xD2\x7A\xB9\xC3\xE5\x37\x9F\x6A\x7C\x6D\x5E\x17\xE5\x7E\xFF\x60\x60\x1E\x8D\xE6\x23\xF1\xD0\x7A\x48\x17\xF6\xAE\x22\xE5\xB2\xB2\xBF\xCD\xED\xFF\xB7\x23\xA9\x76\xA1\xB7\x6D\xF1\x37\xAF\x4A\xF3\x6F\x21\x3B\x0D\xDD\xFE\xAF\xD2\xB5\x8F\x4A\xF2\xD5\x48\xF3\xDD\x87\x8A\xF2\xFD\x40\x1B\xD0\xE4\xFB\xFF\x95\xE5\x27\x72\x6C\x6D\x4D\x7D\x02\xAF\x92\xFC\x4C\xAC\x0D\xD6\xD4\x67\xE0\x2B\xC9\x6F\xA5\xD8\xBA\x28\xDF\x42\xFB\x78\x60\x1E\xB5\x76\x08\xBA\x9D\xE4\xF7\x42\xAB\xAD\x89\xEF\x81\x57\x8A\x2B\x33\xD8\x70\x9A\x56\x89\xA5\x52\x5C\x1B\xC9\x86\xD3\xB4\x5A\x68\x95\xE1\xEA\x84\x36\x52\x4D\xAA\x46\x5A\x19\xAE\x0F\x6C\xAD\x68\x4A\x3D\xF0\x4A\x70\x85\x7E\x6B\x55\x53\x56\xE4\x28\x3D\xAF\x91\x63\xED\x6A\xC2\x9A\x58\xA5\xE7\x55\xEA\xAC\x5D\x4D\x58\x95\xB2\xD4\xBC\x4E\xAC\x75\xEA\x18\x74\x27\x80\x1F\x05\xE6\x51\x49\xCA\x95\xDA\x2F\x0A\xCC\xC3\x8A\x33\x0A\xB8\x1D\xDD\x38\x3A\x34\x2E\x95\x6A\x99\x44\x5A\x21\x40\xD1\xE9\x8F\x00\x5B\xC5\xA5\x62\x05\xDB\x1B\x5D\xD1\x87\xFB\x81\x27\xC5\xA5\x52\x1D\xDF\x44\x77\xD4\x7C\x7F\x60\x1E\x56\x0E\x57\xA0\x1B\x4F\x27\x05\xE6\x51\x09\xFB\xA3\xEB\xEC\xFB\xA8\x76\x19\x19\x6B\xCF\x44\x74\xE5\x77\x1E\x05\xB6\x8E\x4B\xA5\xDC\xBA\x81\xBB\xD0\x4D\xE0\xC9\x71\xA9\x58\xC9\x9C\x8A\x6E\x5C\x5D\x1A\x97\x46\xB9\xBD\x1B\x5D\x27\x5F\x1F\x98\x47\x19\xD4\xBD\xA8\x5D\xAB\x46\x03\x0F\xA0\x19\x5B\x7D\xC0\x8B\xE2\x52\x29\xA7\xF1\xC0\xBF\xD0\x74\xF0\x72\x60\xE7\xB8\x54\x0A\xD7\x84\xB2\xB2\xED\x98\x8A\xEE\x04\x71\x27", + "\xD5\xAA\xAD\x9D\xDD\xB9\xE8\x3A\xF7\x33\x81\x79\x14\xA9\x29\x85\xDD\x3B\x71\x33\xBA\x71\xF6\xD6\xC0\x3C\x4A\x65\x57\x74\x65\x72\x1E\x04\x9E\x1C\x97\x4A\xA1\x9A\xB0\xB4\x4A\xA7\x76\x23\xFD\x94\x50\x8C\xB5\x85\xA4\x82\x8B\x8D\x73\x23\xBA\xA3\xE2\xD1\x81\x79\x14\xA9\x29\x8B\x9B\xE5\x70\x01\xBA\xF1\x36\x23\x30\x8F\x52\x38\x0C\x5D\x67\xCE\xA6\x19\x5F\x0D\x9B\xB2\xBC\x68\x2E\x9B\x02\x0F\xA1\x19\x73\xCB\x81\x67\xC4\xA5\x52\xAC\x1E\xE0\x5E\x34\x1D\xD9\x07\xBC\x34\x2E\x95\x42\x35\x65\x81\xEF\x9C\x8E\x47\x77\xE2\x98\x19\x98\x47\xA1\x4E\x42\xD7\x89\x5F\x0F\xCC\xA3\x68\x39\x17\xFA\xBA\x3A\x38\xF6\xA2\x6C\x00\xFC\x1E\xDD\xF8\x3B\x38\x2E\x95\x62\x6C\x49\x7A\x2E\x59\xD1\x79\xBD\xC0\x76\x71\xA9\x14\x2E\xC7\xD7\xE7\x81\x36\x2F\x38\xF6\x22\xBD\x1C\xDD\x04\x9E\x43\xAA\xD1\x55\x5B\x5F\x45\xD7\x79\xA7\x04\xE6\x51\x06\x4B\xC9\xD7\x77\x4B\x83\x63\x2F\xDA\x75\xE8\xC6\xE1\xB1\x81\x79\x84\xDA\x03\x5D\x99\x9C\xF9\xA4\x77\x89\x9B\x24\x67\xF9\x98\x65\xC1\xB1\x17\xED\x69\xE8\xCA\xEF\x2C\x02\x36\x8F\x4B\x25\x46\x17\xF0\x33\x74\x47\xBD\xD7\xC7\xA5\x52\x1A\x39\x0B\x1F\xFC\x25\x38\xF6\x32\xF8\x14\xBA\xF1\x78\x5E\x60\x1E\x21\xA6\xA1\xEB\xAC\x5B\x69\x66\x99\x9C\x59\xE4\xEB\xC3\x59\xC1\xB1\x97\x81\xB2\xFC\xCE\x2A\xE0\x39\x71\xA9\x68\x6D\x0C\xFC\x1D\x5D\x47\x3D\x37\x2E\x95\x52\x39\x8A\x7C\xFD\x38\x3D\x36\xF4\xD2\x98\x8E\xEE\xC4\x72\x53\x5C\x1A\x5A\x33\xD0\x75\xD2\xF9\x81\x79\x94\xCD\x58\xD2\x63\x7C\x9D\xF6\xE1\x42\x9A\x5B\x66\xB7\x0B\xB8\x0D\xDD\xF8\x9C\x12\x97\x8A\xC6\x8E\xE4\xBD\x5A\xBA\x76\xAB\xE5\xC5\x82\x16\xE5\x28\xE0\x76\x4C\x78\xD4\xE5\xB2\x17\xBA\xF2\x3B\xF3\xA8\x78\xF9\x9D\x6B\xD1\x1D\xDD\x8E\x0B\xCC\xA3\xCC\xAE\xA4\xFD\x3E\xBC\xB2\x80\x78\xCB\xE8\x32\x74\xE3\xF4\xC3\x81\x79\x64\xB5\x2F\xBA\x4E\xB9\x9B\x9A\xDF\x30\x6F\x41\x0F\xF0\x0D\x5A\xEF\xC3\x6F\xD0\xAC\x97\xFB\xD7\x67\x22\xA9\x4C\x8E\x62\xAC\x3E\x4A\x5A\xE7\xAB\x72\x6E\x41\x37\x81\x0F\x8A\x4B\xA3\x12\xBA\x80\xF7\x32\xB2\xA7\xDC\x1E\xE9\xFF\xDB\x26\x5E\xB9\x5F\x9F\x93\xD1\x8D\xD7\xB3\x02\xF3\xC8\x62\x07\x74\xBF\x2B\xAE\x0B\xCC\xA3\x6A\xC6\x93\xD6\xCB\xFD\x29\xE9\xD1\xD2\x81\x3E\xEB\xED\xFF\xB7\x13\xFA\xFF\xC6\x9E\x68\x23\x74\x2F\xD9\x2C\xA4\x62\x0B\xC9\xAB\x5E\x58\x58\x0E\xEC\x14\x98\x47\xD5\x8D\xC7\x13\xB6\x15\x53\xD0\x9D\x85\xF7\x8B\x4B\xA3\x73\xB3\xD1\x74\xC2\x99\x91\x49\x58\x23\x7D\x1F\xCD\xD8\xFD\x62\x64\x12\x9D\x98\x80\xA6\x03\x16\x90\x9E\x9E\x31\x53\x7A\x36\x9A\xF2\x3B\x95\x79\x5C\xF5\x50\x34\x13\x78\x7A\x60\x0E\xD6\x6C\xE7\xA1\x19\xC3\x95\x58\xDE\xE7\x13\xE4\x4F\xBC\xF1\xE5\x3B\x2D\x94\xAA\xDC\xF1\xAB\x73\x07\xAA\x98\x14\xBB\x67\xDE\xDE\x1A\xD2\x6D\x8F\xBE\xCC\xDB\x35\x1B\xCA\x62\xE0\x63\x82\xED\xEE\x21\xD8\x66\x76\xB9\x4B\x96\x34\xA9\x4C\x8E\x95\xC7\x06\xA4\x07\x86\x72\x8E\xE5\x8B\x73\x07\xA9\x38\x03\xE7\x7E\xEA\xE4\x92\xCC\xDB\x33\x1B\x89\x55\xC0\xE5\x99\xB7\x99\xFD\xD9\xFD\xDC\x13\xB8\x9B\xFC\x41\xDE\x91\x79\x7B\x66\x23\x75\x67\xE6\xED\x95\x7E\x02\x8F\xCD\xBC\xCD\xC7\x48\x8F\xFE\x99\x15\x61\x41\xE6\xED\x65\x5F\x2D\x24\xF7\x04\x6E\x5A\x6D\x25\xAB\xB7\xDC\xCF\x8B\x2F\xCF\xBC\xBD\xEC\x13\x78\x05\x79\xAF\x16\x6F\x8C\x1F\xDE\xB0\xE2\x4C\xC8\xBC\xBD\xC7\x33\x6F\x4F\x72\x11\x2B\x77\x89\xD2\x4A\x5C\x7A\xB7\x5A\xDA\x33\xF3\xF6\x7A\x33\x6F\x4F\x32\x81\x73\x3F\x32\x76\x58\xE6\xED\x99\x8D\x54\xEE\xB1\xB7\x30\xF3\xF6\x24\x13\xF8\xDE\xCC\xDB\x9B\x86\xDF\xA8\xB1\x78\x2F\x21\xFF\x19\x78\x4E\xE6\xED\x55\x62\x02\x8F\x07\x4E\xCF\xBC\x4D\xB3\xF5\xD9\x10\x38\x5B\xB0\xDD\xBB\x05\xDB\xCC\xEE\x8D\xE4\x7F\x86\xB4\x0F\x98\x1A\x99\x84\x35\xDA\xB9\x68\x5E\x66\xD8\x2E\x32\x89\x76\x6D\x81\x66\x09\x95\x65\xC0\x1B\x02\xF3\xB0\xE6\xE9\x26\x9D\x79\x15\x93\x37\xF7\x37\x53\xA9\x5F\xA3\xE9\x84\x3E\xE0\x4B\xB8\x9C\xAC\xE5\xF7\x2C\xD2\x2A\x1F\x8A\x71\xBB\x06\xCD\x57\x72\x99\x33\xD0\x75\xC4\x1A\x52\xA5\xBF\x0B\x49\xAF\x67\xE5\xBE\x57\x67\xCD\x30\x06\xD8\x99\xF4\x9E\xF9\x77\xD1\x2D\xBC\x37\xD0\x24\x85\x18\x55\x95\x09\x77\x02\xEE\x11\x6E\xDF\xAC\x4A\x16\x92\x7E\xFF\xAE\xC8\xBD\x61\xD5\x4B\xF2\xF7\x52\xA3\xB5\x61\xCC\x3A\x74\x21\x82\xC9\x0B\xDA\x52\x97\xBD\xF8\xA2\x93\xD9\x0A\xE0\x2D\xA4\x17\x73\xB2\x53\x96\xA9\x99\x45\x45\xEE\x7B\x99\x09\x5D\x81\xE0\x09\xAC\x01\xEA\xDF\xA8\xAF\x22\x5D\x20\x30\x6B\xA2\xC7\x80\x5D\x48\xCB\xEB", + "\x4A\xA8\x0B\xC5\x7D\x0F\xF8\xA1\xF8\x33\xCC\xCA\x6A\x06\xC2\xC9\x0B\x31\x57\x89\x77\x21\xDD\x17\x1E\x13\xF0\x59\x66\x65\x31\x97\x54\x63\x5A\xFA\x8E\x7C\xC4\x7A\x2D\x0F\x91\x4A\x74\xBE\x26\xE0\xB3\xCC\xCA\x60\x19\x30\x19\xF8\xAB\xFA\x83\xA2\x16\x5C\x9A\x4D\x7A\xD2\xE5\x99\x41\x9F\x67\x56\xA4\x63\x81\xEB\x23\x3E\x28\xF2\x41\x8B\x71\xC0\xCD\xE4\xAF\x1B\x6D\x56\x26\x97\x02\x47\x45\x7D\x58\xF4\x93\x52\x9B\x93\x96\xB9\xDC\x35\xF8\x73\xCD\x22\xCC\x04\x8E\x20\x95\xA4\x0D\x51\xC4\xA3\x8E\x93\x80\x9F\x00\xDB\x17\xF0\xD9\x66\x2A\xB3\x48\x0F\x2E\xAD\x8C\xFC\xD0\x22\xD6\x1B\x9A\x0F\xEC\x05\xDC\x56\xC0\x67\x9B\x29\x5C\x4A\x3A\xF3\x86\x4E\xDE\xA2\x6D\x44\xAA\x7C\xAF\x7C\x03\xC4\xCD\x4D\xD9\x56\x02\x27\x52\xA0\xA8\xAB\xD0\xEB\xB2\x1A\xB8\x96\x54\x3C\xFB\x65\xA4\x09\x6D\x56\x15\x0F\x00\x53\x48\x8F\x4A\x36\xDE\x24\x74\x2B\xA3\xBB\xB9\xE5\x6C\x2B\x80\x4F\xE2\x07\x93\xD6\x69\x32\x70\x3B\xC5\xEF\x24\x37\xB7\xC1\x6D\x35\xF0\x2D\x60\x37\x6C\x58\x87\x90\xCE\xC8\xAB\x28\x7E\xC7\xB9\x35\xBB\x2D\x05\x2E\x22\x15\xA9\x28\x9D\xB2\x57\xCC\x98\x08\xBC\x99\x74\x79\xFE\x79\x14\xFB\x9B\xDD\x9A\xA3\x97\xF4\x22\xCE\x4C\xD2\xDB\x74\x4B\x8A\x0D\x67\x68\x65\x9F\xC0\x6B\xDB\x04\xD8\x1B\xD8\x87\x54\xCB\x68\x1B\x52\x99\x92\x09\x78\x62\x5B\xEB\x96\x01\x8B\x80\xC5\xC0\xC3\xC0\x1F\x49\x8F\xFC\xFE\x86\xB4\x48\xBD\x17\xEA\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\x33\xAB\x80\xFF\x00\x35\x85\x34\xED\x1E\xFC\xAB\x96\x00\x00\x00\x00\x49\x45\x4E\x44\xAE\x42\x60\x82\x00\x00\x00\x00\x00\x00\x00\x00\x14\x00\x00\x00\x00\x00\x00\x00\x14\x00\x00\x00\x4D\x65\x73\x73\x61\x67\x65\x42\x6F\x78\x43\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0B\x00\x00\x00\x00\x00\x00\x00\x0B\x00\x00\x00\x50\x72\x65\x63\x6F\x6D\x70\x69\x6C\x65\x64\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x0F\x00\x00\x00\x00\x00\x00\x00\x0F\x00\x00\x00\x43\x6C\x61\x73\x73\x4E\x61\x6D\x65\x52\x65\x63\x6F\x72\x64\x0B\x00\x00\x00\x00\x00\x00\x00\x26\x00\x00\x00\x00\x00\x00\x00\x26\x00\x00\x00\x67\x61\x63\x6C\x69\x62\x5F\x63\x6F\x6E\x74\x72\x6F\x6C\x73\x3A\x3A\x43\x6F\x6C\x6F\x72\x43\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x43\x6F\x6E\x74\x72\x6F\x6C\x23\x00\x00\x00\x00\x00\x00\x00\x23\x00\x00\x00\x67\x61\x63\x6C\x69\x62\x5F\x63\x6F\x6E\x74\x72\x6F\x6C\x73\x3A\x3A\x43\x6F\x6C\x6F\x72\x44\x69\x61\x6C\x6F\x67\x43\x6F\x6E\x74\x72\x6F\x6C\x22\x00\x00\x00\x00\x00\x00\x00\x22\x00\x00\x00\x67\x61\x63\x6C\x69\x62\x5F\x63\x6F\x6E\x74\x72\x6F\x6C\x73\x3A\x3A\x43\x6F\x6C\x6F\x72\x44\x69\x61\x6C\x6F\x67\x57\x69\x6E\x64\x6F\x77\x21\x00\x00\x00\x00\x00\x00\x00\x21\x00\x00\x00\x67\x61\x63\x6C\x69\x62\x5F\x63\x6F\x6E\x74\x72\x6F\x6C\x73\x3A\x3A\x46\x69\x6C\x65\x44\x69\x61\x6C\x6F\x67\x57\x69\x6E\x64\x6F\x77\x22\x00\x00\x00\x00\x00\x00\x00\x22\x00\x00\x00\x67\x61\x63\x6C\x69\x62\x5F\x63\x6F\x6E\x74\x72\x6F\x6C\x73\x3A\x3A\x46\x69\x6C\x65\x50\x69\x63\x6B\x65\x72\x43\x6F\x6E\x74\x72\x6F\x6C\x20\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x67\x61\x63\x6C\x69\x62\x5F\x63\x6F\x6E\x74\x72\x6F\x6C\x73\x3A\x3A\x46\x6F\x6E\x74\x4E\x61\x6D\x65\x43\x6F\x6E\x74\x72\x6F\x6C\x20\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x67\x61\x63\x6C\x69\x62\x5F\x63\x6F\x6E\x74\x72\x6F\x6C\x73\x3A\x3A\x46\x6F\x6E\x74\x53\x69\x7A\x65\x43\x6F\x6E\x74\x72\x6F\x6C\x25\x00\x00\x00\x00\x00\x00\x00\x25\x00\x00\x00\x67\x61\x63\x6C\x69\x62\x5F\x63\x6F\x6E\x74\x72\x6F\x6C\x73\x3A\x3A\x46\x75\x6C\x6C\x46\x6F\x6E\x74\x44\x69\x61\x6C\x6F\x67\x57\x69\x6E\x64\x6F\x77\x27\x00\x00\x00\x00\x00\x00\x00\x27\x00\x00\x00\x67\x61\x63\x6C\x69\x62\x5F\x63\x6F\x6E\x74\x72\x6F\x6C\x73\x3A\x3A\x53\x69\x6D\x70\x6C\x65\x46\x6F\x6E\x74\x44\x69\x61\x6C\x6F\x67\x57\x69\x6E\x64\x6F\x77\x29\x00\x00\x00\x00\x00\x00\x00\x29\x00\x00\x00\x67\x61\x63\x6C\x69\x62\x5F\x63\x6F\x6E\x74\x72\x6F\x6C\x73\x3A\x3A\x4D\x65\x73\x73\x61", + "\x67\x65\x42\x6F\x78\x42\x75\x74\x74\x6F\x6E\x54\x65\x6D\x70\x6C\x61\x74\x65\x21\x00\x00\x00\x00\x00\x00\x00\x21\x00\x00\x00\x67\x61\x63\x6C\x69\x62\x5F\x63\x6F\x6E\x74\x72\x6F\x6C\x73\x3A\x3A\x4D\x65\x73\x73\x61\x67\x65\x42\x6F\x78\x57\x69\x6E\x64\x6F\x77\x00\x00\x00\x00\x00\x00\x00\x00", + }; + + class GuiFakeDialogServiceUIResourceLoaderPlugin : public Object, public IGuiPlugin + { + public: + + GUI_PLUGIN_NAME(GacGen_GuiFakeDialogServiceUIResourceLoader) + { + GUI_PLUGIN_DEPEND(GacUI_Res_Resource); + GUI_PLUGIN_DEPEND(GacUI_Res_TypeResolvers); +#ifdef VCZH_DESCRIPTABLEOBJECT_WITH_METADATA + GUI_PLUGIN_DEPEND(GacUI_Instance_Reflection); + GUI_PLUGIN_DEPEND(GacUI_Compiler_WorkflowTypeResolvers); +#endif + } + + void Load()override + { + List errors; + MemoryStream resourceStream; + GuiFakeDialogServiceUIResourceReader::ReadToStream(resourceStream); + resourceStream.SeekFromBegin(0); + GetResourceManager()->LoadResourceOrPending(resourceStream, GuiResourceUsage::InstanceClass); + } + + void Unload()override + { + } + }; + GUI_REGISTER_PLUGIN(GuiFakeDialogServiceUIResourceLoaderPlugin) + } + } +} + + +/*********************************************************************** +.\UTILITIES\SHAREDSERVICES\GUISHAREDASYNCSERVICE.CPP +***********************************************************************/ + +namespace vl +{ + namespace presentation + { + using namespace collections; + +/*********************************************************************** +SharedAsyncService::TaskItem +***********************************************************************/ + + SharedAsyncService::TaskItem::TaskItem() + :semaphore(0) + { + } + + SharedAsyncService::TaskItem::TaskItem(Semaphore* _semaphore, const Func& _proc) + :semaphore(_semaphore) + ,proc(_proc) + { + } + + SharedAsyncService::TaskItem::~TaskItem() + { + } + +/*********************************************************************** +SharedAsyncService::DelayItem +***********************************************************************/ + + SharedAsyncService::DelayItem::DelayItem(SharedAsyncService* _service, const Func& _proc, bool _executeInMainThread, vint milliseconds) + :service(_service) + ,proc(_proc) + ,status(INativeDelay::Pending) + ,executeTime(DateTime::LocalTime().Forward(milliseconds)) + ,executeInMainThread(_executeInMainThread) + { + } + + SharedAsyncService::DelayItem::~DelayItem() + { + } + + INativeDelay::ExecuteStatus SharedAsyncService::DelayItem::GetStatus() + { + return status; + } + + bool SharedAsyncService::DelayItem::Delay(vint milliseconds) + { + SPIN_LOCK(service->taskListLock) + { + if(status==INativeDelay::Pending) + { + executeTime=DateTime::LocalTime().Forward(milliseconds); + return true; + } + } + return false; + } + + bool SharedAsyncService::DelayItem::Cancel() + { + SPIN_LOCK(service->taskListLock) + { + if(status==INativeDelay::Pending) + { + if(service->delayItems.Remove(this)) + { + status=INativeDelay::Canceled; + return true; + } + } + } + return false; + } + +/*********************************************************************** +SharedAsyncService +***********************************************************************/ + + SharedAsyncService::SharedAsyncService() + :mainThreadId(Thread::GetCurrentThreadId()) + { + } + + SharedAsyncService::~SharedAsyncService() + { + } + + void SharedAsyncService::ExecuteAsyncTasks() + { + DateTime now=DateTime::LocalTime(); + Array items; + List> executableDelayItems; + + SPIN_LOCK(taskListLock) + { + CopyFrom(items, taskItems); + taskItems.RemoveRange(0, items.Count()); + for(vint i=delayItems.Count()-1;i>=0;i--) + { + Ptr item=delayItems[i]; + if(now.filetime>=item->executeTime.filetime) + { + item->status=INativeDelay::Executing; + executableDelayItems.Add(item); + delayItems.RemoveAt(i); + } + } + } + + for (auto item : items) + { + item.proc(); + if(item.semaphore) + { + item.semaphore->Release(); + } + } + for (auto item : executableDelayItems) + { + if(item->executeInMainThread) + { + item->proc(); + item->status=INativeDelay::Executed; + } + else + { + InvokeAsync([=]() + { + item->proc(); + item->status=INativeDelay::Executed; + }); + } + } + } + + bool SharedAsyncService::IsInMainThread(INativeWindow* window) + { + return Thread::GetCurrentThreadId()==mainThreadId; + } + + void SharedAsyncService::InvokeAsync(const Func& proc) + { + ThreadPoolLite::Queue(proc); + } + + void SharedAsyncService::InvokeInMainThread(INativeWindow* window, const Func& proc) + { + SPIN_LOCK(taskListLock) + { + TaskItem item(0, proc); + taskItems.Add(item); + } + } + + bool SharedAsyncService::InvokeInMainThreadAndWait(INativeWindow* window, const Func& proc, vint milliseconds) + { + Semaphore semaphore; + semaphore.Create(0, 1); + + SPIN_LOCK(taskListLock) + { + TaskItem item(&semaphore, proc); + taskItems.Add(item); + } + +#ifdef VCZH_MSVC + if(milliseconds<0) + { + return semaphore.Wait(); + } + else + { + return semaphore.WaitForTime(milliseconds); + } +#else + return semaphore.Wait(); +#endif + } + + Ptr SharedAsyncService::DelayExecute(const Func& proc, vint milliseconds) + { + Ptr delay; + SPIN_LOCK(taskListLock) + { + delay=Ptr(new DelayItem(this, proc, false, milliseconds)); + delayItems.Add(delay); + } + return delay; + } + + Ptr SharedAsyncService::DelayExecuteInMainThread(const Func& proc, vint milliseconds) + { + Ptr delay; + SPIN_LOCK(taskListLock) + { + delay=Ptr(new DelayItem(this, proc, true, milliseconds)); + delayItems.Add(delay); + } + return delay; + } + } +} + +/*********************************************************************** +.\UTILITIES\SHAREDSERVICES\GUISHAREDCALLBACKSERVICE.CPP +***********************************************************************/ + +namespace vl +{ + namespace presentation + { + +/*********************************************************************** +SharedCallbackService +***********************************************************************/ + + SharedCallbackService::SharedCallbackService() + { + } + + SharedCallbackService::~SharedCallbackService() + { + } + + bool SharedCallbackService::InstallListener(INativeControllerListener* listener) + { + if(listeners.Contains(listener)) + { + return false; + } + else + { + listeners.Add(listener); + return true; + } + } + + bool SharedCallbackService::UninstallListener(INativeControllerListener* listener) + { + if(listeners.Contains(listener)) + { + listeners.Remove(listener); + return true; + } + else + { + return false; + } + } + + INativeCallbackInvoker* SharedCallbackService::Invoker() + { + return this; + } + + void SharedCallbackService::InvokeGlobalTimer() + { + for(vint i=0;iGlobalTimer(); + } + } + + void SharedCallbackService::InvokeClipboardUpdated() + { + for(vint i=0;iClipboardUpdated(); + } + } + + void SharedCallbackService::InvokeNativeWindowCreated(INativeWindow* window) + { + for(vint i=0;iNativeWindowCreated(window); + } + } + + void SharedCallbackService::InvokeNativeWindowDestroying(INativeWindow* window) + { + for(vint i=0;iNativeWindowDestroying(window); + } + } + } +} diff --git a/Import/GacUI.h b/Import/GacUI.h index 22ff5ba5..a5b86d65 100644 --- a/Import/GacUI.h +++ b/Import/GacUI.h @@ -2634,6 +2634,11 @@ INativeResourceService /// /// The font configuration to override. virtual void SetDefaultFont(const FontProperties& value)=0; + /// + /// Enumerate all system fonts. + /// + /// The collection to receive all fonts. + virtual void EnumerateFonts(collections::List& fonts)=0; }; /*********************************************************************** @@ -2891,10 +2896,15 @@ INativeWindowService /// The specified position in screen space. virtual INativeWindow* GetWindow(NativePoint location) = 0; /// - /// Make the specified window a main window, show that window, and wait until the windows is closed. + /// Make the specified window a main window, show that window, process events, and wait until the windows is closed. /// /// The specified window. virtual void Run(INativeWindow* window) = 0; + /// + /// Process minimum necessary events and execute some async tasks. + /// + /// Return false when the main window has been closed and all finalizing are done. + virtual bool RunOneCycle() = 0; }; /*********************************************************************** @@ -2953,6 +2963,32 @@ INativeCallbackService ***********************************************************************/ class INativeControllerListener; + + /// + /// Callback invoker. + /// + class INativeCallbackInvoker : public virtual Interface + { + public: + /// + /// Invoke of all installed listeners. + /// + virtual void InvokeGlobalTimer()=0; + /// + /// Invoke of all installed listeners. + /// + virtual void InvokeClipboardUpdated()=0; + /// + /// Invoke of all installed listeners. + /// + /// The argument to the callback. + virtual void InvokeNativeWindowCreated(INativeWindow* window)=0; + /// + /// Invoke of all installed listeners. + /// + /// The argument to the callback. + virtual void InvokeNativeWindowDestroying(INativeWindow* window)=0; + }; /// /// Callback service. To access this service, use [M:vl.presentation.INativeController.CallbackService]. @@ -2972,6 +3008,11 @@ INativeCallbackService /// Returns true if this operation succeeded. /// The global message listener to uninstall. virtual bool UninstallListener(INativeControllerListener* listener)=0; + /// + /// Get the invoker that invoke all listeners. + /// + /// The invoker. + virtual INativeCallbackInvoker* Invoker()=0; }; /*********************************************************************** @@ -3278,7 +3319,34 @@ Native Window Controller /// Set the global native system service controller. /// /// The global native system service controller. - extern void SetCurrentController(INativeController* controller); + extern void SetNativeController(INativeController* controller); + +#define GUI_SUBSTITUTABLE_SERVICES(F) \ + F(Clipboard) \ + F(Dialog) \ + +#define GUI_UNSUBSTITUTABLE_SERVICES(F) \ + F(Callback) \ + F(Resource) \ + F(Async) \ + F(Image) \ + F(Screen) \ + F(Window) \ + F(Input) \ + + class INativeServiceSubstitution : public Interface + { + public: + +#define SUBSTITUTE_SERVICE(NAME) \ + virtual void Substitute(INative##NAME##Service* service, bool optional) = 0; \ + virtual void Unsubstitute(INative##NAME##Service* service) = 0; \ + + GUI_SUBSTITUTABLE_SERVICES(SUBSTITUTE_SERVICE) +#undef SUBSTITUTE_SERVICE + }; + + extern INativeServiceSubstitution* GetNativeServiceSubstitution(); /// /// Get a cursor according to the hit test result. @@ -4747,7 +4815,7 @@ Host void OnCharInput(const NativeWindowCharInfo& info, GuiGraphicsComposition* composition, GuiCharEvent GuiGraphicsEventReceiver::* eventReceiverEvent); void OnKeyInput(const NativeWindowKeyInfo& info, GuiGraphicsComposition* composition, GuiKeyEvent GuiGraphicsEventReceiver::* eventReceiverEvent); void RaiseMouseEvent(GuiMouseEventArgs& arguments, GuiGraphicsComposition* composition, GuiMouseEvent GuiGraphicsEventReceiver::* eventReceiverEvent); - void OnMouseInput(const NativeWindowMouseInfo& info, GuiMouseEvent GuiGraphicsEventReceiver::* eventReceiverEvent); + void OnMouseInput(const NativeWindowMouseInfo& info, bool capture, bool release, GuiMouseEvent GuiGraphicsEventReceiver::* eventReceiverEvent); void ResetRenderTarget(); void CreateRenderTarget(); @@ -6496,76 +6564,6 @@ Helpers #endif -/*********************************************************************** -.\NATIVEWINDOW\SHAREDSERVICES\GUISHAREDASYNCSERVICE.H -***********************************************************************/ -/*********************************************************************** -Vczh Library++ 3.0 -Developer: Zihan Chen(vczh) -GacUI::Native Window::Default Service Implementation - -Interfaces: -***********************************************************************/ - -#ifndef VCZH_PRESENTATION_GUINATIVEWINDOW_SHAREDSERVICES_SHAREDASYNCSERVICE -#define VCZH_PRESENTATION_GUINATIVEWINDOW_SHAREDSERVICES_SHAREDASYNCSERVICE - - -namespace vl -{ - namespace presentation - { - class SharedAsyncService : public INativeAsyncService - { - protected: - struct TaskItem - { - Semaphore* semaphore; - Func proc; - - TaskItem(); - TaskItem(Semaphore* _semaphore, const Func& _proc); - ~TaskItem(); - }; - - class DelayItem : public Object, public INativeDelay - { - public: - DelayItem(SharedAsyncService* _service, const Func& _proc, bool _executeInMainThread, vint milliseconds); - ~DelayItem(); - - SharedAsyncService* service; - Func proc; - ExecuteStatus status; - DateTime executeTime; - bool executeInMainThread; - - ExecuteStatus GetStatus()override; - bool Delay(vint milliseconds)override; - bool Cancel()override; - }; - protected: - vint mainThreadId; - SpinLock taskListLock; - collections::List taskItems; - collections::List> delayItems; - public: - SharedAsyncService(); - ~SharedAsyncService(); - - void ExecuteAsyncTasks(); - bool IsInMainThread(INativeWindow* window)override; - void InvokeAsync(const Func& proc)override; - void InvokeInMainThread(INativeWindow* window, const Func& proc)override; - bool InvokeInMainThreadAndWait(INativeWindow* window, const Func& proc, vint milliseconds)override; - Ptr DelayExecute(const Func& proc, vint milliseconds)override; - Ptr DelayExecuteInMainThread(const Func& proc, vint milliseconds)override; - }; - } -} - -#endif - /*********************************************************************** .\PLATFORMPROVIDERS\HOSTED\GUIHOSTEDGRAPHICS.H ***********************************************************************/ @@ -7191,8 +7189,11 @@ WindowManager child->parent = parent; } - CopyFrom(parent->children, window->children, true); - parent->children.Remove(window); + if (parent) + { + CopyFrom(parent->children, window->children, true); + parent->children.Remove(window); + } window->parent = nullptr; window->children.Clear(); } @@ -7477,255 +7478,6 @@ GuiHostedWindow #endif -/*********************************************************************** -.\PLATFORMPROVIDERS\HOSTED\GUIHOSTEDCONTROLLER.H -***********************************************************************/ -/*********************************************************************** -Vczh Library++ 3.0 -Developer: Zihan Chen(vczh) -GacUI::Hosted Window - -Interfaces: - GuiHostedController - -***********************************************************************/ - -#ifndef VCZH_PRESENTATION_GUIHOSTEDCONTROLLER -#define VCZH_PRESENTATION_GUIHOSTEDCONTROLLER - - -namespace vl -{ - namespace presentation - { - -/*********************************************************************** -GuiHostedController -***********************************************************************/ - - class GuiHostedController - : public Object - , protected hosted_window_manager::WindowManager - , protected INativeWindowListener - , protected INativeControllerListener - , public INativeController - , protected INativeCallbackService - , protected INativeAsyncService - , protected INativeDialogService - , protected INativeScreenService - , protected INativeScreen - , protected INativeWindowService - { - friend class GuiHostedWindow; - friend class elements::GuiHostedGraphicsResourceManager; - protected: - hosted_window_manager::WindowManager* wmManager = nullptr; - INativeController* nativeController = nullptr; - elements::GuiHostedGraphicsResourceManager* hostedResourceManager = nullptr; - collections::List listeners; - collections::SortedList> createdWindows; - - INativeWindow* nativeWindow = nullptr; - bool nativeWindowDestroyed = false; - - GuiHostedWindow* mainWindow = nullptr; - GuiHostedWindow* capturingWindow = nullptr; - GuiHostedWindow* enteringWindow = nullptr; - - NativePoint hoveringLocation{ -1,-1 }; - GuiHostedWindow* hoveringWindow = nullptr; - GuiHostedWindow* lastFocusedWindow = nullptr; - - enum class WindowManagerOperation - { - None, - Title, - BorderLeft, - BorderRight, - BorderTop, - BorderBottom, - BorderLeftTop, - BorderRightTop, - BorderLeftBottom, - BorderRightBottom, - }; - WindowManagerOperation wmOperation = WindowManagerOperation::None; - GuiHostedWindow* wmWindow = nullptr; - NativePoint wmRelative; - - NativePoint GetPointInClientSpace(NativePoint location); - GuiHostedWindow* HitTestInClientSpace(NativePoint location); - void UpdateHoveringWindow(Nullable location); - void UpdateEnteringWindow(GuiHostedWindow* window); - - // ============================================================= - // WindowManager - // ============================================================= - - void OnOpened(hosted_window_manager::Window* window) override; - void OnClosed(hosted_window_manager::Window* window) override; - void OnEnabled(hosted_window_manager::Window* window) override; - void OnDisabled(hosted_window_manager::Window* window) override; - void OnGotFocus(hosted_window_manager::Window* window) override; - void OnLostFocus(hosted_window_manager::Window* window) override; - void OnActivated(hosted_window_manager::Window* window) override; - void OnDeactivated(hosted_window_manager::Window* window) override; - - // ============================================================= - // INativeWindowListener - // ============================================================= - - HitTestResult HitTest(NativePoint location) override; - void Moving(NativeRect& bounds, bool fixSizeOnly, bool draggingBorder) override; - void Moved() override; - void DpiChanged(bool preparing) override; - void GotFocus() override; - void LostFocus() override; - void BeforeClosing(bool& cancel) override; - void AfterClosing() override; - void Paint() override; - - GuiHostedWindow* GetSelectedWindow_MouseDown(const NativeWindowMouseInfo& info); - GuiHostedWindow* GetSelectedWindow_MouseMoving(const NativeWindowMouseInfo& info); - GuiHostedWindow* GetSelectedWindow_Other(const NativeWindowMouseInfo& info); - - void PreAction_LeftButtonDown(const NativeWindowMouseInfo& info); - void PreAction_MouseDown(const NativeWindowMouseInfo& info); - void PreAction_MouseMoving(const NativeWindowMouseInfo& info); - void PreAction_Other(const NativeWindowMouseInfo& info); - - void PostAction_LeftButtonUp(GuiHostedWindow* selectedWindow, const NativeWindowMouseInfo& info); - void PostAction_Other(GuiHostedWindow* selectedWindow, const NativeWindowMouseInfo& info); - - template< - void (GuiHostedController::* PreAction)(const NativeWindowMouseInfo&), - GuiHostedWindow* (GuiHostedController::* GetSelectedWindow)(const NativeWindowMouseInfo&), - void (GuiHostedController::* PostAction)(GuiHostedWindow*, const NativeWindowMouseInfo&), - void (INativeWindowListener::* Callback)(const NativeWindowMouseInfo&) - > - void HandleMouseCallback(const NativeWindowMouseInfo& info); - - template< - typename TInfo, - void (INativeWindowListener::* Callback)(const TInfo&) - > - void HandleKeyboardCallback(const TInfo& info); - - void LeftButtonDown(const NativeWindowMouseInfo& info) override; - void LeftButtonUp(const NativeWindowMouseInfo& info) override; - void LeftButtonDoubleClick(const NativeWindowMouseInfo& info) override; - void RightButtonDown(const NativeWindowMouseInfo& info) override; - void RightButtonUp(const NativeWindowMouseInfo& info) override; - void RightButtonDoubleClick(const NativeWindowMouseInfo& info) override; - void MiddleButtonDown(const NativeWindowMouseInfo& info) override; - void MiddleButtonUp(const NativeWindowMouseInfo& info) override; - void MiddleButtonDoubleClick(const NativeWindowMouseInfo& info) override; - void HorizontalWheel(const NativeWindowMouseInfo& info) override; - void VerticalWheel(const NativeWindowMouseInfo& info) override; - void MouseMoving(const NativeWindowMouseInfo& info) override; - void MouseEntered() override; - void MouseLeaved() override; - - void KeyDown(const NativeWindowKeyInfo& info) override; - void KeyUp(const NativeWindowKeyInfo& info) override; - void SysKeyDown(const NativeWindowKeyInfo& info) override; - void SysKeyUp(const NativeWindowKeyInfo& info) override; - void Char(const NativeWindowCharInfo& info) override; - - // ============================================================= - // INativeControllerListener - // ============================================================= - - void GlobalTimer() override; - void ClipboardUpdated() override; - void NativeWindowDestroying(INativeWindow* window) override; - - // ============================================================= - // INativeController - // ============================================================= - - INativeCallbackService* CallbackService() override; - INativeResourceService* ResourceService() override; - INativeAsyncService* AsyncService() override; - INativeClipboardService* ClipboardService() override; - INativeImageService* ImageService() override; - INativeInputService* InputService() override; - INativeDialogService* DialogService() override; - WString GetExecutablePath() override; - - INativeScreenService* ScreenService() override; - INativeWindowService* WindowService() override; - - // ============================================================= - // INativeCallbackService - // ============================================================= - - bool InstallListener(INativeControllerListener* listener) override; - bool UninstallListener(INativeControllerListener* listener) override; - - // ============================================================= - // INativeAsyncService - // ============================================================= - - bool IsInMainThread(INativeWindow* window) override; - void InvokeAsync(const Func& proc) override; - void InvokeInMainThread(INativeWindow* window, const Func& proc) override; - bool InvokeInMainThreadAndWait(INativeWindow* window, const Func& proc, vint milliseconds) override; - Ptr DelayExecute(const Func& proc, vint milliseconds) override; - Ptr DelayExecuteInMainThread(const Func& proc, vint milliseconds) override; - - // ============================================================= - // INativeDialogService - // ============================================================= - - MessageBoxButtonsOutput ShowMessageBox(INativeWindow* window, const WString& text, const WString& title, MessageBoxButtonsInput buttons, MessageBoxDefaultButton defaultButton, MessageBoxIcons icon, MessageBoxModalOptions modal) override; - bool ShowColorDialog(INativeWindow* window, Color& selection, bool selected, ColorDialogCustomColorOptions customColorOptions, Color* customColors) override; - bool ShowFontDialog(INativeWindow* window, FontProperties& selectionFont, Color& selectionColor, bool selected, bool showEffect, bool forceFontExist) override; - bool ShowFileDialog(INativeWindow* window, collections::List& selectionFileNames, vint& selectionFilterIndex, FileDialogTypes dialogType, const WString& title, const WString& initialFileName, const WString& initialDirectory, const WString& defaultExtension, const WString& filter, FileDialogOptions options) override; - - // ============================================================= - // INativeScreenService - // ============================================================= - - vint GetScreenCount() override; - INativeScreen* GetScreen(vint index) override; - INativeScreen* GetScreen(INativeWindow* window) override; - - // ============================================================= - // INativeScreen - // ============================================================= - - NativeRect GetBounds() override; - NativeRect GetClientBounds() override; - WString GetName() override; - bool IsPrimary() override; - double GetScalingX() override; - double GetScalingY() override; - - // ============================================================= - // INativeWindowService - // ============================================================= - - INativeWindow* CreateNativeWindow(INativeWindow::WindowMode windowMode) override; - void DestroyNativeWindow(INativeWindow* window) override; - INativeWindow* GetMainWindow() override; - INativeWindow* GetWindow(NativePoint location) override; - - void SettingHostedWindowsBeforeRunning(); - void DestroyHostedWindowsAfterRunning(); - void Run(INativeWindow* window) override; - public: - GuiHostedController(INativeController* _nativeController); - ~GuiHostedController(); - - void Initialize(); - void Finalize(); - }; - } -} - -#endif - /*********************************************************************** .\RESOURCES\GUIPLUGINMANAGER.H ***********************************************************************/ @@ -9582,9 +9334,11 @@ Control Host { friend class compositions::GuiGraphicsHost; protected: + Func callbackAfterDeleteThis; compositions::GuiGraphicsHost* host; INativeWindow::WindowMode windowMode = INativeWindow::Normal; + void DeleteThis(); virtual void OnNativeWindowChanged(); virtual void OnVisualStatusChanged(); protected: @@ -9645,7 +9399,8 @@ Control Host compositions::GuiNotifyEvent WindowDestroying; /// Delete this control host after processing all events. - void DeleteAfterProcessingAllEvents(); + /// The callback to call after the window is deleted. + void DeleteAfterProcessingAllEvents(const Func& callback); /// Get the internal object to host the window content. /// The internal object to host the window content. @@ -9782,6 +9537,9 @@ Window { GUI_SPECIFY_CONTROL_TEMPLATE_TYPE(WindowTemplate, GuiControlHost) friend class GuiApplication; + protected: + bool registeredInApplication = false; + protected: compositions::IGuiAltActionHost* previousAltHost = nullptr; bool hasMaximizedBox = true; @@ -9915,6 +9673,13 @@ Window /// The callback to call after the window is closed. void ShowModalAndDelete(GuiWindow* owner, const Func& callback); /// + /// Show a model window, get a callback when the window is closed, and then delete itself. + /// + /// The window to disable as a parent window. + /// The callback to call after the window is closed. + /// The callback to call after the window is closed. + void ShowModalAndDelete(GuiWindow* owner, const Func& callbackClosed, const Func& callbackDeleted); + /// /// Show a model window as an async operation, which ends when the window is closed. /// /// Returns true if the size box is visible. @@ -10060,13 +9825,18 @@ Application class GuiApplication : public Object, private INativeControllerListener, public Description { friend void GuiApplicationInitialize(); + friend class GuiControlHost; friend class GuiWindow; friend class GuiPopup; friend class Ptr; private: + void InvokeClipboardNotify(compositions::GuiGraphicsComposition* composition, compositions::GuiEventArgs& arguments); void ClipboardUpdated()override; + protected: + using WindowMap = collections::Dictionary; + Locale locale; GuiWindow* mainWindow = nullptr; GuiWindow* sharedTooltipOwnerWindow = nullptr; @@ -10075,6 +9845,7 @@ Application bool sharedTooltipHovering = false; bool sharedTooltipClosing = false; collections::List windows; + WindowMap windowMap; collections::SortedList openingPopups; GuiApplication(); @@ -10083,6 +9854,7 @@ Application INativeWindow* GetThreadContextNativeWindow(GuiControlHost* controlHost); void RegisterWindow(GuiWindow* window); void UnregisterWindow(GuiWindow* window); + void NotifyNativeWindowChanged(GuiControlHost* controlHost, INativeWindow* previousNativeWindow); void RegisterPopupOpened(GuiPopup* popup); void RegisterPopupClosed(GuiPopup* popup); void TooltipMouseEnter(compositions::GuiGraphicsComposition* sender, compositions::GuiEventArgs& arguments); @@ -10101,6 +9873,11 @@ Application /// Run a as the main window and show it. This function can only be called once in the entry point. When the main window is closed or hiden, the Run function will finished, and the application should prepare for finalization. /// The main window. void Run(GuiWindow* _mainWindow); + /// + /// Process minimum necessary events and execute some async tasks. + /// + /// Return false when the main window has been closed and all finalizing are done. + bool RunOneCycle(); /// Get the main window. /// The main window. GuiWindow* GetMainWindow(); @@ -10111,6 +9888,10 @@ Application /// The instance that the mouse cursor are directly in. /// The mouse cursor. GuiWindow* GetWindow(NativePoint location); + /// Get the instance that associated with the specified native window. + /// The instance that associated with the specified native window. + /// The native window. + GuiWindow* GetWindowFromNative(INativeWindow* nativeWindow); /// Show a tooltip. /// The control that owns this tooltip temporary. /// The control as the tooltip content. This control is not owned by the tooltip. User should manually release this control if no longer needed (usually when the application exit). @@ -17677,6 +17458,26 @@ ComboBox Base ~GuiComboBoxBase(); }; +/*********************************************************************** +ComboBox with GuiControl +***********************************************************************/ + + /// Combo box control. This control is a combo box with a control in its popup. + class GuiComboButton + : public GuiComboBoxBase + , public Description + { + protected: + GuiControl* dropdownControl = nullptr; + + public: + /// Create a control with a specified default theme and a control that will be put in the popup control. + /// The theme name for retriving a default control template. + /// The contained control. + GuiComboButton(theme::ThemeName themeName, GuiControl* _dropdownControl); + ~GuiComboButton(); + }; + /*********************************************************************** ComboBox with GuiListControl ***********************************************************************/ @@ -17721,7 +17522,7 @@ ComboBox with GuiListControl public: /// Create a control with a specified default theme and a list control that will be put in the popup control to show all items. /// The theme name for retriving a default control template. - /// The list controller. + /// The list control. GuiComboBoxListControl(theme::ThemeName themeName, GuiSelectableListControl* _containedListControl); ~GuiComboBoxListControl(); @@ -21240,6 +21041,644 @@ IGuiResourceManager #endif +/*********************************************************************** +.\UTILITIES\FAKESERVICES\GUIFAKECLIPBOARDSERVICE.H +***********************************************************************/ +/*********************************************************************** +Vczh Library++ 3.0 +Developer: Zihan Chen(vczh) +GacUI::Native Window::Default Service Implementation + +Interfaces: +***********************************************************************/ + +#ifndef VCZH_PRESENTATION_UTILITIES_FAKESERVICES_FAKECLIPBOARDSERVICE +#define VCZH_PRESENTATION_UTILITIES_FAKESERVICES_FAKECLIPBOARDSERVICE + + +namespace vl +{ + namespace presentation + { + class FakeClipboardReader; + class FakeClipboardWriter; + + /// + /// An implementation that interchange objects only in the current process. + /// + class FakeClipboardService + : public Object + , public INativeClipboardService + { + friend class FakeClipboardReader; + friend class FakeClipboardWriter; + protected: + Ptr reader; + + public: + FakeClipboardService(); + ~FakeClipboardService(); + + Ptr ReadClipboard() override; + Ptr WriteClipboard() override; + }; + } +} + +#endif + +/*********************************************************************** +.\UTILITIES\FAKESERVICES\GUIFAKEDIALOGSERVICEBASE.H +***********************************************************************/ +/*********************************************************************** +Vczh Library++ 3.0 +Developer: Zihan Chen(vczh) +GacUI::Native Window::Default Service Implementation + +Interfaces: +***********************************************************************/ + +#ifndef VCZH_PRESENTATION_UTILITIES_FAKESERVICES_FAKEDIALOGSERVICEBASE +#define VCZH_PRESENTATION_UTILITIES_FAKESERVICES_FAKEDIALOGSERVICEBASE + + +namespace vl +{ + namespace presentation + { + namespace controls + { + class GuiWindow; + } + +/*********************************************************************** +View Models (MessageBox) +***********************************************************************/ + + /// + /// The view model for message box button. It is implemented by . + /// + class IMessageBoxDialogAction : public virtual IDescriptable + { + public: + using ButtonItem = INativeDialogService::MessageBoxButtonsOutput; + + /// + /// Get the button that it stands for. + /// + /// The button. + virtual ButtonItem GetButton() = 0; + /// + /// Select this button. + /// + virtual void PerformAction() = 0; + }; + + /// + /// The view model for message box. It is implemented by . + /// + class IMessageBoxDialogViewModel : public virtual IDescriptable + { + public: + using Icon = INativeDialogService::MessageBoxIcons; + using ButtonItem = INativeDialogService::MessageBoxButtonsOutput; + using ButtonItemList = collections::List>; + + /// + /// Get the text to display on the message box. + /// + /// The text. + virtual WString GetText() = 0; + /// + /// Get the title to display on the message box. + /// + /// The title. + virtual WString GetTitle() = 0; + /// + /// Get the icon to display on the message box. + /// + /// The icon. + virtual Icon GetIcon() = 0; + /// + /// Get all buttons to display on the message box. + /// + /// All buttons. + virtual const ButtonItemList& GetButtons() = 0; + /// + /// Get the button that should have the focus by default. + /// + /// The button to be focused. + virtual ButtonItem GetDefaultButton() = 0; + /// + /// Get the selected button. It is set by . + /// + /// The selected button. + virtual ButtonItem GetResult() = 0; + }; + +/*********************************************************************** +View Models (Confirmation) +***********************************************************************/ + + /// + /// The view model for all dialogs with "OK" and "Cancel" button. It is implemented by . + /// + class IDialogConfirmation : public virtual IDescriptable + { + public: + /// + /// Test is the OK button is selected. + /// + /// Returns true if the OK button is selected. + virtual bool GetConfirmed() = 0; + /// + /// Set the selected button. + /// + /// True for OK, false for Cancel. + virtual void SetConfirmed(bool value) = 0; + }; + +/*********************************************************************** +View Models (ColorDialog) +***********************************************************************/ + + /// + /// The view model for color dialog. It is implemented by . + /// + class IColorDialogViewModel : public virtual IDialogConfirmation + { + public: + /// + /// Get the selected color. When the dialog is opened, it returns the pre-selected color. + /// + /// The selected color. + virtual Color GetColor() = 0; + /// + /// Set the selected color. + /// + /// The selected color. + virtual void SetColor(Color value) = 0; + }; + +/*********************************************************************** +View Models (FontDialog) +***********************************************************************/ + + /// + /// The view model for all font dialogs. It is implemented by . + /// + class ICommonFontDialogViewModel : public virtual IDescriptable + { + public: + using FontList = collections::List; + + /// + /// Test if the selected font should be one in . If it is true and the selected font does not exist, the OK button should be disabled. + /// + /// Returns true if the selected font should be one in . + virtual bool GetFontMustExist() = 0; + /// + /// All registered fonts in the system. + /// + /// All registered fonts. + virtual const FontList& GetFontList() = 0; + }; + + /// + /// The view model for simple font dialog. It is implemented by . + /// + class ISimpleFontDialogViewModel : public virtual ICommonFontDialogViewModel, public virtual IDialogConfirmation + { + public: + /// + /// Get the selected font. When the dialog is opened, it returns the pre-selected font. + /// + /// The selected font. + virtual WString GetFontFamily() = 0; + /// + /// Set the selected font. + /// + /// The selected font. + virtual void SetFontFamily(const WString& fontface) = 0; + /// + /// Get the selected size. When the dialog is opened, it returns the pre-selected size. + /// + /// The selected size. + virtual vint GetFontSize() = 0; + /// + /// Set the selected size. + /// + /// The selected size. + virtual void SetFontSize(vint value) = 0; + }; + + /// + /// The view model for full font dialog. It is implemented by . + /// + class IFullFontDialogViewModel : public virtual ICommonFontDialogViewModel, public virtual IColorDialogViewModel + { + public: + /// + /// Get the selected font. When the dialog is opened, it returns the pre-selected font. + /// + /// The selected font. + virtual FontProperties GetFont() = 0; + /// + /// Set the selected font. + /// + /// The selected font. + virtual void SetFont(const FontProperties& value) = 0; + /// + /// Display a color dialog and change the Color property in . + /// + /// Returns true when a color is selected. + /// A owner window for displaying color dialogs. + virtual bool SelectColor(controls::GuiWindow* owner) = 0; + }; + +/*********************************************************************** +View Models (FileDialog) +***********************************************************************/ + + /// + /// Type of a folder in a file dialog. + /// + enum class FileDialogFolderType + { + /// + /// The root folder, it does not render in the dialog. + /// + Root, + /// + /// A placeolder item, it means folders are being loaded. + /// + Placeholder, + /// + /// A folder. + /// + Folder, + }; + + /// + /// The view model for a folder in a file dialog. It is implemented by . + /// + class IFileDialogFolder : public virtual IDescriptable + { + public: + using Folders = collections::ObservableList>; + + /// + /// Get the parent folder of this folder. + /// + /// The parent folder. It returns null for the root folder. + virtual Ptr GetParent() = 0; + /// + /// Get the type of this folder. + /// + /// The type. + virtual FileDialogFolderType GetType() = 0; + /// + /// Get the full path of this folder. + /// + /// The full path. It returns an empty string for root or placeholder. + virtual WString GetFullPath() = 0; + /// + /// Get the name of this folder. + /// + /// The name. It returns an empty string for root. + virtual WString GetName() = 0; + /// + /// Get the rendering position of this folder in its parent folder. + /// + /// The rendering position. + virtual vint GetIndex() = 0; + /// + /// Get all sub folders of this folder. + /// + /// All sub folders. + virtual Folders& GetFolders() = 0; + /// + /// Get a sub folder by its name. + /// + /// The name of the sub folder. + /// The sub folder. It returns null if the object has not been created yet, this doesn't mean the folder doesn't exist. + virtual Ptr TryGetFolder(const WString& name) = 0; + }; + + /// + /// Type of a file in a file dialog. + /// + enum class FileDialogFileType + { + /// + /// A placeholder item, it means files and folders are being loaded. + /// + Placeholder, + /// + /// A folder. + /// + Folder, + /// + /// A file. + /// + File, + }; + + /// + /// The view model for a file in a file dialog. It is implemented by . + /// + class IFileDialogFile : public virtual IDescriptable + { + public: + using Files = collections::ObservableList>; + + /// + /// Get the type of this file. + /// + /// + virtual FileDialogFileType GetType() = 0; + /// + /// Get the associated folder of this file. + /// + /// The associated folder. It returns null for placeholder or file. + virtual Ptr GetAssociatedFolder() = 0; + /// + /// Get the name of this file. + /// + /// The name. + virtual WString GetName() = 0; + }; + + /// + /// The view model for a filter in a file dialog. It is implemented by . + /// + class IFileDialogFilter : public virtual IDescriptable + { + public: + using Filters = collections::List>; + + /// + /// Get the name of this filter. + /// + /// The name. + virtual WString GetName() = 0; + /// + /// Get the wildcard of this filter. + /// + /// The wildcard. + virtual WString GetFilter() = 0; + /// + /// Get the default extension for this filter. + /// + /// The default extension. It returns null if it is not defined. + virtual Nullable GetDefaultExtension() = 0; + /// + /// Filter a file. + /// + /// The file to filter. + /// Returns true if the file satisfies the filter. + virtual bool FilterFile(Ptr file) = 0; + }; + + /// + /// The view model for file dialog. It is implemented by . + /// + class IFileDialogViewModel : public virtual IDescriptable + { + public: + using Filters = IFileDialogFilter::Filters; + using Folders = IFileDialogFolder::Folders; + using Files = IFileDialogFile::Files; + using Selection = collections::LazyList; + + /// + /// Raised when the is changed. + /// + Event SelectedFilterChanged; + /// + /// Raised when the is changed. + /// + Event SelectedFolderChanged; + /// + /// Raised when the property is changed. + /// + Event IsLoadingFilesChanged; + + /// + /// Get the title of this dialog. + /// + /// + virtual WString GetTitle() = 0; + /// + /// Test if multiple selection is allowed. + /// + /// Returns true if multiple selection is allowed. + virtual bool GetEnabledMultipleSelection() = 0; + + /// + /// Get the default extension. + /// + /// The default extension. + virtual WString GetDefaultExtension() = 0; + /// + /// Get all filters of this dialog. + /// + /// All filters. + virtual const Filters& GetFilters() = 0; + /// + /// Get the selected filter of this dialog. + /// + /// The selected filter of this dialog. + virtual Ptr GetSelectedFilter() = 0; + /// + /// Set the selected filter of this dialog. It could cause folders and files to be refreshed. + /// + /// The selected filter of this dialog. + virtual void SetSelectedFilter(Ptr value) = 0; + + /// + /// Get the root folder. + /// + /// The root folder. + virtual Ptr GetRootFolder() = 0; + /// + /// Get the selected folder. + /// + /// The selected folder. + virtual Ptr GetSelectedFolder() = 0; + /// + /// Set the selected folder. + /// + /// The selected folder. + virtual void SetSelectedFolder(Ptr value) = 0; + + /// + /// Test if folders and files are being loaded. + /// + /// Returns true if folders and files are being loaded. + virtual bool GetIsLoadingFiles() = 0; + /// + /// Get all folders and files in the selected folder. + /// + /// All folders and files to display. + virtual Files& GetFiles() = 0; + /// + /// Refresh the folders and files list. + /// + virtual void RefreshFiles() = 0; + + /// + /// Convert files to a display string. + /// + /// The files. + /// The display string, items are separated by ";". + virtual WString GetDisplayString(collections::LazyList> files) = 0; + + /// + /// Split the display string to items. + /// + /// The display string. + /// The items, each item is either a relative path or an absolute path. + virtual Selection ParseDisplayString(const WString& displayString) = 0; + /// + /// Test if the selection is valid. Dialogs could be displayed and ask for input accordingly. + /// + /// A owner window for displaying message boxes. + /// All selected items in string format. Each of them could be either full path, relative path or file name. + /// Returns true if the selection is valid. + virtual bool TryConfirm(controls::GuiWindow* owner, Selection selection) = 0; + + /// + /// Initialize the view model with localized texts. + /// + /// The name for placeholder folder. + /// The name for placeholder file. + /// The message saying selection is empty. + /// The message saying selected files do not exist. + /// The message saying selected files are expected but they are folders. + /// The message saying the selected folder do not exist. + /// The message saying multiple selection is not allowed. + /// The message asking if user wants to create a file. + /// The message asking if user wants to override a file. + virtual void InitLocalizedText( + const WString& textLoadingFolders, + const WString& textLoadingFiles, + const WString& dialogErrorEmptySelection, + const WString& dialogErrorFileNotExist, + const WString& dialogErrorFileExpected, + const WString& dialogErrorFolderNotExist, + const WString& dialogErrorMultipleSelectionNotEnabled, + const WString& dialogAskCreateFile, + const WString& dialogAskOverrideFile + ) = 0; + }; + +/*********************************************************************** +FakeDialogServiceBase +***********************************************************************/ + + /// + /// View model implementations for . + /// + class FakeDialogServiceBase + : public Object + , public INativeDialogService + { + protected: + + /// + /// A callback to create a message box from the given view model. + /// + /// The given view model. + /// The created window to be displayed. + virtual controls::GuiWindow* CreateMessageBoxDialog(Ptr viewModel) = 0; + + /// + /// A callback to create a color dialog from the given view model. + /// + /// The given view model. + /// The created window to be displayed. + virtual controls::GuiWindow* CreateColorDialog(Ptr viewModel) = 0; + + /// + /// A callback to create a simple font dialog from the given view model. + /// + /// The given view model. + /// The created window to be displayed. + virtual controls::GuiWindow* CreateSimpleFontDialog(Ptr viewModel) = 0; + + /// + /// A callback to create a full font dialog from the given view model. + /// + /// The given view model. + /// The created window to be displayed. + virtual controls::GuiWindow* CreateFullFontDialog(Ptr viewModel) = 0; + + /// + /// A callback to create a open file dialog from the given view model. + /// + /// The given view model. + /// The created window to be displayed. + virtual controls::GuiWindow* CreateOpenFileDialog(Ptr viewModel) = 0; + + /// + /// A callback to create a save file dialog from the given view model. + /// + /// The given view model. + /// The created window to be displayed. + virtual controls::GuiWindow* CreateSaveFileDialog(Ptr viewModel) = 0; + + void ShowModalDialogAndDelete(Ptr viewModel, controls::GuiWindow* owner, controls::GuiWindow* dialog); + + public: + FakeDialogServiceBase(); + ~FakeDialogServiceBase(); + + MessageBoxButtonsOutput ShowMessageBox( + INativeWindow* window, + const WString& text, + const WString& title, + MessageBoxButtonsInput buttons, + MessageBoxDefaultButton defaultButton, + MessageBoxIcons icon, + MessageBoxModalOptions modal + ) override; + + bool ShowColorDialog( + INativeWindow* window, + Color& selection, + bool selected, + ColorDialogCustomColorOptions customColorOptions, + Color* customColors + ) override; + + bool ShowFontDialog( + INativeWindow* window, + FontProperties& selectionFont, + Color& selectionColor, + bool selected, + bool showEffect, + bool forceFontExist + ) override; + + bool ShowFileDialog( + INativeWindow* window, + collections::List& selectionFileNames, + vint& selectionFilterIndex, + FileDialogTypes dialogType, + const WString& title, + const WString& initialFileName, + const WString& initialDirectory, + const WString& defaultExtension, + const WString& filter, + FileDialogOptions options + ) override; + }; + } +} + +#endif + /*********************************************************************** .\GACUIREFLECTIONHELPER.H ***********************************************************************/ @@ -21389,3 +21828,3422 @@ extern int SetupGtkRenderer(); extern int SetupOSXCoreGraphicsRenderer(); #endif + +/*********************************************************************** +.\UTILITIES\FAKESERVICES\DIALOGS\GUIFAKEDIALOGSERVICE.H +***********************************************************************/ +/*********************************************************************** +Vczh Library++ 3.0 +Developer: Zihan Chen(vczh) +GacUI::Native Window::Default Service Implementation + +Interfaces: +***********************************************************************/ + +#ifndef VCZH_PRESENTATION_UTILITIES_FAKESERVICES_FAKEDIALOGSERVICE +#define VCZH_PRESENTATION_UTILITIES_FAKESERVICES_FAKEDIALOGSERVICE + + +namespace vl +{ + namespace presentation + { + namespace controls + { + class GuiWindow; + } + + /// + /// UI implementations for . + /// + class FakeDialogService : public FakeDialogServiceBase + { + protected: + + controls::GuiWindow* CreateMessageBoxDialog(Ptr< IMessageBoxDialogViewModel> viewModel) override; + controls::GuiWindow* CreateColorDialog(Ptr viewModel) override; + controls::GuiWindow* CreateSimpleFontDialog(Ptr viewModel) override; + controls::GuiWindow* CreateFullFontDialog(Ptr viewModel) override; + controls::GuiWindow* CreateOpenFileDialog(Ptr viewModel) override; + controls::GuiWindow* CreateSaveFileDialog(Ptr viewModel) override; + + public: + FakeDialogService(); + ~FakeDialogService(); + }; + } +} + +#endif + +/*********************************************************************** +.\UTILITIES\FAKESERVICES\DIALOGS\SOURCE\GUIFAKEDIALOGSERVICEUI.H +***********************************************************************/ +/*********************************************************************** +!!!!!! DO NOT MODIFY !!!!!! + +GacGen.exe Resource.xml + +This file is generated by Workflow compiler +https://github.com/vczh-libraries +***********************************************************************/ + +#ifndef VCZH_WORKFLOW_COMPILER_GENERATED_GUIFAKEDIALOGSERVICEUI +#define VCZH_WORKFLOW_COMPILER_GENERATED_GUIFAKEDIALOGSERVICEUI + + +#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 vl_workflow_global +{ + struct __vwsnf10_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_; + struct __vwsnf11_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_; + struct __vwsnf12_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize_; + struct __vwsnf13_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize_; + struct __vwsnf14_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize_; + struct __vwsnf15_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize_; + struct __vwsnf16_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize_; + struct __vwsnf17_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize_; + struct __vwsnf18_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize_; + struct __vwsnf19_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize__; + struct __vwsnf1_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize_; + struct __vwsnf20_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize_; + struct __vwsnf21_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize_; + struct __vwsnf22_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize_; + struct __vwsnf23_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize_; + struct __vwsnf24_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize_; + struct __vwsnf25_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindow___vwsn_instance_ctor__; + struct __vwsnf26_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_; + struct __vwsnf27_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_; + struct __vwsnf28_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_; + struct __vwsnf29_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_; + struct __vwsnf2_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize_; + struct __vwsnf30_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_; + struct __vwsnf32_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_; + struct __vwsnf33_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_; + struct __vwsnf35_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_; + struct __vwsnf36_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_; + struct __vwsnf37_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__; + struct __vwsnf38_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_; + struct __vwsnf39_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_; + struct __vwsnf3_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize_; + struct __vwsnf40_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_; + struct __vwsnf41_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_; + struct __vwsnf42_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_; + struct __vwsnf43_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_; + struct __vwsnf44_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControl_GetSelectedFiles_; + struct __vwsnf46_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_; + struct __vwsnf47_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_; + struct __vwsnf48_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_; + struct __vwsnf49_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_; + struct __vwsnf4_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize_; + struct __vwsnf50_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_; + struct __vwsnf51_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_; + struct __vwsnf53_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_; + struct __vwsnf54_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_; + struct __vwsnf55_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_; + struct __vwsnf56_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_; + struct __vwsnf57_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_; + struct __vwsnf58_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_; + struct __vwsnf59_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_; + struct __vwsnf5_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_; + struct __vwsnf60_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_; + struct __vwsnf61_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_; + struct __vwsnf62_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_; + struct __vwsnf63_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_; + struct __vwsnf64_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_; + struct __vwsnf65_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_; + struct __vwsnf66_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_; + struct __vwsnf67_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_; + struct __vwsnf68_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_; + struct __vwsnf69_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_; + struct __vwsnf6_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_; + struct __vwsnf70_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_; + struct __vwsnf71_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_; + struct __vwsnf72_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_; + struct __vwsnf73_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_; + struct __vwsnf74_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_; + struct __vwsnf75_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_; + struct __vwsnf76_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_; + struct __vwsnf77_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_; + struct __vwsnf78_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_; + struct __vwsnf79_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_; + struct __vwsnf7_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_; + struct __vwsnf80_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_; + struct __vwsnf81_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_; + struct __vwsnf82_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_; + struct __vwsnf83_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_; + struct __vwsnf84_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_; + struct __vwsnf85_GuiFakeDialogServiceUI_gaclib_controls_MessageBoxButtonTemplateConstructor___vwsn_gaclib_controls_MessageBoxButtonTemplate_Initialize_; + struct __vwsnf86_GuiFakeDialogServiceUI_gaclib_controls_MessageBoxButtonTemplateConstructor___vwsn_gaclib_controls_MessageBoxButtonTemplate_Initialize_; + struct __vwsnf87_GuiFakeDialogServiceUI_gaclib_controls_MessageBoxWindowConstructor___vwsn_gaclib_controls_MessageBoxWindow_Initialize_; + struct __vwsnf8_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_; + struct __vwsnf9_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_; + struct __vwsno31_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_; + struct __vwsno34_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_; + struct __vwsno45_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_; + struct __vwsno52_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_; + class __vwsnc10_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription; + class __vwsnc11_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + class __vwsnc12_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + class __vwsnc13_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + class __vwsnc14_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + class __vwsnc15_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + class __vwsnc16_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + class __vwsnc17_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + class __vwsnc18_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription; + class __vwsnc19_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription; + class __vwsnc1_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize__vl_reflection_description_IValueSubscription; + class __vwsnc20_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription; + class __vwsnc21_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription; + class __vwsnc22_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription; + class __vwsnc23_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription; + class __vwsnc24_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControl_GetSelectedFiles___vl_reflection_description_ICoroutine; + class __vwsnc25_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControl_CreateFileFilter__vl_presentation_controls_list_IDataFilter; + class __vwsnc26_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize__vl_reflection_description_IValueSubscription; + class __vwsnc27_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize__vl_reflection_description_IValueSubscription; + class __vwsnc28_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize__vl_reflection_description_IValueSubscription; + class __vwsnc29_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize__vl_reflection_description_IValueSubscription; + class __vwsnc2_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize__vl_reflection_description_IValueSubscription; + class __vwsnc30_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize__vl_reflection_description_IValueSubscription; + class __vwsnc31_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize__vl_reflection_description_IValueSubscription; + class __vwsnc32_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize__vl_reflection_description_IValueSubscription; + class __vwsnc33_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize__vl_reflection_description_IValueSubscription; + class __vwsnc34_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + class __vwsnc35_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + class __vwsnc36_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + class __vwsnc37_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + class __vwsnc38_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + class __vwsnc39_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + class __vwsnc3_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize__vl_reflection_description_IValueSubscription; + class __vwsnc40_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + class __vwsnc41_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + class __vwsnc42_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + class __vwsnc43_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + class __vwsnc44_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + class __vwsnc45_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + class __vwsnc46_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + class __vwsnc47_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + class __vwsnc48_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + class __vwsnc49_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + class __vwsnc4_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription; + class __vwsnc50_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + class __vwsnc51_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + class __vwsnc52_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + class __vwsnc53_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + class __vwsnc54_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + class __vwsnc55_GuiFakeDialogServiceUI_gaclib_controls_MessageBoxButtonTemplateConstructor___vwsn_gaclib_controls_MessageBoxButtonTemplate_Initialize__vl_reflection_description_IValueSubscription; + class __vwsnc56_GuiFakeDialogServiceUI_gaclib_controls_DialogStrings_Get__gaclib_controls_IDialogStringsStrings; + class __vwsnc5_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription; + class __vwsnc6_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription; + class __vwsnc7_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription; + class __vwsnc8_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription; + class __vwsnc9_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription; +} + +namespace gaclib_controls +{ + class ColorComponentControlConstructor; + class ColorComponentControl; + class ColorDialogControlConstructor; + class ColorDialogControl; + class ColorDialogWindowConstructor; + class ColorDialogWindow; + class DialogStrings; + class FileDialogWindowConstructor; + class FileDialogWindow; + class FilePickerControlConstructor; + class FilePickerControl; + class FontNameControlConstructor; + class FontNameControl; + class FontSizeControlConstructor; + class FontSizeControl; + class FullFontDialogWindowConstructor; + class FullFontDialogWindow; + class IDialogStringsStrings; + class MessageBoxButtonTemplateConstructor; + class MessageBoxButtonTemplate; + class MessageBoxWindowConstructor; + class MessageBoxWindow; + class SimpleFontDialogWindowConstructor; + class SimpleFontDialogWindow; + + class ColorComponentControlConstructor : public ::vl::Object, public ::vl::reflection::Description + { + friend class ::vl_workflow_global::__vwsnc1_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc2_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc3_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize__vl_reflection_description_IValueSubscription; + friend struct ::vl_workflow_global::__vwsnf1_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf2_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf3_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf4_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize_; +#ifdef VCZH_DESCRIPTABLEOBJECT_WITH_METADATA + friend struct ::vl::reflection::description::CustomTypeDescriptorSelector; +#endif + protected: + ::gaclib_controls::ColorComponentControl* self; + ::vl::presentation::controls::GuiSinglelineTextBox* textBox; + ::vl::presentation::controls::GuiScroll* tracker; + ::vl::presentation::compositions::GuiTableComposition* __vwsn_precompile_0; + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_1; + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_2; + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_3; + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_4; + void __vwsn_gaclib_controls_ColorComponentControl_Initialize(::gaclib_controls::ColorComponentControl* __vwsn_this_); + public: + ColorComponentControlConstructor(); + }; + + class ColorComponentControl : public ::vl::presentation::controls::GuiCustomControl, public ::gaclib_controls::ColorComponentControlConstructor, public ::vl::reflection::Description + { + friend class ::gaclib_controls::ColorComponentControlConstructor; + friend class ::vl_workflow_global::__vwsnc1_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc2_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc3_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize__vl_reflection_description_IValueSubscription; + friend struct ::vl_workflow_global::__vwsnf1_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf2_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf3_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf4_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize_; +#ifdef VCZH_DESCRIPTABLEOBJECT_WITH_METADATA + friend struct ::vl::reflection::description::CustomTypeDescriptorSelector; +#endif + public: + ::vl::vint __vwsn_prop_Value; + ::vl::vint GetValue(); + void SetValue(::vl::vint __vwsn_value_); + ::vl::Event ValueChanged; + ::vl::WString __vwsn_prop_TextBoxAlt; + ::vl::WString GetTextBoxAlt(); + void SetTextBoxAlt(const ::vl::WString& __vwsn_value_); + ::vl::Event TextBoxAltChanged; + ColorComponentControl(); + ~ColorComponentControl(); + }; + + class ColorDialogControlConstructor : public ::vl::Object, public ::vl::reflection::Description + { + friend class ::vl_workflow_global::__vwsnc10_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc4_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc5_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc6_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc7_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc8_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc9_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription; + friend struct ::vl_workflow_global::__vwsnf10_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf11_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf5_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf6_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf7_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf8_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf9_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_; +#ifdef VCZH_DESCRIPTABLEOBJECT_WITH_METADATA + friend struct ::vl::reflection::description::CustomTypeDescriptorSelector; +#endif + protected: + ::gaclib_controls::ColorDialogControl* self; + ::vl::Ptr<::vl::presentation::IColorDialogViewModel> ViewModel; + ::gaclib_controls::ColorComponentControl* colorRed; + ::gaclib_controls::ColorComponentControl* colorGreen; + ::gaclib_controls::ColorComponentControl* colorBlue; + ::vl::presentation::compositions::GuiTableComposition* __vwsn_precompile_0; + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_1; + ::vl::presentation::controls::GuiLabel* __vwsn_precompile_2; + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_3; + ::vl::presentation::controls::GuiLabel* __vwsn_precompile_4; + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_5; + ::vl::presentation::controls::GuiLabel* __vwsn_precompile_6; + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_7; + ::vl::presentation::controls::GuiLabel* __vwsn_precompile_8; + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_9; + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_10; + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_11; + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_12; + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_13; + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_14; + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_15; + ::vl::Ptr<::vl::presentation::elements::GuiSolidBackgroundElement> __vwsn_precompile_16; + void __vwsn_gaclib_controls_ColorDialogControl_Initialize(::gaclib_controls::ColorDialogControl* __vwsn_this_); + public: + ColorDialogControlConstructor(); + }; + + class ColorDialogControl : public ::vl::presentation::controls::GuiCustomControl, public ::gaclib_controls::ColorDialogControlConstructor, public ::vl::reflection::Description + { + friend class ::gaclib_controls::ColorDialogControlConstructor; + friend class ::vl_workflow_global::__vwsnc10_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc4_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc5_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc6_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc7_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc8_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc9_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription; + friend struct ::vl_workflow_global::__vwsnf10_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf11_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf5_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf6_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf7_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf8_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf9_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_; +#ifdef VCZH_DESCRIPTABLEOBJECT_WITH_METADATA + friend struct ::vl::reflection::description::CustomTypeDescriptorSelector; +#endif + public: + ::vl::presentation::Color __vwsn_prop_Value; + ::vl::presentation::Color GetValue(); + void SetValue(::vl::presentation::Color __vwsn_value_); + ::vl::Event ValueChanged; + ::vl::presentation::Color ReadColor(); + ::vl::Ptr<::gaclib_controls::IDialogStringsStrings> __vwsn_prop_Strings; + ::vl::Ptr<::gaclib_controls::IDialogStringsStrings> GetStrings(); + void SetStrings(::vl::Ptr<::gaclib_controls::IDialogStringsStrings> __vwsn_value_); + ::vl::Event StringsChanged; + ::vl::Ptr<::vl::presentation::IColorDialogViewModel> __vwsn_parameter_ViewModel; + ::vl::Ptr<::vl::presentation::IColorDialogViewModel> GetViewModel(); + ColorDialogControl(::vl::Ptr<::vl::presentation::IColorDialogViewModel> __vwsn_ctor_parameter_ViewModel); + ~ColorDialogControl(); + }; + + class ColorDialogWindowConstructor : public ::vl::Object, public ::vl::reflection::Description + { + friend class ::vl_workflow_global::__vwsnc11_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc12_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc13_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc14_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + friend struct ::vl_workflow_global::__vwsnf12_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf13_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf14_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf15_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf16_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf17_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize_; +#ifdef VCZH_DESCRIPTABLEOBJECT_WITH_METADATA + friend struct ::vl::reflection::description::CustomTypeDescriptorSelector; +#endif + protected: + ::gaclib_controls::ColorDialogWindow* self; + ::vl::Ptr<::vl::presentation::IColorDialogViewModel> ViewModel; + ::gaclib_controls::ColorDialogControl* colorControl; + ::vl::presentation::compositions::GuiTableComposition* __vwsn_precompile_0; + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_1; + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_2; + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_3; + ::vl::presentation::controls::GuiButton* __vwsn_precompile_4; + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_5; + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_6; + ::vl::presentation::controls::GuiButton* __vwsn_precompile_7; + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_8; + void __vwsn_gaclib_controls_ColorDialogWindow_Initialize(::gaclib_controls::ColorDialogWindow* __vwsn_this_); + public: + ColorDialogWindowConstructor(); + }; + + class ColorDialogWindow : public ::vl::presentation::controls::GuiWindow, public ::gaclib_controls::ColorDialogWindowConstructor, public ::vl::reflection::Description + { + friend class ::gaclib_controls::ColorDialogWindowConstructor; + friend class ::vl_workflow_global::__vwsnc11_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc12_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc13_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc14_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + friend struct ::vl_workflow_global::__vwsnf12_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf13_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf14_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf15_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf16_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf17_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize_; +#ifdef VCZH_DESCRIPTABLEOBJECT_WITH_METADATA + friend struct ::vl::reflection::description::CustomTypeDescriptorSelector; +#endif + public: + ::vl::Ptr<::gaclib_controls::IDialogStringsStrings> __vwsn_prop_Strings; + ::vl::Ptr<::gaclib_controls::IDialogStringsStrings> GetStrings(); + void SetStrings(::vl::Ptr<::gaclib_controls::IDialogStringsStrings> __vwsn_value_); + ::vl::Event StringsChanged; + ::vl::Ptr<::vl::presentation::IColorDialogViewModel> __vwsn_parameter_ViewModel; + ::vl::Ptr<::vl::presentation::IColorDialogViewModel> GetViewModel(); + ColorDialogWindow(::vl::Ptr<::vl::presentation::IColorDialogViewModel> __vwsn_ctor_parameter_ViewModel); + ~ColorDialogWindow(); + }; + + class DialogStrings : public ::vl::Object, public ::vl::reflection::Description + { + friend class ::vl_workflow_global::__vwsnc56_GuiFakeDialogServiceUI_gaclib_controls_DialogStrings_Get__gaclib_controls_IDialogStringsStrings; +#ifdef VCZH_DESCRIPTABLEOBJECT_WITH_METADATA + friend struct ::vl::reflection::description::CustomTypeDescriptorSelector; +#endif + public: + static ::vl::WString __vwsn_ls_First(const ::vl::collections::LazyList<::vl::WString>& __vwsn_ls_formats); + static ::vl::Ptr<::gaclib_controls::IDialogStringsStrings> Get(::vl::Locale __vwsn_ls_locale); + DialogStrings(); + }; + + class FileDialogWindowConstructor : public ::vl::Object, public ::vl::reflection::Description + { + friend class ::vl_workflow_global::__vwsnc15_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc16_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc17_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + friend struct ::vl_workflow_global::__vwsnf18_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf19_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize__; + friend struct ::vl_workflow_global::__vwsnf20_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf21_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf22_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf23_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf24_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize_; +#ifdef VCZH_DESCRIPTABLEOBJECT_WITH_METADATA + friend struct ::vl::reflection::description::CustomTypeDescriptorSelector; +#endif + protected: + ::gaclib_controls::FileDialogWindow* self; + ::vl::Ptr<::vl::presentation::IFileDialogViewModel> ViewModel; + ::gaclib_controls::FilePickerControl* filePickerControl; + ::vl::presentation::controls::GuiButton* buttonOK; + ::vl::presentation::compositions::GuiTableComposition* __vwsn_precompile_0; + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_1; + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_2; + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_3; + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_4; + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_5; + ::vl::presentation::controls::GuiButton* __vwsn_precompile_6; + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_7; + void __vwsn_gaclib_controls_FileDialogWindow_Initialize(::gaclib_controls::FileDialogWindow* __vwsn_this_); + public: + FileDialogWindowConstructor(); + }; + + class FileDialogWindow : public ::vl::presentation::controls::GuiWindow, public ::gaclib_controls::FileDialogWindowConstructor, public ::vl::reflection::Description + { + friend struct ::vl_workflow_global::__vwsnf25_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindow___vwsn_instance_ctor__; + friend class ::gaclib_controls::FileDialogWindowConstructor; + friend class ::vl_workflow_global::__vwsnc15_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc16_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc17_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + friend struct ::vl_workflow_global::__vwsnf18_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf19_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize__; + friend struct ::vl_workflow_global::__vwsnf20_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf21_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf22_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf23_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf24_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize_; +#ifdef VCZH_DESCRIPTABLEOBJECT_WITH_METADATA + friend struct ::vl::reflection::description::CustomTypeDescriptorSelector; +#endif + public: + void MakeOpenFileDialog(); + void MakeSaveFileDialog(); + ::vl::Ptr<::gaclib_controls::IDialogStringsStrings> __vwsn_prop_Strings; + ::vl::Ptr<::gaclib_controls::IDialogStringsStrings> GetStrings(); + void SetStrings(::vl::Ptr<::gaclib_controls::IDialogStringsStrings> __vwsn_value_); + ::vl::Event StringsChanged; + ::vl::Ptr<::vl::presentation::IFileDialogViewModel> __vwsn_parameter_ViewModel; + ::vl::Ptr<::vl::presentation::IFileDialogViewModel> GetViewModel(); + FileDialogWindow(::vl::Ptr<::vl::presentation::IFileDialogViewModel> __vwsn_ctor_parameter_ViewModel); + void __vwsn_instance_ctor_(); + ~FileDialogWindow(); + }; + + class FilePickerControlConstructor : public ::vl::Object, public ::vl::reflection::Description + { + friend class ::vl_workflow_global::__vwsnc18_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc19_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc20_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc21_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc22_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc23_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription; + friend struct ::vl_workflow_global::__vwsnf26_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf27_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf28_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf29_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf30_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf32_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf33_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf35_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf36_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf37_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__; + friend struct ::vl_workflow_global::__vwsnf38_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf39_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf40_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf41_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf42_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf43_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_; + friend struct ::vl_workflow_global::__vwsno31_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_; + friend struct ::vl_workflow_global::__vwsno34_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_; +#ifdef VCZH_DESCRIPTABLEOBJECT_WITH_METADATA + friend struct ::vl::reflection::description::CustomTypeDescriptorSelector; +#endif + protected: + ::gaclib_controls::FilePickerControl* self; + ::vl::Ptr<::vl::presentation::IFileDialogViewModel> ViewModel; + ::vl::presentation::controls::GuiSinglelineTextBox* textBox; + ::vl::presentation::controls::GuiBindableTreeView* treeView; + ::vl::presentation::controls::GuiBindableDataGrid* dataGrid; + ::vl::presentation::controls::GuiComboBoxListControl* comboBox; + ::vl::presentation::compositions::GuiTableComposition* __vwsn_precompile_0; + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_1; + ::vl::presentation::controls::GuiLabel* __vwsn_precompile_2; + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_3; + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_4; + ::vl::presentation::compositions::GuiTableComposition* __vwsn_precompile_5; + ::vl::presentation::compositions::GuiColumnSplitterComposition* __vwsn_precompile_6; + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_7; + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_8; + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_9; + ::vl::Ptr<::vl::presentation::controls::list::DataColumn> __vwsn_precompile_10; + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_11; + ::vl::presentation::compositions::GuiGraphicsComposition* __vwsn_precompile_12; + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_13; + ::vl::presentation::compositions::GuiTableComposition* __vwsn_precompile_14; + ::vl::presentation::compositions::GuiColumnSplitterComposition* __vwsn_precompile_15; + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_16; + ::vl::presentation::controls::GuiLabel* __vwsn_precompile_17; + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_18; + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_19; + ::vl::presentation::compositions::GuiGraphicsComposition* __vwsn_precompile_20; + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_21; + ::vl::presentation::controls::GuiBindableTextList* __vwsn_precompile_22; + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_23; + ::vl::Ptr<::vl::presentation::IFileDialogViewModel> __vwsn_precompile_24; + void __vwsn_gaclib_controls_FilePickerControl_Initialize(::gaclib_controls::FilePickerControl* __vwsn_this_); + public: + FilePickerControlConstructor(); + }; + + class FilePickerControl : public ::vl::presentation::controls::GuiCustomControl, public ::gaclib_controls::FilePickerControlConstructor, public ::vl::reflection::Description + { + friend class ::vl_workflow_global::__vwsnc24_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControl_GetSelectedFiles___vl_reflection_description_ICoroutine; + friend class ::vl_workflow_global::__vwsnc25_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControl_CreateFileFilter__vl_presentation_controls_list_IDataFilter; + friend struct ::vl_workflow_global::__vwsnf44_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControl_GetSelectedFiles_; + friend class ::gaclib_controls::FilePickerControlConstructor; + friend class ::vl_workflow_global::__vwsnc18_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc19_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc20_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc21_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc22_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc23_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription; + friend struct ::vl_workflow_global::__vwsnf26_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf27_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf28_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf29_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf30_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf32_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf33_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf35_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf36_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf37_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__; + friend struct ::vl_workflow_global::__vwsnf38_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf39_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf40_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf41_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf42_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf43_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_; + friend struct ::vl_workflow_global::__vwsno31_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_; + friend struct ::vl_workflow_global::__vwsno34_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_; +#ifdef VCZH_DESCRIPTABLEOBJECT_WITH_METADATA + friend struct ::vl::reflection::description::CustomTypeDescriptorSelector; +#endif + public: + ::vl::Ptr<::vl::presentation::GuiImageData> imageFolder; + ::vl::Ptr<::vl::presentation::GuiImageData> imageFile; + ::vl::Event RequestClose; + ::vl::collections::LazyList<::vl::Ptr<::vl::presentation::IFileDialogFile>> GetSelectedFiles(); + ::vl::collections::LazyList<::vl::WString> GetSelection(); + void LocateSelectedFolderInTreeView(); + ::vl::Ptr<::vl::presentation::controls::list::IDataFilter> CreateFileFilter(::vl::Ptr<::vl::presentation::IFileDialogFilter> filter); + ::vl::Ptr<::gaclib_controls::IDialogStringsStrings> __vwsn_prop_Strings; + ::vl::Ptr<::gaclib_controls::IDialogStringsStrings> GetStrings(); + void SetStrings(::vl::Ptr<::gaclib_controls::IDialogStringsStrings> __vwsn_value_); + ::vl::Event StringsChanged; + ::vl::Ptr<::vl::presentation::IFileDialogViewModel> __vwsn_parameter_ViewModel; + ::vl::Ptr<::vl::presentation::IFileDialogViewModel> GetViewModel(); + FilePickerControl(::vl::Ptr<::vl::presentation::IFileDialogViewModel> __vwsn_ctor_parameter_ViewModel); + void __vwsn_instance_ctor_(); + ~FilePickerControl(); + }; + + class FontNameControlConstructor : public ::vl::Object, public ::vl::reflection::Description + { + friend class ::vl_workflow_global::__vwsnc26_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc27_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc28_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc29_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize__vl_reflection_description_IValueSubscription; + friend struct ::vl_workflow_global::__vwsnf46_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf47_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf48_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf49_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf50_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf51_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_; + friend struct ::vl_workflow_global::__vwsno45_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_; +#ifdef VCZH_DESCRIPTABLEOBJECT_WITH_METADATA + friend struct ::vl::reflection::description::CustomTypeDescriptorSelector; +#endif + protected: + ::gaclib_controls::FontNameControl* self; + ::vl::Ptr<::vl::presentation::ICommonFontDialogViewModel> ViewModel; + ::vl::presentation::controls::GuiSinglelineTextBox* textBox; + ::vl::presentation::controls::GuiBindableTextList* textList; + ::vl::presentation::controls::GuiControl* __vwsn_precompile_0; + ::vl::presentation::compositions::GuiTableComposition* __vwsn_precompile_1; + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_2; + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_3; + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_4; + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_5; + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_6; + void __vwsn_gaclib_controls_FontNameControl_Initialize(::gaclib_controls::FontNameControl* __vwsn_this_); + public: + FontNameControlConstructor(); + }; + + class FontNameControl : public ::vl::presentation::controls::GuiCustomControl, public ::gaclib_controls::FontNameControlConstructor, public ::vl::reflection::Description + { + friend class ::gaclib_controls::FontNameControlConstructor; + friend class ::vl_workflow_global::__vwsnc26_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc27_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc28_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc29_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize__vl_reflection_description_IValueSubscription; + friend struct ::vl_workflow_global::__vwsnf46_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf47_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf48_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf49_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf50_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf51_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_; + friend struct ::vl_workflow_global::__vwsno45_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_; +#ifdef VCZH_DESCRIPTABLEOBJECT_WITH_METADATA + friend struct ::vl::reflection::description::CustomTypeDescriptorSelector; +#endif + public: + ::vl::WString __vwsn_prop_Value; + ::vl::WString GetValue(); + void SetValue(const ::vl::WString& __vwsn_value_); + ::vl::Event ValueChanged; + bool __vwsn_prop_Legal; + bool GetLegal(); + void SetLegal(bool __vwsn_value_); + ::vl::Event LegalChanged; + void UpdateSelectedIndex(); + void InitValue(const ::vl::WString& value); + ::vl::Ptr<::gaclib_controls::IDialogStringsStrings> __vwsn_prop_Strings; + ::vl::Ptr<::gaclib_controls::IDialogStringsStrings> GetStrings(); + void SetStrings(::vl::Ptr<::gaclib_controls::IDialogStringsStrings> __vwsn_value_); + ::vl::Event StringsChanged; + ::vl::Ptr<::vl::presentation::ICommonFontDialogViewModel> __vwsn_parameter_ViewModel; + ::vl::Ptr<::vl::presentation::ICommonFontDialogViewModel> GetViewModel(); + FontNameControl(::vl::Ptr<::vl::presentation::ICommonFontDialogViewModel> __vwsn_ctor_parameter_ViewModel); + ~FontNameControl(); + }; + + class FontSizeControlConstructor : public ::vl::Object, public ::vl::reflection::Description + { + friend class ::vl_workflow_global::__vwsnc30_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc31_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc32_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc33_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize__vl_reflection_description_IValueSubscription; + friend struct ::vl_workflow_global::__vwsnf53_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf54_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf55_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf56_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf57_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf58_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_; + friend struct ::vl_workflow_global::__vwsno52_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_; +#ifdef VCZH_DESCRIPTABLEOBJECT_WITH_METADATA + friend struct ::vl::reflection::description::CustomTypeDescriptorSelector; +#endif + protected: + ::gaclib_controls::FontSizeControl* self; + ::vl::presentation::controls::GuiSinglelineTextBox* textBox; + ::vl::presentation::controls::GuiBindableTextList* textList; + ::vl::presentation::controls::GuiControl* __vwsn_precompile_0; + ::vl::presentation::compositions::GuiTableComposition* __vwsn_precompile_1; + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_2; + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_3; + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_4; + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_5; + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_6; + void __vwsn_gaclib_controls_FontSizeControl_Initialize(::gaclib_controls::FontSizeControl* __vwsn_this_); + public: + FontSizeControlConstructor(); + }; + + class FontSizeControl : public ::vl::presentation::controls::GuiCustomControl, public ::gaclib_controls::FontSizeControlConstructor, public ::vl::reflection::Description + { + friend class ::gaclib_controls::FontSizeControlConstructor; + friend class ::vl_workflow_global::__vwsnc30_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc31_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc32_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc33_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize__vl_reflection_description_IValueSubscription; + friend struct ::vl_workflow_global::__vwsnf53_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf54_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf55_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf56_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf57_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_; + friend struct ::vl_workflow_global::__vwsnf58_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_; + friend struct ::vl_workflow_global::__vwsno52_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_; +#ifdef VCZH_DESCRIPTABLEOBJECT_WITH_METADATA + friend struct ::vl::reflection::description::CustomTypeDescriptorSelector; +#endif + public: + ::vl::Ptr<::vl::reflection::description::IValueList> __vwsn_prop_SizeList; + ::vl::Ptr<::vl::reflection::description::IValueList> GetSizeList(); + void SetSizeList(::vl::Ptr<::vl::reflection::description::IValueList> __vwsn_value_); + ::vl::vint __vwsn_prop_Value; + ::vl::vint GetValue(); + void SetValue(::vl::vint __vwsn_value_); + ::vl::Event ValueChanged; + bool __vwsn_prop_Legal; + bool GetLegal(); + void SetLegal(bool __vwsn_value_); + ::vl::Event LegalChanged; + void UpdateSelectedIndex(); + void InitValue(::vl::vint value); + ::vl::Ptr<::gaclib_controls::IDialogStringsStrings> __vwsn_prop_Strings; + ::vl::Ptr<::gaclib_controls::IDialogStringsStrings> GetStrings(); + void SetStrings(::vl::Ptr<::gaclib_controls::IDialogStringsStrings> __vwsn_value_); + ::vl::Event StringsChanged; + FontSizeControl(); + ~FontSizeControl(); + }; + + class FullFontDialogWindowConstructor : public ::vl::Object, public ::vl::reflection::Description + { + friend class ::vl_workflow_global::__vwsnc34_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc35_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc36_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc37_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc38_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc39_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc40_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc41_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc42_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc43_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc44_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc45_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc46_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc47_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + friend struct ::vl_workflow_global::__vwsnf59_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf60_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf61_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf62_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf63_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf64_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf65_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf66_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf67_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf68_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf69_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf70_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf71_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf72_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf73_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf74_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf75_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_; +#ifdef VCZH_DESCRIPTABLEOBJECT_WITH_METADATA + friend struct ::vl::reflection::description::CustomTypeDescriptorSelector; +#endif + protected: + ::gaclib_controls::FullFontDialogWindow* self; + ::vl::Ptr<::vl::presentation::IFullFontDialogViewModel> ViewModel; + ::gaclib_controls::FontNameControl* nameControl; + ::gaclib_controls::FontSizeControl* sizeControl; + ::vl::presentation::controls::GuiSelectableButton* checkBold; + ::vl::presentation::controls::GuiSelectableButton* checkItalic; + ::vl::presentation::controls::GuiSelectableButton* checkUnderline; + ::vl::presentation::controls::GuiSelectableButton* checkHAA; + ::vl::presentation::controls::GuiSelectableButton* checkVAA; + ::vl::presentation::compositions::GuiBoundsComposition* colorBounds; + ::vl::Ptr<::vl::presentation::elements::GuiSolidBackgroundElement> colorBackground; + ::vl::presentation::compositions::GuiTableComposition* __vwsn_precompile_0; + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_1; + ::vl::presentation::compositions::GuiTableComposition* __vwsn_precompile_2; + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_3; + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_4; + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_5; + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_6; + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_7; + ::vl::presentation::controls::GuiControl* __vwsn_precompile_8; + ::vl::presentation::compositions::GuiStackComposition* __vwsn_precompile_9; + ::vl::presentation::compositions::GuiStackItemComposition* __vwsn_precompile_10; + ::vl::presentation::compositions::GuiStackItemComposition* __vwsn_precompile_11; + ::vl::presentation::compositions::GuiStackItemComposition* __vwsn_precompile_12; + ::vl::presentation::compositions::GuiStackItemComposition* __vwsn_precompile_13; + ::vl::presentation::compositions::GuiStackItemComposition* __vwsn_precompile_14; + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_15; + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_16; + ::vl::presentation::controls::GuiControl* __vwsn_precompile_17; + ::vl::Ptr<::vl::presentation::elements::Gui3DBorderElement> __vwsn_precompile_18; + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_19; + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_20; + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_21; + ::vl::presentation::controls::GuiControl* __vwsn_precompile_22; + ::vl::presentation::compositions::GuiTableComposition* __vwsn_precompile_23; + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_24; + ::vl::presentation::controls::GuiLabel* __vwsn_precompile_25; + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_26; + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_27; + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_28; + ::vl::presentation::controls::GuiButton* __vwsn_precompile_29; + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_30; + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_31; + ::vl::presentation::controls::GuiButton* __vwsn_precompile_32; + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_33; + void __vwsn_gaclib_controls_FullFontDialogWindow_Initialize(::gaclib_controls::FullFontDialogWindow* __vwsn_this_); + public: + FullFontDialogWindowConstructor(); + }; + + class FullFontDialogWindow : public ::vl::presentation::controls::GuiWindow, public ::gaclib_controls::FullFontDialogWindowConstructor, public ::vl::reflection::Description + { + friend class ::gaclib_controls::FullFontDialogWindowConstructor; + friend class ::vl_workflow_global::__vwsnc34_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc35_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc36_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc37_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc38_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc39_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc40_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc41_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc42_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc43_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc44_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc45_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc46_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc47_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + friend struct ::vl_workflow_global::__vwsnf59_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf60_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf61_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf62_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf63_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf64_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf65_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf66_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf67_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf68_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf69_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf70_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf71_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf72_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf73_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf74_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf75_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_; +#ifdef VCZH_DESCRIPTABLEOBJECT_WITH_METADATA + friend struct ::vl::reflection::description::CustomTypeDescriptorSelector; +#endif + public: + ::vl::Ptr<::gaclib_controls::IDialogStringsStrings> __vwsn_prop_Strings; + ::vl::Ptr<::gaclib_controls::IDialogStringsStrings> GetStrings(); + void SetStrings(::vl::Ptr<::gaclib_controls::IDialogStringsStrings> __vwsn_value_); + ::vl::Event StringsChanged; + ::vl::Ptr<::vl::presentation::IFullFontDialogViewModel> __vwsn_parameter_ViewModel; + ::vl::Ptr<::vl::presentation::IFullFontDialogViewModel> GetViewModel(); + FullFontDialogWindow(::vl::Ptr<::vl::presentation::IFullFontDialogViewModel> __vwsn_ctor_parameter_ViewModel); + void __vwsn_instance_ctor_(); + ~FullFontDialogWindow(); + }; + + class IDialogStringsStrings : public virtual ::vl::reflection::IDescriptable, public ::vl::reflection::Description + { +#ifdef VCZH_DESCRIPTABLEOBJECT_WITH_METADATA + friend struct ::vl::reflection::description::CustomTypeDescriptorSelector; +#endif + public: + virtual ::vl::WString Abort() = 0; + virtual ::vl::WString Blue() = 0; + virtual ::vl::WString Bold() = 0; + virtual ::vl::WString Cancel() = 0; + virtual ::vl::WString Color() = 0; + virtual ::vl::WString ColorDialogTitle() = 0; + virtual ::vl::WString Continue() = 0; + virtual ::vl::WString FileDialogAskCreateFile() = 0; + virtual ::vl::WString FileDialogAskOverrideFile() = 0; + virtual ::vl::WString FileDialogErrorEmptySelection() = 0; + virtual ::vl::WString FileDialogErrorFileExpected() = 0; + virtual ::vl::WString FileDialogErrorFileNotExist() = 0; + virtual ::vl::WString FileDialogErrorFolderNotExist() = 0; + virtual ::vl::WString FileDialogErrorMultipleSelectionNotEnabled() = 0; + virtual ::vl::WString FileDialogFileName() = 0; + virtual ::vl::WString FileDialogOpen() = 0; + virtual ::vl::WString FileDialogSave() = 0; + virtual ::vl::WString FileDialogTextLoadingFiles() = 0; + virtual ::vl::WString FileDialogTextLoadingFolders() = 0; + virtual ::vl::WString FontColorGroup() = 0; + virtual ::vl::WString FontColorGroup2() = 0; + virtual ::vl::WString FontDialogTitle() = 0; + virtual ::vl::WString FontEffectGroup() = 0; + virtual ::vl::WString FontNameGroup() = 0; + virtual ::vl::WString FontPreviewGroup() = 0; + virtual ::vl::WString FontSizeGroup() = 0; + virtual ::vl::WString Green() = 0; + virtual ::vl::WString HAA() = 0; + virtual ::vl::WString Ignore() = 0; + virtual ::vl::WString Italic() = 0; + virtual ::vl::WString No() = 0; + virtual ::vl::WString OK() = 0; + virtual ::vl::WString Red() = 0; + virtual ::vl::WString Retry() = 0; + virtual ::vl::WString TryAgain() = 0; + virtual ::vl::WString Underline() = 0; + virtual ::vl::WString VAA() = 0; + virtual ::vl::WString Yes() = 0; + }; + + class MessageBoxButtonTemplateConstructor : public ::vl::Object, public ::vl::reflection::Description + { + friend class ::vl_workflow_global::__vwsnc55_GuiFakeDialogServiceUI_gaclib_controls_MessageBoxButtonTemplateConstructor___vwsn_gaclib_controls_MessageBoxButtonTemplate_Initialize__vl_reflection_description_IValueSubscription; + friend struct ::vl_workflow_global::__vwsnf85_GuiFakeDialogServiceUI_gaclib_controls_MessageBoxButtonTemplateConstructor___vwsn_gaclib_controls_MessageBoxButtonTemplate_Initialize_; + friend struct ::vl_workflow_global::__vwsnf86_GuiFakeDialogServiceUI_gaclib_controls_MessageBoxButtonTemplateConstructor___vwsn_gaclib_controls_MessageBoxButtonTemplate_Initialize_; +#ifdef VCZH_DESCRIPTABLEOBJECT_WITH_METADATA + friend struct ::vl::reflection::description::CustomTypeDescriptorSelector; +#endif + protected: + ::vl::Ptr<::vl::presentation::IMessageBoxDialogAction> Action; + ::gaclib_controls::MessageBoxButtonTemplate* self; + ::vl::presentation::controls::GuiButton* __vwsn_precompile_0; + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_1; + void __vwsn_gaclib_controls_MessageBoxButtonTemplate_Initialize(::gaclib_controls::MessageBoxButtonTemplate* __vwsn_this_); + public: + MessageBoxButtonTemplateConstructor(); + }; + + class MessageBoxButtonTemplate : public ::vl::presentation::templates::GuiControlTemplate, public ::gaclib_controls::MessageBoxButtonTemplateConstructor, public ::vl::reflection::Description + { + friend class ::gaclib_controls::MessageBoxButtonTemplateConstructor; + friend class ::vl_workflow_global::__vwsnc55_GuiFakeDialogServiceUI_gaclib_controls_MessageBoxButtonTemplateConstructor___vwsn_gaclib_controls_MessageBoxButtonTemplate_Initialize__vl_reflection_description_IValueSubscription; + friend struct ::vl_workflow_global::__vwsnf85_GuiFakeDialogServiceUI_gaclib_controls_MessageBoxButtonTemplateConstructor___vwsn_gaclib_controls_MessageBoxButtonTemplate_Initialize_; + friend struct ::vl_workflow_global::__vwsnf86_GuiFakeDialogServiceUI_gaclib_controls_MessageBoxButtonTemplateConstructor___vwsn_gaclib_controls_MessageBoxButtonTemplate_Initialize_; +#ifdef VCZH_DESCRIPTABLEOBJECT_WITH_METADATA + friend struct ::vl::reflection::description::CustomTypeDescriptorSelector; +#endif + public: + ::vl::WString GetButtonText(::vl::presentation::INativeDialogService::MessageBoxButtonsOutput button, ::vl::Ptr<::gaclib_controls::IDialogStringsStrings> strings); + ::vl::WString GetButtonAlt(::vl::presentation::INativeDialogService::MessageBoxButtonsOutput button); + ::vl::Ptr<::gaclib_controls::IDialogStringsStrings> __vwsn_prop_Strings; + ::vl::Ptr<::gaclib_controls::IDialogStringsStrings> GetStrings(); + void SetStrings(::vl::Ptr<::gaclib_controls::IDialogStringsStrings> __vwsn_value_); + ::vl::Event StringsChanged; + ::vl::Ptr<::vl::presentation::IMessageBoxDialogAction> __vwsn_parameter_Action; + ::vl::Ptr<::vl::presentation::IMessageBoxDialogAction> GetAction(); + MessageBoxButtonTemplate(::vl::Ptr<::vl::presentation::IMessageBoxDialogAction> __vwsn_ctor_parameter_Action); + ~MessageBoxButtonTemplate(); + }; + + class MessageBoxWindowConstructor : public ::vl::Object, public ::vl::reflection::Description + { + friend struct ::vl_workflow_global::__vwsnf87_GuiFakeDialogServiceUI_gaclib_controls_MessageBoxWindowConstructor___vwsn_gaclib_controls_MessageBoxWindow_Initialize_; +#ifdef VCZH_DESCRIPTABLEOBJECT_WITH_METADATA + friend struct ::vl::reflection::description::CustomTypeDescriptorSelector; +#endif + protected: + ::gaclib_controls::MessageBoxWindow* self; + ::vl::Ptr<::vl::presentation::IMessageBoxDialogViewModel> ViewModel; + ::vl::presentation::compositions::GuiTableComposition* __vwsn_precompile_0; + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_1; + ::vl::presentation::compositions::GuiTableComposition* __vwsn_precompile_2; + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_3; + ::vl::Ptr<::vl::presentation::elements::GuiSolidBackgroundElement> __vwsn_precompile_4; + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_5; + ::vl::Ptr<::vl::presentation::elements::GuiImageFrameElement> __vwsn_precompile_6; + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_7; + ::vl::presentation::compositions::GuiTableComposition* __vwsn_precompile_8; + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_9; + ::vl::presentation::controls::GuiLabel* __vwsn_precompile_10; + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_11; + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_12; + ::vl::presentation::compositions::GuiTableComposition* __vwsn_precompile_13; + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_14; + ::vl::presentation::compositions::GuiRepeatStackComposition* __vwsn_precompile_15; + void __vwsn_gaclib_controls_MessageBoxWindow_Initialize(::gaclib_controls::MessageBoxWindow* __vwsn_this_); + public: + MessageBoxWindowConstructor(); + }; + + class MessageBoxWindow : public ::vl::presentation::controls::GuiWindow, public ::gaclib_controls::MessageBoxWindowConstructor, public ::vl::reflection::Description + { + friend class ::gaclib_controls::MessageBoxWindowConstructor; + friend struct ::vl_workflow_global::__vwsnf87_GuiFakeDialogServiceUI_gaclib_controls_MessageBoxWindowConstructor___vwsn_gaclib_controls_MessageBoxWindow_Initialize_; +#ifdef VCZH_DESCRIPTABLEOBJECT_WITH_METADATA + friend struct ::vl::reflection::description::CustomTypeDescriptorSelector; +#endif + public: + ::vl::Ptr<::vl::presentation::INativeImage> GetIcon(::vl::presentation::INativeDialogService::MessageBoxIcons icon); + ::vl::Ptr<::vl::presentation::IMessageBoxDialogViewModel> __vwsn_parameter_ViewModel; + ::vl::Ptr<::vl::presentation::IMessageBoxDialogViewModel> GetViewModel(); + MessageBoxWindow(::vl::Ptr<::vl::presentation::IMessageBoxDialogViewModel> __vwsn_ctor_parameter_ViewModel); + ~MessageBoxWindow(); + }; + + class SimpleFontDialogWindowConstructor : public ::vl::Object, public ::vl::reflection::Description + { + friend class ::vl_workflow_global::__vwsnc48_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc49_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc50_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc51_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc52_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc53_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc54_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + friend struct ::vl_workflow_global::__vwsnf76_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf77_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf78_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf79_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf80_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf81_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf82_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf83_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf84_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_; +#ifdef VCZH_DESCRIPTABLEOBJECT_WITH_METADATA + friend struct ::vl::reflection::description::CustomTypeDescriptorSelector; +#endif + protected: + ::gaclib_controls::SimpleFontDialogWindow* self; + ::vl::Ptr<::vl::presentation::ISimpleFontDialogViewModel> ViewModel; + ::gaclib_controls::FontNameControl* nameControl; + ::gaclib_controls::FontSizeControl* sizeControl; + ::vl::presentation::compositions::GuiTableComposition* __vwsn_precompile_0; + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_1; + ::vl::presentation::compositions::GuiTableComposition* __vwsn_precompile_2; + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_3; + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_4; + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_5; + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_6; + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_7; + ::vl::presentation::controls::GuiControl* __vwsn_precompile_8; + ::vl::presentation::compositions::GuiTableComposition* __vwsn_precompile_9; + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_10; + ::vl::presentation::controls::GuiLabel* __vwsn_precompile_11; + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_12; + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_13; + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_14; + ::vl::presentation::controls::GuiButton* __vwsn_precompile_15; + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_16; + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_17; + ::vl::presentation::controls::GuiButton* __vwsn_precompile_18; + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_19; + void __vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize(::gaclib_controls::SimpleFontDialogWindow* __vwsn_this_); + public: + SimpleFontDialogWindowConstructor(); + }; + + class SimpleFontDialogWindow : public ::vl::presentation::controls::GuiWindow, public ::gaclib_controls::SimpleFontDialogWindowConstructor, public ::vl::reflection::Description + { + friend class ::gaclib_controls::SimpleFontDialogWindowConstructor; + friend class ::vl_workflow_global::__vwsnc48_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc49_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc50_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc51_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc52_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc53_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc54_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription; + friend struct ::vl_workflow_global::__vwsnf76_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf77_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf78_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf79_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf80_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf81_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf82_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf83_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf84_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_; +#ifdef VCZH_DESCRIPTABLEOBJECT_WITH_METADATA + friend struct ::vl::reflection::description::CustomTypeDescriptorSelector; +#endif + public: + ::vl::Ptr<::gaclib_controls::IDialogStringsStrings> __vwsn_prop_Strings; + ::vl::Ptr<::gaclib_controls::IDialogStringsStrings> GetStrings(); + void SetStrings(::vl::Ptr<::gaclib_controls::IDialogStringsStrings> __vwsn_value_); + ::vl::Event StringsChanged; + ::vl::Ptr<::vl::presentation::ISimpleFontDialogViewModel> __vwsn_parameter_ViewModel; + ::vl::Ptr<::vl::presentation::ISimpleFontDialogViewModel> GetViewModel(); + SimpleFontDialogWindow(::vl::Ptr<::vl::presentation::ISimpleFontDialogViewModel> __vwsn_ctor_parameter_ViewModel); + void __vwsn_instance_ctor_(); + ~SimpleFontDialogWindow(); + }; + +} +/*********************************************************************** +Global Variables and Functions +***********************************************************************/ + +namespace vl_workflow_global +{ + class GuiFakeDialogServiceUI + { + public: + + static GuiFakeDialogServiceUI& Instance(); + }; + +/*********************************************************************** +Closures +***********************************************************************/ + + struct __vwsnf10_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_ + { + ::gaclib_controls::ColorDialogControlConstructor* __vwsnthis_0; + + __vwsnf10_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_(::gaclib_controls::ColorDialogControlConstructor* __vwsnctorthis_0); + + void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; + }; + + struct __vwsnf11_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_ + { + ::gaclib_controls::ColorDialogControlConstructor* __vwsnthis_0; + + __vwsnf11_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_(::gaclib_controls::ColorDialogControlConstructor* __vwsnctorthis_0); + + void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; + }; + + struct __vwsnf12_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize_ + { + ::gaclib_controls::ColorDialogWindowConstructor* __vwsnthis_0; + + __vwsnf12_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize_(::gaclib_controls::ColorDialogWindowConstructor* __vwsnctorthis_0); + + void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; + }; + + struct __vwsnf13_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize_ + { + ::gaclib_controls::ColorDialogWindowConstructor* __vwsnthis_0; + + __vwsnf13_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize_(::gaclib_controls::ColorDialogWindowConstructor* __vwsnctorthis_0); + + void operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const; + }; + + struct __vwsnf14_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize_ + { + ::gaclib_controls::ColorDialogWindowConstructor* __vwsnthis_0; + + __vwsnf14_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize_(::gaclib_controls::ColorDialogWindowConstructor* __vwsnctorthis_0); + + void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; + }; + + struct __vwsnf15_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize_ + { + ::gaclib_controls::ColorDialogWindowConstructor* __vwsnthis_0; + + __vwsnf15_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize_(::gaclib_controls::ColorDialogWindowConstructor* __vwsnctorthis_0); + + void operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const; + }; + + struct __vwsnf16_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize_ + { + ::gaclib_controls::ColorDialogWindowConstructor* __vwsnthis_0; + + __vwsnf16_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize_(::gaclib_controls::ColorDialogWindowConstructor* __vwsnctorthis_0); + + void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; + }; + + struct __vwsnf17_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize_ + { + ::gaclib_controls::ColorDialogWindowConstructor* __vwsnthis_0; + + __vwsnf17_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize_(::gaclib_controls::ColorDialogWindowConstructor* __vwsnctorthis_0); + + void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; + }; + + struct __vwsnf18_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize_ + { + ::gaclib_controls::FileDialogWindowConstructor* __vwsnthis_0; + + __vwsnf18_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize_(::gaclib_controls::FileDialogWindowConstructor* __vwsnctorthis_0); + + void operator()() const; + }; + + struct __vwsnf19_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize__ + { + ::gaclib_controls::FileDialogWindowConstructor* __vwsnthis_0; + + __vwsnf19_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize__(::gaclib_controls::FileDialogWindowConstructor* __vwsnctorthis_0); + + void operator()() const; + }; + + struct __vwsnf1_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize_ + { + ::gaclib_controls::ColorComponentControlConstructor* __vwsnthis_0; + + __vwsnf1_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize_(::gaclib_controls::ColorComponentControlConstructor* __vwsnctorthis_0); + + void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; + }; + + struct __vwsnf20_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize_ + { + ::gaclib_controls::FileDialogWindowConstructor* __vwsnthis_0; + + __vwsnf20_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize_(::gaclib_controls::FileDialogWindowConstructor* __vwsnctorthis_0); + + void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; + }; + + struct __vwsnf21_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize_ + { + ::gaclib_controls::FileDialogWindowConstructor* __vwsnthis_0; + + __vwsnf21_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize_(::gaclib_controls::FileDialogWindowConstructor* __vwsnctorthis_0); + + void operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const; + }; + + struct __vwsnf22_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize_ + { + ::gaclib_controls::FileDialogWindowConstructor* __vwsnthis_0; + + __vwsnf22_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize_(::gaclib_controls::FileDialogWindowConstructor* __vwsnctorthis_0); + + void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; + }; + + struct __vwsnf23_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize_ + { + ::gaclib_controls::FileDialogWindowConstructor* __vwsnthis_0; + + __vwsnf23_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize_(::gaclib_controls::FileDialogWindowConstructor* __vwsnctorthis_0); + + void operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const; + }; + + struct __vwsnf24_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize_ + { + ::gaclib_controls::FileDialogWindowConstructor* __vwsnthis_0; + + __vwsnf24_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize_(::gaclib_controls::FileDialogWindowConstructor* __vwsnctorthis_0); + + void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; + }; + + struct __vwsnf25_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindow___vwsn_instance_ctor__ + { + ::gaclib_controls::FileDialogWindow* __vwsnthis_0; + + __vwsnf25_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindow___vwsn_instance_ctor__(::gaclib_controls::FileDialogWindow* __vwsnctorthis_0); + + void operator()() const; + }; + + struct __vwsnf26_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_ + { + ::gaclib_controls::FilePickerControlConstructor* __vwsnthis_0; + + __vwsnf26_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_(::gaclib_controls::FilePickerControlConstructor* __vwsnctorthis_0); + + ::vl::Ptr<::vl::reflection::description::IValueEnumerable> operator()(const ::vl::reflection::description::Value& __vwsn_item_) const; + }; + + struct __vwsnf27_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_ + { + ::gaclib_controls::FilePickerControlConstructor* __vwsnthis_0; + + __vwsnf27_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_(::gaclib_controls::FilePickerControlConstructor* __vwsnctorthis_0); + + ::vl::WString operator()(const ::vl::reflection::description::Value& __vwsn_item_) const; + }; + + struct __vwsnf28_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_ + { + ::gaclib_controls::FilePickerControlConstructor* __vwsnthis_0; + + __vwsnf28_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_(::gaclib_controls::FilePickerControlConstructor* __vwsnctorthis_0); + + ::vl::WString operator()(const ::vl::reflection::description::Value& __vwsn_item_) const; + }; + + struct __vwsnf29_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_ + { + ::gaclib_controls::FilePickerControlConstructor* __vwsnthis_0; + + __vwsnf29_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_(::gaclib_controls::FilePickerControlConstructor* __vwsnctorthis_0); + + ::vl::WString operator()(const ::vl::reflection::description::Value& __vwsn_item_) const; + }; + + struct __vwsnf2_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize_ + { + ::gaclib_controls::ColorComponentControlConstructor* __vwsnthis_0; + + __vwsnf2_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize_(::gaclib_controls::ColorComponentControlConstructor* __vwsnctorthis_0); + + void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; + }; + + struct __vwsnf30_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_ + { + ::gaclib_controls::FilePickerControlConstructor* __vwsnthis_0; + + __vwsnf30_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_(::gaclib_controls::FilePickerControlConstructor* __vwsnctorthis_0); + + void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; + }; + + struct __vwsnf32_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_ + { + ::gaclib_controls::FilePickerControlConstructor* __vwsnthis_0; + + __vwsnf32_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_(::gaclib_controls::FilePickerControlConstructor* __vwsnctorthis_0); + + void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; + }; + + struct __vwsnf33_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_ + { + ::gaclib_controls::FilePickerControlConstructor* __vwsnthis_0; + + __vwsnf33_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_(::gaclib_controls::FilePickerControlConstructor* __vwsnctorthis_0); + + void operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiKeyEventArgs* arguments) const; + }; + + struct __vwsnf35_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_ + { + ::gaclib_controls::FilePickerControlConstructor* __vwsnthis_0; + + __vwsnf35_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_(::gaclib_controls::FilePickerControlConstructor* __vwsnctorthis_0); + + void operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const; + }; + + struct __vwsnf36_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_ + { + ::gaclib_controls::FilePickerControlConstructor* __vwsnthis_0; + + __vwsnf36_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_(::gaclib_controls::FilePickerControlConstructor* __vwsnctorthis_0); + + void operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiItemMouseEventArgs* arguments) const; + }; + + struct __vwsnf37_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__ + { + ::vl::collections::LazyList<::vl::WString> selection; + ::gaclib_controls::FilePickerControlConstructor* __vwsnthis_0; + + __vwsnf37_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__(::vl::collections::LazyList<::vl::WString> __vwsnctor_selection, ::gaclib_controls::FilePickerControlConstructor* __vwsnctorthis_0); + + void operator()() const; + }; + + struct __vwsnf38_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_ + { + ::gaclib_controls::FilePickerControlConstructor* __vwsnthis_0; + + __vwsnf38_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_(::gaclib_controls::FilePickerControlConstructor* __vwsnctorthis_0); + + void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; + }; + + struct __vwsnf39_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_ + { + ::gaclib_controls::FilePickerControlConstructor* __vwsnthis_0; + + __vwsnf39_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_(::gaclib_controls::FilePickerControlConstructor* __vwsnctorthis_0); + + void operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiKeyEventArgs* arguments) const; + }; + + struct __vwsnf3_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize_ + { + ::gaclib_controls::ColorComponentControlConstructor* __vwsnthis_0; + + __vwsnf3_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize_(::gaclib_controls::ColorComponentControlConstructor* __vwsnctorthis_0); + + void operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const; + }; + + struct __vwsnf40_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_ + { + ::gaclib_controls::FilePickerControlConstructor* __vwsnthis_0; + + __vwsnf40_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_(::gaclib_controls::FilePickerControlConstructor* __vwsnctorthis_0); + + void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; + }; + + struct __vwsnf41_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_ + { + ::gaclib_controls::FilePickerControlConstructor* __vwsnthis_0; + + __vwsnf41_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_(::gaclib_controls::FilePickerControlConstructor* __vwsnctorthis_0); + + void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; + }; + + struct __vwsnf42_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_ + { + ::gaclib_controls::FilePickerControlConstructor* __vwsnthis_0; + + __vwsnf42_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_(::gaclib_controls::FilePickerControlConstructor* __vwsnctorthis_0); + + void operator()() const; + }; + + struct __vwsnf43_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_ + { + ::gaclib_controls::FilePickerControlConstructor* __vwsnthis_0; + + __vwsnf43_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_(::gaclib_controls::FilePickerControlConstructor* __vwsnctorthis_0); + + void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; + }; + + struct __vwsnf44_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControl_GetSelectedFiles_ + { + ::gaclib_controls::FilePickerControl* __vwsnthis_0; + + __vwsnf44_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControl_GetSelectedFiles_(::gaclib_controls::FilePickerControl* __vwsnctorthis_0); + + ::vl::Ptr<::vl::reflection::description::ICoroutine> operator()(::vl::reflection::description::EnumerableCoroutine::IImpl* __vwsn_co_impl_) const; + }; + + struct __vwsnf46_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_ + { + ::gaclib_controls::FontNameControlConstructor* __vwsnthis_0; + + __vwsnf46_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_(::gaclib_controls::FontNameControlConstructor* __vwsnctorthis_0); + + void operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const; + }; + + struct __vwsnf47_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_ + { + ::gaclib_controls::FontNameControlConstructor* __vwsnthis_0; + + __vwsnf47_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_(::gaclib_controls::FontNameControlConstructor* __vwsnctorthis_0); + + void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; + }; + + struct __vwsnf48_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_ + { + ::gaclib_controls::FontNameControlConstructor* __vwsnthis_0; + + __vwsnf48_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_(::gaclib_controls::FontNameControlConstructor* __vwsnctorthis_0); + + void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; + }; + + struct __vwsnf49_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_ + { + ::gaclib_controls::FontNameControlConstructor* __vwsnthis_0; + + __vwsnf49_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_(::gaclib_controls::FontNameControlConstructor* __vwsnctorthis_0); + + void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; + }; + + struct __vwsnf4_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize_ + { + ::gaclib_controls::ColorComponentControlConstructor* __vwsnthis_0; + + __vwsnf4_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize_(::gaclib_controls::ColorComponentControlConstructor* __vwsnctorthis_0); + + void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; + }; + + struct __vwsnf50_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_ + { + ::gaclib_controls::FontNameControlConstructor* __vwsnthis_0; + + __vwsnf50_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_(::gaclib_controls::FontNameControlConstructor* __vwsnctorthis_0); + + void operator()() const; + }; + + struct __vwsnf51_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_ + { + ::gaclib_controls::FontNameControlConstructor* __vwsnthis_0; + + __vwsnf51_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_(::gaclib_controls::FontNameControlConstructor* __vwsnctorthis_0); + + void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; + }; + + struct __vwsnf53_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_ + { + ::gaclib_controls::FontSizeControlConstructor* __vwsnthis_0; + + __vwsnf53_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_(::gaclib_controls::FontSizeControlConstructor* __vwsnctorthis_0); + + void operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const; + }; + + struct __vwsnf54_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_ + { + ::gaclib_controls::FontSizeControlConstructor* __vwsnthis_0; + + __vwsnf54_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_(::gaclib_controls::FontSizeControlConstructor* __vwsnctorthis_0); + + void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; + }; + + struct __vwsnf55_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_ + { + ::gaclib_controls::FontSizeControlConstructor* __vwsnthis_0; + + __vwsnf55_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_(::gaclib_controls::FontSizeControlConstructor* __vwsnctorthis_0); + + void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; + }; + + struct __vwsnf56_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_ + { + ::gaclib_controls::FontSizeControlConstructor* __vwsnthis_0; + + __vwsnf56_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_(::gaclib_controls::FontSizeControlConstructor* __vwsnctorthis_0); + + void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; + }; + + struct __vwsnf57_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_ + { + ::gaclib_controls::FontSizeControlConstructor* __vwsnthis_0; + + __vwsnf57_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_(::gaclib_controls::FontSizeControlConstructor* __vwsnctorthis_0); + + void operator()() const; + }; + + struct __vwsnf58_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_ + { + ::gaclib_controls::FontSizeControlConstructor* __vwsnthis_0; + + __vwsnf58_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_(::gaclib_controls::FontSizeControlConstructor* __vwsnctorthis_0); + + void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; + }; + + struct __vwsnf59_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_ + { + ::gaclib_controls::FullFontDialogWindowConstructor* __vwsnthis_0; + + __vwsnf59_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_(::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0); + + void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; + }; + + struct __vwsnf5_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_ + { + ::gaclib_controls::ColorDialogControlConstructor* __vwsnthis_0; + + __vwsnf5_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_(::gaclib_controls::ColorDialogControlConstructor* __vwsnctorthis_0); + + void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; + }; + + struct __vwsnf60_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_ + { + ::gaclib_controls::FullFontDialogWindowConstructor* __vwsnthis_0; + + __vwsnf60_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_(::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0); + + void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; + }; + + struct __vwsnf61_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_ + { + ::gaclib_controls::FullFontDialogWindowConstructor* __vwsnthis_0; + + __vwsnf61_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_(::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0); + + void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; + }; + + struct __vwsnf62_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_ + { + ::gaclib_controls::FullFontDialogWindowConstructor* __vwsnthis_0; + + __vwsnf62_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_(::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0); + + void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; + }; + + struct __vwsnf63_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_ + { + ::gaclib_controls::FullFontDialogWindowConstructor* __vwsnthis_0; + + __vwsnf63_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_(::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0); + + void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; + }; + + struct __vwsnf64_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_ + { + ::gaclib_controls::FullFontDialogWindowConstructor* __vwsnthis_0; + + __vwsnf64_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_(::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0); + + void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; + }; + + struct __vwsnf65_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_ + { + ::gaclib_controls::FullFontDialogWindowConstructor* __vwsnthis_0; + + __vwsnf65_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_(::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0); + + void operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiMouseEventArgs* arguments) const; + }; + + struct __vwsnf66_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_ + { + ::gaclib_controls::FullFontDialogWindowConstructor* __vwsnthis_0; + + __vwsnf66_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_(::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0); + + void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; + }; + + struct __vwsnf67_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_ + { + ::gaclib_controls::FullFontDialogWindowConstructor* __vwsnthis_0; + + __vwsnf67_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_(::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0); + + void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; + }; + + struct __vwsnf68_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_ + { + ::gaclib_controls::FullFontDialogWindowConstructor* __vwsnthis_0; + + __vwsnf68_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_(::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0); + + void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; + }; + + struct __vwsnf69_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_ + { + ::gaclib_controls::FullFontDialogWindowConstructor* __vwsnthis_0; + + __vwsnf69_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_(::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0); + + void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; + }; + + struct __vwsnf6_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_ + { + ::gaclib_controls::ColorDialogControlConstructor* __vwsnthis_0; + + __vwsnf6_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_(::gaclib_controls::ColorDialogControlConstructor* __vwsnctorthis_0); + + void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; + }; + + struct __vwsnf70_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_ + { + ::gaclib_controls::FullFontDialogWindowConstructor* __vwsnthis_0; + + __vwsnf70_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_(::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0); + + void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; + }; + + struct __vwsnf71_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_ + { + ::gaclib_controls::FullFontDialogWindowConstructor* __vwsnthis_0; + + __vwsnf71_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_(::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0); + + void operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const; + }; + + struct __vwsnf72_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_ + { + ::gaclib_controls::FullFontDialogWindowConstructor* __vwsnthis_0; + + __vwsnf72_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_(::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0); + + void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; + }; + + struct __vwsnf73_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_ + { + ::gaclib_controls::FullFontDialogWindowConstructor* __vwsnthis_0; + + __vwsnf73_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_(::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0); + + void operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const; + }; + + struct __vwsnf74_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_ + { + ::gaclib_controls::FullFontDialogWindowConstructor* __vwsnthis_0; + + __vwsnf74_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_(::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0); + + void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; + }; + + struct __vwsnf75_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_ + { + ::gaclib_controls::FullFontDialogWindowConstructor* __vwsnthis_0; + + __vwsnf75_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize_(::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0); + + void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; + }; + + struct __vwsnf76_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_ + { + ::gaclib_controls::SimpleFontDialogWindowConstructor* __vwsnthis_0; + + __vwsnf76_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_(::gaclib_controls::SimpleFontDialogWindowConstructor* __vwsnctorthis_0); + + void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; + }; + + struct __vwsnf77_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_ + { + ::gaclib_controls::SimpleFontDialogWindowConstructor* __vwsnthis_0; + + __vwsnf77_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_(::gaclib_controls::SimpleFontDialogWindowConstructor* __vwsnctorthis_0); + + void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; + }; + + struct __vwsnf78_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_ + { + ::gaclib_controls::SimpleFontDialogWindowConstructor* __vwsnthis_0; + + __vwsnf78_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_(::gaclib_controls::SimpleFontDialogWindowConstructor* __vwsnctorthis_0); + + void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; + }; + + struct __vwsnf79_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_ + { + ::gaclib_controls::SimpleFontDialogWindowConstructor* __vwsnthis_0; + + __vwsnf79_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_(::gaclib_controls::SimpleFontDialogWindowConstructor* __vwsnctorthis_0); + + void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; + }; + + struct __vwsnf7_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_ + { + ::gaclib_controls::ColorDialogControlConstructor* __vwsnthis_0; + + __vwsnf7_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_(::gaclib_controls::ColorDialogControlConstructor* __vwsnctorthis_0); + + void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; + }; + + struct __vwsnf80_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_ + { + ::gaclib_controls::SimpleFontDialogWindowConstructor* __vwsnthis_0; + + __vwsnf80_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_(::gaclib_controls::SimpleFontDialogWindowConstructor* __vwsnctorthis_0); + + void operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const; + }; + + struct __vwsnf81_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_ + { + ::gaclib_controls::SimpleFontDialogWindowConstructor* __vwsnthis_0; + + __vwsnf81_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_(::gaclib_controls::SimpleFontDialogWindowConstructor* __vwsnctorthis_0); + + void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; + }; + + struct __vwsnf82_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_ + { + ::gaclib_controls::SimpleFontDialogWindowConstructor* __vwsnthis_0; + + __vwsnf82_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_(::gaclib_controls::SimpleFontDialogWindowConstructor* __vwsnctorthis_0); + + void operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const; + }; + + struct __vwsnf83_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_ + { + ::gaclib_controls::SimpleFontDialogWindowConstructor* __vwsnthis_0; + + __vwsnf83_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_(::gaclib_controls::SimpleFontDialogWindowConstructor* __vwsnctorthis_0); + + void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; + }; + + struct __vwsnf84_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_ + { + ::gaclib_controls::SimpleFontDialogWindowConstructor* __vwsnthis_0; + + __vwsnf84_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize_(::gaclib_controls::SimpleFontDialogWindowConstructor* __vwsnctorthis_0); + + void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; + }; + + struct __vwsnf85_GuiFakeDialogServiceUI_gaclib_controls_MessageBoxButtonTemplateConstructor___vwsn_gaclib_controls_MessageBoxButtonTemplate_Initialize_ + { + ::gaclib_controls::MessageBoxButtonTemplateConstructor* __vwsnthis_0; + + __vwsnf85_GuiFakeDialogServiceUI_gaclib_controls_MessageBoxButtonTemplateConstructor___vwsn_gaclib_controls_MessageBoxButtonTemplate_Initialize_(::gaclib_controls::MessageBoxButtonTemplateConstructor* __vwsnctorthis_0); + + void operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const; + }; + + struct __vwsnf86_GuiFakeDialogServiceUI_gaclib_controls_MessageBoxButtonTemplateConstructor___vwsn_gaclib_controls_MessageBoxButtonTemplate_Initialize_ + { + ::gaclib_controls::MessageBoxButtonTemplateConstructor* __vwsnthis_0; + + __vwsnf86_GuiFakeDialogServiceUI_gaclib_controls_MessageBoxButtonTemplateConstructor___vwsn_gaclib_controls_MessageBoxButtonTemplate_Initialize_(::gaclib_controls::MessageBoxButtonTemplateConstructor* __vwsnctorthis_0); + + void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; + }; + + struct __vwsnf87_GuiFakeDialogServiceUI_gaclib_controls_MessageBoxWindowConstructor___vwsn_gaclib_controls_MessageBoxWindow_Initialize_ + { + ::gaclib_controls::MessageBoxWindowConstructor* __vwsnthis_0; + + __vwsnf87_GuiFakeDialogServiceUI_gaclib_controls_MessageBoxWindowConstructor___vwsn_gaclib_controls_MessageBoxWindow_Initialize_(::gaclib_controls::MessageBoxWindowConstructor* __vwsnctorthis_0); + + ::vl::presentation::templates::GuiTemplate* operator()(const ::vl::reflection::description::Value& __vwsn_viewModel_) const; + }; + + struct __vwsnf8_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_ + { + ::gaclib_controls::ColorDialogControlConstructor* __vwsnthis_0; + + __vwsnf8_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_(::gaclib_controls::ColorDialogControlConstructor* __vwsnctorthis_0); + + void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; + }; + + struct __vwsnf9_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_ + { + ::gaclib_controls::ColorDialogControlConstructor* __vwsnthis_0; + + __vwsnf9_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize_(::gaclib_controls::ColorDialogControlConstructor* __vwsnctorthis_0); + + void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; + }; + + struct __vwsno31_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_ + { + ::gaclib_controls::FilePickerControlConstructor* __vwsnthis_0; + + __vwsno31_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_(::gaclib_controls::FilePickerControlConstructor* __vwsnctorthis_0); + + ::vl::Ptr<::vl::presentation::GuiImageData> operator()(const ::vl::reflection::description::Value& __vwsno_1) const; + }; + + struct __vwsno34_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_ + { + ::gaclib_controls::FilePickerControlConstructor* __vwsnthis_0; + + __vwsno34_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize_(::gaclib_controls::FilePickerControlConstructor* __vwsnctorthis_0); + + ::vl::Ptr<::vl::presentation::GuiImageData> operator()(const ::vl::reflection::description::Value& __vwsno_1) const; + }; + + struct __vwsno45_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_ + { + ::gaclib_controls::FontNameControlConstructor* __vwsnthis_0; + + __vwsno45_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize_(::gaclib_controls::FontNameControlConstructor* __vwsnctorthis_0); + + ::vl::WString operator()(const ::vl::reflection::description::Value& __vwsno_1) const; + }; + + struct __vwsno52_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_ + { + ::gaclib_controls::FontSizeControlConstructor* __vwsnthis_0; + + __vwsno52_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize_(::gaclib_controls::FontSizeControlConstructor* __vwsnctorthis_0); + + ::vl::WString operator()(const ::vl::reflection::description::Value& __vwsno_1) const; + }; + + class __vwsnc10_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::gaclib_controls::ColorDialogControlConstructor* __vwsnthis_0; + + __vwsnc10_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::ColorDialogControlConstructor* __vwsnctorthis_0); + + ::vl::presentation::controls::GuiApplication* __vwsn_bind_cache_0 = nullptr; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(); + bool Open() override; + bool Update() override; + bool Close() override; + }; + + class __vwsnc11_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize__vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::gaclib_controls::ColorDialogWindow* __vwsn_this_; + ::gaclib_controls::ColorDialogWindowConstructor* __vwsnthis_0; + + __vwsnc11_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::ColorDialogWindow* __vwsnctor___vwsn_this_, ::gaclib_controls::ColorDialogWindowConstructor* __vwsnctorthis_0); + + ::gaclib_controls::ColorDialogWindow* __vwsn_bind_cache_0 = nullptr; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(); + bool Open() override; + bool Update() override; + bool Close() override; + }; + + class __vwsnc12_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize__vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::gaclib_controls::ColorDialogWindow* __vwsn_this_; + ::gaclib_controls::ColorDialogWindowConstructor* __vwsnthis_0; + + __vwsnc12_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::ColorDialogWindow* __vwsnctor___vwsn_this_, ::gaclib_controls::ColorDialogWindowConstructor* __vwsnctorthis_0); + + ::gaclib_controls::ColorDialogWindow* __vwsn_bind_cache_0 = nullptr; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(); + bool Open() override; + bool Update() override; + bool Close() override; + }; + + class __vwsnc13_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize__vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::gaclib_controls::ColorDialogWindow* __vwsn_this_; + ::gaclib_controls::ColorDialogWindowConstructor* __vwsnthis_0; + + __vwsnc13_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::ColorDialogWindow* __vwsnctor___vwsn_this_, ::gaclib_controls::ColorDialogWindowConstructor* __vwsnctorthis_0); + + ::gaclib_controls::ColorDialogWindow* __vwsn_bind_cache_0 = nullptr; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(); + bool Open() override; + bool Update() override; + bool Close() override; + }; + + class __vwsnc14_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize__vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::gaclib_controls::ColorDialogWindowConstructor* __vwsnthis_0; + + __vwsnc14_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogWindowConstructor___vwsn_gaclib_controls_ColorDialogWindow_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::ColorDialogWindowConstructor* __vwsnctorthis_0); + + ::vl::presentation::controls::GuiApplication* __vwsn_bind_cache_0 = nullptr; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(); + bool Open() override; + bool Update() override; + bool Close() override; + }; + + class __vwsnc15_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize__vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::gaclib_controls::FileDialogWindowConstructor* __vwsnthis_0; + + __vwsnc15_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FileDialogWindowConstructor* __vwsnctorthis_0); + + ::vl::Ptr<::vl::presentation::IFileDialogViewModel> __vwsn_bind_cache_0; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(); + bool Open() override; + bool Update() override; + bool Close() override; + }; + + class __vwsnc16_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize__vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::gaclib_controls::FileDialogWindow* __vwsn_this_; + ::gaclib_controls::FileDialogWindowConstructor* __vwsnthis_0; + + __vwsnc16_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FileDialogWindow* __vwsnctor___vwsn_this_, ::gaclib_controls::FileDialogWindowConstructor* __vwsnctorthis_0); + + ::gaclib_controls::FileDialogWindow* __vwsn_bind_cache_0 = nullptr; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(); + bool Open() override; + bool Update() override; + bool Close() override; + }; + + class __vwsnc17_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize__vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::gaclib_controls::FileDialogWindowConstructor* __vwsnthis_0; + + __vwsnc17_GuiFakeDialogServiceUI_gaclib_controls_FileDialogWindowConstructor___vwsn_gaclib_controls_FileDialogWindow_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FileDialogWindowConstructor* __vwsnctorthis_0); + + ::vl::presentation::controls::GuiApplication* __vwsn_bind_cache_0 = nullptr; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(); + bool Open() override; + bool Update() override; + bool Close() override; + }; + + class __vwsnc18_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::gaclib_controls::FilePickerControlConstructor* __vwsnthis_0; + + __vwsnc18_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FilePickerControlConstructor* __vwsnctorthis_0); + + ::vl::Ptr<::vl::presentation::IFileDialogViewModel> __vwsn_bind_cache_0; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(); + bool Open() override; + bool Update() override; + bool Close() override; + }; + + class __vwsnc19_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::gaclib_controls::FilePickerControlConstructor* __vwsnthis_0; + + __vwsnc19_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FilePickerControlConstructor* __vwsnctorthis_0); + + ::vl::Ptr<::vl::presentation::IFileDialogViewModel> __vwsn_bind_cache_0; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(); + bool Open() override; + bool Update() override; + bool Close() override; + }; + + class __vwsnc1_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize__vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::gaclib_controls::ColorComponentControlConstructor* __vwsnthis_0; + + __vwsnc1_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::ColorComponentControlConstructor* __vwsnctorthis_0); + + ::gaclib_controls::ColorComponentControl* __vwsn_bind_cache_0 = nullptr; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(); + bool Open() override; + bool Update() override; + bool Close() override; + }; + + class __vwsnc20_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::gaclib_controls::FilePickerControl* __vwsn_this_; + ::gaclib_controls::FilePickerControlConstructor* __vwsnthis_0; + + __vwsnc20_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FilePickerControl* __vwsnctor___vwsn_this_, ::gaclib_controls::FilePickerControlConstructor* __vwsnctorthis_0); + + ::gaclib_controls::FilePickerControl* __vwsn_bind_cache_0 = nullptr; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(); + bool Open() override; + bool Update() override; + bool Close() override; + }; + + class __vwsnc21_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::gaclib_controls::FilePickerControlConstructor* __vwsnthis_0; + + __vwsnc21_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FilePickerControlConstructor* __vwsnctorthis_0); + + ::vl::presentation::controls::GuiComboBoxListControl* __vwsn_bind_cache_0 = nullptr; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(::vl::presentation::compositions::GuiGraphicsComposition* __vwsn_bind_callback_argument_0, ::vl::presentation::compositions::GuiEventArgs* __vwsn_bind_callback_argument_1); + bool Open() override; + bool Update() override; + bool Close() override; + }; + + class __vwsnc22_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::gaclib_controls::FilePickerControlConstructor* __vwsnthis_0; + + __vwsnc22_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FilePickerControlConstructor* __vwsnctorthis_0); + + ::vl::presentation::controls::GuiBindableTreeView* __vwsn_bind_cache_0 = nullptr; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(::vl::presentation::compositions::GuiGraphicsComposition* __vwsn_bind_callback_argument_0, ::vl::presentation::compositions::GuiEventArgs* __vwsn_bind_callback_argument_1); + bool Open() override; + bool Update() override; + bool Close() override; + }; + + class __vwsnc23_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::gaclib_controls::FilePickerControlConstructor* __vwsnthis_0; + + __vwsnc23_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControlConstructor___vwsn_gaclib_controls_FilePickerControl_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FilePickerControlConstructor* __vwsnctorthis_0); + + ::vl::presentation::controls::GuiApplication* __vwsn_bind_cache_0 = nullptr; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(); + bool Open() override; + bool Update() override; + bool Close() override; + }; + + class __vwsnc24_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControl_GetSelectedFiles___vl_reflection_description_ICoroutine : public ::vl::Object, public virtual ::vl::reflection::description::ICoroutine + { + public: + ::vl::reflection::description::EnumerableCoroutine::IImpl* __vwsn_co_impl_; + ::gaclib_controls::FilePickerControl* __vwsnthis_0; + + __vwsnc24_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControl_GetSelectedFiles___vl_reflection_description_ICoroutine(::vl::reflection::description::EnumerableCoroutine::IImpl* __vwsnctor___vwsn_co_impl_, ::gaclib_controls::FilePickerControl* __vwsnctorthis_0); + + ::vl::Ptr<::vl::presentation::IFileDialogFile> __vwsn_co0_file; + ::vl::vint __vwsn_co1_item = 0; + ::vl::Ptr<::vl::reflection::description::IValueEnumerable> __vwsn_co2_for_enumerable_item; + ::vl::Ptr<::vl::reflection::description::IValueEnumerator> __vwsn_co3_for_enumerator_item; + ::vl::vint __vwsn_co_state_ = 0; + ::vl::vint __vwsn_co_state_before_pause_ = 0; + ::vl::Ptr<::vl::reflection::description::IValueException> __vwsn_prop_Failure; + ::vl::Ptr<::vl::reflection::description::IValueException> GetFailure() override; + void SetFailure(::vl::Ptr<::vl::reflection::description::IValueException> __vwsn_value_); + ::vl::reflection::description::CoroutineStatus __vwsn_prop_Status = static_cast<::vl::reflection::description::CoroutineStatus>(0); + ::vl::reflection::description::CoroutineStatus GetStatus() override; + void SetStatus(::vl::reflection::description::CoroutineStatus __vwsn_value_); + void Resume(bool __vwsn_raise_exception_, ::vl::Ptr<::vl::reflection::description::CoroutineResult> __vwsn_co_result_) override; + }; + + class __vwsnc25_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControl_CreateFileFilter__vl_presentation_controls_list_IDataFilter : public ::vl::Object, public virtual ::vl::presentation::controls::list::IDataFilter + { + public: + ::vl::Ptr<::vl::presentation::IFileDialogFilter> filter; + ::gaclib_controls::FilePickerControl* __vwsnthis_0; + + __vwsnc25_GuiFakeDialogServiceUI_gaclib_controls_FilePickerControl_CreateFileFilter__vl_presentation_controls_list_IDataFilter(::vl::Ptr<::vl::presentation::IFileDialogFilter> __vwsnctor_filter, ::gaclib_controls::FilePickerControl* __vwsnctorthis_0); + + void SetCallback(::vl::presentation::controls::list::IDataProcessorCallback* value) override; + bool Filter(const ::vl::reflection::description::Value& row) override; + }; + + class __vwsnc26_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize__vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::gaclib_controls::FontNameControl* __vwsn_this_; + ::gaclib_controls::FontNameControlConstructor* __vwsnthis_0; + + __vwsnc26_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FontNameControl* __vwsnctor___vwsn_this_, ::gaclib_controls::FontNameControlConstructor* __vwsnctorthis_0); + + ::gaclib_controls::FontNameControl* __vwsn_bind_cache_0 = nullptr; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(); + bool Open() override; + bool Update() override; + bool Close() override; + }; + + class __vwsnc27_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize__vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::gaclib_controls::FontNameControlConstructor* __vwsnthis_0; + + __vwsnc27_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FontNameControlConstructor* __vwsnctorthis_0); + + ::vl::presentation::controls::GuiSinglelineTextBox* __vwsn_bind_cache_0 = nullptr; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(::vl::presentation::compositions::GuiGraphicsComposition* __vwsn_bind_callback_argument_0, ::vl::presentation::compositions::GuiEventArgs* __vwsn_bind_callback_argument_1); + bool Open() override; + bool Update() override; + bool Close() override; + }; + + class __vwsnc28_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize__vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::gaclib_controls::FontNameControlConstructor* __vwsnthis_0; + + __vwsnc28_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FontNameControlConstructor* __vwsnctorthis_0); + + ::vl::presentation::controls::GuiSinglelineTextBox* __vwsn_bind_cache_0 = nullptr; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(::vl::presentation::compositions::GuiGraphicsComposition* __vwsn_bind_callback_argument_0, ::vl::presentation::compositions::GuiEventArgs* __vwsn_bind_callback_argument_1); + bool Open() override; + bool Update() override; + bool Close() override; + }; + + class __vwsnc29_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize__vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::gaclib_controls::FontNameControlConstructor* __vwsnthis_0; + + __vwsnc29_GuiFakeDialogServiceUI_gaclib_controls_FontNameControlConstructor___vwsn_gaclib_controls_FontNameControl_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FontNameControlConstructor* __vwsnctorthis_0); + + ::vl::presentation::controls::GuiApplication* __vwsn_bind_cache_0 = nullptr; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(); + bool Open() override; + bool Update() override; + bool Close() override; + }; + + class __vwsnc2_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize__vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::gaclib_controls::ColorComponentControlConstructor* __vwsnthis_0; + + __vwsnc2_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::ColorComponentControlConstructor* __vwsnctorthis_0); + + ::gaclib_controls::ColorComponentControl* __vwsn_bind_cache_0 = nullptr; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(); + bool Open() override; + bool Update() override; + bool Close() override; + }; + + class __vwsnc30_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize__vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::gaclib_controls::FontSizeControl* __vwsn_this_; + ::gaclib_controls::FontSizeControlConstructor* __vwsnthis_0; + + __vwsnc30_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FontSizeControl* __vwsnctor___vwsn_this_, ::gaclib_controls::FontSizeControlConstructor* __vwsnctorthis_0); + + ::gaclib_controls::FontSizeControl* __vwsn_bind_cache_0 = nullptr; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(); + bool Open() override; + bool Update() override; + bool Close() override; + }; + + class __vwsnc31_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize__vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::gaclib_controls::FontSizeControlConstructor* __vwsnthis_0; + + __vwsnc31_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FontSizeControlConstructor* __vwsnctorthis_0); + + ::vl::presentation::controls::GuiSinglelineTextBox* __vwsn_bind_cache_0 = nullptr; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(::vl::presentation::compositions::GuiGraphicsComposition* __vwsn_bind_callback_argument_0, ::vl::presentation::compositions::GuiEventArgs* __vwsn_bind_callback_argument_1); + bool Open() override; + bool Update() override; + bool Close() override; + }; + + class __vwsnc32_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize__vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::gaclib_controls::FontSizeControlConstructor* __vwsnthis_0; + + __vwsnc32_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FontSizeControlConstructor* __vwsnctorthis_0); + + ::gaclib_controls::FontSizeControl* __vwsn_bind_cache_0 = nullptr; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(); + bool Open() override; + bool Update() override; + bool Close() override; + }; + + class __vwsnc33_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize__vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::gaclib_controls::FontSizeControlConstructor* __vwsnthis_0; + + __vwsnc33_GuiFakeDialogServiceUI_gaclib_controls_FontSizeControlConstructor___vwsn_gaclib_controls_FontSizeControl_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FontSizeControlConstructor* __vwsnctorthis_0); + + ::vl::presentation::controls::GuiApplication* __vwsn_bind_cache_0 = nullptr; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(); + bool Open() override; + bool Update() override; + bool Close() override; + }; + + class __vwsnc34_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::gaclib_controls::FullFontDialogWindow* __vwsn_this_; + ::gaclib_controls::FullFontDialogWindowConstructor* __vwsnthis_0; + + __vwsnc34_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FullFontDialogWindow* __vwsnctor___vwsn_this_, ::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0); + + ::gaclib_controls::FullFontDialogWindow* __vwsn_bind_cache_0 = nullptr; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(); + bool Open() override; + bool Update() override; + bool Close() override; + }; + + class __vwsnc35_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::gaclib_controls::FullFontDialogWindow* __vwsn_this_; + ::gaclib_controls::FullFontDialogWindowConstructor* __vwsnthis_0; + + __vwsnc35_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FullFontDialogWindow* __vwsnctor___vwsn_this_, ::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0); + + ::gaclib_controls::FullFontDialogWindow* __vwsn_bind_cache_0 = nullptr; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(); + bool Open() override; + bool Update() override; + bool Close() override; + }; + + class __vwsnc36_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::gaclib_controls::FullFontDialogWindow* __vwsn_this_; + ::gaclib_controls::FullFontDialogWindowConstructor* __vwsnthis_0; + + __vwsnc36_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FullFontDialogWindow* __vwsnctor___vwsn_this_, ::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0); + + ::gaclib_controls::FullFontDialogWindow* __vwsn_bind_cache_0 = nullptr; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(); + bool Open() override; + bool Update() override; + bool Close() override; + }; + + class __vwsnc37_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::gaclib_controls::FullFontDialogWindow* __vwsn_this_; + ::gaclib_controls::FullFontDialogWindowConstructor* __vwsnthis_0; + + __vwsnc37_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FullFontDialogWindow* __vwsnctor___vwsn_this_, ::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0); + + ::gaclib_controls::FullFontDialogWindow* __vwsn_bind_cache_0 = nullptr; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(); + bool Open() override; + bool Update() override; + bool Close() override; + }; + + class __vwsnc38_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::gaclib_controls::FullFontDialogWindow* __vwsn_this_; + ::gaclib_controls::FullFontDialogWindowConstructor* __vwsnthis_0; + + __vwsnc38_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FullFontDialogWindow* __vwsnctor___vwsn_this_, ::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0); + + ::gaclib_controls::FullFontDialogWindow* __vwsn_bind_cache_0 = nullptr; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(); + bool Open() override; + bool Update() override; + bool Close() override; + }; + + class __vwsnc39_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::gaclib_controls::FullFontDialogWindow* __vwsn_this_; + ::gaclib_controls::FullFontDialogWindowConstructor* __vwsnthis_0; + + __vwsnc39_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FullFontDialogWindow* __vwsnctor___vwsn_this_, ::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0); + + ::gaclib_controls::FullFontDialogWindow* __vwsn_bind_cache_0 = nullptr; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(); + bool Open() override; + bool Update() override; + bool Close() override; + }; + + class __vwsnc3_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize__vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::gaclib_controls::ColorComponentControlConstructor* __vwsnthis_0; + + __vwsnc3_GuiFakeDialogServiceUI_gaclib_controls_ColorComponentControlConstructor___vwsn_gaclib_controls_ColorComponentControl_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::ColorComponentControlConstructor* __vwsnctorthis_0); + + ::vl::presentation::controls::GuiScroll* __vwsn_bind_cache_0 = nullptr; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(::vl::presentation::compositions::GuiGraphicsComposition* __vwsn_bind_callback_argument_0, ::vl::presentation::compositions::GuiEventArgs* __vwsn_bind_callback_argument_1); + bool Open() override; + bool Update() override; + bool Close() override; + }; + + class __vwsnc40_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::gaclib_controls::FullFontDialogWindow* __vwsn_this_; + ::gaclib_controls::FullFontDialogWindowConstructor* __vwsnthis_0; + + __vwsnc40_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FullFontDialogWindow* __vwsnctor___vwsn_this_, ::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0); + + ::gaclib_controls::FullFontDialogWindow* __vwsn_bind_cache_0 = nullptr; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(); + bool Open() override; + bool Update() override; + bool Close() override; + }; + + class __vwsnc41_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::gaclib_controls::FullFontDialogWindowConstructor* __vwsnthis_0; + + __vwsnc41_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0); + + ::gaclib_controls::FontNameControl* __vwsn_bind_cache_0 = nullptr; + ::gaclib_controls::FontNameControl* __vwsn_bind_cache_1 = nullptr; + ::gaclib_controls::FontSizeControl* __vwsn_bind_cache_2 = nullptr; + ::gaclib_controls::FontSizeControl* __vwsn_bind_cache_3 = nullptr; + ::vl::presentation::controls::GuiSelectableButton* __vwsn_bind_cache_4 = nullptr; + ::vl::presentation::controls::GuiSelectableButton* __vwsn_bind_cache_5 = nullptr; + ::vl::presentation::controls::GuiSelectableButton* __vwsn_bind_cache_6 = nullptr; + ::vl::presentation::controls::GuiSelectableButton* __vwsn_bind_cache_7 = nullptr; + ::vl::presentation::controls::GuiSelectableButton* __vwsn_bind_cache_8 = nullptr; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_1_0; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_2_0; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_3_0; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_4_0; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_5_0; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_6_0; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_7_0; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_8_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(); + void __vwsn_bind_callback_1_0(); + void __vwsn_bind_callback_2_0(); + void __vwsn_bind_callback_3_0(); + void __vwsn_bind_callback_4_0(::vl::presentation::compositions::GuiGraphicsComposition* __vwsn_bind_callback_argument_0, ::vl::presentation::compositions::GuiEventArgs* __vwsn_bind_callback_argument_1); + void __vwsn_bind_callback_5_0(::vl::presentation::compositions::GuiGraphicsComposition* __vwsn_bind_callback_argument_0, ::vl::presentation::compositions::GuiEventArgs* __vwsn_bind_callback_argument_1); + void __vwsn_bind_callback_6_0(::vl::presentation::compositions::GuiGraphicsComposition* __vwsn_bind_callback_argument_0, ::vl::presentation::compositions::GuiEventArgs* __vwsn_bind_callback_argument_1); + void __vwsn_bind_callback_7_0(::vl::presentation::compositions::GuiGraphicsComposition* __vwsn_bind_callback_argument_0, ::vl::presentation::compositions::GuiEventArgs* __vwsn_bind_callback_argument_1); + void __vwsn_bind_callback_8_0(::vl::presentation::compositions::GuiGraphicsComposition* __vwsn_bind_callback_argument_0, ::vl::presentation::compositions::GuiEventArgs* __vwsn_bind_callback_argument_1); + bool Open() override; + bool Update() override; + bool Close() override; + }; + + class __vwsnc42_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::gaclib_controls::FullFontDialogWindow* __vwsn_this_; + ::gaclib_controls::FullFontDialogWindowConstructor* __vwsnthis_0; + + __vwsnc42_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FullFontDialogWindow* __vwsnctor___vwsn_this_, ::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0); + + ::gaclib_controls::FullFontDialogWindow* __vwsn_bind_cache_0 = nullptr; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(); + bool Open() override; + bool Update() override; + bool Close() override; + }; + + class __vwsnc43_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::gaclib_controls::FullFontDialogWindow* __vwsn_this_; + ::gaclib_controls::FullFontDialogWindowConstructor* __vwsnthis_0; + + __vwsnc43_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FullFontDialogWindow* __vwsnctor___vwsn_this_, ::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0); + + ::gaclib_controls::FullFontDialogWindow* __vwsn_bind_cache_0 = nullptr; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(); + bool Open() override; + bool Update() override; + bool Close() override; + }; + + class __vwsnc44_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::gaclib_controls::FullFontDialogWindowConstructor* __vwsnthis_0; + + __vwsnc44_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0); + + ::gaclib_controls::FontNameControl* __vwsn_bind_cache_0 = nullptr; + ::gaclib_controls::FontSizeControl* __vwsn_bind_cache_1 = nullptr; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_1_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(); + void __vwsn_bind_callback_1_0(); + bool Open() override; + bool Update() override; + bool Close() override; + }; + + class __vwsnc45_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::gaclib_controls::FullFontDialogWindow* __vwsn_this_; + ::gaclib_controls::FullFontDialogWindowConstructor* __vwsnthis_0; + + __vwsnc45_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FullFontDialogWindow* __vwsnctor___vwsn_this_, ::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0); + + ::gaclib_controls::FullFontDialogWindow* __vwsn_bind_cache_0 = nullptr; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(); + bool Open() override; + bool Update() override; + bool Close() override; + }; + + class __vwsnc46_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::gaclib_controls::FullFontDialogWindow* __vwsn_this_; + ::gaclib_controls::FullFontDialogWindowConstructor* __vwsnthis_0; + + __vwsnc46_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FullFontDialogWindow* __vwsnctor___vwsn_this_, ::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0); + + ::gaclib_controls::FullFontDialogWindow* __vwsn_bind_cache_0 = nullptr; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(); + bool Open() override; + bool Update() override; + bool Close() override; + }; + + class __vwsnc47_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::gaclib_controls::FullFontDialogWindowConstructor* __vwsnthis_0; + + __vwsnc47_GuiFakeDialogServiceUI_gaclib_controls_FullFontDialogWindowConstructor___vwsn_gaclib_controls_FullFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::FullFontDialogWindowConstructor* __vwsnctorthis_0); + + ::vl::presentation::controls::GuiApplication* __vwsn_bind_cache_0 = nullptr; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(); + bool Open() override; + bool Update() override; + bool Close() override; + }; + + class __vwsnc48_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::gaclib_controls::SimpleFontDialogWindowConstructor* __vwsnthis_0; + + __vwsnc48_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::SimpleFontDialogWindowConstructor* __vwsnctorthis_0); + + ::gaclib_controls::FontNameControl* __vwsn_bind_cache_0 = nullptr; + ::gaclib_controls::FontNameControl* __vwsn_bind_cache_1 = nullptr; + ::gaclib_controls::FontSizeControl* __vwsn_bind_cache_2 = nullptr; + ::gaclib_controls::FontSizeControl* __vwsn_bind_cache_3 = nullptr; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_1_0; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_2_0; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_3_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(); + void __vwsn_bind_callback_1_0(); + void __vwsn_bind_callback_2_0(); + void __vwsn_bind_callback_3_0(); + bool Open() override; + bool Update() override; + bool Close() override; + }; + + class __vwsnc49_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::gaclib_controls::SimpleFontDialogWindow* __vwsn_this_; + ::gaclib_controls::SimpleFontDialogWindowConstructor* __vwsnthis_0; + + __vwsnc49_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::SimpleFontDialogWindow* __vwsnctor___vwsn_this_, ::gaclib_controls::SimpleFontDialogWindowConstructor* __vwsnctorthis_0); + + ::gaclib_controls::SimpleFontDialogWindow* __vwsn_bind_cache_0 = nullptr; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(); + bool Open() override; + bool Update() override; + bool Close() override; + }; + + class __vwsnc4_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::gaclib_controls::ColorDialogControl* __vwsn_this_; + ::gaclib_controls::ColorDialogControlConstructor* __vwsnthis_0; + + __vwsnc4_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::ColorDialogControl* __vwsnctor___vwsn_this_, ::gaclib_controls::ColorDialogControlConstructor* __vwsnctorthis_0); + + ::gaclib_controls::ColorDialogControl* __vwsn_bind_cache_0 = nullptr; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(); + bool Open() override; + bool Update() override; + bool Close() override; + }; + + class __vwsnc50_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::gaclib_controls::SimpleFontDialogWindow* __vwsn_this_; + ::gaclib_controls::SimpleFontDialogWindowConstructor* __vwsnthis_0; + + __vwsnc50_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::SimpleFontDialogWindow* __vwsnctor___vwsn_this_, ::gaclib_controls::SimpleFontDialogWindowConstructor* __vwsnctorthis_0); + + ::gaclib_controls::SimpleFontDialogWindow* __vwsn_bind_cache_0 = nullptr; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(); + bool Open() override; + bool Update() override; + bool Close() override; + }; + + class __vwsnc51_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::gaclib_controls::SimpleFontDialogWindowConstructor* __vwsnthis_0; + + __vwsnc51_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::SimpleFontDialogWindowConstructor* __vwsnctorthis_0); + + ::gaclib_controls::FontNameControl* __vwsn_bind_cache_0 = nullptr; + ::gaclib_controls::FontSizeControl* __vwsn_bind_cache_1 = nullptr; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_1_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(); + void __vwsn_bind_callback_1_0(); + bool Open() override; + bool Update() override; + bool Close() override; + }; + + class __vwsnc52_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::gaclib_controls::SimpleFontDialogWindow* __vwsn_this_; + ::gaclib_controls::SimpleFontDialogWindowConstructor* __vwsnthis_0; + + __vwsnc52_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::SimpleFontDialogWindow* __vwsnctor___vwsn_this_, ::gaclib_controls::SimpleFontDialogWindowConstructor* __vwsnctorthis_0); + + ::gaclib_controls::SimpleFontDialogWindow* __vwsn_bind_cache_0 = nullptr; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(); + bool Open() override; + bool Update() override; + bool Close() override; + }; + + class __vwsnc53_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::gaclib_controls::SimpleFontDialogWindow* __vwsn_this_; + ::gaclib_controls::SimpleFontDialogWindowConstructor* __vwsnthis_0; + + __vwsnc53_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::SimpleFontDialogWindow* __vwsnctor___vwsn_this_, ::gaclib_controls::SimpleFontDialogWindowConstructor* __vwsnctorthis_0); + + ::gaclib_controls::SimpleFontDialogWindow* __vwsn_bind_cache_0 = nullptr; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(); + bool Open() override; + bool Update() override; + bool Close() override; + }; + + class __vwsnc54_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::gaclib_controls::SimpleFontDialogWindowConstructor* __vwsnthis_0; + + __vwsnc54_GuiFakeDialogServiceUI_gaclib_controls_SimpleFontDialogWindowConstructor___vwsn_gaclib_controls_SimpleFontDialogWindow_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::SimpleFontDialogWindowConstructor* __vwsnctorthis_0); + + ::vl::presentation::controls::GuiApplication* __vwsn_bind_cache_0 = nullptr; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(); + bool Open() override; + bool Update() override; + bool Close() override; + }; + + class __vwsnc55_GuiFakeDialogServiceUI_gaclib_controls_MessageBoxButtonTemplateConstructor___vwsn_gaclib_controls_MessageBoxButtonTemplate_Initialize__vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::gaclib_controls::MessageBoxButtonTemplateConstructor* __vwsnthis_0; + + __vwsnc55_GuiFakeDialogServiceUI_gaclib_controls_MessageBoxButtonTemplateConstructor___vwsn_gaclib_controls_MessageBoxButtonTemplate_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::MessageBoxButtonTemplateConstructor* __vwsnctorthis_0); + + ::vl::presentation::controls::GuiApplication* __vwsn_bind_cache_0 = nullptr; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(); + bool Open() override; + bool Update() override; + bool Close() override; + }; + + class __vwsnc56_GuiFakeDialogServiceUI_gaclib_controls_DialogStrings_Get__gaclib_controls_IDialogStringsStrings : public ::vl::Object, public virtual ::gaclib_controls::IDialogStringsStrings + { + public: + __vwsnc56_GuiFakeDialogServiceUI_gaclib_controls_DialogStrings_Get__gaclib_controls_IDialogStringsStrings(); + + ::vl::WString Abort() override; + ::vl::WString Blue() override; + ::vl::WString Bold() override; + ::vl::WString Cancel() override; + ::vl::WString Color() override; + ::vl::WString ColorDialogTitle() override; + ::vl::WString Continue() override; + ::vl::WString FileDialogAskCreateFile() override; + ::vl::WString FileDialogAskOverrideFile() override; + ::vl::WString FileDialogErrorEmptySelection() override; + ::vl::WString FileDialogErrorFileExpected() override; + ::vl::WString FileDialogErrorFileNotExist() override; + ::vl::WString FileDialogErrorFolderNotExist() override; + ::vl::WString FileDialogErrorMultipleSelectionNotEnabled() override; + ::vl::WString FileDialogFileName() override; + ::vl::WString FileDialogOpen() override; + ::vl::WString FileDialogSave() override; + ::vl::WString FileDialogTextLoadingFiles() override; + ::vl::WString FileDialogTextLoadingFolders() override; + ::vl::WString FontColorGroup() override; + ::vl::WString FontColorGroup2() override; + ::vl::WString FontDialogTitle() override; + ::vl::WString FontEffectGroup() override; + ::vl::WString FontNameGroup() override; + ::vl::WString FontPreviewGroup() override; + ::vl::WString FontSizeGroup() override; + ::vl::WString Green() override; + ::vl::WString HAA() override; + ::vl::WString Ignore() override; + ::vl::WString Italic() override; + ::vl::WString No() override; + ::vl::WString OK() override; + ::vl::WString Red() override; + ::vl::WString Retry() override; + ::vl::WString TryAgain() override; + ::vl::WString Underline() override; + ::vl::WString VAA() override; + ::vl::WString Yes() override; + }; + + class __vwsnc5_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::gaclib_controls::ColorDialogControl* __vwsn_this_; + ::gaclib_controls::ColorDialogControlConstructor* __vwsnthis_0; + + __vwsnc5_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::ColorDialogControl* __vwsnctor___vwsn_this_, ::gaclib_controls::ColorDialogControlConstructor* __vwsnctorthis_0); + + ::gaclib_controls::ColorDialogControl* __vwsn_bind_cache_0 = nullptr; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(); + bool Open() override; + bool Update() override; + bool Close() override; + }; + + class __vwsnc6_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::gaclib_controls::ColorDialogControl* __vwsn_this_; + ::gaclib_controls::ColorDialogControlConstructor* __vwsnthis_0; + + __vwsnc6_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::ColorDialogControl* __vwsnctor___vwsn_this_, ::gaclib_controls::ColorDialogControlConstructor* __vwsnctorthis_0); + + ::gaclib_controls::ColorDialogControl* __vwsn_bind_cache_0 = nullptr; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(); + bool Open() override; + bool Update() override; + bool Close() override; + }; + + class __vwsnc7_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::gaclib_controls::ColorDialogControl* __vwsn_this_; + ::gaclib_controls::ColorDialogControlConstructor* __vwsnthis_0; + + __vwsnc7_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::ColorDialogControl* __vwsnctor___vwsn_this_, ::gaclib_controls::ColorDialogControlConstructor* __vwsnctorthis_0); + + ::gaclib_controls::ColorDialogControl* __vwsn_bind_cache_0 = nullptr; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(); + bool Open() override; + bool Update() override; + bool Close() override; + }; + + class __vwsnc8_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::gaclib_controls::ColorDialogControlConstructor* __vwsnthis_0; + + __vwsnc8_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::ColorDialogControlConstructor* __vwsnctorthis_0); + + ::gaclib_controls::ColorDialogControl* __vwsn_bind_cache_0 = nullptr; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(); + bool Open() override; + bool Update() override; + bool Close() override; + }; + + class __vwsnc9_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::gaclib_controls::ColorDialogControlConstructor* __vwsnthis_0; + + __vwsnc9_GuiFakeDialogServiceUI_gaclib_controls_ColorDialogControlConstructor___vwsn_gaclib_controls_ColorDialogControl_Initialize__vl_reflection_description_IValueSubscription(::gaclib_controls::ColorDialogControlConstructor* __vwsnctorthis_0); + + ::gaclib_controls::ColorDialogControl* __vwsn_bind_cache_0 = nullptr; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_1; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_2; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(); + void __vwsn_bind_callback_0_1(); + void __vwsn_bind_callback_0_2(); + bool Open() override; + bool Update() override; + bool Close() override; + }; +} + +#if defined( _MSC_VER) +#pragma warning(pop) +#elif defined(__clang__) +#pragma clang diagnostic pop +#elif defined(__GNUC__) +#pragma GCC diagnostic pop +#endif + +#endif + + +/*********************************************************************** +.\UTILITIES\FAKESERVICES\DIALOGS\SOURCE\GUIFAKEDIALOGSERVICEUIINCLUDES.H +***********************************************************************/ +/*********************************************************************** +!!!!!! DO NOT MODIFY !!!!!! + +GacGen.exe Resource.xml + +This file is generated by Workflow compiler +https://github.com/vczh-libraries +***********************************************************************/ + +#ifndef VCZH_WORKFLOW_COMPILER_GENERATED_GUIFAKEDIALOGSERVICEUIINCLUDES +#define VCZH_WORKFLOW_COMPILER_GENERATED_GUIFAKEDIALOGSERVICEUIINCLUDES + + +#endif + + +/*********************************************************************** +.\UTILITIES\SHAREDSERVICES\GUISHAREDASYNCSERVICE.H +***********************************************************************/ +/*********************************************************************** +Vczh Library++ 3.0 +Developer: Zihan Chen(vczh) +GacUI::Native Window::Default Service Implementation + +Interfaces: +***********************************************************************/ + +#ifndef VCZH_PRESENTATION_UTILITIES_SHAREDSERVICES_SHAREDASYNCSERVICE +#define VCZH_PRESENTATION_UTILITIES_SHAREDSERVICES_SHAREDASYNCSERVICE + + +namespace vl +{ + namespace presentation + { + /// + /// A general implementation. + /// + class SharedCallbackService + : public Object + , public INativeCallbackService + , public INativeCallbackInvoker + { + protected: + collections::List listeners; + + public: + SharedCallbackService(); + ~SharedCallbackService(); + + bool InstallListener(INativeControllerListener* listener) override; + bool UninstallListener(INativeControllerListener* listener) override; + INativeCallbackInvoker* Invoker() override; + + void InvokeGlobalTimer() override; + void InvokeClipboardUpdated() override; + void InvokeNativeWindowCreated(INativeWindow* window) override; + void InvokeNativeWindowDestroying(INativeWindow* window) override; + }; + } +} + +#endif + +/*********************************************************************** +.\PLATFORMPROVIDERS\HOSTED\GUIHOSTEDCONTROLLER.H +***********************************************************************/ +/*********************************************************************** +Vczh Library++ 3.0 +Developer: Zihan Chen(vczh) +GacUI::Hosted Window + +Interfaces: + GuiHostedController + +***********************************************************************/ + +#ifndef VCZH_PRESENTATION_GUIHOSTEDCONTROLLER +#define VCZH_PRESENTATION_GUIHOSTEDCONTROLLER + + +namespace vl +{ + namespace presentation + { + +/*********************************************************************** +GuiHostedController +***********************************************************************/ + + class GuiHostedController + : public Object + , protected hosted_window_manager::WindowManager + , protected INativeWindowListener + , protected INativeControllerListener + , public INativeController + , protected INativeAsyncService + , protected INativeScreenService + , protected INativeScreen + , protected INativeWindowService + { + friend class GuiHostedWindow; + friend class elements::GuiHostedGraphicsResourceManager; + protected: + SharedCallbackService callbackService; + hosted_window_manager::WindowManager* wmManager = nullptr; + INativeController* nativeController = nullptr; + elements::GuiHostedGraphicsResourceManager* hostedResourceManager = nullptr; + collections::SortedList> createdWindows; + + INativeWindow* nativeWindow = nullptr; + bool nativeWindowDestroyed = false; + + GuiHostedWindow* mainWindow = nullptr; + GuiHostedWindow* capturingWindow = nullptr; + GuiHostedWindow* enteringWindow = nullptr; + + NativePoint hoveringLocation{ -1,-1 }; + GuiHostedWindow* hoveringWindow = nullptr; + GuiHostedWindow* lastFocusedWindow = nullptr; + + enum class WindowManagerOperation + { + None, + Title, + BorderLeft, + BorderRight, + BorderTop, + BorderBottom, + BorderLeftTop, + BorderRightTop, + BorderLeftBottom, + BorderRightBottom, + }; + WindowManagerOperation wmOperation = WindowManagerOperation::None; + GuiHostedWindow* wmWindow = nullptr; + NativePoint wmRelative; + + NativePoint GetPointInClientSpace(NativePoint location); + GuiHostedWindow* HitTestInClientSpace(NativePoint location); + void UpdateHoveringWindow(Nullable location); + void UpdateEnteringWindow(GuiHostedWindow* window); + + // ============================================================= + // WindowManager + // ============================================================= + + void OnOpened(hosted_window_manager::Window* window) override; + void OnClosed(hosted_window_manager::Window* window) override; + void OnEnabled(hosted_window_manager::Window* window) override; + void OnDisabled(hosted_window_manager::Window* window) override; + void OnGotFocus(hosted_window_manager::Window* window) override; + void OnLostFocus(hosted_window_manager::Window* window) override; + void OnActivated(hosted_window_manager::Window* window) override; + void OnDeactivated(hosted_window_manager::Window* window) override; + + // ============================================================= + // INativeWindowListener + // ============================================================= + + HitTestResult HitTest(NativePoint location) override; + void Moving(NativeRect& bounds, bool fixSizeOnly, bool draggingBorder) override; + void Moved() override; + void DpiChanged(bool preparing) override; + void GotFocus() override; + void LostFocus() override; + void BeforeClosing(bool& cancel) override; + void AfterClosing() override; + void Paint() override; + + GuiHostedWindow* GetSelectedWindow_MouseDown(const NativeWindowMouseInfo& info); + GuiHostedWindow* GetSelectedWindow_MouseMoving(const NativeWindowMouseInfo& info); + GuiHostedWindow* GetSelectedWindow_Other(const NativeWindowMouseInfo& info); + + void PreAction_LeftButtonDown(const NativeWindowMouseInfo& info); + void PreAction_MouseDown(const NativeWindowMouseInfo& info); + void PreAction_MouseMoving(const NativeWindowMouseInfo& info); + void PreAction_Other(const NativeWindowMouseInfo& info); + + void PostAction_LeftButtonUp(GuiHostedWindow* selectedWindow, const NativeWindowMouseInfo& info); + void PostAction_Other(GuiHostedWindow* selectedWindow, const NativeWindowMouseInfo& info); + + template< + void (GuiHostedController::* PreAction)(const NativeWindowMouseInfo&), + GuiHostedWindow* (GuiHostedController::* GetSelectedWindow)(const NativeWindowMouseInfo&), + void (GuiHostedController::* PostAction)(GuiHostedWindow*, const NativeWindowMouseInfo&), + void (INativeWindowListener::* Callback)(const NativeWindowMouseInfo&) + > + void HandleMouseCallback(const NativeWindowMouseInfo& info); + + template< + typename TInfo, + void (INativeWindowListener::* Callback)(const TInfo&) + > + void HandleKeyboardCallback(const TInfo& info); + + void LeftButtonDown(const NativeWindowMouseInfo& info) override; + void LeftButtonUp(const NativeWindowMouseInfo& info) override; + void LeftButtonDoubleClick(const NativeWindowMouseInfo& info) override; + void RightButtonDown(const NativeWindowMouseInfo& info) override; + void RightButtonUp(const NativeWindowMouseInfo& info) override; + void RightButtonDoubleClick(const NativeWindowMouseInfo& info) override; + void MiddleButtonDown(const NativeWindowMouseInfo& info) override; + void MiddleButtonUp(const NativeWindowMouseInfo& info) override; + void MiddleButtonDoubleClick(const NativeWindowMouseInfo& info) override; + void HorizontalWheel(const NativeWindowMouseInfo& info) override; + void VerticalWheel(const NativeWindowMouseInfo& info) override; + void MouseMoving(const NativeWindowMouseInfo& info) override; + void MouseEntered() override; + void MouseLeaved() override; + + void KeyDown(const NativeWindowKeyInfo& info) override; + void KeyUp(const NativeWindowKeyInfo& info) override; + void SysKeyDown(const NativeWindowKeyInfo& info) override; + void SysKeyUp(const NativeWindowKeyInfo& info) override; + void Char(const NativeWindowCharInfo& info) override; + + // ============================================================= + // INativeControllerListener + // ============================================================= + + void GlobalTimer() override; + void ClipboardUpdated() override; + void NativeWindowDestroying(INativeWindow* window) override; + + // ============================================================= + // INativeController + // ============================================================= + + INativeCallbackService* CallbackService() override; + INativeResourceService* ResourceService() override; + INativeAsyncService* AsyncService() override; + INativeClipboardService* ClipboardService() override; + INativeImageService* ImageService() override; + INativeInputService* InputService() override; + INativeDialogService* DialogService() override; + WString GetExecutablePath() override; + + INativeScreenService* ScreenService() override; + INativeWindowService* WindowService() override; + + // ============================================================= + // INativeAsyncService + // ============================================================= + + bool IsInMainThread(INativeWindow* window) override; + void InvokeAsync(const Func& proc) override; + void InvokeInMainThread(INativeWindow* window, const Func& proc) override; + bool InvokeInMainThreadAndWait(INativeWindow* window, const Func& proc, vint milliseconds) override; + Ptr DelayExecute(const Func& proc, vint milliseconds) override; + Ptr DelayExecuteInMainThread(const Func& proc, vint milliseconds) override; + + // ============================================================= + // INativeScreenService + // ============================================================= + + vint GetScreenCount() override; + INativeScreen* GetScreen(vint index) override; + INativeScreen* GetScreen(INativeWindow* window) override; + + // ============================================================= + // INativeScreen + // ============================================================= + + NativeRect GetBounds() override; + NativeRect GetClientBounds() override; + WString GetName() override; + bool IsPrimary() override; + double GetScalingX() override; + double GetScalingY() override; + + // ============================================================= + // INativeWindowService + // ============================================================= + + INativeWindow* CreateNativeWindow(INativeWindow::WindowMode windowMode) override; + void DestroyNativeWindow(INativeWindow* window) override; + INativeWindow* GetMainWindow() override; + INativeWindow* GetWindow(NativePoint location) override; + + void SettingHostedWindowsBeforeRunning(); + void DestroyHostedWindowsAfterRunning(); + void Run(INativeWindow* window) override; + bool RunOneCycle() override; + public: + GuiHostedController(INativeController* _nativeController); + ~GuiHostedController(); + + void Initialize(); + void Finalize(); + }; + } +} + +#endif diff --git a/Import/GacUICompiler.cpp b/Import/GacUICompiler.cpp index 4cccc447..46065e42 100644 --- a/Import/GacUICompiler.cpp +++ b/Import/GacUICompiler.cpp @@ -7700,6 +7700,59 @@ namespace vl return stat; } +/*********************************************************************** +GuiComboButtonInstanceLoader +***********************************************************************/ + +#define BASE_TYPE GuiTemplateControlInstanceLoader + class GuiComboButtonInstanceLoader : public BASE_TYPE + { + protected: + GlobalStringKey _DropdownControl; + + void AddAdditionalArguments(types::ResolvingResult& resolvingResult, const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, GuiResourceError::List& errors, Ptr createControl)override + { + vint indexListControl = arguments.Keys().IndexOf(_DropdownControl); + if (indexListControl != -1) + { + createControl->arguments.Add(arguments.GetByIndex(indexListControl)[0].expression); + } + } + public: + GuiComboButtonInstanceLoader() + :BASE_TYPE(L"presentation::controls::GuiComboButton", theme::ThemeName::ComboBox) + { + _DropdownControl = GlobalStringKey::Get(L"DropdownControl"); + } + + void GetRequiredPropertyNames(GuiResourcePrecompileContext& precompileContext, const TypeInfo& typeInfo, collections::List& propertyNames)override + { + if (CanCreate(typeInfo)) + { + propertyNames.Add(_DropdownControl); + } + BASE_TYPE::GetRequiredPropertyNames(precompileContext, typeInfo, propertyNames); + } + + void GetPropertyNames(GuiResourcePrecompileContext& precompileContext, const TypeInfo& typeInfo, collections::List& propertyNames)override + { + GetRequiredPropertyNames(precompileContext, typeInfo, propertyNames); + BASE_TYPE::GetPropertyNames(precompileContext, typeInfo, propertyNames); + } + + Ptr GetPropertyType(GuiResourcePrecompileContext& precompileContext, const PropertyInfo& propertyInfo)override + { + if (propertyInfo.propertyName == _DropdownControl) + { + auto info = GuiInstancePropertyInfo::Assign(TypeInfoRetriver::CreateTypeInfo()); + info->usage = GuiInstancePropertyInfo::ConstructorArgument; + return info; + } + return BASE_TYPE::GetPropertyType(precompileContext, propertyInfo); + } + }; +#undef BASE_TYPE + /*********************************************************************** GuiComboBoxInstanceLoader ***********************************************************************/ @@ -8088,6 +8141,7 @@ Initialization Ptr(new GuiComboBoxInstanceLoader) ); + manager->SetLoader(Ptr(new GuiComboButtonInstanceLoader)); manager->SetLoader(Ptr(new GuiTreeViewInstanceLoader)); manager->SetLoader(Ptr(new GuiBindableTreeViewInstanceLoader)); manager->SetLoader(Ptr(new GuiBindableDataGridInstanceLoader)); @@ -12870,12 +12924,11 @@ Workflow_GenerateEventHandler } else { - auto type = TypeInfoRetriver::CreateTypeInfo(); for (vint i = 0; i < count; i++) { auto arg = Ptr(new WfFunctionArgument); arg->name.value = L"arg" + itow(i + 1); - arg->type = GetTypeFromTypeInfo(type.Obj()); + arg->type = GetTypeFromTypeInfo(eventInfo->GetHandlerType()->GetElementType()->GetGenericArgument(i + 1)); func->arguments.Add(arg); } } diff --git a/Import/GacUIReflection.cpp b/Import/GacUIReflection.cpp index d5d72106..4e1366b1 100644 --- a/Import/GacUIReflection.cpp +++ b/Import/GacUIReflection.cpp @@ -5,7 +5,7 @@ DEVELOPER: Zihan Chen(vczh) #include "GacUIReflection.h" /*********************************************************************** -.\GUIINSTANCECOMPILEDWORKFLOW.CPP +.\REFLECTION\GUIINSTANCECOMPILEDWORKFLOW.CPP ***********************************************************************/ namespace vl @@ -228,7 +228,7 @@ Plugin } /*********************************************************************** -.\TYPEDESCRIPTORS\GUIREFLECTIONBASIC.CPP +.\REFLECTION\TYPEDESCRIPTORS\GUIREFLECTIONBASIC.CPP ***********************************************************************/ namespace vl @@ -517,6 +517,7 @@ Type Declaration CLASS_MEMBER_PROPERTY_FAST(DefaultFont) CLASS_MEMBER_METHOD(GetSystemCursor, {L"type"}) + CLASS_MEMBER_METHOD(EnumerateFonts, {L"fonts"}) END_INTERFACE_MEMBER(INativeResourceService) BEGIN_INTERFACE_MEMBER_NOPROXY(INativeAsyncService) @@ -638,6 +639,27 @@ Type Declaration ENUM_NAMESPACE_ITEM(FileDialogAddToRecent) END_ENUM_ITEM(INativeDialogService::FileDialogOptions) + BEGIN_ENUM_ITEM(INativeWindowListener::HitTestResult) + ENUM_ITEM_NAMESPACE(INativeWindowListener) + ENUM_NAMESPACE_ITEM(BorderNoSizing) + ENUM_NAMESPACE_ITEM(BorderLeft) + ENUM_NAMESPACE_ITEM(BorderRight) + ENUM_NAMESPACE_ITEM(BorderTop) + ENUM_NAMESPACE_ITEM(BorderBottom) + ENUM_NAMESPACE_ITEM(BorderLeftTop) + ENUM_NAMESPACE_ITEM(BorderRightTop) + ENUM_NAMESPACE_ITEM(BorderLeftBottom) + ENUM_NAMESPACE_ITEM(BorderRightBottom) + ENUM_NAMESPACE_ITEM(Title) + ENUM_NAMESPACE_ITEM(ButtonMinimum) + ENUM_NAMESPACE_ITEM(ButtonMaximum) + ENUM_NAMESPACE_ITEM(ButtonClose) + ENUM_NAMESPACE_ITEM(Client) + ENUM_NAMESPACE_ITEM(Icon) + ENUM_NAMESPACE_ITEM(NoDecision) + END_ENUM_ITEM(INativeWindowListener::HitTestResult) + + // no CallbackService, WindowService, DialogService BEGIN_INTERFACE_MEMBER_NOPROXY(INativeController) CLASS_MEMBER_STATIC_EXTERNALMETHOD(GetCurrentController, NO_PARAMETER, INativeController*(*)(), vl::presentation::GetCurrentController) @@ -872,32 +894,119 @@ Type Declaration ENUM_CLASS_ITEM(InstanceClass) END_ENUM_ITEM(GuiResourceUsage) - BEGIN_INTERFACE_MEMBER_NOPROXY(IGuiResourceManager) - CLASS_MEMBER_STATIC_EXTERNALMETHOD(GetResourceManager, NO_PARAMETER, IGuiResourceManager*(*)(), vl::presentation::GetResourceManager) + BEGIN_INTERFACE_MEMBER_NOPROXY(IGuiResourceManager) + CLASS_MEMBER_STATIC_EXTERNALMETHOD(GetResourceManager, NO_PARAMETER, IGuiResourceManager*(*)(), vl::presentation::GetResourceManager) CLASS_MEMBER_METHOD(SetResource, { L"name" _ L"resource" _ L"usage" }) CLASS_MEMBER_METHOD(GetResource, { L"name" }) CLASS_MEMBER_METHOD(GetResourceFromClassName, { L"name" }) END_INTERFACE_MEMBER(IGuiResourceManager) - BEGIN_ENUM_ITEM(INativeWindowListener::HitTestResult) - ENUM_ITEM_NAMESPACE(INativeWindowListener) - ENUM_NAMESPACE_ITEM(BorderNoSizing) - ENUM_NAMESPACE_ITEM(BorderLeft) - ENUM_NAMESPACE_ITEM(BorderRight) - ENUM_NAMESPACE_ITEM(BorderTop) - ENUM_NAMESPACE_ITEM(BorderBottom) - ENUM_NAMESPACE_ITEM(BorderLeftTop) - ENUM_NAMESPACE_ITEM(BorderRightTop) - ENUM_NAMESPACE_ITEM(BorderLeftBottom) - ENUM_NAMESPACE_ITEM(BorderRightBottom) - ENUM_NAMESPACE_ITEM(Title) - ENUM_NAMESPACE_ITEM(ButtonMinimum) - ENUM_NAMESPACE_ITEM(ButtonMaximum) - ENUM_NAMESPACE_ITEM(ButtonClose) - ENUM_NAMESPACE_ITEM(Client) - ENUM_NAMESPACE_ITEM(Icon) - ENUM_NAMESPACE_ITEM(NoDecision) - END_ENUM_ITEM(INativeWindowListener::HitTestResult) + BEGIN_INTERFACE_MEMBER_NOPROXY(IMessageBoxDialogAction) + CLASS_MEMBER_PROPERTY_READONLY_FAST(Button) + CLASS_MEMBER_METHOD(PerformAction, NO_PARAMETER) + END_INTERFACE_MEMBER(IMessageBoxDialogViewModel) + + BEGIN_INTERFACE_MEMBER_NOPROXY(IMessageBoxDialogViewModel) + CLASS_MEMBER_PROPERTY_READONLY_FAST(Text) + CLASS_MEMBER_PROPERTY_READONLY_FAST(Title) + CLASS_MEMBER_PROPERTY_READONLY_FAST(Icon) + CLASS_MEMBER_PROPERTY_READONLY_FAST(Buttons) + CLASS_MEMBER_PROPERTY_READONLY_FAST(DefaultButton) + CLASS_MEMBER_PROPERTY_READONLY_FAST(Result) + END_INTERFACE_MEMBER(IMessageBoxDialogViewModel) + + BEGIN_INTERFACE_MEMBER_NOPROXY(IDialogConfirmation) + CLASS_MEMBER_PROPERTY_FAST(Confirmed) + END_INTERFACE_MEMBER(IDialogConfirmation) + + BEGIN_INTERFACE_MEMBER_NOPROXY(IColorDialogViewModel) + CLASS_MEMBER_BASE(IDialogConfirmation) + CLASS_MEMBER_PROPERTY_FAST(Color) + END_INTERFACE_MEMBER(IColorDialogViewModel) + + BEGIN_INTERFACE_MEMBER_NOPROXY(ICommonFontDialogViewModel) + CLASS_MEMBER_PROPERTY_READONLY_FAST(FontMustExist) + CLASS_MEMBER_PROPERTY_READONLY_FAST(FontList) + END_INTERFACE_MEMBER(ICommonFontDialogViewModel) + + BEGIN_INTERFACE_MEMBER_NOPROXY(ISimpleFontDialogViewModel) + CLASS_MEMBER_BASE(ICommonFontDialogViewModel) + CLASS_MEMBER_BASE(IDialogConfirmation) + CLASS_MEMBER_PROPERTY_FAST(FontFamily) + CLASS_MEMBER_PROPERTY_FAST(FontSize) + END_INTERFACE_MEMBER(ISimpleFontDialogViewModel) + + BEGIN_INTERFACE_MEMBER_NOPROXY(IFullFontDialogViewModel) + CLASS_MEMBER_BASE(ICommonFontDialogViewModel) + CLASS_MEMBER_BASE(IColorDialogViewModel) + CLASS_MEMBER_PROPERTY_FAST(Font) + CLASS_MEMBER_METHOD(SelectColor, {L"owner"}) + END_INTERFACE_MEMBER(IFullFontDialogViewModel) + + BEGIN_ENUM_ITEM(FileDialogFolderType) + ENUM_CLASS_ITEM(Root) + ENUM_CLASS_ITEM(Placeholder) + ENUM_CLASS_ITEM(Folder) + END_ENUM_ITEM(FileDialogFolderType) + + BEGIN_INTERFACE_MEMBER_NOPROXY(IFileDialogFolder) + CLASS_MEMBER_PROPERTY_READONLY_FAST(Parent) + CLASS_MEMBER_PROPERTY_READONLY_FAST(Type) + CLASS_MEMBER_PROPERTY_READONLY_FAST(FullPath) + CLASS_MEMBER_PROPERTY_READONLY_FAST(Name) + CLASS_MEMBER_PROPERTY_READONLY_FAST(Index) + CLASS_MEMBER_PROPERTY_READONLY_FAST(Folders) + CLASS_MEMBER_METHOD(TryGetFolder, {L"name"}) + END_INTERFACE_MEMBER(IFileDialogFolder) + + BEGIN_ENUM_ITEM(FileDialogFileType) + ENUM_CLASS_ITEM(Placeholder) + ENUM_CLASS_ITEM(Folder) + ENUM_CLASS_ITEM(File) + END_ENUM_ITEM(FileDialogFileType) + + BEGIN_INTERFACE_MEMBER_NOPROXY(IFileDialogFile) + CLASS_MEMBER_PROPERTY_READONLY_FAST(Type) + CLASS_MEMBER_PROPERTY_READONLY_FAST(AssociatedFolder) + CLASS_MEMBER_PROPERTY_READONLY_FAST(Name) + END_INTERFACE_MEMBER(IFileDialogFile) + + BEGIN_INTERFACE_MEMBER_NOPROXY(IFileDialogFilter) + CLASS_MEMBER_PROPERTY_READONLY_FAST(Name) + CLASS_MEMBER_PROPERTY_READONLY_FAST(Filter) + CLASS_MEMBER_PROPERTY_READONLY_FAST(DefaultExtension) + CLASS_MEMBER_METHOD(FilterFile, {L"file"}) + END_INTERFACE_MEMBER(IFileDialogFilter) + + BEGIN_INTERFACE_MEMBER_NOPROXY(IFileDialogViewModel) + CLASS_MEMBER_EVENT(SelectedFilterChanged) + CLASS_MEMBER_EVENT(SelectedFolderChanged) + CLASS_MEMBER_EVENT(IsLoadingFilesChanged) + CLASS_MEMBER_PROPERTY_READONLY_FAST(Title) + CLASS_MEMBER_PROPERTY_READONLY_FAST(EnabledMultipleSelection) + CLASS_MEMBER_PROPERTY_READONLY_FAST(DefaultExtension) + CLASS_MEMBER_PROPERTY_READONLY_FAST(Filters) + CLASS_MEMBER_PROPERTY_EVENT_FAST(SelectedFilter, SelectedFilterChanged) + CLASS_MEMBER_PROPERTY_READONLY_FAST(RootFolder) + CLASS_MEMBER_PROPERTY_EVENT_FAST(SelectedFolder, SelectedFolderChanged) + CLASS_MEMBER_PROPERTY_EVENT_READONLY_FAST(IsLoadingFiles, IsLoadingFilesChanged) + CLASS_MEMBER_PROPERTY_READONLY_FAST(Files) + CLASS_MEMBER_METHOD(RefreshFiles, NO_PARAMETER) + CLASS_MEMBER_METHOD(GetDisplayString, { L"files" }) + CLASS_MEMBER_METHOD(ParseDisplayString, { L"displayString" }) + CLASS_MEMBER_METHOD(TryConfirm, { L"owner" _ L"selection"}) + CLASS_MEMBER_METHOD(InitLocalizedText, + { L"textLoadingFolders" + _ L"textLoadingFiles" + _ L"dialogErrorEmptySelection" + _ L"dialogErrorFileNotExist" + _ L"dialogErrorFileExpected" + _ L"dialogErrorFolderNotExist" + _ L"dialogErrorMultipleSelectionNotEnabled" + _ L"dialogAskCreateFile" + _ L"dialogAskOverrideFile" + }) + END_INTERFACE_MEMBER(IFileDialogViewModel) #undef GUI_TEMPLATE_PROPERTY_REFLECTION #undef _ @@ -938,7 +1047,7 @@ Type Loader } /*********************************************************************** -.\TYPEDESCRIPTORS\GUIREFLECTIONCOMPOSITIONS.CPP +.\REFLECTION\TYPEDESCRIPTORS\GUIREFLECTIONCOMPOSITIONS.CPP ***********************************************************************/ namespace vl @@ -1459,7 +1568,7 @@ Type Loader } /*********************************************************************** -.\TYPEDESCRIPTORS\GUIREFLECTIONCONTROLS.CPP +.\REFLECTION\TYPEDESCRIPTORS\GUIREFLECTIONCONTROLS.CPP ***********************************************************************/ namespace vl @@ -1519,7 +1628,9 @@ Type Declaration (Extra) CLASS_MEMBER_PROPERTY_READONLY_FAST(ExecutableFolder) CLASS_MEMBER_PROPERTY_READONLY_FAST(Windows) - CLASS_MEMBER_METHOD(Run, NO_PARAMETER) + CLASS_MEMBER_METHOD(Run, {L"mainWindow"}) + CLASS_MEMBER_METHOD(RunOneCycle, NO_PARAMETER) + CLASS_MEMBER_METHOD(GetWindowFromNative, {L"nativeWindow"}); CLASS_MEMBER_METHOD(ShowTooltip, {L"owner" _ L"tooltip" _ L"preferredContentWidth" _ L"location"}) CLASS_MEMBER_METHOD(CloseTooltip, NO_PARAMETER) CLASS_MEMBER_METHOD(IsInMainThread, NO_PARAMETER) @@ -2330,7 +2441,7 @@ Type Declaration (Class) CLASS_MEMBER_PROPERTY_FAST(ShortcutKeyManager) CLASS_MEMBER_PROPERTY_READONLY_FAST(RelatedScreen) - CLASS_MEMBER_METHOD(DeleteAfterProcessingAllEvents, NO_PARAMETER) + CLASS_MEMBER_METHOD(DeleteAfterProcessingAllEvents, {L"callback"}) CLASS_MEMBER_METHOD(ForceCalculateSizeImmediately, NO_PARAMETER) CLASS_MEMBER_METHOD(SetBounds, {L"location" _ L"size"}) CLASS_MEMBER_METHOD(Show, NO_PARAMETER) @@ -2361,7 +2472,8 @@ Type Declaration (Class) CLASS_MEMBER_METHOD_OVERLOAD(MoveToScreenCenter, { L"screen" }, void(GuiWindow::*)(INativeScreen*)) CLASS_MEMBER_METHOD(ShowWithOwner, { L"owner" }) CLASS_MEMBER_METHOD(ShowModal, { L"owner" _ L"callback" }) - CLASS_MEMBER_METHOD(ShowModalAndDelete, { L"owner" _ L"callback" }) + CLASS_MEMBER_METHOD_OVERLOAD(ShowModalAndDelete, { L"owner" _ L"callback" }, void(GuiWindow::*)(GuiWindow*, const Func&)) + CLASS_MEMBER_METHOD_OVERLOAD(ShowModalAndDelete, { L"owner" _ L"callbackClosed" _ L"callbackDeleted"}, void(GuiWindow::*)(GuiWindow*, const Func&, const Func&)) CLASS_MEMBER_METHOD(ShowModalAsync, { L"owner" }) END_CLASS_MEMBER(GuiWindow) @@ -2553,6 +2665,11 @@ Type Declaration (Class) CONTROL_CONSTRUCTOR_CONTROLT_TEMPLATE(GuiComboBoxBase) END_CLASS_MEMBER(GuiComboBoxBase) + BEGIN_CLASS_MEMBER(GuiComboButton) + CLASS_MEMBER_BASE(GuiComboBoxBase) + CONTROL_CONSTRUCTOR_CONTROLT_TEMPLATE_INHERITANCE_2(GuiComboButton, GuiControl*, dropdownControl) + END_CLASS_MEMBER(GuiComboButton) + BEGIN_CLASS_MEMBER(GuiComboBoxListControl) CLASS_MEMBER_BASE(GuiComboBoxBase) CONTROL_CONSTRUCTOR_CONTROLT_TEMPLATE_INHERITANCE_2(GuiComboBoxListControl, GuiSelectableListControl*, containedListControl) @@ -2950,7 +3067,7 @@ Type Loader /*********************************************************************** -.\TYPEDESCRIPTORS\GUIREFLECTIONELEMENTS.CPP +.\REFLECTION\TYPEDESCRIPTORS\GUIREFLECTIONELEMENTS.CPP ***********************************************************************/ namespace vl @@ -3256,7 +3373,7 @@ Type Loader } /*********************************************************************** -.\TYPEDESCRIPTORS\GUIREFLECTIONEVENTS.CPP +.\REFLECTION\TYPEDESCRIPTORS\GUIREFLECTIONEVENTS.CPP ***********************************************************************/ namespace vl @@ -3411,7 +3528,7 @@ Type Loader } /*********************************************************************** -.\TYPEDESCRIPTORS\GUIREFLECTIONPLUGIN.CPP +.\REFLECTION\TYPEDESCRIPTORS\GUIREFLECTIONPLUGIN.CPP ***********************************************************************/ /*********************************************************************** @@ -3480,7 +3597,7 @@ namespace vl } /*********************************************************************** -.\TYPEDESCRIPTORS\GUIREFLECTIONTEMPLATES.CPP +.\REFLECTION\TYPEDESCRIPTORS\GUIREFLECTIONTEMPLATES.CPP ***********************************************************************/ namespace vl @@ -3747,3 +3864,637 @@ Type Loader } } } + +/*********************************************************************** +.\UTILITIES\FAKESERVICES\DIALOGS\SOURCE\GUIFAKEDIALOGSERVICEUIREFLECTION.CPP +***********************************************************************/ +/*********************************************************************** +!!!!!! DO NOT MODIFY !!!!!! + +GacGen.exe Resource.xml + +This file is generated by Workflow compiler +https://github.com/vczh-libraries +***********************************************************************/ + + +#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(gaclib_controls::ColorComponentControl) + IMPL_CPP_TYPE_INFO(gaclib_controls::ColorComponentControlConstructor) + IMPL_CPP_TYPE_INFO(gaclib_controls::ColorDialogControl) + IMPL_CPP_TYPE_INFO(gaclib_controls::ColorDialogControlConstructor) + IMPL_CPP_TYPE_INFO(gaclib_controls::ColorDialogWindow) + IMPL_CPP_TYPE_INFO(gaclib_controls::ColorDialogWindowConstructor) + IMPL_CPP_TYPE_INFO(gaclib_controls::DialogStrings) + IMPL_CPP_TYPE_INFO(gaclib_controls::FileDialogWindow) + IMPL_CPP_TYPE_INFO(gaclib_controls::FileDialogWindowConstructor) + IMPL_CPP_TYPE_INFO(gaclib_controls::FilePickerControl) + IMPL_CPP_TYPE_INFO(gaclib_controls::FilePickerControlConstructor) + IMPL_CPP_TYPE_INFO(gaclib_controls::FontNameControl) + IMPL_CPP_TYPE_INFO(gaclib_controls::FontNameControlConstructor) + IMPL_CPP_TYPE_INFO(gaclib_controls::FontSizeControl) + IMPL_CPP_TYPE_INFO(gaclib_controls::FontSizeControlConstructor) + IMPL_CPP_TYPE_INFO(gaclib_controls::FullFontDialogWindow) + IMPL_CPP_TYPE_INFO(gaclib_controls::FullFontDialogWindowConstructor) + IMPL_CPP_TYPE_INFO(gaclib_controls::IDialogStringsStrings) + IMPL_CPP_TYPE_INFO(gaclib_controls::MessageBoxButtonTemplate) + IMPL_CPP_TYPE_INFO(gaclib_controls::MessageBoxButtonTemplateConstructor) + IMPL_CPP_TYPE_INFO(gaclib_controls::MessageBoxWindow) + IMPL_CPP_TYPE_INFO(gaclib_controls::MessageBoxWindowConstructor) + IMPL_CPP_TYPE_INFO(gaclib_controls::SimpleFontDialogWindow) + IMPL_CPP_TYPE_INFO(gaclib_controls::SimpleFontDialogWindowConstructor) + +#ifdef VCZH_DESCRIPTABLEOBJECT_WITH_METADATA +#define _ , + BEGIN_CLASS_MEMBER(::gaclib_controls::ColorComponentControl) + CLASS_MEMBER_BASE(::vl::presentation::controls::GuiCustomControl) + CLASS_MEMBER_BASE(::gaclib_controls::ColorComponentControlConstructor) + CLASS_MEMBER_CONSTRUCTOR(::gaclib_controls::ColorComponentControl*(), NO_PARAMETER) + CLASS_MEMBER_METHOD(GetTextBoxAlt, NO_PARAMETER) + CLASS_MEMBER_METHOD(GetValue, NO_PARAMETER) + CLASS_MEMBER_METHOD(SetTextBoxAlt, { L"__vwsn_value_" }) + CLASS_MEMBER_METHOD(SetValue, { L"__vwsn_value_" }) + CLASS_MEMBER_EVENT(TextBoxAltChanged) + CLASS_MEMBER_EVENT(ValueChanged) + CLASS_MEMBER_FIELD(__vwsn_prop_TextBoxAlt) + CLASS_MEMBER_FIELD(__vwsn_prop_Value) + CLASS_MEMBER_PROPERTY_EVENT(TextBoxAlt, GetTextBoxAlt, SetTextBoxAlt, TextBoxAltChanged) + CLASS_MEMBER_PROPERTY_EVENT(Value, GetValue, SetValue, ValueChanged) + END_CLASS_MEMBER(::gaclib_controls::ColorComponentControl) + + BEGIN_CLASS_MEMBER(::gaclib_controls::ColorComponentControlConstructor) + CLASS_MEMBER_BASE(::vl::reflection::DescriptableObject) + CLASS_MEMBER_CONSTRUCTOR(::vl::Ptr<::gaclib_controls::ColorComponentControlConstructor>(), NO_PARAMETER) + CLASS_MEMBER_METHOD(__vwsn_gaclib_controls_ColorComponentControl_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(self) + CLASS_MEMBER_FIELD(textBox) + CLASS_MEMBER_FIELD(tracker) + END_CLASS_MEMBER(::gaclib_controls::ColorComponentControlConstructor) + + BEGIN_CLASS_MEMBER(::gaclib_controls::ColorDialogControl) + CLASS_MEMBER_BASE(::vl::presentation::controls::GuiCustomControl) + CLASS_MEMBER_BASE(::gaclib_controls::ColorDialogControlConstructor) + CLASS_MEMBER_CONSTRUCTOR(::gaclib_controls::ColorDialogControl*(::vl::Ptr<::vl::presentation::IColorDialogViewModel>), { L"__vwsn_ctor_parameter_ViewModel" }) + CLASS_MEMBER_METHOD(GetStrings, NO_PARAMETER) + CLASS_MEMBER_METHOD(GetValue, NO_PARAMETER) + CLASS_MEMBER_METHOD(GetViewModel, NO_PARAMETER) + CLASS_MEMBER_METHOD(ReadColor, NO_PARAMETER) + CLASS_MEMBER_METHOD(SetStrings, { L"__vwsn_value_" }) + CLASS_MEMBER_METHOD(SetValue, { L"__vwsn_value_" }) + CLASS_MEMBER_EVENT(StringsChanged) + CLASS_MEMBER_EVENT(ValueChanged) + CLASS_MEMBER_FIELD(__vwsn_parameter_ViewModel) + CLASS_MEMBER_FIELD(__vwsn_prop_Strings) + CLASS_MEMBER_FIELD(__vwsn_prop_Value) + CLASS_MEMBER_PROPERTY_EVENT(Strings, GetStrings, SetStrings, StringsChanged) + CLASS_MEMBER_PROPERTY_EVENT(Value, GetValue, SetValue, ValueChanged) + CLASS_MEMBER_PROPERTY_READONLY(ViewModel, GetViewModel) + END_CLASS_MEMBER(::gaclib_controls::ColorDialogControl) + + BEGIN_CLASS_MEMBER(::gaclib_controls::ColorDialogControlConstructor) + CLASS_MEMBER_BASE(::vl::reflection::DescriptableObject) + CLASS_MEMBER_CONSTRUCTOR(::vl::Ptr<::gaclib_controls::ColorDialogControlConstructor>(), NO_PARAMETER) + CLASS_MEMBER_METHOD(__vwsn_gaclib_controls_ColorDialogControl_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_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(__vwsn_precompile_8) + CLASS_MEMBER_FIELD(__vwsn_precompile_9) + CLASS_MEMBER_FIELD(ViewModel) + CLASS_MEMBER_FIELD(colorBlue) + CLASS_MEMBER_FIELD(colorGreen) + CLASS_MEMBER_FIELD(colorRed) + CLASS_MEMBER_FIELD(self) + END_CLASS_MEMBER(::gaclib_controls::ColorDialogControlConstructor) + + BEGIN_CLASS_MEMBER(::gaclib_controls::ColorDialogWindow) + CLASS_MEMBER_BASE(::vl::presentation::controls::GuiWindow) + CLASS_MEMBER_BASE(::gaclib_controls::ColorDialogWindowConstructor) + CLASS_MEMBER_CONSTRUCTOR(::gaclib_controls::ColorDialogWindow*(::vl::Ptr<::vl::presentation::IColorDialogViewModel>), { L"__vwsn_ctor_parameter_ViewModel" }) + CLASS_MEMBER_METHOD(GetStrings, NO_PARAMETER) + CLASS_MEMBER_METHOD(GetViewModel, NO_PARAMETER) + CLASS_MEMBER_METHOD(SetStrings, { L"__vwsn_value_" }) + CLASS_MEMBER_EVENT(StringsChanged) + CLASS_MEMBER_FIELD(__vwsn_parameter_ViewModel) + CLASS_MEMBER_FIELD(__vwsn_prop_Strings) + CLASS_MEMBER_PROPERTY_EVENT(Strings, GetStrings, SetStrings, StringsChanged) + CLASS_MEMBER_PROPERTY_READONLY(ViewModel, GetViewModel) + END_CLASS_MEMBER(::gaclib_controls::ColorDialogWindow) + + BEGIN_CLASS_MEMBER(::gaclib_controls::ColorDialogWindowConstructor) + CLASS_MEMBER_BASE(::vl::reflection::DescriptableObject) + CLASS_MEMBER_CONSTRUCTOR(::vl::Ptr<::gaclib_controls::ColorDialogWindowConstructor>(), NO_PARAMETER) + CLASS_MEMBER_METHOD(__vwsn_gaclib_controls_ColorDialogWindow_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(__vwsn_precompile_8) + CLASS_MEMBER_FIELD(ViewModel) + CLASS_MEMBER_FIELD(colorControl) + CLASS_MEMBER_FIELD(self) + END_CLASS_MEMBER(::gaclib_controls::ColorDialogWindowConstructor) + + BEGIN_CLASS_MEMBER(::gaclib_controls::DialogStrings) + CLASS_MEMBER_BASE(::vl::reflection::DescriptableObject) + CLASS_MEMBER_CONSTRUCTOR(::vl::Ptr<::gaclib_controls::DialogStrings>(), NO_PARAMETER) + CLASS_MEMBER_STATIC_METHOD(__vwsn_ls_First, { L"__vwsn_ls_formats" }) + CLASS_MEMBER_STATIC_METHOD(Get, { L"__vwsn_ls_locale" }) + END_CLASS_MEMBER(::gaclib_controls::DialogStrings) + + BEGIN_CLASS_MEMBER(::gaclib_controls::FileDialogWindow) + CLASS_MEMBER_BASE(::vl::presentation::controls::GuiWindow) + CLASS_MEMBER_BASE(::gaclib_controls::FileDialogWindowConstructor) + CLASS_MEMBER_CONSTRUCTOR(::gaclib_controls::FileDialogWindow*(::vl::Ptr<::vl::presentation::IFileDialogViewModel>), { L"__vwsn_ctor_parameter_ViewModel" }) + CLASS_MEMBER_METHOD(__vwsn_instance_ctor_, NO_PARAMETER) + CLASS_MEMBER_METHOD(GetStrings, NO_PARAMETER) + CLASS_MEMBER_METHOD(GetViewModel, NO_PARAMETER) + CLASS_MEMBER_METHOD(MakeOpenFileDialog, NO_PARAMETER) + CLASS_MEMBER_METHOD(MakeSaveFileDialog, NO_PARAMETER) + CLASS_MEMBER_METHOD(SetStrings, { L"__vwsn_value_" }) + CLASS_MEMBER_EVENT(StringsChanged) + CLASS_MEMBER_FIELD(__vwsn_parameter_ViewModel) + CLASS_MEMBER_FIELD(__vwsn_prop_Strings) + CLASS_MEMBER_PROPERTY_EVENT(Strings, GetStrings, SetStrings, StringsChanged) + CLASS_MEMBER_PROPERTY_READONLY(ViewModel, GetViewModel) + END_CLASS_MEMBER(::gaclib_controls::FileDialogWindow) + + BEGIN_CLASS_MEMBER(::gaclib_controls::FileDialogWindowConstructor) + CLASS_MEMBER_BASE(::vl::reflection::DescriptableObject) + CLASS_MEMBER_CONSTRUCTOR(::vl::Ptr<::gaclib_controls::FileDialogWindowConstructor>(), NO_PARAMETER) + CLASS_MEMBER_METHOD(__vwsn_gaclib_controls_FileDialogWindow_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(ViewModel) + CLASS_MEMBER_FIELD(buttonOK) + CLASS_MEMBER_FIELD(filePickerControl) + CLASS_MEMBER_FIELD(self) + END_CLASS_MEMBER(::gaclib_controls::FileDialogWindowConstructor) + + BEGIN_CLASS_MEMBER(::gaclib_controls::FilePickerControl) + CLASS_MEMBER_BASE(::vl::presentation::controls::GuiCustomControl) + CLASS_MEMBER_BASE(::gaclib_controls::FilePickerControlConstructor) + CLASS_MEMBER_CONSTRUCTOR(::gaclib_controls::FilePickerControl*(::vl::Ptr<::vl::presentation::IFileDialogViewModel>), { L"__vwsn_ctor_parameter_ViewModel" }) + CLASS_MEMBER_METHOD(__vwsn_instance_ctor_, NO_PARAMETER) + CLASS_MEMBER_METHOD(CreateFileFilter, { L"filter" }) + CLASS_MEMBER_METHOD(GetSelectedFiles, NO_PARAMETER) + CLASS_MEMBER_METHOD(GetSelection, NO_PARAMETER) + CLASS_MEMBER_METHOD(GetStrings, NO_PARAMETER) + CLASS_MEMBER_METHOD(GetViewModel, NO_PARAMETER) + CLASS_MEMBER_METHOD(LocateSelectedFolderInTreeView, NO_PARAMETER) + CLASS_MEMBER_METHOD(SetStrings, { L"__vwsn_value_" }) + CLASS_MEMBER_EVENT(RequestClose) + CLASS_MEMBER_EVENT(StringsChanged) + CLASS_MEMBER_FIELD(__vwsn_parameter_ViewModel) + CLASS_MEMBER_FIELD(__vwsn_prop_Strings) + CLASS_MEMBER_PROPERTY_READONLY(Selection, GetSelection) + CLASS_MEMBER_PROPERTY_EVENT(Strings, GetStrings, SetStrings, StringsChanged) + CLASS_MEMBER_PROPERTY_READONLY(ViewModel, GetViewModel) + CLASS_MEMBER_FIELD(imageFile) + CLASS_MEMBER_FIELD(imageFolder) + END_CLASS_MEMBER(::gaclib_controls::FilePickerControl) + + BEGIN_CLASS_MEMBER(::gaclib_controls::FilePickerControlConstructor) + CLASS_MEMBER_BASE(::vl::reflection::DescriptableObject) + CLASS_MEMBER_CONSTRUCTOR(::vl::Ptr<::gaclib_controls::FilePickerControlConstructor>(), NO_PARAMETER) + CLASS_MEMBER_METHOD(__vwsn_gaclib_controls_FilePickerControl_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_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(ViewModel) + CLASS_MEMBER_FIELD(comboBox) + CLASS_MEMBER_FIELD(dataGrid) + CLASS_MEMBER_FIELD(self) + CLASS_MEMBER_FIELD(textBox) + CLASS_MEMBER_FIELD(treeView) + END_CLASS_MEMBER(::gaclib_controls::FilePickerControlConstructor) + + BEGIN_CLASS_MEMBER(::gaclib_controls::FontNameControl) + CLASS_MEMBER_BASE(::vl::presentation::controls::GuiCustomControl) + CLASS_MEMBER_BASE(::gaclib_controls::FontNameControlConstructor) + CLASS_MEMBER_CONSTRUCTOR(::gaclib_controls::FontNameControl*(::vl::Ptr<::vl::presentation::ICommonFontDialogViewModel>), { L"__vwsn_ctor_parameter_ViewModel" }) + CLASS_MEMBER_METHOD(GetLegal, NO_PARAMETER) + CLASS_MEMBER_METHOD(GetStrings, NO_PARAMETER) + CLASS_MEMBER_METHOD(GetValue, NO_PARAMETER) + CLASS_MEMBER_METHOD(GetViewModel, NO_PARAMETER) + CLASS_MEMBER_METHOD(InitValue, { L"value" }) + CLASS_MEMBER_METHOD(SetLegal, { L"__vwsn_value_" }) + CLASS_MEMBER_METHOD(SetStrings, { L"__vwsn_value_" }) + CLASS_MEMBER_METHOD(SetValue, { L"__vwsn_value_" }) + CLASS_MEMBER_METHOD(UpdateSelectedIndex, NO_PARAMETER) + CLASS_MEMBER_EVENT(LegalChanged) + CLASS_MEMBER_EVENT(StringsChanged) + CLASS_MEMBER_EVENT(ValueChanged) + CLASS_MEMBER_FIELD(__vwsn_parameter_ViewModel) + CLASS_MEMBER_FIELD(__vwsn_prop_Legal) + CLASS_MEMBER_FIELD(__vwsn_prop_Strings) + CLASS_MEMBER_FIELD(__vwsn_prop_Value) + CLASS_MEMBER_PROPERTY_EVENT(Legal, GetLegal, SetLegal, LegalChanged) + CLASS_MEMBER_PROPERTY_EVENT(Strings, GetStrings, SetStrings, StringsChanged) + CLASS_MEMBER_PROPERTY_EVENT(Value, GetValue, SetValue, ValueChanged) + CLASS_MEMBER_PROPERTY_READONLY(ViewModel, GetViewModel) + END_CLASS_MEMBER(::gaclib_controls::FontNameControl) + + BEGIN_CLASS_MEMBER(::gaclib_controls::FontNameControlConstructor) + CLASS_MEMBER_BASE(::vl::reflection::DescriptableObject) + CLASS_MEMBER_CONSTRUCTOR(::vl::Ptr<::gaclib_controls::FontNameControlConstructor>(), NO_PARAMETER) + CLASS_MEMBER_METHOD(__vwsn_gaclib_controls_FontNameControl_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(ViewModel) + CLASS_MEMBER_FIELD(self) + CLASS_MEMBER_FIELD(textBox) + CLASS_MEMBER_FIELD(textList) + END_CLASS_MEMBER(::gaclib_controls::FontNameControlConstructor) + + BEGIN_CLASS_MEMBER(::gaclib_controls::FontSizeControl) + CLASS_MEMBER_BASE(::vl::presentation::controls::GuiCustomControl) + CLASS_MEMBER_BASE(::gaclib_controls::FontSizeControlConstructor) + CLASS_MEMBER_CONSTRUCTOR(::gaclib_controls::FontSizeControl*(), NO_PARAMETER) + CLASS_MEMBER_METHOD(GetLegal, NO_PARAMETER) + CLASS_MEMBER_METHOD(GetSizeList, NO_PARAMETER) + CLASS_MEMBER_METHOD(GetStrings, NO_PARAMETER) + CLASS_MEMBER_METHOD(GetValue, NO_PARAMETER) + CLASS_MEMBER_METHOD(InitValue, { L"value" }) + CLASS_MEMBER_METHOD(SetLegal, { L"__vwsn_value_" }) + CLASS_MEMBER_METHOD(SetSizeList, { L"__vwsn_value_" }) + CLASS_MEMBER_METHOD(SetStrings, { L"__vwsn_value_" }) + CLASS_MEMBER_METHOD(SetValue, { L"__vwsn_value_" }) + CLASS_MEMBER_METHOD(UpdateSelectedIndex, NO_PARAMETER) + CLASS_MEMBER_EVENT(LegalChanged) + CLASS_MEMBER_EVENT(StringsChanged) + CLASS_MEMBER_EVENT(ValueChanged) + CLASS_MEMBER_FIELD(__vwsn_prop_Legal) + CLASS_MEMBER_FIELD(__vwsn_prop_SizeList) + CLASS_MEMBER_FIELD(__vwsn_prop_Strings) + CLASS_MEMBER_FIELD(__vwsn_prop_Value) + CLASS_MEMBER_PROPERTY_EVENT(Legal, GetLegal, SetLegal, LegalChanged) + CLASS_MEMBER_PROPERTY_READONLY(SizeList, GetSizeList) + CLASS_MEMBER_PROPERTY_EVENT(Strings, GetStrings, SetStrings, StringsChanged) + CLASS_MEMBER_PROPERTY_EVENT(Value, GetValue, SetValue, ValueChanged) + END_CLASS_MEMBER(::gaclib_controls::FontSizeControl) + + BEGIN_CLASS_MEMBER(::gaclib_controls::FontSizeControlConstructor) + CLASS_MEMBER_BASE(::vl::reflection::DescriptableObject) + CLASS_MEMBER_CONSTRUCTOR(::vl::Ptr<::gaclib_controls::FontSizeControlConstructor>(), NO_PARAMETER) + CLASS_MEMBER_METHOD(__vwsn_gaclib_controls_FontSizeControl_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(self) + CLASS_MEMBER_FIELD(textBox) + CLASS_MEMBER_FIELD(textList) + END_CLASS_MEMBER(::gaclib_controls::FontSizeControlConstructor) + + BEGIN_CLASS_MEMBER(::gaclib_controls::FullFontDialogWindow) + CLASS_MEMBER_BASE(::vl::presentation::controls::GuiWindow) + CLASS_MEMBER_BASE(::gaclib_controls::FullFontDialogWindowConstructor) + CLASS_MEMBER_CONSTRUCTOR(::gaclib_controls::FullFontDialogWindow*(::vl::Ptr<::vl::presentation::IFullFontDialogViewModel>), { L"__vwsn_ctor_parameter_ViewModel" }) + CLASS_MEMBER_METHOD(__vwsn_instance_ctor_, NO_PARAMETER) + CLASS_MEMBER_METHOD(GetStrings, NO_PARAMETER) + CLASS_MEMBER_METHOD(GetViewModel, NO_PARAMETER) + CLASS_MEMBER_METHOD(SetStrings, { L"__vwsn_value_" }) + CLASS_MEMBER_EVENT(StringsChanged) + CLASS_MEMBER_FIELD(__vwsn_parameter_ViewModel) + CLASS_MEMBER_FIELD(__vwsn_prop_Strings) + CLASS_MEMBER_PROPERTY_EVENT(Strings, GetStrings, SetStrings, StringsChanged) + CLASS_MEMBER_PROPERTY_READONLY(ViewModel, GetViewModel) + END_CLASS_MEMBER(::gaclib_controls::FullFontDialogWindow) + + BEGIN_CLASS_MEMBER(::gaclib_controls::FullFontDialogWindowConstructor) + CLASS_MEMBER_BASE(::vl::reflection::DescriptableObject) + CLASS_MEMBER_CONSTRUCTOR(::vl::Ptr<::gaclib_controls::FullFontDialogWindowConstructor>(), NO_PARAMETER) + CLASS_MEMBER_METHOD(__vwsn_gaclib_controls_FullFontDialogWindow_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_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(ViewModel) + CLASS_MEMBER_FIELD(checkBold) + CLASS_MEMBER_FIELD(checkHAA) + CLASS_MEMBER_FIELD(checkItalic) + CLASS_MEMBER_FIELD(checkUnderline) + CLASS_MEMBER_FIELD(checkVAA) + CLASS_MEMBER_FIELD(colorBackground) + CLASS_MEMBER_FIELD(colorBounds) + CLASS_MEMBER_FIELD(nameControl) + CLASS_MEMBER_FIELD(self) + CLASS_MEMBER_FIELD(sizeControl) + END_CLASS_MEMBER(::gaclib_controls::FullFontDialogWindowConstructor) + + BEGIN_INTERFACE_MEMBER(::gaclib_controls::IDialogStringsStrings) + CLASS_MEMBER_BASE(::vl::reflection::IDescriptable) + CLASS_MEMBER_METHOD(Abort, NO_PARAMETER) + CLASS_MEMBER_METHOD(Blue, NO_PARAMETER) + CLASS_MEMBER_METHOD(Bold, NO_PARAMETER) + CLASS_MEMBER_METHOD(Cancel, NO_PARAMETER) + CLASS_MEMBER_METHOD(Color, NO_PARAMETER) + CLASS_MEMBER_METHOD(ColorDialogTitle, NO_PARAMETER) + CLASS_MEMBER_METHOD(Continue, NO_PARAMETER) + CLASS_MEMBER_METHOD(FileDialogAskCreateFile, NO_PARAMETER) + CLASS_MEMBER_METHOD(FileDialogAskOverrideFile, NO_PARAMETER) + CLASS_MEMBER_METHOD(FileDialogErrorEmptySelection, NO_PARAMETER) + CLASS_MEMBER_METHOD(FileDialogErrorFileExpected, NO_PARAMETER) + CLASS_MEMBER_METHOD(FileDialogErrorFileNotExist, NO_PARAMETER) + CLASS_MEMBER_METHOD(FileDialogErrorFolderNotExist, NO_PARAMETER) + CLASS_MEMBER_METHOD(FileDialogErrorMultipleSelectionNotEnabled, NO_PARAMETER) + CLASS_MEMBER_METHOD(FileDialogFileName, NO_PARAMETER) + CLASS_MEMBER_METHOD(FileDialogOpen, NO_PARAMETER) + CLASS_MEMBER_METHOD(FileDialogSave, NO_PARAMETER) + CLASS_MEMBER_METHOD(FileDialogTextLoadingFiles, NO_PARAMETER) + CLASS_MEMBER_METHOD(FileDialogTextLoadingFolders, NO_PARAMETER) + CLASS_MEMBER_METHOD(FontColorGroup, NO_PARAMETER) + CLASS_MEMBER_METHOD(FontColorGroup2, NO_PARAMETER) + CLASS_MEMBER_METHOD(FontDialogTitle, NO_PARAMETER) + CLASS_MEMBER_METHOD(FontEffectGroup, NO_PARAMETER) + CLASS_MEMBER_METHOD(FontNameGroup, NO_PARAMETER) + CLASS_MEMBER_METHOD(FontPreviewGroup, NO_PARAMETER) + CLASS_MEMBER_METHOD(FontSizeGroup, NO_PARAMETER) + CLASS_MEMBER_METHOD(Green, NO_PARAMETER) + CLASS_MEMBER_METHOD(HAA, NO_PARAMETER) + CLASS_MEMBER_METHOD(Ignore, NO_PARAMETER) + CLASS_MEMBER_METHOD(Italic, NO_PARAMETER) + CLASS_MEMBER_METHOD(No, NO_PARAMETER) + CLASS_MEMBER_METHOD(OK, NO_PARAMETER) + CLASS_MEMBER_METHOD(Red, NO_PARAMETER) + CLASS_MEMBER_METHOD(Retry, NO_PARAMETER) + CLASS_MEMBER_METHOD(TryAgain, NO_PARAMETER) + CLASS_MEMBER_METHOD(Underline, NO_PARAMETER) + CLASS_MEMBER_METHOD(VAA, NO_PARAMETER) + CLASS_MEMBER_METHOD(Yes, NO_PARAMETER) + END_INTERFACE_MEMBER(::gaclib_controls::IDialogStringsStrings) + + BEGIN_CLASS_MEMBER(::gaclib_controls::MessageBoxButtonTemplate) + CLASS_MEMBER_BASE(::vl::presentation::templates::GuiControlTemplate) + CLASS_MEMBER_BASE(::gaclib_controls::MessageBoxButtonTemplateConstructor) + CLASS_MEMBER_CONSTRUCTOR(::gaclib_controls::MessageBoxButtonTemplate*(::vl::Ptr<::vl::presentation::IMessageBoxDialogAction>), { L"__vwsn_ctor_parameter_Action" }) + CLASS_MEMBER_METHOD(GetAction, NO_PARAMETER) + CLASS_MEMBER_METHOD(GetButtonAlt, { L"button" }) + CLASS_MEMBER_METHOD(GetButtonText, { L"button" _ L"strings" }) + CLASS_MEMBER_METHOD(GetStrings, NO_PARAMETER) + CLASS_MEMBER_METHOD(SetStrings, { L"__vwsn_value_" }) + CLASS_MEMBER_EVENT(StringsChanged) + CLASS_MEMBER_FIELD(__vwsn_parameter_Action) + CLASS_MEMBER_FIELD(__vwsn_prop_Strings) + CLASS_MEMBER_PROPERTY_READONLY(Action, GetAction) + CLASS_MEMBER_PROPERTY_EVENT(Strings, GetStrings, SetStrings, StringsChanged) + END_CLASS_MEMBER(::gaclib_controls::MessageBoxButtonTemplate) + + BEGIN_CLASS_MEMBER(::gaclib_controls::MessageBoxButtonTemplateConstructor) + CLASS_MEMBER_BASE(::vl::reflection::DescriptableObject) + CLASS_MEMBER_CONSTRUCTOR(::vl::Ptr<::gaclib_controls::MessageBoxButtonTemplateConstructor>(), NO_PARAMETER) + CLASS_MEMBER_METHOD(__vwsn_gaclib_controls_MessageBoxButtonTemplate_Initialize, { L"__vwsn_this_" }) + CLASS_MEMBER_FIELD(__vwsn_precompile_0) + CLASS_MEMBER_FIELD(__vwsn_precompile_1) + CLASS_MEMBER_FIELD(Action) + CLASS_MEMBER_FIELD(self) + END_CLASS_MEMBER(::gaclib_controls::MessageBoxButtonTemplateConstructor) + + BEGIN_CLASS_MEMBER(::gaclib_controls::MessageBoxWindow) + CLASS_MEMBER_BASE(::vl::presentation::controls::GuiWindow) + CLASS_MEMBER_BASE(::gaclib_controls::MessageBoxWindowConstructor) + CLASS_MEMBER_CONSTRUCTOR(::gaclib_controls::MessageBoxWindow*(::vl::Ptr<::vl::presentation::IMessageBoxDialogViewModel>), { L"__vwsn_ctor_parameter_ViewModel" }) + CLASS_MEMBER_METHOD(GetIcon, { L"icon" }) + CLASS_MEMBER_METHOD(GetViewModel, NO_PARAMETER) + CLASS_MEMBER_FIELD(__vwsn_parameter_ViewModel) + CLASS_MEMBER_PROPERTY_READONLY(ViewModel, GetViewModel) + END_CLASS_MEMBER(::gaclib_controls::MessageBoxWindow) + + BEGIN_CLASS_MEMBER(::gaclib_controls::MessageBoxWindowConstructor) + CLASS_MEMBER_BASE(::vl::reflection::DescriptableObject) + CLASS_MEMBER_CONSTRUCTOR(::vl::Ptr<::gaclib_controls::MessageBoxWindowConstructor>(), NO_PARAMETER) + CLASS_MEMBER_METHOD(__vwsn_gaclib_controls_MessageBoxWindow_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_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(__vwsn_precompile_8) + CLASS_MEMBER_FIELD(__vwsn_precompile_9) + CLASS_MEMBER_FIELD(ViewModel) + CLASS_MEMBER_FIELD(self) + END_CLASS_MEMBER(::gaclib_controls::MessageBoxWindowConstructor) + + BEGIN_CLASS_MEMBER(::gaclib_controls::SimpleFontDialogWindow) + CLASS_MEMBER_BASE(::vl::presentation::controls::GuiWindow) + CLASS_MEMBER_BASE(::gaclib_controls::SimpleFontDialogWindowConstructor) + CLASS_MEMBER_CONSTRUCTOR(::gaclib_controls::SimpleFontDialogWindow*(::vl::Ptr<::vl::presentation::ISimpleFontDialogViewModel>), { L"__vwsn_ctor_parameter_ViewModel" }) + CLASS_MEMBER_METHOD(__vwsn_instance_ctor_, NO_PARAMETER) + CLASS_MEMBER_METHOD(GetStrings, NO_PARAMETER) + CLASS_MEMBER_METHOD(GetViewModel, NO_PARAMETER) + CLASS_MEMBER_METHOD(SetStrings, { L"__vwsn_value_" }) + CLASS_MEMBER_EVENT(StringsChanged) + CLASS_MEMBER_FIELD(__vwsn_parameter_ViewModel) + CLASS_MEMBER_FIELD(__vwsn_prop_Strings) + CLASS_MEMBER_PROPERTY_EVENT(Strings, GetStrings, SetStrings, StringsChanged) + CLASS_MEMBER_PROPERTY_READONLY(ViewModel, GetViewModel) + END_CLASS_MEMBER(::gaclib_controls::SimpleFontDialogWindow) + + BEGIN_CLASS_MEMBER(::gaclib_controls::SimpleFontDialogWindowConstructor) + CLASS_MEMBER_BASE(::vl::reflection::DescriptableObject) + CLASS_MEMBER_CONSTRUCTOR(::vl::Ptr<::gaclib_controls::SimpleFontDialogWindowConstructor>(), NO_PARAMETER) + CLASS_MEMBER_METHOD(__vwsn_gaclib_controls_SimpleFontDialogWindow_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_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(ViewModel) + CLASS_MEMBER_FIELD(nameControl) + CLASS_MEMBER_FIELD(self) + CLASS_MEMBER_FIELD(sizeControl) + END_CLASS_MEMBER(::gaclib_controls::SimpleFontDialogWindowConstructor) + +#undef _ + class GuiFakeDialogServiceUITypeLoader : public Object, public ITypeLoader + { + public: + void Load(ITypeManager* manager) + { + ADD_TYPE_INFO(::gaclib_controls::ColorComponentControl) + ADD_TYPE_INFO(::gaclib_controls::ColorComponentControlConstructor) + ADD_TYPE_INFO(::gaclib_controls::ColorDialogControl) + ADD_TYPE_INFO(::gaclib_controls::ColorDialogControlConstructor) + ADD_TYPE_INFO(::gaclib_controls::ColorDialogWindow) + ADD_TYPE_INFO(::gaclib_controls::ColorDialogWindowConstructor) + ADD_TYPE_INFO(::gaclib_controls::DialogStrings) + ADD_TYPE_INFO(::gaclib_controls::FileDialogWindow) + ADD_TYPE_INFO(::gaclib_controls::FileDialogWindowConstructor) + ADD_TYPE_INFO(::gaclib_controls::FilePickerControl) + ADD_TYPE_INFO(::gaclib_controls::FilePickerControlConstructor) + ADD_TYPE_INFO(::gaclib_controls::FontNameControl) + ADD_TYPE_INFO(::gaclib_controls::FontNameControlConstructor) + ADD_TYPE_INFO(::gaclib_controls::FontSizeControl) + ADD_TYPE_INFO(::gaclib_controls::FontSizeControlConstructor) + ADD_TYPE_INFO(::gaclib_controls::FullFontDialogWindow) + ADD_TYPE_INFO(::gaclib_controls::FullFontDialogWindowConstructor) + ADD_TYPE_INFO(::gaclib_controls::IDialogStringsStrings) + ADD_TYPE_INFO(::gaclib_controls::MessageBoxButtonTemplate) + ADD_TYPE_INFO(::gaclib_controls::MessageBoxButtonTemplateConstructor) + ADD_TYPE_INFO(::gaclib_controls::MessageBoxWindow) + ADD_TYPE_INFO(::gaclib_controls::MessageBoxWindowConstructor) + ADD_TYPE_INFO(::gaclib_controls::SimpleFontDialogWindow) + ADD_TYPE_INFO(::gaclib_controls::SimpleFontDialogWindowConstructor) + } + + void Unload(ITypeManager* manager) + { + } + }; +#endif +#endif + + bool LoadGuiFakeDialogServiceUITypes() + { +#ifdef VCZH_DESCRIPTABLEOBJECT_WITH_METADATA + if (auto manager = GetGlobalTypeManager()) + { + return manager->AddTypeLoader(Ptr(new GuiFakeDialogServiceUITypeLoader)); + } +#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 + diff --git a/Import/GacUIReflection.h b/Import/GacUIReflection.h index ca82a700..babc73f8 100644 --- a/Import/GacUIReflection.h +++ b/Import/GacUIReflection.h @@ -13,7 +13,7 @@ DEVELOPER: Zihan Chen(vczh) #include "VlppWorkflowRuntime.h" /*********************************************************************** -.\GUIINSTANCECOMPILEDWORKFLOW.H +.\REFLECTION\GUIINSTANCECOMPILEDWORKFLOW.H ***********************************************************************/ /*********************************************************************** Vczh Library++ 3.0 @@ -76,7 +76,7 @@ namespace vl #endif /*********************************************************************** -.\TYPEDESCRIPTORS\GUIREFLECTIONPLUGIN.H +.\REFLECTION\TYPEDESCRIPTORS\GUIREFLECTIONPLUGIN.H ***********************************************************************/ /*********************************************************************** Vczh Library++ 3.0 @@ -153,6 +153,7 @@ Type List (Basic) F(presentation::INativeDialogService::ColorDialogCustomColorOptions)\ F(presentation::INativeDialogService::FileDialogTypes)\ F(presentation::INativeDialogService::FileDialogOptions)\ + F(presentation::INativeWindowListener::HitTestResult)\ F(presentation::INativeController)\ F(presentation::GuiImageData)\ F(presentation::GuiTextData)\ @@ -182,7 +183,19 @@ Type List (Basic) F(presentation::GuiResourcePathResolver)\ F(presentation::GuiResourceUsage)\ F(presentation::IGuiResourceManager)\ - F(presentation::INativeWindowListener::HitTestResult)\ + F(presentation::IMessageBoxDialogAction)\ + F(presentation::IMessageBoxDialogViewModel)\ + F(presentation::IDialogConfirmation)\ + F(presentation::IColorDialogViewModel)\ + F(presentation::ICommonFontDialogViewModel)\ + F(presentation::ISimpleFontDialogViewModel)\ + F(presentation::IFullFontDialogViewModel)\ + F(presentation::FileDialogFolderType)\ + F(presentation::IFileDialogFolder)\ + F(presentation::FileDialogFileType)\ + F(presentation::IFileDialogFile)\ + F(presentation::IFileDialogFilter)\ + F(presentation::IFileDialogViewModel)\ /*********************************************************************** Type List (Elements) @@ -453,6 +466,7 @@ Type List (Controls) F(presentation::controls::GuiVirtualTreeView)\ F(presentation::controls::GuiTreeView)\ F(presentation::controls::GuiComboBoxBase)\ + F(presentation::controls::GuiComboButton)\ F(presentation::controls::GuiComboBoxListControl)\ F(presentation::controls::GuiToolstripMenu)\ F(presentation::controls::GuiToolstripMenuBar)\ @@ -1191,3 +1205,242 @@ Interface Proxy (Controls) } #endif + +/*********************************************************************** +.\UTILITIES\FAKESERVICES\DIALOGS\SOURCE\GUIFAKEDIALOGSERVICEUIREFLECTION.H +***********************************************************************/ +/*********************************************************************** +!!!!!! DO NOT MODIFY !!!!!! + +GacGen.exe Resource.xml + +This file is generated by Workflow compiler +https://github.com/vczh-libraries +***********************************************************************/ + +#ifndef VCZH_WORKFLOW_COMPILER_GENERATED_GUIFAKEDIALOGSERVICEUIREFLECTION +#define VCZH_WORKFLOW_COMPILER_GENERATED_GUIFAKEDIALOGSERVICEUIREFLECTION + +#ifndef VCZH_DEBUG_NO_REFLECTION +#endif + +#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(::gaclib_controls::ColorComponentControl) + DECL_TYPE_INFO(::gaclib_controls::ColorComponentControlConstructor) + DECL_TYPE_INFO(::gaclib_controls::ColorDialogControl) + DECL_TYPE_INFO(::gaclib_controls::ColorDialogControlConstructor) + DECL_TYPE_INFO(::gaclib_controls::ColorDialogWindow) + DECL_TYPE_INFO(::gaclib_controls::ColorDialogWindowConstructor) + DECL_TYPE_INFO(::gaclib_controls::DialogStrings) + DECL_TYPE_INFO(::gaclib_controls::FileDialogWindow) + DECL_TYPE_INFO(::gaclib_controls::FileDialogWindowConstructor) + DECL_TYPE_INFO(::gaclib_controls::FilePickerControl) + DECL_TYPE_INFO(::gaclib_controls::FilePickerControlConstructor) + DECL_TYPE_INFO(::gaclib_controls::FontNameControl) + DECL_TYPE_INFO(::gaclib_controls::FontNameControlConstructor) + DECL_TYPE_INFO(::gaclib_controls::FontSizeControl) + DECL_TYPE_INFO(::gaclib_controls::FontSizeControlConstructor) + DECL_TYPE_INFO(::gaclib_controls::FullFontDialogWindow) + DECL_TYPE_INFO(::gaclib_controls::FullFontDialogWindowConstructor) + DECL_TYPE_INFO(::gaclib_controls::IDialogStringsStrings) + DECL_TYPE_INFO(::gaclib_controls::MessageBoxButtonTemplate) + DECL_TYPE_INFO(::gaclib_controls::MessageBoxButtonTemplateConstructor) + DECL_TYPE_INFO(::gaclib_controls::MessageBoxWindow) + DECL_TYPE_INFO(::gaclib_controls::MessageBoxWindowConstructor) + DECL_TYPE_INFO(::gaclib_controls::SimpleFontDialogWindow) + DECL_TYPE_INFO(::gaclib_controls::SimpleFontDialogWindowConstructor) + +#ifdef VCZH_DESCRIPTABLEOBJECT_WITH_METADATA + + BEGIN_INTERFACE_PROXY_NOPARENT_SHAREDPTR(::gaclib_controls::IDialogStringsStrings) + ::vl::WString Abort() override + { + INVOKEGET_INTERFACE_PROXY_NOPARAMS(Abort); + } + ::vl::WString Blue() override + { + INVOKEGET_INTERFACE_PROXY_NOPARAMS(Blue); + } + ::vl::WString Bold() override + { + INVOKEGET_INTERFACE_PROXY_NOPARAMS(Bold); + } + ::vl::WString Cancel() override + { + INVOKEGET_INTERFACE_PROXY_NOPARAMS(Cancel); + } + ::vl::WString Color() override + { + INVOKEGET_INTERFACE_PROXY_NOPARAMS(Color); + } + ::vl::WString ColorDialogTitle() override + { + INVOKEGET_INTERFACE_PROXY_NOPARAMS(ColorDialogTitle); + } + ::vl::WString Continue() override + { + INVOKEGET_INTERFACE_PROXY_NOPARAMS(Continue); + } + ::vl::WString FileDialogAskCreateFile() override + { + INVOKEGET_INTERFACE_PROXY_NOPARAMS(FileDialogAskCreateFile); + } + ::vl::WString FileDialogAskOverrideFile() override + { + INVOKEGET_INTERFACE_PROXY_NOPARAMS(FileDialogAskOverrideFile); + } + ::vl::WString FileDialogErrorEmptySelection() override + { + INVOKEGET_INTERFACE_PROXY_NOPARAMS(FileDialogErrorEmptySelection); + } + ::vl::WString FileDialogErrorFileExpected() override + { + INVOKEGET_INTERFACE_PROXY_NOPARAMS(FileDialogErrorFileExpected); + } + ::vl::WString FileDialogErrorFileNotExist() override + { + INVOKEGET_INTERFACE_PROXY_NOPARAMS(FileDialogErrorFileNotExist); + } + ::vl::WString FileDialogErrorFolderNotExist() override + { + INVOKEGET_INTERFACE_PROXY_NOPARAMS(FileDialogErrorFolderNotExist); + } + ::vl::WString FileDialogErrorMultipleSelectionNotEnabled() override + { + INVOKEGET_INTERFACE_PROXY_NOPARAMS(FileDialogErrorMultipleSelectionNotEnabled); + } + ::vl::WString FileDialogFileName() override + { + INVOKEGET_INTERFACE_PROXY_NOPARAMS(FileDialogFileName); + } + ::vl::WString FileDialogOpen() override + { + INVOKEGET_INTERFACE_PROXY_NOPARAMS(FileDialogOpen); + } + ::vl::WString FileDialogSave() override + { + INVOKEGET_INTERFACE_PROXY_NOPARAMS(FileDialogSave); + } + ::vl::WString FileDialogTextLoadingFiles() override + { + INVOKEGET_INTERFACE_PROXY_NOPARAMS(FileDialogTextLoadingFiles); + } + ::vl::WString FileDialogTextLoadingFolders() override + { + INVOKEGET_INTERFACE_PROXY_NOPARAMS(FileDialogTextLoadingFolders); + } + ::vl::WString FontColorGroup() override + { + INVOKEGET_INTERFACE_PROXY_NOPARAMS(FontColorGroup); + } + ::vl::WString FontColorGroup2() override + { + INVOKEGET_INTERFACE_PROXY_NOPARAMS(FontColorGroup2); + } + ::vl::WString FontDialogTitle() override + { + INVOKEGET_INTERFACE_PROXY_NOPARAMS(FontDialogTitle); + } + ::vl::WString FontEffectGroup() override + { + INVOKEGET_INTERFACE_PROXY_NOPARAMS(FontEffectGroup); + } + ::vl::WString FontNameGroup() override + { + INVOKEGET_INTERFACE_PROXY_NOPARAMS(FontNameGroup); + } + ::vl::WString FontPreviewGroup() override + { + INVOKEGET_INTERFACE_PROXY_NOPARAMS(FontPreviewGroup); + } + ::vl::WString FontSizeGroup() override + { + INVOKEGET_INTERFACE_PROXY_NOPARAMS(FontSizeGroup); + } + ::vl::WString Green() override + { + INVOKEGET_INTERFACE_PROXY_NOPARAMS(Green); + } + ::vl::WString HAA() override + { + INVOKEGET_INTERFACE_PROXY_NOPARAMS(HAA); + } + ::vl::WString Ignore() override + { + INVOKEGET_INTERFACE_PROXY_NOPARAMS(Ignore); + } + ::vl::WString Italic() override + { + INVOKEGET_INTERFACE_PROXY_NOPARAMS(Italic); + } + ::vl::WString No() override + { + INVOKEGET_INTERFACE_PROXY_NOPARAMS(No); + } + ::vl::WString OK() override + { + INVOKEGET_INTERFACE_PROXY_NOPARAMS(OK); + } + ::vl::WString Red() override + { + INVOKEGET_INTERFACE_PROXY_NOPARAMS(Red); + } + ::vl::WString Retry() override + { + INVOKEGET_INTERFACE_PROXY_NOPARAMS(Retry); + } + ::vl::WString TryAgain() override + { + INVOKEGET_INTERFACE_PROXY_NOPARAMS(TryAgain); + } + ::vl::WString Underline() override + { + INVOKEGET_INTERFACE_PROXY_NOPARAMS(Underline); + } + ::vl::WString VAA() override + { + INVOKEGET_INTERFACE_PROXY_NOPARAMS(VAA); + } + ::vl::WString Yes() override + { + INVOKEGET_INTERFACE_PROXY_NOPARAMS(Yes); + } + END_INTERFACE_PROXY(::gaclib_controls::IDialogStringsStrings) +#endif +#endif + + extern bool LoadGuiFakeDialogServiceUITypes(); + } + } +} + +#if defined( _MSC_VER) +#pragma warning(pop) +#elif defined(__clang__) +#pragma clang diagnostic pop +#elif defined(__GNUC__) +#pragma GCC diagnostic pop +#endif + +#endif + diff --git a/Import/VlppGlrParserCompiler.cpp b/Import/VlppGlrParserCompiler.cpp index 93c01e93..7c62d032 100644 --- a/Import/VlppGlrParserCompiler.cpp +++ b/Import/VlppGlrParserCompiler.cpp @@ -12975,13 +12975,13 @@ namespace vl { void ParserGenRuleParserData(vl::stream::IStream& outputStream) { - static const vl::vint dataLength = 14441; // 198067 bytes before compressing + static const vl::vint dataLength = 14429; // 198067 bytes before compressing static const vl::vint dataBlock = 256; - static const vl::vint dataRemain = 105; + static const vl::vint dataRemain = 93; static const vl::vint dataSolidRows = 56; static const vl::vint dataRows = 57; static const char* compressed[] = { - "\xB3\x05\x03\x00\x61\x38\x00\x00\x25\x00\x01\x82\x80\x08\x0B\x82\x81\x82\x06\x89\x82\x88\x0A\x86\x06\x84\x0A\x0A\x97\x0A\x9C\x0A\x82\x12\x85\x13\x0A\xAD\x0A\x92\x1A\x81\x2A\x84\x2B\x0A\xDC\x0A\x9F\x2A\x83\x32\x84\x34\x0A\x8C\x4A\x8F\x4A\x82\x4A\x84\x4B\x0A\xA1\x4A\x87\x5A\x86\x56\x84\x5B\x0A\xFD\x14\x86\x8F\x7D\x9E\x9F\x9E\x0A\x80\x3F\x9F\x91\xA3\xA2\x9F\xA2\x46\xFF\x48\xA6\xAB\xA3\xA1\xA6\xA2\x0A\xC9\x8A\xB1\xA9\xA7\xA7\xA3\xA0\x0A\x81\x14\xAC\xAB\xAE\xA5\xAE\xA8\x09\xD2\x96\xA0\xAF\xAF\xA9\xB1\xAA\x65\xE4\xA7\xBC\xAB\xB6\xAD\xB6\xB0\x3C\xE8\xAF\xA6\xB1\xBC\xB6\x82\xAD\x09\xF8\xB5\xAE\xBB\xB8\xBB\x80\xB1\x69\xD3\xB3\xAA\xBD\xBC\xBB\xBE\xB9\x85\x84\xC3\x82\x09\xA9\xC3\xB0\xC1\x89\x90\xC7\xD6\xB3\xCC\xBD\xCA\xBF\x02\x80\xC3\xD2\xC9\xC8\xC7\xCA\xC3\x9D\x94\xE1\xD6\xC3\xD0\xCD\x80\xCD\x91\x8F\xEA\xCE\xCC\xD3\xCF\xD4\xD7\xAD\xA9\xF1\xDF\xCA\xC5\xD0\xD1\xD3\x9E\xB6\xF5\xD8\xD2\xD4\xDC\xD2\xDF\xA6\xC2\xB9\xC0\xE7\xDA\xE1\xDE\xE3\xBF\xC8\xC1\xE8\xD4\xDC\xCC\xE3\xDD\xCA\xC5\xCC\xFA\xDE\xE1\xE8\xE9\xE9\xCF\xD5\xD8\xF6", + "\xB3\x05\x03\x00\x55\x38\x00\x00\x25\x00\x01\x82\x80\x08\x0B\x82\x81\x82\x06\x89\x82\x88\x0A\x86\x06\x84\x0A\x0A\x97\x0A\x9C\x0A\x82\x12\x85\x13\x0A\xAD\x0A\x92\x1A\x81\x2A\x84\x2B\x0A\xDC\x0A\x9F\x2A\x83\x32\x84\x34\x0A\x8C\x4A\x8F\x4A\x82\x4A\x84\x4B\x0A\xA1\x4A\x87\x5A\x86\x56\x84\x5B\x0A\xFD\x14\x86\x8F\x7D\x9E\x9F\x9E\x0A\x80\x3F\x9F\x91\xA3\xA2\x9F\xA2\x46\xFF\x48\xA6\xAB\xA3\xA1\xA6\xA2\x0A\xC9\x8A\xB1\xA9\xA7\xA7\xA3\xA0\x0A\x81\x14\xAC\xAB\xAE\xA5\xAE\xA8\x09\xD2\x96\xA0\xAF\xAF\xA9\xB1\xAA\x65\xE4\xA7\xBC\xAB\xB6\xAD\xB6\xB0\x3C\xE8\xAF\xA6\xB1\xBC\xB6\x82\xAD\x09\xF8\xB5\xAE\xBB\xB8\xBB\x80\xB1\x69\xD3\xB3\xAA\xBD\xBC\xBB\xBE\xB9\x85\x84\xC3\x82\x09\xA9\xC3\xB0\xC1\x89\x90\xC7\xD6\xB3\xCC\xBD\xCA\xBF\x02\x80\xC3\xD2\xC9\xC8\xC7\xCA\xC3\x9D\x94\xE1\xD6\xC3\xD0\xCD\x80\xCD\x91\x8F\xEA\xCE\xCC\xD3\xCF\xD4\xD7\xAD\xA9\xF1\xDF\xCA\xC5\xD0\xD1\xD3\x9E\xB6\xF5\xD8\xD2\xD4\xDC\xD2\xDF\xA6\xC2\xB9\xC0\xE7\xDA\xE1\xDE\xE3\xBF\xC8\xC1\xE8\xD4\xDC\xCC\xE3\xDD\xCA\xC5\xCC\xFA\xDE\xE1\xE8\xE9\xE9\xCF\xD5\xD8\xF6", "\xEA\xEB\xE0\xEF\xD7\xB2\xB0\xC9\x83\x0D\xC2\xF1\xF1\xF3\xCD\xE0\xE9\xF3\xD4\xEA\xF5\xF6\xF6\xD9\xEE\xF1\xEA\x84\x05\xF0\xF5\xF7\xE6\xEB\xF9\xF8\xF7\xFB\xF9\x85\x02\xF6\x7A\x7D\x7F\x77\xF0\x40\x06\x01\x80\xFC\x42\x8A\x81\x82\x0C\xBE\x73\x83\x76\x10\x9E\x71\x87\x71\x13\x89\x75\x87\x72\x12\x99\x84\x86\x86\x16\x9C\x88\x87\x86\x20\x9D\x81\x8B\x87\x22\xA5\x84\x8B\x89\xD2\x5E\x89\x8B\x88\x2B\x89\x77\x00\x82\x0E\x8B\x81\x8D\x83\x04\xBB\x73\x8F\x8D\x35\x8F\x8A\x8B\x75\x3B\x9D\x7C\x88\x8F\x3F\xBE\x86\x89\x8B\x28\x80\x93\x92\x91\x45\x82\x99\x92\x7C\x39\xB2\x8D\x90\x8D\x17\x84\x92\x94\x92\xC5\x4C\x49\x5D\x81\x51\x94\x9A\x96\x92\x53\x9C\x9B\x94\x93\x59\x9E\x92\x98\x98\x3D\xA4\x91\x92\x99\x47\xA3\x98\x95\x99\x6B\xA7\x9D\x99\x9A\x68\x8B\x9F\x9A\x9C\x36\x8F\x98\x8D\x98\x71\x9D\x99\x9C\x74\x09\x30\x86\x9F\x9F\x78\xB3\x9A\x9E\xA0\x5F\x84\xAA\x99\x9D\x81\x88\xAC\x9A\xA2\x6E\x8C\xA0\x9E\xA1\x7B\x87\xAA\x8D\xA3\x93\x8F\xA5\x9E\x02\x7E\x89\xA5\xA4\x9D\x9B\x83\xAE\xA0\xA7\x4E\x9A\xA3\x43\x02\x99\x8B\xAD\xA5\xA1\x9F\x9E\xA6\x40\x03", "\xA5\x94\xA1\xAA\xA9\xAF\xAE\xA0\x94\xAC\xB3\xB2\xA1\x41\x03\xAD\x96\xA7\xAA\xA4\xB1\xBA\xAD\xAC\xA8\xB5\xBE\xA2\x42\x43\x57\xA9\xA8\xAB\xAE\x91\x8C\x9F\x01\xAE\xC0\xB7\x94\xAE\xB3\xB6\x80\xAF\xB2\xB4\xD1\xA2\xA1\xB1\xB3\xD4\x82\xB0\xB6\xB6\xD9\x98\xB6\xB7\xB6\xDE\x93\xBF\xB5\xB7\xAA\xBF\xA5\xBB\xB5\xE7\xA0\xB9\xB8\xB9\xC7\x8E\x90\x04\xB3\xEB\xA3\xB2\xBE\xB8\xF4\x95\xB3\xB5\x04\xF0\xAD\xB8\xBA\xBE\xEA\xBC\xB0\x02\x04\xF9\xBC\xAB\xBD\x75\x13\x3E\x90\x45\xB1\xC8\x90\xAA\xC2\xB1\x02\xFD\xBD\xC0\xBB\x0F\xF3\xB6\xBF\xC4\xDC\x92\xC5\xC5\xBD\x17\xD4\xC1\xBA\xC6\xF1\x98\xCB\xC5\xC6\x20\xDF\xC2\xC9\xC7\xD1\x95\x01\xC1\xB2\x0B\xC9\xCC\xC0\xCA\x2B\xE9\xC6\xBA\xBF\xE3\x96\x0E\x9E\x44\x08\xEF\xC1\xC6\xC7\x24\xE1\xC9\xCF\xC8\x30\xF8\xCD\xCC\xC7\x3F\xFA\xC1\xD0\xCF\x37\xC0\xD5\xD2\xD0\x47\xC4\xDC\xCA\xCA\x03\x88\x47\x5E\xCB\x03\xCB\xD6\xCE\xD4\x51\xD0\xD1\x41\x06\x27\xD6\xD0\xC4\xD5\x38\x9A\x09\xD5\xCB\x60\xCC\xD3\xD6\xD6\x16\xCA\xD4\xDA\xCF\x49\xFB\xCA\xDB\xD0\x6B\xE9\xDC\xDB\xDB\x6E\xF1\xDC\xD7\xD6\x67\xC6\xD3\xDF\x76\x1B", "\x1F\xD2\xD9\xD5\x61\xE3\xDD\xDC\xDF\x03\xBB\x4F\xD3\xDF\x0E\xF7\xD3\xB5\x07\x7A\xFE\xD3\x82\x07\x7E\x9F\x09\xE0\xE0\x8A\xD1\xE0\xE7\xE4\x85\xF5\xD8\xD2\xE1\x76\xD6\xE6\xD8\xE1\x74\xDC\xE5\xD9\xDB\x98\xD7\xEA\xE4\xE8\xA3\xF0\xD3\xDC\x08\x8F\xD5\xEE\xE4\xDA\xA1\xDB\xEB\xDE\xEA\xAF\xC0\x01\x0A\x9F\x16\x75\xC4\xE5\xE7\xB1\xDF\xE6\xE9\xE9\x72\xFC\xED\xE8\xE9\xAB\xD9\xE1\xF2\xE8\xC3\xEE\xE2\xE4\xEC\xC7\xF8\xE3\x43\x08\xA9\xCA\xF7\xEE\xEE\xBD\xC5\xFB\xB8\x09\xCD\xD0\xFF\xEE\xBF\x00\x76\xE8\xF3\xF3\xAC\xFE\xEE\xF6\xF4\xBB\xE0\xF1\xF5\xEE\xDD\xE2\xF7\xF7\xF8\xC9\xD6\xFA\xD6\x09\xD5\xE5\xF4\xFA\xF0\xEF\xC4\xF1\xFE\xF1\xDC\xF0\xF9\xFA\xFB\xF7\xF6\xF5\xFE\xFC\xF9\xFC\xFB\xFC\xFD\xDB\x61\x82\xF3\x02\x8A\x7C\xF3\x57\x25\x7D\xFA\x64\x83\xB4\x28\x08\x80\xFF\x4A\x81\x81\x03\x91\x81\x01\xF3\x70\x78\x0A\xA1\x7E\x82\xE8\x7F\x7D\x05\xFD\x70\x80\x09\xB8\x7A\x83\x17\x9C\x83\x06\xA0\x89\x83\x07\x8E\x86\x83\x10\x93\x82\x08\xD0\x39\x05\x06\x9D\x82\x05\x2E\x83\x86\x09\x9D\x8A\x84\x12\xA7\x7F\x86\xDF\x78\x80\x0E\x86\x8C\x87\xD8\x6B\x01", @@ -13003,41 +13003,41 @@ namespace vl "\xD0\x8A\xE3\xC4\x72\xE2\xE9\x56\xEC\xE3\x95\xEE\xE6\x06\x11\xD6\x2E\xEC\xE7\x94\xE5\xDE\x98\xD1\xE9\x45\xC3\xE9\xF2\xBB\xCE\xA0\xE8\xE4\x5A\xE6\xE8\x00\x0A\xE6\x9B\xE4\xE8\x76\xE8\xEA\xEC\xD5\xE7\xA7\xE7\xE6\x0D\xE8\xDF\x27\xE6\xE9\x9C\xE3\xEA\x74\xEB\xEA\xB2\xE1\xEB\x68\xEE\xE7\x21\xDF\xD7\x78\xD5\xEB\xFA\xD2\xEA\x36\xDE\xDF\x10\xE4\xDB\x12\xE2\xEC\x71\xE7\xE9\x78\xE6\xEC\x7F\xE1\xE1\x89\xEF\xE4\xDA\xCC\xD8\x9B\x1B\xD7\x47\xE1\xC2\xE6\xC3\xD4\x01\xCF\x18\xAF\xDD\x42\xD2\xEE\xCF\xDA\xED\xE9\xAC\xEC\xEB\xAD\xEB\xEB\x7B\xE3\xEE\x57\xE9\xE9\xA5\xE3\xE8\xE6\xED\xE8\xDA\xDA\xEC\x8B\xE4\xEC\xEC\xBB\xD9\xF0\xE2\xEE\xED\xE8\xE9\x03\x1A\xEA\x3A\xEC\xEC\xF1\xE1\xE3\x01\x1F\xEA\xBA\xE5\xE8\xF7\xED\xEC\xD3\xD5\xEF\xA1\xEC\xEF\xF7\xB4\xEB\x59\xE7\xEE\x03\xFD\xE7\xCE\xEF\xEB\xC8\xD1\xEC\x0B\xF6\xEB\xE8\xEE\xEE\x0F\xF6\xD6\xC0\xE0\xDB\x06\xF6\xEA\x0C\xFD\xEB\x17\xF7\xDC\xC1\xD0\xE9\x1B\xFC\xEE\x02\xFE\xF1\x05\xF3\xF1\xF8\xE2\x10\x5E\xE1\xF0\xB3\xE4\xEF\x28\xF4\xF0\x9D\xDB\xEE\x5D\xC2\x10\x00\xFB\xEF\x9E\xE2\x10\x9A\xE6\xF3", "\xA8\xE9\xF3\x1C\xF6\xF1\x03\x1D\xDA\x3D\x2F\xDA\x82\xE9\xD2\xFE\xE2\xDB\xC7\xE0\xE0\x7A\xEE\xF3\x1F\xDF\xE8\x23\xD3\xF2\x33\xF1\x10\x3C\xF3\xEF\xEF\xE4\xDA\x06\x14\xE6\xD9\x18\xC0\xFA\xE5\xEC\x03\x15\xF3\x5A\xF8\xF3\xB1\xD1\xF5\x4F\xF6\xF4\xCF\xE8\xEC\xD1\xE4\xF5\x3F\xFC\xF4\x80\xD5\xE4\x4B\xF7\xF4\xC9\xE0\xCC\xD9\xEC\xC6\x63\xDE\x35\x72\xCA\xC5\x7B\xDD\x48\xDF\xE2\xDE\xE1\xE2\xBF\x7E\xC6\xF2\x02\x12\xF7\x83\xC4\xF7\x0A\x16\xF7\x2F\xFD\xEF\xB7\xED\xF3\xC3\xE5\xF4\x60\xF3\xD1\x08\xF8\xEB\x53\xF9\xF4\x87\xF7\xF3\x01\x16\xF5\x3A\xFD\xF0\x09\xF9\xE6\x32\xFA\xF8\x90\xF2\x3B\x97\xFF\xDE\x3B\xFB\xF9\xFB\xCC\xF7\x50\xFE\xF9\xFD\xC0\xFA\x62\xF0\xF1\x21\xFD\xF4\x83\xF6\xEF\xA4\xF0\xF4\x41\x22\xF4\xA2\xF3\xDE\x62\xEF\xF1\x34\xE9\xF1\x43\xF8\xF9\x15\xFF\xF8\x9D\xFE\xF4\x95\xD6\x10\x2B\xF3\xF9\xA4\xF2\xF9\x86\xF0\xF3\xA1\x8F\xFA\x58\xDA\xFB\x93\xC7\xF2\x8E\xF2\xFC\x00\x09\xF8\x9C\xF1\xFB\x67\xFC\xF6\x65\xF9\xFC\x0E\xFF\xFC\x63\xF8\xF4\xB0\xE9\xEE\xD4\xF6\xFA\x80\xE2\xF2\x6E\xF2\xCA\x79\xF2\x15\x7B\xFD\xF2\x58\x1F\xF7\xE6", "\xCB\xD7\x8F\x1F\xFD\xD8\xE2\xCA\xE1\xF5\xE2\xE3\xFD\x1C\x84\xCD\xE0\xE6\xFF\xFA\x8C\xE8\xFB\x94\xF7\xF0\x85\xF2\xF5\xEA\xE6\xFC\x9F\xF5\xEE\xA4\xFD\xFB\xC1\xF4\xF8\xB7\x7A\xF9\x40\x7E\x92\x7C\xFF\x05\x80\xFB\x66\x6F\xFA\x7B\xF4\x46\x80\xEC\x74\xF3\x72\x7E\xBC\x61\x7B\xCC\x7B\xFF\x64\x77\x09\x8C\x00\xA1\x7D\x02\x90\x7D\x25\x7A\xFC\x72\x7C\xD7\x68\xD8\x35\x7D\xF3\x79\x80\x14\x82\xE9\x47\x74\xE8\x7C\xFD\x52\x7E\xEA\x6B\x80\x22\x85\xF4\x58\x79\x88\x7A\xF1\x11\x0D\x28\x7A\x66\xE8\x7E\x28\x14\x77\xC8\x0B\xD7\x79\x79\x85\x75\x76\x0A\x09\xEF\x48\x61\xC3\x6D\xFA\x08\x6F\x0B\x8B\x81\xA7\x7A\x20\x07\x11\xBB\x7A\x01\x83\x09\xC1\x17\x80\xF3\x7B\xD9\x59\x7D\xF7\x7F\xFF\x27\x81\x08\x94\x7F\xA4\x7E\x69\x26\x80\xFB\x71\x00\x80\x82\xF3\x62\x08\x47\x81\xF5\x54\x83\xFA\x7D\xF5\x16\x82\xD9\x6B\x08\x0E\x83\xF1\x5D\x83\xE5\x71\xDB\x52\x83\xF5\x74\x78\x5C\x80\xFF\x48\x7E\xDF\x6A\x10\x59\x83\x14\x8D\x82\x5B\x85\xFF\x71\x6C\x26\x84\x00\xCF\x82\x12\x88\x75\xFE\x7A\x0D\x87\x09\x30\x87\xFF\x61\x79\x1E\x81\x7B\x6E\x87\x0C\x90\x82\x14\x89", - "\xF2\x11\x7F\x1C\x9C\x83\x55\x85\xF2\x63\x73\x32\x88\x08\xE9\x81\xD8\x63\x80\x80\x85\x11\xA0\x81\x0A\x89\xEA\x07\x84\x12\x8F\x80\xBB\x79\xDF\x4C\x85\x4B\x82\x06\xFA\x83\xF0\x6A\x7B\x01\x0E\x0C\xAC\x78\x3B\x86\x05\xA4\x7C\xD7\x7E\x84\x00\x04\x0E\x84\x7B\x3E\x86\xFB\x57\x83\xBF\x71\x6D\x81\x83\x14\x9D\x78\x42\x8A\xFC\x27\x85\xD8\x67\x18\x5F\x81\x20\x24\x14\x50\x80\x00\x31\x86\xEF\x74\x85\xA5\x85\x08\x9E\x7A\x5E\x8A\x0A\xAD\x87\x24\x88\x83\xA4\x79\x02\xBD\x6F\x4B\x42\x09\xC0\x86\x22\x99\x7F\xB9\x85\x17\x8D\x86\x52\x8F\x0C\xEB\x83\xD5\x6A\x08\xC5\x87\x03\x8E\x87\x38\x82\x0C\xDE\x83\x67\x66\x08\xA2\x87\x17\x94\x86\x6E\x87\x00\xD6\x87\x8D\x6D\x08\xB0\x83\x1A\xB3\x85\x72\x8B\xF6\x55\x7D\xDB\x7F\x86\x03\x09\x1B\x92\x81\x75\x84\x0F\xA9\x80\xEB\x69\x13\xAE\x7C\x17\xA1\x86\x38\x8C\x0F\xF5\x80\x25\x97\x87\x49\x11\x1F\x91\x86\x5F\x8D\x0F\xAB\x85\x22\x8C\x7C\x1B\x81\xE8\x5D\x80\x4B\x8A\x05\x85\x8A\x31\x9D\x86\x2A\x80\xE4\x5B\x7E\xD4\x70\x0F\xFB\x80\x27\x8C\x85\xC7\x7D\x1D\x9A\x7E\x68\x75\x02\xEC\x81\x42\x04\x88\xFE\x80\x19", - "\x9B\x87\x31\x80\x10\xDD\x12\x40\x95\x88\x01\x0A\x1E\x8A\x81\x71\x8E\x10\x99\x8B\x08\x8E\x87\xD1\x7E\x23\xA0\x86\x75\x82\x12\xEC\x87\x4B\x9B\x88\x64\x7D\x23\x97\x86\x5F\x70\x04\x93\x89\xDA\x7D\x7E\xA8\x75\x24\x9B\x13\x93\x82\x13\x83\x08\xAB\x1C\x85\x47\x89\x1A\x89\x8B\xE6\x01\x03\x99\x86\x40\x18\x15\x24\x83\x20\x18\x1A\x5E\x80\x15\xB0\x8A\x41\x13\x8A\x40\x8E\x9F\x5C\x76\xC4\x64\x3D\x44\x82\x4D\x80\x00\x3C\x80\x1F\xBE\x81\xD8\x61\x16\x81\x8B\x58\x9E\x8A\x4A\x6B\x2B\x99\x79\x9A\x69\xFE\x28\x75\x59\x86\x89\x67\x89\x1A\xAF\x8B\xA1\x81\x17\xCC\x8A\x50\x63\x6B\x73\x8A\x4C\x2F\x6D\x1F\x8B\x13\xAC\x60\xDA\x61\x08\x7C\x8C\x3B\x0D\x8A\x97\x80\x00\x55\x88\x4E\x9B\x6B\x58\x8E\x2E\x85\x7A\xA1\x8A\x17\x8B\x8B\x62\x6D\x7F\xCD\x0A\xB2\x68\x8A\x3D\x63\x03\x91\x8E\xCB\x6D\x0E\x37\x84\x06\x97\x8D\xA2\x8F\x14\xFF\x88\x00\x09\x8C\x9C\x8F\x56\x1E\x8C\xD0\x8D\x17\xA3\x15\x6C\x7B\x85\xD1\x84\x31\xAA\x8A\x16\x8E\x01\xF2\x6D\x42\x08\x8D\x28\x88\x00\x30\x8D\xD0\x81\x11\xB3\x7C\x6B\x91\x6D\x4B\x8C\x36\xB9\x8D\xD2\x82\x10\x3B\x8D\x61\x70", - "\x8C\xD4\x0B\xAF\x7B\x87\xB6\x8E\xCF\x19\x8E\x65\x89\x08\xC3\x8E\x28\x03\x8C\xD7\x86\x10\x33\x8C\x6F\x9A\x85\xB1\x6A\x35\x80\x7D\x98\x8F\x1C\xB5\x8C\x07\x94\x7D\xB8\x89\x3B\x88\x8B\x0E\x7E\xCF\x7B\x68\x2E\x8A\x8C\x99\x7C\x34\xB6\x8D\x20\x81\x10\x7C\x21\x54\x87\x24\xE9\x87\x22\x87\x89\x96\x8C\x1C\xF1\x84\x4D\x83\x84\x2C\x88\x15\x89\x8F\x87\x81\x1F\x86\x8A\x23\x8E\x8A\x01\x08\x24\xB6\x8F\x63\x80\x1F\x94\x86\x32\x8E\x70\x06\x0A\x25\x98\x81\x91\x81\x12\x85\x84\x19\x9A\x87\xEF\x8F\x0E\xAE\x85\x03\x93\x10\x89\x91\x30\x9F\x8A\x7F\x80\x3F\xA9\x84\x07\x9E\x04\x94\x85\x84\x84\x8C\xF3\x8A\x1B\xB5\x8E\xFA\x86\x21\xE9\x8D\x43\x85\x90\x0A\x97\xF7\x4C\x89\x37\x80\x22\x8F\x90\x25\x90\x84\x12\x91\x43\xB3\x87\x9A\x85\x0F\x86\x90\x8A\x84\x8C\xFA\x8C\x43\xAC\x91\x19\x96\x20\xD9\x78\x2A\x82\x90\x49\x86\x44\xA9\x80\x1B\x91\xF6\x2A\x93\x4A\x8D\x91\x21\x90\x22\xBC\x91\x14\x94\x21\xE4\x84\x25\x96\x85\x12\x90\x47\x98\x84\x0D\x97\x24\x9E\x90\x89\x9B\x8F\x04\x91\xEC\x48\x92\xC2\x8F\x1D\xB4\x8E\x73\x87\x87\x1F\x8D\x48\xAC\x8F\x65\x83\x0C", - "\xD1\x86\x92\x9D\x84\x50\x97\x2B\xBF\x8E\x04\x6E\x23\x83\x93\x86\x8C\x92\x29\x83\x4C\xAD\x82\x2D\x95\x22\xD5\x85\x97\x91\x8D\x5F\x90\x23\xAB\x90\x03\x9A\x26\xC8\x8C\x9B\x81\x93\xFE\x89\xB6\x44\x17\x06\x9A\x1E\xF7\x8C\x61\x92\x8E\xE5\x7F\x1D\xB4\x8D\x38\x9B\x1E\xED\x90\x42\x99\x7E\x3D\x8C\x23\x94\x88\xDA\x85\x26\xB9\x91\x85\x96\x87\x9E\x8D\x35\x9C\x93\xFC\x87\x27\xB2\x92\x81\x80\x94\xA2\x66\xFA\x55\x8E\x42\x9E\x27\xF3\x92\xF2\x78\x94\xDA\x62\x53\x98\x93\x99\x8D\x27\xFC\x8F\xA7\x91\x94\x4E\x92\x10\x81\x93\x33\x9D\x1E\x9A\x89\xA2\x99\x89\x8B\x93\x53\x95\x94\x34\x97\x29\xA8\x94\x82\x85\x95\x51\x92\x42\xA0\x95\xEE\x82\x28\xD9\x0F\x72\x93\x94\x00\x00\x71\x3C\x84\x61\x91\x0D\xE2\x8F\x75\x8C\x81\xE6\x8D\x58\x9E\x8D\x64\x90\x1E\xA8\x76\xB1\x8A\x88\x19\x7C\x59\x9E\x61\xB1\x6F\x2C\xBD\x81\xB4\x9B\x70\x06\x0C\x58\x8D\x0F\xC0\x85\xDD\x5C\x96\x52\x7E\x96\x7A\x63\xAF\x44\x63\xBD\x63\x25\xBE\x89\x40\x0D\x26\x38\x81\x21\x28\x96\xCD\x84\xD5\x20\x66\x16\x60\x97\x6A\x63\xAF\x4F\x27\x74\x96\x10\x51\x24\xBD\x83\x08\xEC\x1F\x5E\x82", - "\x09\x7C\x9C\x2E\x86\x08\x46\x1A\x97\x01\x0B\x9A\x00\x98\x00\x02\x30\xFD\x97\x40\x02\x1C\xC7\x8C\xB8\x5B\x0C\x78\x94\xC0\x7B\x68\x24\x26\x98\x72\x40\x5B\x8B\x1E\x89\x9A\xF2\x14\x99\x40\x14\x23\x10\x99\x20\x19\x1F\x8C\x90\x00\x55\x91\x76\x1B\x6B\x31\x94\x3C\x80\x00\xBF\x79\x30\x83\x08\xC9\x81\x8E\x15\x0E\x62\xA4\x44\x95\x9B\x27\xA5\x9B\xB0\x0A\x99\x52\x23\x60\xB1\x98\x8E\x93\xE3\x2F\x6D\xCD\x88\x6C\x8C\x8B\xAF\x79\x99\x87\x0A\x32\xA1\x9A\xB9\x80\x00\x77\x23\x60\xB3\x24\xA1\x9A\x32\xC3\x98\xC7\x86\x9A\xCD\x0A\x0B\x20\x5E\xE0\x83\xFE\x1A\x73\x78\x14\x0F\x7E\x10\x81\x60\x5F\xC0\x8E\x34\xB5\x5C\xD4\x89\x08\x81\x89\x6B\xB9\x81\xAD\x9F\x1F\x0A\x0B\xD4\x9E\x9A\x57\x9E\x6A\x98\x9A\x85\x03\x04\x86\x09\x60\x85\x9B\x03\x0F\x6C\xA1\x9A\x1F\x6F\x34\xE3\x99\x42\x12\x9A\x6B\x9A\x20\x30\x9A\xB7\x96\x10\x61\x7D\xF8\x6F\x7F\xEF\x7B\xAF\x58\x15\xD7\x8A\x10\x3E\x8E\xDE\x8A\x08\x57\x96\x37\x86\x8C\x81\x0F\x37\xFC\x99\x42\x1E\x9B\x0A\x0B\x6F\x8D\x8F\xBE\x9A\x10\x05\x9F\xE2\x87\x9C\x8D\x99\x71\x80\x9C\xC6\x99\x10\x0E\x9E\x69\x90\x9C", - "\x95\x9A\x72\x86\x9D\x55\x11\x39\x89\x0A\xE2\x97\x9C\x9C\x99\x21\x2D\x98\xC2\x9A\x39\x8F\x9D\xE8\x86\x08\xA3\x99\x20\x16\x9C\x81\x01\x38\xE8\x85\xE3\x72\x9B\x60\x9C\x6E\x9F\x75\xB7\x91\x3B\xE6\x98\x53\x6A\x08\x73\x9E\x76\xBA\x5C\xCA\x94\xC9\x18\x9E\x41\x03\x9C\x01\x0F\x8B\x7E\x8C\xE1\x94\xE4\x27\x9E\x17\x7C\x9D\xC7\x9E\x77\x89\x9E\xE3\x9E\xBE\x48\x9F\xCB\x9B\x9D\xCA\x9F\x79\xBD\x9C\xE6\x91\x10\x29\x9D\x61\x8E\x9D\xA8\x98\x7B\xA6\x87\x9C\x72\xC8\x03\x09\xF7\x98\x82\xA5\x98\x74\x86\x8B\x35\x9E\x39\x93\x9D\xF4\x82\x8D\x59\x95\x7C\x9B\x9D\xF1\x99\x3E\x86\x0B\xE7\x8C\x9D\xCE\x9C\x52\xAA\x9E\xD3\x9C\x3E\x86\x0A\x2F\x8F\x9F\xD0\x8F\x7C\x92\x87\xF9\x92\x3E\xBD\x8C\xF9\x8E\x9F\xE6\x9C\x7A\xBB\x9E\x00\xAB\x3E\xFE\x9E\xE8\x9F\x9F\x03\x08\x7F\xB2\x8D\xF8\x90\x00\x56\x9F\xFD\x81\xA0\xF5\x9B\x20\x16\x9E\x8F\x90\x00\x12\x7F\x8C\x7D\x7D\xB9\x99\x6D\x8C\x73\xD7\x91\x10\x19\xA2\x40\x01\x8C\x17\xA0\x77\xB5\x9C\x0D\xAC\x13\x81\x08\x06\xA3\xA1\x1F\xA6\xD1\x5C\xA0\xB0\x88\x42\x80\x8E\x0A\xBC\x7D\x22\xA5\x6D\xBA\x9C\x52\x94\x40\xF4", - "\x9E\x01\xB4\xA1\x09\xA0\x82\xB7\xA1\x81\x00\x3C\x84\x09\xF8\x90\x9F\xFA\x99\x1C\x8A\xA1\xD6\x96\x27\xFC\x9C\x10\xA2\xA0\x42\xA2\x87\x81\x08\xDF\x89\x44\x85\xA3\x12\xAA\x08\x4D\xA6\x86\x8F\xA3\x22\xA5\x43\xFD\x9F\x14\xB9\x9E\x54\xA1\x87\x8E\xA2\x00\x0E\x1B\xD6\x9D\x14\xB6\xA2\x5C\xA2\x7B\x82\x08\xF1\x83\x44\x8C\xA0\x19\xAA\xA2\x61\xA4\x11\x4A\x09\x33\xAB\x45\xBE\x8C\x1B\xB2\xA2\x69\xA7\x2A\xBF\xA1\xFC\x92\x40\xEF\xA0\x18\xAE\xA3\x73\xA3\x81\xBA\x9E\x3B\xA7\x44\x91\xA3\x18\xB9\xA3\x44\xA0\x8B\xB2\xA2\x23\xA4\x47\xFE\xA1\xF5\x8B\xA3\x80\xA4\x81\x96\x9F\x93\x91\x10\x65\xA2\xFE\x8C\xA4\x00\x06\x91\x82\xA1\x1E\xA0\x49\x92\xA6\x21\xA3\x99\x89\xA7\x91\x99\xA4\x01\xA5\x49\xE8\xA2\x6F\x9D\xA4\x6D\xA2\x21\x20\xA4\x38\xAF\x49\x9B\xA7\x25\xAB\xA4\xA6\xA3\x87\x92\x9E\x93\x99\x4A\xD7\xA2\x04\xAC\xA0\x82\x98\x96\xB2\xA4\xFD\x9E\x1B\xDD\xA2\x22\xB7\xA5\xC9\x64\x98\x6A\xA3\x5C\xAC\x4B\x8A\x9A\x2F\xA3\x08\xC6\x68\x00\x01\xA7\x60\xA6\x3D\xC4\xA6\x2E\xA2\xA4\x77\xA6\x93\x8A\x09\x1E\xA1\x48\xC9\xA5\x28\xAF\xA6\xA4\xA2\x99\x90\xA7", - "\x57\xA3\x4D\xAB\xA5\x1F\xAA\xA5\x87\xA1\x21\x08\x98\x6C\xA0\x00\x5B\xA6\x2B\xBD\x8C\xDA\xA4\x81\x9E\xA7\x38\xA7\x30\xE2\xA6\x39\xBA\x9F\xE3\xA6\x37\xA9\xA6\x31\xA1\x10\x6B\xA7\x01\xA1\xA7\xFA\x9E\x7A\x96\xA4\x6E\xA3\x4F\xDF\xA4\xFA\x95\xA2\xD7\xA6\x9E\x91\xA4\x69\xA8\x4F\x85\xA4\x3D\xBC\xA7\x5A\xA1\x9A\x84\xA4\x3D\xA2\x40\xF5\xA4\x39\xB6\xA6\x8D\xA0\xA0\x88\xA9\x7D\xA5\x4D\xD9\xA5\xB6\x8A\x08\xDA\x97\xC3\x6D\xA5\x83\xAF\x09\xFD\xA4\x41\xB7\xA4\x77\x66\xA2\x8D\xA6\x89\xA3\x50\x9B\xAB\x3D\xBA\x84\x1D\xAC\x81\xBD\xA1\x8C\xA1\x50\xCE\xA7\xEF\x9F\x71\x25\xA9\x9F\x94\xA9\x4A\x81\x52\xFA\x9C\x49\xA2\x08\x06\xAE\x37\xB9\x71\x98\xA6\xF9\x2D\xAA\x00\xAF\xA9\x09\xAD\xA1\x80\x01\x99\xAA\x50\x95\xA9\x4A\xBE\xA7\xFA\xA0\xA7\x8C\xA8\x81\xA6\x10\x42\xA8\x4D\xAD\x97\x36\xAF\x92\xBC\xA8\x9D\xAB\x54\xC4\xA8\x48\xBA\xA8\x0C\xA6\xA8\xBD\xA9\x9D\xA3\x51\xBE\x8E\xBE\x67\xAA\x45\xAD\xAA\xA8\xA8\x98\xA3\x55\xD6\x9F\x55\xBD\xAA\x87\x61\xA9\x9C\xA6\xEB\x9D\x54\xA6\xA8\x35\xA8\x80\x50\xA9\x9E\xA1\xAB\xB4\xA2\x40\xE4\xAA\x56\xAF\xA7\x68", - "\xAF\xA7\x97\xA9\xB1\xAB\x56\xF2\xAA\x47\xAD\xA0\xEB\x69\x65\x89\x08\xE6\x1B\x57\x8A\x09\x57\x86\x08\x1B\x9B\x62\x89\x09\xBF\xA3\x10\x01\xAF\xBE\x87\x20\xFE\x59\x21\x1E\x76\x9D\x89\xD8\x0A\x0B\xCC\x83\x08\x18\x9D\xB0\xB6\x44\x85\x01\x34\x86\x0A\xB4\x81\x08\x88\x21\x21\x19\xAC\x46\x2B\x11\x1D\xAD\x42\x02\x7C\x03\x0C\xB0\x82\x08\xC3\xA1\x10\x22\xAE\xC6\x8A\x08\xCA\x6B\xB4\xA8\xAD\xC9\xAF\x59\x8A\x0B\x2F\x63\x08\x48\x9A\x20\x31\xAD\xD2\xAC\x5A\x86\x0B\x6C\xA0\x00\xA6\xA8\x00\x24\xAC\x00\x0B\x2E\xC6\x73\x5B\xA6\x08\xBD\xA9\xE6\x62\xAA\x7D\xA1\x5C\x81\x0A\x54\xBA\xA9\xC5\xAC\xAA\x83\xAF\x95\xAD\x43\xC9\xAF\x57\xBA\xA9\xCD\xAD\xAE\x9C\xAA\xE8\xAA\x10\x49\xAD\x59\xAA\xA9\xBE\x8E\xB9\xBF\xAD\x81\x09\x5C\xC7\xAE\x53\xA2\x08\xD6\xAB\xBB\xA0\xAF\x9A\xAC\x56\x97\xA5\x77\xA2\xAF\xE7\x93\xAB\xB9\xA9\xEF\xA9\x5E\xC8\xA9\x79\xBC\xA6\xE7\xAB\xB9\x99\xAE\xE9\xAB\x5E\xE6\xAB\x78\xAE\xAF\x76\xAC\x81\xA1\xAE\xF9\xA5\x5D\xFD\xAE\xBA\x8A\xAF\x43\xAE\xBE\xAD\xAF\xB8\xA3\x5D\xEC\xAC\x6F\xB4\xAF\x01\xB0\xBB\xBE\xAF\x92\x68\x5E\x87\xB0", - "\x7E\xA5\xB0\x02\xB6\xC1\x99\xAA\xFE\xAF\x5F\x95\xB0\x83\xB4\xB0\xC8\xA7\xBE\x84\xB1\xFA\xAA\x60\xF0\xA8\x77\xA8\xB0\x58\xAF\xAC\x9F\xB0\x0E\x78\x61\xA2\xB2\x86\xAF\xAA\xF9\xAA\xAD\x96\xB1\x81\x0E\x5D\x91\xB2\xF5\x9B\xAF\xEF\xAA\x9F\xAF\xB0\xF2\xA9\x62\xED\xAB\x82\xAC\xB1\x0D\xB6\x7A\xB3\x97\x7A\x9A\x10\x05\x9B\x40\x15\x26\x09\x09\xB7\x46\x08\x6E\x2C\x34\xCB\x98\xD3\x80\x00\xAE\x04\x2F\x9D\x44\xF0\x58\x36\xED\x7C\xF8\x4F\x05\x4A\xB1\x86\xBE\x5D\x23\xB4\xC4\x41\x09\x27\x5E\x85\x41\x08\x7C\x70\x05\x28\xBC\x34\xBD\xA1\x96\xAA\x08\xB1\x04\xCB\x80\x8F\x2B\x97\x64\x80\x02\x2C\x02\xB3\x03\x0D\x13\x79\x79\x32\xB3\x0B\x68\xB1\x0A\xAF\x73\x65\xB1\x21\x34\x04\x37\xBE\x42\xF0\xB1\x9C\xA3\x08\xB5\x04\xCE\xAB\xA8\x7E\x97\x67\x81\x0A\x2D\x1A\xB3\x57\x93\xB5\x05\xB3\x44\x4A\x10\x24\x2F\xA0\xA9\x08\xB7\x02\xCF\xBB\x6B\xB5\x27\x68\x86\x08\x2E\x1A\xB3\x4D\xB1\x20\x3F\x28\xA6\x9C\xCB\x47\x0F\xFB\x61\x2A\x94\xB5\x40\x20\x5F\xC7\xAD\x67\xB9\x06\x9E\xAA\xA0\x8B\xAD\xCF\x80\x00\x5D\x0A\x67\x81\x8E\x90\xA2\xB5\xBB\x05\xD4\xB8\x6C\x51", - "\xB2\x10\x3C\x06\x9E\xBE\x8D\x40\xB4\xD5\xBD\x04\x48\xBA\x10\x5E\x25\xA6\xB5\x13\x91\xB0\x00\x23\x27\x5B\xB6\x88\x0A\x0B\x39\x2C\xB5\x00\x06\x17\x3A\xB3\xF0\x75\x50\x40\xB7\x2F\x0F\xB5\x0A\x0E\xA3\x00\xB6\x60\x08\x6C\x89\x0B\x4E\x20\xB6\xC1\x05\xD9\x86\x08\xA5\x2D\x68\x83\x0A\x30\x0A\xB4\x0A\x0B\xAB\x00\xB7\x61\x0F\x69\x8A\x09\x62\x20\xB6\xC4\x02\xCF\xBD\xA0\xE9\x2C\x6B\xCE\x12\x6F\x81\x34\xC0\xB5\x18\x12\xB7\x81\x06\x68\x40\xB6\x31\x0B\xB7\x02\x09\xD1\x00\xB7\x63\x0A\x67\xB9\x7A\x7E\x20\xB6\xC8\x05\xDE\x8A\x09\x02\x30\x6C\xC9\x06\x9E\xB4\xA0\x07\x30\xD8\x8A\x06\x3D\xBE\x0B\x83\x39\xB9\xB4\x11\xDF\x99\x20\x1E\x37\x83\xB8\x23\x5F\x60\x83\x20\xB6\xCB\x02\xCF\x9F\x63\x08\x30\x6C\xCC\x06\x9E\xB6\x9E\x46\x30\xD8\x8D\x07\x8B\xB9\x13\x40\xB4\x00\x0E\x06\x1C\xB9\x21\x3A\x32\x60\xBF\x0C\x21\xBA\x41\x03\xB9\xAC\xB0\x1A\x26\xB9\x81\x04\x6A\x40\xB5\x34\x0B\xB9\x02\x0D\xE5\xAC\xB4\x69\x02\x71\x8A\x0B\xB3\x20\xB6\xD3\x05\xE6\x89\x09\x69\x30\x6C\xD4\x06\x9E\xB2\x7C\xD8\x30\xD8\x95\x06\x7D\xB9\x10\x3B\x38\xB0\xBB\x0E\x92\x7C", - "\xDB\x00\xB6\x6B\x04\x70\x8A\x09\xBE\x2C\xB8\x7F\x11\xE7\x63\x38\x60\xB7\x0D\x7F\xB6\x42\x19\x39\xC0\xB0\x1B\x3A\xB3\xDE\x7B\x74\x40\xB5\x36\x1A\xB3\x31\x66\xEA\x10\xBB\xED\x03\xE3\x58\x38\xB0\xBA\x06\x7A\xB5\xEC\x9E\xB9\x6D\x09\x76\x8A\x0A\xD6\x20\xB6\xDC\x05\xED\x89\x09\xB7\xBC\x6A\xDD\x06\x9E\xB3\x05\x95\x89\x20\x2B\x7E\xEF\x05\x66\x95\xB4\xB7\x01\x0A\x79\x8D\xEF\x9A\x27\xA0\x0C\x30\xC5\x0C\xE0\xBE\x13\xE0\x59\xF0\x92\xB3\x81\x0B\x77\xC7\x0D\x50\x11\x61\x7E\xB9\x38\x16\xB3\xC5\xB0\x3B\xF5\x11\x50\x19\xB5\x91\xBD\x38\x06\x8F\xCA\xB3\x43\xCE\x11\x50\x01\x7F\x9D\x47\xFD\x7B\x80\xC4\xBD\x3C\x41\x0A\x02\xB9\xBC\xFE\x14\x6A\x85\x11\xA0\x07\x25\xA8\xBF\xC3\x10\xBC\xAB\xBC\x81\xAE\xBC\x26\x19\x6B\xF9\x79\x99\xB5\x22\x76\x99\xF6\xBB\xA5\xCE\xB4\x23\x5F\x99\x42\x01\x7F\x8A\xBC\x69\xB9\x79\xC2\xB0\x1D\x61\x7D\x60\x86\xBE\xBA\xBD\xEA\x71\x9B\xAB\x14\x79\xC0\xA8\x00\x01\x8C\xEF\x7D\xF1\x89\x0F\xA0\x01\x4C\xC1\xBC\x0C\xB5\x23\xA2\xB9\xF9\x83\x09\x88\xAD\x41\x85\x13\x17\x61\xBD\xCB\xBF\x4F\x01\x0A\x7D\x75\xFC\x7E\x89\x9E", - "\x71\x98\x03\xAA\xFA\x92\xBC\x85\x0C\x57\x83\x1F\x80\x09\xB8\x70\x41\x8F\x96\xBE\xC8\x89\x5B\xB3\xBC\x02\xA8\xBF\x16\xAC\xF8\x95\x0F\xA0\x0B\x5B\x9D\x44\x9F\xBC\xBC\x03\x0C\x82\x9D\x45\x2B\x9B\xD7\x5B\x0D\x50\x16\x71\xF6\xBD\x4E\x37\xAA\x03\xCA\x10\x21\xB7\x9B\xA6\x08\x91\xA8\xFF\xA6\xB7\x3C\xAC\x80\xAD\x25\x0F\xA5\xC0\x7C\xBC\xB2\x9A\x27\x1E\xAE\x1B\x95\xC2\x65\xA1\xBF\xA9\xA9\x20\x09\xC1\x0C\xBA\x77\xDA\xBE\x40\x0F\xAD\x02\x0D\xCA\x9B\x8D\xEE\xBE\x61\x80\xC0\x8D\x01\x0A\x3B\xB3\x20\x2A\xC1\x12\xAC\x42\xAD\xC1\x9D\xA3\x10\x41\x09\xD6\xB2\xC1\x5A\xBD\x7C\x9F\x8D\x0F\xDF\x62\xEA\xBE\xF0\x8A\x09\x5D\xB6\x7E\x83\x11\xF5\xA5\x9E\x6C\x98\x07\xFE\xB5\x1E\xCB\x1D\x5C\xBD\x0D\xD3\x9E\x24\xA2\x09\xC9\x09\x62\xB5\x84\x83\x0B\x43\x34\x9D\x0F\xB4\x05\xD0\x87\xD9\x92\x85\x86\x0B\x4A\x30\x3A\x03\x14\x7B\xA6\xC1\x80\x0F\x6C\xBC\xBD\x40\x03\x2A\x60\xC6\x7B\x88\xC3\x17\xC3\x4A\x3E\x87\x85\x82\xC2\x09\x0E\xA8\x29\xC2\x1A\x1E\x0B\xF0\xBE\x07\xC3\x08\x48\x2A\x76\x82\x09\xA8\x23\x87\x81\x08\x05\xA1\xC2\xD0\x09\x28\x13\x2A\x3D\xC8", - "\x23\x35\x78\xF8\x54\xA0\xF3\xBD\xFD\x6F\x2A\x42\xCF\x27\x39\xAF\x21\xC1\xBF\x77\xC2\x20\x06\xB4\x33\xC0\x00\x2D\x2D\x15\xC2\x08\xFF\x92\x6C\x93\xB3\x45\x86\x79\x8A\x0B\x6C\x38\xC2\xB1\x1D\xAE\x55\x97\xE9\xB5\x12\x5A\x25\x5D\x61\xA6\x91\xC2\x52\x7B\x2C\x26\xCE\x1D\x62\x8C\x24\xA9\xC5\x7F\x15\xBA\x20\xC4\x27\x10\x49\xE5\x91\x99\xA9\x2F\x32\xA1\x79\x01\xA6\x5B\xC7\x64\xF7\xB6\x26\xC9\x1E\xE3\xA7\xDA\x4E\xBD\x51\x29\xE3\x42\xA8\x2C\xD5\x22\x39\x73\x14\xEB\xBF\x84\x03\x60\x7D\xC1\x0B\x89\xB3\x00\xB0\x15\xD9\xC1\x84\x0C\x6F\xEE\xBF\x40\x01\xB8\x97\xC1\x20\x0F\x6C\x68\xC9\x85\xBE\xC1\x27\xC9\x08\x0F\xBE\x1A\xF4\x10\x4E\xB2\x82\xB4\xB2\x26\x43\xC3\x00\x06\xC1\x35\x22\x8A\xB9\x8D\x80\x01\x04\xC5\xC7\x09\x0A\xA8\x8E\xC3\x63\xCA\x45\x35\x7B\x90\x8B\xC6\x34\x2D\xE6\x46\xC7\x69\xC4\x53\x35\x1E\x41\x19\xAD\xF4\xC0\x82\x39\xAC\xA6\x2F\x8D\x86\x09\x85\x2C\xC4\xDB\x0D\xB2\x91\xC3\xD0\xAE\x57\xE8\xC5\x8D\x28\xC8\xDE\x0F\x61\x83\x09\x18\x69\x5B\xD7\xC1\x17\xC3\x08\x5C\x30\x22\xC7\x0F\x18\xCF\x80\x8C\xCB\x8A\xAC\xC3\x09\x0E\xCE", - "\x1A\xC9\xE4\x07\x6A\x9D\xCA\x40\x19\xAD\xE5\x25\x20\xC3\x08\x79\xB4\x89\xDB\x0C\x11\xCB\xC8\x27\xCE\xB5\xA8\xC6\x99\xB0\x93\xB8\x10\x15\xD5\xC9\xB8\xAA\x21\x04\xB3\x8B\xC2\x10\x2D\x35\x4B\xDE\x0E\x5F\xC4\x12\xF9\xAD\x70\x2A\x92\x82\x08\xAE\x23\xC9\xC1\x08\xD3\x82\xCA\x85\x0B\x59\x9E\xBE\x42\x05\x36\x8C\xC4\xE7\xAD\xC6\x6A\xB6\x10\x14\xC9\xE0\x68\xC7\x41\xBC\x12\xE0\x37\x76\xCA\x6D\xD5\xC9\x43\xC9\x08\x97\xAA\xFC\x8A\x08\x74\x3C\x88\x89\x39\x3B\xDF\xB6\x5E\xC9\x21\x3B\xAD\xF6\xBE\x94\xAD\x27\xFF\xA7\xAD\x45\xCD\xA4\x19\xC4\xC6\xB8\x8E\x99\x39\xD7\x95\x13\x82\xB4\x12\xF3\xCA\x17\xC8\x23\x41\x09\xCF\x29\xCB\x03\x15\xB6\x0C\xC5\xBD\xC7\x83\xED\xCA\x41\x09\x3A\x77\xCE\xD1\xBD\xC0\x72\xB4\x89\x8E\xC1\x40\x16\x71\xB0\xC4\xEE\x9C\xC7\xD8\x14\xD8\x10\xCC\x3F\xC3\x08\x5C\x3E\x19\xDB\x0F\x6D\xC2\x10\x04\xC8\x4F\xC1\x08\x5F\x3B\x16\xF4\x11\xF6\x22\x9A\xDA\xC7\x57\xDF\xCC\xC1\xB4\x15\xC7\x0E\x5F\xCB\x83\x89\x08\x67\xC1\x08\x16\xCE\x30\xC3\x09\xB3\x35\x9A\xFF\x11\x33\xCD\xC7\xAF\xCA\xC2\xB2\xCC\x81\x06\x77\x35\xCF\x76\x18", - "\xC6\x49\xC3\x20\x39\xCD\x94\xC8\x9A\xFA\x3A\x6F\xDE\x0E\xE1\xC1\x38\xC2\x09\xDC\xC2\x29\xFB\xBF\x28\x39\xCD\x28\xC5\x2F\xCA\x08\xBF\x37\x9C\xC7\x0C\x3B\xCA\xCE\xA6\xC9\x21\x3B\xC9\xDD\xC1\x10\x03\x3D\x75\xC9\x0E\x07\xC8\x37\xCA\x08\xA2\xC8\x9A\x87\x3F\x77\xC1\x0E\x25\x35\x36\xF9\xCD\xA6\xC0\x92\x86\x0B\xE2\x35\xCD\x8F\x3D\x36\xCF\xC9\x5F\xCB\x9C\xD7\xC9\x5C\xC0\x00\x9A\x3D\x36\xE8\x3D\xDA\xC4\x65\x39\xC5\x7D\xC0\xCB\xE8\xC4\xF5\x35\xCD\xD8\x35\x9B\xEE\x32\x7F\xC1\x08\xE4\xC5\xB1\xB7\xCF\x2A\x2F\x8E\x80\x00\x7B\xD2\xCE\x75\x15\xF6\x27\xCF\xE2\x0D\xA0\xA0\xAD\x7B\xCE\x12\xB9\x3B\x42\xD0\x0F\x06\xD1\x96\x81\xC9\x72\x08\x3E\x1A\xD5\x3A\x21\xCA\x85\xC7\xA1\x82\x08\xF3\x21\xD1\x4C\x17\x41\xC0\x9A\x74\xC0\x7D\x28\xD1\x81\x16\xD0\x01\x0C\x44\xD0\xD0\x83\x05\x7D\x2E\xD1\x9D\x12\xC8\x9D\xC8\x1D\xD9\x3E\xCD\xC1\x91\xA7\xCC\x77\xC0\x00\xDB\x3E\x19\xE8\xB9\xC9\xC3\x10\x38\xD0\x6C\xC8\xC7\xDD\x3C\x47\xC7\x0E\x23\xDA\x9B\xA5\xD1\x40\x1F\x3E\x4A\xD1\x39\x0C\xD2\xE2\xCF\xA3\xE1\x3D\x94\xC1\x0E\x4C\xD1\x3A\xE2\xCB\x84\x00\x7F", - "\x57\xD1\x71\x0C\xD2\xDB\xCE\x49\xC0\x00\xFA\x3E\xA5\xD0\x0C\x93\xC4\xCF\x3F\xD6\xFE\x25\xD3\xEA\x0C\xA4\xAA\xD0\x2C\xC1\x40\x75\x23\x00\x75\xCC\x74\xB2\x8E\x81\x08\x93\xD0\xD1\x5B\xD6\x20\x07\x41\x3A\x29\x80\x35\xCD\xBB\xB5\xD3\x00\x04\x49\xDD\xD1\xCB\xC2\x10\x0E\x41\x1D\x30\x40\xB5\xCC\x25\xC4\xD3\x13\xCA\x10\x37\xAE\x87\xC1\x0E\x14\x46\x46\xF6\xAD\xD5\xA7\x9F\xA0\x43\x9A\xC1\x0A\xC9\xAE\x5E\xA8\xCD\x2A\x29\x5C\xCA\xC4\x1C\xC6\x08\x2E\x46\x19\xCE\x35\x3A\x29\x5C\xD2\xC7\x30\xC9\x08\x30\x45\x8E\x3B\x41\xDA\xC2\x69\x75\x20\x47\xCC\xBE\xF7\xCC\x0A\x4E\xC7\x4B\x3E\xAA\xC7\xA7\x8F\xC3\x43\x75\x25\x0C\x75\xCC\x9A\xC2\x81\x82\x0A\xA6\xC3\x08\x9E\xCF\x47\xF1\xBF\x9F\xC7\x1C\x26\x34\x25\xDF\xD5\x31\xCF\x3E\xC3\x44\xA4\xC5\x1C\x31\x35\x62\xC3\x08\xC8\xD7\x48\xF7\xCE\x04\x0F\x87\x7A\xBD\x50\x1C\x35\x8C\xC1\x5A\xCD\xD3\x19\xD6\x14\xD5\xD5\x81\x17\xB9\xC7\xD2\x21\x14\xD2\x31\xD1\x89\x4C\xD4\x74\x19\xCA\x38\xCA\x5B\xDA\xD2\x58\xC4\x01\x5E\xD5\x9D\x1B\xCA\xE9\xD2\x27\xE8\xC6\x4C\x46\xAE\xD5\x0F\xD3\xA1\xD7\x09\x08\x4D\xE2", - "\xD3\x4F\x45\xAF\xC1\x0A\x5D\xD8\xD7\x06\x0E\x4D\xC4\xD4\xE3\xAE\xAE\xFF\xC7\x1F\x48\x60\x46\xB8\x30\xD0\xD6\xFB\xC8\x9A\xBA\x44\x23\xC9\x47\xB5\xCF\xE8\x0F\xD6\x5F\xDB\x47\x68\xC5\x3D\x4C\xC4\x10\x4D\x36\xD4\x3B\x89\xD1\x30\x94\xD4\x6A\xC0\x49\x97\xD2\x21\x3A\xC0\x81\x0E\x63\xE2\xD1\x15\x25\xC9\x01\x0F\x55\xF9\xD3\x8B\x28\xB2\x80\x02\xB6\xCF\xD4\x4A\x21\x4C\xF4\xAD\x05\xD3\x2D\x21\xCC\xA0\xD6\xB5\xC7\x67\x3E\xE5\x49\x03\xD1\x41\x7A\xD7\xCC\xDB\xD4\xD3\x11\xEC\x35\x23\x97\xC9\xDC\x68\xC6\x4E\x5C\xD9\xE3\x13\x5C\xE5\xC1\xFB\xC0\x95\x1C\xDB\x9F\x03\x3B\x4E\xDA\x69\xCF\xC3\x1F\xD7\x97\x4E\xDB\x76\x18\x3B\x51\xD8\x12\xC3\xD8\x00\x07\x99\x4E\xDA\x6F\x55\xCD\xDE\xCA\x61\xC2\x09\x5F\xB6\x10\x0B\x28\xCD\xD0\x20\x64\xDB\x20\x38\x27\xB3\xD7\x42\x6B\xD9\xDD\x88\xC7\xC8\x4E\x6A\xDE\x0F\xC6\x3E\xB4\xEE\xD8\x76\xCB\xD9\x02\x0C\x3D\x72\xDB\xE3\x0B\x9F\xE2\xD9\x40\x16\xDB\x26\xCC\x5B\xC2\x09\x08\x5E\xB4\xC2\x51\x6D\xD3\x3D\x4E\xDF\x26\xC2\x08\xB3\xD0\xB4\x90\x22\xE2\xDF\xDB\xE8\xC5\x8A\x0C\xDD\x81\x01\x82\xF8\xD9\x40\x14\x52", - "\x21\xD9\x21\x31\xCD\x1C\xD7\x9F\xE1\x51\xBF\xCA\x08\x20\xD4\x12\xDB\xDD\x9F\xDF\xA3\xFA\x53\xE7\xC9\x08\x2D\xD6\x6F\xC0\x01\xD1\xDB\xBA\xE8\xC7\xA4\x47\xDD\x06\x09\x48\xE2\xDD\x1B\xB2\xA6\xA8\x54\xEC\xC3\x08\x5D\xD3\x76\xC9\x08\xA9\xD0\x8B\xBD\x57\xED\xC2\x08\x72\xD2\x77\xC6\x09\x75\xDB\xB5\xDA\x57\xEF\xC1\x08\x0C\x44\x11\xEC\xDC\x99\xD6\xB9\xE9\xC5\xC1\xCE\x12\x91\xD2\x78\xC3\x08\x9F\xDD\xBC\x8F\x5B\xF1\xC0\x00\xA9\xD2\x7A\xE8\x8F\xFB\xC2\xB2\x0C\xC7\xD0\x55\xCD\xB8\xD2\x75\xEC\xDC\x3C\xD0\x8B\xCE\x58\x23\xC6\x04\x07\xD8\x77\xAC\x5A\xCD\xD5\xB1\xF7\xCF\xD7\x4C\xC4\x8C\x01\x7D\xFF\xBD\xF5\xD6\x10\x4A\xB6\x41\x1D\x29\x6C\xDD\x83\x36\xDF\x81\x01\x94\xBF\xD1\x15\x3D\xDF\x9C\xD8\x35\xE5\x5B\xEB\xDC\x00\x4F\xDE\x40\x00\xE0\xA4\xDA\x4C\xD2\x04\x03\xED\x70\xF4\xDC\xFF\xCA\x08\xAC\xD8\x16\xD6\x04\x06\xEF\x27\x15\x44\x23\xC8\xE0\xDB\xD5\x79\xDA\x04\x0A\xEB\x1D\x19\x00\x05\xF8\xE0\xBC\xDB\x6B\xDE\x04\x0E\xEE\x1D\x1D\x03\x07\xF2\xC9\xF7\xCA\x14\x24\xE1\xE3\x01\x02\x27\xE2\x76\xC8\xC7\x78\x5F\x7A\xF7\x45\x0B\xE3\x9E\xE8", - "\xC4\xE0\x57\xDE\xDF\x44\x86\xDA\xAC\x74\xCF\xB9\x0C\xC5\xEC\x55\xCD\xF7\x46\x69\xD8\xE0\xF2\xDB\xB5\xB4\x04\x05\xF8\x05\xF2\xDE\x20\x20\xD8\xD5\xD8\xC1\x83\xD7\xA9\xC6\x08\xBA\x04\x82\xFE\x05\x24\xE3\x10\x48\x4A\xD7\xCA\x08\xF8\xDD\x71\xE7\x21\x2C\xE4\xB9\xE8\xC4\x30\x1A\x4E\x93\xB1\x67\xE8\xCD\x60\x09\xB7\x7E\x16\x52\xDD\xE2\xF7\xCC\x18\x1A\x4F\x33\xE2\x10\x68\xC2\x16\xFD\x20\x6E\xE3\x20\x32\xC3\x37\xE5\x1C\x45\x04\x15\xF4\x11\x73\xE0\x8D\xE8\xCD\x63\x0A\x9D\x79\xC2\x18\xFF\xD1\xC8\x02\x3B\x54\xCA\x3C\xC1\xB9\xDA\x21\xB0\xC1\xE0\x3F\xD1\x19\x2B\xE1\xE4\x08\x96\x0C\xC7\x21\xE9\xE0\x82\xD9\x20\x0D\x07\x45\xE1\x1C\x01\x4E\xD3\xCF\xE4\xAD\xDF\x3E\xD1\x06\x4A\xE5\x1C\x26\x4E\x23\xF4\xDD\x91\xE0\x00\x15\x06\x4E\xE0\x1D\x41\x4F\x27\xFB\xDD\xE8\xC1\x1B\x24\xE5\xEA\x0E\x9D\x27\xE7\xF0\xC8\xC7\xDD\x03\x95\xC1\x0A\xFC\x4E\xCA\x83\x08\xF3\xD0\xC5\xE1\x02\x96\xCA\x09\x0D\x55\xCB\x82\x08\xF5\xD0\xC5\xE5\x02\x97\xC9\x08\xC3\xD4\x89\x98\xE6\xC0\xCF\xE2\xB8\xDC\x82\xED\x07\x3B\xE1\x10\x63\x53\x25\xEC\xD8\x3F\xD7\x1D\x14\xE1", - "\x79\x0C\xCC\x80\x01\xA2\x4F\xE6\x00\xD7\x3E\xF5\x06\x0A\xE9\x0F\x55\xE6\xA8\x4E\xDA\x4F\x2E\x20\x18\xE4\x58\xCB\x0F\x55\xE7\x76\x1E\xDD\x80\xD1\x9C\xDE\xC8\xD4\xCD\x0F\x66\xE6\x77\x05\x56\xB5\xCA\x9D\xE5\x4D\xC8\xDE\xCE\xC7\x0C\xB3\x55\x23\xF2\xE3\xC0\xBF\xD1\x00\x09\xBF\x09\xC5\x40\x06\xDE\xE9\xE2\x5C\xE8\xC7\x01\x0D\xCF\x85\x10\xB7\x58\xE7\x28\xE0\x35\xC5\x01\x82\xE5\x27\x5F\x54\x42\xEF\xE1\xF7\xCF\x00\x0C\xE9\x01\x19\xAE\x0F\xEA\x41\x1F\xE5\x5B\xD9\x01\x13\xE8\x27\x1F\xAE\x16\xEB\x40\x07\xE6\xA4\xC7\x35\x9B\xE9\xA7\x83\xD2\x81\x08\xBE\x51\xE7\xD0\xE2\x4C\xCF\x01\x92\xEB\xFC\x2C\xEB\xC2\x48\xE9\xD9\xE0\x35\xD3\x00\x96\xE5\x01\x2C\xE8\xC5\x55\xCD\x83\xC2\x9C\xE8\xC7\x0B\x09\xBF\x23\xC3\x40\x19\x58\x75\x21\xA7\xEB\xE7\x1F\xD8\x01\x3D\xE9\x81\x1D\xDE\xED\xC2\xA8\xF3\xE7\xFB\xC9\x01\x46\xE9\x9D\x15\x59\x41\xE8\x94\xCD\xDE\x0D\x0E\xD4\x83\x11\xD0\x51\xEA\xA8\xE7\x3E\xDB\x01\xAA\xEE\x24\x5F\xDC\xA0\xCA\xEA\xB7\x60\x1D\xDC\x00\xAE\xE4\x23\x45\x58\x56\xE3\xB2\xE8\xC5\x03\x24\xEA\x1C\x16\xBE\xDF\xE9\x0D\xF7\xCF\x1E", - "\x03\xAD\xFF\x12\xAA\x57\xD6\x9F\xE8\x3A\xDF\x00\x72\xE8\x04\x2C\xE8\xAB\x58\xD3\xA9\xE9\x28\xE2\x01\x72\xEB\x04\x2C\xE8\xF4\xDD\xD7\xB1\xEB\x8F\xC5\x01\x72\xEE\x04\x2C\xE9\xF7\xDC\x95\x8A\x08\x1F\xC8\xCD\x28\x02\xAE\xE3\x17\xAE\xC3\x10\x60\xE9\xF3\xC9\x01\xF9\x59\x30\xAD\x00\xC9\xEE\x1D\x0C\xB6\x41\x0F\xEC\x3F\xD6\x05\x1C\xED\x68\x1E\xD9\x95\xEC\x3A\xCF\x01\x99\xE8\xB5\xA3\xED\xE4\x0D\x56\x3A\xEB\x7D\xD4\x01\xF9\x5B\x06\xC6\x08\x45\x05\xCD\xAD\xEF\x50\xE2\xD3\x37\x01\xB6\xC5\x11\xF8\xDC\xB3\xB6\xEF\x52\xE8\xCD\x3A\x02\xB7\xF5\x13\x47\x05\xDB\xD2\xE8\x2C\xDD\x01\xC2\xEB\x40\x27\x5B\xDA\xCE\xDB\x81\x09\x08\xE8\xE6\x02\x08\x08\x09\xEE\x27\x13\x09\x45\xEE\x2F\x68\xC7\x43\x03\xBA\xF4\x11\x4A\x06\xDD\xE8\xEB\x7D\xC6\x02\xDA\xE8\x47\x17\x05\xEE\xE3\xBD\xE8\xC5\x12\x01\xEF\x7F\x16\x6D\x4C\xEE\xA6\xC8\x8E\xCC\x00\x7A\xEF\x02\x2C\xEB\x13\x23\x45\xE6\xE0\x00\x44\xE0\x74\xE1\x08\x51\x00\xBD\xD4\x02\x96\xE3\xC2\xBD\xED\xFB\xC8\xCD\x56\x00\xBD\xD9\x02\x96\xE1\x0A\x23\x45\x5F\x29\x08\xE3\xE3\x6B\xDB\x02\x96\xEB\x1D\x24\x05", - "\x35\xE7\xF0\xFF\xC0\x1D\xDD\x02\x06\xFE\x1D\x31\xE0\x7D\xC1\x08\x10\xF6\x0A\xE8\xC7\x2F\x04\xE1\xC7\x0E\xDF\x55\xCD\x19\xF7\xC4\xA2\xD3\x30\x0D\xE1\xC9\x0C\xE1\x40\xF1\x02\xEF\x3E\xE3\x03\x12\xF1\x1C\x12\x5C\x8A\xF7\xEE\xF7\xCD\x0C\x2C\xF1\xE2\x01\xBA\x2F\xF2\x77\xE8\xCD\x67\x03\xC6\xD0\x0E\xD5\x56\xE3\xE5\xEF\x7D\xC9\x03\x3A\xF5\x3A\x38\xBB\x1E\xFB\xBD\xA8\xCF\x1A\x0C\xE9\x6D\x04\xA5\xF5\x04\x03\xFE\xD7\xCD\xDF\x1B\x0C\xE9\x71\x04\xA5\xC8\xE2\x9E\xD1\xE2\xE5\x8C\x3A\xD3\x03\x2C\xED\x0E\x2C\xE9\x5D\x03\x8A\x68\xCB\x40\x0B\xC4\xA8\xCF\x0E\x2B\xEC\x6C\x1E\xE5\xCB\x50\x3A\xD8\x03\xA9\xE9\x21\x3C\x03\x31\xF5\x1C\x15\x2D\x42\x15\xF2\xCD\xDB\xB4\x0A\x08\x30\xFF\xA3\xFD\x00\x9B\xFE\x17\x93\xC3\x20\x2E\xF2\xD4\xCE\x07\x69\xF2\x41\x02\x04\x77\xF5\x3A\x26\x2C\xD7\xE8\x9A\x83\x06\x9F\xEE\x12\x53\xE4\x67\xC3\xF5\xDB\xE1\xCA\x87\x07\xA1\xF4\x11\x64\xE4\x11\xCB\xF5\xDF\xEF\xA3\x8B\x07\xA3\xF8\x11\x76\xE2\xD1\xC6\xEF\xAD\xDF\x08\x17\xF7\x9F\x01\xE4\x9A\xF1\xAB\xE8\xCD\x49\x0E\xE9\xDB\x0F\x32\x03\x45\x93\xF1\xAC\xF7\xCF\x4B", - "\x05\xEA\xDE\x0E\x33\x08\xF5\xF2\xD7\x3E\xDB\x05\x56\xF7\x1C\x1B\xE5\xA8\xF7\xE8\xE8\xC7\x13\x34\xF5\xE4\x04\x0D\x30\xF7\x0E\xF7\xCF\xA3\x06\xD3\xE7\x04\x96\xE7\x0D\x14\xE1\xAA\xF5\xEF\x75\xCE\xD3\xED\x04\x96\xEB\x0D\x46\xF7\x7F\xFF\xD1\xAF\x06\xD3\xF3\x04\x96\xEF\x0D\x14\xE1\x5E\xC3\x08\xA9\x2F\x3E\xF5\x05\x20\xFC\x24\x16\xC7\x40\x1F\xC4\x74\xE4\x8B\x1E\xF6\x81\x02\x98\xE1\xF5\x11\x20\xF7\x03\x09\xB6\x37\xCF\x5B\x0C\xED\x85\x11\xB9\xE9\xF7\xE8\xC1\x17\x2D\xF7\x3A\x18\x5B\x06\x08\x6F\x37\xCF\xBB\x02\xAE\xFC\x05\x79\xF6\xEF\x9E\xC5\x21\xF1\x16\xE3\x00\x1E\x77\xF6\x83\x0F\xEE\xA6\xDB\xB4\x04\x07\xF0\x44\x31\xC3\x08\x59\xC6\xEE\xC1\x0A\x2F\x1C\xF7\x0B\xFA\x21\x3A\x2D\xFB\xC0\x0C\x01\xF4\x93\x06\x2F\x84\xF7\x47\xC1\x07\xFC\x56\x7B\x8A\x09\x30\xEC\xC4\x18\xF8\x58\xE8\xC6\x63\x0C\xF1\x85\x11\x3A\x14\xE0\x21\xF8\x91\xE2\xD3\x65\x05\xF2\xF5\x13\x32\xE0\xF9\x3E\xD2\x4C\xD0\x07\x96\xF3\x20\x71\x06\x03\xE2\x08\x29\xF8\x92\xCD\xDF\x6A\x04\xF3\xCE\x12\x3D\x17\xF9\x01\x09\xE7\xF9\xC9\xFB\xCA\x0D\x3D\xF8\x8D\x05\xE7\x4E\xDA", - "\xE8\xD1\xE1\xAD\xDF\x0D\x46\xF9\x5F\xDE\xF4\x4A\xFA\x47\xCE\xFB\x3F\x14\x00\x50\xF8\x04\xE8\xC7\xE9\x03\xEA\xDB\x0E\x04\x06\xF5\x9F\xC9\x28\xEE\x07\x5A\xFE\x3B\x0C\x01\xAE\xF0\x5C\xE8\xC7\x3C\x01\xFB\xC7\x08\x02\x24\xFB\x11\xB8\x9A\xF8\x04\xDA\xE9\x0E\x14\x03\xED\xD1\xEE\x74\xCD\x0F\x6F\xF9\x70\x05\xEA\x30\xFA\xD4\xFF\xD0\x01\x0D\xBD\x1D\xFA\x36\xB2\xFB\xCE\xE8\x1D\xC7\x01\xBE\xF5\x20\x7A\xE9\xDE\xEF\xE5\xF7\xCC\x01\x04\xFD\x3A\x14\x02\x00\xFC\x00\x04\xDE\xF7\xEB\xF9\x4B\xFD\x01\x11\xD9\x87\xFF\x40\x10\xFC\x21\xEE\x77\x53\xFC\x27\x1C\x02\x0E\xFD\x80\x3A\xEA\xDD\x5E\xA7\xF4\x10\xA1\xF7\x9B\xBF\xD0\x07\x01\xFD\x5A\x1A\xE8\xF7\xE5\xAD\xDD\x01\x1B\xFC\x8D\x10\x01\x8E\xFB\xF5\xD1\xFC\x11\x0E\xFA\xB8\x10\x6C\xF6\xFC\x02\x0A\xF6\xD9\xFD\x81\x07\x02\x35\xFF\x9F\x18\x01\x8E\xF8\xA3\xD1\xFC\x16\x0E\xFB\xDB\x0C\x0F\x01\xFE\xE8\xC1\x06\x05\xFE\xEF\x02\xDD\xB8\xFD\x40\x02\xFE\xBB\xF8\xBC\x8B\xFF\xE3\x04\x04\x0E\xFD\x78\xDF\xD1\x3B\x00\xF5\xDC\x1C\xA1\xF0\xD2\xF8\xC6\x2D\xFE\xFD\x41\x05\x7B\x48\x60\x24\x03\xF5\xDC\xFC\x76", - "\xFE\xFD\x48\x02\xFC\xCA\x09\x26\x05\xFE\xEC\xEF\x7D\xCA\x02\xBE\xFF\x09\x2A\xFF\x84\x02\x05\x6D\xFD\x6B\xB7\xCF\x51\x06\xF7\xD6\x03\xF9\xF6\x10\x57\x02\xFD\xFC\xAC\xF7\x64\x16\x0E\xFB\x5D\x01\xFC\x7F\x40\x0C\x05\x3F\x7F\x03\x06\x7D\x71\xFD\x41\x04\x5F\x02\xEF\x74\x06\x05\x80\x02\x04\x89\x79\xF4\x4F\x7B\x62\x6A\x19\x0E\xFB\x6B\x01\x10\x81\x40\x06\x06\x08\x80\x02\x06\x13\x7B\x00\x80\x00\x6D\x02\xEF\x72\x07\x19\x80\x00\x03\x91\x73\x01\x86\x76\x62\x68\x1D\x0E\xFB\x79\x01\x24\x80\x1C\x03\xF5\x64\x66\x06\x07\xAC\x17\x9F\x7B\x01\xDA\x7E\x41\x0C\x07\x24\x80\x5A\x79\x1D\x16\x5F\x09\x04\xB8\x60\x9F\x75\x03\x89\x0F\xAC\x66\x40\x0B\x03\x8D\x7C\x5A\x0F\x7F\x10\xAB\x3F\x7B\x27\x13\xE7\x76\x10\x06\x81\x44\x80\xE7\x05\xFA\x42\x04\x32\x80\x6A\x6F\x07\x3F\x80\x02\x04\x20\x04\x02\xB6\x01\x72\x75\x35\x67\x6E\x28\x63\x82\x00\x15\x88\x23\x22\x79\x75\x12\x16\x8A\xB6\x28\x63\x83\x02\x17\x8F\x27\x28\x79\x3C\x6E\x18\x81\x10\x18\x6B\xA8\x64\x21\x06\x06\x9B\x07\x7B\x00\x7A\x70\x9C\x42\x04\x3D\x83\x8F\x65\x08\x2F\x81\xD3\x0A\x82\x19\x10", - "\x2B\x1A\xF7\x66\x21\x06\x06\x87\x02\x24\x81\x9F\x75\x47\x09\x67\x02\x07\x84\x19\xBF\x68\x2B\x0A\x06\x3A\x6D\x04\xB1\x0E\x8A\x83\x40\x0C\x07\xA8\x66\x89\x02\x19\x8A\x08\x24\x80\x7F\x02\x5C\x77\x9D\x45\x82\x48\x81\x07\x17\x09\x81\x04\x8D\x82\xC1\x70\x41\x06\x82\x06\x05\x1D\x82\xA6\x4C\x02\x78\x81\xB4\x07\xFD\x42\x04\x7A\x83\x22\x89\x3C\x17\x18\x09\x05\x7A\x6A\x0A\x82\x04\x8D\x00\x09\x8B\x1D\x2E\x82\x03\x06\x28\x81\xCA\x4F\x02\xA5\x80\xB7\x04\x0B\x82\x04\x33\x1B\x21\x8C\x45\x3D\x82\x36\x81\x26\x8A\x44\x00\x83\x03\x07\xC0\x7F\xA3\x50\x02\x66\x81\x24\x04\x02\x80\x02\x72\x77\x7C\x65\x0C\xA8\x63\x93\x02\x19\x84\x09\x24\x80\x81\x02\x5C\x7E\x63\x3C\x80\xE8\x62\x25\x09\x0B\x98\x0B\x19\x5D\x30\x8E\x0B\x85\x11\xDD\x83\x4F\x72\x0C\x9C\x11\xFD\x66\x41\x0C\x0A\xAF\x82\x02\x11\x46\x66\x10\x29\x19\xDF\x81\x50\x07\x09\x32\x82\xDE\x04\x3B\x81\x0A\xA8\x63\x99\x03\x36\x8B\x2E\x32\x83\x03\x06\x81\x68\x0E\x91\x10\xFA\x83\x40\x02\x92\x7B\x83\xE3\x09\x3F\x82\x10\x06\x83\x62\x6A\x26\x06\x06\x9B\x02\x24\x80\xA0\x75\x47\x31\x19\x09\x04", - "\x41\x81\xCA\x5D\x02\x66\x82\x27\x04\x02\x86\x7A\x75\x13\x3F\x85\x0B\xA8\x63\xA0\x02\x3D\x8E\x2F\x03\x69\x02\x06\x45\x8E\x09\xA7\x10\x1C\x85\x40\x0C\x10\x80\x84\xD3\x08\x9D\x63\x10\x25\x83\xFE\x6E\x16\x1F\xA7\x58\x64\xE3\x81\x11\x1A\xA8\x74\x81\xE8\x61\x28\x0A\x11\x8F\x0C\x2F\x85\x40\x03\xAA\x64\x84\xD1\x0B\x4D\x83\x10\x34\x6A\x38\x84\xB7\x0A\x13\x83\x84\xE8\x62\x28\x06\x06\xA3\x02\x24\x80\x21\x02\xD7\x6D\x6A\xFD\x7B\x7D\x65\x0A\x26\x81\xA6\x00\x09\x85\x08\x32\x75\x3C\x87\x45\x87\x9F\x68\x02\x33\x84\x93\x0C\xAB\x41\x04\x51\x87\x47\x8D\x41\x17\x85\x00\x00\x52\x89\x12\x90\x10\xC6\x6A\x23\x85\x97\x66\x81\xAA\x00\x3C\x87\x1C\x0F\x82\x03\x05\xAA\x17\x9F\x6C\x02\x55\x85\x81\x0E\x93\x43\x04\x51\x83\x8F\x6D\x0A\x26\x81\xAE\x02\x59\x89\x1C\x31\x85\x02\x06\xB3\x68\x9A\x70\x02\xDD\x2E\x6C\x7E\x24\x35\x1A\x06\x06\xAE\x1D\x0E\x9A\x0D\x80\x87\x40\x0C\x06\x9F\x85\x27\x12\x60\x86\x10\x07\x65\xA8\x67\x2C\x06\x17\x98\x0B\x87\x86\x51\x68\x8E\x75\x02\x8F\x87\xBA\x01\x6C\x01\x86\x2D\x84\x93\x06\x08\x32\x75\x97\x86\x61\x89\x19\x85", - "\x08\x8E\x79\x1D\x1D\x6C\x3B\x81\xE8\x63\x2D\x06\x06\xB8\x02\x24\x80\x22\x02\xD7\x60\x6B\x03\x05\xB5\x13\x18\x9C\x0E\xAC\x86\x40\x01\x6D\x2F\x86\xB1\x0F\x6C\x86\x10\x28\x85\x62\x6A\x2E\x06\x06\xBB\x02\x24\x81\x22\x02\xD7\x52\x65\xAD\x87\x67\x8C\x39\x00\x87\xB2\x86\x70\x81\x3B\x2E\x86\x06\x07\xBF\x6F\xA3\x7D\x02\x6D\x85\x42\x0A\x08\x32\x75\xC8\x84\x5C\x88\x8E\x7E\x02\x24\x80\x30\x04\x02\x96\x7A\xB5\x64\xBA\x62\x10\x10\x65\x3D\x84\xB6\x0A\x1D\x81\x04\xDA\x18\x6D\x89\x3C\x21\x87\xC9\x84\x3A\x62\x0C\x0D\x87\x06\x05\x23\x02\xD7\x64\x87\xD2\x87\x7D\x63\x0C\x24\x80\xC5\x00\x09\x8E\x08\x2C\x74\x4A\x5E\x41\x0C\x1D\x88\x86\x1D\x11\x7D\x83\x10\x2C\x87\x5A\x86\x12\x1B\x70\x46\x04\xA3\x85\x77\x8B\x2E\x30\x6B\x02\x04\x59\x6B\xC7\x68\x87\x4E\x08\x81\x81\x10\x0A\x86\x80\x70\x82\x89\x17\x84\x78\x0A\x05\x64\x81\xCA\x49\x03\x0E\x89\x40\x02\x09\x2C\x74\x06\x8B\x40\x0C\x20\xBD\x87\xFE\x08\x25\x08\x21\x91\x88\xC6\x86\x93\x06\x09\x2C\x74\xEF\x19\x42\x02\x6E\x37\x67\xCA\x01\x5F\x8A\x35\x37\x6B\x03\x05\x89\x82\x20\xBE\x0B\x06\x5E\x41", - "\x07\x22\xA8\x66\xCD\x02\x8A\x8C\x39\x26\x65\x03\x06\x72\x82\xF3\x55\x88\x7F\x08\x8E\x80\x05\xA8\x63\xD1\x00\x09\x83\x0D\x24\x80\x98\x02\x5C\x7A\x23\x81\x04\x78\x85\x28\x75\x0D\x26\x81\xD6\x00\x09\x89\x09\x32\x75\x53\x5E\x41\x09\x21\xA2\x69\xD8\x00\x8F\x8A\x09\x10\x89\x0A\x07\x86\x81\xCA\x59\x03\x3C\x8B\xAC\x7C\xB3\x51\x89\x9E\x84\xD1\x7C\x23\x9E\x02\xE8\x77\xCB\x19\x10\x17\x1C\xF7\x67\x36\x0C\x23\x9B\x07\x58\x5E\x41\x06\x26\xAF\x88\x0F\x0D\xC2\x63\x10\x28\x89\xA8\x64\x37\x05\x19\xBE\x0B\x7F\x67\x40\x02\x74\x37\x67\xDE\x02\x19\x8F\x0D\x37\x89\xD5\x07\x9E\x86\x10\x05\x1D\xE2\x87\xED\x02\x28\xB8\x59\x21\x8A\xA1\x8A\x10\x08\x66\x70\x88\x93\x04\x28\x86\x04\x12\x6F\x3E\x81\x0E\x00\x8A\x41\x05\xA4\x88\x28\x85\x8A\x02\x12\xA5\x82\x10\x0C\x8A\xF8\x86\x12\x1C\x29\xAA\x7C\xA1\x73\x38\x03\xFD\x49\x07\xA1\x03\xD4\x7F\x29\x81\x04\x09\x79\xE4\x78\x0E\x23\x8A\xC1\x06\x29\x06\x2A\x8A\x04\xA9\x8B\x07\x8D\x0E\x2C\x8A\xC5\x07\x2A\x0F\x2A\x83\x56\xE8\x62\x3C\x04\x2B\x90\x07\xB0\x01\xFE\x29\x6B\x67\x8A\x43\x7C\x6A\x67\x0F\x3B\x8A", - "\xD5\x06\x2D\x0E\x2B\x8B\x8A\x31\x7D\x28\x7C\x0F\x04\x8B\x41\x07\xBE\x79\x10\x3F\x8A\x57\x7F\x7D\x61\x00\x3C\x45\x7E\x7E\x41\x02\x0C\x37\x8A\x06\x07\xD2\x71\xF9\x46\x00\xD4\x89\x81\x07\x0C\x18\x8B\x1A\x7B\x7D\x6B\x00\x1D\x8B\x75\x08\x33\x00\x2E\xA2\x78\xA1\x70\x04\x04\x2E\x83\x08\xD1\x03\xB9\x8A\xCF\x62\x69\x15\x03\xBA\x8E\x24\x16\x03\xEE\x89\x06\x70\x8B\x5A\x00\xF2\x88\x8D\x0B\x0D\x35\x8B\xCF\x77\x07\x8F\x01\x39\x8B\x38\x08\x38\x0C\x2F\xA8\x63\x24\x00\xC0\x8F\x27\x25\x03\x03\x8F\x7D\x69\x02\x06\x8C\xDB\x06\x3A\x05\x2F\x98\x7E\xDE\x7E\x40\x0E\x02\x0C\x8C\xDE\x07\x3B\x0F\x30\xA8\x63\x33\x00\xC5\x87\x1C\x34\x03\x17\x8F\x7D\x68\x03\x1A\x8C\xC9\x05\x3E\x05\x2F\x8A\x81\x3F\x69\x0F\x0A\x67\x5B\x07\xFE\x02\x5C\x70\x2C\x8F\x81\xA1\x72\x0F\x07\x32\x92\x08\x2A\x8D\xAC\x78\x9A\x7F\x00\x20\x8E\xE4\x5E\xFB\x40\x8B\xBA\x7D\xC4\x81\x10\x04\x01\x35\x8D\x71\x05\x00\x37\x8C\x32\x8F\x8F\x69\x04\x3D\x8C\xD0\x06\x02\x00\x34\xB9\x6B\xE8\x62\x13\x04\x34\x95\x07\x0F\x03\xD1\x88\xEB\x77\x67\x53\x03\xD2\x81\x14\x14\x00\x4E\x8E\x8F\x78", - "\x9A\x58\x01\x52\x8F\x1A\x55\x35\x82\x04\xA7\x81\x28\x7D\x05\x2F\x8C\xC7\x06\x07\x06\x06\x80\x8B\xDD\x7F\xA7\x63\x10\x1E\x01\x06\x8F\x18\x0C\x17\x58\x3D\xDD\x2C\xB4\x8F\xEB\x68\x66\x65\x02\xC1\x8A\x06\x2B\x8D\xB6\x21\xDB\x88\x2C\xAF\x8D\x3F\x68\x1B\x06\x30\xB1\x01\x74\x8E\x6B\x66\x37\x89\x04\xC0\x8A\x02\x8A\x33\x80\x00\x73\x02\xC1\x88\x07\x3D\x8D\x8C\x13\xDF\x87\x98\x4D\x79\xB0\x62\x1E\x06\x30\xBF\x01\x88\x8D\x15\x7A\x38\x83\x04\x81\x8C\x3A\x61\x08\x06\x8C\x86\x01\xE4\x82\x10\x3D\x00\x93\x8F\xA6\x84\x01\xA1\x72\x88\x02\xC1\x8D\x08\x1A\x8E\x01\x07\x10\x0D\x39\x81\x04\xC0\x8A\x07\x83\x38\x8F\x02\x06\x8C\x25\x04\x3A\x80\x00\x49\x03\xE9\x80\x00\x29\x8E\xD9\x82\xC1\x8B\x09\x2F\x8E\xF2\x7F\xB3\x8A\x10\x1D\x5D\x06\x05\xD3\x18\x29\x91\x10\xBC\x8C\xE5\x89\x28\x82\x10\xBE\x8E\x41\x00\x74\x37\x67\x9D\x00\xD8\x8C\x2D\x0F\x1D\x17\x58\x6A\x6E\x09\x0A\x8F\xC1\x05\x15\x06\x06\x8C\x8F\x7A\x89\xAE\x7F\x3A\xA1\x02\xAF\x8F\xFE\x75\x47\x22\x5D\x06\x07\xA1\x82\xA6\x63\x02\x7A\x58\x29\x0F\x3A\x97\x01\x66\x82\xD9\x56\x10\x1B\x6C\xA8", - "\x66\x29\x00\x3D\xAB\x0B\xE6\x8D\xF5\x87\x9F\x67\x02\x7A\x58\x2A\x0F\x3A\x82\x80\x75\x12\x64\x62\x10\x28\x8F\x3F\x6A\x2A\x0B\x3E\xBE\x0B\xF6\x8D\x40\x0E\x3D\xA1\x72\xAB\x02\x9E\x5C\x0A\x2F\x8E\x59\x03\x6E\x87\x64\x46\x60\xF2\x2F\xE1\x57\x64\x48\x30\x1E\x5D\xAF\x6D\xFE\x39\x5D\x0E\x90\x3C\x69\x1A\x2E\x5E\xFF\x03\xE6\x51\x41\xB4\x32\x16\x92\x04\x90\x1C\x41\x5E\x79\x44\x80\x4B\xA8\x7C\x65\xC3\x69\x6D\x64\xCB\x0C\x90\x5F\x5A\x6B\x06\xC4\x06\x59\x5A\x6C\x53\x0A\x7F\x7F\x03\xAA\x5D\xF8\x54\xCB\x01\x46\x58\x06\xED\x5F\xFD\x31\x30\x31\x91\x99\x54\x43\x8F\x5E\x65\x59\xAE\x52\x16\x3A\x90\x52\x05\xAE\x58\x15\x3E\x90\x97\x5D\x99\x50\x88\x4A\x05\x43\x93\x3F\x01\xFE\x18\x05\x47\x93\xE7\x52\x44\xA5\x59\x02\x4B\x84\x45\xBE\x19\x5F\xD8\x40\x13\x9E\x27\x00\x00\x18\x60\x53\x05\x45\x99\x3C\xB4\x33\x5E\x39\x45\xA4\x4D\x41\x07\x5E\x3E\x43\x9E\x91\x5D\x90\x17\x9D\x39\x46\x04\x5F\x92\x18\x99\x39\x7C\x6C\x54\x91\x0B\x5A\x3A\x61\x5F\x69\x90\x23\x6D\x46\xAF\x6D\x63\x90\x5D\x61\x47\x82\x04\x47\x93\x5E\x35\x47\x8A\x04\x77\x91\x6D\x6F\x46", - "\xB7\x6D\x7B\x90\x08\x9D\x47\x9A\x61\x06\x07\x5E\x3C\x40\xB5\x40\x61\x93\x91\x51\xFF\x33\x91\xED\x3F\x5E\x3F\xFE\x3F\x91\x4E\x93\x19\x91\x20\x66\x5E\x8E\x06\x02\x52\xBF\x27\x5E\x90\x91\x1D\x19\x60\x6D\x3F\x57\x4A\x58\x09\x49\x92\x05\xAD\x5C\xEB\x53\x45\x9D\x92\x68\x50\x56\x0D\x81\x55\x05\xA3\x91\x52\x0E\x1B\x58\x05\x3D\x52\x58\x09\x4A\x92\x05\x5E\x59\x50\x0D\x43\x74\x32\xD6\x4E\x58\x01\x4B\x92\x05\xD6\x4C\x56\x05\x4B\x81\x05\xB7\x93\xED\x4E\x1A\x2F\x61\x3E\x05\xEF\x34\x43\xBE\x92\x41\x04\x30\x9A\x4B\xAA\x6E\x00\x02\x30\x9B\x42\x70\x90\xBD\x3C\x32\x9C\x46\xBD\x3E\x4B\x4C\x33\x91\x4C\xAA\x91\xC5\x90\x34\x9E\x4C\x83\x93\xAD\x67\x0A\x54\xCB\x3D\x3E\xD7\x93\x14\x98\x4D\x8F\x93\x96\x93\x36\x94\x4D\x91\x90\xD1\x93\x91\x5D\xFB\x18\x05\xE3\x90\x37\x9C\x34\x65\x93\xDF\x91\xFB\x3E\x4D\xAB\x50\xE4\x91\x0F\x61\x4E\xAD\x63\xEF\x90\x1F\x97\x42\x69\x93\x53\x6F\xF2\x49\x1E\x2C\x45\x49\x07\x17\x38\x15\x3F\x47\x0C\x4B\xED\x2B\x66\x41\x05\x76\x61\x55\x01\x50\x89\x05\xF0\x5C\x56\x00\x7F\x74\x32\x3E\x4C\x50\x09\x50\xBD\x04\x58\x59", - "\x50\x0D\x50\xB7\x5F\xED\x3F\x43\x9D\x3E\x40\x47\x12\x96\xFD\x45\x66\x55\x94\x46\x41\x99\x54\x41\x62\x05\x1B\x96\x54\x02\x80\x53\x8D\x53\x93\x47\x9C\x33\x47\x59\x2F\x4B\x51\x05\x52\xBE\x04\x92\x3C\x2D\x39\x52\x81\x05\x2B\x97\x0A\x61\x42\x8A\x5F\x47\x5B\xCD\x4C\x14\x32\x94\x46\x07\x8C\x38\x15\x36\x94\x41\x04\x4E\x9B\x41\x4C\x4D\x3A\x95\x42\x0D\x53\x89\x44\x4C\x04\x63\x4F\x0F\x35\x35\x58\x04\x51\x91\x14\x06\x95\x47\x58", + "\xF2\x11\x7F\x1C\x9C\x83\x55\x85\xF2\x63\x73\x32\x88\x08\xE9\x81\xD8\x63\x80\x80\x85\x11\xA0\x81\x0A\x89\xEA\x07\x84\x12\x8F\x80\xBB\x79\xDF\x4C\x85\x4B\x82\x06\xFA\x83\xF0\x6A\x7B\x01\x0E\x0C\xAC\x78\x3B\x86\x05\xA4\x7C\xD7\x7E\x84\x00\x01\x10\xA3\x85\x8E\x74\x08\xCA\x7F\x29\x81\x7B\x74\x84\xE8\x7D\x82\xDB\x77\x05\xFF\x75\x6C\x67\x18\x5F\x81\x20\x24\x14\x50\x89\x0A\x92\x85\x2B\x93\x7E\x5E\x7C\x17\xB1\x84\x5A\x83\x09\xE8\x80\xE9\x71\x80\xFD\x6F\x12\x7E\x84\x52\x8A\x08\xF9\x7D\x2E\x9D\x85\x9C\x83\x16\x87\x7F\x60\x8F\x0C\xC3\x87\x07\x9F\x85\x4E\x84\x12\x88\x86\x07\x76\x10\x22\x86\xEF\x78\x86\x71\x85\x08\x94\x87\xCF\x66\x10\x44\x17\x33\x8A\x85\xDF\x84\x19\xA1\x87\x03\x89\xFD\x40\x83\xF6\x68\x7D\xE4\x83\x20\x16\x86\x09\x8C\x0A\xEA\x87\x18\x8C\x7D\x69\x16\xF5\x7C\x84\x6F\x80\x07\xFD\x85\x1D\x94\x84\xF8\x81\x49\x3A\x87\x73\x8B\x0C\xF5\x84\x40\x88\x7B\x12\x79\x1E\xA0\x83\x68\x89\x08\x8C\x7F\x06\x81\x7A\x1D\x83\x13\x9A\x82\x7F\x82\x0B\xA8\x75\x40\x9D\x12\x03\x8A\x21\x81\x08\x74\x84\x11\xC4\x84\x38\x97\x87\x08\x8D\x05", + "\x9A\x88\x00\x03\x0F\x8A\x82\x3D\x9F\x87\x29\x87\x22\x9B\x13\x8C\x8C\x06\x89\x08\x3F\x88\x89\x83\x87\x24\xA1\x7A\x95\x82\x26\x2C\x8B\xD5\x6E\x74\x24\x80\x1E\x9E\x61\xB1\x64\x13\xDC\x75\x44\x9C\x85\xAC\x10\x28\xB1\x6D\xA0\x8D\xFD\x28\x74\xAE\x19\x89\x02\x08\x6B\x3C\x85\xA3\x85\xFD\x0A\x0A\x52\x85\x8A\xFE\x66\x27\x99\x78\xEA\x14\x04\xEC\x86\x40\x1C\x81\xF9\x86\x07\xB1\x6C\xAC\x82\x10\xDA\x89\x55\x8A\x6A\x52\x8C\x05\xB5\x69\xF4\x78\xEA\x5C\x88\x46\x9E\x8A\xCF\x86\x2C\xAB\x88\xB4\x8D\x1C\x31\x83\x50\x0E\x8B\xD3\x81\x20\x2A\x8B\x9A\x8C\x16\xAD\x88\x0B\x61\x89\x3F\x81\x3B\x30\x8A\xF9\x6C\x88\x21\x8B\x53\x8D\x8B\x3C\x89\x24\x9E\x80\x9F\x03\x03\xCD\x0E\x64\x7F\x8A\x7A\x65\x30\x94\x0F\xBD\x60\x09\xC3\x0B\x0D\x94\x81\x2E\x7B\x24\x8C\x8A\xED\x70\xED\x06\x0B\x5F\x96\x8B\x03\x0B\x32\xAE\x87\xCA\x83\x10\x17\x8F\x4D\x89\x08\xBB\x87\x19\xA1\x8D\x91\x8D\x13\x80\x7D\xF4\x78\x8C\x02\x0B\x34\xA8\x8C\x5D\x81\xDB\x25\x8D\xF9\x6D\x7B\x23\x8C\x28\xB1\x8D\xA1\x81\x18\x0A\x8D\x76\x1B\x6B\x2F\x8E\x28\x3B\x8B\x9E\x0F\x18\x86\x8E\x42\x19", + "\x8D\x6F\x8B\xAC\x6A\x8D\xCF\x86\x10\x43\x8F\x8D\x78\x89\x4D\x8F\x34\x84\x8F\x76\x80\xF2\x6F\x85\xDA\x6F\x86\xB2\x8B\x35\x80\x01\xE8\x8B\x1C\x82\x08\x75\x9C\x0E\xBB\x8C\xEC\x46\x08\x5C\x80\x18\xC5\x7A\x67\x93\x7D\x2C\x84\x8F\x08\x8B\x80\x08\x48\x3C\x84\x47\x90\x89\x77\x86\x11\x9E\x88\xAB\x81\x10\x25\x88\x06\x9F\x88\xE8\x8D\x14\xA2\x87\x50\x85\x10\xC6\x84\x7C\x91\x84\x0C\x8A\x3D\xB1\x8A\x32\x82\x0C\xF5\x8D\x4C\x9A\x86\x12\x8F\x0D\xB1\x8F\x6C\x89\x02\xDB\x84\x02\x67\x8F\x15\x8A\x3F\xB4\x87\x14\x8F\x07\x99\x87\x42\x93\x88\x03\x93\x1D\x94\x85\x06\x9B\x1F\xC0\x8F\x35\x92\x89\xEB\x8B\x42\xB1\x6C\x04\x99\x21\xF6\x8C\x86\x9B\x8F\x8D\x8B\x3F\xAE\x8F\x24\x82\x1F\xEC\x8C\x00\x01\x91\x7C\x8D\x1B\xBE\x8F\xF4\x8F\xFB\x1B\x93\x8A\x85\x91\x94\x81\xEB\x68\x85\x11\x98\x09\x97\x91\x8C\x81\x90\x82\x84\x45\xB7\x8E\x07\x9F\x09\xCF\x86\x85\x8B\x90\xFF\x8E\x43\x94\x85\x57\x8C\x23\xA4\x8B\x8B\x84\x90\x85\x82\xF3\x66\x8F\x23\x92\x21\xA9\x80\x91\x9B\x8F\xDC\x8A\x3A\x86\x8F\x31\x8C\x21\xB6\x92\x90\x97\x92\x49\x96\x40\x8A\x08\x1A\x9D\x09", + "\x89\x93\x31\x98\x91\xAB\x80\x4B\xBA\x90\x13\x9A\x25\x89\x09\x95\x80\x92\x63\x96\x20\x85\x90\x4B\x80\x21\xDE\x93\x8E\x9B\x8F\x65\x92\x45\xB9\x8F\x62\x89\x25\xB1\x6E\x39\x83\x89\x67\x96\x24\xAA\x93\x20\x99\x24\xAE\x8E\x28\x76\x7E\xD5\x8D\x3D\x8C\x93\x8E\x8B\x1F\xFE\x92\x36\x60\x94\xC7\x8E\x25\x83\x95\x08\x90\x12\xE3\x8E\x48\x92\x8E\x79\x97\x3D\x9F\x90\x34\x90\x0C\xA3\x81\x72\x85\x81\xD2\x8C\x4B\x92\x86\x4A\x9D\x0C\xCC\x8C\x78\x81\x82\x09\x8A\x3A\xBF\x90\x3D\x92\x26\xB0\x91\x4A\x82\x8C\x2E\x93\x4E\xAF\x93\x14\x9E\x29\x9C\x80\xED\x6C\x93\x02\x96\x4D\x93\x95\x64\x8B\xF6\x17\x96\x4E\x81\x94\x04\x0B\x51\xB2\x95\x83\x8E\x28\x83\x8F\x1E\x63\x6B\x88\x1C\x17\x81\x97\x67\x8F\x1D\xAE\x95\x78\x91\x6D\xC5\x90\x22\x99\x78\xF1\x80\x15\xA4\x7D\xB2\x9D\x81\xCB\x95\xC3\x75\x84\x00\x0F\x2C\xD9\x89\xB4\x98\x81\x09\x0B\x58\x8D\x0F\xBC\x8D\xE0\x5C\x95\x75\x7E\x96\x4A\x6B\xAF\x44\x63\xBD\x6F\x24\xCE\x8D\x40\x0D\x26\xD8\x96\x20\x28\x96\xC8\x84\xD5\x20\x66\x16\x60\x97\x7A\x63\xAF\x4F\x27\x74\x93\x10\x51\x24\xBD\x82\x08\xEC\x1F\x5E\x81", + "\x09\x7C\x9C\x2E\x86\x08\x46\x1A\x97\x00\x03\x9A\x00\x98\x81\x9D\x2F\x83\x0A\xE0\x1E\x8D\xC9\x66\x5D\xAF\x8D\x84\x00\x49\x05\x9A\x1C\x5B\x70\x06\x0C\x79\x00\x98\x0A\x96\x2E\x80\x00\x1D\x2E\x98\x01\x09\x7B\x18\x98\x00\x01\x25\xB7\x8D\x1B\x90\x98\x03\x0E\xEF\x48\x98\x83\x02\x32\x8B\x8D\x45\x00\x99\x02\x0D\x76\x1B\x99\x3B\x96\x32\x89\x08\xCB\x9E\x98\x09\x0A\x8A\x00\x98\x99\x9B\x31\xB3\x73\x6B\x76\x99\x88\x6C\x26\xBB\x6A\x9D\x9F\x10\x28\x9B\x46\x9E\x99\x00\x07\x8E\x00\x99\x59\x23\x34\xC0\x98\xD1\x9B\x98\x47\x9D\x39\x1A\x02\xF0\x5D\xFE\x4D\x9A\x86\x63\x0F\xF4\x0E\x4F\x08\x60\xF0\x5C\x2D\xCF\x99\xED\x51\x9A\x09\x0C\x5B\x9A\x9B\x1C\x8C\x35\xFF\x0E\x42\x14\x9A\x5F\x98\x6B\x97\x9B\xAC\x9A\x10\x43\x82\x41\x1C\x96\x66\x9B\x20\x28\x9A\xB1\x9E\xC3\x50\x98\xD9\x89\x08\x53\x9C\x6D\x97\x8B\xB0\x9F\x36\x86\x09\xF8\x61\x7F\xEF\x7F\xFD\x7B\x6A\x4C\x10\x1A\x8A\x0B\x75\x9B\x9B\x0A\x0E\x38\x97\x8E\xCD\x81\x10\x00\x9D\xDF\x89\x08\x7F\x9A\x21\x3C\x9B\xE2\x8E\x37\x8A\x0A\xE1\x8C\x9C\x88\x9E\x71\x8A\x9D\xC0\x9D\x38\x89\x0B\xE3\x83\x15", + "\x95\x9E\x20\x17\x9D\xD4\x89\x39\x83\x0B\xE6\x8C\x8D\x91\x9E\x65\x92\x9D\x84\x0B\x38\x98\x9D\xE8\x85\x87\xA3\x9E\x20\x25\x9C\xCE\x97\x3A\x83\x0B\xCB\x80\x00\xBD\x79\x6E\xB5\x9B\x4F\x70\x37\xF4\x9B\xD9\x8C\x6A\x0A\x0A\x76\xB7\x9C\xDD\x5D\x39\xEE\x5D\xEF\x97\x15\x44\x73\x55\x01\x9F\x81\x07\x1D\xDF\x61\xF1\x9F\x9D\x09\x60\x79\x86\x9F\xE1\x96\x1D\x8D\x08\xF3\x81\x08\xD7\x8F\x75\x8B\x9E\xD1\x9D\x17\xD4\x9C\xEA\x96\x9E\x6B\x86\x0B\x83\x08\x41\x6B\x3D\x9F\x98\xE9\x94\x9C\xAD\x98\x0B\x93\x9D\xC3\x92\x3C\xD5\x9E\x41\x08\x87\xAB\x98\x74\xA5\x9F\xF3\x93\x3E\x90\x9F\xFA\x86\x82\xED\x9E\x74\xAF\x9E\xF1\x9F\x3D\xE4\x9C\xF1\x9E\x9E\xAA\x98\x7C\xB3\x9F\x9F\x95\x3F\xEE\x9F\xFD\x86\x93\xF1\x9C\x75\xBB\x9E\x00\x0F\x3A\xE8\x9E\xFE\x9F\x9F\xD7\x9C\x7D\xBD\x9E\xF9\x98\x40\xAE\x9D\xCF\x8B\x84\x09\x0B\xC6\x71\x9C\xDB\x9A\x36\xCC\x71\xE3\x73\x9B\x6E\x9B\x77\xBE\x5C\xDC\x95\x3B\x99\xA1\x05\xBE\x75\x2A\x79\x77\x94\xA0\x81\x0C\x2D\xF5\x6B\x04\xBE\xA0\x24\xA0\x39\xB4\x9D\xBB\x88\x42\x81\x08\xB7\x9E\x86\xE9\x98\x00\x02\x9D\xDF\x81\x40\xEA", + "\x9D\x03\xA2\x08\x84\x99\x57\x8B\xA0\x01\xA7\x43\xF4\x8F\x0E\xB6\xA1\xCD\x9A\x51\xBF\xA0\x19\xA8\x3C\xB0\xA3\x01\xA1\xA2\x72\x91\x7F\xB6\x9E\x24\xAA\x0C\xC3\xA3\x0C\xA2\xA2\x4A\xA6\x7F\x8C\xA3\x61\x14\x43\xCE\xA0\xF2\x8F\x9D\x46\xA3\x89\x90\x9E\xE7\x99\x10\x5F\x8D\x0C\xAF\xA2\x96\x8D\x86\x84\xA3\xF0\x90\x3C\xDD\xA2\x18\xA0\xA3\x9D\x8F\x8C\x88\x9E\x2F\xA7\x44\xDB\xA2\x19\xB6\xA2\x64\xA4\x5A\xAA\xA3\x38\xAC\x46\xDA\xA3\x74\x8E\x8A\x73\xA3\x80\xAF\x9D\x3A\xA2\x45\xEE\xA1\x02\xA9\xA3\x70\xA2\x8F\x8A\x09\x92\x91\x10\x5F\xA0\xF2\x84\xA4\x00\x06\x90\xB1\xA3\x1C\xA8\x48\x8A\xA7\x00\xAD\xA4\x6D\xA7\x8E\x89\x08\x48\xA6\x47\xD7\x8C\x25\xBD\xA3\x92\xA4\x64\xB9\xA3\x1E\xA0\x00\x17\xA4\x03\xB3\xA2\x01\x0E\x93\xBC\xA0\x50\xA4\x40\x83\xA7\x26\xA4\xA5\xAF\x9A\x94\x80\xA2\x3F\xAE\x40\xF1\xA3\xE0\x88\x9E\xD7\x89\x96\xB0\xA5\x2B\xA4\x4B\xF1\xA3\xEB\x86\x6E\x00\x00\x97\xB9\xA0\x5C\xAC\x4B\xC4\x65\xC2\x9F\xA5\xC4\x68\x7B\x9A\x44\x2E\xA1\x4C\xFF\xA3\x28\xAC\xA5\xC7\xA1\x93\x99\x8D\x48\xA7\x1D\xE8\xA1\x32\xAD\xA6\xC8\x9E\x99\xAB\xA4", + "\x65\xAF\x4C\xC4\xA7\x27\xA8\xA6\x01\x0F\x75\x92\xA7\x52\xA9\x10\x07\x98\x29\xBE\xA6\xD8\xA0\x00\x39\xA0\x70\xA4\x4D\x81\x08\x39\xB7\x8E\xE7\xA3\x22\x08\x9F\x74\xAD\x4D\xEB\xA5\x2D\xA6\x08\xEC\xA6\x98\xA6\xA7\x77\xA3\x10\x0E\xA4\x27\xB6\xA7\xA4\xA1\x87\xB8\xA7\x70\xAB\x4F\xE5\xA5\x22\xAC\xA6\xA7\xA4\x9F\x80\xA9\x40\xA7\x4F\x83\xAA\x3C\xBF\xA7\x95\xA6\x9A\x82\x09\x7E\xA1\x3D\x8A\x0A\xB6\x82\x08\x0F\xA9\x20\x39\x70\x86\xA6\xF9\x04\xA8\x29\xB7\x63\x51\xA7\x9A\xBE\xA7\x89\xA6\x50\xCB\xA5\xBB\x96\xA8\xE1\xA1\x87\x98\xA9\x7A\xAD\x51\xB8\xA3\x8F\x64\xA9\x09\xAF\xA3\x99\xA9\x6A\xA9\x10\x23\xAB\x42\xA5\xA9\x12\xA9\xA0\xBE\xA6\x7D\x74\x51\xAD\xAA\x4C\xB7\x8E\x1C\xA9\xA5\x88\x81\x95\xA3\x4D\xD7\x8E\x4B\xA5\xA4\x30\xA8\x00\x3F\xA8\x84\xA8\x49\xB8\xAB\x4D\xB5\xA8\x3C\xAB\x8C\x83\xA1\x9C\xA5\x54\xC8\xA8\x4A\xAD\xAA\x36\xA8\xA4\x9B\xA9\xA3\xAA\x52\xCF\xAA\x46\xBE\xA9\x54\xAD\xA4\x59\xAB\x56\xAB\x53\xD6\xA8\x4B\xA7\xA8\x43\xAD\xA6\x87\xA8\xA6\xA7\x55\x8A\xA9\x8F\x9E\xAA\x3D\xAE\xAC\x82\xAB\xAD\xA4\x45\x9C\x72\x54\xAD\xA8\x55", + "\xAF\xA5\xBA\xA8\xAE\xA3\x10\x61\xA9\x50\xAF\x9D\x35\x7A\x65\x8B\x1E\x85\x02\x31\x86\x08\x55\x86\x08\x1A\x9B\xAF\x89\x09\xBF\xA3\x10\x01\xAC\xBE\x87\x20\xFE\x59\x21\x1E\x76\x4C\x91\x10\x0F\x6F\x40\x14\x99\x03\x0F\x62\x85\xAC\x5B\x4A\x10\x42\x9A\x41\x0C\x96\x03\x0D\x3C\x86\x08\xCD\xA3\x10\x02\x7F\x40\x0D\x98\x9F\xA9\xF0\x4A\x08\xC2\xA2\x10\x06\xAD\x40\x04\xAD\x19\x9A\x21\x0A\x6F\xD2\xAA\x5A\x94\xAD\x42\x1E\xAC\x02\x0F\x97\x43\x09\xA4\x92\x10\x34\xAF\x69\xAE\xAD\x06\x0E\xB6\x80\x00\xD4\xA0\x00\x26\xAC\x00\x0B\x97\x46\x74\xAD\xA7\x96\xA7\xA2\x57\xD0\xAA\xBA\x87\x64\x6F\xAA\x21\x00\xAF\x0F\x72\x5C\xE2\xA6\x72\xA4\xAE\x40\xAB\xAE\xA6\xA9\x84\x0B\x5C\x81\x0A\x5D\xB2\xAE\x65\xA7\xB8\xAE\xAB\xA4\xAB\x4D\xD5\xAD\x25\x89\xAE\xD4\xA8\xB9\x9C\xAE\xE4\x9E\x5D\xE4\xAB\x57\xA3\x08\xDE\xAC\xA6\x81\xAA\xEF\xA7\x5D\xC6\xAC\x7A\xA7\xA9\xC5\xAD\xAC\xA1\xAF\xB8\xA1\x5D\xEE\xAE\x40\x0C\xAF\xCD\xA8\xBF\xA0\xAE\xED\xAD\x55\xF1\xAF\x79\xB7\xAF\xF0\xAD\xBE\xB2\xAE\xFE\xAF\x5E\xF3\xAE\x56\xBB\xAF\x05\xB5\xBF\x82\xB1\xFF\xA3\x5C\xD1\xAB", + "\x78\xB1\xA3\xE5\xA9\xBF\x90\xAE\xA2\xA3\x60\x89\xB1\x5D\xB2\xB0\x06\xB1\xB8\x88\xB1\xB6\xA4\x60\xB1\x7B\x86\xB9\xA6\xCF\xAE\xC1\xA8\xAA\xA5\xAC\x49\xAF\x9D\x84\xBF\xB0\xDC\xA5\xC3\xA7\xAA\xFF\xA9\x56\xC2\xA5\x83\xA6\x08\xED\xAD\xC2\x9C\xB0\x0B\xBC\x5C\xA8\xB2\x89\xB3\xB0\x62\xAC\xAE\x80\xB0\x11\xBC\x62\xA4\xB0\x2A\xAA\x08\xF3\x96\x20\x36\x96\x83\x04\x30\x83\x09\x35\x29\x08\xB9\x6E\x20\x1C\x27\xA6\x91\x10\x4C\x98\x93\xA1\x08\xAE\x01\x2F\x9D\x44\xF0\x59\x36\xED\x7C\xF8\x4F\x05\x52\xB2\x84\x91\xA1\x27\xB0\x88\x05\x11\x27\x48\x87\x41\x08\x7C\x70\x05\x2C\xBF\x64\xB9\xA1\x98\xAA\x08\xB1\x04\xCC\x8C\xB2\xE3\x8C\x65\x80\x02\x2C\x0A\xB3\x03\x0D\x13\x79\x79\x36\xB3\x0B\x70\xB1\x0A\xAF\x73\x6D\xB1\x21\x34\x04\x3B\xBE\x42\xEB\x6D\x9E\xA9\x08\xB5\x04\xCF\xBE\xA6\x7E\x9F\x67\x81\x0A\x2D\x02\xB4\xC6\x8B\xB5\x0F\xB2\x22\x61\x14\x31\xA0\x69\x2B\xB4\x0A\x0F\x16\x02\xB5\xBD\x6B\x56\x10\xB5\x42\x18\x05\x82\xB5\xCA\x81\x09\x9F\x2F\x64\xBC\x67\x71\x0F\x7F\x41\x2D\xD3\x85\x10\xF0\x50\x59\x85\xB5\x2E\x02\xB4\x31\xA3\xB1\x85\xB4\x00", + "\x0A\x0B\x02\xB4\xB7\x89\xB2\xAB\xB3\x17\x2E\xB4\xDC\x6B\x6A\x82\x08\x2F\x02\xB4\xD7\x8F\xC8\xB5\xB5\x5E\x09\x69\x8A\x0A\x37\x22\xB5\x75\x12\xD3\x80\x01\x71\x20\x6C\x86\x46\x42\x07\x27\xB5\xB0\x00\x3E\x04\x41\xB1\xFE\x05\x29\xB2\xBF\x05\xB8\xB2\x21\x1E\x29\x64\xB0\x0C\x51\xB5\x42\x1B\x29\xC9\xB1\x18\x16\xB6\x83\x0A\x54\x16\xB6\x41\x02\x06\x93\xB2\x21\x1B\x2B\x64\xB3\x0C\x28\xB6\x42\x09\x2C\xC9\xB4\x18\x02\xB5\x1C\xA2\x5D\x45\xB6\x93\x17\x8E\x81\x31\xD9\x85\x07\x6D\xB3\x10\x06\x35\xB2\xA6\x06\xF4\xB2\x20\x09\x35\x64\xB7\x0C\x02\xB5\xCE\x7A\x2F\xC9\xB0\x19\x3E\xB6\x85\x05\x60\x49\xB5\x32\x02\xB4\x1D\x98\x00\x07\x31\x64\xBA\x0C\x02\xB4\x3A\x83\x38\xEE\xB4\x46\x1C\x9E\x81\x0E\x6D\x11\xB8\x8E\x1F\x62\x0C\x31\xD9\x8B\x06\x41\xBF\xC5\x11\x31\xB2\xAC\x06\x82\xB7\x75\x86\x33\x64\xBD\x0C\x21\xB9\x4E\x09\xB6\x00\x06\x19\x26\xB9\x84\x0A\x67\x49\xB7\x33\x0B\xB9\x06\x0D\xE5\xB5\xB4\x68\x00\x73\x83\x08\xA9\x29\xB6\xD1\x05\xE6\x82\x09\x9B\xB5\x6B\xD2\x04\xC7\xAA\x08\xCF\x31\xD9\x93\x07\x9F\xB9\x10\x53\x35\xB2\xB4\x06\x82\xB2", + "\xF2\x58\x37\x64\xB5\x0D\x03\xB9\x42\x1B\x39\xC9\xB3\x3B\x12\x7C\x6E\x39\x6C\xD6\x06\xC3\xAA\x08\xF9\x36\xE2\xBF\x13\x9C\x73\x72\x49\xB7\x35\x08\xB8\x0A\x09\xE7\x09\xB6\x6C\x02\x68\xBD\x7F\xD2\x29\xB6\xD9\x02\xD0\xB1\x60\xAB\x3A\x75\xDB\x0F\x8C\x78\x3A\xC9\xB2\x1B\x02\xB5\xB7\xB8\x72\xDB\x07\xDC\xAA\x08\x5A\x39\xD9\x9C\x07\xBB\xB9\x10\x79\xB9\xAD\xBD\x06\x82\xB3\x16\x36\x8D\xF5\x7E\x1D\x6D\xB2\xA7\xBC\x16\x41\x0B\x2E\x86\xBC\x6D\x21\x14\x70\x95\x72\x09\xBC\x7E\x10\x7C\x4A\xBC\x2D\xB6\x37\x85\x11\x50\x11\x61\x87\xB9\x38\x01\x0A\xAB\x9D\x36\x83\x11\x50\x02\xB6\x99\xBD\x38\x3D\x8C\x0C\xAA\x41\xCE\x11\x50\x01\x7F\x9D\x47\xFD\x7B\x81\xC8\xBD\x3C\x0D\xB6\x36\x35\x9A\x96\xB9\x92\xA1\xBC\x7F\x18\x79\xB1\xBD\x1C\xB3\xBD\x0F\x1A\xD8\xB9\x7B\x36\xB5\x45\x77\x9A\xED\xA6\x08\x39\xA6\xF1\x81\x0E\xB0\x99\x10\x61\x7F\xE4\xAF\xB2\x39\x7A\xF8\x85\x0F\xF0\x7C\x2D\xCC\xBF\xEF\xBF\x6E\x72\x9F\x6A\x14\xBC\x8D\xAC\x2D\xEF\x7C\xE1\xA7\x0E\x41\x08\x97\x87\xBE\xDE\x7E\x27\x2A\xBF\xF3\xB0\xA8\xD3\xBC\x46\x1F\x63\xD4\xB1\x7D\xFF\x11\x50", + "\x1A\x77\xC5\x7C\x85\x8E\x87\x38\xB2\x46\xD7\xBF\xE3\xBC\xAB\xCD\x1B\xE2\x81\x09\x4E\x41\x43\xDB\xBD\xD3\x9C\xAD\xB8\xB9\x28\x28\x86\xFA\xB5\x7E\xDB\x0D\x50\x1E\xAD\x9D\x44\xD0\xA4\xBD\x81\x09\x70\x9D\x46\x71\x9B\x6B\xFE\xBE\xC9\x43\x1D\xD8\x1B\x4D\x89\xC2\x62\xA5\xBF\x92\xAF\x61\xB5\x13\xEB\x81\x43\x8E\xC0\x4D\x39\xA1\x08\xC5\xF0\x95\xAC\x6D\x29\x43\xD7\x8E\x05\xC3\x08\x98\xAF\xCE\x87\x66\xA8\x37\x50\xEE\xBE\xE6\xAA\x08\xB2\xAA\x20\x0C\xB5\xC8\x83\x80\xB3\xB1\x0B\xD8\x11\x41\x09\xC8\x83\x09\x15\xC0\x42\xF2\x8A\x5A\xAA\xBE\xD0\x09\x28\x3A\xB5\x19\xCE\x6B\xE1\xBE\xF4\xBD\xA0\x94\x65\xF8\x9F\xBF\x80\x04\x6C\xEA\xBE\x93\x1A\xBE\xCF\x98\x00\x36\xBF\xF6\x78\x6C\xC6\xC0\x8D\x11\xA8\x4A\xC1\x09\xF8\xC1\xEA\x01\x14\x4E\xB6\x13\xC1\x08\x0F\x28\x08\xDA\x84\x2D\xC3\x0E\xA1\xA1\x9D\x01\x0A\x2B\x2C\x04\xCE\x13\x9C\x72\x7F\xE6\xBE\x42\x18\xB6\xA5\xBA\x20\x03\x2A\x31\xC2\x10\x65\xC3\x58\x98\xBE\xA3\x20\x1D\x94\x99\x1C\xCA\x10\x46\x28\x1B\xD8\x11\xE8\x85\x0C\xDF\xC0\x81\x08\x54\x33\x9E\x40\x11\x2A\x77\xC4\x63\x8A\x08\x13\xC5", + "\x1C\x41\x0B\x54\x3E\xC3\x38\x15\xE6\x60\x5F\x84\xBB\x84\xE3\x7F\x5B\x28\xC4\x7F\x14\xB7\x8B\xC5\xFE\xBA\x81\x89\x0B\xA3\xA9\xC3\x01\x0D\xB5\x17\xC2\x00\x0F\x2F\xE3\x9B\x06\xB0\xA0\x9E\xBA\x21\x33\x2C\x2E\xC2\x40\x75\x69\xB5\x87\xC1\x09\x08\xB7\x0B\xC1\xE4\x15\xD7\x38\xA7\x1E\xD2\x54\xBB\x2E\x07\xFF\x13\xEF\x88\x48\xAF\xC7\x9F\x15\x2E\xA4\xC7\x4F\x08\xA5\x51\x94\x85\xAD\x57\x08\xA2\x20\xB8\xA4\x17\xED\xB2\x80\xBE\x89\xC9\x1C\x39\xB7\x76\x70\xC5\x95\x39\x71\xA1\xA6\x8B\xD5\x21\x8E\x67\xC5\x85\xC2\x21\x03\x31\x40\xC4\xD8\x1D\x45\x8E\x6E\xC5\x95\xC6\x20\x05\xB9\x55\xC2\x10\x0B\xBB\x26\xCE\xAC\x12\xC2\xC1\xB2\xA3\x2F\xCA\x10\x19\xB8\x37\xD8\x11\xA5\xB3\xFE\x93\xB0\x6C\xC9\x8C\x86\x0A\x83\x35\x23\x1E\xBB\x13\xD1\xC0\x75\xCC\x63\x81\x08\x14\xCD\xC6\x5A\x25\xE6\x72\x91\x76\xC7\x51\x35\x78\x33\xD9\xC6\x17\x2A\xAF\x82\x08\xDE\xA8\x8F\x90\x20\x6F\xAC\x2A\xE4\xC1\x21\x15\x30\x48\xCB\x1D\x16\xAF\x07\xBE\xAB\xA3\xAB\x08\xC0\x01\x1A\x3C\x90\xDE\x0C\x68\xA2\x08\x31\x64\xB7\x99\xC3\x50\xC9\x10\x5C\x31\x45\xC7\x0E\x32\xC2\x04", + "\xC3\x08\xDE\xAE\x5D\xB6\xC6\x9D\x3F\xC8\xC9\x08\xD6\xA2\xC9\x81\xCA\x10\x65\x25\x42\xC6\x08\xFB\xB0\x13\xFF\x13\x22\xCF\x90\xA3\xC8\x0A\xD2\xC8\x3C\xBD\x26\xF4\x10\x2B\xCA\x93\xB7\xAD\x42\x0B\xB2\x1C\xCE\x20\x2D\x34\x99\xCB\x1D\x61\xC2\x4C\xDC\xAD\xE1\x27\x25\xC3\x08\x5C\x38\x92\xC1\x0D\xA8\xA7\xCA\x0A\x0C\xB3\xB4\x11\xA0\x05\x6C\x10\xC6\xD1\xBB\xC4\xDD\xB6\x20\x19\xC8\xD1\xAA\x94\x82\x0B\xD2\xB2\xC9\xE0\x33\x13\xE3\xB6\xAD\xC1\x91\x89\x09\x08\xD0\xC1\x0A\x08\xDD\x10\xC5\x84\x3B\x89\xE8\xB4\x59\xC9\x08\xBE\xAD\xAF\xA6\xBD\x51\x22\x80\xA9\xAD\x57\xC5\x29\x9D\xC3\x20\x04\xC4\x3A\xC9\x10\x19\x3A\xD7\x95\x13\x8A\xB2\x26\xF9\xCB\x17\xC6\x86\x89\x09\xCF\x2F\xCB\x03\x15\xB6\x10\xC5\xC1\xCD\x67\xF7\xC8\x00\x09\x3A\x7F\xCE\x20\x2C\xBB\x4D\xCD\x6E\xB2\xCA\xAA\xA7\x63\x8E\xCE\xEF\xAC\xBE\xCE\x14\xD8\x36\x72\x2D\xDC\x3A\x81\xC3\x3B\x20\xC7\x80\x08\x90\xC1\xCB\x40\x1F\x3A\xB9\xC3\x3B\x2D\x2F\x5C\xC3\x9A\xBB\xAE\x44\xC3\x3B\xA9\xCE\x3B\x04\xC6\x1E\xC9\x10\x2D\xCF\x46\xD3\xCB\x09\x0F\xEC\x31\xCD\xE3\x03\x8D\xDF\xC5\x88\xA6", + "\xCD\x02\x0E\xEE\x3B\xCD\xE4\x0E\x8D\x9D\xBF\x40\x0D\xCD\x2E\xC8\x38\xC1\x08\xBD\x33\x9C\xC1\x0E\x39\xC6\xCE\x02\x0D\x35\xFE\x95\x5E\xCD\x4A\x2D\xCD\x0A\xC8\xCB\x09\x0E\xEF\x0D\xCF\xE2\x01\x8F\xD0\xCD\x63\xAA\x08\x40\xC8\x37\xC6\x09\xC1\x3B\x9D\xD0\x0F\x42\xDE\xCD\x09\x09\x29\xCA\xCE\x00\x07\x78\x65\xCD\x75\x05\x31\xAC\xC9\x2A\xD2\xC9\xC5\x39\x8B\x8F\x3D\x2E\xD4\xC8\xC5\xC1\x3A\xDC\xCB\xF5\xCA\x79\x39\xC4\xEA\x39\xC5\x54\x35\x85\x89\x6D\x3D\x22\x91\xAC\x3D\x2E\xD1\x3D\xB9\xC6\xCD\x02\xD1\x74\xC3\xA0\x8E\xCD\x15\x33\xC7\x00\x02\x2A\xD8\xCF\x01\x15\x7B\x6E\xCD\x50\x10\xD0\xB0\xAB\x42\xCE\x13\xDC\x36\xA1\x99\x08\x81\xCE\xD0\xDE\x08\xF9\x1D\xD0\xB3\xCB\x81\x8E\xCC\xF3\x23\xD1\x03\x12\x42\xC1\x9A\x89\xC0\x7D\x28\xD2\x93\x19\xD0\x2B\xD6\x31\xD5\x3E\x17\xD4\x23\x17\xC8\x69\xD2\xC8\xD9\x39\x34\xD6\xC9\xB2\xCB\x9E\xDB\x3D\x20\xD2\xB9\x9B\xCE\x20\x36\xD0\x00\x07\x9B\xD3\xCA\x42\x1D\x3E\x3A\xD7\x38\x03\xD3\x92\xC0\x90\x82\x0B\xF7\x29\xD2\xC9\x0B\x48\xC9\xCE\xF1\xC3\x10\x61\x3C\x94\xC1\x0E\x43\xD7\x3A\xC5\xCC\x83\x00\x7F", + "\x57\xD1\x71\x03\xD2\xE1\xCE\x48\xC9\x08\xFA\x3E\xA5\xD0\x0F\x90\xCA\xCF\x54\xD2\x20\x36\x3F\x32\xD5\x1D\x43\xD2\x8A\xD6\xC5\x01\x45\x8E\x03\x41\x5C\xC1\x6F\xE7\xC4\x00\x03\xD2\x30\xD6\x16\xC7\x41\x3A\x29\x80\x39\xC6\xBD\xB6\xD3\x43\xD7\x2C\xDB\xD3\x81\x0E\x80\x75\x20\x04\x59\xC5\x31\xC9\x48\xC3\x08\x2D\xDA\x5B\x85\xC9\x72\x14\x40\x34\xD1\x20\x3A\xAD\xD5\xAA\xA1\x82\x08\x08\x4C\xD3\x41\x0E\xBB\x83\xB3\x34\xD5\x52\x5E\xAC\x34\xDC\xCB\x06\x0E\x05\x41\xC4\x47\x35\x47\x5E\xAC\x3B\xCF\xBF\x09\x08\x06\x75\x23\x1D\x49\x8B\x92\x35\x1D\x21\xC9\x3F\xC3\x3D\xD4\x43\x40\xC7\x69\x2F\xD6\x2F\xAB\xCF\x63\x45\x8E\x25\x43\x5C\xC9\x93\xE1\xC5\xBD\x8A\x08\xA5\xCC\x53\xF4\xC7\x9E\xCF\x27\x26\x36\x4C\xDB\xD4\x2C\xCE\x31\xC3\x45\xA6\xC5\x1C\x31\x35\x64\xDF\xD5\x09\x0D\x48\xD5\xD5\xF6\x8F\x87\x53\xC1\x50\x1C\x35\x90\xC0\x59\xEF\xB0\x61\xDC\x00\x55\xD5\x81\x01\xBA\xC7\xD5\x25\xD2\xC9\x48\x4C\xAC\xD0\x0F\x57\xC4\xD6\xDA\xD0\x00\x1A\xD2\x5B\xC4\x01\x5E\xD5\x9D\x01\xCB\xE8\xD0\x3C\xD2\xC8\x4C\x45\xAE\xD5\x0D\xD6\xA1\xD7\xE9\xCA\x22\xDF", + "\x45\x7A\xD1\x14\x7E\xC8\xBE\xDB\xAC\x12\xC8\x04\x2E\xD6\xBF\xAF\x87\x08\x60\xD4\xA8\xCC\xD0\xD4\x91\x12\xC8\x5D\x40\x89\xE9\x45\x2E\xC7\x3A\xCF\xD2\x20\x29\xD6\x41\xD6\x8B\xF5\x44\x24\xD0\x48\xB9\xC4\xEA\x11\xD9\x80\x05\x64\xC9\x6E\x44\xC0\x49\x98\xD2\x21\x3B\xC0\x81\x0D\xB1\xD3\xD7\x5E\x2A\xC9\x01\x08\x56\xC3\xD4\x8D\x28\xB2\x80\x01\xBA\xCE\xD4\x1D\x21\x4C\xFE\xC9\xF5\xC3\x2E\x28\xCE\x9D\xDF\xB5\x23\xC3\x3D\xE5\x48\x01\xD0\x4E\x3C\xD2\xB0\xC3\x17\x61\x3D\x8E\x34\xC8\x8F\xDE\x98\xBA\x48\xCF\xD3\x16\x53\xD2\x20\x3B\xCA\xEA\xC4\x64\xEC\x59\x9D\x10\xCD\x08\xDA\x20\x09\xDA\x1B\xCE\x98\xF7\x4B\xC6\xDF\x13\x78\x3F\x6A\xD3\xDA\x00\x06\xAD\xDC\xB3\x65\x57\xDA\xBE\x49\x17\xE4\xCF\xA8\xD1\x10\x4D\xC3\x40\x0B\x28\x20\xD0\x82\x26\xDA\x81\x08\x4F\x69\xDB\x09\x2D\xDB\x95\xBE\x31\xC8\x4F\xAB\xDB\x1D\x0D\x3F\xD5\xD0\xDB\xDE\xCB\x65\xC1\x08\xF6\x44\xB7\xDE\x0F\x7F\xC4\xDB\x00\x00\x6F\xEB\xC8\x93\xD1\xA1\x57\xDA\x90\x59\xC5\xB3\x3F\x6A\xFC\xC8\x81\x08\xB6\xB4\xDA\x16\x2B\xDC\x01\x0A\x70\xE6\xD9\x2A\x2D\xB8\x83\x08\xA5\xDA\xDB", + "\x00\x04\x4A\x61\xD9\x68\xD0\xAC\x92\xC9\x98\x5C\xD7\x0A\x0A\x44\xF2\xC8\x69\xDE\x9A\x8E\xCE\x9E\x40\xDD\x09\x0D\x45\xC0\xDC\xD2\xD4\xBA\xB6\xC7\xA4\x48\xDD\x06\x0E\x47\xE3\xDD\xDF\xC2\xAC\xA8\x54\xEC\xC3\x08\x5D\xD3\x76\xC9\x09\xAD\xD6\x8B\xBD\x57\xED\xC2\x08\x73\xD2\x77\xC6\x09\x75\xDD\xA4\x81\x0A\xB6\x5F\xDD\x01\x0C\x01\x50\xC4\xD2\xD2\xB3\x98\xDF\xBB\x48\xDE\x00\x00\x52\xC2\xDF\x81\x08\xA6\xE2\xD2\x41\x0F\x58\xD0\xDA\x55\xD3\xDF\x43\x22\x91\xA2\x58\x24\xC3\x5A\xB9\xC1\x57\xEB\xDD\xFD\xC2\xAC\xCE\x58\x24\xC6\x04\x05\xD9\x77\x8E\xDA\x83\x04\xBA\x94\xD9\xF1\xC0\x00\x5F\x58\x12\xCC\x05\xF4\xD5\x7C\xEB\xDF\x40\x13\xB6\x06\x0D\xA7\x2E\xDB\x0E\x28\xBF\x83\x0A\x51\xDF\xD9\x5A\x27\x7F\xC2\x09\x60\xD6\xBD\x83\x09\xD9\x50\xDE\xDD\xD0\x12\xC2\xE1\x99\xD2\xAC\x92\x07\xC0\xCE\x17\xF6\xDA\x20\x0B\xE0\x22\xD2\x91\x96\x07\x03\xF4\x11\x95\x42\x81\xF4\xDD\x02\xE2\x10\x1A\x07\x05\xF8\x11\x19\x07\x83\xC0\x01\x09\xEC\xBB\xEF\xDE\x27\x02\xE1\xDB\x0D\x03\x22\xE1\x09\xE4\xBC\xFC\xC6\x40\x02\x05\x28\xE6\x3B\x21\x01\x15\xE2\xAF\x8E", + "\xCC\xDE\x50\xDE\xB7\x42\x83\xF9\xD6\xC7\xC0\xB8\x50\xDF\x37\x5A\xE1\x00\xDE\x31\xDF\x5C\x48\xC1\xBB\x39\xC7\x3D\x57\xDA\x13\xE1\x4F\xEF\xDE\x5A\x02\xC2\xB8\x04\xFD\xC2\xD2\x11\xE1\x20\x13\xE0\xF7\xDE\xC2\x81\x0A\x2E\x02\xE1\xBE\x07\x89\xC3\x08\xA4\x40\xB6\x8A\x0A\xFE\xCE\xDC\x10\x27\x8B\xD6\xDC\x89\xC0\x0C\x5A\x4C\xA7\xB9\xD9\xC2\xD1\x18\x39\x5A\x7F\x1F\x94\xE3\xE2\x63\xC4\x06\xDA\x4D\x8D\xEA\xC2\x89\xC5\x45\x6B\xC2\x41\x16\xC3\x60\xE1\x39\x05\x06\x2D\xE4\x23\x78\xE2\x1B\xEB\xCF\xC7\x02\x3B\x7D\xC2\x34\xEC\xC1\x81\x08\x32\x1A\x4E\x59\xCB\x20\x03\xE4\x00\xE0\x41\x04\xE3\x8D\xCE\xCC\xC9\x01\x86\xC7\x0E\xB4\x40\x89\x8E\xE5\xE9\xCB\xCF\xCD\x02\x92\xC9\x0F\xC0\x47\xB5\x96\xE5\xEB\xCF\xDF\xD1\x02\x93\xC1\x0E\xD3\x45\xC9\x9B\xE2\xC9\xD5\x06\xA2\xE5\x38\x01\x4F\x52\xEB\xBB\x92\xC9\x36\x09\xE5\xDD\x4A\x84\xD6\xE5\x16\xE8\xAA\x86\x09\x37\x10\xE5\xD5\x08\x3F\x6C\xE4\x25\xB2\x91\xE1\x04\x2E\xE1\x0A\x1B\x53\x97\xD4\xDE\x89\xC5\x0E\x3F\xE7\xB9\xB2\xE5\xF2\xCE\x31\xE9\x06\x11\xED\x0E\x7C\xE1\x40\x03\x53\x9D\xE4\x7C\xC5\xE4", + "\x00\x0F\x0E\x22\xE3\x3C\x0E\xE6\x00\x01\x51\x51\xE6\x12\xDE\x98\xF5\x06\x08\xF9\x07\xD8\xE2\x54\x57\xDB\xA7\x26\x10\x16\xE6\x2D\xDB\x07\xD8\xE3\x3B\x3E\xDC\x3B\xD4\xCE\xB6\xCA\x63\xDD\x07\xE9\xE6\x3B\x05\x57\x5C\xCD\xCE\xA5\x4C\x1D\xF1\xE7\xBC\xC8\x1E\x75\xE7\x6D\xD3\xCD\x81\x01\xFE\x4D\xC4\x00\x07\x78\xEC\xE6\x71\xDE\x98\x83\x03\x3F\xE5\x10\xDC\x55\x8E\x3B\xE6\x75\xD2\x91\x85\x03\x41\xF5\x13\xDF\x52\xA1\xF5\xE1\xF5\xC7\x00\x0F\xEB\x80\x09\x57\x12\xEB\x87\xEB\xCF\x04\x06\xD1\xCE\x13\xF3\xC3\xE8\x09\x0F\x4D\xEF\xDF\x05\x0D\xD1\xB8\xA1\x49\xE1\x08\xF8\x54\x9E\xD2\xE6\x93\xDF\x00\x27\xEB\xF2\x6E\xE9\x0B\x5A\xA5\xDC\xE7\xF5\xC3\x01\x2E\xE9\x05\x0E\xE9\x14\x59\x17\xC7\xC5\x72\xE2\x91\x97\x01\xFE\x59\xBF\x0A\x09\x63\x75\x23\x9D\xEE\xCE\xEB\xCC\x06\x1F\xE9\x05\x16\x7B\xDB\xC4\xA2\xE6\xCF\x8E\xCD\x06\x08\xEA\x75\x15\x66\x43\xEA\x53\xE8\xB9\x9A\x00\x54\xE3\x10\x41\x5B\xAA\xED\xE4\xC7\xCB\x01\x57\xEA\x93\x00\xDF\x76\xD4\xA9\xF7\x64\x7D\xDE\xD5\xB4\x11\xD1\x5A\xEA\xBC\xE6\x31\xDD\x01\xB2\xE8\x23\x66\xDD\x58\xEA\x08\xD5", + "\xDE\x64\xDE\x00\xB6\xEF\x27\x54\x58\x5A\xF9\xAC\x12\xCF\x03\x34\xEA\x10\x0E\xD2\xD6\x5A\x4E\xEB\xE9\x98\xDA\x04\x34\xEB\x11\x0E\xD2\xE8\xDF\x5F\xF3\xE9\xC2\xD5\x04\x34\xEA\x13\x0E\xD2\xF1\xDE\x58\xCA\x08\x80\xC3\x3D\xE8\x00\xBA\xE3\x2E\x63\xCB\x40\x02\xEB\x98\xD9\x05\x39\x5E\x6E\x9D\x02\x14\xEE\x77\x15\xB4\x06\x09\xB2\xC2\xD6\x17\x0E\xD9\xD1\x14\x68\xF7\xEC\x12\xCF\x05\x1B\xEC\xD5\xA5\xDA\xC9\x0D\x5B\x3C\xE9\x8E\xCC\x06\x39\x5E\x1A\xC6\x10\x0A\x04\x36\xEF\xED\x45\xEA\x58\xF7\x01\xD9\xE5\x20\x73\xDE\x80\xD8\xED\x4D\xEB\x3D\xFA\x00\xDE\xE5\x27\x0F\x07\x6D\xF4\xEA\xB6\xC5\x07\x04\xEF\x01\x17\xB6\x39\xC4\x70\xE1\x08\x25\xE5\x8A\xC0\x00\x20\x0B\xDC\xCE\x13\x24\x07\xEE\xBE\x62\x22\xC3\x03\xEA\xE4\x23\x15\x04\x76\xE9\xEB\xEB\xCE\x08\x1C\xEE\x1C\x17\x09\x5F\xEF\x30\xEE\xCC\x49\x03\xBC\xFF\x12\xB7\x5E\xDC\xC9\xE7\x7A\xCC\x02\xEA\xEF\x09\x2E\xE9\x4D\x03\x8A\x4F\xEC\x00\x0A\xE2\xD2\xE9\x0A\x2A\xEE\x2A\x0E\xD2\xA7\xE3\x6F\xFF\xD0\xEB\xCE\x0A\x2A\xEF\x2C\x0E\xD2\xA1\x07\x28\x5D\x2B\x09\x0E\x9C\xEF\xDF\x2D\x0E\xD2\xDB\x0C", + "\x29\x18\xE6\x08\xF0\x22\xCE\xCD\x2E\x0D\xE0\xDE\x0F\x0D\xF9\xCF\x01\x09\xC2\xC3\x09\x4F\xE2\xDD\xDF\x01\x85\xE7\x0E\x7E\x59\x17\xDA\xF1\x1D\xBB\x9E\xE1\x03\x87\xE9\x0E\x84\x5A\xC4\xC4\xE9\xF5\xC3\x06\x27\xF1\x70\x12\x5C\x2A\xF1\xBB\xCE\xCD\x32\x0E\xE2\xC5\x0D\xE8\x51\xF1\xE0\xEA\x58\xE7\x03\x1A\xF0\x1D\x2A\x5C\x8E\xE7\xEF\xEB\xC9\x0D\x3C\xF1\xEA\x02\x78\xBF\xF0\xF7\xCE\xCC\x6B\x06\xA5\xED\x02\x97\xE5\x0B\x07\xF0\x60\xF6\xC5\x6F\x06\xA5\xF1\x02\x97\xEE\xC4\x82\xD3\x88\xE1\x08\x54\xE5\x96\xC3\x09\x39\x0E\xD2\xF5\x02\x4B\xFB\x05\xA3\x46\x2D\xC3\x09\x47\xCB\x9E\xF7\x01\x6B\xF8\x16\x62\xF3\x49\x52\xC8\x3C\x0B\xDA\x89\x08\x1F\x07\xF3\xC5\x0D\xB2\x09\x09\x2B\xF8\xB9\xA3\x2E\x42\x04\xF3\xC2\xD5\x0F\x30\xF2\x7F\x17\x89\x83\x0A\x9C\xEB\xCF\x7E\x05\xCD\xC6\x08\x41\x0B\xE7\xD5\x0E\x69\x30\xED\xEB\xCB\x10\x02\xF4\x27\x19\xC5\x82\xD3\xA1\xF9\xED\xD3\xE7\x10\x0B\xF4\x1A\x1A\xC6\x90\xC7\xA3\xE1\xEE\xC2\xD3\x11\x13\xF4\x1C\x1B\xC7\x8E\xF4\x72\xEF\xDF\x8F\x03\xD3\xFF\x13\x43\xEE\xE9\xDB\xEB\x7A\xD3\x04\xA2\xF3\x3B\x0B\x07\x51", + "\x47\xE9\xE3\xEA\x63\xD7\x04\xA9\xF6\x3B\x0E\x06\x56\xF3\xD1\xC2\xD7\x26\x11\xF5\xC7\x09\x94\xE5\xF4\x83\x01\xD7\x98\xDF\x27\x18\xF5\xC9\x0C\x1A\x34\xF5\x90\xE2\x91\xA3\x06\xA8\xE7\x05\x2E\xEF\x1A\x22\xE1\x56\xF7\xDF\x92\xC9\x2A\x02\xF5\xAD\x06\xA5\xDB\x07\x65\xF0\xE0\xC2\xD7\x2B\x02\xF5\xB3\x06\xA5\xDF\x06\x11\xE1\x98\x83\x09\x6A\x2E\xCC\xB5\x03\xC8\xCC\x12\x4D\xC3\x10\x23\xC5\x1E\xFD\x20\xE4\xF2\x20\x0A\xCD\x73\xFA\x44\x66\xF7\x40\x11\x2D\x8E\xCF\x16\x22\xF7\x02\x1B\xEE\xEF\xF6\x44\xD9\x05\xF3\xF5\x4E\x2A\xC5\x81\x0C\x5B\x0E\xCF\x2E\x14\xEB\xBC\x01\xDF\xC6\x09\x7E\xF6\x10\x6E\xF7\x34\xE3\x17\xE3\x00\x1E\x44\xF9\x81\x05\xEF\x87\xFB\xB4\x04\x07\xF0\x45\x32\xC3\x08\x5C\xCC\xEE\xD0\x0E\x2F\x02\xF8\x13\xFA\x21\x3A\x2C\xC7\xC0\x0C\x05\xF4\x93\x06\x2F\x88\xF1\x8D\xF9\x5F\xDD\xBA\x10\x45\xE4\x24\xC0\xF9\x03\x0A\xC1\xD2\xEE\x63\x03\xF2\x85\x13\x32\xE7\xF9\x9D\xDE\x31\xCB\x07\x96\xF5\x27\x4D\xE4\xCC\xE3\xAC\x12\xC8\x1A\x34\xF9\x01\x11\x0F\x51\xE0\x00\x08\xF9\xC9\xD3\x3D\xD5\x07\x9D\xFE\x24\x76\x06\xCF\xE0\xFA\x0C\xE3", + "\x9A\xDA\x06\xA2\xF4\x23\x68\xE7\xD5\xC8\xFA\x14\xE6\x31\xDF\x06\xA6\xF0\x83\xA2\xF4\xD4\xFC\xF0\x5A\xF2\x20\x24\x06\xAA\xFF\x27\x04\x02\xD5\xEA\x08\x58\xF8\x15\xDC\xD2\xAE\xFB\x1D\x08\x03\xD7\xF9\xB0\xD3\xE6\x1D\x24\xFA\xEF\x0C\x00\x67\xFA\x8A\xB8\xDC\xF3\x03\xED\xC7\x0E\x08\x0E\xF6\xB4\xB2\xC9\xD8\x07\x72\xF9\x39\x14\x01\xBA\xF2\xB5\x92\xC9\x3F\x19\xFB\xC1\x0F\xA8\xF7\xF8\x83\x01\xDD\xD9\xFA\x5C\x9D\x5E\x24\xFD\x9B\xBC\xFA\xE8\xE2\x91\x87\x00\xE2\xE5\x10\x7C\xEB\xF0\xCB\xD4\x89\xCC\x00\x0F\xFD\x9D\x04\x01\x8B\xFC\xA1\xCE\xCD\x08\x06\xF9\x83\x13\x64\xF2\xFC\xB1\xAA\x22\xD6\x01\xCE\xFE\x24\x2C\x01\xE6\xE1\x30\x5C\xED\x7B\x40\xEB\x3A\x10\xF5\xBD\xCE\xB0\xDC\x00\xAA\xFA\x6B\x10\xFB\xE6\xD6\x8B\x9D\x00\xE9\xF4\x11\x30\x01\xF3\xF4\xFD\xF7\xD2\x02\x37\xFC\x8E\x12\xED\xA0\xF9\x20\x3B\xFC\xE9\xE7\x02\x3E\xFF\x9F\x18\x01\x99\xFD\xD7\xD5\xD8\xE3\xFB\x1D\x3C\x01\xF2\xF2\xC8\x31\x04\xF9\xDE\x0E\xEA\xE1\xFC\x80\x02\xF2\xEF\xDF\x36\x02\xFA\xC7\x0E\x22\x09\xF9\xE7\xCE\xB0\xDB\x01\xB1\xFC\x73\x10\xFA\x91\xE2\xDD\xBC\x02\xF1", + "\xE1\x02\xDD\x58\x81\x48\x02\xAE\xF3\xFE\xDA\xEE\xF1\xE8\x02\xE9\xFD\x0E\xEC\xFE\xF7\xE2\xAC\xCA\x02\xF1\xEF\x02\xF1\xF9\x21\x12\x03\xF9\xFF\x5A\x92\xC9\x14\x06\xFE\x56\x01\xFE\x76\x10\x17\x01\xFC\x7E\xC2\x6E\x98\x58\x01\xC6\x7D\x17\x02\x00\x83\x04\x5C\x01\x01\x8D\x59\x52\x64\x5F\x02\xF1\x74\x06\x0B\x80\x02\x06\x89\x7F\xF4\x55\x7B\xD3\x72\x19\x06\xFC\x6B\x01\x14\x81\x40\x06\x06\x0E\x80\x02\x05\x96\x72\xF6\x43\x04\x6D\x02\xF1\x72\x07\x1D\x80\x00\x01\x92\x77\x01\x88\x76\xD3\x70\x1D\x06\xFC\x79\x01\x28\x80\x1C\x0C\xF5\x6B\x66\x06\x07\xAC\x1E\x98\x7B\x01\xE1\x7E\x41\x0C\x07\x28\x80\x5E\x79\x1D\x16\x5F\x09\x04\xE9\x16\x63\x6E\x07\x39\x80\xC9\x0F\x6C\x62\x10\x3F\x80\x15\x7D\x11\x1F\x5F\x30\x2A\x74\x72\x16\x18\xFA\x46\x04\x4B\x81\x12\x83\x37\x2E\x7E\x02\x06\x0D\x8B\x9E\x7F\x01\x44\x82\x40\x00\x08\x28\x80\x76\x00\x5D\x7B\x8D\x67\x1B\x12\x66\x20\x09\x05\xB8\x08\x66\x79\x1D\x1F\x05\xAA\x2D\x12\x67\x20\x03\x06\xBF\x09\x6C\x7A\x80\x67\x06\x81\x04\xD8\x6B\x7A\x64\x08\x2B\x81\xDB\x07\x1E\x0A\xDE\x45\x67\x02\x05\x10\x8B\x9E", + "\x45\x02\x74\x83\xB4\x0A\x60\x09\x04\xAB\x1A\x63\x66\x08\x2B\x81\x87\x00\x0A\x81\xE8\x75\x11\xCF\x66\x40\x03\x61\x3B\x6F\xE8\x2A\x42\x0F\x8E\x52\x81\x5A\x0F\x23\x86\xC0\x52\x64\x89\x03\x1A\x8A\x08\x28\x80\x7F\x00\x5D\x7D\x9D\x4A\x82\x4D\x80\x04\x1B\x09\x81\x04\x92\x82\xC3\x70\x41\x0B\x82\x06\x06\x1E\x82\xAC\x4C\x02\x7D\x81\xB4\x0E\xFD\x42\x04\x7F\x80\x24\x8C\x39\x17\x18\x09\x04\x7C\x6E\x0A\x86\x04\x8D\x00\x0A\x8B\x1D\x32\x82\x03\x06\x29\x83\xCD\x4F\x02\xA9\x80\xB7\x08\x0B\x82\x04\x33\x18\x23\x8C\x45\x01\x83\x3A\x81\x27\x87\x42\x04\x83\xFC\x7A\x44\x60\x09\x2B\x81\x91\x00\x0A\x80\x08\x34\x75\xF8\x65\x32\x8E\x98\x53\x02\x6B\x80\x25\x08\x02\x81\x02\x74\x76\x8F\x10\x04\x95\x70\xBD\x80\xB6\x03\x72\x45\x83\xC2\x81\x11\x1F\x0D\x83\x04\xD1\x82\x28\x87\x42\x01\x68\xD7\x6E\x31\x8D\x41\x1E\x64\x06\x05\x9A\x11\x0E\x94\x65\xB6\x82\x77\x0E\x0E\xA5\x82\x12\x65\x26\x0D\x0D\xAB\x0B\xF3\x83\x40\x0A\xA0\x73\x82\xC9\x0F\x3E\x83\x10\x27\x64\xFC\x83\xED\x0E\x0F\x82\x04\x0B\x7F\x34\x7A\x09\x2B\x81\x9B\x00\x0A\x84\xE8\x75\x11\x71\x19", + "\x42\x05\x10\xA6\x6C\x9D\x03\x1A\x8E\x09\x28\x80\x8A\x79\x1D\x10\x10\xB9\x82\x12\x64\x28\x07\x0F\xBE\x0B\x40\x6A\x40\x07\x11\xA6\x83\x1D\x11\x47\x81\x10\x0D\x84\x01\x86\x00\x15\xA7\x43\x04\xE8\x80\x23\x77\x42\x3F\x69\x03\x04\x3B\x8A\x12\x9D\x10\x89\x69\x1E\x82\x91\x61\x02\x1B\x87\xC3\x01\x13\x81\x04\xA4\x69\x49\x81\x41\x39\x84\x03\x05\xAD\x6A\x13\xA3\x0B\x3C\x84\x41\x82\x91\x62\x02\x6B\x83\x28\x08\x02\x84\x02\x74\x76\xAB\x63\xF0\x52\x64\xA5\x03\x1A\x86\x0A\x28\x80\x85\x00\x5D\x7E\x13\x98\x84\x8E\x64\x2A\x05\x13\x8C\x09\xBD\x69\x40\x03\x15\xA0\x84\x4A\x11\x56\x80\x00\x0A\x85\x2F\x86\x12\x16\xAC\x53\x82\x8E\x65\x2A\x0B\x06\xAA\x02\xF1\x83\x71\x01\x08\xB4\x82\x12\x64\x2B\x07\x15\x85\x08\x43\x67\x40\x06\x05\x82\x6B\xAD\x03\x1A\x8E\x0A\x29\x85\xC9\x07\x5C\x82\x10\x0E\x6B\xEB\x64\x2C\x0D\xBD\x34\x76\x4E\x09\xAD\x16\x10\x3A\x1A\xEF\x82\xD6\x02\x18\x83\x04\x71\x81\x58\x8C\x45\x04\x86\x06\x04\x53\x6B\x9E\x73\x02\x78\x84\xB6\x09\x18\x82\x04\x8E\x86\xB0\x65\x0B\x11\x86\xEB\x09\xB0\x13\x18\xAA\x83\xEB\x0A\x21\x04\xD7\x5A", + "\x86\x88\x84\x67\x8E\x2F\x12\x7A\x75\x11\xB3\x10\x08\x92\x64\xB7\x03\x1A\x88\x0B\x28\x80\x88\x00\x5D\x70\xAE\x43\x04\xD5\x19\x61\x8C\x39\x2F\x86\x1D\x72\x68\x85\x44\x11\x1B\xA7\x85\x66\x6B\x06\xBB\x02\x28\x81\x22\x04\xD7\x57\x65\xB0\x86\x6D\x83\x37\x00\x87\xB5\x86\x6C\x81\x3B\x31\x86\x06\x06\xBF\x62\xAC\x7D\x02\x6F\x85\x42\x0A\x08\x34\x75\xC8\x86\x5C\x8F\x9A\x68\x80\xC0\x00\x0A\x8A\xE9\x79\x62\xE7\x6A\x40\x05\x95\x7F\x84\xD3\x09\x76\x81\x10\x1A\x1B\xC6\x85\xF2\x00\x1E\x89\x87\x12\x66\x30\x0D\x1C\xB4\x82\x74\x77\x78\x82\x1D\x8E\x66\xC3\x00\x0A\x85\x0C\x28\x80\x8E\x02\x4B\x74\x75\x46\x04\xDB\x86\x62\x85\x44\x33\x87\x03\x06\x7A\x8C\x15\x9C\x11\x15\x5E\x41\x06\x1A\x9C\x87\xD1\x08\xBC\x62\x10\x2A\x65\x80\x73\x79\x8E\x24\x02\x88\x01\x04\x63\x82\xAC\x48\x03\x06\x8B\x5E\x85\xE0\x4A\x04\x93\x86\xC9\x69\x0C\x0D\x88\x01\x06\x24\x0E\xD2\x44\x88\x03\x06\x82\x8B\x1F\x8F\x0C\x94\x03\x85\x80\x21\x82\x87\x05\x0A\x25\x0E\xD2\x6F\x1B\x09\x06\xB8\x1E\x98\x4A\x03\x7F\x86\xD6\x07\xAF\x43\x04\x24\x88\x80\x8C\x2D\x10\x5C\x06\x06\x89", + "\x88\xC9\x69\x88\x9C\x0C\x5B\x63\x10\x0A\x87\xD3\x70\x34\x04\x21\xBF\x09\x36\x89\x15\x82\x91\x51\x03\x28\x83\x34\x08\x02\x98\x02\x74\x74\x8E\x81\x10\x3A\x85\xA7\x73\x1A\x86\x0D\x28\x80\x99\x00\x5D\x7D\x75\x46\x04\x18\x8B\x34\x78\x0D\x3B\x88\x9A\x02\x93\x8A\x10\x1A\x88\x26\x6D\x36\x0B\x23\xB7\x7A\x02\x6B\x93\x81\x1A\x8E\x66\xDA\x03\x8E\x8E\x09\x2A\x77\x2F\x1D\x42\x07\x71\x0E\x66\xDB\x03\x8E\x8B\x1D\x22\x5D\x06\x05\x99\x8E\x22\x98\x0B\x07\x6F\x40\x07\x26\xAB\x67\xDC\x00\x66\x8E\x2F\x07\x66\x03\x06\xD0\x16\xA2\x6B\x81\xDF\x02\x9D\x85\x1D\x3A\x89\x06\x05\xD1\x11\x1E\xB7\x0E\x80\x8B\x40\x0D\x74\x03\x8A\x02\x11\xA1\x82\x10\x10\x66\x6F\x8B\xBA\x02\x28\x86\x04\x10\x6E\x4E\x81\x0E\x3E\x89\x41\x05\xA4\x86\x28\xA0\x88\x9C\x0E\xA5\x8B\x28\x98\x8A\xB1\x0C\xA3\x89\xF2\x52\x64\xE3\x02\xF6\x79\x1C\x21\x02\x5C\x7E\xA7\x83\xC0\x52\x64\xE8\x02\xA8\x81\x1C\x26\x02\xA5\x89\xCC\x7B\x9E\x6D\x03\xAA\x89\x71\x0B\x0A\x2D\x8A\x38\x7E\x63\x62\x0F\x31\x8A\xD0\x04\x2C\x09\xBF\x02\x5B\xA6\x89\xD2\x76\xB2\x77\x03\xB8\x89\x75\x06\x0B\x3B\x8A", + "\x0A\x05\xAF\x87\xC9\x42\x6B\xFC\x01\xB0\x81\x14\x01\x7C\x09\x04\xAF\x80\xF6\x52\x64\x01\x01\x5E\x49\xF8\x5F\x5B\xB4\x88\xFB\x62\x91\x46\x00\xD2\x89\x81\x07\x0C\x15\x8B\x1B\x7A\x44\x6B\x00\x19\x8B\x75\x08\x33\x0C\x2D\xA4\x78\xC2\x68\x04\x00\x2E\x83\x08\xD1\x03\xB8\x8C\xCF\x66\x6C\x15\x03\xB9\x8E\x24\x16\x03\xEA\x8B\x6F\x52\x91\x5A\x00\xEE\x88\x8D\x0B\x0D\x31\x8B\x85\x7F\x08\x8D\xD9\x35\x8B\x38\x08\x38\x08\x2F\x92\x64\x24\x00\xBF\x8F\x27\x25\x03\xFF\x8A\x63\x69\x02\x02\x8C\xDB\x06\x3A\x01\x2F\xB4\x72\xFA\x89\x40\x0E\x02\x08\x8C\xDE\x07\x3B\x0B\x30\x92\x64\x33\x00\xC4\x87\x1C\x34\x03\x13\x8E\x63\x68\x03\x16\x8C\xC9\x05\x3E\x01\x2F\x8F\x81\xC2\x69\x0F\x02\x68\x5B\x07\xFE\x00\x5D\x76\x2C\x94\x81\x26\x6E\x0F\x03\x32\x92\x08\x26\x8D\xAD\x73\xCD\x7F\x00\x1C\x8E\xE6\x56\xFC\x46\x8B\xC3\x7E\xE1\x70\x00\x04\x01\x31\x8D\x71\x05\x00\x33\x8C\x2E\x8E\xC9\x69\x04\x39\x8C\xD0\x06\x02\x0C\x33\x9A\x74\xC2\x6A\x13\x00\x34\x95\x07\x0F\x03\xD0\x8C\xEB\x52\x64\x53\x03\xD1\x81\x14\x14\x00\x4A\x8C\x90\x72\xAC\x58\x01\x4E\x8E\x53\x41", + "\x35\x82\x04\xAB\x82\xC9\x6D\x05\x2B\x8C\xC7\x06\x07\x0B\x06\x86\x8B\xE4\x7E\xCD\x8E\x05\x02\x8C\x63\x01\x5E\x48\xF5\x1D\x2F\xCE\x88\xB1\x73\xE3\x42\x8C\x6A\x02\xD9\x86\x8B\x28\x8D\xC5\x88\xFD\x73\xCD\x6C\x01\x02\x8D\x1C\x0E\x36\xB5\x66\x70\x8D\x42\x06\x2C\xB8\x77\x36\x8F\x1C\x02\x30\xB8\x01\x77\x8C\x23\x19\x37\x86\x04\x7B\x8E\x44\x6A\x07\x02\x8C\x7F\x01\xE0\x8B\xC5\x43\x8E\x03\x05\xE1\x8E\x98\x41\x02\x02\x8E\x21\x0A\x38\x82\x04\x3D\x00\xE3\x8B\x29\xAC\x80\x26\x6C\x22\x02\x30\x8D\x02\x93\x8D\x40\x03\x04\x16\x8E\x01\x06\xB1\x82\x02\x91\x63\x09\x07\x23\x02\x30\x94\x02\x9D\x8C\x00\x09\x04\x20\x8E\x8F\x64\x06\x86\xB2\x56\x02\x02\x8F\x26\x09\x3A\xB8\x7F\xCD\x8A\x42\x07\x76\x46\x04\x87\x89\xA3\x8E\x2F\x37\x8E\x8D\x8C\xA7\x89\x3C\x39\x8E\x03\x04\xD0\x1E\x98\x5D\x02\x5C\x8C\xB7\x0F\x74\x07\x58\xEB\x66\x27\x05\x3C\x81\x07\x55\x03\x1A\x87\x3C\xB9\x89\x12\x67\x27\x09\x3A\xA1\x02\xA9\x8D\x00\x85\x47\x13\x66\xD0\x8E\x63\x63\x0A\x02\x5A\xA4\x01\xEA\x87\x05\x2B\x81\x70\x5E\x41\x0A\xB1\x6B\x67\xA6\x03\xF2\x8B\x2E\x21\x8F\xD9", + "\x8F\x7A\x67\x0A\x02\x5A\xA8\x01\xEA\x88\x00\xB5\x11\x9A\x66\x40\x03\x3E\x82\x6B\xAA\x02\xF9\x8E\x2F\x31\x8F\x01\x06\xA2\x86\xB2\x6B\x02\x82\x58\x2B\x09\x3A\x99\x01\xBB\x84\x97\x5E\x7F\x72\x2F\x90\x5C\x97\x58\xC0\x28\x5C\xBE\x6A\xD3\x4B\x78\x67\x0C\xB8\x5F\x3F\x03\x7A\x49\x90\xC3\x6A\x9D\x64\xCB\x36\x46\x54\x6D\x6A\x03\x17\x5C\x43\x8A\x69\xDE\x64\xCB\x37\x30\x05\x92\xB7\x59\x1E\x06\x31\x4E\x58\x25\x6C\x14\x13\x61\xFF\x00\xEC\x55\x7E\x74\x32\xDC\x48\x56\x0B\x7B\x5F\x3F\x31\x32\x0A\x9D\x66\x6D\x90\x97\x5D\x9B\x52\x6C\x62\x05\x33\x92\x54\x02\x6C\x58\x05\x37\x93\xE7\x5D\x66\x4B\x6D\x00\x03\xD2\x6F\x0F\x21\x3F\x58\x04\x10\x97\x7A\x7B\x90\x6D\x5A\x7B\x46\x24\x65\x2F\xDE\x5F\x96\x45\x44\xBE\x09\x00\x01\x06\x6C\x14\x0E\x91\x19\x3C\x2D\x3B\xD7\x12\x91\x65\x4D\x50\x0B\xD7\x37\x90\x57\x92\x15\x95\x45\xA9\x4E\x03\x04\x16\x9B\x45\x96\x4E\xBF\x61\xE1\x41\x46\x8D\x91\xE5\x5C\x19\x90\x89\x66\x91\x71\x6C\x18\x92\x84\x5C\x91\x4A\x6E\x16\x9B\x46\xAA\x91\x69\x92\xE6\x42\x8B\x68\x91\x79\x6C\x1D\x94\x98\x76\x91\x15\x92\x1C\x99\x8B", + "\x78\x91\x00\x01\x0B\x91\xFF\x2C\x91\xED\x3F\x1F\x90\x47\xB2\x43\x6E\x92\x41\x0F\xFE\x3C\x91\x87\x91\x05\x65\x15\x0A\x92\x49\x05\x0C\x54\xCB\x0E\x92\xAE\x5C\x97\x53\x25\x55\x05\x93\x91\x52\x06\x1C\x74\x32\x97\x91\x50\x09\x49\x91\x52\x58\x06\x07\x65\x15\x1E\x92\x49\x07\x75\x48\x15\x39\x50\x62\x04\x29\x92\x15\x26\x59\x41\x05\x0E\x54\xCB\x2F\x4E\x62\x04\x2B\x92\x15\x2F\x4E\x58\x04\x2C\x91\x14\x32\x92\x1C\x51\x6A\x03\x87\x7D\x04\xBD\x3D\x0B\x99\x4B\x81\x05\xBB\x91\x2D\x93\x10\x3A\x92\x5D\x4F\x05\x5D\x98\x42\x93\x5C\x6C\x2F\x95\x46\xBD\x3E\x4C\x4C\x32\x96\x4C\x82\x68\xB0\x4F\x18\x9A\x4C\xBE\x92\x2A\x63\x32\x96\xA7\x4D\x93\x75\x10\x35\x93\x4D\xBD\x3E\xB4\x30\x36\x92\x4D\x99\x90\x5E\x63\x35\x9D\x66\x7D\x3E\x58\x04\x38\x9B\x4D\x8D\x4D\xE2\x90\x34\x9D\xFE\x1A\x93\xE6\x93\xF8\x37\x42\x44\x93\x07\x93\x3A\x9C\x7D\x7B\x91\xEE\x92\x17\x3E\x18\x2F\x61\x46\x07\x17\x38\x15\x1B\x43\xFC\x45\xF5\x23\x67\x41\x05\x7A\x61\x55\x0D\x4F\x89\x05\x65\x60\x56\x05\x86\x74\x32\x91\x48\x34\x45\xBD\x20\x59\xFA\x5D\x9B\x58\x50\xB8\x4F\x4C\x5B", + "\x42\x90\x40\x5C\x59\x0E\x96\x02\x5F\x64\x51\x94\x04\x62\x63\x09\x70\x72\x2F\x05\x63\xD3\x8C\x44\x99\x94\x0F\x53\x93\x58\x22\x40\x05\x1F\x95\x4F\x02\xF9\x34\x32\x23\x95\x50\x05\x52\xAC\x60\x11\x90\xF4\x5C\x65\x78\x4C\x4C\x04\x4B\x96\x14\x33\x38\x58\x04\x4C\x91\x14\x32\x94\x16\x53\x93\x54\x53\x9B\x59\x5C\x59\x4F\x44\x13\x7F\x03\x75\x34\x56\x0D\x53\x81\x05\x3F\x94\x97\x50", }; vl::glr::DecompressSerializedData(compressed, true, dataSolidRows, dataRows, dataBlock, dataRemain, outputStream); } diff --git a/Import/VlppReflection.cpp b/Import/VlppReflection.cpp index f28dbece..367d62dd 100644 --- a/Import/VlppReflection.cpp +++ b/Import/VlppReflection.cpp @@ -528,13 +528,13 @@ LogTypeManager (class) if (info->GetObservingPropertyCount() > 0) { - writer.WriteString(L" observing {"); + writer.WriteLine(L" observing {"); vint count = info->GetObservingPropertyCount(); for (vint i = 0; i < count; i++) { writer.WriteLine(L" " + info->GetObservingProperty(i)->GetName() + L","); } - writer.WriteString(L"}"); + writer.WriteLine(L" }"); } else { diff --git a/Import/VlppWorkflowCompiler.cpp b/Import/VlppWorkflowCompiler.cpp index 04db8b7d..c8534319 100644 --- a/Import/VlppWorkflowCompiler.cpp +++ b/Import/VlppWorkflowCompiler.cpp @@ -17783,7 +17783,7 @@ WfGenerateClassMemberDeclVisitor void Visit(WfEventDeclaration* node)override { auto eventInfo = dynamic_cast(config->manager->declarationMemberInfos[node].Obj()); - auto typeInfo = eventInfo->GetHandlerType(); + auto typeInfo = eventInfo->GetHandlerType()->GetElementType(); writer.WriteString(prefix); writer.WriteString(L"::vl::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

g}@Bhi>(OQVTIR9~NdtNvg#`6B`5(2o{8y8F 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 literal 703856 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
E!Ib&(=8SVXFKLo(0&%G;04WbDjyYHd$Zg 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%0A@McO-e5i4$$WHy$09b$VVPqp$OMg+ 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

g}@Bhi>(OQVTIR9~NdtNvg#`6B`5(2o{8y8F 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 z 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
E!Ib&(=8SVXFKLo(0&%G;04WbDjyYHd$Zg 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 Dp@12` diff --git a/Tutorial/GacUI_HelloWorlds/UIRes/Xml.bin.x64 b/Tutorial/GacUI_HelloWorlds/UIRes/Xml.bin.x64 index 9759507b7c9c4e2b7f6854bd9a95ce28fc9b7b5f..357daf6ad9c1f70c5a196939d81bb4910e0cabd5 100644 GIT binary patch delta 761 zcmah`OKTHh6z$h!CU=r)I#Fy!4S5vWWMLjeZ6u&(BgBPKH?3)Bl8i(!5R*y*F)JU4 zMbx@D3*CuOy3is*K@db;6vUO=F1qjssNhC)Bi@;e*qsC4-0wc-oO91?Z;9EZKb&t#iFzaKczC}EN%0gtO^8)(Ddbn zj7Pq+h|4;D`!pCnfY zl#B>slBS*a6w0KE32ab`^C9JsaWfFd zjX*-=`8F-a@jV#c+zA{#qfELmW5}6FMCuyG4ILXH!Usb`#~|FTYQlr}M%c+-bLQpQ zlk9?yNR8mRH}%*$ms?DJj<_8DHyH@y#NvHV7R)3U5_nHLHyr pbG>V1QRC{5M#<4S;!WW#*9OeFoA-qkXAeruz&Px%&GoNe`~%u!*Up9W_=c~#pAN>U+QqgqmgU2=ev$`S z7uD%?q>SP&FUzVQAnMgec><%hiY2*+yhw|HJhw;oIWF2xyKXn?b}NA1@IDp*3-^Od z5jMXl?PfP{C#>UkIK>XpZh)@8bjMddgpZ!bmd&9{9GhIj1(Tz%sv=1bMqp;O{#e7CAsSDclxU+(MNqYIepZLN*oEya?jX|Dr^%-mu{_FVM*72jvJ+?#Y3eD@J{L3l+2B6E@P5=M^ diff --git a/Tutorial/GacUI_HelloWorlds/UIRes/Xml.bin.x86 b/Tutorial/GacUI_HelloWorlds/UIRes/Xml.bin.x86 index 3166f3a08dd5611aede06a293646ac4f0a81d87c..9e748642226532096ee3341f235976ba07ffdbc0 100644 GIT binary patch delta 727 zcmYjOOK1~O6!m33xs$~9r9v~&5|dU!7EK#0G%--cxX^_JSJ59}hLH%H_rmEx!*}MPJG;a4x9TPd7 zLfu1t7Xhr+pWs_HhdWl2QDSpC>6;{>VakrNklC}m-m^o@lo+=NiSvZ#b`F!=(tEZT zX_#Cn*~2Y6>F0?pwcQvJt~4@!RTXpm<9HN*BRaal7%Q_~rv!C?hrrFf;9bxqZaXFPkUADK&HuH*+ z?P@QHSUWR>y4r)JI*1J=g?q|r=f^SjZ(yY%DjLmD^KO7wh$E#lfnY!%sDi zPiib`xHO3!+FX6{CLC|pNVr9bSQ}4Z+dFBPZc-v8`@FMGxl+ZU_cHF3#MV{KU`)XB zO|FMH-uO6P_@E!4=c+UGshbr*sHa2yRTY4H_^s`LGD}5ASxq)|lfU*XX{$bqr$8j<+fM5QkP~8C% z8;f@<>)HvnOdE=UILl%+U}7aO%sluWjBI@j9L=IYK4+XL_AQPd^8$xKA-&+d6-9qh zz*C5VYXTn%95sr^^GhgN8Tbq0zx)bR+eC}{!V4Fq7E`cfjWCWU3*&mn8AHYzA!Uwz zo0IxOoO9ah8I606PvO`X!FFK-Z*K@HkqM%;tctw<6C6UG8mhKHj^Y8?miLbR17`xS z?F>E3gi)kt+1D{x<}hqdMxGYa%txjovWKN`6pqkGmC+0f)JhyW&3sgvpb&UpGFdmi ll`hd|v^!EbAkH(gE~mCEfi$61f9aUGW=BzTrjaaX{{ras(^LQe