public KeyBindingTester(SimultaneousBindingMode concurrency, KeyCombinationMatchingMode matchingMode)
            {
                RelativeSizeAxes = Axes.Both;
                Direction        = FillDirection.Vertical;

                testButtons = Enum.GetValues(typeof(TestAction)).Cast <TestAction>().Select(t =>
                {
                    if (t.ToString().Contains("Wheel"))
                    {
                        return(new ScrollTestButton(t, concurrency));
                    }

                    return(new TestButton(t, concurrency));
                }).ToArray();

                Children = new Drawable[]
                {
                    new SpriteText
                    {
                        Text = $"{concurrency} / {matchingMode}"
                    },
                    new TestInputManager(concurrency, matchingMode)
                    {
                        RelativeSizeAxes = Axes.Both,
                        Child            = new FillFlowContainer
                        {
                            RelativeSizeAxes = Axes.Both,
                            Children         = testButtons
                        }
                    },
                };
            }
        /// <summary>
        /// Create a new instance.
        /// </summary>
        /// <param name="simultaneousMode">Specify how to deal with multiple matches of <see cref="KeyCombination"/>s and <see cref="T"/>s.</param>
        /// <param name="matchingMode">Specify how to deal with exact <see cref="KeyCombination"/> matches.</param>
        protected KeyBindingContainer(SimultaneousBindingMode simultaneousMode = SimultaneousBindingMode.None, KeyCombinationMatchingMode matchingMode = KeyCombinationMatchingMode.Any)
        {
            RelativeSizeAxes = Axes.Both;

            this.simultaneousMode = simultaneousMode;
            this.matchingMode     = matchingMode;
        }
Exemple #3
0
            public KeyBindingTester(SimultaneousBindingMode concurrency)
            {
                RelativeSizeAxes = Axes.Both;

                testButtons = Enum.GetValues(typeof(TestAction)).Cast <TestAction>().Select(t =>
                {
                    if (t.ToString().Contains("Wheel"))
                    {
                        return(new ScrollTestButton(t, concurrency));
                    }
                    else
                    {
                        return(new TestButton(t, concurrency));
                    }
                }).ToArray();

                Children = new Drawable[]
                {
                    new SpriteText
                    {
                        Text = concurrency.ToString(),
                    },
                    new TestInputManager(concurrency)
                    {
                        Y = 30,
                        RelativeSizeAxes = Axes.Both,
                        Child            = new FillFlowContainer
                        {
                            RelativeSizeAxes = Axes.Both,
                            Children         = testButtons
                        }
                    },
                };
            }
Exemple #4
0
 protected RulesetInputManager(RulesetInfo ruleset, int variant, SimultaneousBindingMode unique)
 {
     InternalChild = KeyBindingContainer =
         CreateKeyBindingContainer(ruleset, variant, unique)
         .WithChild(content = new Container {
         RelativeSizeAxes = Axes.Both
     });
 }
            public TestButton(TestAction action, SimultaneousBindingMode concurrency)
            {
                Action      = action;
                Concurrency = concurrency;

                BackgroundColour = Color4.SkyBlue;
                SpriteText.Font  = SpriteText.Font.With(size: SpriteText.Font.Size * .8f);
                actionText       = action.ToString().Replace('_', ' ');

                RelativeSizeAxes = Axes.X;
                Height           = 30;
                Width            = 0.3f;
                Padding          = new MarginPadding(2);

                Background.Alpha = alphaTarget;

                Add(highlight = new Box
                {
                    RelativeSizeAxes = Axes.Both,
                    Alpha            = 0,
                });
            }
Exemple #6
0
            public KeyBindingTester(SimultaneousBindingMode concurrency)
            {
                RelativeSizeAxes = Axes.Both;

                Children = new Drawable[]
                {
                    new SpriteText
                    {
                        Text = concurrency.ToString(),
                    },
                    new TestInputManager(concurrency)
                    {
                        Y = 30,
                        RelativeSizeAxes = Axes.Both,
                        Child            = new FillFlowContainer
                        {
                            RelativeSizeAxes   = Axes.Both,
                            ChildrenEnumerable = Enum.GetValues(typeof(TestAction)).Cast <TestAction>().Select(t => new TestButton(t))
                        }
                    },
                };
            }
 public ScrollTestButton(TestAction action, SimultaneousBindingMode concurrency)
     : base(action, concurrency)
 {
     SpriteText.TextSize *= .9f;
 }
 public ScrollTestButton(TestAction action, SimultaneousBindingMode concurrency)
     : base(action, concurrency)
 {
     SpriteText.Font = SpriteText.Font.With(size: SpriteText.Font.Size * .9f);
 }
 public TestInputManager(SimultaneousBindingMode concurrencyMode = SimultaneousBindingMode.None, KeyCombinationMatchingMode matchingMode = KeyCombinationMatchingMode.Any)
     : base(concurrencyMode, matchingMode)
 {
 }
Exemple #10
0
 public HoloTrackKeyBindingContainer(SimultaneousBindingMode simultaneousMode = SimultaneousBindingMode.None, KeyCombinationMatchingMode matchingMode = KeyCombinationMatchingMode.Modifiers)
     : base(simultaneousMode, matchingMode)
 {
 }
Exemple #11
0
 public TestRulesetInputManager(RulesetInfo ruleset, int variant, SimultaneousBindingMode unique)
     : base(ruleset, variant, unique)
 {
 }
