aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/DBViewModels/DbTableViewModel.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/DBViewModels/DbTableViewModel.cs')
-rw-r--r--Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/DBViewModels/DbTableViewModel.cs214
1 files changed, 0 insertions, 214 deletions
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<T> : ViewModel where T : IObservableEntity
- {
- private T _editEntity;
- /// <summary>
- /// Gets or sets the edit entity.
- /// </summary>
- public T EditEntity
- {
- get { return _editEntity; }
- set { _editEntity = value; RaisePropertyChangedAuto(); }
- }
-
- private DialogOpenMode _dialogOpenMode;
- /// <summary>
- /// Gets or sets the dialog open mode.
- /// </summary>
- public DialogOpenMode DialogOpenMode
- {
- get { return _dialogOpenMode; }
- set { _dialogOpenMode = value; RaisePropertyChangedAuto(); }
- }
-
- private bool _isDialogOpen;
- /// <summary>
- /// Gets or sets a value indicating whether this instance is dialog open.
- /// </summary>
- public bool IsDialogOpen
- {
- get { return _isDialogOpen; }
- set { _isDialogOpen = value; RaisePropertyChangedAuto(); }
- }
-
- private ObservablesEntitiesAdapter _adapter;
- /// <summary>
- /// Gets or sets the DB adapter.
- /// </summary>
- public ObservablesEntitiesAdapter Adapter
- {
- get { return _adapter; }
- set { _adapter = value; RaisePropertyChangedAuto(); }
- }
-
- private T _selectedEntity;
- /// <summary>
- /// Gets or sets the selected entity.
- /// </summary>
- public T SelectedEntity
- {
- get { return _selectedEntity; }
- set { _selectedEntity = value; RaisePropertyChangedAuto(); }
- }
-
- private String _filter;
- /// <summary>
- /// Gets or sets the search filter.
- /// </summary>
- public String Filter
- {
- get { return _filter; }
- set { _filter = value; RaisePropertyChangedAuto(); OnFilterChanged(value); }
- }
-
- /// <summary>
- /// Gets or sets the dialog OK command.
- /// </summary>
- public RelayCommand DialogOKCommand { get; set; }
-
- /// <summary>
- /// Gets or sets the dialog cancel command.
- /// </summary>
- public RelayCommand DialogCancelCommand { get; set; }
-
- /// <summary>
- /// Gets or sets the add command.
- /// </summary>
- public RelayCommand AddCommand { get; set; }
-
- /// <summary>
- /// Gets or sets the edit command.
- /// </summary>
- public RelayCommand EditCommand { get; set; }
-
- /// <summary>
- /// Gets or sets the delete command.
- /// </summary>
- public RelayCommand DeleteCommand { get; set; }
-
- /// <summary>
- /// Initializes a new instance of the <see cref="DbTableViewModel"/> class.
- /// </summary>
- 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;
- }
-
- /// <summary>
- /// Called when delete command invoked.
- /// </summary>
- protected virtual void OnDelete()
- {
- SelectedEntity.Deleted = true;
- SelectedEntity.Save();
- }
-
- /// <summary>
- /// Called when edit command invoked.
- /// </summary>
- protected virtual void OnEdit()
- {
- DialogOpenMode = DialogOpenMode.Editing;
- EditEntity = GetEditableEntity(DialogOpenMode);
- DialogsManager.ShowDialog(DialogOpenMode, this);
- IsDialogOpen = true;
- }
-
- /// <summary>
- /// Called when add command invoked.
- /// </summary>
- protected virtual void OnAdd()
- {
- DialogOpenMode = DialogOpenMode.Adding;
- EditEntity = GetEditableEntity(DialogOpenMode);
- DialogsManager.ShowDialog(DialogOpenMode, this);
- IsDialogOpen = true;
- }
-
- /// <summary>
- /// Called when dialog closes with OK button.
- /// </summary>
- /// <param name="mode">The mode.</param>
- 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;
- }
-
- /// <summary>
- /// Called when [before entity save].
- /// </summary>
- /// <param name="mode">The mode.</param>
- /// <param name="entity">The entity.</param>
- protected virtual void OnBeforeEntitySave(DialogOpenMode mode,T entity)
- {
-
- }
-
- /// <summary>
- /// Called when dialog closes with cancel button.
- /// </summary>
- /// <param name="mode">The mode.</param>
- protected virtual void OnDialogCancelPressed(DialogOpenMode mode, T entity)
- {
- IsDialogOpen = false;
- }
-
- /// <summary>
- /// Gets the editable entity.
- /// </summary>
- /// <param name="mode">The mode.</param>
- /// <returns></returns>
- private T GetEditableEntity(DialogOpenMode mode)
- {
- if (mode == DialogOpenMode.Adding)
- {
- var newEntity = Activator.CreateInstance<T>();
- InitializeEntity(newEntity);
- return newEntity;
- }
- else
- {
- return SelectedEntity.ShallowClone();
- }
- }
-
- protected virtual void OnFilterChanged(String filter)
- {
-
- }
-
- protected virtual void InitializeEntity(T entity)
- {
-
- }
- }
-}