aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/TEMP/Tango.Scripting/Tango.Scripting.IDE/Notifications/ProgressNotificationHandler.cs
blob: b364194008d5b93070b6a8fc9211afe4a01664e5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Tango.Scripting.IDE.Notifications
{
    public class ProgressNotificationHandler : IDisposable
    {
        private Action _disposeAction;

        public ProgressNotificationHandler(Action disposeAction)
        {
            _disposeAction = disposeAction;
        }

        public void Dispose()
        {
            _disposeAction?.Invoke();
        }
    }
}
class="p">; using Tango.BL.Entities; using Tango.Core.Commands; using Tango.Core.DI; using Tango.MachineStudio.Common; using Tango.MachineStudio.Common.StudioApplication; using Tango.SharedUI; namespace Tango.MachineStudio.DB.ViewModels { public class MainViewVM : StudioViewModel { private bool _isLoading; public bool IsLoading { get { return _isLoading; } set { _isLoading = value; RaisePropertyChangedAuto(); } } private bool _notLoaded; public bool NotLoaded { get { return _notLoaded; } set { _notLoaded = value; RaisePropertyChangedAuto(); } } public RelayCommand LoadCommand { get; set; } public MainViewVM() : base() { NotLoaded = true; LoadCommand = new RelayCommand(LoadAdapter,() => !IsLoading); } private async void LoadAdapter() { IsLoading = true; InvalidateRelayCommands(); await Task.Factory.StartNew(() => { ObservablesEntitiesAdapter.Instance.Initialize(); }); IsLoading = false; NotLoaded = false; } public override void OnApplicationReady() { } //public override void OnModuleRequest(params object[] args) //{ // if (args != null && args.Length > 0 && args[0] is IObservableEntity) // { // var arg = args[0]; // String vmName = arg.GetType().Name + "sViewVM"; // Type vmType = Assembly.GetAssembly(typeof(MainViewVM)).GetTypes().SingleOrDefault(x => x.Name == vmName); // if (vmType == null) // { // vmName = arg.GetType().BaseType.Name + "sViewVM"; // vmType = Assembly.GetAssembly(typeof(MainViewVM)).GetTypes().SingleOrDefault(x => x.Name == vmName); // } // if (vmType != null) // { // var vm = TangoIOC.Default.GetInstance(vmType); // vmType.GetProperty("SelectedEntity").SetValue(vm, arg); // vmType.GetMethod("OnEdit", BindingFlags.Instance | BindingFlags.NonPublic).Invoke(vm, new object[] { }); // } // } //} } }