コード例 #1
0
        /// <summary>
        /// get diff caused by placement according to coordinate
        /// </summary>
        /// <param name="coord"></param>
        /// <returns></returns>
        private int PlacementDif(COORDINATE coord)
        {
            int placementDiff = 0;
            int dx;

            switch (coord)
            {
            case COORDINATE.LEFT:
                placementDiff = coordinator.getPlacementDif(PlacementDim.PLACE_X);
                if (containerRightToLeft)
                {
                    dx             = coordinator.getPlacementDif(PlacementDim.PLACE_DX);
                    placementDiff -= dx;
                }
                break;

            case COORDINATE.RIGHT:
                placementDiff = coordinator.getPlacementDif(PlacementDim.PLACE_X);
                if (!containerRightToLeft)
                {
                    dx             = coordinator.getPlacementDif(PlacementDim.PLACE_DX);
                    placementDiff += dx;
                }
                break;

            case COORDINATE.TOP:
                placementDiff = coordinator.getPlacementDif(PlacementDim.PLACE_Y);
                break;

            case COORDINATE.BOTTOM:
                placementDiff  = coordinator.getPlacementDif(PlacementDim.PLACE_Y);
                placementDiff += coordinator.getPlacementDif(PlacementDim.PLACE_DY);
                break;

            default:
                break;
            }

            return(placementDiff);
        }
コード例 #2
0
ファイル: Line.cs プロジェクト: rinavin/RCJS
        /// <summary>
        /// translate line coordinate according to Axe to table coordinates
        /// </summary>
        /// <param name="coordinate"></param>
        /// <param name="num"></param>
        /// <returns></returns>
        private int translateCoordinate(COORDINATE coordinate, int num)
        {
            if (_coordinator is TableCoordinator)
            {
                switch (coordinate)
                {
                case COORDINATE.LEFT:
                case COORDINATE.RIGHT:
                    num = ((TableCoordinator)_coordinator).transformXToTable(num);
                    break;

                case COORDINATE.TOP:
                case COORDINATE.BOTTOM:
                    num = ((TableCoordinator)_coordinator).transformYToTable(num);
                    break;

                default:
                    break;
                }
            }

            return(LineHelper.translateCoordinate(coordinate, num));
        }
コード例 #3
0
 /// <summary>
 /// translate line coordinate according to Axe to table coordinates
 /// </summary>
 /// <param name="coordinate"></param>
 /// <param name="num"></param>
 /// <returns></returns>
 public int translateCoordinate(COORDINATE coordinate, int num)
 {
     // TODO : handle for TableCoordinator
     return(num + PlacementDif(coordinate));
 }