//---------------------------------------------------------------------------------------------------------
 /// <summary>
 /// Отпускание кнопки мыши
 /// </summary>
 /// <param name="pos">Позиция курсора в области канвы</param>
 /// <param name="button">Кнопка мыши связанная с данным событием</param>
 //---------------------------------------------------------------------------------------------------------
 public override void OnMouseUp(ref Vector2Df pos, TMouseButton button)
 {
     if (button == TMouseButton.Left && mIsCreateElement)
     {
         if (!XCadManager.CanvasViewer.CreateModeIsAutoCAD)
         {
             EndCreateEllipse(ref pos);
         }
     }
 }
示例#2
0
            //---------------------------------------------------------------------------------------------------------
            /// <summary>
            /// Нажатие кнопки мыши (Начало создание полилинии)
            /// </summary>
            /// <param name="pos">Позиция курсора в области канвы</param>
            /// <param name="button">Кнопка мыши связанная с данным событием</param>
            //---------------------------------------------------------------------------------------------------------
            public override void OnMouseDown(ref Vector2Df pos, TMouseButton button)
            {
                // Создания полилинии
                if (button == TMouseButton.Left && XCadManager.Canvas != null)
                {
                    if (XCadManager.CanvasViewer.CreateModeIsAutoCAD)
                    {
                        if (mIsCreateElement == false)
                        {
                            //mCurrentPolyline = XCadManager.Canvas.PresenterDocument.AddNewElement("ShapePolyline") as CCadShapePolyline;

                            // Если была включена привязка
                            mCurrentPolyline.CreateStartPolyline(XCadManager.CanvasViewer.SnapIsExsisting ? XCadManager.CanvasViewer.SnapPoint : pos);

                            // Начало рисования дуги
                            mIsCreateElement = true;
                            XCadManager.Canvas.SetCursor(TCursor.Cross);
                        }
                        else
                        {
                            EndCreatePolyline(ref pos);
                        }
                    }
                    else
                    {
                        //Debug.Print(mIsEnter.ToString());

                        if (mIsEnter == false)
                        {
                            // Если первая точка
                            if (mCurrentPolyline == null)
                            {
                                //mCurrentPolyline = XCadManager.Canvas.PresenterDocument.AddNewElement("ShapePolyline") as CCadShapePolyline;

                                // Если была включена привязка
                                mCurrentPolyline.CreateStartPolyline(XCadManager.CanvasViewer.SnapIsExsisting ? XCadManager.CanvasViewer.SnapPoint : pos);
                                mCurrentIndex = 1;

                                // Начало рисования дуги
                                mIsCreateElement = true;
                                XCadManager.Canvas.SetCursor(TCursor.Cross);
                            }
                            else
                            {
                                // Добавляем точку
                                // Если была включена привязка
                                mCurrentPolyline.CreateAddPoint(XCadManager.CanvasViewer.SnapIsExsisting ? XCadManager.CanvasViewer.SnapPoint : pos);
                                mCurrentIndex++;
                            }
                        }

                        mIsEnter = false;
                    }
                }
            }
 //---------------------------------------------------------------------------------------------------------
 /// <summary>
 /// Перемещение мыши (Продолжение создание эллипса)
 /// </summary>
 /// <param name="pos">Позиция курсора в области канвы</param>
 /// <param name="button">Кнопка мыши связанная с данным событием</param>
 //---------------------------------------------------------------------------------------------------------
 public override void OnMouseMove(ref Vector2Df pos, TMouseButton button)
 {
     if (mIsCreateElement)
     {
         mCurrentEllipse.CreateContinueRect(ref pos);
     }
     else
     {
         // Если выключен режим привязки
         //if (XCadManager.CanvasViewer.SnapIsEnabled)
         //{
         //	// Перерисовываем канву
         //	XCadManager.Canvas.Update();
         //}
     }
 }
