Example #1
0
 private void TextureImg_MouseLeave(object sender, EventArgs e)
 {
     Cursor           = Cursors.Default;
     IsHoveringReisze = false;
     IsResizing       = false;
     TextureImg.Refresh();
 }
Example #2
0
 private void TextureImg_MouseUp(object sender, MouseEventArgs e)
 {
     if (IsResizing)
     {
         //Update the bounds on the object
         if (LstItems.SelectedIndex > -1)
         {
             SetNewSizes(NewSizes);
         }
         IsResizing = false;
         TextureImg.Refresh();
     }
 }
Example #3
0
        private void NUD_ValueChanged(object sender, EventArgs e)
        {
            if (LstItems.SelectedIndex > -1 && !IsResizing)
            {
                Rectangle Rect = new Rectangle();

                Rect.X      = Convert.ToInt32(NUDX.Value);
                Rect.Y      = Convert.ToInt32(NUDY.Value);
                Rect.Width  = Convert.ToInt32(NUDW.Value);
                Rect.Height = Convert.ToInt32(NUDH.Value);

                SetNewSizes(Rect);
                TextureImg.Refresh();
            }
        }
Example #4
0
        private void TextureImg_MouseMove(object sender, MouseEventArgs e)
        {
            if (LstItems.SelectedIndex > -1)
            {
                IDDTexture        Texture = CurrentFile.Textures[LstTextures.SelectedIndex];
                IDDTextureElement Element = Texture.Elements[LstItems.SelectedIndex];

                int X1 = (int)(Element.X1 * Texture.Resolution.Width);
                int Y1 = (int)(Element.Y1 * Texture.Resolution.Height);
                int X2 = (int)(Element.X2 * Texture.Resolution.Width);
                int Y2 = (int)(Element.Y2 * Texture.Resolution.Height);

                if (IsResizing)
                {
                    int DiffX = e.X - ResizeStart.X;
                    int DiffY = e.Y - ResizeStart.Y;

                    if (CurrentCorner == ResizeCorner.None)
                    {
                        int W = X2 - X1;
                        int H = Y2 - Y1;

                        X1 += DiffX;
                        Y1 += DiffY;

                        NewSizes = new Rectangle(X1, Y1, W, H);
                    }
                    else
                    {
                        if ((CurrentCorner & ResizeCorner.Top) != 0)
                        {
                            Y1 = Math.Min(Y1 + DiffY, Y2 - 1);
                        }
                        if ((CurrentCorner & ResizeCorner.Left) != 0)
                        {
                            X1 = Math.Min(X1 + DiffX, X2 - 1);
                        }
                        if ((CurrentCorner & ResizeCorner.Bottom) != 0)
                        {
                            Y2 = Math.Max(Y2 + DiffY, Y1 + 1);
                        }
                        if ((CurrentCorner & ResizeCorner.Right) != 0)
                        {
                            X2 = Math.Max(X2 + DiffX, X1 + 1);
                        }

                        NewSizes = new Rectangle(X1, Y1, X2 - X1, Y2 - Y1);
                    }

                    TextureImg.Refresh();
                }
                else
                {
                    int W = X2 - X1;
                    int H = Y2 - Y1;

                    const int GS  = 12; //Grip size
                    const int GS2 = GS * 2;
                    bool      OldHoveringResize = IsHoveringReisze;
                    IsHoveringReisze = false;
                    CurrentCorner    = ResizeCorner.None;
                    Point P = e.Location;

                    //Diamond
                    CheckIntersection(new Rectangle(X1 + GS, Y1, W - GS2, GS), P, Cursors.SizeNS, ResizeCorner.Top);
                    CheckIntersection(new Rectangle(X1, Y1 + GS, GS, H - GS2), P, Cursors.SizeWE, ResizeCorner.Left);
                    CheckIntersection(new Rectangle(X1 + GS, Y2 - GS, W - GS2, GS), P, Cursors.SizeNS, ResizeCorner.Bottom);
                    CheckIntersection(new Rectangle(X2 - GS, Y1 + GS, GS, H - GS2), P, Cursors.SizeWE, ResizeCorner.Right);

                    //Square
                    CheckIntersection(new Rectangle(X1, Y1, GS, GS), P, Cursors.SizeNWSE, ResizeCorner.TopLeft);
                    CheckIntersection(new Rectangle(X2 - GS, Y1, GS, GS), P, Cursors.SizeNESW, ResizeCorner.TopRight);
                    CheckIntersection(new Rectangle(X1, Y2 - GS, GS, GS), P, Cursors.SizeNESW, ResizeCorner.BottomLeft);
                    CheckIntersection(new Rectangle(X2 - GS, Y2 - GS, GS, GS), P, Cursors.SizeNWSE, ResizeCorner.BottomRight);

                    if (IsHoveringReisze || (IsHoveringReisze != OldHoveringResize))
                    {
                        TextureImg.Refresh();
                    }
                    if (!IsHoveringReisze)
                    {
                        if (new Rectangle(X1, Y1, W, H).Contains(e.Location))
                        {
                            Cursor = Cursors.SizeAll;
                        }
                        else
                        {
                            Cursor = Cursors.Default;
                        }
                    }
                }
            }
        }
