示例#1
0
		private void CreateButton(HAnchor hAnchor, VAnchor vAnchor)
		{
			Button anchorButton = new Button(hAnchor.ToString() + " " + vAnchor.ToString());
			anchorButton.HAnchor = hAnchor;
			anchorButton.VAnchor = vAnchor;
			anchorButton.Margin = new BorderDouble(offset);
			AddChild(anchorButton);
		}
        private void CreateButton(HAnchor hAnchor, VAnchor vAnchor)
        {
            Button anchorButton = new Button(hAnchor.ToString() + " " + vAnchor.ToString());

            anchorButton.HAnchor = hAnchor;
            anchorButton.VAnchor = vAnchor;
            anchorButton.Margin  = new BorderDouble(offset);
            AddChild(anchorButton);
        }
示例#3
0
        public FlowLayoutWidget(UI.FlowDirection dirrection = UI.FlowDirection.LeftToRight,
                                HAnchor hAnchor             = HAnchor.FitToChildren, VAnchor vAnchor = VAnchor.FitToChildren)
            : base(hAnchor, vAnchor)
        {
            Padding = DefaultPadding;
            Margin  = DefaultMargin;

            LayoutEngine = new LayoutEngineFlow(dirrection);
        }
示例#4
0
		private void CreateButton(HAnchor hAnchor, VAnchor vAnchor)
		{
			Button anchorButton = new Button(hAnchor.ToString() + " - " + vAnchor.ToString());
			anchorButton.BackgroundColor = RGBA_Bytes.Red;
			anchorButton.HAnchor = hAnchor;
			anchorButton.VAnchor = vAnchor;
			anchorButton.Margin = new BorderDouble(offset);
			AddChild(anchorButton);
		}
示例#5
0
        public FlowLayoutWidget(UI.FlowDirection dirrection = UI.FlowDirection.LeftToRight, 
            HAnchor hAnchor = HAnchor.FitToChildren, VAnchor vAnchor = VAnchor.FitToChildren)
            : base(hAnchor, vAnchor)
        {
            Padding = DefaultPadding;
            Margin = DefaultMargin;

            LayoutEngine = new LayoutEngineFlow(dirrection);
        }
示例#6
0
        private void CreateButton(HAnchor hAnchor, VAnchor vAnchor)
        {
            Button anchorButton = new Button(hAnchor.ToString() + " - " + vAnchor.ToString());

            anchorButton.BackgroundColor = RGBA_Bytes.Red;
            anchorButton.HAnchor         = hAnchor;
            anchorButton.VAnchor         = vAnchor;
            anchorButton.Margin          = new BorderDouble(offset);
            AddChild(anchorButton);
        }
示例#7
0
        static void SetRt(RectTransform rt, HAnchor horizontal, VAnchor vertical, TextAnchor pivot, Vector2 pos, Vector2 sizeDelta)
        {
            float ah = (int)horizontal * 0.5f;
            float av = (int)vertical * 0.5f;

            rt.pivot            = new Vector2(((int)pivot % 3) * 0.5f, (2 - (int)pivot / 3) * 0.5f);
            rt.anchorMin        = new Vector2(ah < 0 ? 0 : ah, av < 0 ? 0 : av);
            rt.anchorMax        = new Vector2(ah < 0 ? 1 : ah, av < 0 ? 1 : av);
            rt.anchoredPosition = pos;
            rt.sizeDelta        = sizeDelta;
        }
