Merhaba arkadaşlar. fabric.js ile bir resim editörü hazırlıyorum. Çözemediğim bir sorun var.
Editörde canvas'a resim ve metin eklenebiliyor, çizim yapılabiliyor. Bunlarda sorun yok. Eklenen objelerin düzenlenmesi için input grupları var (fontSize, bgcolor vs vs).
Üzerinde işlem yapılan obje "selection:updated" edildikten sonra yada "selection:cleared" edildikten sonra bu bahsettiğim özellik inputlarını varsayılan değerlere sıfırlamam gerekiyor. Yeni seçilen yada eklenen objenin özelliklerini de inputlara atıyorum ki düzenlemeye kalındığı yerden devam edilebilsin. Bu yüzden obje "deselect" edilirken sıfırlama yapmam gerekiyor. aksi taktirde yeni eklenen yada seçilen diğer obje bir öncekiyle ("deselect" edilenle) aynı özelliklere sahip oluyor. Bu sıfırlama işlemini de yapıyorum ancak bu sefer de "deselect" edilen objenin özellikleri de varsayılan değerlere sıfırlanıyor.
Tüm bu sıfırlama işlemlerini fabric.js'nin sunduğu events fonksiyonları ile yapıyorum ancak sorunu bir türlü çözemedim.
canvas.on({
'object:added': function(e){
yeni_obje_secildi(e);
},
'selection:updated': function(e){
input_temizle();
yeni_obje_secildi(e);
},
'selection:cleared': function(){
input_temizle();
}
})Kullandığım kod yapısını basitleştirerek yukarıda verdim. Şimdiden herkese teşekkürler. Tüm kod yapısını görmek isteyen arkadaşlara pm ile gönderebilirim
Arkadaşlar sorun çözüldü. Şimdi demeyin hiç uğraşmadan mı yazdın diye. Vallahi 1 haftadır uğraşıyordum. Nasıl çözüldüğüne gelince, yanlış yerde kullanılan bir .trigger('change') yüzünden sorun yaşıyormuşum. Yöneticiler konuyu silebilir. İyi forumlar