}
@implementation JubGtkUI
-- init
+- initWithConnection: (XMPPConnection*)connection
{
self = [super init];
gtk_init(argc, argv);
- builder = gtk_builder_new();
- gtk_builder_add_from_file(builder, "data/gtk/roster.ui", NULL);
-
- rosterUI = [[JubGtkRosterUI alloc] initWithBuilder: builder];
+ rosterUI = [[JubGtkRosterUI alloc]
+ initWithConnection: connection];
} @catch (id e) {
[self release];
@throw e;
- (void)dealloc
{
[rosterUI release];
- g_object_unref(G_OBJECT(builder));
[super dealloc];
}
- (void)startUIThread
{
- GtkWidget *roster_window;
-
- roster_window =
- GTK_WIDGET(gtk_builder_get_object(builder, "RosterWindow"));
-
- gtk_builder_connect_signals(builder, NULL);
-
- gtk_widget_show(roster_window);
-
[[OFThread threadWithBlock: ^(void){
gtk_main();
[OFApplication terminate];