Beispiel #1
0
        private void UpdateDeltaItemPosition(ItemUI item, double delta)
        {
            int idx = IndexOfItem(item);

            MoveDeltaItemWithinBounds(item, delta);
            int num = PositionToIdx(item);

            if (idx == num)
            {
                return;
            }
            int index = idx - num < 0 ? idx + 1 : idx - 1;

            SwapItemsInList(item, (ItemUI)itemGrid.Children[index]);
            //Debug.WriteLine("index:{0} idx:{1}",index,idx);
            itemGrid.UpdateLayout();
            AnimationUtil.translateY((FrameworkElement)itemGrid.Children[idx], IdxToPosition(idx), 200, null);
        }
Beispiel #2
0
 private void onDragCompleted(object sender, Microsoft.Phone.Controls.GestureEventArgs e)
 {
     if (_disableTopLevelGesture || !_isDraggingListBox)
     {
         return;
     }
     _isDraggingListBox = false;
     if (!_isAddingItemViaDragTop)
     {
         return;
     }
     if (TransformUtil.GetScaleY((FrameworkElement)_newItem) < 0.7)
     {
         itemGrid.Children.Remove((UIElement)_newItem);
     }
     else
     {
         TransformUtil.SetScaleY((FrameworkElement)_newItem, 1.0);
         TransformUtil.setRotateX((FrameworkElement)_newItem, 0.0);
         TransformUtil.setScaleX((FrameworkElement)_newItem, 1.0);
         TransformUtil.setTranslateX((FrameworkElement)_newItem, 0.0);
         _newItem.Tag = CurrItem.Add();
         if (_newItem.Tag == null)
         {
             itemGrid.Children.Remove((UIElement)_newItem);
         }
         else
         {
             _newItem.Update();
             //sortZIndex();
             _newItem.SetText("");
             _newItem.text.Focus();
         }
     }
     UpdateItemGridHeight();
     for (int idx = IndexOfItem(_newItem) + 1; idx < itemGrid.Children.Count; ++idx)
     {
         TransformUtil.setTranslateY((FrameworkElement)itemGrid.Children[idx], IdxToPosition(idx));
     }
     _newItem = (ItemUI)null;
     _isAddingItemViaDragTop = false;
     EnableNativeScrolling(true);
     EnableAllChildrenGesture(true);
 }
Beispiel #3
0
        public ItemUI AddItem(ListItem data)
        {
            var listBoxItem = new ItemUI(this)
            {
                Tag = data
            };

            listBoxItem.SetText(data.Name);
            itemGrid.Children.Add(listBoxItem);
            TransformUtil.setTranslateY(listBoxItem, 0);

            listBoxItem.markComplite.Visibility = data.Mark ? Visibility.Visible : Visibility.Collapsed;
            itemGrid.UpdateLayout();
            _itemHeight = listBoxItem.ActualHeight;
            UpdateItemGridHeight();
            MoveItemToIdxPosition(listBoxItem, IndexOfItem(listBoxItem));
            SortZIndex();
            return(listBoxItem);
        }
