mirror of
https://github.com/vczh-libraries/Release.git
synced 2026-05-20 11:31:28 +08:00
Update release
This commit is contained in:
+57
-13
@@ -590,6 +590,44 @@ Helpers
|
||||
GuiApplicationMain
|
||||
***********************************************************************/
|
||||
|
||||
class UIThreadAsyncScheduler :public Object, public IAsyncScheduler, public Description<UIThreadAsyncScheduler>
|
||||
{
|
||||
public:
|
||||
void Execute(const Func<void()>& callback)override
|
||||
{
|
||||
GetApplication()->InvokeInMainThread(callback);
|
||||
}
|
||||
|
||||
void ExecuteInBackground(const Func<void()>& callback)override
|
||||
{
|
||||
GetApplication()->InvokeAsync(callback);
|
||||
}
|
||||
|
||||
void DelayExecute(const Func<void()>& callback, vint milliseconds)override
|
||||
{
|
||||
GetApplication()->DelayExecuteInMainThread(callback, milliseconds);
|
||||
}
|
||||
};
|
||||
|
||||
class OtherThreadAsyncScheduler :public Object, public IAsyncScheduler, public Description<UIThreadAsyncScheduler>
|
||||
{
|
||||
public:
|
||||
void Execute(const Func<void()>& callback)override
|
||||
{
|
||||
GetApplication()->InvokeAsync(callback);
|
||||
}
|
||||
|
||||
void ExecuteInBackground(const Func<void()>& callback)override
|
||||
{
|
||||
GetApplication()->InvokeAsync(callback);
|
||||
}
|
||||
|
||||
void DelayExecute(const Func<void()>& callback, vint milliseconds)override
|
||||
{
|
||||
GetApplication()->DelayExecute(callback, milliseconds);
|
||||
}
|
||||
};
|
||||
|
||||
void GuiApplicationInitialize()
|
||||
{
|
||||
Ptr<theme::ITheme> theme;
|
||||
@@ -625,9 +663,13 @@ GuiApplicationMain
|
||||
{
|
||||
GuiApplication app;
|
||||
application = &app;
|
||||
IAsyncScheduler::RegisterSchedulerForCurrentThread(new UIThreadAsyncScheduler);
|
||||
IAsyncScheduler::RegisterDefaultScheduler(new OtherThreadAsyncScheduler);
|
||||
GuiMain();
|
||||
IAsyncScheduler::UnregisterDefaultScheduler();
|
||||
IAsyncScheduler::UnregisterSchedulerForCurrentThread();
|
||||
application = nullptr;
|
||||
}
|
||||
application = nullptr;
|
||||
|
||||
theme::SetCurrentTheme(0);
|
||||
DestroyPluginManager();
|
||||
@@ -3529,6 +3571,7 @@ namespace vl
|
||||
using namespace elements;
|
||||
using namespace compositions;
|
||||
using namespace collections;
|
||||
using namespace reflection::description;
|
||||
|
||||
/***********************************************************************
|
||||
GuiControlHost
|
||||
@@ -4419,20 +4462,21 @@ GuiWindow
|
||||
|
||||
void GuiWindow::ShowModalAndDelete(GuiWindow* owner, const Func<void()>& callback)
|
||||
{
|
||||
owner->SetEnabled(false);
|
||||
GetNativeWindow()->SetParent(owner->GetNativeWindow());
|
||||
WindowClosed.AttachLambda([=](GuiGraphicsComposition* sender, GuiEventArgs& arguments)
|
||||
ShowModal(owner, [=]()
|
||||
{
|
||||
GetApplication()->InvokeInMainThread([=]()
|
||||
{
|
||||
GetNativeWindow()->SetParent(0);
|
||||
callback();
|
||||
owner->SetEnabled(true);
|
||||
owner->SetActivated();
|
||||
delete this;
|
||||
});
|
||||
callback();
|
||||
delete this;
|
||||
});
|
||||
Show();
|
||||
}
|
||||
|
||||
Ptr<reflection::description::IAsync> GuiWindow::ShowModalAsync(GuiWindow* owner)
|
||||
{
|
||||
auto future = IFuture::Create();
|
||||
ShowModal(owner, [promise = future->GetPromise()]()
|
||||
{
|
||||
promise->SendResult({});
|
||||
});
|
||||
return future;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
|
||||
+8
-2
@@ -9803,15 +9803,21 @@ Window
|
||||
/// <summary>
|
||||
/// Show a model window, get a callback when the window is closed.
|
||||
/// </summary>
|
||||
/// <param name="owner">The window to show.</param>
|
||||
/// <param name="owner">The window to disable as a parent window.</param>
|
||||
/// <param name="callback">The callback to call after the window is closed.</param>
|
||||
void ShowModal(GuiWindow* owner, const Func<void()>& callback);
|
||||
/// <summary>
|
||||
/// Show a model window, get a callback when the window is closed, and then delete itself.
|
||||
/// </summary>
|
||||
/// <param name="owner">The window to show.</param>
|
||||
/// <param name="owner">The window to disable as a parent window.</param>
|
||||
/// <param name="callback">The callback to call after the window is closed.</param>
|
||||
void ShowModalAndDelete(GuiWindow* owner, const Func<void()>& callback);
|
||||
/// <summary>
|
||||
/// Show a model window as an async operation, which ends when the window is closed.
|
||||
/// </summary>
|
||||
/// <returns>Returns true if the size box is visible.</returns>
|
||||
/// <param name="owner">The window to disable as a parent window.</param>
|
||||
Ptr<reflection::description::IAsync> ShowModalAsync(GuiWindow* owner);
|
||||
};
|
||||
|
||||
/// <summary>
|
||||
|
||||
@@ -1532,7 +1532,29 @@ GuiEvalInstanceEventBinder (eval)
|
||||
|
||||
Ptr<workflow::WfStatement> GenerateInstallStatement(GuiResourcePrecompileContext& precompileContext, types::ResolvingResult& resolvingResult, GlobalStringKey variableName, description::IEventInfo* eventInfo, const WString& code, GuiResourceTextPos position, GuiResourceError::List& errors)override
|
||||
{
|
||||
if(auto statement = Workflow_ParseStatement(precompileContext, { resolvingResult.resource }, code, position, errors))
|
||||
bool coroutine = false;
|
||||
{
|
||||
auto reading = code.Buffer();
|
||||
while (true)
|
||||
{
|
||||
switch (*reading)
|
||||
{
|
||||
case ' ':
|
||||
case '\t':
|
||||
case '\r':
|
||||
case '\n':
|
||||
reading++;
|
||||
break;
|
||||
default:
|
||||
goto BEGIN_TESTING;
|
||||
}
|
||||
}
|
||||
BEGIN_TESTING:
|
||||
coroutine = *reading == '$';
|
||||
}
|
||||
|
||||
auto parseFunction = coroutine ? &Workflow_ParseCoProviderStatement : &Workflow_ParseStatement;
|
||||
if (auto statement = parseFunction(precompileContext, { resolvingResult.resource }, code, position, errors, { 0,0 }))
|
||||
{
|
||||
return Workflow_InstallEvalEvent(precompileContext, resolvingResult, variableName, eventInfo, statement);
|
||||
}
|
||||
@@ -1565,6 +1587,7 @@ GuiPredefinedInstanceBindersPlugin
|
||||
manager->SetTableParser(L"WORKFLOW", L"WORKFLOW-TYPE", &WfParseType);
|
||||
manager->SetTableParser(L"WORKFLOW", L"WORKFLOW-EXPRESSION", &WfParseExpression);
|
||||
manager->SetTableParser(L"WORKFLOW", L"WORKFLOW-STATEMENT", &WfParseStatement);
|
||||
manager->SetTableParser(L"WORKFLOW", L"WORKFLOW-COPROVIDER-STATEMENT", &WfParseCoProviderStatement);
|
||||
manager->SetTableParser(L"WORKFLOW", L"WORKFLOW-DECLARATION", &WfParseDeclaration);
|
||||
manager->SetTableParser(L"WORKFLOW", L"WORKFLOW-MODULE", &WfParseModule);
|
||||
manager->SetParsingTable(L"INSTANCE-QUERY", &GuiIqLoadTable);
|
||||
@@ -9394,10 +9417,21 @@ Workflow_InstallEvalEvent
|
||||
Ptr<workflow::WfStatement> Workflow_InstallEvalEvent(GuiResourcePrecompileContext& precompileContext, types::ResolvingResult& resolvingResult, GlobalStringKey variableName, description::IEventInfo* eventInfo, Ptr<workflow::WfStatement> evalStatement)
|
||||
{
|
||||
auto func = Workflow_GenerateEventHandler(precompileContext, eventInfo);
|
||||
|
||||
auto funcBlock = MakePtr<WfBlockStatement>();
|
||||
funcBlock->statements.Add(evalStatement);
|
||||
func->statement = funcBlock;
|
||||
|
||||
if (evalStatement.Cast<WfBlockStatement>())
|
||||
{
|
||||
func->statement = evalStatement;
|
||||
}
|
||||
else if (evalStatement.Cast<WfCoProviderStatement>())
|
||||
{
|
||||
func->statement = evalStatement;
|
||||
}
|
||||
else
|
||||
{
|
||||
auto funcBlock = MakePtr<WfBlockStatement>();
|
||||
funcBlock->statements.Add(evalStatement);
|
||||
func->statement = funcBlock;
|
||||
}
|
||||
|
||||
auto subBlock = MakePtr<WfBlockStatement>();
|
||||
|
||||
@@ -9738,6 +9772,11 @@ Parser
|
||||
return Workflow_Parse<WfStatement>(precompileContext, L"WORKFLOW-STATEMENT", location, code, position, errors, availableAfter);
|
||||
}
|
||||
|
||||
Ptr<workflow::WfStatement> Workflow_ParseCoProviderStatement(GuiResourcePrecompileContext& precompileContext, GuiResourceLocation location, const WString& code, GuiResourceTextPos position, collections::List<GuiResourceError>& errors, parsing::ParsingTextPos availableAfter)
|
||||
{
|
||||
return Workflow_Parse<WfStatement>(precompileContext, L"WORKFLOW-COPROVIDER-STATEMENT", location, code, position, errors, availableAfter);
|
||||
}
|
||||
|
||||
Ptr<workflow::WfModule> Workflow_ParseModule(GuiResourcePrecompileContext& precompileContext, GuiResourceLocation location, const WString& code, GuiResourceTextPos position, collections::List<GuiResourceError>& errors, parsing::ParsingTextPos availableAfter)
|
||||
{
|
||||
return Workflow_Parse<WfModule>(precompileContext, L"WORKFLOW-MODULE", location, code, position, errors, availableAfter);
|
||||
|
||||
@@ -738,10 +738,11 @@ namespace vl
|
||||
WorkflowCompiler (Parser)
|
||||
***********************************************************************/
|
||||
|
||||
extern Ptr<workflow::WfType> Workflow_ParseType (GuiResourcePrecompileContext& precompileContext, GuiResourceLocation location, const WString& code, GuiResourceTextPos position, collections::List<GuiResourceError>& errors, parsing::ParsingTextPos availableAfter = { 0,0 });
|
||||
extern Ptr<workflow::WfExpression> Workflow_ParseExpression (GuiResourcePrecompileContext& precompileContext, GuiResourceLocation location, const WString& code, GuiResourceTextPos position, collections::List<GuiResourceError>& errors, parsing::ParsingTextPos availableAfter = { 0,0 });
|
||||
extern Ptr<workflow::WfStatement> Workflow_ParseStatement (GuiResourcePrecompileContext& precompileContext, GuiResourceLocation location, const WString& code, GuiResourceTextPos position, collections::List<GuiResourceError>& errors, parsing::ParsingTextPos availableAfter = { 0,0 });
|
||||
extern Ptr<workflow::WfModule> Workflow_ParseModule (GuiResourcePrecompileContext& precompileContext, GuiResourceLocation location, const WString& code, GuiResourceTextPos position, collections::List<GuiResourceError>& errors, parsing::ParsingTextPos availableAfter = { 0,0 });
|
||||
extern Ptr<workflow::WfType> Workflow_ParseType (GuiResourcePrecompileContext& precompileContext, GuiResourceLocation location, const WString& code, GuiResourceTextPos position, collections::List<GuiResourceError>& errors, parsing::ParsingTextPos availableAfter = { 0,0 });
|
||||
extern Ptr<workflow::WfExpression> Workflow_ParseExpression (GuiResourcePrecompileContext& precompileContext, GuiResourceLocation location, const WString& code, GuiResourceTextPos position, collections::List<GuiResourceError>& errors, parsing::ParsingTextPos availableAfter = { 0,0 });
|
||||
extern Ptr<workflow::WfStatement> Workflow_ParseStatement (GuiResourcePrecompileContext& precompileContext, GuiResourceLocation location, const WString& code, GuiResourceTextPos position, collections::List<GuiResourceError>& errors, parsing::ParsingTextPos availableAfter = { 0,0 });
|
||||
extern Ptr<workflow::WfStatement> Workflow_ParseCoProviderStatement (GuiResourcePrecompileContext& precompileContext, GuiResourceLocation location, const WString& code, GuiResourceTextPos position, collections::List<GuiResourceError>& errors, parsing::ParsingTextPos availableAfter = { 0,0 });
|
||||
extern Ptr<workflow::WfModule> Workflow_ParseModule (GuiResourcePrecompileContext& precompileContext, GuiResourceLocation location, const WString& code, GuiResourceTextPos position, collections::List<GuiResourceError>& errors, parsing::ParsingTextPos availableAfter = { 0,0 });
|
||||
|
||||
extern WString Workflow_ModuleToString(Ptr<workflow::WfModule> module);
|
||||
extern Ptr<workflow::WfExpression> Workflow_ParseTextValue(GuiResourcePrecompileContext& precompileContext, description::ITypeDescriptor* typeDescriptor, GuiResourceLocation location, const WString& textValue, GuiResourceTextPos position, collections::List<GuiResourceError>& errors);
|
||||
|
||||
@@ -1727,6 +1727,7 @@ Type Declaration
|
||||
CLASS_MEMBER_METHOD(MoveToScreenCenter, NO_PARAMETER)
|
||||
CLASS_MEMBER_METHOD(ShowModal, { L"owner" _ L"callback" })
|
||||
CLASS_MEMBER_METHOD(ShowModalAndDelete, { L"owner" _ L"callback" })
|
||||
CLASS_MEMBER_METHOD(ShowModalAsync, { L"owner" })
|
||||
END_CLASS_MEMBER(GuiWindow)
|
||||
|
||||
BEGIN_INTERFACE_MEMBER(GuiWindow::IStyleController)
|
||||
|
||||
+139
-53
@@ -1924,28 +1924,20 @@ Locale
|
||||
#ifdef VCZH_MSVC
|
||||
WString Locale::FormatNumber(const WString& number)const
|
||||
{
|
||||
#if defined VCZH_MSVC
|
||||
int length=GetNumberFormatEx(localeName.Buffer(), 0, number.Buffer(), NULL, NULL, 0);
|
||||
if(length==0) return L"";
|
||||
Array<wchar_t> buffer(length);
|
||||
GetNumberFormatEx(localeName.Buffer(), 0, number.Buffer(), NULL, &buffer[0], (int)buffer.Count());
|
||||
return &buffer[0];
|
||||
#elif defined VCZH_GCC
|
||||
throw 0;
|
||||
#endif
|
||||
}
|
||||
|
||||
WString Locale::FormatCurrency(const WString& currency)const
|
||||
{
|
||||
#if defined VCZH_MSVC
|
||||
int length=GetCurrencyFormatEx(localeName.Buffer(), 0, currency.Buffer(), NULL, NULL, 0);
|
||||
if(length==0) return L"";
|
||||
Array<wchar_t> buffer(length);
|
||||
GetCurrencyFormatEx(localeName.Buffer(), 0, currency.Buffer(), NULL, &buffer[0], (int)buffer.Count());
|
||||
return &buffer[0];
|
||||
#elif defined VCZH_GCC
|
||||
throw 0;
|
||||
#endif
|
||||
}
|
||||
#endif
|
||||
|
||||
@@ -2038,38 +2030,22 @@ Locale
|
||||
#ifdef VCZH_MSVC
|
||||
WString Locale::ToFullWidth(const WString& str)const
|
||||
{
|
||||
#if defined VCZH_MSVC
|
||||
return Transform(localeName, str, LCMAP_FULLWIDTH);
|
||||
#elif defined VCZH_GCC
|
||||
throw 0;
|
||||
#endif
|
||||
}
|
||||
|
||||
WString Locale::ToHalfWidth(const WString& str)const
|
||||
{
|
||||
#if defined VCZH_MSVC
|
||||
return Transform(localeName, str, LCMAP_HALFWIDTH);
|
||||
#elif defined VCZH_GCC
|
||||
throw 0;
|
||||
#endif
|
||||
}
|
||||
|
||||
WString Locale::ToHiragana(const WString& str)const
|
||||
{
|
||||
#if defined VCZH_MSVC
|
||||
return Transform(localeName, str, LCMAP_HIRAGANA);
|
||||
#elif defined VCZH_GCC
|
||||
throw 0;
|
||||
#endif
|
||||
}
|
||||
|
||||
WString Locale::ToKatagana(const WString& str)const
|
||||
{
|
||||
#if defined VCZH_MSVC
|
||||
return Transform(localeName, str, LCMAP_KATAKANA);
|
||||
#elif defined VCZH_GCC
|
||||
throw 0;
|
||||
#endif
|
||||
}
|
||||
#endif
|
||||
|
||||
@@ -2112,29 +2088,17 @@ Locale
|
||||
#ifdef VCZH_MSVC
|
||||
WString Locale::ToSimplifiedChinese(const WString& str)const
|
||||
{
|
||||
#if defined VCZH_MSVC
|
||||
return Transform(localeName, str, LCMAP_SIMPLIFIED_CHINESE);
|
||||
#elif defined VCZH_GCC
|
||||
throw 0;
|
||||
#endif
|
||||
}
|
||||
|
||||
WString Locale::ToTraditionalChinese(const WString& str)const
|
||||
{
|
||||
#if defined VCZH_MSVC
|
||||
return Transform(localeName, str, LCMAP_TRADITIONAL_CHINESE);
|
||||
#elif defined VCZH_GCC
|
||||
throw 0;
|
||||
#endif
|
||||
}
|
||||
|
||||
WString Locale::ToTileCase(const WString& str)const
|
||||
{
|
||||
#if defined VCZH_MSVC
|
||||
return Transform(localeName, str, LCMAP_TITLECASE);
|
||||
#elif defined VCZH_GCC
|
||||
throw 0;
|
||||
#endif
|
||||
}
|
||||
#endif
|
||||
|
||||
@@ -2154,8 +2118,6 @@ Locale
|
||||
return wcscmp(s1.Buffer(), s2.Buffer());
|
||||
case Normalization::IgnoreCase:
|
||||
return wcscasecmp(s1.Buffer(), s2.Buffer());
|
||||
default:
|
||||
throw 0;
|
||||
}
|
||||
#endif
|
||||
}
|
||||
@@ -2230,8 +2192,6 @@ Locale
|
||||
}
|
||||
}
|
||||
break;
|
||||
default:
|
||||
throw 0;
|
||||
}
|
||||
return result == nullptr ? Pair<vint, vint>(-1, 0) : Pair<vint, vint>(result - text.Buffer(), find.Length());
|
||||
#endif
|
||||
@@ -2277,8 +2237,6 @@ Locale
|
||||
}
|
||||
}
|
||||
break;
|
||||
default:
|
||||
throw 0;
|
||||
}
|
||||
return result == nullptr ? Pair<vint, vint>(-1, 0) : Pair<vint, vint>(result - text.Buffer(), find.Length());
|
||||
#endif
|
||||
@@ -2300,8 +2258,6 @@ Locale
|
||||
return wcsncmp(text.Buffer(), find.Buffer(), find.Length()) == 0;
|
||||
case Normalization::IgnoreCase:
|
||||
return wcsncasecmp(text.Buffer(), find.Buffer(), find.Length()) == 0;
|
||||
default:
|
||||
throw 0;
|
||||
}
|
||||
#endif
|
||||
}
|
||||
@@ -2322,8 +2278,6 @@ Locale
|
||||
return wcsncmp(text.Buffer() + text.Length() - find.Length(), find.Buffer(), find.Length()) == 0;
|
||||
case Normalization::IgnoreCase:
|
||||
return wcsncasecmp(text.Buffer() + text.Length() - find.Length(), find.Buffer(), find.Length()) == 0;
|
||||
default:
|
||||
throw 0;
|
||||
}
|
||||
#endif
|
||||
}
|
||||
@@ -18338,6 +18292,7 @@ IAsync
|
||||
class DelayAsync : public Object, public virtual IAsync, public Description<DelayAsync>
|
||||
{
|
||||
protected:
|
||||
SpinLock lock;
|
||||
vint milliseconds;
|
||||
AsyncStatus status = AsyncStatus::Ready;
|
||||
|
||||
@@ -18354,12 +18309,18 @@ IAsync
|
||||
|
||||
bool Execute(const Func<void(Ptr<CoroutineResult>)>& _callback)override
|
||||
{
|
||||
if (status != AsyncStatus::Ready) return false;
|
||||
status = AsyncStatus::Executing;
|
||||
IAsyncScheduler::GetSchedulerForCurrentThread()->DelayExecute([async = Ptr<DelayAsync>(this), callback = _callback]()
|
||||
SPIN_LOCK(lock)
|
||||
{
|
||||
callback(nullptr);
|
||||
}, milliseconds);
|
||||
if (status != AsyncStatus::Ready) return false;
|
||||
status = AsyncStatus::Executing;
|
||||
IAsyncScheduler::GetSchedulerForCurrentThread()->DelayExecute([async = Ptr<DelayAsync>(this), callback = _callback]()
|
||||
{
|
||||
if (callback)
|
||||
{
|
||||
callback(nullptr);
|
||||
}
|
||||
}, milliseconds);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
};
|
||||
@@ -18369,6 +18330,95 @@ IAsync
|
||||
return new DelayAsync(milliseconds);
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
IFuture
|
||||
***********************************************************************/
|
||||
|
||||
class FutureAndPromiseAsync : public virtual IFuture, public virtual IPromise, public Description<FutureAndPromiseAsync>
|
||||
{
|
||||
public:
|
||||
SpinLock lock;
|
||||
AsyncStatus status = AsyncStatus::Ready;
|
||||
Ptr<CoroutineResult> cr;
|
||||
Func<void(Ptr<CoroutineResult>)> callback;
|
||||
|
||||
void ExecuteCallbackAndClear()
|
||||
{
|
||||
status = AsyncStatus::Stopped;
|
||||
if (callback)
|
||||
{
|
||||
callback(cr);
|
||||
}
|
||||
cr = nullptr;
|
||||
callback = {};
|
||||
}
|
||||
|
||||
template<typename F>
|
||||
bool Send(F f)
|
||||
{
|
||||
SPIN_LOCK(lock)
|
||||
{
|
||||
if (status == AsyncStatus::Stopped || cr) return false;
|
||||
cr = MakePtr<CoroutineResult>();
|
||||
f();
|
||||
if (status == AsyncStatus::Executing)
|
||||
{
|
||||
ExecuteCallbackAndClear();
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
AsyncStatus GetStatus()override
|
||||
{
|
||||
return status;
|
||||
}
|
||||
|
||||
bool Execute(const Func<void(Ptr<CoroutineResult>)>& _callback)override
|
||||
{
|
||||
SPIN_LOCK(lock)
|
||||
{
|
||||
if (status != AsyncStatus::Ready) return false;
|
||||
callback = _callback;
|
||||
if (cr)
|
||||
{
|
||||
ExecuteCallbackAndClear();
|
||||
}
|
||||
else
|
||||
{
|
||||
status = AsyncStatus::Executing;
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
Ptr<IPromise> GetPromise()override
|
||||
{
|
||||
return this;
|
||||
}
|
||||
|
||||
bool SendResult(const Value& result)override
|
||||
{
|
||||
return Send([=]()
|
||||
{
|
||||
cr->SetResult(result);
|
||||
});
|
||||
}
|
||||
|
||||
bool SendFailure(Ptr<IValueException> failure)override
|
||||
{
|
||||
return Send([=]()
|
||||
{
|
||||
cr->SetFailure(failure);
|
||||
});
|
||||
}
|
||||
};
|
||||
|
||||
Ptr<IFuture> IFuture::Create()
|
||||
{
|
||||
return new FutureAndPromiseAsync();
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
IAsyncScheduler
|
||||
***********************************************************************/
|
||||
@@ -18567,10 +18617,21 @@ AsyncCoroutine
|
||||
{
|
||||
return new CoroutineAsync(creator);
|
||||
}
|
||||
|
||||
void AsyncCoroutine::CreateAndRun(const Creator& creator)
|
||||
{
|
||||
MakePtr<CoroutineAsync>(creator)->Execute({});
|
||||
MakePtr<CoroutineAsync>(creator)->Execute(
|
||||
[](Ptr<CoroutineResult> cr)
|
||||
{
|
||||
if (cr->GetFailure())
|
||||
{
|
||||
#pragma push_macro("GetMessage")
|
||||
#if defined GetMessage
|
||||
#undef GetMessage
|
||||
#endif
|
||||
throw Exception(cr->GetFailure()->GetMessage());
|
||||
#pragma pop_macro("GetMessage")
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
@@ -18705,6 +18766,9 @@ TypeName
|
||||
IMPL_TYPE_INFO_RENAME(vl::reflection::description::EnumerableCoroutine, system::EnumerableCoroutine)
|
||||
IMPL_TYPE_INFO_RENAME(vl::reflection::description::AsyncStatus, system::AsyncStatus)
|
||||
IMPL_TYPE_INFO_RENAME(vl::reflection::description::IAsync, system::Async)
|
||||
IMPL_TYPE_INFO_RENAME(vl::reflection::description::IPromise, system::Promise)
|
||||
IMPL_TYPE_INFO_RENAME(vl::reflection::description::IFuture, system::Future)
|
||||
IMPL_TYPE_INFO_RENAME(vl::reflection::description::IAsyncScheduler, system::AsyncScheduler)
|
||||
IMPL_TYPE_INFO_RENAME(vl::reflection::description::AsyncCoroutine::IImpl, system::AsyncCoroutine::IImpl)
|
||||
IMPL_TYPE_INFO_RENAME(vl::reflection::description::AsyncCoroutine, system::AsyncCoroutine)
|
||||
|
||||
@@ -19405,6 +19469,25 @@ LoadPredefinedTypes
|
||||
CLASS_MEMBER_STATIC_METHOD(Delay, { L"milliseconds" })
|
||||
END_INTERFACE_MEMBER(IAsync)
|
||||
|
||||
BEGIN_INTERFACE_MEMBER_NOPROXY(IPromise)
|
||||
CLASS_MEMBER_METHOD(SendResult, { L"result" })
|
||||
CLASS_MEMBER_METHOD(SendFailure, { L"failure" })
|
||||
END_INTERFACE_MEMBER(IPromise)
|
||||
|
||||
BEGIN_INTERFACE_MEMBER_NOPROXY(IFuture)
|
||||
CLASS_MEMBER_BASE(IAsync)
|
||||
CLASS_MEMBER_BASE(IPromise)
|
||||
CLASS_MEMBER_PROPERTY_READONLY_FAST(Promise)
|
||||
CLASS_MEMBER_STATIC_METHOD(Create, NO_PARAMETER)
|
||||
END_INTERFACE_MEMBER(IFuture)
|
||||
|
||||
BEGIN_INTERFACE_MEMBER_NOPROXY(IAsyncScheduler)
|
||||
CLASS_MEMBER_METHOD(Execute, { L"callback" })
|
||||
CLASS_MEMBER_METHOD(ExecuteInBackground, { L"callback" })
|
||||
CLASS_MEMBER_METHOD(DelayExecute, { L"callback" _ L"milliseconds" })
|
||||
CLASS_MEMBER_STATIC_METHOD(GetSchedulerForCurrentThread, NO_PARAMETER)
|
||||
END_INTERFACE_MEMBER(IAsyncScheduler)
|
||||
|
||||
BEGIN_INTERFACE_MEMBER_NOPROXY(AsyncCoroutine::IImpl)
|
||||
CLASS_MEMBER_BASE(IAsync)
|
||||
END_INTERFACE_MEMBER(AsyncCoroutine::IImpl)
|
||||
@@ -19632,6 +19715,9 @@ LoadPredefinedTypes
|
||||
ADD_TYPE_INFO(EnumerableCoroutine)
|
||||
ADD_TYPE_INFO(AsyncStatus)
|
||||
ADD_TYPE_INFO(IAsync)
|
||||
ADD_TYPE_INFO(IPromise)
|
||||
ADD_TYPE_INFO(IFuture)
|
||||
ADD_TYPE_INFO(IAsyncScheduler)
|
||||
ADD_TYPE_INFO(AsyncCoroutine::IImpl)
|
||||
ADD_TYPE_INFO(AsyncCoroutine)
|
||||
|
||||
|
||||
+23
-2
@@ -7435,6 +7435,7 @@ namespace vl
|
||||
None=0,
|
||||
/// <summary>Ignore case using the file system rule.</summary>
|
||||
IgnoreCase=1,
|
||||
#ifdef VCZH_MSVC
|
||||
/// <summary>Ignore case using the linguistic rule.</summary>
|
||||
IgnoreCaseLinguistic=2,
|
||||
/// <summary>Ignore the difference between between hiragana and katakana characters.</summary>
|
||||
@@ -7449,6 +7450,7 @@ namespace vl
|
||||
DigitsAsNumbers=64,
|
||||
/// <summary>Treat punctuation the same as symbols.</summary>
|
||||
StringSoft=128,
|
||||
#endif
|
||||
};
|
||||
|
||||
/// <summary>Compare two strings.</summary>
|
||||
@@ -11165,7 +11167,7 @@ Coroutine (Async)
|
||||
Stopped,
|
||||
};
|
||||
|
||||
class IAsync : public IDescriptable, public Description<IAsync>
|
||||
class IAsync : public virtual IDescriptable, public Description<IAsync>
|
||||
{
|
||||
public:
|
||||
virtual AsyncStatus GetStatus() = 0;
|
||||
@@ -11174,10 +11176,26 @@ Coroutine (Async)
|
||||
static Ptr<IAsync> Delay(vint milliseconds);
|
||||
};
|
||||
|
||||
class IAsyncScheduler : public IDescriptable, public Description<IAsyncScheduler>
|
||||
class IPromise : public virtual IDescriptable, public Description<IPromise>
|
||||
{
|
||||
public:
|
||||
virtual bool SendResult(const Value& result) = 0;
|
||||
virtual bool SendFailure(Ptr<IValueException> failure) = 0;
|
||||
};
|
||||
|
||||
class IFuture : public virtual IAsync, public Description<IFuture>
|
||||
{
|
||||
public:
|
||||
virtual Ptr<IPromise> GetPromise() = 0;
|
||||
|
||||
static Ptr<IFuture> Create();
|
||||
};
|
||||
|
||||
class IAsyncScheduler : public virtual IDescriptable, public Description<IAsyncScheduler>
|
||||
{
|
||||
public:
|
||||
virtual void Execute(const Func<void()>& callback) = 0;
|
||||
virtual void ExecuteInBackground(const Func<void()>& callback) = 0;
|
||||
virtual void DelayExecute(const Func<void()>& callback, vint milliseconds) = 0;
|
||||
|
||||
static void RegisterDefaultScheduler(Ptr<IAsyncScheduler> scheduler);
|
||||
@@ -15058,6 +15076,9 @@ Predefined Types
|
||||
DECL_TYPE_INFO(EnumerableCoroutine)
|
||||
DECL_TYPE_INFO(AsyncStatus)
|
||||
DECL_TYPE_INFO(IAsync)
|
||||
DECL_TYPE_INFO(IPromise)
|
||||
DECL_TYPE_INFO(IFuture)
|
||||
DECL_TYPE_INFO(IAsyncScheduler)
|
||||
DECL_TYPE_INFO(AsyncCoroutine::IImpl)
|
||||
DECL_TYPE_INFO(AsyncCoroutine)
|
||||
|
||||
|
||||
+502
-300
File diff suppressed because one or more lines are too long
@@ -224,6 +224,7 @@ namespace vl
|
||||
class WfBindExpression;
|
||||
class WfFormatExpression;
|
||||
class WfNewCoroutineExpression;
|
||||
class WfMixinCastExpression;
|
||||
class WfModuleUsingFragment;
|
||||
class WfModuleUsingNameFragment;
|
||||
class WfModuleUsingWildCardFragment;
|
||||
@@ -1391,6 +1392,7 @@ namespace vl
|
||||
virtual void Visit(WfBindExpression* node)=0;
|
||||
virtual void Visit(WfFormatExpression* node)=0;
|
||||
virtual void Visit(WfNewCoroutineExpression* node)=0;
|
||||
virtual void Visit(WfMixinCastExpression* node)=0;
|
||||
};
|
||||
|
||||
virtual void Accept(WfVirtualExpression::IVisitor* visitor)=0;
|
||||
@@ -1431,6 +1433,17 @@ namespace vl
|
||||
static vl::Ptr<WfNewCoroutineExpression> Convert(vl::Ptr<vl::parsing::ParsingTreeNode> node, const vl::collections::List<vl::regex::RegexToken>& tokens);
|
||||
};
|
||||
|
||||
class WfMixinCastExpression : public WfVirtualExpression, vl::reflection::Description<WfMixinCastExpression>
|
||||
{
|
||||
public:
|
||||
vl::Ptr<WfType> type;
|
||||
vl::Ptr<WfExpression> expression;
|
||||
|
||||
void Accept(WfVirtualExpression::IVisitor* visitor)override;
|
||||
|
||||
static vl::Ptr<WfMixinCastExpression> Convert(vl::Ptr<vl::parsing::ParsingTreeNode> node, const vl::collections::List<vl::regex::RegexToken>& tokens);
|
||||
};
|
||||
|
||||
class WfModuleUsingFragment abstract : public vl::parsing::ParsingTreeCustomBase, vl::reflection::Description<WfModuleUsingFragment>
|
||||
{
|
||||
public:
|
||||
@@ -1614,6 +1627,7 @@ namespace vl
|
||||
DECL_TYPE_INFO(vl::workflow::WfBindExpression)
|
||||
DECL_TYPE_INFO(vl::workflow::WfFormatExpression)
|
||||
DECL_TYPE_INFO(vl::workflow::WfNewCoroutineExpression)
|
||||
DECL_TYPE_INFO(vl::workflow::WfMixinCastExpression)
|
||||
DECL_TYPE_INFO(vl::workflow::WfModuleUsingFragment)
|
||||
DECL_TYPE_INFO(vl::workflow::WfModuleUsingNameFragment)
|
||||
DECL_TYPE_INFO(vl::workflow::WfModuleUsingWildCardFragment)
|
||||
@@ -2028,6 +2042,11 @@ namespace vl
|
||||
INVOKE_INTERFACE_PROXY(Visit, node);
|
||||
}
|
||||
|
||||
void Visit(vl::workflow::WfMixinCastExpression* node)override
|
||||
{
|
||||
INVOKE_INTERFACE_PROXY(Visit, node);
|
||||
}
|
||||
|
||||
END_INTERFACE_PROXY(vl::workflow::WfVirtualExpression::IVisitor)
|
||||
|
||||
BEGIN_INTERFACE_PROXY_NOPARENT_SHAREDPTR(vl::workflow::WfModuleUsingFragment::IVisitor)
|
||||
@@ -2073,6 +2092,11 @@ namespace vl
|
||||
extern vl::Ptr<vl::parsing::ParsingTreeCustomBase> WfConvertParsingTreeNode(vl::Ptr<vl::parsing::ParsingTreeNode> node, const vl::collections::List<vl::regex::RegexToken>& tokens);
|
||||
extern vl::Ptr<vl::parsing::tabling::ParsingTable> WfLoadTable();
|
||||
|
||||
extern vl::Ptr<vl::parsing::ParsingTreeNode> WfParseCoProviderStatementAsParsingTreeNode(const vl::WString& input, vl::Ptr<vl::parsing::tabling::ParsingTable> table, vl::collections::List<vl::Ptr<vl::parsing::ParsingError>>& errors, vl::vint codeIndex = -1);
|
||||
extern vl::Ptr<vl::parsing::ParsingTreeNode> WfParseCoProviderStatementAsParsingTreeNode(const vl::WString& input, vl::Ptr<vl::parsing::tabling::ParsingTable> table, vl::vint codeIndex = -1);
|
||||
extern vl::Ptr<WfStatement> WfParseCoProviderStatement(const vl::WString& input, vl::Ptr<vl::parsing::tabling::ParsingTable> table, vl::collections::List<vl::Ptr<vl::parsing::ParsingError>>& errors, vl::vint codeIndex = -1);
|
||||
extern vl::Ptr<WfStatement> WfParseCoProviderStatement(const vl::WString& input, vl::Ptr<vl::parsing::tabling::ParsingTable> table, vl::vint codeIndex = -1);
|
||||
|
||||
extern vl::Ptr<vl::parsing::ParsingTreeNode> WfParseDeclarationAsParsingTreeNode(const vl::WString& input, vl::Ptr<vl::parsing::tabling::ParsingTable> table, vl::collections::List<vl::Ptr<vl::parsing::ParsingError>>& errors, vl::vint codeIndex = -1);
|
||||
extern vl::Ptr<vl::parsing::ParsingTreeNode> WfParseDeclarationAsParsingTreeNode(const vl::WString& input, vl::Ptr<vl::parsing::tabling::ParsingTable> table, vl::vint codeIndex = -1);
|
||||
extern vl::Ptr<WfDeclaration> WfParseDeclaration(const vl::WString& input, vl::Ptr<vl::parsing::tabling::ParsingTable> table, vl::collections::List<vl::Ptr<vl::parsing::ParsingError>>& errors, vl::vint codeIndex = -1);
|
||||
@@ -2444,15 +2468,18 @@ namespace vl
|
||||
void CopyFields(WfExpression* from, WfExpression* to);
|
||||
void CopyFields(WfFormatExpression* from, WfFormatExpression* to);
|
||||
void CopyFields(WfNewCoroutineExpression* from, WfNewCoroutineExpression* to);
|
||||
void CopyFields(WfMixinCastExpression* from, WfMixinCastExpression* to);
|
||||
|
||||
// CreateField (virtual) -----------------------------
|
||||
virtual vl::Ptr<WfExpression> CreateField(vl::Ptr<WfExpression> from) = 0;
|
||||
virtual vl::Ptr<WfStatement> CreateField(vl::Ptr<WfStatement> from) = 0;
|
||||
virtual vl::Ptr<WfType> CreateField(vl::Ptr<WfType> from) = 0;
|
||||
|
||||
// Visitor Members -----------------------------------
|
||||
void Visit(WfBindExpression* node)override;
|
||||
void Visit(WfFormatExpression* node)override;
|
||||
void Visit(WfNewCoroutineExpression* node)override;
|
||||
void Visit(WfMixinCastExpression* node)override;
|
||||
};
|
||||
|
||||
class ModuleUsingFragmentVisitor : public virtual VisitorBase, public WfModuleUsingFragment::IVisitor
|
||||
@@ -2863,15 +2890,18 @@ namespace vl
|
||||
virtual void Traverse(WfExpression* node);
|
||||
virtual void Traverse(WfFormatExpression* node);
|
||||
virtual void Traverse(WfNewCoroutineExpression* node);
|
||||
virtual void Traverse(WfMixinCastExpression* node);
|
||||
|
||||
// VisitField (virtual) ------------------------------
|
||||
virtual void VisitField(WfExpression* node) = 0;
|
||||
virtual void VisitField(WfStatement* node) = 0;
|
||||
virtual void VisitField(WfType* node) = 0;
|
||||
|
||||
// Visitor Members -----------------------------------
|
||||
void Visit(WfBindExpression* node)override;
|
||||
void Visit(WfFormatExpression* node)override;
|
||||
void Visit(WfNewCoroutineExpression* node)override;
|
||||
void Visit(WfMixinCastExpression* node)override;
|
||||
};
|
||||
|
||||
class ModuleUsingFragmentVisitor : public Object, public WfModuleUsingFragment::IVisitor
|
||||
@@ -3093,6 +3123,7 @@ namespace vl
|
||||
void Visit(WfBindExpression* node)override;
|
||||
void Visit(WfFormatExpression* node)override;
|
||||
void Visit(WfNewCoroutineExpression* node)override;
|
||||
void Visit(WfMixinCastExpression* node)override;
|
||||
};
|
||||
|
||||
class ModuleUsingFragmentVisitor : public Object, public WfModuleUsingFragment::IVisitor
|
||||
@@ -3595,6 +3626,7 @@ Expanding Virtual Nodes
|
||||
|
||||
extern void ExpandBindExpression(WfLexicalScopeManager* manager, WfBindExpression* node);
|
||||
extern void ExpandNewCoroutineExpression(WfLexicalScopeManager* manager, WfNewCoroutineExpression* node);
|
||||
extern void ExpandMixinCastExpression(WfLexicalScopeManager* manager, WfMixinCastExpression* node);
|
||||
extern void ExpandSwitchStatement(WfLexicalScopeManager* manager, WfSwitchStatement* node);
|
||||
extern void ExpandForEachStatement(WfLexicalScopeManager* manager, WfForEachStatement* node);
|
||||
extern void ExpandCoProviderStatement(WfLexicalScopeManager* manager, WfCoProviderStatement* node);
|
||||
@@ -3656,6 +3688,7 @@ Error Messages
|
||||
static Ptr<parsing::ParsingError> IncorrectTypeForUnion(WfExpression* node, reflection::description::ITypeInfo* type);
|
||||
static Ptr<parsing::ParsingError> IncorrectTypeForIntersect(WfExpression* node, reflection::description::ITypeInfo* type);
|
||||
static Ptr<parsing::ParsingError> ExpressionIsNotConstant(WfExpression* node);
|
||||
static Ptr<parsing::ParsingError> WrongMixinTargetType(WfExpression* node, reflection::description::ITypeInfo* fromType, reflection::description::ITypeInfo* toType);
|
||||
|
||||
// B: Type error
|
||||
static Ptr<parsing::ParsingError> WrongVoidType(WfType* node);
|
||||
|
||||
Binary file not shown.
Binary file not shown.
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -29,20 +29,23 @@ namespace demo
|
||||
{
|
||||
friend class ::demo::MainWindowConstructor;
|
||||
friend class ::vl_workflow_global::__vwsnc10_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener;
|
||||
friend class ::vl_workflow_global::__vwsnc11_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription;
|
||||
friend class ::vl_workflow_global::__vwsnc12_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener;
|
||||
friend class ::vl_workflow_global::__vwsnc13_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription;
|
||||
friend class ::vl_workflow_global::__vwsnc14_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener;
|
||||
friend class ::vl_workflow_global::__vwsnc15_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription;
|
||||
friend class ::vl_workflow_global::__vwsnc16_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener;
|
||||
friend class ::vl_workflow_global::__vwsnc11_Demo_demo_MainWindowConstructor___vwsn_initialize_instance_____vl_reflection_description_ICoroutine;
|
||||
friend class ::vl_workflow_global::__vwsnc12_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription;
|
||||
friend class ::vl_workflow_global::__vwsnc13_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener;
|
||||
friend class ::vl_workflow_global::__vwsnc14_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription;
|
||||
friend class ::vl_workflow_global::__vwsnc15_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener;
|
||||
friend class ::vl_workflow_global::__vwsnc16_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription;
|
||||
friend class ::vl_workflow_global::__vwsnc17_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener;
|
||||
friend class ::vl_workflow_global::__vwsnc18_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription;
|
||||
friend class ::vl_workflow_global::__vwsnc19_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener;
|
||||
friend class ::vl_workflow_global::__vwsnc1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription;
|
||||
friend class ::vl_workflow_global::__vwsnc2_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener;
|
||||
friend class ::vl_workflow_global::__vwsnc3_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription;
|
||||
friend class ::vl_workflow_global::__vwsnc4_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener;
|
||||
friend class ::vl_workflow_global::__vwsnc5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription;
|
||||
friend class ::vl_workflow_global::__vwsnc6_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener;
|
||||
friend class ::vl_workflow_global::__vwsnc7_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription;
|
||||
friend class ::vl_workflow_global::__vwsnc8_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener;
|
||||
friend class ::vl_workflow_global::__vwsnc3_Demo_demo_MainWindowConstructor___vwsn_initialize_instance_____vl_reflection_description_ICoroutine;
|
||||
friend class ::vl_workflow_global::__vwsnc4_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription;
|
||||
friend class ::vl_workflow_global::__vwsnc5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener;
|
||||
friend class ::vl_workflow_global::__vwsnc6_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription;
|
||||
friend class ::vl_workflow_global::__vwsnc7_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener;
|
||||
friend class ::vl_workflow_global::__vwsnc8_Demo_demo_MainWindowConstructor___vwsn_initialize_instance_____vl_reflection_description_ICoroutine;
|
||||
friend class ::vl_workflow_global::__vwsnc9_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription;
|
||||
friend struct ::vl_workflow_global::__vwsnf10_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__;
|
||||
friend struct ::vl_workflow_global::__vwsnf11_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__;
|
||||
|
||||
@@ -161,11 +161,9 @@ Closures
|
||||
|
||||
void __vwsnf27_Demo_demo_FindWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const
|
||||
{
|
||||
if ((! ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->self)->FindNext(::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->textFind)->GetText(), ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->checkCase)->GetSelected(), ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->radioDown)->GetSelected())))
|
||||
{
|
||||
if ((! ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->self)->FindNext(::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->textFind)->GetText(), ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->checkCase)->GetSelected(), ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->radioDown)->GetSelected())))
|
||||
{
|
||||
::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->dialogContentNotFound)->ShowDialog();
|
||||
}
|
||||
::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->dialogContentNotFound)->ShowDialog();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Binary file not shown.
File diff suppressed because it is too large
Load Diff
@@ -59,12 +59,10 @@ Closures
|
||||
|
||||
void __vwsnf1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const
|
||||
{
|
||||
auto radioButton = ::vl::__vwsn::Ensure(::vl::__vwsn::RawPtrCast<::vl::presentation::controls::GuiSelectableButton>(::vl::__vwsn::This(sender)->GetRelatedControl()));
|
||||
if (::vl::__vwsn::This(radioButton)->GetSelected())
|
||||
{
|
||||
auto radioButton = ::vl::__vwsn::Ensure(::vl::__vwsn::RawPtrCast<::vl::presentation::controls::GuiSelectableButton>(::vl::__vwsn::This(sender)->GetRelatedControl()));
|
||||
if (::vl::__vwsn::This(radioButton)->GetSelected())
|
||||
{
|
||||
::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->stackLayout)->SetDirection(((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"Horizontal", false)) ? ::vl::presentation::compositions::GuiStackComposition::Direction::Horizontal : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"Vertical", false)) ? ::vl::presentation::compositions::GuiStackComposition::Direction::Vertical : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"ReversedHorizontal", false)) ? ::vl::presentation::compositions::GuiStackComposition::Direction::ReversedHorizontal : ::vl::presentation::compositions::GuiStackComposition::Direction::ReversedVertical))));
|
||||
}
|
||||
::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->stackLayout)->SetDirection(((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"Horizontal", false)) ? ::vl::presentation::compositions::GuiStackComposition::Direction::Horizontal : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"Vertical", false)) ? ::vl::presentation::compositions::GuiStackComposition::Direction::Vertical : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"ReversedHorizontal", false)) ? ::vl::presentation::compositions::GuiStackComposition::Direction::ReversedHorizontal : ::vl::presentation::compositions::GuiStackComposition::Direction::ReversedVertical))));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -77,12 +75,10 @@ Closures
|
||||
|
||||
void __vwsnf2_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const
|
||||
{
|
||||
auto radioButton = ::vl::__vwsn::Ensure(::vl::__vwsn::RawPtrCast<::vl::presentation::controls::GuiSelectableButton>(::vl::__vwsn::This(sender)->GetRelatedControl()));
|
||||
if (::vl::__vwsn::This(radioButton)->GetSelected())
|
||||
{
|
||||
auto radioButton = ::vl::__vwsn::Ensure(::vl::__vwsn::RawPtrCast<::vl::presentation::controls::GuiSelectableButton>(::vl::__vwsn::This(sender)->GetRelatedControl()));
|
||||
if (::vl::__vwsn::This(radioButton)->GetSelected())
|
||||
{
|
||||
::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->stackLayout)->SetDirection(((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"Horizontal", false)) ? ::vl::presentation::compositions::GuiStackComposition::Direction::Horizontal : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"Vertical", false)) ? ::vl::presentation::compositions::GuiStackComposition::Direction::Vertical : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"ReversedHorizontal", false)) ? ::vl::presentation::compositions::GuiStackComposition::Direction::ReversedHorizontal : ::vl::presentation::compositions::GuiStackComposition::Direction::ReversedVertical))));
|
||||
}
|
||||
::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->stackLayout)->SetDirection(((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"Horizontal", false)) ? ::vl::presentation::compositions::GuiStackComposition::Direction::Horizontal : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"Vertical", false)) ? ::vl::presentation::compositions::GuiStackComposition::Direction::Vertical : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"ReversedHorizontal", false)) ? ::vl::presentation::compositions::GuiStackComposition::Direction::ReversedHorizontal : ::vl::presentation::compositions::GuiStackComposition::Direction::ReversedVertical))));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -95,12 +91,10 @@ Closures
|
||||
|
||||
void __vwsnf3_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const
|
||||
{
|
||||
auto radioButton = ::vl::__vwsn::Ensure(::vl::__vwsn::RawPtrCast<::vl::presentation::controls::GuiSelectableButton>(::vl::__vwsn::This(sender)->GetRelatedControl()));
|
||||
if (::vl::__vwsn::This(radioButton)->GetSelected())
|
||||
{
|
||||
auto radioButton = ::vl::__vwsn::Ensure(::vl::__vwsn::RawPtrCast<::vl::presentation::controls::GuiSelectableButton>(::vl::__vwsn::This(sender)->GetRelatedControl()));
|
||||
if (::vl::__vwsn::This(radioButton)->GetSelected())
|
||||
{
|
||||
::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->stackLayout)->SetDirection(((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"Horizontal", false)) ? ::vl::presentation::compositions::GuiStackComposition::Direction::Horizontal : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"Vertical", false)) ? ::vl::presentation::compositions::GuiStackComposition::Direction::Vertical : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"ReversedHorizontal", false)) ? ::vl::presentation::compositions::GuiStackComposition::Direction::ReversedHorizontal : ::vl::presentation::compositions::GuiStackComposition::Direction::ReversedVertical))));
|
||||
}
|
||||
::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->stackLayout)->SetDirection(((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"Horizontal", false)) ? ::vl::presentation::compositions::GuiStackComposition::Direction::Horizontal : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"Vertical", false)) ? ::vl::presentation::compositions::GuiStackComposition::Direction::Vertical : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"ReversedHorizontal", false)) ? ::vl::presentation::compositions::GuiStackComposition::Direction::ReversedHorizontal : ::vl::presentation::compositions::GuiStackComposition::Direction::ReversedVertical))));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -113,12 +107,10 @@ Closures
|
||||
|
||||
void __vwsnf4_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const
|
||||
{
|
||||
auto radioButton = ::vl::__vwsn::Ensure(::vl::__vwsn::RawPtrCast<::vl::presentation::controls::GuiSelectableButton>(::vl::__vwsn::This(sender)->GetRelatedControl()));
|
||||
if (::vl::__vwsn::This(radioButton)->GetSelected())
|
||||
{
|
||||
auto radioButton = ::vl::__vwsn::Ensure(::vl::__vwsn::RawPtrCast<::vl::presentation::controls::GuiSelectableButton>(::vl::__vwsn::This(sender)->GetRelatedControl()));
|
||||
if (::vl::__vwsn::This(radioButton)->GetSelected())
|
||||
{
|
||||
::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->stackLayout)->SetDirection(((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"Horizontal", false)) ? ::vl::presentation::compositions::GuiStackComposition::Direction::Horizontal : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"Vertical", false)) ? ::vl::presentation::compositions::GuiStackComposition::Direction::Vertical : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"ReversedHorizontal", false)) ? ::vl::presentation::compositions::GuiStackComposition::Direction::ReversedHorizontal : ::vl::presentation::compositions::GuiStackComposition::Direction::ReversedVertical))));
|
||||
}
|
||||
::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->stackLayout)->SetDirection(((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"Horizontal", false)) ? ::vl::presentation::compositions::GuiStackComposition::Direction::Horizontal : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"Vertical", false)) ? ::vl::presentation::compositions::GuiStackComposition::Direction::Vertical : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"ReversedHorizontal", false)) ? ::vl::presentation::compositions::GuiStackComposition::Direction::ReversedHorizontal : ::vl::presentation::compositions::GuiStackComposition::Direction::ReversedVertical))));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -132,21 +124,19 @@ Closures
|
||||
void __vwsnf5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const
|
||||
{
|
||||
{
|
||||
auto __vwsn_for_enumerable_stackItem = ::vl::Ptr<::vl::reflection::description::IValueEnumerable>(::vl::__vwsn::UnboxCollection<::vl::reflection::description::IValueReadonlyList>(::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->stackLayout)->GetStackItems()));
|
||||
auto __vwsn_for_enumerator_stackItem = ::vl::__vwsn::This(__vwsn_for_enumerable_stackItem.Obj())->CreateEnumerator();
|
||||
while (::vl::__vwsn::This(__vwsn_for_enumerator_stackItem.Obj())->Next())
|
||||
{
|
||||
auto __vwsn_for_enumerable_stackItem = ::vl::Ptr<::vl::reflection::description::IValueEnumerable>(::vl::__vwsn::UnboxCollection<::vl::reflection::description::IValueReadonlyList>(::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->stackLayout)->GetStackItems()));
|
||||
auto __vwsn_for_enumerator_stackItem = ::vl::__vwsn::This(__vwsn_for_enumerable_stackItem.Obj())->CreateEnumerator();
|
||||
while (::vl::__vwsn::This(__vwsn_for_enumerator_stackItem.Obj())->Next())
|
||||
auto stackItem = ::vl::__vwsn::Unbox<::vl::presentation::compositions::GuiStackItemComposition*>(::vl::__vwsn::This(__vwsn_for_enumerator_stackItem.Obj())->GetCurrent());
|
||||
{
|
||||
auto stackItem = ::vl::__vwsn::Unbox<::vl::presentation::compositions::GuiStackItemComposition*>(::vl::__vwsn::This(__vwsn_for_enumerator_stackItem.Obj())->GetCurrent());
|
||||
{
|
||||
::vl::__vwsn::This(stackItem)->SetExtraMargin(::vl::presentation::Margin{});
|
||||
}
|
||||
::vl::__vwsn::This(stackItem)->SetExtraMargin(::vl::presentation::Margin{});
|
||||
}
|
||||
}
|
||||
auto selectedItem = ::vl::__vwsn::Ensure(::vl::__vwsn::RawPtrCast<::vl::presentation::compositions::GuiStackItemComposition>(::vl::__vwsn::This(sender)->GetParent()));
|
||||
::vl::__vwsn::This(selectedItem)->SetExtraMargin([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 10; __vwsn_temp__.top = 10; __vwsn_temp__.right = 10; __vwsn_temp__.bottom = 10; return __vwsn_temp__; }());
|
||||
::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->stackLayout)->MoveChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(selectedItem), (::vl::__vwsn::This(::vl::__vwsn::UnboxCollection<::vl::reflection::description::IValueReadonlyList>(::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->stackLayout)->GetStackItems()).Obj())->GetCount() - 1));
|
||||
}
|
||||
auto selectedItem = ::vl::__vwsn::Ensure(::vl::__vwsn::RawPtrCast<::vl::presentation::compositions::GuiStackItemComposition>(::vl::__vwsn::This(sender)->GetParent()));
|
||||
::vl::__vwsn::This(selectedItem)->SetExtraMargin([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 10; __vwsn_temp__.top = 10; __vwsn_temp__.right = 10; __vwsn_temp__.bottom = 10; return __vwsn_temp__; }());
|
||||
::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->stackLayout)->MoveChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(selectedItem), (::vl::__vwsn::This(::vl::__vwsn::UnboxCollection<::vl::reflection::description::IValueReadonlyList>(::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->stackLayout)->GetStackItems()).Obj())->GetCount() - 1));
|
||||
}
|
||||
|
||||
//-------------------------------------------------------------------
|
||||
@@ -159,21 +149,19 @@ Closures
|
||||
void __vwsnf6_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const
|
||||
{
|
||||
{
|
||||
auto __vwsn_for_enumerable_stackItem = ::vl::Ptr<::vl::reflection::description::IValueEnumerable>(::vl::__vwsn::UnboxCollection<::vl::reflection::description::IValueReadonlyList>(::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->stackLayout)->GetStackItems()));
|
||||
auto __vwsn_for_enumerator_stackItem = ::vl::__vwsn::This(__vwsn_for_enumerable_stackItem.Obj())->CreateEnumerator();
|
||||
while (::vl::__vwsn::This(__vwsn_for_enumerator_stackItem.Obj())->Next())
|
||||
{
|
||||
auto __vwsn_for_enumerable_stackItem = ::vl::Ptr<::vl::reflection::description::IValueEnumerable>(::vl::__vwsn::UnboxCollection<::vl::reflection::description::IValueReadonlyList>(::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->stackLayout)->GetStackItems()));
|
||||
auto __vwsn_for_enumerator_stackItem = ::vl::__vwsn::This(__vwsn_for_enumerable_stackItem.Obj())->CreateEnumerator();
|
||||
while (::vl::__vwsn::This(__vwsn_for_enumerator_stackItem.Obj())->Next())
|
||||
auto stackItem = ::vl::__vwsn::Unbox<::vl::presentation::compositions::GuiStackItemComposition*>(::vl::__vwsn::This(__vwsn_for_enumerator_stackItem.Obj())->GetCurrent());
|
||||
{
|
||||
auto stackItem = ::vl::__vwsn::Unbox<::vl::presentation::compositions::GuiStackItemComposition*>(::vl::__vwsn::This(__vwsn_for_enumerator_stackItem.Obj())->GetCurrent());
|
||||
{
|
||||
::vl::__vwsn::This(stackItem)->SetExtraMargin(::vl::presentation::Margin{});
|
||||
}
|
||||
::vl::__vwsn::This(stackItem)->SetExtraMargin(::vl::presentation::Margin{});
|
||||
}
|
||||
}
|
||||
auto selectedItem = ::vl::__vwsn::Ensure(::vl::__vwsn::RawPtrCast<::vl::presentation::compositions::GuiStackItemComposition>(::vl::__vwsn::This(sender)->GetParent()));
|
||||
::vl::__vwsn::This(selectedItem)->SetExtraMargin([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 10; __vwsn_temp__.top = 10; __vwsn_temp__.right = 10; __vwsn_temp__.bottom = 10; return __vwsn_temp__; }());
|
||||
::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->stackLayout)->MoveChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(selectedItem), (::vl::__vwsn::This(::vl::__vwsn::UnboxCollection<::vl::reflection::description::IValueReadonlyList>(::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->stackLayout)->GetStackItems()).Obj())->GetCount() - 1));
|
||||
}
|
||||
auto selectedItem = ::vl::__vwsn::Ensure(::vl::__vwsn::RawPtrCast<::vl::presentation::compositions::GuiStackItemComposition>(::vl::__vwsn::This(sender)->GetParent()));
|
||||
::vl::__vwsn::This(selectedItem)->SetExtraMargin([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 10; __vwsn_temp__.top = 10; __vwsn_temp__.right = 10; __vwsn_temp__.bottom = 10; return __vwsn_temp__; }());
|
||||
::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->stackLayout)->MoveChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(selectedItem), (::vl::__vwsn::This(::vl::__vwsn::UnboxCollection<::vl::reflection::description::IValueReadonlyList>(::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->stackLayout)->GetStackItems()).Obj())->GetCount() - 1));
|
||||
}
|
||||
|
||||
//-------------------------------------------------------------------
|
||||
@@ -186,21 +174,19 @@ Closures
|
||||
void __vwsnf7_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const
|
||||
{
|
||||
{
|
||||
auto __vwsn_for_enumerable_stackItem = ::vl::Ptr<::vl::reflection::description::IValueEnumerable>(::vl::__vwsn::UnboxCollection<::vl::reflection::description::IValueReadonlyList>(::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->stackLayout)->GetStackItems()));
|
||||
auto __vwsn_for_enumerator_stackItem = ::vl::__vwsn::This(__vwsn_for_enumerable_stackItem.Obj())->CreateEnumerator();
|
||||
while (::vl::__vwsn::This(__vwsn_for_enumerator_stackItem.Obj())->Next())
|
||||
{
|
||||
auto __vwsn_for_enumerable_stackItem = ::vl::Ptr<::vl::reflection::description::IValueEnumerable>(::vl::__vwsn::UnboxCollection<::vl::reflection::description::IValueReadonlyList>(::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->stackLayout)->GetStackItems()));
|
||||
auto __vwsn_for_enumerator_stackItem = ::vl::__vwsn::This(__vwsn_for_enumerable_stackItem.Obj())->CreateEnumerator();
|
||||
while (::vl::__vwsn::This(__vwsn_for_enumerator_stackItem.Obj())->Next())
|
||||
auto stackItem = ::vl::__vwsn::Unbox<::vl::presentation::compositions::GuiStackItemComposition*>(::vl::__vwsn::This(__vwsn_for_enumerator_stackItem.Obj())->GetCurrent());
|
||||
{
|
||||
auto stackItem = ::vl::__vwsn::Unbox<::vl::presentation::compositions::GuiStackItemComposition*>(::vl::__vwsn::This(__vwsn_for_enumerator_stackItem.Obj())->GetCurrent());
|
||||
{
|
||||
::vl::__vwsn::This(stackItem)->SetExtraMargin(::vl::presentation::Margin{});
|
||||
}
|
||||
::vl::__vwsn::This(stackItem)->SetExtraMargin(::vl::presentation::Margin{});
|
||||
}
|
||||
}
|
||||
auto selectedItem = ::vl::__vwsn::Ensure(::vl::__vwsn::RawPtrCast<::vl::presentation::compositions::GuiStackItemComposition>(::vl::__vwsn::This(sender)->GetParent()));
|
||||
::vl::__vwsn::This(selectedItem)->SetExtraMargin([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 10; __vwsn_temp__.top = 10; __vwsn_temp__.right = 10; __vwsn_temp__.bottom = 10; return __vwsn_temp__; }());
|
||||
::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->stackLayout)->MoveChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(selectedItem), (::vl::__vwsn::This(::vl::__vwsn::UnboxCollection<::vl::reflection::description::IValueReadonlyList>(::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->stackLayout)->GetStackItems()).Obj())->GetCount() - 1));
|
||||
}
|
||||
auto selectedItem = ::vl::__vwsn::Ensure(::vl::__vwsn::RawPtrCast<::vl::presentation::compositions::GuiStackItemComposition>(::vl::__vwsn::This(sender)->GetParent()));
|
||||
::vl::__vwsn::This(selectedItem)->SetExtraMargin([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 10; __vwsn_temp__.top = 10; __vwsn_temp__.right = 10; __vwsn_temp__.bottom = 10; return __vwsn_temp__; }());
|
||||
::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->stackLayout)->MoveChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(selectedItem), (::vl::__vwsn::This(::vl::__vwsn::UnboxCollection<::vl::reflection::description::IValueReadonlyList>(::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->stackLayout)->GetStackItems()).Obj())->GetCount() - 1));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -59,12 +59,10 @@ Closures
|
||||
|
||||
void __vwsnf1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const
|
||||
{
|
||||
{
|
||||
auto a = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->textBoxA)->GetText();
|
||||
auto b = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->textBoxB)->GetText();
|
||||
auto c = [&](){ try{ return ::vl::__vwsn::ToString((::vl::__vwsn::Parse<::vl::vint32_t>(a) + ::vl::__vwsn::Parse<::vl::vint32_t>(b))); } catch(...){ return ::vl::WString(L"<ERROR>", false); } }();
|
||||
::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->textBoxC)->SetText(c);
|
||||
}
|
||||
auto a = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->textBoxA)->GetText();
|
||||
auto b = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->textBoxB)->GetText();
|
||||
auto c = [&](){ try{ return ::vl::__vwsn::ToString((::vl::__vwsn::Parse<::vl::vint32_t>(a) + ::vl::__vwsn::Parse<::vl::vint32_t>(b))); } catch(...){ return ::vl::WString(L"<ERROR>", false); } }();
|
||||
::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->textBoxC)->SetText(c);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -59,9 +59,7 @@ Closures
|
||||
|
||||
void __vwsnf1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const
|
||||
{
|
||||
{
|
||||
::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->textBoxC)->SetText([&](){ try{ return ::vl::__vwsn::ToString(::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->ViewModel.Obj())->Add(::vl::__vwsn::Parse<::vl::vint32_t>(::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->textBoxA)->GetText()), ::vl::__vwsn::Parse<::vl::vint32_t>(::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->textBoxB)->GetText()))); } catch(...){ return ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->ViewModel.Obj())->Error(); } }());
|
||||
}
|
||||
::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->textBoxC)->SetText([&](){ try{ return ::vl::__vwsn::ToString(::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->ViewModel.Obj())->Add(::vl::__vwsn::Parse<::vl::vint32_t>(::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->textBoxA)->GetText()), ::vl::__vwsn::Parse<::vl::vint32_t>(::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->textBoxB)->GetText()))); } catch(...){ return ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->ViewModel.Obj())->Error(); } }());
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -77,9 +77,7 @@ Closures
|
||||
|
||||
void __vwsnf2_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const
|
||||
{
|
||||
{
|
||||
(::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->self)->integerState = ::vl::__vwsn::Parse<::vl::vint32_t>(::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->textBoxA)->GetText()));
|
||||
}
|
||||
(::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->self)->integerState = ::vl::__vwsn::Parse<::vl::vint32_t>(::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->textBoxA)->GetText()));
|
||||
}
|
||||
|
||||
//-------------------------------------------------------------------
|
||||
|
||||
@@ -77,9 +77,7 @@ Closures
|
||||
|
||||
void __vwsnf2_Demo_demo_MyControlConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const
|
||||
{
|
||||
{
|
||||
::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->self)->SetSelectedOption(::vl::WString(L"A", false));
|
||||
}
|
||||
::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->self)->SetSelectedOption(::vl::WString(L"A", false));
|
||||
}
|
||||
|
||||
//-------------------------------------------------------------------
|
||||
@@ -91,9 +89,7 @@ Closures
|
||||
|
||||
void __vwsnf3_Demo_demo_MyControlConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const
|
||||
{
|
||||
{
|
||||
::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->self)->SetSelectedOption(::vl::WString(L"B", false));
|
||||
}
|
||||
::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->self)->SetSelectedOption(::vl::WString(L"B", false));
|
||||
}
|
||||
|
||||
//-------------------------------------------------------------------
|
||||
|
||||
Reference in New Issue
Block a user