Evet kışkırtıcı bir başlık attım 
Aslında yapacağımız olay bir structı nesne gibi kullanmak. Buna benzer bir kodu yıllar önce görmüştüm. O günden bu güne sürekli böyle bir şeyi nasıl yaparım diye araştırdım. Anca bugün çözebildim olayı 
Kodu aşağıda yorum satırıyla beraber veriyorum. Yorumlarda gerekli açıklamaları yaptım.
Bu yazıyla C-3PO nun ne lakası var diyebilirsiniz. C ile resim ararken karşıma bu çıktı, bende boş durmasın dedim
/*
* Sınıfımızı yaratıyoruz
*/
struct _myobject {
// alt alanlar
int a, b;
/*
* Metod
* Burada fonksiyon pointerı tanımlıyoruz
*/
int (*add)(struct _myobject*);
};
// struct ön ekinden kurtuluyoruz
typedef struct _myobject MyObject;
/*
* Asıl işi yapacak fonksiyonu tanımlıyoruz
* MyObject structını parametre olarak alıyor
*/
int realAdd(MyObject* a) {
return a->a + a->b;
}
int main ( void ) {
/*
* Nesnemizi oluşturuyoruz.
* add pointerına fonksiyonu atıyoruz
*/
MyObject mo = {1, 2, realAdd};
printf("A + B = %d\n", mo.
add(&mo
));
return 0;
}
Kodun başına stdio.h headerını eklemekte fayda var. WP sıkıntı çıkarttığı için silmek zorunda kaldım. Kodun düzgün halini burada bulabilirsiniz.
Uzun bir aradan sonra temamı değiştirdim. Önceki temayı çok sevmiştim, hala da seviyorum fakat biraz sıkıldım ondan. Yazı alanı da küçük olunca vazgeçmek kolay oldu 
Yeni temamı daha önce mutlaka görmüşsünüzdür. Çok sık kullanılan temalardan birisi. Hep hoşuma gitmişti kendisi. Kullanınca daha da hoşuma gitti
Gece gece uyku tutmadı var olan bir programı kurcalamaya başladım. Amacım programın sitem çekmecesinden çalışabilir hale getirmekti.
Her şeyi yaptım fakat bir türlü pencereyi gizleyemiyordum
Doküman gtk_window_get_mnemonics_visible () fonksiyonunu kullanmamı söylüyordu, fakat kullandığım gtk sürümünde bu fonksiyon tanımlı değildi(2.18.7). Eski sürüm için olan dokümanı incelediğimde bu işi yapan bir fonksiyon yoktu.
Sistemde kurulu gtk ve python ile bu işi yapabiliyordum. Normal olarak c ile de yapabilmem lazımdı:)
Biraz inceledikten sonra, önce pencereyi gizleyen, ardından boyutunu eski haline getirip sonra tekrar gösteren bir fonksiyon olduğunu fark ettim. Benim istediğim işi yapıyor fakat yanında birde fazlalığı vardı.(gtk_window_reshow_with_initial_size)
İnternette biraz daha araştırıp umudumu kaybedince mecburen kaynak koda baktım.
grep -rHn gtk_window_reshow_with_initial_size *
bu komut bana gtk_window_reshow_with_initial_size fonksiyonun nerelerde olduğunu gösterdi.
Bu fonksiyonunun içine bakınca istediğim kodu hemen buldum
gtk_window_reshow_with_initial_size (GtkWindow *window)
{
GtkWidget *widget;
g_return_if_fail (GTK_IS_WINDOW (window));
widget = GTK_WIDGET (window);
gtk_widget_hide (widget);
gtk_widget_unrealize (widget);
gtk_widget_show (widget);
}
Önce pencereyi widgeta çevirebilme imkanım varmış, böyle basit bir şeyi nasıl bulamadım bilemiyorum.
Daha önce birkaç kez yapmıştım, fakat her seferinde neler yaptığımı unutup acaba olmadı mı diye kuşkulanmıştım. En güzeli böyle bir yere yazıp gerektiğinde kopya çekmek
Öncelikle bloggerda bir blogunuz olduğunu varsayıyorum 
Blooger hesabımıza giriş yapıyoruz.
Şu adımları takip ediyoruz.
Özelleştir -> Ayarlar -> Yayıncılık -> Özel Alan-> Gelişmiş Ayarlara Geçiş Yapın
Buradaki kutuya alan adını yazın.
"Eksik dosya barındırma sistemini mi kullanıyorsunuz?" kısmını olduğu gibi bırakıp, kelime doğrulamayı yapıp ayarları kaydediyoruz.
Bu adımları geçtikten sonra google tarafında yapılacak ayarları tamamlamış oluyoruz.
Alan adınızın bloggera yönlenmesi için CNAME kaydı oluşturmanız gerekiyor. Bunu alan adını aldığınız yerden yapacaksınız.
CNAME kaydına değer olarak ghs.google.com adresini vermelisiniz. Domain firmanızın güncellenme hızına göre alan adının aktif olma süresi değişecektir.
Toplam 2 adımdan oluşuyor. Akılda tutmak kolay ama alan adının yönlenmesi biraz zaman aldığından dolayı insanın içinde bir şüphe oluyor her zaman
Recent Comments