|
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using CBR.Core.Helpers;
namespace CBR.ViewModels
{
#region ----------------BASE CLASS----------------
public class ListSysObjectViewModel : ViewModelBase
{
public ListSysObjectViewModel(string fullPath, string name, DateTime access)
{
FullPath = fullPath;
Name = name;
LastModified = access;
}
/// <summary>
/// Display name
/// </summary>
public string Name
{
get;
set;
}
/// <summary>
/// Display type
/// </summary>
public SysElementType Type
{
get;
set;
}
/// <summary>
/// last modification date
/// </summary>
public DateTime LastModified
{
get;
set;
}
/// <summary>
/// Complete path to file sys object
/// </summary>
public string FullPath
{
get { return Data as string; }
set { Data = value; }
}
#region ----------------IsSelected----------------
private bool _isSelected;
/// <summary>
/// Gets/sets whether the Item
/// associated with this object is selected.
/// </summary>
public bool IsSelected
{
get { return _isSelected; }
set
{
if (value != _isSelected)
{
_isSelected = value;
this.RaisePropertyChanged("IsSelected");
Mediator.Instance.NotifyColleagues(ViewModelMessages.DeviceContentChanged, this.Data);
}
}
}
#endregion
#region ----------------IsHighlighted----------------
private bool _isHighlighted;
/// <summary>
/// Gets/sets whether the Item
/// associated with this object is selected.
/// </summary>
public bool IsHighlighted
{
get { return _isHighlighted; }
set
{
if (value != _isHighlighted)
{
_isHighlighted = value;
this.RaisePropertyChanged("IsHighlighted");
}
}
}
#endregion
}
#endregion
#region ----------------FILE----------------
public class ListSysFileViewModel : ListSysObjectViewModel
{
public ListSysFileViewModel(string fullPath, string name, DateTime access, long size)
: base(fullPath, name, access)
{
Type = SysElementType.File;
Size = size;
}
/// <summary>
/// file size
/// </summary>
public long Size
{
get;
set;
}
}
#endregion
#region ----------------FOLDER----------------
public class ListSysDirectoryViewModel : ListSysObjectViewModel
{
public ListSysDirectoryViewModel(string fullPath, string name, DateTime access)
: base(fullPath, name, access)
{
Type = SysElementType.Folder;
}
}
#endregion
#region ----------------DRIVE----------------
public class ListSysDriveViewModel : ListSysObjectViewModel
{
public ListSysDriveViewModel(string fullPath)
: base(fullPath, fullPath, DateTime.Now)
{
Type = SysElementType.Drive;
}
}
#endregion
}
|
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.
WPF and MVVM fan, I practice C # in all its forms from the beginning of the NET Framework without mentioning C ++ / MFC and other software packages such as databases, ASP, WCF, Web & Windows services, Application, and now Core and UWP.
In my wasted hours, I am guilty of having fathered C.B.R. and its cousins C.B.R. for WinRT and UWP on the Windows store.
But apart from that, I am a great handyman ... the house, a rocket stove to heat the jacuzzi and the last one: a wood oven for pizza, bread, and everything that goes inside
https://guillaumewaser.wordpress.com/
https://fouretcompagnie.wordpress.com/