Browse Source

Rename Carousel & TabControls Transition property to PageTransitions to avoid confusion to the upcoming Transitions from Avalonia.Animations.

pull/1461/head
Jumar Macato 9 years ago
parent
commit
2556b50992
  1. 4
      samples/ControlCatalog/MainView.xaml
  2. 4
      samples/ControlCatalog/Pages/CarouselPage.xaml
  3. 6
      samples/ControlCatalog/Pages/CarouselPage.xaml.cs
  4. 2
      samples/ControlCatalog/SideBar.xaml
  5. 4
      samples/RenderTest/MainWindow.xaml
  6. 2
      samples/RenderTest/SideBar.xaml
  7. 12
      src/Avalonia.Controls/Carousel.cs
  8. 19
      src/Avalonia.Controls/Presenters/CarouselPresenter.cs
  9. 12
      src/Avalonia.Controls/TabControl.cs
  10. 2
      src/Avalonia.Themes.Default/Carousel.xaml
  11. 2
      src/Avalonia.Themes.Default/TabControl.xaml
  12. 2
      tests/Avalonia.Controls.UnitTests/CarouselTests.cs
  13. 2
      tests/Avalonia.Controls.UnitTests/TabControlTests.cs

4
samples/ControlCatalog/MainView.xaml

@ -2,9 +2,9 @@
xmlns:pages="clr-namespace:ControlCatalog.Pages;assembly=ControlCatalog" xmlns:pages="clr-namespace:ControlCatalog.Pages;assembly=ControlCatalog"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"> xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<TabControl Classes="sidebar" Name="Sidebar"> <TabControl Classes="sidebar" Name="Sidebar">
<TabControl.Transition> <TabControl.PageTransition>
<CrossFade Duration="0.25"/> <CrossFade Duration="0.25"/>
</TabControl.Transition> </TabControl.PageTransition>
<TabItem Header="Border"><pages:BorderPage/></TabItem> <TabItem Header="Border"><pages:BorderPage/></TabItem>
<TabItem Header="Button"><pages:ButtonPage/></TabItem> <TabItem Header="Button"><pages:ButtonPage/></TabItem>
<TabItem Header="ButtonSpinner"><pages:ButtonSpinnerPage/></TabItem> <TabItem Header="ButtonSpinner"><pages:ButtonSpinnerPage/></TabItem>

4
samples/ControlCatalog/Pages/CarouselPage.xaml

@ -8,9 +8,9 @@
<Path Data="M20,11V13H8L13.5,18.5L12.08,19.92L4.16,12L12.08,4.08L13.5,5.5L8,11H20Z" Fill="Black"/> <Path Data="M20,11V13H8L13.5,18.5L12.08,19.92L4.16,12L12.08,4.08L13.5,5.5L8,11H20Z" Fill="Black"/>
</Button> </Button>
<Carousel Name="carousel"> <Carousel Name="carousel">
<Carousel.Transition> <Carousel.PageTransition>
<PageSlide Duration="0.25" Orientation="Vertical" /> <PageSlide Duration="0.25" Orientation="Vertical" />
</Carousel.Transition> </Carousel.PageTransition>
<Image Source="resm:ControlCatalog.Assets.delicate-arch-896885_640.jpg"/> <Image Source="resm:ControlCatalog.Assets.delicate-arch-896885_640.jpg"/>
<Image Source="resm:ControlCatalog.Assets.hirsch-899118_640.jpg"/> <Image Source="resm:ControlCatalog.Assets.hirsch-899118_640.jpg"/>
<Image Source="resm:ControlCatalog.Assets.maple-leaf-888807_640.jpg"/> <Image Source="resm:ControlCatalog.Assets.maple-leaf-888807_640.jpg"/>

6
samples/ControlCatalog/Pages/CarouselPage.xaml.cs

