mirror of
https://github.com/AtomUI/AtomUI.git
synced 2026-10-24 10:12:35 +08:00
Refactor Collapse
This commit is contained in:
@@ -188,11 +188,12 @@ internal class CollapseItemTheme : BaseControlTheme
|
||||
|
||||
{
|
||||
// ExpandIcon
|
||||
var expandIconStyle =
|
||||
var expandButtonStyle =
|
||||
new Style(selector => selector.Nesting().Template().Name(ExpandButtonPart));
|
||||
expandIconStyle.Add(IconButton.IconWidthProperty, SharedTokenKey.IconSizeSM);
|
||||
expandIconStyle.Add(IconButton.IconHeightProperty, SharedTokenKey.IconSizeSM);
|
||||
commonStyle.Add(expandIconStyle);
|
||||
expandButtonStyle.Add(IconButton.IconWidthProperty, SharedTokenKey.IconSizeSM);
|
||||
expandButtonStyle.Add(IconButton.IconHeightProperty, SharedTokenKey.IconSizeSM);
|
||||
expandButtonStyle.Add(IconButton.DisabledIconColorProperty, SharedTokenKey.ColorTextDisabled);
|
||||
commonStyle.Add(expandButtonStyle);
|
||||
}
|
||||
|
||||
// 动画相关
|
||||
@@ -205,13 +206,13 @@ internal class CollapseItemTheme : BaseControlTheme
|
||||
}));
|
||||
isMotionEnabledStyle.Add(decoratorStyle);
|
||||
|
||||
var expandIconStyle =
|
||||
var expandButtonStyle =
|
||||
new Style(selector => selector.Nesting().Template().Name(ExpandButtonPart));
|
||||
expandIconStyle.Add(IconButton.TransitionsProperty, new SetterValueFactory<Transitions>(() => new Transitions()
|
||||
expandButtonStyle.Add(IconButton.TransitionsProperty, new SetterValueFactory<Transitions>(() => new Transitions()
|
||||
{
|
||||
AnimationUtils.CreateTransition<TransformOperationsTransition>(Visual.RenderTransformProperty)
|
||||
}));
|
||||
isMotionEnabledStyle.Add(expandIconStyle);
|
||||
isMotionEnabledStyle.Add(expandButtonStyle);
|
||||
}
|
||||
commonStyle.Add(isMotionEnabledStyle);
|
||||
|
||||
@@ -307,9 +308,9 @@ internal class CollapseItemTheme : BaseControlTheme
|
||||
var iconTriggerHandleStyle =
|
||||
new Style(selector => selector.Nesting()
|
||||
.PropertyEquals(CollapseItem.TriggerTypeProperty, CollapseTriggerType.Icon));
|
||||
var expandIconStyle = new Style(selector => selector.Nesting().Template().Name(ExpandButtonPart));
|
||||
expandIconStyle.Add(InputElement.CursorProperty, new SetterValueFactory<Cursor>(() => new Cursor(StandardCursorType.Hand)));
|
||||
iconTriggerHandleStyle.Add(expandIconStyle);
|
||||
var expandButtonStyle = new Style(selector => selector.Nesting().Template().Name(ExpandButtonPart));
|
||||
expandButtonStyle.Add(InputElement.CursorProperty, new SetterValueFactory<Cursor>(() => new Cursor(StandardCursorType.Hand)));
|
||||
iconTriggerHandleStyle.Add(expandButtonStyle);
|
||||
Add(iconTriggerHandleStyle);
|
||||
}
|
||||
|
||||
|
||||
@@ -71,13 +71,6 @@ internal class ExpanderTheme : BaseControlTheme
|
||||
motionActor.SetCurrentValue(Visual.IsVisibleProperty, false);
|
||||
motionActor.Child = contentPresenter;
|
||||
|
||||
RegisterTokenResourceBindings(expander, () =>
|
||||
{
|
||||
expander.AddTokenBindingDisposable(TokenResourceBinder.CreateTokenBinding(contentPresenter,
|
||||
ContentPresenter.BorderBrushProperty,
|
||||
SharedTokenKey.ColorBorder));
|
||||
});
|
||||
|
||||
CreateTemplateParentBinding(contentPresenter, ContentPresenter.ContentProperty,
|
||||
ContentControl.ContentProperty);
|
||||
CreateTemplateParentBinding(contentPresenter, ContentPresenter.ContentTemplateProperty,
|
||||
@@ -123,18 +116,8 @@ internal class ExpanderTheme : BaseControlTheme
|
||||
{
|
||||
Name = ExpandButtonPart,
|
||||
VerticalAlignment = VerticalAlignment.Center,
|
||||
HorizontalAlignment = HorizontalAlignment.Left
|
||||
HorizontalAlignment = HorizontalAlignment.Left,
|
||||
};
|
||||
|
||||
RegisterTokenResourceBindings(expander, () =>
|
||||
{
|
||||
expander.AddTokenBindingDisposable(TokenResourceBinder.CreateTokenBinding(expandButton,
|
||||
IconButton.IconWidthProperty,
|
||||
SharedTokenKey.IconSize));
|
||||
expander.AddTokenBindingDisposable(TokenResourceBinder.CreateTokenBinding(expandButton,
|
||||
IconButton.IconHeightProperty,
|
||||
SharedTokenKey.IconSize));
|
||||
});
|
||||
|
||||
expandButton.RegisterInNameScope(scope);
|
||||
CreateTemplateParentBinding(expandButton, IconButton.IconProperty, Expander.ExpandIconProperty);
|
||||
@@ -227,11 +210,11 @@ internal class ExpanderTheme : BaseControlTheme
|
||||
commonStyle.Add(headerPresenter);
|
||||
|
||||
// ExpandIcon
|
||||
var expandIconStyle = new Style(selector =>
|
||||
selector.Nesting().Template().Name(ExpandButtonPart).Descendant().OfType<Icon>());
|
||||
expandIconStyle.Add(Layoutable.WidthProperty, SharedTokenKey.IconSizeSM);
|
||||
expandIconStyle.Add(Layoutable.HeightProperty, SharedTokenKey.IconSizeSM);
|
||||
commonStyle.Add(expandIconStyle);
|
||||
var expandButtonStyle = new Style(selector => selector.Nesting().Template().Name(ExpandButtonPart));
|
||||
expandButtonStyle.Add(IconButton.IconWidthProperty, SharedTokenKey.IconSizeSM);
|
||||
expandButtonStyle.Add(IconButton.IconHeightProperty, SharedTokenKey.IconSizeSM);
|
||||
expandButtonStyle.Add(IconButton.DisabledIconColorProperty, SharedTokenKey.ColorTextDisabled);
|
||||
commonStyle.Add(expandButtonStyle);
|
||||
|
||||
{
|
||||
// 打开关闭指示按钮的动画
|
||||
@@ -239,7 +222,7 @@ internal class ExpanderTheme : BaseControlTheme
|
||||
selector.Nesting().PropertyEquals(Expander.IsMotionEnabledProperty, true));
|
||||
var expandIconButtonStyle = new Style(selector => selector.Nesting().Template().Name(ExpandButtonPart));
|
||||
expandIconButtonStyle.Add(IconButton.TransitionsProperty, new SetterValueFactory<Transitions>(() =>
|
||||
new Transitions()
|
||||
new Transitions
|
||||
{
|
||||
AnimationUtils.CreateTransition<TransformOperationsTransition>(Visual.RenderTransformProperty)
|
||||
}));
|
||||
@@ -418,6 +401,11 @@ internal class ExpanderTheme : BaseControlTheme
|
||||
|
||||
private void BuildSizeTypeStyle()
|
||||
{
|
||||
{
|
||||
var contentPresenterStyle = new Style(selector => selector.Nesting().Template().Name(ContentPresenterPart));
|
||||
contentPresenterStyle.Add(ContentPresenter.BorderBrushProperty, SharedTokenKey.ColorBorder);
|
||||
Add(contentPresenterStyle);
|
||||
}
|
||||
var largeSizeStyle = new Style(selector =>
|
||||
selector.Nesting().PropertyEquals(Expander.SizeTypeProperty, SizeType.Large));
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user