Exemplo n.º 1
0
        public static void Main(string[] args)
        {
            IDictionaryParser jsonParser       = new JsonFileParser();
            ISettingsProvider settingsProvider = new FileSettingsProvider(jsonParser, SettingsFilePath);
            ISettings         settings         = settingsProvider.GetSettings();
            IDrawManager      drawManager      = new ConsoleDrawManager();
            IKeyboardManager  keyboardManager  = new KeyboardManager();
            IPhraseProvider   phraseProvider   = new PhraseProvider(jsonParser, settings.Language);

            IObjectDrawer canvasDrawer         = new CanvasDrawer(drawManager);
            IObjectDrawer gooseDrawer          = new GooseDrawer(drawManager);
            IObjectDrawer dotDrawer            = new DotDrawer(drawManager, settings.DotXOffset, settings.DotYOffset);
            IObjectDrawer verticalLineDrawer   = new VerticalLineDrawer(drawManager, settings.VerticalLineXOffsetPercent);
            IObjectDrawer horizontalLineDrawer = new HorizontalLineDrawer(drawManager, settings.HorizontalLineYOffsetPercent);
            IBoard        board = settings.Board;

            drawManager.Initialize();
            phraseProvider.Initialize();

            IConsoleDrawer consoleDrawer = new ConsoleDrawer(
                drawManager,
                keyboardManager,
                phraseProvider,
                canvasDrawer,
                dotDrawer,
                verticalLineDrawer,
                horizontalLineDrawer,
                gooseDrawer,
                board);

            consoleDrawer.Run();
        }
Exemplo n.º 2
0
        public void TestCanvasDrawer()
        {
            var canvasDrawer = new CanvasDrawer();
            var target       = new PrivateObject(canvasDrawer);

            Assert.IsNotNull(target.GetFieldOrProperty(MEMBER_VARIABLE_NAME_SHAPE_DRAWERS_MANAGER));
        }
        public void Initialize()
        {
            _canvasManager = new CanvasManager();
            _target        = new PrivateObject(_canvasManager);
            CanvasDrawer canvasDrawer = ( CanvasDrawer )_target.GetFieldOrProperty(MEMBER_VARIABLE_NAME_CANVAS_DRAWER);

            _canvasDrawerTarget = new PrivateObject(canvasDrawer);
        }
 public CanvasDrawerPointerState(CanvasDrawer canvasDrawerData)
 {
     if (canvasDrawerData == null)
     {
         throw new ArgumentNullException(Definitions.ERROR_CANVAS_DRAWER_IS_NULL);
     }
     _canvasDrawer = canvasDrawerData;
 }
Exemplo n.º 5
0
 public void Initialize()
 {
     _canvasDrawer        = new CanvasDrawer();
     _target              = new PrivateObject(_canvasDrawer);
     _currentState        = new CanvasDrawerStateMock();
     _shapeDrawersManager = new ShapeDrawersManagerMock();
     _target.SetFieldOrProperty(MEMBER_VARIABLE_NAME_CURRENT_STATE, _currentState);
     _target.SetFieldOrProperty(MEMBER_VARIABLE_NAME_SHAPE_DRAWERS_MANAGER, _shapeDrawersManager);
 }
Exemplo n.º 6
0
        public void TestCanvasDrawer()
        {
            Assert.ThrowsException <ArgumentNullException>(() => new CanvasDrawer(null));
            var commandsManager = new CommandsManagerMock();
            var canvasDrawer    = new CanvasDrawer(commandsManager);
            var target          = new PrivateObject(canvasDrawer);

            Assert.AreEqual(target.GetFieldOrProperty(MEMBER_VARIABLE_NAME_COMMANDS_MANAGER), commandsManager);
            Assert.IsNotNull(target.GetFieldOrProperty(MEMBER_VARIABLE_NAME_CANVAS_SHAPE_DRAWERS_HELPER));
        }
Exemplo n.º 7
0
 public void Initialize()
 {
     _commandsManager          = new CommandsManagerMock();
     _canvasDrawer             = new CanvasDrawer(_commandsManager);
     _target                   = new PrivateObject(_canvasDrawer);
     _currentState             = new CanvasDrawerStateMock();
     _canvasShapeDrawersHelper = new CanvasShapeDrawersHelperMock();
     _target.SetFieldOrProperty(MEMBER_VARIABLE_NAME_CURRENT_STATE, _currentState);
     _target.SetFieldOrProperty(MEMBER_VARIABLE_NAME_CANVAS_SHAPE_DRAWERS_HELPER, _canvasShapeDrawersHelper);
 }
Exemplo n.º 8
0
    private void OnPaint(object sender, PaintEventArgs e)
    {
        Drawer drawer = new CanvasDrawer(e.Graphics);

        // Draw all the shapes
        foreach (Shape shape in shapes)
        {
            shape.Draw(drawer);
        }
    }
Exemplo n.º 9
0
 public CanvasDrawerDrawingState(CanvasDrawer canvasDrawerData, Point currentDrawingShapeDrawingStartingPointData)
 {
     if (canvasDrawerData == null)
     {
         throw new ArgumentNullException(Definitions.ERROR_CANVAS_DRAWER_IS_NULL);
     }
     if (currentDrawingShapeDrawingStartingPointData == null)
     {
         throw new ArgumentNullException(ERROR_CURRENT_DRAWING_SHAPE_DRAWING_STARTING_POINT_IS_NULL);
     }
     _canvasDrawer = canvasDrawerData;
     _currentDrawingShapeDrawingStartingPoint = currentDrawingShapeDrawingStartingPointData;
     _currentDrawingShapeHintShapeDrawer      = ShapeDrawerFactory.CreateShapeDrawer(_currentDrawingShapeDrawingStartingPoint, _currentDrawingShapeDrawingStartingPoint, _canvasDrawer.CurrentShapeDrawerType);
 }
