public void ScaleEvent(object sender, RoutedEventArgs e)
        {
            MoveScaleRoutedEventArgs argumentos = e as MoveScaleRoutedEventArgs;

            double ScaleX   = argumentos.MyProperty[0][1] - argumentos.MyProperty[1][1];
            double ScaleY   = argumentos.MyProperty[0][0] - argumentos.MyProperty[1][0];
            double nextTop  = argumentos.MyProperty[0][2] - argumentos.MyProperty[1][2];
            double nextLeft = argumentos.MyProperty[0][3] - argumentos.MyProperty[1][3];

            foreach (IContent element in ProgramManager.ActiveScreen.Screen.Elements)
            {
                CanvasContentControl cccElement = (element.CanvasContetControlInstance as CanvasContentControl);
                if (cccElement.IsSelectedCCC == true)
                {
                    //  cccElement.Width = cccElement.ActualWidth + ScaleX;
                    // cccElement.Height = cccElement.ActualHeight + ScaleY;

                    //  cccElement.Height = _scaleChanges[1];
                    ((SimpleTextImageElement)element).elementData.Height = cccElement.ActualHeight + ScaleY;
                    ((SimpleTextImageElement)element).elementData.Width  = cccElement.ActualWidth + ScaleX;


                    Canvas.SetTop(cccElement, Canvas.GetTop(cccElement) + nextTop);
                    Canvas.SetLeft(cccElement, Canvas.GetLeft(cccElement) + nextLeft);
                }
            }
        }
Пример #2
0
        public static void MoveEvent(List <List <double> > argumentos)
        {
            //  MoveRoutedEventArgs argumentos = e as MoveRoutedEventArgs;
            //  Console.WriteLine($" sender {sender}");
            if (argumentos != null)
            {
                double nextTop  = argumentos[0][0] - argumentos[1][0];
                double nextLeft = argumentos[0][1] - argumentos[1][1];

                foreach (IContent element in ProgramManager.ActiveScreen.Screen.Elements)
                {
                    CanvasContentControl cccElement = (element.CanvasContetControlInstance as CanvasContentControl);
                    if (cccElement.IsSelectedCCC == true)
                    {
                        if (ProgramManager.ActiveControl.ActiveControl != element)
                        {
                            Canvas.SetTop(cccElement, Canvas.GetTop(cccElement) + nextTop);
                            Canvas.SetLeft(cccElement, Canvas.GetLeft(cccElement) + nextLeft);
                        }
                    }
                }
                if (ProgramManager.ActiveControl.ActiveControl != null)
                {
                    //   Console.WriteLine($"here 2 {ProgramManager.ActiveControl.ActiveControl.Name}");

                    Canvas.SetTop(ProgramManager.ActiveControl.ActiveControl.CanvasContetControlInstance, Canvas.GetTop(ProgramManager.ActiveControl.ActiveControl.CanvasContetControlInstance) + nextTop);
                    Canvas.SetLeft(ProgramManager.ActiveControl.ActiveControl.CanvasContetControlInstance, Canvas.GetLeft(ProgramManager.ActiveControl.ActiveControl.CanvasContetControlInstance) + nextLeft);
                }
            }
        }
