/// <summary> /// Creates a new view model isntance with a blank template file, /// and adds it to the list of open view models. In addition, /// this will allow the CloseFileCommand to execute (as there /// is now guaranteed to be a file in the editor to close). /// </summary> private void CreateNewFile() { var newVm = new AssemblyFileViewModel(new DataModels.AssemblyFile()); m_OpenViewModels.Add(newVm); ActiveFileIndex = m_OpenViewModels.Count - 1; m_CloseFileCmd.CanExecute = true; }
private void AssembleFile(AssemblyCommandParams asmParams) { AssemblyFileViewModel assembledFile = GetViewModelByFilePath(asmParams.InputFileName); if (assembledFile.AssembleFile(m_Assembler, asmParams.OutputFileName)) { var fileAssembledMsg = new FileAssembledMessage(asmParams.OutputFileName); BroadcastMessage(fileAssembledMsg); } }
private void DisassembleAndImportFile(string fileName) { var newVm = new AssemblyFileViewModel(fileName, m_Disassembler); m_OpenViewModels.Add(newVm); ActiveFileIndex = m_OpenViewModels.Count - 1; var activeViewRequest = new ActiveViewRequestMessage(m_ViewId); BroadcastMessage(activeViewRequest); }
private void OpenFile(string fileName) { // see if we already have this file open. if (!m_OpenViewModels.Contains((vm) => vm.FilePath == fileName)) { DataModels.AssemblyFile newFile = AssemblyFileLoader.LoadFile(fileName); var newVm = new AssemblyFileViewModel(newFile); m_OpenViewModels.Add(newVm); ActiveFileIndex = m_OpenViewModels.Count - 1; } else { ActiveFileIndex = m_OpenViewModels.IndexOf(vm => vm.FileName == fileName); } var activeViewRequest = new ActiveViewRequestMessage(m_ViewId); BroadcastMessage(activeViewRequest); }
private void SaveFile(string fileName) { AssemblyFileViewModel targetVm = m_OpenViewModels[ActiveFileIndex]; targetVm.SaveFileAs(fileName); }