gorka_sm
28th April 2010, 15:08
Hello , I am developing a Qt application which has a MythDialogBox in which a Button is added. When this button is clicked it is supposed that a SIGNAL is executed and the application is closed.
The MythDialogBox is created in a pthread . The main problem that I have is that the function called by the SIGNAL is never executed.
So First question : Do you know any method or tutorial for executing SIGNALS in pthreads ?
Here I have the code I have developed :
---- Main Class ----
pthread_t base_thread;
int valor = pthread_create(&base_thread, NULL, run_base_thread, NULL);
static void *run_base_tread(void *data)
{
while true{
gContext-> SetMainWindow(NULL);
bool frontendOnly = gContext->IsFrontendOnly();
gContext->SetMainWindow(MythMainWindow::getMainWindow());
MythScreenStack *ss = GetMythMainWindow() ->GetStack("popup stack");
MythDialogBox *dlg = new MythDialogBox(tr("Exit Mythtv"),ss,"exit prompt");
dlg ->AddButton(tr("Yes"),SLOT(quit));
}
quit{
qapp->exit()
}
}
The main problem is that the method quit is never executed
The MythDialogBox is created in a pthread . The main problem that I have is that the function called by the SIGNAL is never executed.
So First question : Do you know any method or tutorial for executing SIGNALS in pthreads ?
Here I have the code I have developed :
---- Main Class ----
pthread_t base_thread;
int valor = pthread_create(&base_thread, NULL, run_base_thread, NULL);
static void *run_base_tread(void *data)
{
while true{
gContext-> SetMainWindow(NULL);
bool frontendOnly = gContext->IsFrontendOnly();
gContext->SetMainWindow(MythMainWindow::getMainWindow());
MythScreenStack *ss = GetMythMainWindow() ->GetStack("popup stack");
MythDialogBox *dlg = new MythDialogBox(tr("Exit Mythtv"),ss,"exit prompt");
dlg ->AddButton(tr("Yes"),SLOT(quit));
}
quit{
qapp->exit()
}
}
The main problem is that the method quit is never executed