コード例 #1
0
 public void SwipeItemsExecuteThrowsExceptionWhenMoreThanOneItemAreAdded()
 {
     RunOnUIThread.Execute(() =>
     {
         var swipeItems  = new SwipeItems();
         swipeItems.Mode = SwipeMode.Execute;
         swipeItems.Add(new SwipeItem());
         Verify.Throws <ArgumentException>(() => { swipeItems.Add(new SwipeItem()); });
     });
 }
コード例 #2
0
 public void SwipeControlCanOnlyBeHorizontalOrVertical()
 {
     RunOnUIThread.Execute(() =>
     {
         SwipeControl swipeControl = new SwipeControl();
         swipeControl.LeftItems    = new SwipeItems();
         var topItems = new SwipeItems();
         topItems.Add(new SwipeItem());
         swipeControl.TopItems = topItems;
         Verify.Throws <ArgumentException>(() => { swipeControl.LeftItems.Add(new SwipeItem()); });
     });
 }
コード例 #3
0
ファイル: MenuFlyoutHelper.cs プロジェクト: GuocRen/Unigram
        public static void CreateSwipeItem <T>(this Microsoft.UI.Xaml.Controls.SwipeItems flyout, Func <T, bool> visibility, ICommand command, T parameter, string text, Microsoft.UI.Xaml.Controls.IconSource icon = null) where T : class
        {
            var value = visibility(parameter as T);

            if (value)
            {
                var flyoutItem = new Microsoft.UI.Xaml.Controls.SwipeItem();
                flyoutItem.Command          = command;
                flyoutItem.CommandParameter = parameter;
                flyoutItem.Text             = text;

                if (icon != null)
                {
                    flyoutItem.IconSource = icon;
                }

                flyout.Add(flyoutItem);
            }
        }
コード例 #4
0
        public void SwipeItemsTest()
        {
            SwipeItems swipeItems = null;

            RunOnUIThread.Execute(() =>
            {
                swipeItems = new SwipeItems();

                // verify the default value
                Verify.AreEqual(swipeItems.Mode, SwipeMode.Reveal);
                Verify.AreEqual(swipeItems.Count, 0);

                swipeItems.Add(new SwipeItem());
                swipeItems.Add(new SwipeItem());
            });

            IdleSynchronizer.Wait();

            RunOnUIThread.Execute(() =>
            {
                Verify.AreEqual(swipeItems.Count, 2);
            });
        }
コード例 #5
0
        WSwipeItems CreateSwipeItems(SwipeDirection swipeDirection)
        {
            var swipeItems = new WSwipeItems();

            SwipeItems items = null;

            switch (swipeDirection)
            {
            case SwipeDirection.Left:
                DisposeSwipeItems(_leftItems);
                items      = Element.LeftItems;
                _leftItems = new Dictionary <WSwipeItem, SwipeItem>();
                break;

            case SwipeDirection.Right:
                DisposeSwipeItems(_rightItems);
                items       = Element.RightItems;
                _rightItems = new Dictionary <WSwipeItem, SwipeItem>();
                break;

            case SwipeDirection.Up:
                DisposeSwipeItems(_topItems);
                items     = Element.TopItems;
                _topItems = new Dictionary <WSwipeItem, SwipeItem>();
                break;

            case SwipeDirection.Down:
                DisposeSwipeItems(_bottomItems);
                items        = Element.BottomItems;
                _bottomItems = new Dictionary <WSwipeItem, SwipeItem>();
                break;
            }

            items.PropertyChanged += OnSwipeItemsPropertyChanged;
            swipeItems.Mode        = GetSwipeMode(items.Mode);

            foreach (var item in items)
            {
                if (item is SwipeItem formsSwipeItem)
                {
                    var textColor = GetSwipeItemColor(formsSwipeItem.BackgroundColor);

                    var windowsSwipeItem = new WSwipeItem
                    {
                        Background        = formsSwipeItem.BackgroundColor.IsDefault ? null : formsSwipeItem.BackgroundColor.ToBrush(),
                        Foreground        = textColor.ToBrush(),
                        IconSource        = formsSwipeItem.IconImageSource.ToWindowsIconSource(),
                        Text              = formsSwipeItem.Text,
                        Command           = formsSwipeItem.Command,
                        CommandParameter  = formsSwipeItem.CommandParameter,
                        BehaviorOnInvoked = GetSwipeBehaviorOnInvoked(items.SwipeBehaviorOnInvoked)
                    };

                    formsSwipeItem.PropertyChanged += OnSwipeItemPropertyChanged;
                    windowsSwipeItem.Invoked       += OnSwipeItemInvoked;

                    swipeItems.Add(windowsSwipeItem);

                    FillSwipeItemsCache(swipeDirection, windowsSwipeItem, formsSwipeItem);
                }
            }

            return(swipeItems);
        }
