private void ProcessDrag(DataGridControl lvSource, DataGridControl lvDest, GetPositionDelegate mousePoint) { sourceIndex = this.GetCurrentIndex(mousePoint, lvSource); curSource = lvSource; if (sourceIndex < 0) { return; } lvSource.SelectedIndex = sourceIndex; selectedItem = lvSource.Items[sourceIndex] as IqReportColumn; if (selectedItem == null) { return; } // this will create the drag "rectangle" DragDropEffects allowedEffects = DragDropEffects.Move; if (DragDrop.DoDragDrop(lvSource, selectedItem, allowedEffects) != DragDropEffects.None) { // The item was dropped into a new location, // so make it the new selected item. lvDest.SelectedItem = selectedItem; } }
public static int GetCurrentIndex(this ItemsControl thisItemsControl, GetPositionDelegate getPosition) { try { if (!ItemsControlExtensions.IsMouseOverTarget(thisItemsControl, getPosition)) { return(-1); } for (int i = 0; i < thisItemsControl.Items.Count; i++) { Visual item = ItemsControlExtensions.GetItemsControlItem(thisItemsControl, i); if (ItemsControlExtensions.IsMouseOverTarget(item, getPosition)) { return(i); } } } catch (Exception) { } return(-1); }
bool IsMouseOverTarget(TreeViewItem item, GetPositionDelegate getPosition) { Rect bounds = VisualTreeHelper.GetDescendantBounds(item); Point mousePos = getPosition(item); return(bounds.Contains(mousePos)); }
bool IsMouseOverTarget(Visual target, GetPositionDelegate getPosition) { Rect bounds = VisualTreeHelper.GetDescendantBounds(target); Point mousePos = getPosition((IInputElement)target); return(bounds.Contains(mousePos)); }
private void ProcessDrop(DataGridControl lvDest, GetPositionDelegate mousePoint) { return; if (curSource == lvDest) { return; } if (sourceIndex < 0) { return; } int index = this.GetCurrentIndex(mousePoint, lvDest); if (index < 0) { index = 0; //return; } //RemoveBinByUser(this, new DataEventArgs<Bin>(selectedItem)); //Destination Operation //Add Trask By User selectedItem.Rank = index; //AddBinByUser(this, new DataEventArgs<Bin>(selectedItem)); lvDest.Items.Refresh(); curSource.Items.Refresh(); }
protected HeifReader() { this.heifReaderHandle = new DisposableLazy <SafeCoTaskMemHandle>(CreateHeifReader); this.getPositionDelegate = GetPosition; this.readDelegate = Read; this.seekDelegate = Seek; this.waitForFileSizeDelegate = WaitForFileSize; }
public QuadTreeNode(RectangleF range, GetPositionDelegate getPositionCallback, int Capacity = 10, int MaxLevels = 100) { level = MaxLevels; if (Capacity <= 0) { throw new ArgumentOutOfRangeException(nameof(Capacity), "Capacity must larger than 0"); } Range = range; capacity = Capacity; center = new Vector2(Range.X + Range.Width / 2, Range.Y + Range.Height / 2); getPosition = getPositionCallback; }
private static bool IsMouseOverTarget(Visual target, GetPositionDelegate getPosition) { if (target == null) { return(false); } Rect bounds = VisualTreeHelper.GetDescendantBounds(target); Point mousePos = MouseUtils.GetMousePosition(target); return(bounds.Contains(mousePos)); }
/// <summary> /// Returns the index of the item, hit by the cursor. /// </summary> /// <param name="getPosition"></param> /// <param name="list"></param> /// <returns></returns> protected int GetCurrentIndex(GetPositionDelegate getPosition, ListView list) { int index = -1; for (int i = 0; i < list.Items.Count; i++) { ListViewItem item = GetListViewItem(i, list); if (item == null) continue; if (IsOverTarget(item, getPosition((IInputElement)item))) { index = i; break; } } return index; }
private int GetCurrentIndex(GetPositionDelegate getPosition) { int index = Items.Count; for (int i = 0; i < fileList.Items.Count; ++i) { ListViewItem item = GetListViewItem(i); if (item != null && this.IsMouseOverTarget(item, getPosition)) { index = i; break; } } return(index); }
public HeifStreamIO(Stream stream, bool ownsStream = false) { Validate.IsNotNull(stream, nameof(stream)); this.stream = stream; this.ownsStream = ownsStream; this.heifReaderHandle = new DisposableLazy <SafeCoTaskMemHandle>(CreateHeifReader); this.heifWriterHandle = new DisposableLazy <SafeCoTaskMemHandle>(CreateHeifWriter); this.streamBuffer = new byte[MaxBufferSize]; this.getPositionDelegate = GetPosition; this.readDelegate = Read; this.seekDelegate = Seek; this.waitForFileSizeDelegate = WaitForFileSize; this.writeDelegate = Write; }
private int GetCurrentIndex(GetPositionDelegate getPosition) { int index = -1; for (int i = 0; i < View.Items.Count; ++i) { TViewItem item = GetItem(i); if (item != null && IsMouseOverTarget(item, getPosition)) { index = i; break; } } return(index); }
int GetCurrentIndex(ListBox source, GetPositionDelegate getPosition) { int index = -1; for (int i = 0; i < source.Items.Count; ++i) { ListBoxItem item = GetListViewItem(source, i); if (this.IsMouseOverTarget(item, getPosition)) { index = i; break; } } return(index); }
// returns the index of the item in the ListView int GetCurrentIndex(GetPositionDelegate getPosition) { int index = -1; for (int i = 0; i < this.list.Items.Count; ++i) { TreeViewItem item = GetListViewItem(i); if (this.IsMouseOverTarget(item, getPosition)) { index = i; break; } } return(index); }
private int GetCurrentIndex(ListView lv, GetPositionDelegate getPosition) { int index = -1; for (int i = 0; i < lv.Items.Count; ++i) { ListViewItem item = lv.ItemContainerGenerator.ContainerFromIndex(i) as ListViewItem; if (IsMouseOverTarget(item, getPosition)) { index = i; break; } } return(index); }
// returns the index of the item in the ListView int GetCurrentIndex(GetPositionDelegate getPosition, DataGridControl lvObject) { int index = -1; for (int i = 0; i < lvObject.Items.Count; ++i) { Row item = GetListViewItem(i, lvObject); if (item != null && this.IsMouseOverTarget(item, getPosition)) { index = i; break; } } return(index); }
int GetCurrentIndex(GetPositionDelegate getPosition) { int index = -1; // 最後にヒットした要素を返す for (int i = 0; i < this.PseudoTabOwner.Items.Count; ++i) { var item = GetListBoxItem(i); if (item != null && this.IsMouseOverTarget(item, getPosition)) { index = i; } else if (index != -1) { break; } } return index; }
int GetCurrentIndex(GetPositionDelegate getPosition) { int index = -1; for (int i = 0; i < ConstraintListView.Items.Count; ++i) { ListViewItem item = GetListViewItem(i); if (item != null) { if (this.IsMouseOverTarget(item, getPosition)) { index = i; break; } } } return(index); }
public int GetCurrentIndex(ListView target, GetPositionDelegate getPosition) { int index = -1; for (int i = 0; i < target.Items.Count; i++) { ListViewItem item = GetListViewItem(target, i); if (item == null) { continue; } if (IsMouseOverTarget(item, getPosition)) { index = i; break; } } return(index); }
private int GetCurrentIndex(GetPositionDelegate getPosition) { int index = -1; for (int i = 0; i < this.cCategoryList.Items.Count; i++) { ListViewItem item = GetListViewItem(i); if (item == null) { continue; } if (IsMouseOverTarget(item, getPosition)) { index = i; break; } } return(index); }
private void ProcessDrop(DataGridControl lvDest, GetPositionDelegate mousePoint) { if (curSource == lvDest) { return; } if (sourceIndex < 0) { return; } int index = this.GetCurrentIndex(mousePoint, lvDest); if (index < 0) { index = 0; //return; } ((IList <IqReportColumn>)curSource.Items.SourceCollection).Remove(selectedItem); if (curSource.Name == "lvDest") { //Remueve de los seleccionados cambia el visible a false RemoveFromSelected(this, new DataEventArgs <IqReportColumn>(selectedItem)); } //Destination Operation if (((IList <IqReportColumn>)lvDest.Items.SourceCollection).Where(f => f.ReportColumnId == selectedItem.ReportColumnId).Count() == 0) { //Add Trask By User if (lvDest.Name == "lvDest") { AddToSelected(this, new DataEventArgs <IqReportColumn>(selectedItem)); } ((IList <IqReportColumn>)lvDest.Items.SourceCollection).Insert(index, selectedItem); } lvDest.Items.Refresh(); curSource.Items.Refresh(); }
private void ProcessDrop(DataGridControl lvDest, GetPositionDelegate mousePoint) { if (curSource == lvDest) { return; } if (sourceIndex < 0) { return; } int index = this.GetCurrentIndex(mousePoint, lvDest); if (index < 0) { index = 0; //return; } ((IList <Document>)curSource.Items.SourceCollection).Remove(selectedItem); if (curSource.Name == "lvPickOrders") { RemoveTaskByUser(this, new DataEventArgs <Document>(selectedItem)); } //Destination Operation if (((IList <Document>)lvDest.Items.SourceCollection).Where(f => f.DocID == selectedItem.DocID).Count() == 0) { //Add Trask By User if (lvDest.Name == "lvPickOrders") { AddTaskByUser(this, new DataEventArgs <Document>(selectedItem)); } ((IList <Document>)lvDest.Items.SourceCollection).Insert(index, selectedItem); } lvDest.Items.Refresh(); curSource.Items.Refresh(); }
public static object GetCurrentItem(this TreeView thisTreeView, GetPositionDelegate getPosition) { try { if (!TreeViewExtensions.IsMouseOverTarget(thisTreeView, getPosition)) { return(null); } var items = new List <TreeViewItem>(); items.AddRange(thisTreeView.Items.OfType <TreeViewItem>()); for (int i = 0; i < items.Count; i++) { if (!items[i].IsExpanded) { continue; } foreach (TreeViewItem item in items[i].Items) { items.Add(item); } } items.Reverse(); foreach (var item in items) { if (TreeViewExtensions.IsMouseOverTarget(item, getPosition)) { return(item); } } } catch (Exception) { } return(null); }
private int GetCurrentIndex(GetPositionDelegate getPosition) { int index = -1; for (int i = 0; i < Items.Count; i++) { ListViewItem item = GetListViewItem(i); if (item == null) { continue; } if (IsMouseOverTarget(item, getPosition)) { index = i; break; } } CurrentIndex = index; isMouseWithinBounds = IsMouseOverTarget(this, getPosition); return(index); }
public static int GetCurrentIndex(this ItemsControl thisItemsControl, GetPositionDelegate getPosition) { try { if (!ItemsControlExtensions.IsMouseOverTarget(thisItemsControl, getPosition)) return -1; for (int i = 0; i < thisItemsControl.Items.Count; i++) { Visual item = ItemsControlExtensions.GetItemsControlItem(thisItemsControl, i); if (ItemsControlExtensions.IsMouseOverTarget(item, getPosition)) { return i; } } } catch (Exception) { } return -1; }
private int GetCurrentIndex(GetPositionDelegate getPosition, DataGrid datagrid) { int _Index = -1; for (int _RowCount = 0; _RowCount < datagrid.Items.Count; ++_RowCount) { DataGridRow _Item = GetListViewItem(_RowCount, datagrid); if (this.IsMouseOverTarget(_Item, getPosition)) { _Index = _RowCount; break; } } return _Index; }
bool IsMouseOverTarget(Visual target, GetPositionDelegate getPosition) { Rect bounds = VisualTreeHelper.GetDescendantBounds(target); Point mousePos = getPosition((IInputElement)target); return bounds.Contains(mousePos); }
// returns the index of the item in the ListView int GetCurrentIndex(GetPositionDelegate getPosition, DataGridControl lvObject) { int index = -1; for (int i = 0; i < lvObject.Items.Count; ++i) { Row item = GetListViewItem(i, lvObject); if (item != null && this.IsMouseOverTarget(item, getPosition)) { index = i; break; } } return index; }
private void ProcessDrop(DataGridControl lvDest, GetPositionDelegate mousePoint) { if (curSource == lvDest) return; if (sourceIndex < 0) return; int index = this.GetCurrentIndex(mousePoint, lvDest); if (index < 0) index = 0; //return; ((IList<IqReportColumn>)curSource.Items.SourceCollection).Remove(selectedItem); if (curSource.Name == "lvDest") //Remueve de los seleccionados cambia el visible a false RemoveFromSelected(this, new DataEventArgs<IqReportColumn>(selectedItem)); //Destination Operation if (((IList<IqReportColumn>)lvDest.Items.SourceCollection).Where(f => f.ReportColumnId == selectedItem.ReportColumnId).Count() == 0) { //Add Trask By User if (lvDest.Name == "lvDest") AddToSelected(this, new DataEventArgs<IqReportColumn>(selectedItem)); ((IList<IqReportColumn>)lvDest.Items.SourceCollection).Insert(index, selectedItem); } lvDest.Items.Refresh(); curSource.Items.Refresh(); }
private void ProcessDrag(DataGridControl lvSource, DataGridControl lvDest, GetPositionDelegate mousePoint) { sourceIndex = this.GetCurrentIndex(mousePoint, lvSource); curSource = lvSource; if (sourceIndex < 0) return; lvSource.SelectedIndex = sourceIndex; selectedItem = lvSource.Items[sourceIndex] as IqReportColumn; if (selectedItem == null) return; // this will create the drag "rectangle" DragDropEffects allowedEffects = DragDropEffects.Move; if (DragDrop.DoDragDrop(lvSource, selectedItem, allowedEffects) != DragDropEffects.None) { // The item was dropped into a new location, // so make it the new selected item. lvDest.SelectedItem = selectedItem; } }
int GetCurrentIndex(GetPositionDelegate getPosition) { int index = -1; for (int i = 0; i < this.lstProgram.Items.Count; ++i) { ListViewItem item = GetListViewItem(i); if (this.IsMouseOverTarget(item, getPosition)) { index = i; break; } } return index; }
/// <summary> /// Returns the index of the item in the ListView on the (paramter) position /// </summary> /// <param name="getPosition">Position Delegate MousePos</param> /// <returns>int index</returns> int GetCurrentIndex(GetPositionDelegate getPosition) { int listoffset; Rect bounds = new Rect(0, 0, 0, 0); if (GetListViewItem(0) != null) bounds = VisualTreeHelper.GetDescendantBounds(GetListViewItem(0)); if (bounds.Height != 0 && bounds.Height > _listViewItemSize) _listViewItemSize = bounds.Height; System.Windows.Point mousePos = getPosition((IInputElement)listView); if (_listViewItemSize != 0) listoffset = (int)(mousePos.Y / _listViewItemSize); else return 0; int index = (int)UserInterfaceHelper.GetVisualChild<ScrollViewer>(listView).VerticalOffset + listoffset; if (index < 0) return 0; if (index >= listView.Items.Count) return listView.Items.Count - 1; return index; }
private void ProcessDrop(DataGridControl lvDest, GetPositionDelegate mousePoint) { return; if (curSource == lvDest) return; if (sourceIndex < 0) return; int index = this.GetCurrentIndex(mousePoint, lvDest); if (index < 0) index = 0; //return; //RemoveBinByUser(this, new DataEventArgs<Bin>(selectedItem)); //Destination Operation //Add Trask By User selectedItem.Rank = index; //AddBinByUser(this, new DataEventArgs<Bin>(selectedItem)); lvDest.Items.Refresh(); curSource.Items.Refresh(); }
private static bool IsMouseOverTarget(Visual target, GetPositionDelegate getPosition) { if (target == null) return false; Rect bounds = VisualTreeHelper.GetDescendantBounds(target); Point mousePos = MouseUtilities.GetMousePosition(target); return bounds.Contains(mousePos); }
public static object GetCurrentItem(this TreeView thisTreeView, GetPositionDelegate getPosition) { try { if (!TreeViewExtensions.IsMouseOverTarget(thisTreeView, getPosition)) return null; var items = new List<TreeViewItem>(); items.AddRange(thisTreeView.Items.OfType<TreeViewItem>()); for (int i = 0; i < items.Count; i++) { if (!items[i].IsExpanded) continue; foreach (TreeViewItem item in items[i].Items) { items.Add(item); } } items.Reverse(); foreach (var item in items) { if (TreeViewExtensions.IsMouseOverTarget(item, getPosition)) { return item; } } } catch (Exception) { } return null; }
bool IsMouseOverTarget(Visual target, GetPositionDelegate getPosition) { return VisualTreeHelper.HitTest(target, getPosition((IInputElement)target)) != null; }