Пример #3
0
        public static SimpleButton LoadDefaultButton(CanvasContentControl _contentControl)
        {
            //Button button = new Button();
            //button.MinHeight = 40;
            //button.MinWidth = 40;
            //button.Name = "btn"+button.GetHashCode().ToString();
            SimpleButton button = new SimpleButton(_contentControl);

            return(button);
        }
        public void RotateEvent(object sender, RoutedEventArgs e)
        {
            RotateRoutedEventArgs argumentos  = e as RotateRoutedEventArgs;
            RotateTransform       rotateFirst = argumentos.MyProperty[0];
            RotateTransform       rotateLast  = argumentos.MyProperty[1];

            foreach (IContent element in ProgramManager.ActiveScreen.Screen.Elements)
            {
                CanvasContentControl cccElement = (element.CanvasContetControlInstance as CanvasContentControl);
                if (cccElement.IsSelectedCCC == true)
                {
                    cccElement.RenderTransform = rotateLast;
                }
            }
        }
        public void RotateFinishEvent(object sender, RoutedEventArgs e)
        {
            RotateRoutedEventArgs argumentos  = e as RotateRoutedEventArgs;
            RotateTransform       rotateFirst = argumentos.MyProperty[1];
            RotateTransform       rotateLast  = argumentos.MyProperty[0];

            foreach (IContent element in ProgramManager.ActiveScreen.Screen.Elements)
            {
                CanvasContentControl cccElement = (element.CanvasContetControlInstance as CanvasContentControl);
                if (cccElement.IsSelectedCCC == true)
                {
                    ICommand rotateCommand = new RotateCommand(cccElement, rotateLast, rotateFirst);
                    CommandManager.AddCommand(rotateCommand);
                }
            }
        }
        public void ScaleFinishEvent(object sender, RoutedEventArgs e)
        {
            MoveScaleRoutedEventArgs argumentos = e as MoveScaleRoutedEventArgs;

            double dy = argumentos.MyProperty[0][2] - argumentos.MyProperty[1][2];
            double dx = argumentos.MyProperty[0][3] - argumentos.MyProperty[1][3];
            double x0;
            double y0;

            double dsy = argumentos.MyProperty[0][0] - argumentos.MyProperty[1][0];
            double dsx = argumentos.MyProperty[0][1] - argumentos.MyProperty[1][1];
            double sx0;
            double sy0;

            foreach (IContent element in ProgramManager.ActiveScreen.Screen.Elements)
            {
                CanvasContentControl cccElement = (element.CanvasContetControlInstance as CanvasContentControl);
                if (cccElement.IsSelectedCCC == true)
                {
                    List <double> previousScale = new List <double>();
                    List <double> nextScale     = new List <double>();

                    previousScale.Clear();
                    nextScale.Clear();

                    y0 = Canvas.GetTop(cccElement) - dy;
                    x0 = Canvas.GetLeft(cccElement) - dx;

                    sy0 = cccElement.ActualHeight - dsy;
                    sx0 = cccElement.ActualWidth - dsx;
                    previousScale.Clear();

                    previousScale.Add(sy0);
                    previousScale.Add(sx0);
                    previousScale.Add(y0);
                    previousScale.Add(x0);

                    nextScale.Add(cccElement.ActualHeight);
                    nextScale.Add(cccElement.ActualWidth);
                    nextScale.Add(Canvas.GetTop(cccElement));
                    nextScale.Add(Canvas.GetLeft(cccElement));

                    ICommand scaleComand = new ScaleElementCommand(cccElement, nextScale, previousScale);
                    CommandManager.AddCommand(scaleComand);
                }
            }
        }
        public InsertButtonCommand(IScreen screen, UserControl canvasContainerControl, double left, double top)
        {
            _screen  = screen;
            _top     = top;
            _left    = left;
            _element = new SimpleTextImageElement();
            _canvasContainerControl = canvasContainerControl;
            _contentControl         = (_element as IContent).CanvasContetControlInstance as CanvasContentControl;

            //_contentControl.Content2SimpleButton = ControlsFactory.LoadDefaultButton(_contentControl);
            // _contentControl.Content2 = _contentControl.Content2SimpleButton.controle;


            _contentControl.MinHeight = 40;
            _contentControl.MinWidth  = 40;
            Execute();
        }
        public void MoveEvent(object sender, RoutedEventArgs e)
        {
            MoveRoutedEventArgs argumentos = e as MoveRoutedEventArgs;

            Console.WriteLine($" sender {sender}");
            if (argumentos.MyProperty != null)
            {
                double nextTop  = argumentos.MyProperty[0][0] - argumentos.MyProperty[1][0];
                double nextLeft = argumentos.MyProperty[0][1] - argumentos.MyProperty[1][1];

                foreach (IContent element in ProgramManager.ActiveScreen.Screen.Elements)
                {
                    CanvasContentControl cccElement = (element.CanvasContetControlInstance as CanvasContentControl);
                    if (cccElement.IsSelectedCCC == true)
                    {
                        Canvas.SetTop(cccElement, Canvas.GetTop(cccElement) + nextTop);
                        Canvas.SetLeft(cccElement, Canvas.GetLeft(cccElement) + nextLeft);
                    }
                }
            }
        }
        public void MoveFinishEvent(object sender, RoutedEventArgs e)
        {
            MoveRoutedEventArgs argumentos = e as MoveRoutedEventArgs;

            if (argumentos.MyProperty != null)
            {
                double dy = argumentos.MyProperty[0][0] - argumentos.MyProperty[1][0];
                double dx = argumentos.MyProperty[0][1] - argumentos.MyProperty[1][1];
                double x0;
                double y0;
                foreach (IContent element in ProgramManager.ActiveScreen.Screen.Elements)
                {
                    CanvasContentControl cccElement = (element.CanvasContetControlInstance as CanvasContentControl);

                    if (cccElement.IsSelectedCCC == true)
                    {
                        y0 = Canvas.GetTop(cccElement) - dy;
                        x0 = Canvas.GetLeft(cccElement) - dx;
                        CommandManager.AddCommand(new MoveCommand(cccElement, Canvas.GetTop(cccElement), Canvas.GetLeft(cccElement), y0, x0));
                    }
                }
            }
        }
        public void MyCanvas_PreviewMouseLeftButtonDown(object sender, MouseButtonEventArgs e)
        {
            DependencyObject     parent;
            CanvasContentControl _MovedElementCCC = e.Source as CanvasContentControl;

            _MovedElement = e.Source as UIElement;
            parent        = VisualTreeHelper.GetParent(_MovedElement);



            if (e.Source == _myCanvas)
            {
                //   Console.WriteLine("here71");
                //  e.Handled = true;
                if (ProgramManager.AddingScreen == false)
                {
                    ProgramManager.ActiveScreen.Screen.UnselectAll();
                }
                //   e.Handled = true;
            }
            else
            {
                // ProgramManager.ActiveControl.ActiveControl =null;

                if (Keyboard.IsKeyDown(Key.LeftShift) || Keyboard.IsKeyDown(Key.RightShift))
                {
                    if (ProgramManager.ActiveScreen.Screen.GetActiveExist())
                    {
                        if (_MovedElementCCC.IsActiveCCC)
                        {
                            _MovedElementCCC.IsActiveCCC = true;
                        }
                    }

                    _MovedElementCCC.IsSelectedCCC = !_MovedElementCCC.IsSelectedCCC;

                    e.Handled = true;
                }
                else if (Keyboard.IsKeyDown(Key.LeftAlt) || Keyboard.IsKeyDown(Key.RightAlt))
                {
                    if (_MovedElementCCC.IsSelectedCCC == true)
                    {
                        if (ProgramManager.ActiveScreen.Screen.ActiveElement != null)
                        {
                            ProgramManager.ActiveScreen.Screen.ActiveElement.CanvasContetControlInstance.IsActiveCCC = false;
                        }


                        ProgramManager.ActiveScreen.Screen.ActiveElement = (SimpleTextImageElement)_MovedElementCCC.IContentFather;
                        _MovedElementCCC.IsActiveCCC = true;
                        //   ProgramManager.uptadePropertyGrid(ProgramManager.ActiveScreen.Screen.ActiveElement.elementData);

                        // Console.WriteLine("heeeeeereeee");
                        InstersecElementManager.update();

                        e.Handled = true;
                    }
                    else
                    {
                        ProgramManager.ActiveScreen.Screen.UnselectAll();
                        _MovedElementCCC.IsSelectedCCC = true;
                        _MovedElementCCC.IsActiveCCC   = true;
                        ProgramManager.ActiveScreen.Screen.ActiveElement = (SimpleTextImageElement)_MovedElementCCC.IContentFather;
                        //   ProgramManager.uptadePropertyGrid(ProgramManager.ActiveScreen.Screen.ActiveElement.elementData);
                        e.Handled = true;
                    }
                }
                else if (_MovedElementCCC.IsSelectedCCC == false)
                {
                    ProgramManager.ActiveScreen.Screen.UnselectAll();
                    _MovedElementCCC.IsSelectedCCC = true;
                    _MovedElementCCC.IsActiveCCC   = true;
                    ProgramManager.ActiveScreen.Screen.ActiveElement = (SimpleTextImageElement)_MovedElementCCC.IContentFather;
                    e.Handled = true;
                }

                _isDown = true;
                _myCanvas.CaptureMouse();
            }

            //ProgramManager.ActiveControl.ActiveControl = _MovedElementCCC.IContentFather;
            //if (e.ClickCount == 2)
            //{
            //    Console.WriteLine($"here73  {_MovedElementCCC.IsSelectedCCC} {_MovedElementCCC.GetHashCode()}");
            //    _MovedElementCCC.IsSelectedCCC = !_MovedElementCCC.IsSelectedCCC;
            //    ProgramManager.ActiveControl.ActiveControl = null;
            //    e.Handled=true;


            //}
            //else
            //{
            //    _isDown = true;
            // _myCanvas.CaptureMouse();
            //}
            //}
            //  Console.WriteLine($" active elementeeeee {ProgramManager.ActiveScreen.Screen.ActiveElement.elementData.Name}");
            ProgramManager.uptadePropertyGrid();
        }