Beispiel #4
0
        private void onDragDelta(object sender, DragDeltaGestureEventArgs e)
        {
            if (_disableTopLevelGesture || !_isDraggingListBox)
            {
                return;
            }
            bool   flag1            = e.GetPosition(listbox).Y > _dragStartY;
            bool   flag2            = _scrollViewer.VerticalOffset < 10.0 / itemGrid.Height;
            double verticalOffset   = _scrollViewer.VerticalOffset;
            double scrollableHeight = _scrollViewer.ScrollableHeight;

            if (!_isAddingItemViaDragTop && flag2 && flag1)
            {
                e.Handled = true;
                _isAddingItemViaDragTop = true;
                EnableAllChildrenGesture(false);
                _newItem = AddItem("new item");

                TransformUtil.setScaleX(_newItem, 0.9);
                TransformUtil.setTranslateX(_newItem, 20.0);
            }
            else
            {
                if (!_isAddingItemViaDragTop)
                {
                    return;
                }
                e.Handled = true;

                double num1 = Math.Min((_lastDraggedYDist + e.VerticalChange) / _itemHeight, 1.0);

                _lastDraggedYDist += e.VerticalChange;
                TransformUtil.SetScaleY(_newItem, num1);
                TransformUtil.setScaleX(_newItem, 0.9 + num1 / 10);
                TransformUtil.setTranslateX(_newItem, 20.0 - (num1 * 20));

                UpdateItemGrid(0);
            }
        }
 public void maximizeTaskList(ItemUI item)
 {
     //this.IsHitTestVisible = false;
     //this.maximizedTaskList = item;
     //Point offset = item.TransformToVisual((UIElement)this).Transform(new Point(0.0, 0.0));
     //TaskListData listData = item.Tag as TaskListData;
     //this.task_listbox.colorPivot = ColourUtil.hexStringToColor(listData.colour);
     //this.task_listbox.opacityValue = listData.opacity;
     //this.task_listbox.imgFilename = listData.imgFilename;
     //this.task_listbox.isColourBkgrd = listData.isColourBkgrd;
     //this.task_listbox.isUsingGradient = listData.isUsingGradient;
     //this.task_listbox.lastModified = listData.lastModified;
     //AnimationUtil.zoom((FrameworkElement)item, -600.0, 100, (Action<object, EventArgs>)((s, ev) =>
     //{
     //    foreach (TaskData item_0 in listData.taskDataList)
     //        this.task_listbox.addItem(item_0);
     //    this.task_listbox.zoomBack(offset.Y);
     //    TimerUtil.Perform((Action)(() =>
     //    {
     //        AnimationUtil.translateY((FrameworkElement)item, -this.itemHeight, 200, (Action<object, EventArgs>)null);
     //        AnimationUtil.zoom((FrameworkElement)item, 0.0, 100, (Action<object, EventArgs>)null);
     //        this.task_listbox.updateInfoTxt();
     //        this.task_listbox.zoomFront();
     //        this.task_listbox.IsHitTestVisible = true;
     //    }), 0);
     //}));
     //int num = this.indexOfItem(item);
     //for (int index = 0; index < this.itemList.Count; ++index)
     //{
     //    if (index < num)
     //        AnimationUtil.translateY((FrameworkElement)this.itemList[index], -this.itemHeight, CommonUtil.calcAnimateYTime((FrameworkElement)this.itemList[index], -this.itemHeight), (Action<object, EventArgs>)null);
     //    else if (index > num)
     //        AnimationUtil.translateY((FrameworkElement)this.itemList[index], Math.Max(this.itemGrid.ActualHeight, 800.0), CommonUtil.calcAnimateYTime((FrameworkElement)this.itemList[index], Math.Max(this.itemGrid.ActualHeight, 800.0)), (Action<object, EventArgs>)null);
     //}
     //double v = this.scrollViewer.VerticalOffset;
     //this.Dispatcher.BeginInvoke((Action)(() => this.scrollViewer.ScrollToVerticalOffset(v)));
 }
 private void onDragCompleted(object sender, Microsoft.Phone.Controls.GestureEventArgs e)
 {
     if (disableTopLevelGesture || !isDraggingListBox)
     {
         return;
     }
     isDraggingListBox = false;
     if (!isAddingItemViaDragTop)
     {
         return;
     }
     if (TransformUtil.getScaleY((FrameworkElement)newItem) < 0.7)
     {
         itemList.Remove(this.newItem);
         itemGrid.Children.Remove((UIElement)newItem);
     }
     else
     {
         TransformUtil.setScaleY((FrameworkElement)newItem, 1.0);
         TransformUtil.setRotateX((FrameworkElement)newItem, 0.0);
         TransformUtil.setScaleX((FrameworkElement)newItem, 1.0);
         TransformUtil.setTranslateX((FrameworkElement)newItem, 0.0);
         //sortZIndex();
         newItem.setText("");
         newItem.text.Focus();
     }
     updateItemGridHeight();
     for (int idx = indexOfItem(newItem) + 1; idx < itemList.Count; ++idx)
     {
         TransformUtil.setTranslateY((FrameworkElement)itemList[idx], idxToPosition(idx));
     }
     newItem = (ItemUI)null;
     isAddingItemViaDragTop = false;
     enableNativeScrolling(true);
     enableAllChildrenGesture(true);
 }
Beispiel #7
0
 public void OnUncompleteItem(ItemUI item)
 {
     ((ListItem)item.Tag).SetMark(false);
     item.Update();
 }
Beispiel #8
0
 private int IndexOfItem(ItemUI item)
 {
     return(itemGrid.Children.IndexOf(item));
 }
Beispiel #9
0
 private void MoveItemToIdxPosition(ItemUI item, int idx)
 {
     TransformUtil.setTranslateY(item, IdxToPosition(idx));
 }
Beispiel #10
0
 public void onCompletedEditText(ItemUI item)
 {
     _disableTopLevelGesture = false;
     EnableNativeScrolling(true);
     EnableAllChildrenGesture(true);
 }
Beispiel #11
0
 public void onReorderDelta(ItemUI child, double delta)
 {
     UpdateDeltaItemPosition(child, delta);
     CheckIfScrollingIsNeeded(child);
 }
 private int indexOfItem(ItemUI item)
 {
     return(this.itemList.IndexOf(item));
 }
 private void moveItemToIdxPosition(ItemUI item, int idx)
 {
     TransformUtil.setTranslateY((FrameworkElement)item, this.idxToPosition(idx));
 }