Ejemplo n.º 1
0
        public override async Task OnNavigatedToAsync(object parameter, NavigationMode mode, IDictionary <string, object> suspensionState)
        {
            if (suspensionState.Any())
            {
                //Value = suspensionState[nameof(Value)]?.ToString();
            }
            MessengerInstance.Register <NotificationMessage>(this, MainViewModel.SELECTED_NULL_TOKEN, (message) => SelectedIsNullHandler());
            await Task.CompletedTask;

            MainVM.PageHeader = Res.GetString("DP_PageHeader");

            if (FilesList != null)
            {
                FilesListLoaded?.Invoke(this, EventArgs.Empty);
            }
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Opens file picker and populates files list
        /// </summary>
        public async Task OpenDeployFiles()
        {
            // check if user has a worker folder
            if (StorageInterface.IsDeployFolderAvailable)
            {
                // get worker folder
                StorageFolder folder = await StorageInterface.GetDeployFolder();

                // get files from worker folder
                IReadOnlyList <StorageFile> files = await StorageInterface.GetDeployFiles();

                // handle each file
                if (files?.Count > 0)
                {
                    // new list
                    FilesList = new ObservableCollection <DeployFile>();

                    // get each file and add it to collection
                    foreach (StorageFile file in files)
                    {
                        // check for allowed extensions
                        if (Path.GetExtension(file.Path).ToLower() == ".sig")
                        {
                            // this type of file will be use latter, not now
                            continue;
                        }
                        else if (Path.GetExtension(file.Path).ToLower() != ".nmf" &&
                                 Path.GetExtension(file.Path).ToLower() != ".hex")
                        {
                            // file as different or no extension
                            // allowed files without extension are ER_FLASH, ER_RAM, ER_CONFIG, ER_DAT, ER_ResetVector
                            if (file.DisplayName != "ER_FLASH" && file.DisplayName != "ER_RAM" && file.DisplayName != "ER_CONFIG" &&
                                file.DisplayName != "ER_DAT" && file.DisplayName != "ER_ResetVector")
                            {
                                // file not allowed
                                continue;
                            }
                        }
                        // add new files
                        FilesList.Add(new DeployFile(file));
                    }
                    // any file
                    if (FilesList.Count == 0)
                    {
                        var dummy = await DialogSrv.ShowMessageAsync(Res.GetString("DP_NoValidFiles"));

                        return;
                    }
                    FilesListLoaded?.Invoke(this, EventArgs.Empty);
                }
                else
                {
                    var dummy = await DialogSrv.ShowMessageAsync(Res.GetString("DP_NoFiles"));
                }
            }
            else
            {
                // user haven't pick a folder yet, notify him
                List <Tuple <string, Action> > buttons = new List <Tuple <string, Action> >
                {
                    new Tuple <string, Action>(Res.GetString("DP_GoToSettings"), () => NavigationService.Navigate(Pages.SettingsPage, 0)),
                    new Tuple <string, Action>(Res.GetString("DP_Close"), null)
                };
                await DialogSrv.ShowMessageWithActionsAsync(Res.GetString("DP_NoWorkerFolder"), "", buttons, 0, 1);
            }
        }