示例#8
0
        private void DoShowSoftwareKeyboard(object sender, EventArgs e)
        {
            CheckMouseCaptureStates();

            hadFocusWidget = sender as TextEditWidget;
            // if we are not currently hooked up
            if (contentOffsetHolder == null ||
                contentOffsetHolder.Children.Count == 0)
            {
                content.Invalidated += content_Invalidated;
                RemoveChild(content);
                contentOffsetHolder = new GuiWidget(Width, Height);
                contentOffsetHolder.AddChild(content);

                // remember where we were
                oldVAnchor = content.VAnchor;
                oldOrigin  = content.OriginRelativeParent;
                if (hadFocusWidget != null)
                {
                    // test if the text widget is visible
                    RectangleDouble textWidgetScreenBounds = TextWidgetScreenBounds();
                    int             topOfKeyboard          = (int)keyboard.LocalBounds.Height;
                    if (textWidgetScreenBounds.Bottom < topOfKeyboard)
                    {
                        // make sure the screen is not resizing vertically
                        content.VAnchor = VAnchor.AbsolutePosition;
                        // move the screen up so we can see the bottom of the text widget
                        content.OriginRelativeParent = new Vector2(0, topOfKeyboard - textWidgetScreenBounds.Bottom + 3);
                    }
                }
            }

            if (keyboard != null &&
                !keyboard.Visible)
            {
                MouseEventArgs upMouseEvent = e as MouseEventArgs;
                if (lastMouseDownEvent != null)
                {
                    // The onfocus that put us here had a mouse down event that we want to unwind if using our soft keybeard.
                    CheckMouseCaptureStates();
                    content.OnMouseUp(lastMouseDownEvent);
                    CheckMouseCaptureStates();
                }
                keyboard.SetFocusWidget(hadFocusWidget);
                CheckMouseCaptureStates();
                keyboard.Visible = true;
                CheckMouseCaptureStates();
            }
            CheckMouseCaptureStates();

            KeyboardActive = true;
        }
示例#9
0
        private void EnsureEditControlIsVisible(object sender, EventArgs e)
        {
            hadFocusWidget = sender as TextEditWidget;
            // remember where we were
            oldVAnchor = content.VAnchor;
            oldOrigin  = content.OriginRelativeParent;

            // test if the text widget is visible
            RectangleDouble textWidgetScreenBounds = TextWidgetScreenBounds();
            int             topOfKeyboard          = deviceKeyboardHeight;

            if (textWidgetScreenBounds.Bottom < topOfKeyboard)
            {
                // make sure the screen is not resizing vertically
                content.VAnchor = VAnchor.AbsolutePosition;
                // move the screen up so we can see the bottom of the text widget
                content.OriginRelativeParent = new Vector2(0, topOfKeyboard - textWidgetScreenBounds.Bottom + 10);
            }
        }
示例#10
0
		private void EnsureEditControlIsVisible(object sender, EventArgs e)
		{
			hadFocusWidget = sender as TextEditWidget;
			// remember where we were
			oldVAnchor = content.VAnchor;
			oldOrigin = content.OriginRelativeParent;

			// test if the text widget is visible
			RectangleDouble textWidgetScreenBounds = TextWidgetScreenBounds();
			int topOfKeyboard = KeyboardHeight;
			if (textWidgetScreenBounds.Bottom < topOfKeyboard)
			{
				// make sure the screen is not resizing vertically
				content.VAnchor = VAnchor.AbsolutePosition;
				// move the screen up so we can see the bottom of the text widget
				content.OriginRelativeParent = new Vector2(0, topOfKeyboard - textWidgetScreenBounds.Bottom + 10);
			}
		}
示例#11
0
		private void DoShowSoftwareKeyboard(object sender, EventArgs e)
		{
			CheckMouseCaptureStates();

			hadFocusWidget = sender as TextEditWidget;
			// if we are not currently hooked up
			if (contentOffsetHolder == null
				|| contentOffsetHolder.Children.Count == 0)
			{
				content.Invalidated += content_Invalidated;
				RemoveChild(content);
				contentOffsetHolder = new GuiWidget(Width, Height);
				contentOffsetHolder.AddChild(content);

				// remember where we were
				oldVAnchor = content.VAnchor;
				oldOrigin = content.OriginRelativeParent;
				if (hadFocusWidget != null)
				{
					// test if the text widget is visible
					RectangleDouble textWidgetScreenBounds = TextWidgetScreenBounds();
					int topOfKeyboard = (int)keyboard.LocalBounds.Height;
					if (textWidgetScreenBounds.Bottom < topOfKeyboard)
					{
						// make sure the screen is not resizing vertically
						content.VAnchor = VAnchor.AbsolutePosition;
						// move the screen up so we can see the bottom of the text widget
						content.OriginRelativeParent = new Vector2(0, topOfKeyboard - textWidgetScreenBounds.Bottom + 3);
					}
				}
			}

			if (keyboard != null
				&& !keyboard.Visible)
			{
				MouseEventArgs upMouseEvent = e as MouseEventArgs;
				if (lastMouseDownEvent != null)
				{
					// The onfocus that put us here had a mouse down event that we want to unwind if using our soft keybeard.
					CheckMouseCaptureStates();
					content.OnMouseUp(lastMouseDownEvent);
					CheckMouseCaptureStates();
				}
				keyboard.SetFocusWidget(hadFocusWidget);
				CheckMouseCaptureStates();
				keyboard.Visible = true;
				CheckMouseCaptureStates();
			}
			CheckMouseCaptureStates();

		}
		public Cover(HAnchor hAnchor = HAnchor.AbsolutePosition, VAnchor vAnchor = VAnchor.AbsolutePosition)
			: base(hAnchor, vAnchor)
		{
		}
