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); }
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; }
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); }