Example #5
0
 private void LstItems_SelectedIndexChanged(object sender, EventArgs e)
 {
     TextureImg.Refresh();
 }
Example #6
0
        public void addTexture(TextureImg texImg, float frameTime)
        {
            Texture2D img = null;
            switch (texImg)
            {
                case TextureImg.Null:
                    break;
                case TextureImg.tree1:
                    img = EnvironmentVariable.content.Load<Texture2D>("textures/tree1");
                    break;
                case TextureImg.tree2:
                    img = EnvironmentVariable.content.Load<Texture2D>("textures/tree2");
                    break;
                case TextureImg.tree3:
                    img = EnvironmentVariable.content.Load<Texture2D>("textures/tree3");
                    break;
                case TextureImg.tree4:
                    img = EnvironmentVariable.content.Load<Texture2D>("textures/tree4");
                    break;
                case TextureImg.tree5:
                    img = EnvironmentVariable.content.Load<Texture2D>("textures/tree5");
                    break;
                case TextureImg.tree6:
                    img = EnvironmentVariable.content.Load<Texture2D>("textures/tree6");
                    break;
                case TextureImg.tree7:
                    img = EnvironmentVariable.content.Load<Texture2D>("textures/tree7");
                    break;
                case TextureImg.tree8:
                    img = EnvironmentVariable.content.Load<Texture2D>("textures/tree8");
                    break;
                case TextureImg.tree9:
                    img = EnvironmentVariable.content.Load<Texture2D>("textures/tree9");
                    break;
                case TextureImg.tree10:
                    img = EnvironmentVariable.content.Load<Texture2D>("textures/tree10");
                    break;
                case TextureImg.grass:
                    img = EnvironmentVariable.content.Load<Texture2D>("textures/grass");
                    break;
                case TextureImg.Idle:
                    img = EnvironmentVariable.content.Load<Texture2D>("textures/Idle");
                    break;
                case TextureImg.Run:
                    img = EnvironmentVariable.content.Load<Texture2D>("textures/Run");
                    break;
            }
            if (A_AnimationChar == null)
                A_AnimationChar = new AnimationCharacter();
            if (A_AnimationChar.Animation == null)
            {
                Animation temp = new Animation(img, frameTime, true);
                A_AnimationChar.PlayAnimation(img, frameTime, true);
            }
            else
            {
                A_AnimationChar.Animation.effectPlayer.Texture = img;
                A_AnimationChar.Animation.Texture = img;

                A_AnimationChar.Animation.FrameTime = frameTime;
                A_AnimationChar.update();
            }
        }