예제 #1
0
 private void ReleaseControl(MpeControl c)
 {
   MpeLog.Debug("Removing " + c.ToString());
   if (c is MpeContainer)
   {
     for (int i = 0; i < c.Controls.Count; i++)
     {
       if (c.Controls[i] is MpeControl)
       {
         ReleaseControl((MpeControl) c.Controls[i]);
       }
     }
     c.ControlAdded -= new ControlEventHandler(OnControlAdded);
     c.ControlRemoved -= new ControlEventHandler(OnControlRemoved);
     if (AllowAdditions)
     {
       c.DragDrop -= new DragEventHandler(OnDragDrop);
       c.DragEnter -= new DragEventHandler(OnDragEnter);
     }
   }
   c.Click -= new EventHandler(OnControlClick);
   c.MouseDown -= new MouseEventHandler(OnControlMouseDown);
   c.StatusChanged -= new MpeControl.StatusChangedHandler(OnControlStatusChanged);
   c.KeyUp -= new KeyEventHandler(OnKeyUp);
   c.PropertyValueChanged -= new MpeControl.PropertyValueChangedHandler(OnControlPropertyValueChanged);
   c.IdentityChanged -= new MpeControl.IdentityChangedHandler(OnControlIdentityChanged);
   ResourceList.Remove(c);
   MpeLog.Debug("Removed " + c.ToString());
 }
예제 #2
0
 private void PrepareControl(MpeControl c)
 {
   if (c != null && c.Embedded == false)
   {
     MpeLog.Debug("Preparing " + c.ToString());
     ResourceList.Add(c);
     c.MpeScreen = screen;
     c.Click += new EventHandler(OnControlClick);
     c.MouseDown += new MouseEventHandler(OnControlMouseDown);
     c.StatusChanged += new MpeControl.StatusChangedHandler(OnControlStatusChanged);
     c.KeyUp += new KeyEventHandler(OnKeyUp);
     c.IdentityChanged += new MpeControl.IdentityChangedHandler(OnControlIdentityChanged);
     c.PropertyValueChanged += new MpeControl.PropertyValueChangedHandler(OnControlPropertyValueChanged);
     if (c is MpeContainer)
     {
       c.ControlAdded += new ControlEventHandler(OnControlAdded);
       c.ControlRemoved += new ControlEventHandler(OnControlRemoved);
       if (AllowAdditions)
       {
         c.DragDrop += new DragEventHandler(OnDragDrop);
         c.DragEnter += new DragEventHandler(OnDragEnter);
         MpeLog.Debug("DragDrop enabled");
       }
       for (int i = 0; i < c.Controls.Count; i++)
       {
         if (c.Controls[i] is MpeControl)
         {
           PrepareControl((MpeControl) c.Controls[i]);
         }
       }
     }
   }
   else if (c != null && c.Embedded == true)
   {
     MpeLog.Debug("Preparing Embedded " + c.ToString());
     c.MpeScreen = screen;
   }
   MpeLog.Debug("Prepared " + c.ToString());
 }