Exemplo n.º 1
0
        public void DropToolBoxItem(IToolBoxItem toolBoxItem, Point position)
        {
            if (! ( toolBoxItem is IEditorControl ))
                return;

            Cursor = Cursors.WaitCursor;

            Point layoutPosition = new Point(position.X + ViewLocation.X, position.Y + ViewLocation.Y);

            Rectangle r = new Rectangle();
            bool found = _documentLayout.LineDrawer.getSmallestBoundingRectangle(layoutPosition, ref r);
            if (found) {
                layoutPosition = r.Location;
            }

            XMLControl xmlConrtol = toolBoxItem.Duplicate(layoutPosition);
            if (found) {
                xmlConrtol.ClientRect = r;
            }

            DocumentLayout.AddControl( xmlConrtol );

            IEditorControl xmlControl = toolBoxItem as IEditorControl;
            Control editControl = xmlControl.CreateEditorControl();

            editControl.Left = layoutPosition.X - ViewLocation.X;
            editControl.Top = layoutPosition.Y - ViewLocation.Y;
            editControl.Width = xmlConrtol.ClientRect.Width;
            editControl.Height = xmlConrtol.ClientRect.Height;

            editControl.Parent = this;
            editControl.Visible = true;
            editControl.TabStop = false;

            System.Diagnostics.Trace.WriteLine("DropToolBoxItem 3");
            XMLControl2ControlDictionary.Add(xmlConrtol, editControl);
            Control2XmlControlDictionary.Add(editControl, xmlConrtol);

            xmlConrtol.UpdateEditorControl(editControl);

            storeNeeded = true;
            RefreshOverlay();

            Cursor = Cursors.Arrow;
        }
Exemplo n.º 2
0
 public void AddItem(IToolBoxItem toolBoxItem)
 {
     items.Add(toolBoxItem);
     vScrollBar1.Maximum = items.Count -1;
 }
Exemplo n.º 3
0
        private void endDrag( Point cursorPos )
        {
            if (_dragItem == null)
                return;

            if (Editor == null)
            {
                System.Diagnostics.Trace.WriteLine("XMLFormEditor::endDrag: editor is null");
                return;
            }

            Rectangle r = Editor.DisplayRectangle;
            Point editorLocation = Editor.PointToScreen(new Point(0, 0));
            r.Offset( editorLocation);
            if (r.Contains(cursorPos))
            {
                cursorPos.Offset( -1 * editorLocation.X, -1 * editorLocation.Y  );
                Editor.DropToolBoxItem(_dragItem, cursorPos);
            }

            _dragItem = null;

            Cursor = Cursors.Default;
        }
Exemplo n.º 4
0
        private void startDrag( Point cursorPos )
        {
            IToolBoxItem item = getItemAtPos( cursorPos);
            if (item == null)
            {
                return;
            }

            if (Editor == null)
                return;

            _dragItem = item;
            Cursor = item.getToolBoxCursor();
        }