Beispiel #1
0
 //============================================================
 // <T>测试点击信息。</T>
 //============================================================
 public SUiTestArgs TestPoint(int x, int y, SUiTestArgs args = null)
 {
     if (args == null)
     {
         args = new SUiTestArgs();
     }
     args.Point.Set(x, y);
     _designFrame.Test(args);
     return(args);
 }
Beispiel #2
0
        //============================================================
        // <T>开始设计。</T>
        //
        // @param x 横坐标
        // @param y 纵坐标
        // @param modeEnable 模式切换
        // @param appendMode 追加模式
        // @param testArgs 测试参数
        //============================================================
        public void DesignBegin(int x, int y, bool modeEnable, bool appendMode, SUiTestArgs testArgs = null)
        {
            FUiControl focusControl = _selection.FocusControl;

            // 设置落点
            _mouseDownPoint.Set(x, y);
            // 更新游标
            UpdateCursor(x, y);
            // 设计模式
            switch ((ERcAlign)_aideAlignCd)
            {
            case ERcAlign.Center:
                if (modeEnable)
                {
                    _designMode = EUiDesignMode.Move;
                    _selection.BoundsStore();
                }
                break;

            case ERcAlign.Left:
            case ERcAlign.Right:
            case ERcAlign.Top:
            case ERcAlign.Bottom:
            case ERcAlign.LeftTop:
            case ERcAlign.RightBottom:
            case ERcAlign.RightTop:
            case ERcAlign.LeftBottom:
                if (modeEnable)
                {
                    _designMode = EUiDesignMode.Size;
                    _selection.BoundsStore();
                }
                break;

            case ERcAlign.None:
                _designMode = EUiDesignMode.None;
                // 选择控件
                SUiTestArgs args          = TestPoint(x, y, testArgs);
                FUiControl  selectControl = args.Control;
                if (appendMode && (selectControl != null) && _selection.HasSelectControl())
                {
                    // 追加模式下,只能增加同父亲的对象
                    if (selectControl.Parent == focusControl.Parent)
                    {
                        _selection.AddSelectControl(selectControl);
                    }
                }
                else
                {
                    _selection.FocusControl = selectControl;
                }
                break;
            }
        }
Beispiel #3
0
        //============================================================
        // <T>测试处理。</T>
        //
        // @param args 参数
        //============================================================
        public override void Test(SUiTestArgs args)
        {
            // 检查有效性
            if (!PageControlResource.OptionValid)
            {
                return;
            }
            // 开始测试
            bool result = OnTest(args);

            // 子控件测试
            if (result)
            {
                if (_activePage != null)
                {
                    // 测试分页
                    _activePage.Test(args);
                    // 绘制节点
                    if (_components != null)
                    {
                        foreach (FUiComponent componment in _components)
                        {
                            FUiControl control = componment as FUiControl;
                            if (control == null)
                            {
                                continue;
                            }
                            if (control is FUiPage)
                            {
                                continue;
                            }
                            control.Test(args);
                        }
                    }
                }
            }
        }