public PlateTypeManager_old() { InitializeComponent(); // Initialize data in the XamDataGrid - NOTE: A blank record is added FIRST, this is key to this approach for the XamDataGrid wgDB = new WaveguideDB(); bool success = wgDB.GetAllPlateTypes(); if (success) { PlateTypeContainer blank = new PlateTypeContainer(); source.Add(blank); // this is needed to hold the item to be added to the list, This is the "AddRecord" blank.Rows = 16; blank.Cols = 24; blank.Description = ""; blank.PlateTypeID = 0; blank.IsDefault = false; for (int i = 0; i < wgDB.m_plateTypeList.Count(); i++) { source.Add(wgDB.m_plateTypeList[i]); } } xamDataGrid.DataSource = source; }
private void DeleteProjectPB_Click(object sender, RoutedEventArgs e) { DataRecord record = (DataRecord)projectXamDataGrid.ActiveRecord; if (record == null) { return; } if (record != null) { ProjectSimple project = (ProjectSimple)record.DataItem; string MsgStr = "Are you sure that you want to DELETE Project: " + project.Description + "?"; MessageBoxResult result = MessageBox.Show(MsgStr, "Delete Confirmation", MessageBoxButton.YesNo, MessageBoxImage.Question, MessageBoxResult.No); if (result == MessageBoxResult.Yes) { WaveguideDB wgDB = new WaveguideDB(); bool success = wgDB.RemoveProjectFromUserProjectTable(project.ProjectID); if (success) { success = wgDB.DeleteProject(project.ProjectID); if (success) { ProjectVM.Refresh(); } } } } }
public void LoadFilters() { EmissionsFilterList = new ObservableCollection <FilterContainer>(); ExcitationFilterList = new ObservableCollection <FilterContainer>(); WaveguideDB wgDB = new WaveguideDB(); bool success = wgDB.GetAllFilters(); if (success) { foreach (FilterContainer filter in wgDB.m_filterList) { if (filter.FilterChanger == (int)FilterChangerEnum.Emission) { EmissionsFilterList.Add(filter); } else if (filter.FilterChanger == (int)FilterChangerEnum.Excitation) { ExcitationFilterList.Add(filter); } } } LoadSignalTypes(); }
private void DeletePB_Click(object sender, RoutedEventArgs e) { DataRecord record = (DataRecord)filterXamDataGrid.ActiveRecord; if (record == null) { return; } if (record != null) { FilterContainer filter = (FilterContainer)record.DataItem; string MsgStr = "Are you sure that you want to DELETE Filter: " + ((FilterChangerEnum)filter.FilterChanger).ToString() + ":" + ((FilterPositionEnum)filter.PositionNumber).ToString() + " " + filter.Description + "?"; MessageBoxResult result = MessageBox.Show(MsgStr, "Delete Confirmation", MessageBoxButton.YesNo, MessageBoxImage.Question, MessageBoxResult.No); if (result == MessageBoxResult.Yes) { WaveguideDB wgDB = new WaveguideDB(); bool success = wgDB.DeleteFilter(filter.FilterID); if (success) { FilterVM.Refresh(); } } } }
public EditProjectVM(int projectID) { ProjectID = projectID; WaveguideDB wgDB = new WaveguideDB(); bool success; ProjectContainer pc; if (projectID != 0) { success = wgDB.GetProject(ProjectID, out pc); } else { pc = new ProjectContainer(); pc.Description = ""; pc.ProjectID = 0; pc.Archived = false; pc.TimeStamp = DateTime.Now; success = true; } if (success) { ProjectDescription = pc.Description; Archived = pc.Archived; TimeStamp = pc.TimeStamp; ProjectID = pc.ProjectID; } Users = new BindingList <UserItem>(); }
public UserViewModel() { wgDB = new WaveguideDB(); _users = new BindingList <UserSimple>(); Refresh(); }
public void Refresh() { WaveguideDB wgDB = new WaveguideDB(); bool success = wgDB.GetAllUsers(); Users.Clear(); if (success) { for (int i = 0; i < wgDB.m_userList.Count(); i++) { UserItem uitem = new UserItem(); uitem.UserID = wgDB.m_userList[i].UserID; uitem.Fullname = wgDB.m_userList[i].Lastname + ", " + wgDB.m_userList[i].Firstname; uitem.AssignedToProject = false; bool IsAssigned = new bool(); IsAssigned = false; success = wgDB.IsUserAssignedToProject(wgDB.m_userList[i].UserID, ProjectID, ref IsAssigned); if (success) { uitem.AssignedToProject = IsAssigned; } Users.Add(uitem); } } }
public ReportDialog(ProjectContainer project, ExperimentContainer experiment, ObservableCollection <ExperimentIndicatorContainer> expIndicatorList) { m_project = project; m_experiment = experiment; m_expIndicatorList = expIndicatorList; VM = new ViewModel_ReportDialog(); m_wgDB = new WaveguideDB(); m_reportWriter = new ReportWriter(m_project, m_experiment); InitializeComponent(); this.DataContext = VM; VM.Directory = GlobalVars.DefaultReportFileDirectory; VM.Filename = m_reportWriter.GetDefaultFilename(); WaveGuideRB.IsChecked = true; VM.ReportFormat = REPORT_FILEFORMAT.WAVEGUIDE; SetAnalysisList(); bool ok = m_reportWriter.SuccessfullyInitialized(); if (!ok) { string errMsg = m_reportWriter.GetLastErrorString(); System.Windows.MessageBox.Show("Error initializing the Report Writer: " + errMsg, "Error", MessageBoxButton.OK, MessageBoxImage.Error); } }
private void DeleteUserPB_Click(object sender, RoutedEventArgs e) { DataRecord record = (DataRecord)userXamDataGrid.ActiveRecord; if (record == null) { return; } if (record != null) { UserSimple user = (UserSimple)record.DataItem; string MsgStr = "Are you sure that you want to DELETE User: "******" " + user.Lastname + "?"; MessageBoxResult result = MessageBox.Show(MsgStr, "Delete Confirmation", MessageBoxButton.YesNo, MessageBoxImage.Question, MessageBoxResult.No); if (result == MessageBoxResult.Yes) { WaveguideDB wgDB = new WaveguideDB(); bool success = wgDB.RemoveUserFromUserProjectTable(user.UserID); if (success) { success = wgDB.DeleteUser(user.UserID); if (success) { UserVM.Refresh(); } } } } }
public IndicatorSettingsEditor(ExperimentIndicatorContainer indicator) { InitializeComponent(); if (indicator == null) { return; } m_indicator = indicator; wgDB = new WaveguideDB(); m_PlotLimits = new PlotLimit(); m_PlotLimits.m_xmax = 100; m_PlotLimits.m_ymax = 1023; m_image = null; m_imageHistogram = new ObservableCollection <HistogramBar>(); Init(); this.DataContext = m_indicator; Test_Image_Load(); }
public ColorModelEditor() { InitializeComponent(); wgDB = new WaveguideDB(); m_isDragging = false; m_PlotLimits = new PlotLimit(); m_PlotLimits.m_xmax = 100; m_PlotLimits.m_ymax = 1023; m_image = null; m_imageHistogram = new ObservableCollection <HistogramBar>(); ControlChart.MouseLeftButtonDown += ControlChart_MouseLeftButtonDown; ControlChart.MouseLeftButtonUp += ControlChart_MouseLeftButtonUp; ControlChart.MouseMove += ControlChart_MouseMove; ControlChart.MouseLeave += ControlChart_MouseLeave; ControlChart_Xaxis.DataContext = m_PlotLimits; ControlChart_Yaxis.DataContext = m_PlotLimits; InitDefaultColorModel(); }
void SetPlateTypeIsDefault(PlateTypeItem pti, bool isDefault) { bool success; if (wgDB == null) { wgDB = new WaveguideDB(); } if (isDefault) // setting isDefault to true, need to set any other PlateTypeItem.PlateType.IsDefault that is true to false, so // that there's only on of them set to default { foreach (PlateTypeItem ptItem in VM.PlateTypeList) { if (ptItem.PlateType.IsDefault) { ptItem.PlateType.IsDefault = false; success = wgDB.UpdatePlateType(ptItem.PlateType); } } } // setting isDefault to false, do just have to update the PlateType pti.PlateType.IsDefault = isDefault; success = wgDB.UpdatePlateType(pti.PlateType); if (!success) { MessageBox.Show("Failed to Update PlateType", wgDB.GetLastErrorMsg(), MessageBoxButton.OK, MessageBoxImage.Error); } }
private void OkPB_Click(object sender, RoutedEventArgs e) { MaskContainer mc = new MaskContainer(); mc.MaskID = m_mask.Mask.MaskID; mc.Angle = m_mask.Mask.Angle; mc.Cols = m_mask.Mask.Cols; mc.Description = m_mask.Mask.Description; mc.IsDefault = m_mask.Mask.IsDefault; mc.PlateTypeID = m_mask.Mask.PlateTypeID; mc.ReferenceImageID = m_mask.Mask.ReferenceImageID; mc.Rows = m_mask.Mask.Rows; mc.Shape = m_mask.Mask.Shape; mc.XOffset = m_mask.Mask.XOffset; mc.XSize = m_mask.Mask.XSize; mc.XStep = m_mask.Mask.XStep; mc.YOffset = m_mask.Mask.YOffset; mc.YSize = m_mask.Mask.YSize; mc.YStep = m_mask.Mask.YStep; if (wgDB == null) { wgDB = new WaveguideDB(); } bool success = wgDB.UpdateMask(mc); if (!success) { MessageBox.Show(wgDB.GetLastErrorMsg(), "Database Error: Failed to Update Mask", MessageBoxButton.OK, MessageBoxImage.Error); } Close(); }
public ExperimentConfigurator() { VM = new ExperimentConfiguratorViewModel(); InitializeComponent(); wgDB = new WaveguideDB(); m_imager = null; this.DataContext = VM; PlateTypeContainer ptc; bool success = wgDB.GetDefaultPlateType(out ptc); if (success) { WellSelection.Init(ptc.Rows, ptc.Cols); VM.ExpParams.plateType = ptc; PlateTypeComboBox.SelectedItem = ptc; } else { WellSelection.Init(16, 24); VM.ExpParams.plateType = null; VM.ExpParams.mask = null; } WellSelection.NewWellSetSelected += WellSelection_NewWellSetSelected; }
public void SetupMaskFromContainer(MaskContainer cont) { _mask.MaskID = cont.MaskID; _mask.Rows = cont.Rows; _mask.Cols = cont.Cols; _mask.XOffset = cont.XOffset; _mask.YOffset = cont.YOffset; _mask.XSize = cont.XSize; _mask.YSize = cont.YSize; _mask.XStep = cont.XStep; _mask.YStep = cont.YStep; _mask.Angle = cont.Angle; _mask.Shape = cont.Shape; _mask.Description = cont.Description; _mask.PlateTypeID = cont.PlateTypeID; _mask.ReferenceImageID = cont.ReferenceImageID; _mask.IsDefault = cont.IsDefault; WaveguideDB wgDB = new WaveguideDB(); PlateTypeContainer ptc; bool success = wgDB.GetPlateType(Mask.PlateTypeID, out ptc); if (success) { PlateType = ptc; } else { PlateType = null; } }
void BrowseForBravoMethodFile(MethodItem method) { // Create OpenFileDialog OpenFileDialog dlg = new OpenFileDialog(); // Set filter for file extension and default file extension dlg.DefaultExt = ".pro"; dlg.Filter = "Bravo Protocol Files (*.pro)|*.pro|ANY Files (*.*)|*.*"; dlg.InitialDirectory = GlobalVars.VWorksProtocolFileDirectory; // Display OpenFileDialog by calling ShowDialog method Nullable <bool> result = dlg.ShowDialog(); // if (result == true) { method.BravoMethodFile = dlg.FileName; if (wgDB == null) { wgDB = new WaveguideDB(); } MethodContainer mc = new MethodContainer(); mc.Description = method.Description; mc.BravoMethodFile = method.BravoMethodFile; mc.IsPublic = method.IsPublic; mc.MethodID = method.MethodID; mc.OwnerID = method.OwnerID; wgDB.UpdateMethod(mc); } }
public EditUserDialog(UserContainer user) { InitializeComponent(); wgDB = new WaveguideDB(); m_OK = false; m_addingNew = false; if (user == null) // if null is passed in for user, the intent is to create/insert a new User { m_addingNew = true; user = new UserContainer(); user.Firstname = ""; user.Lastname = ""; user.Username = ""; user.Password = ""; user.Role = GlobalVars.USER_ROLE_ENUM.USER; user.UserID = 0; } UserVM = new EditUserVM(user); MyPasswordBox.Password = user.Password; UserVM.Refresh(); this.DataContext = UserVM.User; RoleComboBox.DataContext = UserVM; ProjectsListBox.DataContext = UserVM; }
public void Refresh() { WaveguideDB wgDB = new WaveguideDB(); bool success = wgDB.GetAllProjects(ShowArchivedProjects); if (success) { Projects.Clear(); for (int i = 0; i < wgDB.m_projectList.Count(); i++) { ProjectItem pitem = new ProjectItem(); pitem.ProjectName = wgDB.m_projectList[i].Description; pitem.ProjectID = wgDB.m_projectList[i].ProjectID; pitem.Archived = wgDB.m_projectList[i].Archived; pitem.TimeStamp = wgDB.m_projectList[i].TimeStamp; bool IsAssigned = new bool(); IsAssigned = false; success = wgDB.IsUserAssignedToProject(User.UserID, pitem.ProjectID, ref IsAssigned); if (success) { pitem.AssignedToProject = IsAssigned; } Projects.Add(pitem); } } }
public ManageDatabaseDialog(WaveguideDB db) { InitializeComponent(); m_db = db; m_vm = new ManageDatabase_ViewModel(); DataContext = m_vm; }
public FilterViewModel() { wgDB = new WaveguideDB(); Filters = new BindingList <FilterContainer>(); Refresh(); }
public ObservableCollection <Camera.HSSpeed> hsspeeds; // this is set to either hsspeeds_EM or hsspeeds_Conv, depending whether EM Amp is used public CameraSettingsManager_ViewModel(Imager imager, WaveguideDB wgDB) { _imager = imager; _camera = _imager.m_camera; _wgDB = wgDB; _camera.GetCameraCapabilities(); _wgDB.GetAllCameraSettings(); CameraSettingsList = _wgDB.m_cameraSettingsList; if (CameraSettingsList.Count > 0) { CurrentCameraSettings = CameraSettingsList.ElementAt(0); } else { CurrentCameraSettings = new CameraSettingsContainer(); CurrentCameraSettings.CameraSettingID = 0; CurrentCameraSettings.VSSIndex = 0; CurrentCameraSettings.HSSIndex = 0; CurrentCameraSettings.VertClockAmpIndex = 0; CurrentCameraSettings.UseEMAmp = true; CurrentCameraSettings.UseFrameTransfer = true; CurrentCameraSettings.Description = ""; CurrentCameraSettings.IsDefault = true; CurrentCameraSettings.StartingExposure = 2; CurrentCameraSettings.ExposureLimit = 1000; CurrentCameraSettings.HighPixelThresholdPercent = 80; CurrentCameraSettings.LowPixelThresholdPercent = 10; // 60 if !IncreasingSignal (i.e. a decreasing signal) CurrentCameraSettings.MinPercentPixelsAboveLowThreshold = 50; CurrentCameraSettings.MaxPercentPixelsAboveHighThreshold = 10; CurrentCameraSettings.IncreasingSignal = true; CurrentCameraSettings.StartingBinning = 1; CurrentCameraSettings.EMGainLimit = 300; } // set camera capabilities vsspeeds = _camera.VSSpeeds; vertClockVoltageAmplitudes = _camera.VertClockVoltageAmplitudes; hsspeeds_EM = _camera.HSSpeeds_EM; hsspeeds_Conv = _camera.HSSpeeds_Conv; if (_currentCameraSettings.UseEMAmp) { hsspeeds = hsspeeds_EM; } else { hsspeeds = hsspeeds_Conv; } preAmpGains = _camera.PreAmpGains; readModes = _camera.ReadModes; acquisitionModes = _camera.AcquisitionModes; triggerModes = _camera.TriggerModes; eMGainModes = _camera.EMGainModes; adChannelOptions = _camera.ADChannelOptions; binningOptions = _camera.BinningOptions; }
private void SavePB_Click(object sender, RoutedEventArgs e) { WaveguideDB wgDB = new WaveguideDB(); bool success = wgDB.GetAllFilters(); if (success) { bool goodData = true; string errStr = "No Error"; // check to make sure that the FilterChanger/FilterPosition combination is not already occupied for (int i = 0; i < wgDB.m_filterList.Count(); i++) { if (FilterVM.Filter.FilterChanger == wgDB.m_filterList[i].FilterChanger && FilterVM.Filter.PositionNumber == wgDB.m_filterList[i].PositionNumber) { goodData = false; errStr = ((FilterPositionEnum)FilterVM.Filter.PositionNumber).ToString() + " already taken in " + ((FilterChangerEnum)FilterVM.Filter.FilterChanger).ToString() + " Filter Changer"; } } if (goodData) { if (m_addingNew) { // adding new filter, so call insert FilterContainer fc = FilterVM.Filter; success = wgDB.InsertFilter(ref fc); } else { // updating existing filter, so call update FilterContainer fc = FilterVM.Filter; success = wgDB.UpdateFilter(fc); } if (success) { m_OK = true; Close(); } else { errStr = wgDB.GetLastErrorMsg(); MessageBox.Show(errStr, "Database Error", MessageBoxButton.OK, MessageBoxImage.Error); } } if (!goodData) { MessageBox.Show(errStr, "Error in Filter Data", MessageBoxButton.OK, MessageBoxImage.Error); } } }
public ProjectViewModel() { wgDB = new WaveguideDB(); _projects = new BindingList <ProjectSimple>(); ShowArchivedProjects = false; Refresh(); }
public RunExperiment(Imager imager, TaskScheduler uiTask) { //if(vworks == null) //{ // MessageBox.Show("VWorks not running!", "VWorks Error", MessageBoxButton.OK, MessageBoxImage.Error); // return; //} m_vworks = new VWorks(); InitializeComponent(); m_wgDB = new WaveguideDB(); VM = new RunExperiment_ViewModel(); m_uiTask = uiTask; m_dispatcher = this.Dispatcher; this.DataContext = VM; m_timer = new DispatcherTimer(); m_timer.Tick += m_timer_Tick; m_timer.Interval = TimeSpan.FromMilliseconds(1000); VM.RunState = RunExperiment_ViewModel.RUN_STATE.WAITING_TO_RUN; m_imager = imager; if (m_imager == null) { m_imager = new Imager(); m_imager.Initialize(); } m_imager.m_cameraEvent += m_imager_cameraEvent; m_imager.m_temperatureEvent += m_imager_temperatureEvent; m_vworks.PostVWorksCommandEvent += m_vworks_PostVWorksCommandEvent; m_simulationRunning = false; m_indicatorIndex = 0; m_imageIndex = 0; LoadDefaultColorModel(); // catch close event caused by clicking X button this.Closing += new System.ComponentModel.CancelEventHandler(Window_Closing); }
public CameraSetup() { this.InitializeComponent(); m_ID = -1; m_lowerSliderValue = 0; m_upperSliderValue = (UInt16)GlobalVars.Instance.MaxPixelValue; m_wgDB = new WaveguideDB(); m_enableRangerSliderUpdate = false; }
public CameraSettingsManager(Imager _imager, WaveguideDB _wgDB) { m_imager = _imager; m_wgDB = _wgDB; vm = new CameraSettingsManager_ViewModel(m_imager, m_wgDB); this.DataContext = vm; InitializeComponent(); }
public PlateExplorer() { InitializeComponent(); // Initialize data in the XamDataGrid - NOTE: A blank record is added FIRST, this is key to this approach for the XamDataGrid m_wgDB = new WaveguideDB(); VM = new PlateExplorer_ViewModel(); DataContext = VM; VM.IncludeArchivedProjects = false; }
private void RefreshDBPB_Click(object sender, RoutedEventArgs e) { if (m_wgDB == null) { m_wgDB = new WaveguideDB(); } List <DatabaseTableInfo> tableSizes; bool success = m_wgDB.GetDatabaseInfo(out tableSizes); if (success) { DatabaseDataGrid.ItemsSource = tableSizes; } }
public void Refresh() { WaveguideDB wgDB = new WaveguideDB(); bool success = wgDB.GetAllFilters(); if (success) { Filters.Clear(); for (int i = 0; i < wgDB.m_filterList.Count(); i++) { Filters.Add(wgDB.m_filterList[i]); } } }
void EditMask(MaskContainer mask) { //MessageBox.Show("not yet implemented","Edit Mask: " + mask.Description, MessageBoxButton.OK, MessageBoxImage.Error); MaskManager mm = new MaskManager(); mm.Owner = Window.GetWindow(this); mm.m_mask.SetupMaskFromContainer(mask); if (mask.ReferenceImageID != 0) { mm.LoadReferenceImage(mask.ReferenceImageID); } mm.DrawMask(); mm.ShowDialog(); if (wgDB == null) { wgDB = new WaveguideDB(); } MaskContainer mc; bool success = wgDB.GetMask(mask.MaskID, out mc); if (success) { mask.Angle = mc.Angle; mask.Cols = mc.Cols; mask.Description = mc.Description; mask.IsDefault = mc.IsDefault; mask.MaskID = mc.MaskID; mask.PlateTypeID = mc.PlateTypeID; mask.ReferenceImageID = mc.ReferenceImageID; mask.Rows = mc.Rows; mask.Shape = mc.Shape; mask.XOffset = mc.XOffset; mask.XSize = mc.XSize; mask.XStep = mc.XStep; mask.YOffset = mc.YOffset; mask.YSize = mc.YSize; mask.YStep = mc.YStep; } }