PDA

Orijinalini görmek için tıklayınız : PHP-GTK terimler


kurtkuzu
10-11-2007, 23:26 PM
Bu yazıda giris seviyesinde PHP-GTK terimleri hakkında bilgi edinebilirsiniz. 1) PHP-GTK : TERİMLER
PHP-GTK hakkında birşeyler okurken ya da bir yerde konuşulurken duyma ihtimaliniz olan terimler var. Bunlar aslında aşina olduğunuz şeylerin biraz farklı açıdan görünüşü olmakla birlikte PHP-GTK kodlarken algoritmanın kafanızda canlanması için bilmeniz gereken terimlerdir.
Tanımların daha rahat aklınızda kalması için onlara Türkçe karşılıklar buldum. Parantez içinde orijinal isimlerini görebilirsiniz. Fakat ben elimden geldiğince bulduğum karşılıkları kullanacağım.

En dıştan en içe doğru sırayla değinecek olursak;

A. Parçacıklar (Widgets)
Parçacıklar bir GUI uygulama formuna bağlı tüm nesnelere verilen genel bir addır. Düğmeler, kaydırma çubukları, listeler. Bunlara Parçacık diyeceğiz.

Bir Parçacık doğumundan ölümüne 5 adımda ilerler.
Oluşturma ( Yeni bir parçacık doğar. [Nesne tanımlanır] )
Yer belirleme ( Oluşturulan parçacık bir kutuya (container) bağlanır )
Sinyal bağlantısı (Bu parçacığı sinyal bağlantısı ile bir fonksiyona tetikliyoruz. Artık bu Parçacığın görevi fonksyionda ona yüklenen görevi yapmaktır. )
Görüntüleme (Parçacığın ekrana basılması)
Yok etme (Programın kapatılması ile oluşturduğumuz parçacığın yok edilmesi)

B. Kutular (Containers)
Kutular aslında birer parçacıktır . Fakat bunlar programımızın sahip olması gereken parçacıklardır. Diğer parçacıkları saklayan ev görevini üstlenmektedir. Her insanın bir evi olduğu gibi her parçacığın da bir kutusu vardır. Örneğin GtkWindow , GtkFrame ve GtkBox en çok kullanılan kutulardır.
Kutuları program arabiriminizin daha güzel görünmesi için, daha çok kullanın. Bu hem kullanıcının programı anlamasını hem de geliştiricinin daha rahat hareket etmesini sağlar. Bir sistem basit olduğu sürece güvenlidir ve bir o kadar da yenilenebilirdir.
Tüm kutular, GtkContainer adlı kutu sınıfı içinden çağırılır. Bu sınıfa bağlanan tüm parçacıklar ise GtkWidget sınıfına bağlıdırlar.

C. Sinyaller (Signals)
Sinyaller parçacıklarımızın fonksiyonlara nasıl kilitleneceğini bildiren ara tetiklerdir. Örneğin bir düğmenin çıkış sinyalini tek tıklama olarak belirtirsek, düğmeyi taşımaya çalıştığımızda fonksiyonumuz çalışmaz.
Tüm parçacıkların bir kutuya sahip olması gerektiğini yukarıda görmüştük. Sinyaller ise parçacıkların olmazsa olmazlarından değildir. Çünkü bu yapcağımız işe göre değişen bir unsurdur. Örneğin uygulamamıza bir çizgi eklemek istiyoruz; GtkHSeparator bu çizgi için bir sinyale ihtiyacımız yoktur.
Çünkü bunu tıklayarak, veya taşıyarak yaptırabileceğimiz bir iş yoktur.

D. Geriçağrılar (Callbacks)
Bir parçacığımız olsun. Örneğin bir kaydırma çubuğu. Bu kaydırma çubuğunun bir sinyal fonksiyona tetiklendiğini biliyoruz. Peki bu tetiklemenin ardından ne olur?
Kaydırma çubuğu hareket ettirildiğinde tetiklenmiş sinyal bizi istediğimiz fonksiyona yönlendirir. Gelen bir sinyali alıp fonksiyona bağlayan bu yönlendirme yapılarını geriçağrılar olarak adlandırıyoruz. Bir geriçağrı connect komutu ile gerçekleştirilir.


2) PHP-GTK : SINIFLAR
GTK'nın burada anlatamayacağımız kadar çok sınıfı mevcut. Fakat burada örnek olması bağlamında her programda kullanacağımız 5 sınıftan bahsetmek istiyorum. Öncesinde tüm sınıfların ve fonksiyonların ayrıntılı bir şekilde anlatıldığı sayfa bağlantısını vereyim;

http://gtk.php.net/manual/en/

GtkWindow : GtkWindow sınıfı ile yeni bir pencere oluşturursunuz. GtkWindow sınıfına bağlı fonksiyonlardan set_name , set_title_connect , connect ve set_border_width bu sınıfın en çok kullanılan fonksiyonlarıdır. Kullanıcı arabirimine sahip olmak isteyen her uygulama pencere sınıfını çağırmalıdır.

Referans: http://gtk.php.net/manual/en/gtk.gtkwindow.php

GtkFrame() : GtkFrame sınıfı kutu (container) özelliği taşıyan bir parçacık (widget) oluşturmak ve o parçacığa özellikler bildirmek için kodlanmış fonksiyonları içerir.

Referans: http://gtk.php.net/manual/en/gtk.gtkframe.php

GtkLabel() : GtkLabel , etiket olarak kullanabileceğimiz bir parçacık oluşturmak ve bu parçacığa özellikleri bildirmek için kodlanmış fonksiyonları içeren sınıftır.
Eğer etikete giriş verilmezse, boş bir etiket oluşturulmuş olur.

Referans: http://gtk.php.net/manual/en/gtk.gtklabel.php

GtkEntry() : GtkEntry , kullanıcının programa veri girmesi için metin kutusu olarak kullanabileceğimiz bir parçacık oluşturmak ve bu parçacığa özellikleri bildirmek için kodlanmış fonksiyonları içeren sınıftır.

Referans: http://gtk.php.net/manual/en/gtk.gtkentry.php

GtkButton() : Programlama arabirimlerimizde en çok kullandığımız parçacıklardan biri düğmelerdir. GtkButton sınıfı ve sınıfa bağlı fonksiyonlar aracılığıyla kullanıcının üzerine tıklayarak sinyal oluşturacağı parçacıklar (Widgets) oluşturabiliriz. Düğme sınıfında düğmenin sinyal alış özelliklerini değiştirebileceğimiz fonksiyonlara da sahibiz.
Bu fonksiyonlar ile düğmeye pressed , released , clicked gibi davranış sinyalleri yükleyebiliriz.