Exemplo n.º 10
0
 public CanvasDrawerResizingState(CanvasDrawer canvasDrawerData, ShapeDrawer currentResizingShapeShapeDrawerData)
 {
     if (canvasDrawerData == null)
     {
         throw new ArgumentNullException(Definitions.ERROR_CANVAS_DRAWER_IS_NULL);
     }
     if (currentResizingShapeShapeDrawerData == null)
     {
         throw new ArgumentNullException(ERROR_CURRENT_RESIZING_SHAPE_SHAPE_DRAWER_IS_NULL);
     }
     _canvasDrawer = canvasDrawerData;
     _currentResizingShapeShapeDrawer           = currentResizingShapeShapeDrawerData;
     _currentResizingShapeOldDrawingEndingPoint = _currentResizingShapeShapeDrawer.DrawingEndingPoint;
 }
Exemplo n.º 11
0
        ContourShape oneShelfBoxContour;    //书架正视图的外部轮廓

        //List<ShelfShape> shelfMapShelfList; //一个书库俯视图中所有书柜的列表
        //DoorShape shelfMapDoor;             //一个书库门的位置
        //ContourShape shelfMapContour;       //一个书库的外部轮廓
        //RouteShape shelfMapRoute;           //取书的路径列表

        public DrawMapService(IUnityContainer container)
        {
            this.container       = container;
            this.eventAggregator = container.Resolve <IEventAggregator>();
            //初始化其他变量
            this.oneShelfDrawer     = new CanvasDrawer();
            this.libraryShelfDrawer = new CanvasDrawer();
            //初始化各种图形参数,先初始化一个值,不管是否有意义,以免在后续引用中出错。
            this.oneShelfBoxList    = new List <ShelfShape>();
            this.oneShelfBoxContour = new ContourShape(new List <Point>());
            //this.shelfMapShelfList = new List<ShelfShape>();
            //this.shelfMapDoor = new DoorShape(new Point(0,0),new Point(0,0));
            //this.shelfMapContour = new ContourShape(new List<Point>());
            //this.shelfMapRoute = new RouteShape(new List<Point>());
            initVariableValue();
        }
Exemplo n.º 12
0
        public void LoadCan(int x, int y)
        {
            this.x = x;
            this.y = y;

            Can.Get.Children.Clear();

            var lines = CanvasDrawer.DrawGrid(Raster, x, y);

            foreach (var line in lines)
            {
                Can.Get.Children.Add(line);
            }

            DrawShapes();

            Can.Get.Children.Add(X);

            if (rectangle != null)
            {
                Can.Get.Children.Add(rectangle);
            }

            if (!loaded)
            {
                Can.Get.MouseLeftButtonDown += (a, b) =>
                {
                    if (ClickMode == CLICK_MODE.SELECT_AREA ||
                        ClickMode == CLICK_MODE.MOVE ||
                        ClickMode == CLICK_MODE.RESIZE)
                    {
                        if (!isStarted)
                        {
                            startPosition = b.GetPosition(Can.Get);
                        }
                        isStarted = true;
                    }
                    else if (ClickMode == CLICK_MODE.SELECT_SINGLE ||
                             ClickMode == CLICK_MODE.TEXTURE)
                    {
                        select(b);
                    }
                    else if (ClickMode == CLICK_MODE.NEW_CUBE ||
                             ClickMode == CLICK_MODE.NEW_SPHERE)
                    {
                        if (!isStarted)
                        {
                            startPosition = b.GetPosition(Can.Get);
                        }
                        isStarted = true;
                    }
                    else if (ClickMode == CLICK_MODE.NEW_BONE)
                    {
                        var posi = b.GetPosition(Can.Get);
                        BoneAction(xyz, Raster, (int)posi.X, (int)posi.Y);
                    }
                };

                Can.Get.MouseMove += (a, b) =>
                {
                    if (isStarted)
                    {
                        if (ClickMode == CLICK_MODE.SELECT_AREA)
                        {
                            selectArea(b);
                        }
                        else if (ClickMode == CLICK_MODE.NEW_CUBE ||
                                 ClickMode == CLICK_MODE.NEW_SPHERE)
                        {
                            cube(b);
                        }
                        else if (ClickMode == CLICK_MODE.MOVE)
                        {
                            move(b);
                        }
                        else if (ClickMode == CLICK_MODE.RESIZE)
                        {
                            resize(b);
                        }
                    }
                };

                Can.Get.MouseRightButtonDown += (a, b) =>
                {
                    lastPoint = b.GetPosition(Can.Get);
                    var posi = System.Windows.Forms.Control.MousePosition;
                    ViewManager.ShowView(typeof(EditorMenu), this, posi.X - 10, posi.Y - 10);
                };

                loaded = true;
                LoadedAction(xyz);
            }
        }
Exemplo n.º 13
0
 public void Initialize()
 {
     _canvasDrawer = new CanvasDrawer();
     _target       = new PrivateObject(_canvasDrawer);
 }
Exemplo n.º 14
0
    private void OnPaint(object sender, PaintEventArgs e)
    {
        CanvasDrawer oa = new CanvasDrawer();
        oa.Canvas = e.Graphics;

        // Draw all the shapes
        foreach (Shape shape in shapes)
        {
            shape.OutputApi = oa;
            shape.Draw();
        }
    }