Bu derste bir çatı oluşturmaya çalışıyoruz
Önceki derste Vala ve D dilleri ile selam vermiştik.
Bir inşaat yaptığımızı düşünelim. Bu inşaatın temellerini atmamız ve hafriyat çalışmalarını yapmamız gerekir.
Bu derste de, Allah'ın izni ile Vala ve D dilleri ile bir uygulamanın temelini nasıl yazabiliriz ona bakmaya çalışalım.
İlk önce D örneğine bakalım.
import gio.Application : Uygulamamız = Application;
import gtk.Application;
import gtk.ApplicationWindow;
import gtk.Label;
class Ocak : ApplicationWindow
{
this (Application uygulama)
{
super(uygulama);
setTitle("Çay");
setDefaultSize(800, 600);
add (new Label("Çayı ocağa koy"));
}
}
class Uygulama : Application
{
this()
{
super("cayi.ocaga.koy", GApplicationFlags.FLAGS_NONE);
pencereOluştur();
}
void pencereOluştur()
{
this.addOnActivate(delegate void(Uygulamamız uygulamamız)
{
auto pencere = new Ocak(this);
pencere.showAll();
});
}
}
int main (string[] çorbalar)
{
auto uygulama = new Uygulama();
return uygulama.run(çorbalar);
}
Vala örneğimiz ise şu şekildedir.
class Ocak : Gtk.ApplicationWindow
{
public Ocak(Uygulama uygulama)
{
Object(application:uygulama, title:"Çay");
set_default_size(800, 600);
add(new Gtk.Label("Çayı ocaktan al"));
}
}
class Uygulama : Gtk.Application
{
public Uygulama()
{
Object (application_id: "cayi.ocaktan.al");
}
protected override void activate()
{
var pencere = new Ocak(this);
pencere.show_all();
}
}
int main (string[] corbalar)
{
Uygulama uygulama = new Uygulama();
return uygulama.run(corbalar);
}
Yorumlar