コード例 #6
0
        public void BtnAddItem_Click(object sender, RoutedEventArgs args)
        {
            SwipeItem swipeItem = new SwipeItem();

            swipeItem.Text = txtText.Text;
            switch (cmbIcon.SelectedIndex)
            {
            case (0):
                swipeItem.IconSource = Resources["SymbolIcon"] as IconSource;
                break;

            case (1):
                swipeItem.IconSource = Resources["FontIcon"] as IconSource;
                break;

            case (2):
                swipeItem.IconSource = Resources["BitmapIcon"] as IconSource;
                break;

            case (3):
                swipeItem.IconSource = Resources["PathIcon"] as IconSource;
                break;
            }
            swipeItem.Background = new SolidColorBrush(cpBackground.Color);
            switch (cmbBehaviorOnInvoked.SelectedIndex)
            {
            case (0):
                swipeItem.BehaviorOnInvoked = SwipeBehaviorOnInvoked.Auto;
                break;

            case (1):
                swipeItem.BehaviorOnInvoked = SwipeBehaviorOnInvoked.Close;
                break;

            case (2):
                swipeItem.BehaviorOnInvoked = SwipeBehaviorOnInvoked.RemainOpen;
                break;
            }
            SwipeItems swipeItems = null;

            switch (cmbCollection.SelectedIndex)
            {
            case (0):
                swipeItems = markupSwipeControl.LeftItems;
                if (swipeItems == null)
                {
                    swipeItems = new SwipeItems();
                    swipeItems.Add(swipeItem);
                    markupSwipeControl.LeftItems = swipeItems;
                }
                else
                {
                    swipeItems.Add(swipeItem);
                }
                break;

            case (1):
                swipeItems = markupSwipeControl.RightItems;
                if (swipeItems == null)
                {
                    swipeItems = new SwipeItems();
                    swipeItems.Add(swipeItem);
                    markupSwipeControl.RightItems = swipeItems;
                }
                else
                {
                    swipeItems.Add(swipeItem);
                }
                break;

            case (2):
                swipeItems = markupSwipeControl.TopItems;
                if (swipeItems == null)
                {
                    swipeItems = new SwipeItems();
                    swipeItems.Add(swipeItem);
                    markupSwipeControl.TopItems = swipeItems;
                }
                else
                {
                    swipeItems.Add(swipeItem);
                }
                break;

            case (3):
                swipeItems = markupSwipeControl.BottomItems;
                if (swipeItems == null)
                {
                    swipeItems = new SwipeItems();
                    swipeItems.Add(swipeItem);
                    markupSwipeControl.BottomItems = swipeItems;
                }
                else
                {
                    swipeItems.Add(swipeItem);
                }
                break;
            }
            switch (cmbMode.SelectedIndex)
            {
            case (0):
                swipeItems.Mode = SwipeMode.Reveal;
                break;

            case (1):
                swipeItems.Mode = SwipeMode.Execute;
                break;
            }
            resetSwipeItemChoices();
        }