This commit is contained in:
Zihan Chen
2021-06-18 18:43:56 -07:00
parent d17679fcff
commit 798b90fbda
40 changed files with 32 additions and 10 deletions
+1 -3
View File
@@ -1429,21 +1429,18 @@ namespace vl
#define CONTROL_CONSTRUCTOR_CONTROLT_TEMPLATE(CONTROL)\
CONTROL_CONSTRUCTOR_CONTROLT_TEMPLATE_INHERITANCE(CONTROL)\
CLASS_MEMBER_PROPERTY_READONLY_FAST(ControlTemplateObject)\
#define CONTROL_CONSTRUCTOR_CONTROLT_TEMPLATE_INHERITANCE_2(CONTROL, TYPE2, PARAM2)\
CLASS_MEMBER_CONSTRUCTOR(CONTROL*(ThemeName, TYPE2), {L"themeName" _ L ## #PARAM2 })\
#define CONTROL_CONSTRUCTOR_CONTROLT_TEMPLATE_2(CONTROL, TYPE2, PARAM2)\
CONTROL_CONSTRUCTOR_CONTROLT_TEMPLATE_INHERITANCE_2(CONTROL, TYPE2, PARAM2)\
CLASS_MEMBER_PROPERTY_READONLY_FAST(ControlTemplateObject)\
#define CONTROL_CONSTRUCTOR_CONTROLT_TEMPLATE_INHERITANCE_3(CONTROL, TYPE2, PARAM2, TYPE3, PARAM3)\
CLASS_MEMBER_CONSTRUCTOR(CONTROL*(ThemeName, TYPE2, TYPE3), {L"themeName" _ L ## #PARAM2 _ L ## #PARAM3})\
#define CONTROL_CONSTRUCTOR_CONTROLT_TEMPLATE_3(CONTROL, TYPE2, PARAM2, TYPE3, PARAM3)\
CONTROL_CONSTRUCTOR_CONTROLT_TEMPLATE_INHERITANCE_3(CONTROL, TYPE2, PARAM2, TYPE3, PARAM3)\
CLASS_MEMBER_PROPERTY_READONLY_FAST(ControlTemplateObject)\
#define INTERFACE_IDENTIFIER(INTERFACE)\
CLASS_MEMBER_STATIC_EXTERNALMETHOD(GetIdentifier, NO_PARAMETER, WString(*)(), vl::presentation::controls::QueryServiceHelper<::INTERFACE>::GetIdentifier)
@@ -2128,6 +2125,7 @@ Type Declaration (Class)
CLASS_MEMBER_GUIEVENT(ControlSignalTrigerred)
CLASS_MEMBER_PROPERTY_GUIEVENT_FAST(ControlThemeName)
CLASS_MEMBER_PROPERTY_GUIEVENT_FAST(ControlTemplate)
CLASS_MEMBER_PROPERTY_READONLY_FAST(ControlTemplateObject)
CLASS_MEMBER_PROPERTY_READONLY_FAST(BoundsComposition)
CLASS_MEMBER_PROPERTY_READONLY_FAST(ContainerComposition)
CLASS_MEMBER_PROPERTY_READONLY_FAST(FocusableComposition)
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -16,9 +16,16 @@
<Instance name="MainWindowResource">
<Instance ref.Class="sample::MainWindow">
<Window ref.Name="self" Text="control_basic_window" ClientSize="x:640 y:480">
<ref.Ctor><![CDATA[
{
var wct = cast (TabWindowTemplate*) self.ControlTemplateObject;
var tct = cast (TabWindowTabTemplate*) tab.ControlTemplateObject;
tct.SetTabHeaderContainer(wct.TabHeaderContainer);
}
]]></ref.Ctor>
<Window ref.Name="self" Text="Lorem Ipsum Reader" ClientSize="x:640 y:480">
<att.ControlTemplate>sample::TabWindowTemplate</att.ControlTemplate>
<Tab>
<Tab ref.Name="tab">
<att.ControlTemplate>sample::TabWindowTabTemplate</att.ControlTemplate>
<att.BoundsComposition-set AlignmentToParent="left:0 top:0 right:0 bottom:0"/>
<att.Pages>
@@ -1,6 +1,7 @@
<Instance ref.CodeBehind="false" ref.Class="sample::TabWindowTabTemplate">
<ref.Members>
<![CDATA[
@cpp:Private
func UpdateTabHeader() : void
{
for (flowItem in header.FlowItems)
@@ -17,6 +18,10 @@
}
}
}
func SetTabHeaderContainer(value : GuiGraphicsComposition*) : void
{
}
]]>
</ref.Members>
<RibbonTabTemplate ref.Name="self" ContainerComposition-ref="container" TabOrder="LeftToRight" MinSizeLimitation="LimitToElementAndChildren">
@@ -1,4 +1,11 @@
<Instance ref.Class="sample::TabWindowTemplate">
<ref.Members><![CDATA[
func GetTabHeaderContainer() : GuiGraphicsComposition*
{
return self.headerContainer;
}
prop TabHeaderContainer : GuiGraphicsComposition* {GetTabHeaderContainer}
]]></ref.Members>
<WindowTemplate ref.Name="self" ContainerComposition-ref="container" MinSizeLimitation="LimitToElementAndChildren">
<att.CustomFrameEnabled>true</att.CustomFrameEnabled>
<att.MaximizedBoxOption>AlwaysTrue</att.MaximizedBoxOption>
@@ -63,6 +70,7 @@
<CellOption>composeType:Percentage percentage:1.0</CellOption>
</att.Rows>
<att.Columns>
<CellOption>composeType:MinSize</CellOption>
<CellOption>composeType:MinSize</CellOption>
<CellOption>composeType:Percentage percentage:1.0</CellOption>
<CellOption>composeType:MinSize</CellOption>
@@ -70,17 +78,17 @@
<CellOption>composeType:MinSize</CellOption>
</att.Columns>
<Cell Site="row:0 column:2" AssociatedHitTestResult="ButtonMinimum">
<Cell Site="row:0 column:3" AssociatedHitTestResult="ButtonMinimum">
<Button AutoFocus="false" Text=" 0 " Font="fontFamily:'Webdings' size:16">
<att.BoundsComposition-set AlignmentToParent="left:1 top:1 right:1 bottom:1"/>
</Button>
</Cell>
<Cell Site="row:0 column:3" AssociatedHitTestResult="ButtonMaximum">
<Cell Site="row:0 column:4" AssociatedHitTestResult="ButtonMaximum">
<Button AutoFocus="false" Text-bind="self.Maximized ? ' 1 ' : ' 2 '" Font="fontFamily:'Webdings' size:16">
<att.BoundsComposition-set AlignmentToParent="left:1 top:1 right:1 bottom:1"/>
</Button>
</Cell>
<Cell Site="row:0 column:4" AssociatedHitTestResult="ButtonClose">
<Cell Site="row:0 column:5" AssociatedHitTestResult="ButtonClose">
<Button AutoFocus="false" Text=" r " Font="fontFamily:'Webdings' size:16">
<att.BoundsComposition-set AlignmentToParent="left:1 top:1 right:1 bottom:1"/>
</Button>
@@ -104,7 +112,7 @@
</Cell>
<Cell Site="row:0 column:1" AssociatedHitTestResult="Title">
<Bounds AlignmentToParent="left:5 top:5 right:5 bottom:5" MinSizeLimitation="LimitToElementAndChildren">
<SolidLabel Text-bind="self.Text" Ellipse="true" Font="fontFamily:'Segoe WP SemiLight' size:14 antialias:true">
<SolidLabel Text-bind="self.Text" Font="fontFamily:'Segoe WP SemiLight' size:14 antialias:true">
<att.Color-bind>
<![CDATA[
cast Color (
@@ -116,7 +124,11 @@
</SolidLabel>
</Bounds>
</Cell>
<Cell Site="row:1 column:0 columnSpan:5" AssociatedHitTestResult="Client">
<Cell Site="row:0 column:2" AssociatedHitTestResult="Title">
<Bounds ref.Name="headerContainer" AlignmentToParent="left:0 top:0 right:0 bottom:0" MinSizeLimitation="LimitToElementAndChildren"/>
</Cell>
<Cell Site="row:1 column:0 columnSpan:6" AssociatedHitTestResult="Client">
<Bounds ref.Name="container" AlignmentToParent="left:0 top:0 right:0 bottom:0" MinSizeLimitation="LimitToElementAndChildren"/>
</Cell>
</Table>
Binary file not shown.
Binary file not shown.