Exemple #12
0
 protected RulesetInputManager(RulesetInfo ruleset, int variant, SimultaneousBindingMode unique)
 {
     InternalChild = KeyBindingContainer = CreateKeyBindingContainer(ruleset, variant, unique);
 }
Exemple #13
0
 public RulesetKeyBindingContainer(RulesetInfo ruleset, int variant, SimultaneousBindingMode unique)
     : base(ruleset, variant, unique)
 {
 }
Exemple #14
0
 public TestInputManager(SimultaneousBindingMode concurrencyMode = SimultaneousBindingMode.None) : base(concurrencyMode)
 {
 }
Exemple #15
0
 /// <summary>
 /// Create a new instance.
 /// </summary>
 /// <param name="ruleset">A reference to identify the current <see cref="Ruleset"/>. Used to lookup mappings. Null for global mappings.</param>
 /// <param name="variant">An optional variant for the specified <see cref="Ruleset"/>. Used when a ruleset has more than one possible keyboard layouts.</param>
 /// <param name="simultaneousMode">Specify how to deal with multiple matches of <see cref="KeyCombination"/>s and <see cref="T"/>s.</param>
 protected DatabasedKeyBindingInputManager(RulesetInfo ruleset = null, int?variant = null, SimultaneousBindingMode simultaneousMode = SimultaneousBindingMode.None)
     : base(simultaneousMode)
 {
     this.ruleset = ruleset;
     this.variant = variant;
 }
Exemple #16
0
 protected NeuralInputContainer(SimultaneousBindingMode bindingMode = SimultaneousBindingMode.Unique) : base(bindingMode)
 {
 }
 public GaleKeyBindingContainer(KeyCombinationMatchingMode keyCombinationMatchingMode = KeyCombinationMatchingMode.Any,
                                SimultaneousBindingMode simultaneousBindingMode       = SimultaneousBindingMode.All) : base(simultaneousBindingMode, keyCombinationMatchingMode)
 {
 }
 protected override KeyBindingContainer <ManiaAction> CreateKeyBindingContainer(RulesetInfo ruleset, int variant, SimultaneousBindingMode unique)
 => new LocalKeyBindingContainer(ruleset, variant, unique);
Exemple #19
0
 protected virtual RulesetKeyBindingContainer CreateKeyBindingContainer(RulesetInfo ruleset, int variant, SimultaneousBindingMode unique)
 => new RulesetKeyBindingContainer(ruleset, variant, unique);
Exemple #20
0
 /// <summary>
 /// Create a new instance.
 /// </summary>
 /// <param name="simultaneousMode">Specify how to deal with multiple matches of <see cref="KeyCombination"/>s and <see cref="T"/>s.</param>
 protected KeyBindingInputManager(SimultaneousBindingMode simultaneousMode = SimultaneousBindingMode.None)
 {
     this.simultaneousMode = simultaneousMode;
 }
 public FileDialogActionContainer(KeyCombinationMatchingMode keyCombinationMatchingMode = Exact, SimultaneousBindingMode simultaneousBindingMode = All)
     : base(simultaneousBindingMode, keyCombinationMatchingMode)
 {
 }
Exemple #22
0
 public GlobalActionContainer(KeyCombinationMatchingMode keyCombinationMatchingMode = KeyCombinationMatchingMode.Exact, SimultaneousBindingMode simultaneousBindingMode = SimultaneousBindingMode.All)
     : base(simultaneousBindingMode, keyCombinationMatchingMode)
 {
 }
Exemple #23
0
 protected override KeyBindingContainer <TestAction> CreateKeyBindingContainer(RulesetInfo ruleset, int variant, SimultaneousBindingMode unique)
 => new TestKeyBindingContainer();
        /// <summary>
        /// Create a new instance.
        /// </summary>
        /// <param name="simultaneousMode">Specify how to deal with multiple matches of <see cref="KeyCombination"/>s and <see cref="T"/>s.</param>
        protected KeyBindingContainer(SimultaneousBindingMode simultaneousMode = SimultaneousBindingMode.None)
        {
            RelativeSizeAxes = Axes.Both;

            this.simultaneousMode = simultaneousMode;
        }
Exemple #25
0
        /// <summary>
        /// Create a new instance.
        /// </summary>
        /// <param name="ruleset">A reference to identify the current <see cref="Ruleset"/>. Used to lookup mappings. Null for global mappings.</param>
        /// <param name="variant">An optional variant for the specified <see cref="Ruleset"/>. Used when a ruleset has more than one possible keyboard layouts.</param>
        /// <param name="simultaneousMode">Specify how to deal with multiple matches of <see cref="KeyCombination"/>s and <see cref="T"/>s.</param>
        public DatabasedKeyBindingContainer(RulesetInfo ruleset = null, int?variant = null, SimultaneousBindingMode simultaneousMode = SimultaneousBindingMode.None)
            : base(simultaneousMode)
        {
            this.ruleset = ruleset;
            this.variant = variant;

            if (ruleset != null && variant == null)
            {
                throw new InvalidOperationException($"{nameof(variant)} can not be null when a non-null {nameof(ruleset)} is provided.");
            }
        }
Exemple #26
0
 protected RulesetInputManager(RulesetInfo ruleset, int variant, SimultaneousBindingMode unique)
 {
     InternalChild = KeyBindingContainer = CreateKeyBindingContainer(ruleset, variant, unique);
     gameplayClock = new GameplayClock(framedClock = new FramedClock(manualClock = new ManualClock()));
 }