示例#13
0
 public FlowLayoutWidget(FlowDirection direction = FlowDirection.LeftToRight, HAnchor hAnchor = HAnchor.FitToChildren, VAnchor vAnchor = VAnchor.FitToChildren)
     : base(hAnchor, vAnchor)
 {
     layoutEngine = new LayoutEngineFlow(direction);
     LayoutEngine = layoutEngine;
 }
 public Cover(HAnchor hAnchor = HAnchor.None, VAnchor vAnchor = VAnchor.None)
     : base(hAnchor, vAnchor)
 {
 }
示例#15
0
		public LayoutPanel(HAnchor hAnchor = UI.HAnchor.AbsolutePosition, VAnchor vAnchor = UI.VAnchor.AbsolutePosition)
			: base(hAnchor, vAnchor)
		{
			Padding = DefaultPadding;
			Margin = DefaultMargin;
		}
示例#16
0
 public LayoutPanel(HAnchor hAnchor = UI.HAnchor.None, VAnchor vAnchor = UI.VAnchor.None)
     : base(hAnchor, vAnchor)
 {
     Padding = DefaultPadding;
     Margin = DefaultMargin;
 }
示例#17
0
 public Cover(HAnchor hAnchor = HAnchor.AbsolutePosition, VAnchor vAnchor = VAnchor.AbsolutePosition)
     : base(hAnchor, vAnchor)
 {
 }
示例#18
0
		public bool VAnchorIsSet(VAnchor testFlags)
		{
			return (VAnchor & testFlags) == testFlags;
		}
示例#19
0
		public void AnchorCenter()
		{
			VAnchor = VAnchor.ParentCenter;
			HAnchor = HAnchor.ParentCenter;
		}
示例#20
0
		private GuiWidget CreateLeftToRightMiddleWidget(BorderDouble buttonMargin, double buttonSize, VAnchor vAnchor, RGBA_Bytes color)
		{
			GuiWidget middle = new GuiWidget(buttonSize / 2, buttonSize);
			middle.Margin = buttonMargin;
			middle.HAnchor = HAnchor.ParentLeftRight;
			middle.VAnchor = vAnchor;
			middle.BackgroundColor = color;
			return middle;
		}
示例#21
0
 public LayoutPanel(HAnchor hAnchor = UI.HAnchor.AbsolutePosition, VAnchor vAnchor = UI.VAnchor.AbsolutePosition)
     : base(hAnchor, vAnchor)
 {
     Padding = DefaultPadding;
     Margin  = DefaultMargin;
 }
示例#22
0
		public void AnchorAll()
		{
			VAnchor = VAnchor.ParentBottom | VAnchor.ParentTop;
			HAnchor = HAnchor.ParentLeft | HAnchor.ParentRight;
		}
 public Cover(HAnchor hAnchor = HAnchor.None, VAnchor vAnchor = VAnchor.None)
     : base(hAnchor, vAnchor)
 {
 }
示例#24
0
		public GuiWidget(HAnchor hAnchor = HAnchor.AbsolutePosition, VAnchor vAnchor = VAnchor.AbsolutePosition)
		{
			screenClipping = new ScreenClipping(this);
			children.CollectionChanged += children_CollectionChanged;
			LayoutEngine = new LayoutEngineSimpleAlign();
			HAnchor = hAnchor;
			VAnchor = vAnchor;
		}
示例#25
0
 public LayoutPanel(HAnchor hAnchor = UI.HAnchor.None, VAnchor vAnchor = UI.VAnchor.None)
     : base(hAnchor, vAnchor)
 {
     Padding = DefaultPadding;
     Margin  = DefaultMargin;
 }