static const int PASSWORD_MIN_SIZE = 6;
static const int LOGIN_MIN_SIZE = 4;
+static GtkWidget *the_assistant=NULL;
static GdkPixbuf *ok;
static GdkPixbuf *notok;
}
static void linphone_gtk_assistant_closed(GtkWidget *w){
- gtk_widget_destroy(w);
+ linphone_gtk_close_assistant();
}
static void linphone_gtk_assistant_prepare(GtkWidget *assistant, GtkWidget *page){
return (LinphoneAccountCreator*)g_object_get_data(G_OBJECT(w),"creator");
}
-GtkWidget * linphone_gtk_create_assistant(void){
- GtkWidget *w=gtk_assistant_new();
+void linphone_gtk_close_assistant(void){
+ if(the_assistant==NULL)
+ return;
+ gtk_widget_destroy(the_assistant);
+ the_assistant = NULL;
+}
+
+void linphone_gtk_show_assistant(void){
+ if(the_assistant!=NULL)
+ return;
+ GtkWidget *w=the_assistant=gtk_assistant_new();
gtk_window_set_resizable (GTK_WINDOW(w), FALSE);
ok = create_pixbuf(linphone_gtk_get_ui_config("ok","ok.png"));
notok = create_pixbuf(linphone_gtk_get_ui_config("notok","notok.png"));
-#if !GLIB_CHECK_VERSION(2, 31, 0)
- g_thread_init (NULL);
-#endif
- gdk_threads_init ();
-
GtkWidget *p1=create_intro();
GtkWidget *p2=create_setup_signin_choice();
GtkWidget *p31=create_account_informations_page();
g_signal_connect(G_OBJECT(w),"prepare",(GCallback)linphone_gtk_assistant_prepare,NULL);
gtk_widget_show(w);
-
- return w;
}
+