@ -37,13 +37,13 @@ namespace ControlCatalog.Pages
switch (_transition.SelectedIndex) switch (_transition.SelectedIndex)
{ {
case 0: case 0:
_carousel.Transition = null; _carousel.PageTransition = null;
break; break;
case 1: case 1:
_carousel.Transition = new PageSlide(TimeSpan.FromSeconds(0.25), _orientation.SelectedIndex == 0 ? PageSlide.SlideAxis.Horizontal : PageSlide.SlideAxis.Vertical); _carousel.PageTransition = new PageSlide(TimeSpan.FromSeconds(0.25), _orientation.SelectedIndex == 0 ? PageSlide.SlideAxis.Horizontal : PageSlide.SlideAxis.Vertical);
break; break;
case 2: case 2:
_carousel.Transition = new CrossFade(TimeSpan.FromSeconds(0.25)); _carousel.PageTransition = new CrossFade(TimeSpan.FromSeconds(0.25));
break; break;
} }
} }

2
samples/ControlCatalog/SideBar.xaml

@ -20,7 +20,7 @@
MemberSelector="{x:Static TabControl.ContentSelector}" MemberSelector="{x:Static TabControl.ContentSelector}"
Items="{TemplateBinding Items}" Items="{TemplateBinding Items}"
SelectedIndex="{TemplateBinding Path=SelectedIndex}" SelectedIndex="{TemplateBinding Path=SelectedIndex}"
Transition="{TemplateBinding Transition}" PageTransition="{TemplateBinding PageTransition}"
Grid.Row="1"/> Grid.Row="1"/>
</DockPanel> </DockPanel>
</ControlTemplate> </ControlTemplate>

4
samples/RenderTest/MainWindow.xaml

@ -22,9 +22,9 @@
</Menu> </Menu>
<TabControl Classes="sidebar"> <TabControl Classes="sidebar">
<TabControl.Transition> <TabControl.PageTransition>
<CrossFade Duration="0.25"/> <CrossFade Duration="0.25"/>
</TabControl.Transition> </TabControl.PageTransition>
<TabItem Header="Animations"><pages:AnimationsPage/></TabItem> <TabItem Header="Animations"><pages:AnimationsPage/></TabItem>
<TabItem Header="Clipping"><pages:ClippingPage/></TabItem> <TabItem Header="Clipping"><pages:ClippingPage/></TabItem>
<TabItem Header="Drawing"><pages:DrawingPage/></TabItem> <TabItem Header="Drawing"><pages:DrawingPage/></TabItem>

2
samples/RenderTest/SideBar.xaml

@ -20,7 +20,7 @@
MemberSelector="{x:Static TabControl.ContentSelector}" MemberSelector="{x:Static TabControl.ContentSelector}"
Items="{TemplateBinding Items}" Items="{TemplateBinding Items}"
SelectedIndex="{TemplateBinding Path=SelectedIndex}" SelectedIndex="{TemplateBinding Path=SelectedIndex}"
Transition="{TemplateBinding Transition}" PageTransition="{TemplateBinding PageTransition}"
Grid.Row="1"/> Grid.Row="1"/>
</DockPanel> </DockPanel>
</ControlTemplate> </ControlTemplate>

12
src/Avalonia.Controls/Carousel.cs

@ -21,10 +21,10 @@ namespace Avalonia.Controls
AvaloniaProperty.Register<Carousel, bool>(nameof(IsVirtualized), true); AvaloniaProperty.Register<Carousel, bool>(nameof(IsVirtualized), true);
/// <summary> /// <summary>
/// Defines the <see cref="Transition"/> property. /// Defines the <see cref="PageTransition"/> property.
/// </summary> /// </summary>
public static readonly StyledProperty<IPageTransition> TransitionProperty = public static readonly StyledProperty<IPageTransition> PageTransitionProperty =
AvaloniaProperty.Register<Carousel, IPageTransition>(nameof(Transition)); AvaloniaProperty.Register<Carousel, IPageTransition>(nameof(PageTransition));
/// <summary> /// <summary>
/// The default value of <see cref="ItemsControl.ItemsPanelProperty"/> for /// The default value of <see cref="ItemsControl.ItemsPanelProperty"/> for
@ -57,10 +57,10 @@ namespace Avalonia.Controls
/// <summary> /// <summary>
/// Gets or sets the transition to use when moving between pages. /// Gets or sets the transition to use when moving between pages.
/// </summary> /// </summary>
public IPageTransition Transition public IPageTransition PageTransition
{ {
get { return GetValue(TransitionProperty); } get { return GetValue(PageTransitionProperty); }
set { SetValue(TransitionProperty, value); } set { SetValue(PageTransitionProperty, value); }
} }
/// <summary> /// <summary>

