From 2a51f05523c1397b77eca5e5188520919205638c Mon Sep 17 00:00:00 2001 From: Roy Ben-Shabat Date: Wed, 13 Dec 2017 15:19:55 +0200 Subject: Successfully separated Machine Studio to modules... --- .../ViewModels/DBViewModels/AddressesViewVM.cs | 14 -- .../ViewModels/DBViewModels/DbTableViewModel.cs | 214 --------------------- .../ViewModels/DBViewModels/DialogOpenMode.cs | 14 -- .../ViewModels/DBViewModels/MachinesViewVM.cs | 21 -- .../ViewModels/DBViewModels/MultiComboVM.cs | 44 ----- .../ViewModels/DBViewModels/OrganizationsViewVM.cs | 26 --- .../ViewModels/DBViewModels/UsersViewVM.cs | 75 -------- .../ViewModels/EntityViewModel.cs | 31 --- 8 files changed, 439 deletions(-) delete mode 100644 Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/DBViewModels/AddressesViewVM.cs delete mode 100644 Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/DBViewModels/DbTableViewModel.cs delete mode 100644 Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/DBViewModels/DialogOpenMode.cs delete mode 100644 Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/DBViewModels/MachinesViewVM.cs delete mode 100644 Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/DBViewModels/MultiComboVM.cs delete mode 100644 Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/DBViewModels/OrganizationsViewVM.cs delete mode 100644 Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/DBViewModels/UsersViewVM.cs delete mode 100644 Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/EntityViewModel.cs (limited to 'Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels') diff --git a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/DBViewModels/AddressesViewVM.cs b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/DBViewModels/AddressesViewVM.cs deleted file mode 100644 index 009de0139..000000000 --- a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/DBViewModels/AddressesViewVM.cs +++ /dev/null @@ -1,14 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using Tango.DAL.Observables; - -namespace Tango.MachineStudio.UI.ViewModels.DBViewModels -{ - public class AddressesViewVM : DbTableViewModel
- { - - } -} diff --git a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/DBViewModels/DbTableViewModel.cs b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/DBViewModels/DbTableViewModel.cs deleted file mode 100644 index 2e3a6a6e1..000000000 --- a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/DBViewModels/DbTableViewModel.cs +++ /dev/null @@ -1,214 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using Tango.Core.Commands; -using Tango.DAL.Observables; -using Tango.MachineStudio.UI.Managers; -using Tango.SharedUI; - -namespace Tango.MachineStudio.UI.ViewModels.DBViewModels -{ - public abstract class DbTableViewModel : ViewModel where T : IObservableEntity - { - private T _editEntity; - /// - /// Gets or sets the edit entity. - /// - public T EditEntity - { - get { return _editEntity; } - set { _editEntity = value; RaisePropertyChangedAuto(); } - } - - private DialogOpenMode _dialogOpenMode; - /// - /// Gets or sets the dialog open mode. - /// - public DialogOpenMode DialogOpenMode - { - get { return _dialogOpenMode; } - set { _dialogOpenMode = value; RaisePropertyChangedAuto(); } - } - - private bool _isDialogOpen; - /// - /// Gets or sets a value indicating whether this instance is dialog open. - /// - public bool IsDialogOpen - { - get { return _isDialogOpen; } - set { _isDialogOpen = value; RaisePropertyChangedAuto(); } - } - - private ObservablesEntitiesAdapter _adapter; - /// - /// Gets or sets the DB adapter. - /// - public ObservablesEntitiesAdapter Adapter - { - get { return _adapter; } - set { _adapter = value; RaisePropertyChangedAuto(); } - } - - private T _selectedEntity; - /// - /// Gets or sets the selected entity. - /// - public T SelectedEntity - { - get { return _selectedEntity; } - set { _selectedEntity = value; RaisePropertyChangedAuto(); } - } - - private String _filter; - /// - /// Gets or sets the search filter. - /// - public String Filter - { - get { return _filter; } - set { _filter = value; RaisePropertyChangedAuto(); OnFilterChanged(value); } - } - - /// - /// Gets or sets the dialog OK command. - /// - public RelayCommand DialogOKCommand { get; set; } - - /// - /// Gets or sets the dialog cancel command. - /// - public RelayCommand DialogCancelCommand { get; set; } - - /// - /// Gets or sets the add command. - /// - public RelayCommand AddCommand { get; set; } - - /// - /// Gets or sets the edit command. - /// - public RelayCommand EditCommand { get; set; } - - /// - /// Gets or sets the delete command. - /// - public RelayCommand DeleteCommand { get; set; } - - /// - /// Initializes a new instance of the class. - /// - public DbTableViewModel() : base() - { - Adapter = App.DbAdapter; - - AddCommand = new RelayCommand(OnAdd); - EditCommand = new RelayCommand(OnEdit); - DeleteCommand = new RelayCommand(OnDelete); - DialogOKCommand = new RelayCommand(() => OnDialogOKPressed(DialogOpenMode, EditEntity)); - DialogCancelCommand = new RelayCommand(() => OnDialogCancelPressed(DialogOpenMode, EditEntity)); - - IsDialogOpen = false; - } - - /// - /// Called when delete command invoked. - /// - protected virtual void OnDelete() - { - SelectedEntity.Deleted = true; - SelectedEntity.Save(); - } - - /// - /// Called when edit command invoked. - /// - protected virtual void OnEdit() - { - DialogOpenMode = DialogOpenMode.Editing; - EditEntity = GetEditableEntity(DialogOpenMode); - DialogsManager.ShowDialog(DialogOpenMode, this); - IsDialogOpen = true; - } - - /// - /// Called when add command invoked. - /// - protected virtual void OnAdd() - { - DialogOpenMode = DialogOpenMode.Adding; - EditEntity = GetEditableEntity(DialogOpenMode); - DialogsManager.ShowDialog(DialogOpenMode, this); - IsDialogOpen = true; - } - - /// - /// Called when dialog closes with OK button. - /// - /// The mode. - protected virtual void OnDialogOKPressed(DialogOpenMode mode, T entity) - { - if (mode == DialogOpenMode.Editing) - { - entity.ShallowCopyTo(SelectedEntity); - entity = SelectedEntity; - } - - OnBeforeEntitySave(mode, entity); - - entity.Save(); - IsDialogOpen = false; - SelectedEntity = EditEntity; - } - - /// - /// Called when [before entity save]. - /// - /// The mode. - /// The entity. - protected virtual void OnBeforeEntitySave(DialogOpenMode mode,T entity) - { - - } - - /// - /// Called when dialog closes with cancel button. - /// - /// The mode. - protected virtual void OnDialogCancelPressed(DialogOpenMode mode, T entity) - { - IsDialogOpen = false; - } - - /// - /// Gets the editable entity. - /// - /// The mode. - /// - private T GetEditableEntity(DialogOpenMode mode) - { - if (mode == DialogOpenMode.Adding) - { - var newEntity = Activator.CreateInstance(); - InitializeEntity(newEntity); - return newEntity; - } - else - { - return SelectedEntity.ShallowClone(); - } - } - - protected virtual void OnFilterChanged(String filter) - { - - } - - protected virtual void InitializeEntity(T entity) - { - - } - } -} diff --git a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/DBViewModels/DialogOpenMode.cs b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/DBViewModels/DialogOpenMode.cs deleted file mode 100644 index 9c6dbe807..000000000 --- a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/DBViewModels/DialogOpenMode.cs +++ /dev/null @@ -1,14 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace Tango.MachineStudio.UI.ViewModels.DBViewModels -{ - public enum DialogOpenMode - { - Editing, - Adding, - } -} diff --git a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/DBViewModels/MachinesViewVM.cs b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/DBViewModels/MachinesViewVM.cs deleted file mode 100644 index c008f1124..000000000 --- a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/DBViewModels/MachinesViewVM.cs +++ /dev/null @@ -1,21 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Collections.ObjectModel; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using Tango.Core.Commands; -using Tango.DAL.Observables; -using Tango.SharedUI; - -namespace Tango.MachineStudio.UI.ViewModels.DBViewModels -{ - public class MachinesViewVM : DbTableViewModel - { - protected override void InitializeEntity(Machine entity) - { - base.InitializeEntity(entity); - entity.ProductionDate = DateTime.Now; - } - } -} diff --git a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/DBViewModels/MultiComboVM.cs b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/DBViewModels/MultiComboVM.cs deleted file mode 100644 index 280eab923..000000000 --- a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/DBViewModels/MultiComboVM.cs +++ /dev/null @@ -1,44 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using Tango.SharedUI; - -namespace Tango.MachineStudio.UI.ViewModels.DBViewModels -{ - public class MultiComboVM : EntityViewModel - { - private Action _onSelectionChanged; - - public event EventHandler SelectionChanged; - - public MultiComboVM(T entity) : base(entity) - { - - } - - public MultiComboVM(T entity, Action onSelectionChanged) : this(entity) - { - _onSelectionChanged = onSelectionChanged; - } - - private bool _isSelected; - - public bool IsSelected - { - get { return _isSelected; } - set { _isSelected = value; RaisePropertyChangedAuto(); OnSelectionChanged(); } - } - - protected virtual void OnSelectionChanged() - { - if (_onSelectionChanged != null) - { - _onSelectionChanged(); - } - - SelectionChanged?.Invoke(this, new EventArgs()); - } - } -} diff --git a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/DBViewModels/OrganizationsViewVM.cs b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/DBViewModels/OrganizationsViewVM.cs deleted file mode 100644 index 6a2fd73df..000000000 --- a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/DBViewModels/OrganizationsViewVM.cs +++ /dev/null @@ -1,26 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using Tango.DAL.Observables; - -namespace Tango.MachineStudio.UI.ViewModels.DBViewModels -{ - public class OrganizationsViewVM : DbTableViewModel - { - public OrganizationsViewVM() : base() - { - - } - - protected override void OnFilterChanged(string filter) - { - Adapter.OrganizationsViewSource.Filter = (x) => - { - var org = x as Organization; - return org.Name.Contains(filter); - }; - } - } -} diff --git a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/DBViewModels/UsersViewVM.cs b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/DBViewModels/UsersViewVM.cs deleted file mode 100644 index 2bf34ce7a..000000000 --- a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/DBViewModels/UsersViewVM.cs +++ /dev/null @@ -1,75 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Collections.ObjectModel; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using Tango.DAL.Observables; - -namespace Tango.MachineStudio.UI.ViewModels.DBViewModels -{ - public class UsersViewVM : DbTableViewModel - { - private ObservableCollection> _selectedRoles; - public ObservableCollection> SelectedRoles - { - get { return _selectedRoles; } - set { _selectedRoles = value; RaisePropertyChangedAuto(); } - } - - public UsersViewVM() : base() - { - SelectedRoles = new ObservableCollection>(); - } - - protected override void OnEdit() - { - SelectedRoles = Adapter.Roles.Select(x => new MultiComboVM(x, () => RaisePropertyChanged(nameof(SelectedRoles)))).ToObservableCollection(); - - foreach (var role in SelectedRoles) - { - if (SelectedEntity.UsersRoles.ToList().Exists(x => x.Role == role.Entity && !x.Deleted)) - { - role.IsSelected = true; - } - } - - base.OnEdit(); - } - - protected override void OnAdd() - { - SelectedRoles = Adapter.Roles.Select(x => new MultiComboVM(x, () => RaisePropertyChanged(nameof(SelectedRoles)))).ToObservableCollection(); - - base.OnAdd(); - } - - protected override void OnBeforeEntitySave(DialogOpenMode mode, User user) - { - base.OnBeforeEntitySave(mode, user); - - foreach (var role in SelectedRoles) - { - var userRole = user.UsersRoles.SingleOrDefault(x => x.Role == role.Entity); - - if (userRole != null) - { - userRole.Deleted = !role.IsSelected; - } - else - { - if (role.IsSelected) - { - user.UsersRoles.Add(new UsersRole() - { - Role = role.Entity, - User = user, - RoleGuid = role.Entity.Guid, - UserGuid = user.Guid - }); - } - } - } - } - } -} diff --git a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/EntityViewModel.cs b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/EntityViewModel.cs deleted file mode 100644 index fff03a1db..000000000 --- a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/EntityViewModel.cs +++ /dev/null @@ -1,31 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using Tango.Core.Commands; -using Tango.SharedUI; - -namespace Tango.MachineStudio.UI.ViewModels -{ - public class EntityViewModel : ViewModel - { - private T _entity; - - public T Entity - { - get { return _entity; } - set { _entity = value; RaisePropertyChanged(nameof(Entity)); } - } - - public EntityViewModel() : base() - { - - } - - public EntityViewModel(T entity) : this() - { - Entity = entity; - } - } -} -- cgit v1.3.1