Pawang Uler

My experience with python programming language

2004/05/18

PyGTK TextBuffer

TextMark :
Untuk menandai suatu posisi di dalam textbuffer.

Iterator dalam TextBuffer tidak didefinisikan sebagai object/class tertentu. Berfungsi sebagai penunjuk (pointer) suatu posisi dalam TextBuffer.
Method insert :
- menggunakan iterator sebagai penunjuk posisi awal suatu string disisipkan ke dalam TextBuffer
- setelah insert, iterator di-invalidasi tetapi oleh default event-handler di ubah nilainya sehingga menunjuk ke posisi akhir setalah proses insert dilakukan.

Bedanya iterator dengan TextMark, iterator berubah setiap kali ada perubahan isi TextBuffer sedangkan TextMark akan tetap menunjuk ke posisi dimana TextMark di-set terakhir walaupun isi TextBuffer berubah.

PyGTK 2 Tutorial

I have a little tutorial about PyGTK 2 in Bahasa Indonesia.

Selamat datang di (wellcome to) : http://www.geocities.com/mige_harimurti/gtk2python

PyGTK TreeIter object

Gimana cara create object gtk.TreeIter di pygtk ?
Saya lihat di source-code pygtk terdapat pygtktreemodel.c dan pygtktreemodel.h.
Sepertinya terlihat kita hanya perlu return node (object) untuk method-method yang resultnya TreeIter.
Dan handler interfacenya yang akan men-set node itu ke private_data dari object TreeIter.
Kalo kita bikin class turunan gtk.GenericTreeModel maka perlu implement beberapa method yang resultnya TreeIter atau menerima parameter dengan tipe gtk.TreeIter. Untuk parameter dengan tipe gtk.TreeIter, parameter dapat kita gunakan seperti halnya object-row. Untuk result dengan tipe gtk.TreeIter maka kita dapat return object-rownya.
TreeeIter == node / row, hanya berlaku di dalam callback function dari implementasi gtk.GenericTreeModel. Di luar itu tetap terlihat sebagai gtk.TreeIter.