Пример #1
0
        public MainViewModel(Settings settings)
        {
            _saved = false;
            _queryTextBeforeLeaveResults = "";
            _queryText = "";
            _lastQuery = new Query();

            _settings = settings;

            _historyItemsStorage       = new FlowLauncherJsonStorage <History>();
            _userSelectedRecordStorage = new FlowLauncherJsonStorage <UserSelectedRecord>();
            _topMostRecordStorage      = new FlowLauncherJsonStorage <TopMostRecord>();
            _history            = _historyItemsStorage.Load();
            _userSelectedRecord = _userSelectedRecordStorage.Load();
            _topMostRecord      = _topMostRecordStorage.Load();

            ContextMenu      = new ResultsViewModel(_settings);
            Results          = new ResultsViewModel(_settings);
            History          = new ResultsViewModel(_settings);
            _selectedResults = Results;

            InitializeKeyCommands();
            RegisterViewUpdate();
            RegisterResultsUpdatedEvent();

            SetHotkey(_settings.Hotkey, OnHotkey);
            SetCustomPluginHotkey();
            SetOpenResultModifiers();
        }
Пример #2
0
        public MainViewModel(Settings settings)
        {
            _queryTextBeforeLeaveResults = "";
            _queryText = "";
            _lastQuery = new Query();

            _settings = settings;
            _settings.PropertyChanged += (_, args) =>
            {
                if (args.PropertyName == nameof(Settings.WindowSize))
                {
                    OnPropertyChanged(nameof(MainWindowWidth));
                }
            };

            _historyItemsStorage       = new FlowLauncherJsonStorage <History>();
            _userSelectedRecordStorage = new FlowLauncherJsonStorage <UserSelectedRecord>();
            _topMostRecordStorage      = new FlowLauncherJsonStorage <TopMostRecord>();
            _history            = _historyItemsStorage.Load();
            _userSelectedRecord = _userSelectedRecordStorage.Load();
            _topMostRecord      = _topMostRecordStorage.Load();

            ContextMenu      = new ResultsViewModel(_settings);
            Results          = new ResultsViewModel(_settings);
            History          = new ResultsViewModel(_settings);
            _selectedResults = Results;

            InitializeKeyCommands();
            RegisterViewUpdate();
            RegisterResultsUpdatedEvent();

            SetOpenResultModifiers();
        }
Пример #3
0
 public SettingWindowViewModel(Updater updater, IPortable portable)
 {
     _updater  = updater;
     _portable = portable;
     _storage  = new FlowLauncherJsonStorage <Settings>();
     Settings  = _storage.Load();
     Settings.PropertyChanged += (s, e) =>
     {
         if (e.PropertyName == nameof(Settings.ActivateTimes))
         {
             OnPropertyChanged(nameof(ActivatedTimes));
         }
     };
 }