Jonathon McKitrick wrote:

Here is my code.  All of the signal handlers work correctly when I use the
autoconnect(self) call except main_quit, called on the destroy event.  What is
wrong?


#!/usr/bin/env python

import gsettingsdlg
import pygtk; pygtk.require('2.0')
import gtk
import gtk.glade

data = [['1', 'test item', 'description'],
       ['2', 'test item', 'description'],
       ['3', 'test item', 'description'],
       ['4', 'test item', 'description'],
       ['5', 'test item', 'description']]

class MainWindow:
   def __init__(self):
       gladefile = 'glade/accountsgui.glade'
       windowname = 'mainwindow'
       self.wTree = gtk.glade.XML(gladefile, windowname)

d = { 'on_mainwindow_delete_event' : gtk.main_quit,
'on_listviewmain_select_cursor_row' :
self.on_listviewmain_select_cursor_row,
'on_listviewmain_row_activated' :
self.on_listviewmain_row_activated,
'on_listviewmain_cursor_changed' :
self.on_listviewmain_cursor_changed,
}
# self.wTree.signal_autoconnect(self)
self.wTree.signal_autoconnect(d)
self.make_view()
# self.view = self.make_view(liststore)


   def on_mainwindow_delete_event(self, event, param):
       print 'got delete event'
       gtk.main_quit

should be: gtk.main_quit()

def on_mainwindow_destroy(self, *params):
print 'got destroy event'
gtk.main_quit


ditto

# def make_view(self, model):
def make_view(self):


       liststore = gtk.ListStore(str, str, str)
       for item in data:
           iter = liststore.append()
           liststore.set(iter,
                         0, item[0],
                         1, item[1],
                         2, item[2])


view = self.wTree.get_widget('listviewmain')
view.set_model(liststore)
renderer = gtk.CellRendererText()
column = gtk.TreeViewColumn('Column1', renderer, text=0)
view.append_column(column)


       renderer = gtk.CellRendererText()
       column = gtk.TreeViewColumn('Column2', renderer, text=1)
       view.append_column(column)

       renderer = gtk.CellRendererText()
       column = gtk.TreeViewColumn('Column2', renderer, text=2)
       view.append_column(column)

def on_listviewmain_select_cursor_row(self, listview, edit, *param):
sel = listview.get_selection()
model, iter = sel.get_selected()
val = model.get_value(iter, 0)
print 'row selected: %s' % val
sb = self.wTree.get_widget('statusbarmain')
id = sb.get_context_id('main')
sb.push(id, 'row selected: %s' % val)
def on_listviewmain_row_activated(self, listview, path, column):
sel = listview.get_selection()
model, iter = sel.get_selected()
val = model.get_value(iter, 0)
print 'row activated: %s' % val
sb = self.wTree.get_widget('statusbarmain')
id = sb.get_context_id('main')
sb.push(id, 'row activated: %s' % val)


def on_listviewmain_cursor_changed(self, listview):
sel = listview.get_selection()
model, iter = sel.get_selected()
val = model.get_value(iter, 0)
print 'row changed: %s' % val
sb = self.wTree.get_widget('statusbarmain')
id = sb.get_context_id('main')
sb.push(id, 'row changed: %s' % val)
def settings(self):
gsettingsdlg.SettingsDlg()


if __name__ == '__main__':
   m = MainWindow()
#    m.settings()
   gtk.main()

jm



_______________________________________________ pygtk mailing list [EMAIL PROTECTED] http://www.daa.com.au/mailman/listinfo/pygtk Read the PyGTK FAQ: http://www.async.com.br/faq/pygtk/

Reply via email to