using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Media.Imaging;
using Tango.Integration.Observables;
using Tango.MachineStudio.Common;
using Tango.MachineStudio.Synchronization.Views;
using Tango.SharedUI.Helpers;
namespace Tango.MachineStudio.Synchronization
{
///
/// Represents a Machine Studio module capable of comparing and synchronizing machines data against Twine remote database.
///
///
public class SynchronizationModule : IStudioModule
{
private bool _isLoaded;
private bool _isInitialized;
///
/// Gets the module name.
///
public string Name => "Synchronization";
///
/// Gets the module description.
///
public string Description => "Perform local to local or remote to local database synchronization.";
///
/// Gets the module cover image.
///
public BitmapSource Image => ResourceHelper.GetImageFromResources("Images/synchronization.jpg");
///
/// Gets the module entry point view.
///
public FrameworkElement MainView => new MainView();
///
/// Sets a value indicating whether this module is loaded.
///
public bool IsLoaded { get => _isLoaded; set => _isLoaded = value; }
///
/// Gets a value indicating whether this module has been initialized.
///
public bool IsInitialized => _isInitialized;
///
/// Gets the permission required to see and load this module.
///
public Permissions Permission => Permissions.RunSynchronizationModule;
///
/// Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
///
public void Dispose()
{
//Dispose...
}
///
/// Perform any operations required to initialize this module.
///
public void Initialize()
{
if (!_isInitialized)
{
//Initialize..
_isInitialized = true;
}
}
}
}