19
src/Avalonia.Controls/Presenters/CarouselPresenter.cs

@ -33,12 +33,13 @@ namespace Avalonia.Controls.Presenters
(o, v) => o.SelectedIndex = v); (o, v) => o.SelectedIndex = v);
/// <summary> /// <summary>
/// Defines the <see cref="Transition"/> property. /// Defines the <see cref="PageTransition"/> property.
/// </summary> /// </summary>
public static readonly StyledProperty<IPageTransition> TransitionProperty = public static readonly StyledProperty<IPageTransition> PageTransitionProperty =
Carousel.TransitionProperty.AddOwner<CarouselPresenter>(); Carousel.PageTransitionProperty.AddOwner<CarouselPresenter>();
private int _selectedIndex = -1; private int _selectedIndex = -1;
private Task _current;
private Task _currentTransition; private Task _currentTransition;
private int _queuedTransitionIndex = -1; private int _queuedTransitionIndex = -1;
@ -88,10 +89,10 @@ namespace Avalonia.Controls.Presenters
/// <summary> /// <summary>
/// Gets or sets a transition to use when switching pages. /// Gets or sets a transition to use when switching pages.
/// </summary> /// </summary>
public IPageTransition Transition public IPageTransition PageTransition
{ {
get { return GetValue(TransitionProperty); } get { return GetValue(PageTransitionProperty); }
set { SetValue(TransitionProperty, value); } set { SetValue(PageTransitionProperty, value); }
} }
/// <inheritdoc/> /// <inheritdoc/>
@ -121,7 +122,7 @@ namespace Avalonia.Controls.Presenters
} }
/// <summary> /// <summary>
/// Moves to the selected page, animating if a <see cref="Transition"/> is set. /// Moves to the selected page, animating if a <see cref="PageTransition"/> is set.
/// </summary> /// </summary>
/// <param name="fromIndex">The index of the old page.</param> /// <param name="fromIndex">The index of the old page.</param>
/// <param name="toIndex">The index of the new page.</param> /// <param name="toIndex">The index of the new page.</param>
@ -144,9 +145,9 @@ namespace Avalonia.Controls.Presenters
to = GetOrCreateContainer(toIndex); to = GetOrCreateContainer(toIndex);
} }
if (Transition != null && (from != null || to != null)) if (PageTransition != null && (from != null || to != null))
{ {
await Transition.Start((Visual)from, (Visual)to, fromIndex < toIndex); await PageTransition.Start((Visual)from, (Visual)to, fromIndex < toIndex);
} }
else if (to != null) else if (to != null)
{ {

12
src/Avalonia.Controls/TabControl.cs

@ -14,10 +14,10 @@ namespace Avalonia.Controls
public class TabControl : SelectingItemsControl public class TabControl : SelectingItemsControl
{ {
/// <summary> /// <summary>
/// Defines the <see cref="Transition"/> property. /// Defines the <see cref="PageTransition"/> property.
/// </summary> /// </summary>
public static readonly StyledProperty<IPageTransition> TransitionProperty = public static readonly StyledProperty<IPageTransition> PageTransitionProperty =
Avalonia.Controls.Carousel.TransitionProperty.AddOwner<TabControl>(); Avalonia.Controls.Carousel.PageTransitionProperty.AddOwner<TabControl>();
/// <summary> /// <summary>
/// Defines an <see cref="IMemberSelector"/> that selects the content of a <see cref="TabItem"/>. /// Defines an <see cref="IMemberSelector"/> that selects the content of a <see cref="TabItem"/>.
@ -68,10 +68,10 @@ namespace Avalonia.Controls
/// <summary> /// <summary>
/// Gets or sets the transition to use when switching tabs. /// Gets or sets the transition to use when switching tabs.
/// </summary> /// </summary>
public IPageTransition Transition public IPageTransition PageTransition
{ {
get { return GetValue(TransitionProperty); } get { return GetValue(PageTransitionProperty); }
set { SetValue(TransitionProperty, value); } set { SetValue(PageTransitionProperty, value); }
} }
/// <summary> /// <summary>

2
src/Avalonia.Themes.Default/Carousel.xaml

@ -10,7 +10,7 @@
Margin="{TemplateBinding Padding}" Margin="{TemplateBinding Padding}"
MemberSelector="{TemplateBinding MemberSelector}" MemberSelector="{TemplateBinding MemberSelector}"
SelectedIndex="{TemplateBinding SelectedIndex}" SelectedIndex="{TemplateBinding SelectedIndex}"
Transition="{TemplateBinding Transition}"/> PageTransition="{TemplateBinding PageTransition}"/>
</Border> </Border>
</ControlTemplate> </ControlTemplate>
</Setter> </Setter>

2
src/Avalonia.Themes.Default/TabControl.xaml

@ -14,7 +14,7 @@
MemberSelector="{x:Static TabControl.ContentSelector}" MemberSelector="{x:Static TabControl.ContentSelector}"
Items="{TemplateBinding Items}" Items="{TemplateBinding Items}"
SelectedIndex="{TemplateBinding Path=SelectedIndex}" SelectedIndex="{TemplateBinding Path=SelectedIndex}"
Transition="{TemplateBinding Transition}" PageTransition="{TemplateBinding PageTransition}"
Grid.Row="1"/> Grid.Row="1"/>
</DockPanel> </DockPanel>
</Border> </Border>

2
tests/Avalonia.Controls.UnitTests/CarouselTests.cs

@ -102,7 +102,7 @@ namespace Avalonia.Controls.UnitTests
[~CarouselPresenter.ItemsProperty] = control[~Carousel.ItemsProperty], [~CarouselPresenter.ItemsProperty] = control[~Carousel.ItemsProperty],
[~CarouselPresenter.ItemsPanelProperty] = control[~Carousel.ItemsPanelProperty], [~CarouselPresenter.ItemsPanelProperty] = control[~Carousel.ItemsPanelProperty],
[~CarouselPresenter.SelectedIndexProperty] = control[~Carousel.SelectedIndexProperty], [~CarouselPresenter.SelectedIndexProperty] = control[~Carousel.SelectedIndexProperty],
[~CarouselPresenter.TransitionProperty] = control[~Carousel.TransitionProperty], [~CarouselPresenter.PageTransitionProperty] = control[~Carousel.PageTransitionProperty],
}; };
} }
} }

2
tests/Avalonia.Controls.UnitTests/TabControlTests.cs

@ -313,7 +313,7 @@ namespace Avalonia.Controls.UnitTests
[!CarouselPresenter.ItemsPanelProperty] = control[!ItemsControl.ItemsPanelProperty], [!CarouselPresenter.ItemsPanelProperty] = control[!ItemsControl.ItemsPanelProperty],
[!CarouselPresenter.MemberSelectorProperty] = control[!ItemsControl.MemberSelectorProperty], [!CarouselPresenter.MemberSelectorProperty] = control[!ItemsControl.MemberSelectorProperty],
[!CarouselPresenter.SelectedIndexProperty] = control[!SelectingItemsControl.SelectedIndexProperty], [!CarouselPresenter.SelectedIndexProperty] = control[!SelectingItemsControl.SelectedIndexProperty],
[~CarouselPresenter.TransitionProperty] = control[~Carousel.TransitionProperty], [~CarouselPresenter.PageTransitionProperty] = control[~Carousel.PageTransitionProperty],
}; };
} }

Loading…
Cancel
Save