|
using System.ComponentModel.Composition;
using System.Windows;
using MediaAssistant.Constants;
using MediaAssistant.Controls.MovieList;
using MediaAssistant.Controls.MovieThumbnails;
using MediaAssistant.Controls.WaitScreen;
using MediaAssistant.Data;
using MefBasic;
using Microsoft.Practices.Composite.Regions;
namespace MediaAssistant.Controls.MovieResult
{
[Export]
public class MovieResultPresenter:APresenter<MovieResultView>
{
[ImportingConstructor]
public MovieResultPresenter(MovieResultView view) : base(view)
{
}
[Import]
private IRegionManager RegionManager { get; set; }
[Import]
private MovieListPresenter MovieListPresenter { get; set; }
[Import]
private MovieThumbnailsPresenter MovieThumbnailsPresenter { get; set; }
[Import]
private WaitScreenPresenter WaitScreen { get; set; }
[Import]
public LibraryDataSource DataSource
{
get { return (LibraryDataSource)GetValue(DataSourceProperty); }
set { SetValue(DataSourceProperty, value); }
}
public static readonly DependencyProperty DataSourceProperty =
DependencyProperty.Register("DataSource", typeof(LibraryDataSource), typeof(MovieResultPresenter), new UIPropertyMetadata(null));
public bool IsListView
{
get { return (bool)GetValue(IsListViewProperty); }
set { SetValue(IsListViewProperty, value); }
}
public static readonly DependencyProperty IsListViewProperty =
DependencyProperty.Register("IsListView", typeof(bool), typeof(MovieResultPresenter), new UIPropertyMetadata(true, OnPropertyChanged));
protected override void DoPropertyChanged(DependencyPropertyChangedEventArgs e)
{
switch (e.Property.Name)
{
case "IsListView":
WaitScreen.Show();
if(IsListView)
{
RegionManager.Regions[MediaAssistantRegionNames.MovieResultResion].Activate(MovieListPresenter.View);
}
else
{
RegionManager.Regions[MediaAssistantRegionNames.MovieResultResion].Activate(MovieThumbnailsPresenter.View);
}
WaitScreen.Hide();
break;
}
}
}
}
|
By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.
If a file you wish to view isn't highlighted, and is a text file (not binary), please
let us know and we'll add colourisation support for it.
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.