示例#4
0
 //---------------------------------------------------------------------------------------------------------
 /// <summary>
 /// Перемещение мыши (Продолжение создание полилинии)
 /// </summary>
 /// <param name="pos">Позиция курсора в области канвы</param>
 /// <param name="button">Кнопка мыши связанная с данным событием</param>
 //---------------------------------------------------------------------------------------------------------
 public override void OnMouseMove(ref Vector2Df pos, TMouseButton button)
 {
     if (mIsCreateElement)
     {
         mCurrentPolyline.CreateContinuePolyline(ref pos, mCurrentIndex);
     }
     else
     {
         // Если выключен режим привязки
         if (XCadManager.CanvasViewer.SnapIsEnabled)
         {
             // Перерисовываем канву
             //XCadManager.Canvas.Update();
         }
     }
 }
 //---------------------------------------------------------------------------------------------------------
 /// <summary>
 /// Нажатие кнопки мыши (Начало создание эллипса)
 /// </summary>
 /// <param name="pos">Позиция курсора в области канвы</param>
 /// <param name="button">Кнопка мыши связанная с данным событием</param>
 //---------------------------------------------------------------------------------------------------------
 public override void OnMouseDown(ref Vector2Df pos, TMouseButton button)
 {
     // Создания прямоугольника
     if (button == TMouseButton.Left)
     {
         if (XCadManager.CanvasViewer.CreateModeIsAutoCAD)
         {
             if (mIsCreateElement == false)
             {
                 StartCreateEllipse(ref pos);
             }
             else
             {
                 EndCreateEllipse(ref pos);
             }
         }
         else
         {
             StartCreateEllipse(ref pos);
         }
     }
 }
            //---------------------------------------------------------------------------------------------------------
            /// <summary>
            /// Нажатие кнопки мыши (Создание таблицы)
            /// </summary>
            /// <param name="pos">Позиция курсора в области канвы</param>
            /// <param name="button">Кнопка мыши связанная с данным событием</param>
            //---------------------------------------------------------------------------------------------------------
            public override void OnMouseDown(ref Vector2Df pos, TMouseButton button)
            {
                // Создаем таблицу
                mCurrentTable = XCadManager.CreateShape("ShapeTable", "") as CCadShapeTable;

                // Если была включена привязка
                Vector2Df result = XCadManager.CanvasViewer.SnapIsExsisting ? XCadManager.CanvasViewer.SnapPoint : pos;

                mCurrentTable.Location = result;

                // Если есть активный документ то добавляем в него (на канву добавиться автоматически)
                //if (XManager.PresenterDocument != null)
                //{
                //	//XManager.PresenterDocument.AddExistingElement(mCurrentTable);
                //}
                //else
                //{
                //	XManager.Presenter.Elements.Add(mCurrentTable);
                //}

                //XCadManager.Canvas.Update();
            }
示例#7
0
 public bool GetMouseButtonPressed(TMouseButton button) => _active?_inputTracker.GetMouseButtonPressed(button) : false;
示例#8
0
 public bool GetMouseButtonDown(TMouseButton button) => _active?_inputTracker.GetMouseButtonDown(button) : false;
示例#9
0
 public bool GetMouseButtonPressed(TMouseButton button) => _inputTracker.GetMouseButtonPressed(button);
示例#10
0
 public bool GetMouseButtonDown(TMouseButton button) => _inputTracker.GetMouseButtonDown(button);
 //---------------------------------------------------------------------------------------------------------
 /// <summary>
 /// Перемещение мыши
 /// </summary>
 /// <param name="pos">Позиция курсора в области канвы</param>
 /// <param name="button">Кнопка мыши связанная с данным событием</param>
 //---------------------------------------------------------------------------------------------------------
 public override void OnMouseMove(ref Vector2Df pos, TMouseButton button)
 {
 }
示例#12
0
 //---------------------------------------------------------------------------------------------------------
 /// <summary>
 /// Перемещение мыши
 /// </summary>
 /// <param name="pos">Позиция курсора в области канвы</param>
 /// <param name="button">Кнопка мыши связанная с данным событием</param>
 //---------------------------------------------------------------------------------------------------------
 public virtual void OnMouseMove(ref Vector2Df pos, TMouseButton button)
 {
 }