public override void Ciz(Graphics cizme)
 {
     if (Yardimci.Sinirdami(X, Y, genislik, uzunluk))
     {
         SX = X;
         SY = Y;
         SG = genislik;
         SU = uzunluk;
     }
     cizme.FillRectangle(color, SX, SY, SG, SU);     //dikdörtgenin her yöne doğru çizilebilmesini sağladım bu yüzden dört farklı çiz metodu var
     if (genislik < 0)
     {
         cizme.FillRectangle(color, SX + SG, SY, -SG, SU);
     }
     if (uzunluk < 0)
     {
         cizme.FillRectangle(color, SX, SY + SU, SG, -SU);
     }
     if (genislik < 0 && uzunluk < 0)
     {
         cizme.FillRectangle(color, SX + SG, SY + SU, -SG, -SU);
     }
     x_ekseni_sonu = SX + SG;
     y_ekseni_sonu = SY + SU;
 }
 public override void Deger_Ata(int ex, int ey)
 {
     if (Yardimci.Sinirdami(X, Y, ex - X, ey - Y))
     {
         genislik = ex - X;
         uzunluk  = ey - Y;
     }
 }
 private void pctrbxResim_MouseUp(object sender, MouseEventArgs e)
 {
     Yardimci.Mouse_Up();
     if (Yardimci.mouse_ == Yardimci.mouse.secmedemi && Yardimci.mouse_down_ == Yardimci.mouse_down.bos)
     {
         pctrbxResim.Cursor = Cursors.Hand;    //görsellik için
     }
 }
 private void btnBeyaz_Click(object sender, EventArgs e)
 {
     Yardimci.renk_ = Yardimci.renk.White;
     Yardimci.Renk_Degisimi();
     if (Yardimci.mouse_ == Yardimci.mouse.secmedemi)
     {
         pctrbxResim.Refresh();
     }
     grpbxRenk.Refresh();
 }
 private void btnKoyuKırmızı_Click(object sender, EventArgs e)
 {
     Yardimci.renk_ = Yardimci.renk.Maroon;
     Yardimci.Renk_Degisimi();
     if (Yardimci.mouse_ == Yardimci.mouse.secmedemi)
     {
         pctrbxResim.Refresh();
     }
     grpbxRenk.Refresh();
 }
//-------------------------------------------------------------------------------------------------------------------------------------------------------------------\\

        private void btnKırmızı_Click(object sender, EventArgs e)
        {
            Yardimci.renk_ = Yardimci.renk.Red;     //rengin hangisi olduğunu seçiyoruz
            Yardimci.Renk_Degisimi();
            if (Yardimci.mouse_ == Yardimci.mouse.secmedemi)
            {
                pctrbxResim.Refresh();
            }
            grpbxRenk.Refresh();
        }
 private void pctrbxResim_MouseMove(object sender, MouseEventArgs e)
 {
     Yardimci.Mouse_Move(e.X, e.Y);
     if (Yardimci.mouse_ == Yardimci.mouse.secmedemi && Yardimci.mouse_down_ == Yardimci.mouse_down.basıldımı && Yardimci.SeciliSekil)
     {
         pctrbxResim.Cursor = Cursors.SizeAll;        //görsellik için
     }
     if (Yardimci.mouse_down_ == Yardimci.mouse_down.ciziyormu || Yardimci.mouse_down_ == Yardimci.mouse_down.basıldımı)
     {
         pctrbxResim.Refresh();
     }
 }
 public override void Ciz(Graphics cizme)
 {
     if (Yardimci.Sinirdami(X, Y, Cap))
     {
         SX = X;
         SY = Y;
         SC = Cap;
     }
     x_ekseni_sonu = SX + SC;
     y_ekseni_sonu = SY + SC;
     cizme.FillEllipse(color, SX - SC / 2, SY - SC / 2, SC + SC / 2, SC + SC / 2);
 }
        public override void Ciz(Graphics cizme)
        {
            if (Yardimci.AUSinirdami(X, Y, Kenar))
            {
                SX = X;
                SY = Y;
                SK = Kenar;
            }
            x_ekseni_sonu = SX + SK;
            y_ekseni_sonu = SY + Convert.ToInt32(SK / 1.2F);
            PointF nokta1 = new PointF(SX, SY - SK / 1.2F);
            PointF nokta2 = new PointF(SX + SK, SY + SK / 1.2F);
            PointF nokta3 = new PointF(SX - SK, SY + SK / 1.2F);

            PointF[] noktalar = { nokta1, nokta2, nokta3 };
            cizme.FillPolygon(color, noktalar);
        }
        public override void Ciz(Graphics cizme)
        {
            if (Yardimci.AUSinirdami(X, Y, Kenar))//altıgene ve üçgene  özel hesap
            {
                SX = X;
                SY = Y;                                              //cisimlerin sınırın içerisinde olduğu sürece o anki konumlarını çizdirmek
                SK = Kenar;                                          //ve sınırın dışına taşdığında en sonki durumlarını çizdirebilmek için kullanıyoruz
            }
            x_ekseni_sonu = SX + SK;                                 //x ve y eksenlerinin son kısımlarını veriyoruz ki böylece kaydederken ve seçerken kolaylık sağlasın
            y_ekseni_sonu = SY + Convert.ToInt32(SK / 1.2F);
            PointF nokta1 = new PointF(SX - SK / 2, SY - SK / 1.2F); //bir altıgen oluşturmak için her bir noktanın birbirine bağlanması gerekiyor
            PointF nokta2 = new PointF(SX + SK / 2, SY - SK / 1.2F);
            PointF nokta3 = new PointF(SX + SK, SY);
            PointF nokta4 = new PointF(SX + SK / 2, SY + SK / 1.2F);
            PointF nokta5 = new PointF(SX - SK / 2, SY + SK / 1.2F);
            PointF nokta6 = new PointF(SX - SK, SY);

            PointF[] noktalar = { nokta1, nokta2, nokta3, nokta4, nokta5, nokta6 };
            cizme.FillPolygon(color, noktalar);
        }
//-------------------------------------------------------------------------------------------------------------------------------------------------------------------\\

        private void pctrbxResim_MouseDown(object sender, MouseEventArgs e)
        {
            Yardimci.Mouse_Down(e.X, e.Y);       //yaptığımız yardımcı statik clasına bilgi gönderiyoruz
            pctrbxResim.Refresh();
        }
 private void grpbxSekil_Paint(object sender, PaintEventArgs e)
 {
     Yardimci.SekilPaint(e);
 }
        }       //yaptığımız seçimler belirgin olsun diye

        private void grpbxRenk_Paint(object sender, PaintEventArgs e)
        {
            Yardimci.RenkPaint(e);
        }
//-------------------------------------------------------------------------------------------------------------------------------------------------------------------\\
        private void grpbxSecim_Paint(object sender, PaintEventArgs e)
        {
            Yardimci.SecimPaint(e);
        }       //yaptığımız seçimler belirgin olsun diye
 private void btnKaydet_Click(object sender, EventArgs e)
 {
     Yardimci.Kaydet();
 }
 private void pctrbxResim_Paint(object sender, PaintEventArgs e)
 {
     Yardimci.Paint(e);
 }
//-------------------------------------------------------------------------------------------------------------------------------------------------------------------\\

        private void btnKayıtAç_Click(object sender, EventArgs e)
        {
            Yardimci.KayıtAç();
            pctrbxResim.Refresh();
            Yardimci.Renk_Degisimi();
        }