Update release

This commit is contained in:
Zihan Chen
2017-10-29 03:21:19 -07:00
parent 746605da5e
commit 1ab5adc4e5
18 changed files with 3027 additions and 2922 deletions
+47 -59
View File
@@ -11368,11 +11368,13 @@ GuiScrollView
ct->GetVerticalScroll()->PositionChanged.Detach(vScrollHandler);
ct->GetEventReceiver()->horizontalWheel.Detach(hWheelHandler);
ct->GetEventReceiver()->verticalWheel.Detach(vWheelHandler);
ct->BoundsChanged.Detach(containerBoundsChangedHandler);
hScrollHandler = nullptr;
vScrollHandler = nullptr;
hWheelHandler = nullptr;
vWheelHandler = nullptr;
containerBoundsChangedHandler = nullptr;
supressScrolling = false;
}
@@ -11383,6 +11385,7 @@ GuiScrollView
vScrollHandler = ct->GetVerticalScroll()->PositionChanged.AttachMethod(this, &GuiScrollView::OnVerticalScroll);
hWheelHandler = ct->GetEventReceiver()->horizontalWheel.AttachMethod(this, &GuiScrollView::OnHorizontalWheel);
vWheelHandler = ct->GetEventReceiver()->verticalWheel.AttachMethod(this, &GuiScrollView::OnVerticalWheel);
containerBoundsChangedHandler = ct->BoundsChanged.AttachMethod(this, &GuiScrollView::OnContainerBoundsChanged);
CalculateView();
}
@@ -11437,12 +11440,15 @@ GuiScrollView
UpdateView(viewBounds);
}
void GuiScrollView::AdjustView(Size fullSize)
bool GuiScrollView::AdjustView(Size fullSize)
{
auto ct = GetControlTemplateObject();
auto hScroll = ct->GetHorizontalScroll();
auto vScroll = ct->GetVerticalScroll();
auto hVisible = hScroll->GetVisible();
auto vVisible = vScroll->GetVisible();
Size viewSize = ct->GetContainerComposition()->GetBounds().GetSize();
if (fullSize.x <= viewSize.x)
{
@@ -11471,6 +11477,8 @@ GuiScrollView
vScroll->SetTotalSize(fullSize.y);
vScroll->SetPageSize(viewSize.y);
}
return hVisible != hScroll->GetVisible() || vVisible != vScroll->GetVisible();
}
GuiScrollView::GuiScrollView(theme::ThemeName themeName)
@@ -11502,18 +11510,18 @@ GuiScrollView
void GuiScrollView::CalculateView()
{
auto ct = GetControlTemplateObject();
if(!supressScrolling)
if (!supressScrolling)
{
Size fullSize = QueryFullSize();
while(true)
while (true)
{
AdjustView(fullSize);
AdjustView(fullSize);
bool flagA = AdjustView(fullSize);
bool flagB = AdjustView(fullSize);
supressScrolling = true;
CallUpdateView();
supressScrolling = false;
Size newSize=QueryFullSize();
Size newSize = QueryFullSize();
if (fullSize == newSize)
{
vint smallMove = GetSmallMove();
@@ -11522,11 +11530,15 @@ GuiScrollView
Size bigMove = GetBigMove();
ct->GetHorizontalScroll()->SetBigMove(bigMove.x);
ct->GetVerticalScroll()->SetBigMove(bigMove.y);
break;
if (!flagA && !flagB)
{
break;
}
}
else
{
fullSize=newSize;
fullSize = newSize;
}
}
}
@@ -16849,7 +16861,7 @@ GuiCommonDatePickerLook
}
/***********************************************************************
GuiCommonDatePickerLook
GuiCommonScrollViewLook
***********************************************************************/
void GuiCommonScrollViewLook::UpdateTable()
@@ -16893,7 +16905,7 @@ GuiCommonDatePickerLook
horizontalScroll = new GuiScroll(theme::ThemeName::HScroll);
horizontalScroll->GetBoundsComposition()->SetAlignmentToParent(Margin(0, 0, 0, 0));
horizontalScroll->SetEnabled(false);
verticalScroll = new GuiScroll(theme::ThemeName::HScroll);
verticalScroll = new GuiScroll(theme::ThemeName::VScroll);
verticalScroll->GetBoundsComposition()->SetAlignmentToParent(Margin(0, 0, 0, 0));
verticalScroll->SetEnabled(false);
@@ -17051,7 +17063,7 @@ GuiCommonScrollBehavior
});
}
void GuiCommonScrollBehavior::AttachHorizontalPartialView(compositions::GuiPartialViewComposition* partialView)
void GuiCommonScrollBehavior::AttachHorizontalScrollHandle(compositions::GuiPartialViewComposition* partialView)
{
partialView->GetParent()->GetEventReceiver()->leftButtonDown.AttachLambda([=](GuiGraphicsComposition*, GuiMouseEventArgs& arguments)
{
@@ -17068,22 +17080,10 @@ GuiCommonScrollBehavior
}
});
partialView->GetEventReceiver()->mouseMove.AttachLambda([=](GuiGraphicsComposition*, GuiMouseEventArgs& arguments)
{
if (dragging)
{
auto bounds = partialView->GetParent()->GetBounds();
vint totalPixels = bounds.x2 - bounds.x1;
vint currentOffset = partialView->GetBounds().x1;
vint newOffset = currentOffset + (arguments.x - location.x);
SetScroll(totalPixels, newOffset);
}
});
AttachHandle(partialView);
AttachHorizontalTrackerHandle(partialView);
}
void GuiCommonScrollBehavior::AttachVerticalPartialView(compositions::GuiPartialViewComposition* partialView)
void GuiCommonScrollBehavior::AttachVerticalScrollHandle(compositions::GuiPartialViewComposition* partialView)
{
partialView->GetParent()->GetEventReceiver()->leftButtonDown.AttachLambda([=](GuiGraphicsComposition*, GuiMouseEventArgs& arguments)
{
@@ -17100,6 +17100,28 @@ GuiCommonScrollBehavior
}
});
AttachVerticalTrackerHandle(partialView);
}
void GuiCommonScrollBehavior::AttachHorizontalTrackerHandle(compositions::GuiPartialViewComposition* partialView)
{
partialView->GetEventReceiver()->mouseMove.AttachLambda([=](GuiGraphicsComposition*, GuiMouseEventArgs& arguments)
{
if (dragging)
{
auto bounds = partialView->GetParent()->GetBounds();
vint totalPixels = bounds.x2 - bounds.x1;
vint currentOffset = partialView->GetBounds().x1;
vint newOffset = currentOffset + (arguments.x - location.x);
SetScroll(totalPixels, newOffset);
}
});
AttachHandle(partialView);
}
void GuiCommonScrollBehavior::AttachVerticalTrackerHandle(compositions::GuiPartialViewComposition* partialView)
{
partialView->GetEventReceiver()->mouseMove.AttachLambda([=](GuiGraphicsComposition*, GuiMouseEventArgs& arguments)
{
if (dragging)
@@ -17115,40 +17137,6 @@ GuiCommonScrollBehavior
AttachHandle(partialView);
}
void GuiCommonScrollBehavior::AttachHorizontalTrackerHandle(compositions::GuiBoundsComposition* handle)
{
handle->GetEventReceiver()->mouseMove.AttachLambda([=](GuiGraphicsComposition*, GuiMouseEventArgs& arguments)
{
if (dragging)
{
auto bounds = handle->GetParent()->GetBounds();
vint totalPixels = bounds.x2 - bounds.x1;
vint currentOffset = handle->GetBounds().x1;
vint newOffset = currentOffset + (arguments.x - location.x);
SetScroll(totalPixels, newOffset);
}
});
AttachHandle(handle);
}
void GuiCommonScrollBehavior::AttachVerticalTrackerHandle(compositions::GuiBoundsComposition* handle)
{
handle->GetEventReceiver()->mouseMove.AttachLambda([=](GuiGraphicsComposition*, GuiMouseEventArgs& arguments)
{
if (dragging)
{
auto bounds = handle->GetParent()->GetBounds();
vint totalPixels = bounds.y2 - bounds.y1;
vint currentOffset = handle->GetBounds().y1;
vint newOffset = currentOffset + (arguments.y - location.y);
SetScroll(totalPixels, newOffset);
}
});
AttachHandle(handle);
}
vint GuiCommonScrollBehavior::GetHorizontalTrackerHandlerPosition(compositions::GuiBoundsComposition* handle, vint totalSize, vint pageSize, vint position)
{
vint width = handle->GetParent()->GetBounds().Width() - handle->GetBounds().Width();
+6 -5
View File
@@ -8783,10 +8783,10 @@ GuiCommonScrollBehavior
void AttachScrollTemplate(GuiScrollTemplate* value);
void AttachDecreaseButton(controls::GuiButton* button);
void AttachIncreaseButton(controls::GuiButton* button);
void AttachHorizontalPartialView(compositions::GuiPartialViewComposition* partialView);
void AttachVerticalPartialView(compositions::GuiPartialViewComposition* partialView);
void AttachHorizontalTrackerHandle(compositions::GuiBoundsComposition* handle);
void AttachVerticalTrackerHandle(compositions::GuiBoundsComposition* handle);
void AttachHorizontalScrollHandle(compositions::GuiPartialViewComposition* partialView);
void AttachVerticalScrollHandle(compositions::GuiPartialViewComposition* partialView);
void AttachHorizontalTrackerHandle(compositions::GuiPartialViewComposition* partialView);
void AttachVerticalTrackerHandle(compositions::GuiPartialViewComposition* partialView);
vint GetHorizontalTrackerHandlerPosition(compositions::GuiBoundsComposition* handle, vint totalSize, vint pageSize, vint position);
vint GetVerticalTrackerHandlerPosition(compositions::GuiBoundsComposition* handle, vint totalSize, vint pageSize, vint position);
@@ -10378,6 +10378,7 @@ Scroll View
Ptr<IEventHandler> vScrollHandler;
Ptr<IEventHandler> hWheelHandler;
Ptr<IEventHandler> vWheelHandler;
Ptr<IEventHandler> containerBoundsChangedHandler;
bool horizontalAlwaysVisible = true;
bool verticalAlwaysVisible = true;
@@ -10387,7 +10388,7 @@ Scroll View
void OnHorizontalWheel(compositions::GuiGraphicsComposition* sender, compositions::GuiMouseEventArgs& arguments);
void OnVerticalWheel(compositions::GuiGraphicsComposition* sender, compositions::GuiMouseEventArgs& arguments);
void CallUpdateView();
void AdjustView(Size fullSize);
bool AdjustView(Size fullSize);
/// <summary>Calculate the full size of the content.</summary>
/// <returns>The full size of the content.</returns>
+4 -4
View File
@@ -3226,10 +3226,10 @@ Type Declaration
CLASS_MEMBER_METHOD(AttachScrollTemplate, { L"value" })
CLASS_MEMBER_METHOD(AttachDecreaseButton, { L"button" })
CLASS_MEMBER_METHOD(AttachIncreaseButton, { L"button" })
CLASS_MEMBER_METHOD(AttachHorizontalPartialView, { L"partialView" })
CLASS_MEMBER_METHOD(AttachVerticalPartialView, { L"partialView" })
CLASS_MEMBER_METHOD(AttachHorizontalTrackerHandle, { L"handle" })
CLASS_MEMBER_METHOD(AttachVerticalTrackerHandle, { L"handle" })
CLASS_MEMBER_METHOD(AttachHorizontalScrollHandle, { L"partialView" })
CLASS_MEMBER_METHOD(AttachVerticalScrollHandle, { L"partialView" })
CLASS_MEMBER_METHOD(AttachHorizontalTrackerHandle, { L"partialView" })
CLASS_MEMBER_METHOD(AttachVerticalTrackerHandle, { L"partialView" })
CLASS_MEMBER_METHOD(GetHorizontalTrackerHandlerPosition, { L"handle" _ L"totalSize" _ L"pageSize" _ L"position" })
CLASS_MEMBER_METHOD(GetVerticalTrackerHandlerPosition, { L"handle" _ L"totalSize" _ L"pageSize" _ L"position" })
END_CLASS_MEMBER(GuiCommonScrollBehavior)
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+15 -1
View File
@@ -4466,6 +4466,7 @@ vl::Func<R(TArgs...)>
{
protected:
Ptr<internal_invokers::Invoker<R, TArgs...>> invoker;
public:
typedef R FunctionType(TArgs...);
typedef R ResultType;
@@ -4498,6 +4499,19 @@ vl::Func<R(TArgs...)>
{
invoker=new internal_invokers::MemberInvoker<C, R, TArgs...>(sender, function);
}
/// <summary>Create a reference using a function object.</summary>
/// <typeparam name="R2">Return type of the function object.</typeparam>
/// <typeparam name="TArgs2">Argument types of the function object.</typeparam>
/// <param name="function">The function object.</param>
template<typename R2, typename ...TArgs2>
Func(const Func<R2(TArgs2...)>& function)
{
if (function)
{
invoker = new internal_invokers::ObjectInvoker<Func<R2(TArgs2...)>, R, TArgs...>(function);
}
}
/// <summary>Create a reference using a function object.</summary>
/// <typeparam name="C">Type of the function object.</typeparam>
@@ -4505,7 +4519,7 @@ vl::Func<R(TArgs...)>
template<typename C>
Func(const C& function)
{
invoker=new internal_invokers::ObjectInvoker<C, R, TArgs...>(function);
invoker = new internal_invokers::ObjectInvoker<C, R, TArgs...>(function);
}
/// <summary>Invoke the function.</summary>
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -116,73 +116,77 @@
</Cell>
<Cell Site="row:0 column:1">
<Stack Direction="Vertical" Padding="5" AlignmentToParent="left:0 top:0 right:0 bottom:0" MinSizeLimitation="LimitToElementAndChildren">
<StackItem>
<Button Alt="A" Text="Add 10 items">
<att.BoundsComposition-set AlignmentToParent="left:0 top:0 right:0 bottom:0"/>
<ev.Clicked-eval>
<![CDATA[
{
for (i in range [0, 9])
<GroupBox Text="Operations">
<att.BoundsComposition-set AlignmentToParent="left:0 top:0 right:0 bottom:-1"/>
<att.ContainerComposition-set InternalMargin="left:5 top:0 right:5 bottom:5"/>
<Stack Direction="Vertical" Padding="5" AlignmentToParent="left:0 top:0 right:0 bottom:0" MinSizeLimitation="LimitToElementAndChildren">
<StackItem>
<Button Alt="A" Text="Add 10 items">
<att.BoundsComposition-set AlignmentToParent="left:0 top:0 right:0 bottom:0"/>
<ev.Clicked-eval>
<![CDATA[
{
var textItem = new demo::MyTextItem^();
textItem.Name = self.NumberToText(self.counter + i);
self.itemsToBind.Add(textItem);
}
for (i in range [0, 9])
{
var textItem = new demo::MyTextItem^();
textItem.Name = self.NumberToText(self.counter + i);
self.itemsToBind.Add(textItem);
}
self.counter = self.counter + 10;
}
]]>
</ev.Clicked-eval>
</Button>
</StackItem>
<StackItem>
<Button Alt="O" Text="Remove odd items">
<att.BoundsComposition-set AlignmentToParent="left:0 top:0 right:0 bottom:0"/>
<ev.Clicked-eval>
<![CDATA[
{
var i = 0;
while (i < self.itemsToBind.Count)
{
self.itemsToBind.RemoveAt(i);
i = i + 1;
self.counter = self.counter + 10;
}
}
]]>
</ev.Clicked-eval>
</Button>
</StackItem>
<StackItem>
<Button Alt="E" Text="Remove even items">
<att.BoundsComposition-set AlignmentToParent="left:0 top:0 right:0 bottom:0"/>
<ev.Clicked-eval>
<![CDATA[
{
var i = 1;
while (i < self.itemsToBind.Count)
]]>
</ev.Clicked-eval>
</Button>
</StackItem>
<StackItem>
<Button Alt="O" Text="Remove odd items">
<att.BoundsComposition-set AlignmentToParent="left:0 top:0 right:0 bottom:0"/>
<ev.Clicked-eval>
<![CDATA[
{
self.itemsToBind.RemoveAt(i);
i = i + 1;
var i = 0;
while (i < self.itemsToBind.Count)
{
self.itemsToBind.RemoveAt(i);
i = i + 1;
}
}
}
]]>
</ev.Clicked-eval>
</Button>
</StackItem>
<StackItem>
<Button Alt="C" Text="Clear">
<att.BoundsComposition-set AlignmentToParent="left:0 top:0 right:0 bottom:0"/>
<ev.Clicked-eval>
<![CDATA[
{
self.itemsToBind.Clear();
}
]]>
</ev.Clicked-eval>
</Button>
</StackItem>
</Stack>
]]>
</ev.Clicked-eval>
</Button>
</StackItem>
<StackItem>
<Button Alt="E" Text="Remove even items">
<att.BoundsComposition-set AlignmentToParent="left:0 top:0 right:0 bottom:0"/>
<ev.Clicked-eval>
<![CDATA[
{
var i = 1;
while (i < self.itemsToBind.Count)
{
self.itemsToBind.RemoveAt(i);
i = i + 1;
}
}
]]>
</ev.Clicked-eval>
</Button>
</StackItem>
<StackItem>
<Button Alt="C" Text="Clear">
<att.BoundsComposition-set AlignmentToParent="left:0 top:0 right:0 bottom:0"/>
<ev.Clicked-eval>
<![CDATA[
{
self.itemsToBind.Clear();
}
]]>
</ev.Clicked-eval>
</Button>
</StackItem>
</Stack>
</GroupBox>
</Cell>
<Cell Site="row:1 column:0 columnSpan:2">
@@ -835,27 +835,30 @@ namespace demo
::vl::presentation::controls::GuiScrollContainer* __vwsn_precompile_8 = static_cast<::vl::presentation::controls::GuiScrollContainer*>(nullptr);
::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_9 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr);
::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_10 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr);
::vl::presentation::compositions::GuiStackComposition* __vwsn_precompile_11 = static_cast<::vl::presentation::compositions::GuiStackComposition*>(nullptr);
::vl::presentation::compositions::GuiStackItemComposition* __vwsn_precompile_12 = static_cast<::vl::presentation::compositions::GuiStackItemComposition*>(nullptr);
::vl::presentation::controls::GuiButton* __vwsn_precompile_13 = static_cast<::vl::presentation::controls::GuiButton*>(nullptr);
::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_14 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr);
::vl::presentation::compositions::GuiStackItemComposition* __vwsn_precompile_15 = static_cast<::vl::presentation::compositions::GuiStackItemComposition*>(nullptr);
::vl::presentation::controls::GuiButton* __vwsn_precompile_16 = static_cast<::vl::presentation::controls::GuiButton*>(nullptr);
::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_17 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr);
::vl::presentation::compositions::GuiStackItemComposition* __vwsn_precompile_18 = static_cast<::vl::presentation::compositions::GuiStackItemComposition*>(nullptr);
::vl::presentation::controls::GuiButton* __vwsn_precompile_19 = static_cast<::vl::presentation::controls::GuiButton*>(nullptr);
::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_20 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr);
::vl::presentation::compositions::GuiStackItemComposition* __vwsn_precompile_21 = static_cast<::vl::presentation::compositions::GuiStackItemComposition*>(nullptr);
::vl::presentation::controls::GuiButton* __vwsn_precompile_22 = static_cast<::vl::presentation::controls::GuiButton*>(nullptr);
::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_23 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr);
::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_24 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr);
::vl::presentation::controls::GuiControl* __vwsn_precompile_11 = static_cast<::vl::presentation::controls::GuiControl*>(nullptr);
::vl::presentation::compositions::GuiStackComposition* __vwsn_precompile_12 = static_cast<::vl::presentation::compositions::GuiStackComposition*>(nullptr);
::vl::presentation::compositions::GuiStackItemComposition* __vwsn_precompile_13 = static_cast<::vl::presentation::compositions::GuiStackItemComposition*>(nullptr);
::vl::presentation::controls::GuiButton* __vwsn_precompile_14 = static_cast<::vl::presentation::controls::GuiButton*>(nullptr);
::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_15 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr);
::vl::presentation::compositions::GuiStackItemComposition* __vwsn_precompile_16 = static_cast<::vl::presentation::compositions::GuiStackItemComposition*>(nullptr);
::vl::presentation::controls::GuiButton* __vwsn_precompile_17 = static_cast<::vl::presentation::controls::GuiButton*>(nullptr);
::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_18 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr);
::vl::presentation::compositions::GuiStackItemComposition* __vwsn_precompile_19 = static_cast<::vl::presentation::compositions::GuiStackItemComposition*>(nullptr);
::vl::presentation::controls::GuiButton* __vwsn_precompile_20 = static_cast<::vl::presentation::controls::GuiButton*>(nullptr);
::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_21 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr);
::vl::presentation::compositions::GuiStackItemComposition* __vwsn_precompile_22 = static_cast<::vl::presentation::compositions::GuiStackItemComposition*>(nullptr);
::vl::presentation::controls::GuiButton* __vwsn_precompile_23 = static_cast<::vl::presentation::controls::GuiButton*>(nullptr);
::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_24 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr);
::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_25 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr);
::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_26 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr);
::vl::presentation::controls::GuiScroll* __vwsn_precompile_27 = static_cast<::vl::presentation::controls::GuiScroll*>(nullptr);
::vl::presentation::compositions::GuiGraphicsComposition* __vwsn_precompile_26 = static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(nullptr);
::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_27 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr);
::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_28 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr);
::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_29 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr);
::vl::presentation::controls::GuiScroll* __vwsn_precompile_30 = static_cast<::vl::presentation::controls::GuiScroll*>(nullptr);
::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_31 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr);
::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_32 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr);
::vl::presentation::controls::GuiScroll* __vwsn_precompile_33 = static_cast<::vl::presentation::controls::GuiScroll*>(nullptr);
::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_34 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr);
void __vwsn_initialize_instance_(::demo::RepeatTabPage* __vwsn_this_);
public:
RepeatTabPageConstructor();
@@ -914,21 +917,24 @@ namespace demo
::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_7 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr);
::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_8 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr);
::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_9 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr);
::vl::presentation::compositions::GuiStackComposition* __vwsn_precompile_10 = static_cast<::vl::presentation::compositions::GuiStackComposition*>(nullptr);
::vl::presentation::compositions::GuiStackItemComposition* __vwsn_precompile_11 = static_cast<::vl::presentation::compositions::GuiStackItemComposition*>(nullptr);
::vl::presentation::controls::GuiButton* __vwsn_precompile_12 = static_cast<::vl::presentation::controls::GuiButton*>(nullptr);
::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_13 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr);
::vl::presentation::compositions::GuiStackItemComposition* __vwsn_precompile_14 = static_cast<::vl::presentation::compositions::GuiStackItemComposition*>(nullptr);
::vl::presentation::controls::GuiButton* __vwsn_precompile_15 = static_cast<::vl::presentation::controls::GuiButton*>(nullptr);
::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_16 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr);
::vl::presentation::compositions::GuiStackItemComposition* __vwsn_precompile_17 = static_cast<::vl::presentation::compositions::GuiStackItemComposition*>(nullptr);
::vl::presentation::controls::GuiButton* __vwsn_precompile_18 = static_cast<::vl::presentation::controls::GuiButton*>(nullptr);
::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_19 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr);
::vl::presentation::compositions::GuiStackItemComposition* __vwsn_precompile_20 = static_cast<::vl::presentation::compositions::GuiStackItemComposition*>(nullptr);
::vl::presentation::controls::GuiButton* __vwsn_precompile_21 = static_cast<::vl::presentation::controls::GuiButton*>(nullptr);
::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_22 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr);
::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_23 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr);
::vl::presentation::controls::GuiControl* __vwsn_precompile_10 = static_cast<::vl::presentation::controls::GuiControl*>(nullptr);
::vl::presentation::compositions::GuiStackComposition* __vwsn_precompile_11 = static_cast<::vl::presentation::compositions::GuiStackComposition*>(nullptr);
::vl::presentation::compositions::GuiStackItemComposition* __vwsn_precompile_12 = static_cast<::vl::presentation::compositions::GuiStackItemComposition*>(nullptr);
::vl::presentation::controls::GuiButton* __vwsn_precompile_13 = static_cast<::vl::presentation::controls::GuiButton*>(nullptr);
::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_14 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr);
::vl::presentation::compositions::GuiStackItemComposition* __vwsn_precompile_15 = static_cast<::vl::presentation::compositions::GuiStackItemComposition*>(nullptr);
::vl::presentation::controls::GuiButton* __vwsn_precompile_16 = static_cast<::vl::presentation::controls::GuiButton*>(nullptr);
::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_17 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr);
::vl::presentation::compositions::GuiStackItemComposition* __vwsn_precompile_18 = static_cast<::vl::presentation::compositions::GuiStackItemComposition*>(nullptr);
::vl::presentation::controls::GuiButton* __vwsn_precompile_19 = static_cast<::vl::presentation::controls::GuiButton*>(nullptr);
::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_20 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr);
::vl::presentation::compositions::GuiStackItemComposition* __vwsn_precompile_21 = static_cast<::vl::presentation::compositions::GuiStackItemComposition*>(nullptr);
::vl::presentation::controls::GuiButton* __vwsn_precompile_22 = static_cast<::vl::presentation::controls::GuiButton*>(nullptr);
::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_23 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr);
::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_24 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr);
::vl::presentation::compositions::GuiGraphicsComposition* __vwsn_precompile_25 = static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(nullptr);
::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_26 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr);
::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_27 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr);
void __vwsn_initialize_instance_(::demo::TextListTabPage* __vwsn_this_);
public:
TextListTabPageConstructor();
@@ -602,6 +602,9 @@ namespace vl
CLASS_MEMBER_FIELD(__vwsn_precompile_3)
CLASS_MEMBER_FIELD(__vwsn_precompile_30)
CLASS_MEMBER_FIELD(__vwsn_precompile_31)
CLASS_MEMBER_FIELD(__vwsn_precompile_32)
CLASS_MEMBER_FIELD(__vwsn_precompile_33)
CLASS_MEMBER_FIELD(__vwsn_precompile_34)
CLASS_MEMBER_FIELD(__vwsn_precompile_4)
CLASS_MEMBER_FIELD(__vwsn_precompile_5)
CLASS_MEMBER_FIELD(__vwsn_precompile_6)
@@ -694,6 +697,9 @@ namespace vl
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_3)
CLASS_MEMBER_FIELD(__vwsn_precompile_4)
CLASS_MEMBER_FIELD(__vwsn_precompile_5)
@@ -63,102 +63,106 @@
</Cell>
<Cell Site="row:1 column:1">
<Stack Direction="Vertical" Padding="5" AlignmentToParent="left:0 top:0 right:0 bottom:0" MinSizeLimitation="LimitToElementAndChildren">
<StackItem>
<Button Alt="A" Text="Add 10 items">
<att.BoundsComposition-set AlignmentToParent="left:0 top:0 right:0 bottom:0"/>
<ev.Clicked-eval>
<![CDATA[
{
for (i in range [0, 9])
<GroupBox Text="Operations">
<att.BoundsComposition-set AlignmentToParent="left:0 top:0 right:0 bottom:-1"/>
<att.ContainerComposition-set InternalMargin="left:5 top:0 right:5 bottom:5"/>
<Stack Direction="Vertical" Padding="5" AlignmentToParent="left:0 top:0 right:0 bottom:0" MinSizeLimitation="LimitToElementAndChildren">
<StackItem>
<Button Alt="A" Text="Add 10 items">
<att.BoundsComposition-set AlignmentToParent="left:0 top:0 right:0 bottom:0"/>
<ev.Clicked-eval>
<![CDATA[
{
var textItem = new TextItem^(cast string (self.counter + i));
textList.Items.Add(textItem);
}
for (i in range [0, 9])
{
var textItem = new demo::MyTextItem^();
textItem.Name = cast string (self.counter + i);
self.itemsToBind.Add(textItem);
}
self.counter = self.counter + 10;
}
]]>
</ev.Clicked-eval>
</Button>
</StackItem>
<StackItem>
<Button Alt="O" Text="Remove odd items">
<att.BoundsComposition-set AlignmentToParent="left:0 top:0 right:0 bottom:0"/>
<ev.Clicked-eval>
<![CDATA[
{
{
var i = 0;
while (i < textList.Items.Count)
for (i in range [0, 9])
{
textList.Items.RemoveAt(i);
i = i + 1;
var textItem = new TextItem^(cast string (self.counter + i));
textList.Items.Add(textItem);
}
for (i in range [0, 9])
{
var textItem = new demo::MyTextItem^();
textItem.Name = cast string (self.counter + i);
self.itemsToBind.Add(textItem);
}
self.counter = self.counter + 10;
}
]]>
</ev.Clicked-eval>
</Button>
</StackItem>
<StackItem>
<Button Alt="O" Text="Remove odd items">
<att.BoundsComposition-set AlignmentToParent="left:0 top:0 right:0 bottom:0"/>
<ev.Clicked-eval>
<![CDATA[
{
{
var i = 0;
while (i < textList.Items.Count)
{
textList.Items.RemoveAt(i);
i = i + 1;
}
}
{
var i = 0;
while (i < self.itemsToBind.Count)
{
self.itemsToBind.RemoveAt(i);
i = i + 1;
}
}
}
]]>
</ev.Clicked-eval>
</Button>
</StackItem>
<StackItem>
<Button Alt="E" Text="Remove even items">
<att.BoundsComposition-set AlignmentToParent="left:0 top:0 right:0 bottom:0"/>
<ev.Clicked-eval>
<![CDATA[
{
{
var i = 1;
while (i < textList.Items.Count)
{
textList.Items.RemoveAt(i);
i = i + 1;
}
}
{
var i = 0;
while (i < self.itemsToBind.Count)
{
self.itemsToBind.RemoveAt(i);
i = i + 1;
var i = 1;
while (i < self.itemsToBind.Count)
{
self.itemsToBind.RemoveAt(i);
i = i + 1;
}
}
}
}
]]>
</ev.Clicked-eval>
</Button>
</StackItem>
<StackItem>
<Button Alt="E" Text="Remove even items">
<att.BoundsComposition-set AlignmentToParent="left:0 top:0 right:0 bottom:0"/>
<ev.Clicked-eval>
<![CDATA[
{
]]>
</ev.Clicked-eval>
</Button>
</StackItem>
<StackItem>
<Button Alt="C" Text="Clear">
<att.BoundsComposition-set AlignmentToParent="left:0 top:0 right:0 bottom:0"/>
<ev.Clicked-eval>
<![CDATA[
{
var i = 1;
while (i < textList.Items.Count)
{
textList.Items.RemoveAt(i);
i = i + 1;
}
textList.Items.Clear();
self.itemsToBind.Clear();
}
{
var i = 1;
while (i < self.itemsToBind.Count)
{
self.itemsToBind.RemoveAt(i);
i = i + 1;
}
}
}
]]>
</ev.Clicked-eval>
</Button>
</StackItem>
<StackItem>
<Button Alt="C" Text="Clear">
<att.BoundsComposition-set AlignmentToParent="left:0 top:0 right:0 bottom:0"/>
<ev.Clicked-eval>
<![CDATA[
{
textList.Items.Clear();
self.itemsToBind.Clear();
}
]]>
</ev.Clicked-eval>
</Button>
</StackItem>
</Stack>
]]>
</ev.Clicked-eval>
</Button>
</StackItem>
</Stack>
</GroupBox>
</Cell>
<Cell Site="row:1 column:2">
@@ -420,7 +420,7 @@
<![CDATA[
{
Contact.Update(textBoxName.Text, datePickerBirthday.Date, textBoxPhone.Text, textBoxAddress.Text);
self.Ready = false;
self.Ready = true;
self.Close();
}
]]>
@@ -404,6 +404,7 @@ Closures
void __vwsnf32_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const
{
::vl::__vwsn::This(__vwsnthis_0->Contact.Obj())->Update(::vl::__vwsn::This(__vwsnthis_0->textBoxName)->GetText(), ::vl::__vwsn::This(__vwsnthis_0->datePickerBirthday)->GetDate(), ::vl::__vwsn::This(__vwsnthis_0->textBoxPhone)->GetText(), ::vl::__vwsn::This(__vwsnthis_0->textBoxAddress)->GetText());
(::vl::__vwsn::This(__vwsnthis_0->self)->Ready = true);
::vl::__vwsn::This(__vwsnthis_0->self)->Close();
}
@@ -256,7 +256,7 @@ namespace demo
bool GetForEdit();
void SetForEdit(bool __vwsn_value_);
::vl::Event<void()> ForEditChanged;
bool Ready = true;
bool Ready = false;
::vl::Ptr<::demo::IContact> __vwsn_parameter_Contact = ::vl::Ptr<::demo::IContact>();
::vl::Ptr<::demo::IContact> GetContact();
NewContactWindow(::vl::Ptr<::demo::IContact> __vwsn_ctor_parameter_Contact);
Binary file not shown.