Пример #1
0
 public void SetElementsSelection(MaterialComponentNameAndFractionControl elementCtrl, ModifierKey modKey)
 {
     if (modKey == ModifierKey.Ctrl)
     {
         elementCtrl.IsSelected = !elementCtrl.IsSelected;
         this.baseIndex         = this.GetIndexOfElement(elementCtrl);
     }
     else if (modKey == ModifierKey.Shift)
     {
         int currentIdx = this.GetIndexOfElement(elementCtrl);
         if (currentIdx >= 0 && this.baseIndex >= 0)
         {
             this.UnselectElements();
             int minIdx = System.Math.Min(currentIdx, this.baseIndex);
             int maxIdx = System.Math.Max(currentIdx, this.baseIndex);
             this.SetElementsSelection(minIdx, maxIdx);
         }
     }
     else
     {
         this.UnselectElements();
         elementCtrl.IsSelected = true;
         this.baseIndex         = this.GetIndexOfElement(elementCtrl);
     }
 }
Пример #2
0
        public void DeleteSelectedElements()
        {
            IEnumerator e = this.GetSelectedIndexes().GetEnumerator();

            while (e.MoveNext())
            {
                MaterialComponentNameAndFractionControl element = this.GetElement((int)e.Current);
                this.dryingMaterialCache.RemoveMaterialComponent(element.MaterialComponent);
            }
        }
Пример #3
0
        private void SetElementsSelection(int minIdx, int maxIdx)
        {
            MaterialComponentNameAndFractionControl element = null;

            for (int i = 0; i < this.panel.Controls.Count; i++)
            {
                if (i >= minIdx && i <= maxIdx)
                {
                    element            = this.panel.Controls[i] as MaterialComponentNameAndFractionControl;
                    element.IsSelected = true;
                }
            }
        }
Пример #4
0
        private int GetIndexOfElement(MaterialComponentNameAndFractionControl elementCtrl)
        {
            int index = -1;

            for (int i = 0; i < this.panel.Controls.Count - 1; i++)
            {
                if ((this.panel.Controls[i] as MaterialComponentNameAndFractionControl).Equals(elementCtrl))
                {
                    index = i;
                    break;
                }
            }
            return(index);
        }
Пример #5
0
        public void UpdateTheUI(ArrayList materialComponentList, INumericFormat iNumericFormat)
        {
            this.panel.Controls.Clear();
            IEnumerator e = materialComponentList.GetEnumerator();
            int         i = 0;

            while (e.MoveNext())
            {
                MaterialComponent mc = (MaterialComponent)e.Current;
                MaterialComponentNameAndFractionControl ctrl = new MaterialComponentNameAndFractionControl(this, mc, iNumericFormat);
                ctrl.Location = new Point(0, ctrl.Height * i++);
                this.panel.Controls.Add(ctrl);
            }
        }