Пример #1
0
        private bool SaveSetting()
        {
            MWLQueryCriteriaItem testItem = _qcItem.Clone() as MWLQueryCriteriaItem;

            _fieldControler.SaveSetting(testItem);
            _tagControler.SaveSetting(testItem.DPath);

            foreach (MWLQueryCriteriaItem item in Program.ConfigMgt.Config.Rule.QueryCriteria.MappingList)
            {
                if (item == _qcItem ||
                    item.GWDataDBField.Table == GWDataDBTable.None)
                {
                    continue;
                }
                if (item.GWDataDBField.Table == testItem.GWDataDBField.Table &&
                    item.GWDataDBField.FieldName == testItem.GWDataDBField.FieldName)
                {
                    MessageBox.Show(this, "Element (" + item.DPath.GetTagName() +
                                    ") has been mapped to this GC Gateway field ("
                                    + item.GWDataDBField.GetFullFieldName() + "). \r\n"
                                    + "Pease change another GC Gateway field.", "Warning",
                                    MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    this.comboBoxField.Focus();
                    return(false);
                }
            }

            _fieldControler.SaveSetting(_qcItem);
            _tagControler.SaveSetting(_qcItem.DPath);
            return(true);
        }
Пример #2
0
        //private bool _isEdit;
        public FormQCItem(MWLQueryCriteriaItem item, XCollection <MWLQueryCriteriaItem> list)
        {
            InitializeComponent();
            InitializeCombox();

            _qcitem = item;
            _qcList = list;

            if (_qcitem == null)
            {
                _qcitem = new MWLQueryCriteriaItem();
                _qcitem.Translating.Type = TranslatingType.FixValue;
                _qcitem.Operator         = QueryCriteriaOperator.Equal;
                _qcitem.Type             = QueryCriteriaType.And;
                this.Text = "Add Query Criteria Item";
            }
            else
            {
                //_isEdit = true;
                this.Text = "Edit Query Criteria Item";
            }

            _fieldControler = new FieldControler(this.comboBoxTable, this.comboBoxField);
            _fieldControler.ValueChanged += new EventHandler(_fieldControler_ValueChanged);
        }
Пример #3
0
 private void LoadDefault()
 {
     Program.ConfigMgt.Config.Rule.QueryCriteria.MappingList.Clear();
     MWLQueryCriteriaItem[] qrlist = MWLQueryCriteriaItem.GetDefault();
     foreach (MWLQueryCriteriaItem qr in qrlist)
     {
         Program.ConfigMgt.Config.Rule.QueryCriteria.MappingList.Add(qr);
     }
     RefreshList();
     RefreshButton();
 }
Пример #4
0
 private void SelectQCItem(MWLQueryCriteriaItem item)
 {
     foreach (ListViewItem i in this.listViewCriteria.Items)
     {
         if (item == i.Tag as QueryCriteriaItem)
         {
             i.Selected = true;
             i.EnsureVisible();
             break;
         }
     }
 }
Пример #5
0
        private void buttonAddChild_Click(object sender, EventArgs e)
        {
            MWLQueryCriteriaItem item = listControler.AddChild <MWLQueryCriteriaItem>(this, Program.ConfigMgt.Config.Rule.QueryCriteria.MappingList);

            if (item == null)
            {
                return;
            }

            RefreshList();
            listControler.SelectItem(item);
            RefreshButton();
        }
Пример #6
0
        private void DeleteQC()
        {
            MWLQueryCriteriaItem item = GetSelectedQCitem();

            if (item == null)
            {
                return;
            }

            Program.ConfigMgt.Config.AdditionalQueryCriteria.Remove(item);

            RefreshQCList();
            RefreshQCButtons();
        }
Пример #7
0
        private void MoveDownQC()
        {
            MWLQueryCriteriaItem item = GetSelectedQCitem();
            int count = Program.ConfigMgt.Config.AdditionalQueryCriteria.Count;
            int index = Program.ConfigMgt.Config.AdditionalQueryCriteria.IndexOf(item);

            if (index >= 0 && index < count - 1)
            {
                Program.ConfigMgt.Config.AdditionalQueryCriteria.Remove(item);
                Program.ConfigMgt.Config.AdditionalQueryCriteria.Insert(index + 1, item);

                RefreshQCList();
                SelectQCItem(item);
            }
        }
Пример #8
0
        private void RefreshButton()
        {
            this.buttonClearSelection.Enabled =
                this.buttonSelectAll.Enabled  = listControler.GetItemCount() > 0;

            MWLQueryCriteriaItem item = listControler.GetSelectedItem() as MWLQueryCriteriaItem;

            //if (item == null ||
            //    item.DPath.VR == DVR.SQ ||
            //    item.DPath.VR == DVR.Unknown)
            //{
            //    this.buttonEdit.Enabled = false;
            //}
            //else
            //{
            //    if (item.DPath.GetTag() == DicomMappingHelper.Tags.ScheduledProcedureStepStartTime)
            //    {
            //        this.buttonEdit.Enabled = false;
            //    }
            //    else
            //    {
            //        this.buttonEdit.Enabled = true;
            //    }
            //}

            this.buttonAdd.Enabled = true;
            bool isValid = (item != null) && (item.DPath.Type == DPathType.Normal);

            this.buttonAddChild.Enabled = isValid && (item.DPath.VR == DVR.SQ);
            this.buttonDelete.Enabled   = buttonEdit2.Enabled = isValid;

            if (isValid)
            {
                if (item.DPath.GetTag() == DicomMappingHelper.Tags.ScheduledProcedureStepStartTime)
                {
                    this.buttonAdd.Enabled = this.buttonDelete.Enabled = this.buttonEdit2.Enabled = false;
                }
                else if (item.DPath.GetTag() == DicomMappingHelper.Tags.ScheduledProcedureStepStartDate)
                {
                    this.buttonEdit2.Enabled  = true;
                    this.buttonDelete.Enabled = false;
                }
                else if (item.DPath.GetTag() == DicomMappingHelper.Tags.ScheduledProcedureStepSequence)
                {
                    this.buttonEdit2.Enabled = this.buttonDelete.Enabled = false;
                }
            }
        }
Пример #9
0
        protected override void _listViewElement_ItemCheck(object sender, ItemCheckEventArgs e)
        {
            base._listViewElement_ItemCheck(sender, e);

            ListViewItem         item = this._listViewElement.Items[e.Index];
            MWLQueryCriteriaItem qr   = item.Tag as MWLQueryCriteriaItem;

            if (qr == null)
            {
                return;
            }

            if (qr.DPath.GetTag() == DicomMappingHelper.Tags.ScheduledProcedureStepStartTime)
            {
                e.NewValue = CheckState.Unchecked;
            }
        }
Пример #10
0
        public FormQCElement(MWLQueryCriteriaItem item)
        {
            InitializeComponent();

            _qcItem = item;

            _tagControler = new TagControler(false, this.groupBoxDicom,
                                             this.comboBoxVR, this.comboBoxTag, this.textBoxGroupNum, this.textBoxElementNum);
            _tagControler.OnValueChanged += new EventHandler(_tagControler_OnValueChanged);

            _fieldControler = new FieldControler(false, this.groupBoxGateway,
                                                 this.comboBoxTable, this.comboBoxField, this.checkBoxFixValue,
                                                 this.textBoxFixValue, this.checkBoxLUT, this.comboBoxLUT, false);
            _fieldControler.OnValueChanged += new EventHandler(_fieldControler_OnValueChanged);

            _tagControler.Enabled = false;
        }
Пример #11
0
        private void EditQC()
        {
            MWLQueryCriteriaItem item = GetSelectedQCitem();

            if (item == null)
            {
                return;
            }

            FormQCItem frm = new FormQCItem(item, Program.ConfigMgt.Config.AdditionalQueryCriteria);

            if (frm.ShowDialog(this) != DialogResult.OK)
            {
                return;
            }

            RefreshQCList();
            SelectQCItem(item);
        }
Пример #12
0
        public override void RefreshList(IDicomMappingItem[] itemlist)
        {
            base.RefreshList(itemlist);

            foreach (ListViewItem item in _listViewElement.Items)
            {
                MWLQueryCriteriaItem qr = item.Tag as MWLQueryCriteriaItem;
                if (qr == null)
                {
                    continue;
                }
                if (qr.DPath.GetTag() == DicomMappingHelper.Tags.ScheduledProcedureStepStartTime)
                {
                    item.ForeColor        = clrInvalid;
                    item.SubItems[3].Text = "";
                    item.SubItems[4].Text = "[Merged to Start Date]";
                }
            }
        }
Пример #13
0
        private void EditElement()
        {
            MWLQueryCriteriaItem item = listControler.GetSelectedItem() as MWLQueryCriteriaItem;

            if (item == null ||
                item.DPath.GetTag() == DicomMappingHelper.Tags.ScheduledProcedureStepStartTime)
            {
                return;
            }

            FormQCElement frm = new FormQCElement(item);

            if (frm.ShowDialog(this) != DialogResult.OK)
            {
                return;
            }

            RefreshList();
            listControler.SelectItem(item);
            RefreshButton();
        }
Пример #14
0
        private void AddQC()
        {
            FormQCItem frm = new FormQCItem(null, Program.ConfigMgt.Config.AdditionalQueryCriteria);

            if (frm.ShowDialog(this) != DialogResult.OK)
            {
                return;
            }

            MWLQueryCriteriaItem item = frm.QCItem;

            if (item == null)
            {
                return;
            }

            Program.ConfigMgt.Config.AdditionalQueryCriteria.Add(item);

            RefreshQCList();
            SelectQCItem(item);
        }