示例#1
0
        private void StartDragging(MyDropHandleType dropHandlingType, MyGuiControlGrid gridControl, ref MyGuiControlGrid.EventArgs args)
        {
            m_dragAndDropInfo           = new MyDragAndDropInfo();
            m_dragAndDropInfo.Grid      = gridControl;
            m_dragAndDropInfo.ItemIndex = args.ItemIndex;

            var draggingItem = m_dragAndDropInfo.Grid.GetItemAt(m_dragAndDropInfo.ItemIndex);

            m_dragAndDrop.StartDragging(dropHandlingType, args.Button, draggingItem, m_dragAndDropInfo, includeTooltip: false);
        }
示例#2
0
        private void dragDrop_OnItemDropped(object sender, MyDragAndDropEventArgs eventArgs)
        {
            if (m_selectedAssembler != null && eventArgs.DropTo != null)
            {
                var queueItem = (MyProductionBlock.QueueItem)eventArgs.Item.UserData;

                m_selectedAssembler.MoveQueueItemRequest(queueItem.ItemId, eventArgs.DropTo.ItemIndex);
            }

            m_dragAndDropInfo = null;
        }
示例#3
0
        internal void Close()
        {
            UnregisterEvents();
            UnregisterAssemblerEvents(m_selectedAssembler);

            m_assemblersByKey.Clear();
            m_blueprintButtonGroup.Clear();
            m_modeButtonGroup.Clear();

            m_selectedAssembler  = null;
            m_controlsParent     = null;
            m_terminalSystem     = null;
            m_comboboxAssemblers = null;

            m_dragAndDrop     = null;
            m_dragAndDropInfo = null;
        }
        private void ListboxItemDrag(object sender, MyGuiControlListboxItemEventArgs eventArgs)
        {
            MyGuiControlListbox senderListbox = (MyGuiControlListbox)sender;

            MyDragAndDropInfo dragAndDropInfo = new MyDragAndDropInfo();

            dragAndDropInfo.ItemIndex = eventArgs.ItemIndex;
            dragAndDropInfo.RowIndex  = eventArgs.RowIndex;
            dragAndDropInfo.Listbox   = senderListbox;

            MyGuiControlListboxItem listBoxItem;

            if (senderListbox == m_allItemsInventoryListbox)
            {
                listBoxItem = CreateCopy(senderListbox.GetItem(eventArgs.Key));
            }
            else
            {
                listBoxItem = senderListbox.GetItem(eventArgs.Key);
                senderListbox.RemoveItem(eventArgs.Key, false);
            }

            m_dragAndDrop.StartDragging(MyDropHandleType.LeftMousePressed, listBoxItem, dragAndDropInfo);
        }