// END HERZUM SPRINT 4.3: TLAB-238 TLAB-243 // HERZUM SPRINT 4.2: TLAB-202 public override void SetDirectory (String newDirectoryLocation) { if(newDirectoryLocation != null) { DirectoryPath path = Property.GetValue(Instance) as DirectoryPath; if(path != null) { path.Absolute = newDirectoryLocation; } else { //construct new filepath path = new DirectoryPath(); //string experimentPath = TODO - get experiment path //string dataRoot = System.IO.Path.GetDirectoryName(experimentPath); string dataRoot = null; // HERZUM SPRINT 5.0: TLAB-238 TLAB-243 dataRoot = DataRoot; // END HERZUM SPRINT 5.0: TLAB-238 TLAB-243 path.Init(newDirectoryLocation, dataRoot); } Property.SetValue(Instance, path); } }
public object Convert(object[] values, Type targetType, object parameter, System.Globalization.CultureInfo culture) { if(values == null) throw new ArgumentNullException("values"); if (values.Length != 2) throw new ArgumentException("Invalid number of arguments"); if (targetType != typeof(FilePath) && targetType != typeof(DirectoryPath)) throw new NotSupportedException("This converter only converts to filepaths"); if (values[1] == System.Windows.DependencyProperty.UnsetValue) throw new ArgumentException("The experiment path has to be set. If filepath is null, the new FilePath object is initialized based on experiment path."); BasePath path = null; //if experiment path is set extract the experiment root, that is the data root for //FilePaths and DirectoryPaths if (targetType == typeof(FilePath)) { path = (FilePath)values[0]; //if experiment path has been set if (path == null) { string experimentPath = (string)values[1]; string dataRoot = System.IO.Path.GetDirectoryName(experimentPath); path = new FilePath(); path.Init("", dataRoot); } } else if (targetType == typeof(DirectoryPath)) { path = (DirectoryPath)values[0]; if (path == null) { string experimentPath = (string)values[1]; string dataRoot = System.IO.Path.GetDirectoryName(experimentPath); path = new DirectoryPath(); path.Init("", dataRoot); } } return path; }
public override void LaunchDialogue () { string newDirectoryLocation = SelectFileDialog(null); if(newDirectoryLocation != null) { DirectoryPath path = Property.GetValue(Instance) as DirectoryPath; if(path != null) { path.Absolute = newDirectoryLocation; } else { //construct new filepath path = new DirectoryPath(); //string experimentPath = TODO - get experiment path //string dataRoot = System.IO.Path.GetDirectoryName(experimentPath); string dataRoot = null; path.Init(newDirectoryLocation, dataRoot); } Property.SetValue(Instance, path); } }
public void TestSetup() { AppContext = new TraceLabTestApplication(TestContext); //set current location currentLocation = AppContext.BaseTestDirectory; //create config definition using createwrapper method of the ComponentMetadataDefinition class var configDef = ComponentScannerHelper_Accessor.CreateConfigWrapperDefinition(typeof(MockConfig)); testConfig = new ConfigWrapper(configDef); //set the values of MockConfig mockFileAbsolutePath = Path.Combine(currentLocation, mockFile); Stream file = File.Create(mockFileAbsolutePath); file.Close(); //close file so that it is not being used by this process anymore configFilePath = new FilePath(); configFilePath.Init(mockFileAbsolutePath, currentLocation); //the key matches property name in the MockConfig testConfig.ConfigValues["MockFile"].Value = configFilePath; mockDirAbsolutePath = Path.Combine(currentLocation, mockDir); Directory.CreateDirectory(mockDirAbsolutePath); Assert.IsTrue(Directory.Exists(mockDirAbsolutePath)); configDirPath = new DirectoryPath(); configDirPath.Init(mockDirAbsolutePath, currentLocation); //the key matches property name in the MockConfig testConfig.ConfigValues["MockDirectory"].Value = configDirPath; }
/// <summary> /// Opens a folder browser dialog when the button is clicked. /// </summary> /// <param name="sender">The sender.</param> /// <param name="e">The <see cref="System.Windows.RoutedEventArgs"/> instance containing the event data.</param> private void BrowseButtonClick(object sender, RoutedEventArgs e) { Ookii.Dialogs.Wpf.VistaFolderBrowserDialog folderDialog = new Ookii.Dialogs.Wpf.VistaFolderBrowserDialog(); folderDialog.ShowNewFolderButton = true; bool? success = folderDialog.ShowDialog(); if (success == true && Directory.Exists(folderDialog.SelectedPath)) { try { DirectoryPath path = new DirectoryPath(); path.Init(folderDialog.SelectedPath, Path.DataRoot); Path = path; } catch (System.ArgumentException ex) { NLog.LogManager.GetCurrentClassLogger().ErrorException("Failed to set reference to a file", ex); MessageBox.Show(ex.Message, "Failed to set reference to a file", MessageBoxButton.OK, MessageBoxImage.Exclamation); } } }