public ShellViewModel(IWindowManager windowManager,
                              DbConnectionManager connectionManager,
                              FileManager fileManager,
                              IEventAggregator eventAggregator)
        {
            _windowManager     = windowManager;
            _connectionManager = connectionManager;
            _fileManager       = fileManager;
            eventAggregator.Subscribe(this);

            // Populate locations from database
            var savedLocations = _connectionManager.QueryLocations().OrderBy(x => x.Index);

            Locations = new ObservableCollection <LocationModel>(savedLocations.Select(x => new LocationModel(x)));
        }