[mythtv] MythUI porting

Nigel Pearson nigel at ind.tansu.com.au
Mon Aug 11 22:42:23 UTC 2008


> The schema update stuff should preferably use the
> generic dialogs - MythDialogBox, MythConfirmationDialog,  
> MythProgressDialog
> etc

Yes, I'm getting there, slowly :-)


> I've already toyed with ideas for the language prompt i.e. making  
> it a fully
> themable screen so we can do fun stuff like this:
> http://www.miffteevee.co.uk/imagebin/language_selection2.png

Pretty!


Although for my use of LanguageSettings
(quick lang. choice before a popup)
I'd go for a something that can show all
the languages on one page (multi text column).


...
>> Can we have an easy way to block until the user clicks?
>
> You aren't the first person to ask. I've discussed this a few times  
> with Isaac
> and just now with Daniel, the concensus is that nothing in the UI  
> thread
> should be blocking.
...
> Blocking in the UI thread prevents things like animations from  
> working and
> probably worse. For all the extra work this creates that may mean  
> threading
> off actions like searching the filesystem.

Agreed, but in terms of the API, it could _seem_ to.
I'm doing this (horrible hack) at the moment:

void SchemaUpgradeWizard::exit(void)
{
     gSelected = kDialogCodeButton0;
}

void SchemaUpgradeWizard::waitForDialogSelect(void)
{
     QEventLoop l;

     gSelected = -1;
     while (gSelected == -1)
     {
         l.processEvents(QEventLoop::AllEvents, 250);
         usleep(100);
     }
}

...

     dlg->AddButton(tr("Exit"), SLOT(exit()));
     dlg->SetReturnEvent((MythScreenType *)this, QString::null);
     waitForDialogSelect();



but that does nothing for LEFT or ESCAPE,
and it would need something different when
the main window event loop is running.

--
Nigel Pearson, nigel at ind.tansu.com.au| I've been talking to-
Telstra Net. Eng., Sydney, Australia | the ship's computer.
Office: 9202 3900    Fax:  9261 3912 | ...  It hates me!
Mobile: 0408 664435  Home: 9792 6998 |   Marvin





More information about the mythtv-dev mailing list