Ticket #4132: 4132-v1.patch

File 4132-v1.patch, 43.4 KB (added by danielk, 18 years ago)

Addresses show2ButtonPopup() and showButtonPopup() dialogs, I'm still looking at custom and other dialogs using addButton() with the default handler.

  • libs/libmythtv/channeleditor.cpp

     
    326326         tr("Are you sure you would like to delete the channels on %1?")
    327327         .arg(currentLabel));
    328328
    329     int val = MythPopupBox::show2ButtonPopup(
    330         gContext->GetMainWindow(), "",
    331         chan_msg,
     329    DialogCode val = MythPopupBox::Show2ButtonPopup(
     330        gContext->GetMainWindow(), "", chan_msg,
    332331        tr("Yes, delete the channels"),
    333         tr("No, don't"), 2);
     332        tr("No, don't"), kDialogCodeButton1);
    334333
    335     if (val != 0)
     334    if (kDialogCodeButton0 != val)
    336335        return;
    337336
    338337    MSqlQuery query(MSqlQuery::InitCon());
     
    414413{
    415414    id = list->getValue().toInt();
    416415
    417     int val = MythPopupBox::show2ButtonPopup(
    418         gContext->GetMainWindow(), "",
    419         tr("Are you sure you would like to delete this channel?"),
     416    DialogCode val = MythPopupBox::Show2ButtonPopup(
     417        gContext->GetMainWindow(),
     418        "", tr("Are you sure you would like to delete this channel?"),
    420419        tr("Yes, delete the channel"),
    421         tr("No, don't"), 2);
     420        tr("No, don't"), kDialogCodeButton1);
    422421
    423     if (val == 0)
     422    if (kDialogCodeButton0 == val)
    424423    {
    425424        MSqlQuery query(MSqlQuery::InitCon());
    426425        query.prepare("DELETE FROM channel WHERE chanid = :CHID ;");
     
    439438       edit();
    440439    else
    441440    {
    442         int val = MythPopupBox::show2ButtonPopup(gContext->GetMainWindow(),
    443                                                  "",
    444                                                  tr("Channel Menu"),
    445                                                  tr("Edit.."),
    446                                                  tr("Delete.."), 1);
     441        DialogCode val = MythPopupBox::Show2ButtonPopup(
     442            gContext->GetMainWindow(),
     443            "", tr("Channel Menu"),
     444            tr("Edit.."), tr("Delete.."), kDialogCodeButton0);
    447445
    448         if (val == 0)
     446        if (kDialogCodeButton0 == val)
    449447            emit edit();
    450         else if (val == 1)
     448        else if (kDialogCodeButton1 == val)
    451449            emit del();
    452450        else
    453451            list->setFocus();
  • libs/libmythtv/playgroup.cpp

     
    262262    QString message = tr("Delete playback group:") +
    263263        QString("\n'%1'?").arg(name);
    264264
    265     int value = MythPopupBox::show2ButtonPopup(gContext->GetMainWindow(),
    266                                                "", message,
    267                                                tr("Yes, delete group"),
    268                                                tr("No, Don't delete group"), 2);
     265    DialogCode value = MythPopupBox::Show2ButtonPopup(
     266        gContext->GetMainWindow(),
     267        "", message,
     268        tr("Yes, delete group"),
     269        tr("No, Don't delete group"), kDialogCodeButton1);
    269270
    270     if (value == 0)
     271    if (kDialogCodeButton0 == value)
    271272    {
    272273        MSqlQuery query(MSqlQuery::InitCon());
    273274        query.prepare("DELETE FROM playgroup WHERE name = :NAME;");
  • libs/libmythtv/viewschdiff.cpp

     
    116116            handled = true;
    117117
    118118            if (action == "ESCAPE" || action == "LEFT")
    119                 done(MythDialog::Accepted);
     119                done(kDialogCodeAccepted);
    120120            else if (action == "UP")
    121121                cursorUp();
    122122            else if (action == "DOWN")
  • libs/libmythtv/tv_play.cpp

     
    145145                        recTitles.append(buttonTitle);
    146146                        it++;
    147147                    }
    148                     int ret = MythPopupBox::showButtonPopup(
    149                                     gContext->GetMainWindow(),
    150                                     "",
    151                                     tr("All Tuners are Busy.\n"
    152                                        "Select a Current Recording"),
    153                                     recTitles, 1);
    154                     if ((0 < ret) && (ret <= (int)reclist->size()))
     148                    DialogCode ret = MythPopupBox::ShowButtonPopup(
     149                        gContext->GetMainWindow(),
     150                        "",
     151                        tr("All Tuners are Busy.\n"
     152                           "Select a Current Recording"),
     153                        recTitles, kDialogCodeButton1);
     154                    int idx = ((int)ret) - ((int)kDialogCodeButton1);
     155                    if ((idx < 0) || (idx >= (int)reclist->size()))
    155156                    {
    156                         p = reclist->at(ret - 1);
    157                         curProgram = new ProgramInfo(*p);
     157                        quitAll = true;
    158158                    }
    159159                    else
    160160                    {
    161                         quitAll = true;
     161                        p = reclist->at(idx);
     162                        curProgram = new ProgramInfo(*p);
    162163                    }
    163164                }
    164165            }
  • libs/libmythtv/sr_dialog.cpp

     
    121121        if (action == "ESCAPE")
    122122        {
    123123            if (!listMenu.goBack())
    124                 done(MythDialog::Rejected );
     124                done(kDialogCodeRejected);
    125125        }
    126126        else if (!listMenu.getLocked())
    127127        {
  • libs/libmythtv/storagegroup.cpp

     
    417417    QString message =
    418418        tr("Remove '%1'\nDirectory From Storage Group?").arg(name);
    419419
    420     int value =
    421         MythPopupBox::show2ButtonPopup(gContext->GetMainWindow(), "", message,
    422                                        tr("Yes, remove directory"),
    423                                        tr("No, Don't remove directory"), 2);
     420    DialogCode value = MythPopupBox::Show2ButtonPopup(
     421        gContext->GetMainWindow(), "", message,
     422        tr("Yes, remove directory"),
     423        tr("No, Don't remove directory"),
     424        kDialogCodeButton1);
    424425
    425     if (value == 0)
     426    if (kDialogCodeButton0 == value)
    426427    {
    427428        MSqlQuery query(MSqlQuery::InitCon());
    428429        query.prepare("DELETE FROM storagegroup "
     
    556557
    557558    QString message = tr("Delete '%1' Storage Group?").arg(dispGroup);
    558559
    559     int value = MythPopupBox::show2ButtonPopup(gContext->GetMainWindow(),
    560                                                "", message,
    561                                                tr("Yes, delete group"),
    562                                                tr("No, Don't delete group"), 2);
     560    DialogCode value = MythPopupBox::Show2ButtonPopup(
     561        gContext->GetMainWindow(),
     562        "", message,
     563        tr("Yes, delete group"),
     564        tr("No, Don't delete group"), kDialogCodeButton1);
    563565
    564     if (value == 0)
     566    if (kDialogCodeButton0 == value)
    565567    {
    566568        MSqlQuery query(MSqlQuery::InitCon());
    567569        query.prepare("DELETE FROM storagegroup "
  • libs/libmythtv/videosource.cpp

     
    20462046    }
    20472047    else
    20482048    {
    2049         int val = MythPopupBox::show2ButtonPopup(
     2049        DialogCode val = MythPopupBox::Show2ButtonPopup(
    20502050            gContext->GetMainWindow(),
    20512051            "",
    20522052            tr("Capture Card Menu"),
    20532053            tr("Edit.."),
    20542054            tr("Delete.."),
    2055             1);
     2055            kDialogCodeButton0);
    20562056
    2057         if (val == 0)
     2057        if (kDialogCodeButton0 == val)
    20582058            edit();
    2059         else if (val == 1)
     2059        else if (kDialogCodeButton1 == val)
    20602060            del();
    20612061    }
    20622062}
     
    20662066    const int cardid = listbox->getValue().toInt();
    20672067    if (-1 == cardid)
    20682068    {
    2069         int val = MythPopupBox::show2ButtonPopup(
     2069        DialogCode val = MythPopupBox::Show2ButtonPopup(
    20702070            gContext->GetMainWindow(), "",
    20712071            tr("Are you sure you want to delete "
    20722072               "ALL capture cards on %1?").arg(gContext->GetHostName()),
    20732073            tr("Yes, delete capture cards"),
    2074             tr("No, don't"), 2);
     2074            tr("No, don't"), kDialogCodeButton1);
    20752075
    2076         if (0 == val)
     2076        if (kDialogCodeButton0 == val)
    20772077        {
    20782078            MSqlQuery cards(MSqlQuery::InitCon());
    20792079
     
    21022102    }
    21032103    else if (-2 == cardid)
    21042104    {
    2105         int val = MythPopupBox::show2ButtonPopup(
     2105        DialogCode val = MythPopupBox::Show2ButtonPopup(
    21062106            gContext->GetMainWindow(), "",
    21072107            tr("Are you sure you want to delete "
    21082108               "ALL capture cards?"),
    21092109            tr("Yes, delete capture cards"),
    2110             tr("No, don't"), 2);
     2110            tr("No, don't"), kDialogCodeButton1);
    21112111
    2112         if (0 == val)
     2112        if (kDialogCodeButton0 == val)
    21132113        {
    21142114            MSqlQuery query(MSqlQuery::InitCon());
    21152115            query.exec("TRUNCATE TABLE capturecard;");
     
    21282128
    21292129void CaptureCardEditor::del(void)
    21302130{
    2131     int val = MythPopupBox::show2ButtonPopup(
     2131    DialogCode val = MythPopupBox::Show2ButtonPopup(
    21322132        gContext->GetMainWindow(), "",
    21332133        tr("Are you sure you want to delete this capture card?"),
    21342134        tr("Yes, delete capture card"),
    2135         tr("No, don't"), 2);
     2135        tr("No, don't"), kDialogCodeButton1);
    21362136
    2137     if (val == 0)
     2137    if (kDialogCodeButton0 == val)
    21382138    {
    21392139        CardUtil::DeleteCard(listbox->getValue().toUInt());
    21402140        load();
     
    21812181    }
    21822182    else
    21832183    {
    2184         int val = MythPopupBox::show2ButtonPopup(
     2184        DialogCode val = MythPopupBox::Show2ButtonPopup(
    21852185            gContext->GetMainWindow(),
    21862186            "",
    21872187            tr("Video Source Menu"),
    21882188            tr("Edit.."),
    21892189            tr("Delete.."),
    2190             1);
     2190            kDialogCodeButton0);
    21912191
    2192         if (val == 0)
     2192        if (kDialogCodeButton0 == val)
    21932193            edit();
    2194         else if (val == 1)
     2194        else if (kDialogCodeButton1 == val)
    21952195            del();
    21962196    }
    21972197}
     
    22012201    const int sourceid = listbox->getValue().toInt();
    22022202    if (-1 == sourceid)
    22032203    {
    2204         int val = MythPopupBox::show2ButtonPopup(
     2204        DialogCode val = MythPopupBox::Show2ButtonPopup(
    22052205            gContext->GetMainWindow(), "",
    22062206            tr("Are you sure you want to delete "
    22072207               "ALL video sources?"),
    22082208            tr("Yes, delete video sources"),
    2209             tr("No, don't"), 2);
     2209            tr("No, don't"), kDialogCodeButton1);
    22102210
    2211         if (0 == val)
     2211        if (kDialogCodeButton0 == val)
    22122212        {
    22132213            MSqlQuery query(MSqlQuery::InitCon());
    22142214            query.exec("TRUNCATE TABLE channel;");
     
    22332233
    22342234void VideoSourceEditor::del()
    22352235{
    2236     int val = MythPopupBox::show2ButtonPopup(
     2236    DialogCode val = MythPopupBox::Show2ButtonPopup(
    22372237        gContext->GetMainWindow(), "",
    22382238        tr("Are you sure you want to delete "
    22392239           "this video source?"),
    22402240        tr("Yes, delete video source"),
    22412241        tr("No, don't"),
    2242         2);
     2242        kDialogCodeButton1);
    22432243
    2244     if (val == 0)
     2244    if (kDialogCodeButton0 == val)
    22452245    {
    22462246        MSqlQuery query(MSqlQuery::InitCon());
    22472247
  • libs/libmythtv/diseqcsettings.cpp

     
    892892            if (sw)
    893893            {
    894894                SwitchConfig config(*sw);
    895                 changed = (config.exec() == MythDialog::Accepted);
     895                changed = (config.exec() == kDialogCodeAccepted);
    896896            }
    897897        }
    898898        break;
     
    903903            if (rotor)
    904904            {
    905905                RotorConfig config(*rotor);
    906                 changed = (config.exec() == MythDialog::Accepted);
     906                changed = (config.exec() == kDialogCodeAccepted);
    907907            }
    908908        }
    909909        break;
     
    914914            if (lnb)
    915915            {
    916916                LNBConfig config(*lnb);
    917                 changed = (config.exec() == MythDialog::Accepted);
     917                changed = (config.exec() == kDialogCodeAccepted);
    918918            }
    919919        }
    920920        break;
  • libs/libmythtv/profilegroup.cpp

     
    296296        QString message = QObject::tr("Delete profile group:") +
    297297                          QString("\n'%1'?").arg(ProfileGroup::getName(id));
    298298
    299         int value = MythPopupBox::show2ButtonPopup(gContext->GetMainWindow(),
    300                                                    "", message,
    301                                      QObject::tr("Yes, delete group"),
    302                                      QObject::tr("No, Don't delete group"), 2);
     299        DialogCode value = MythPopupBox::Show2ButtonPopup(
     300            gContext->GetMainWindow(),
     301            "", message,
     302            QObject::tr("Yes, delete group"),
     303            QObject::tr("No, Don't delete group"), kDialogCodeButton1);
    303304
    304         if (value == 0)
     305        if (kDialogCodeButton0 == value)
    305306        {
    306307            querystr = QString("DELETE codecparams FROM codecparams, "
    307308                            "recordingprofiles WHERE "
  • libs/libmythtv/transporteditor.cpp

     
    315315{
    316316    uint mplexid = m_list->getValue().toInt();
    317317
    318     int val = MythPopupBox::show2ButtonPopup(
     318    DialogCode val = MythPopupBox::Show2ButtonPopup(
    319319        gContext->GetMainWindow(), "",
    320320        tr("Are you sure you would like to delete this transport?"),
    321321        tr("Yes, delete the transport"),
    322         tr("No, don't"), 2);
     322        tr("No, don't"), kDialogCodeButton1);
    323323
    324     if (val == 1)
     324    if (kDialogCodeButton0 != val)
    325325        return;
    326326
    327327    MSqlQuery query(MSqlQuery::InitCon());
     
    350350       return;
    351351    }
    352352
    353     int val = MythPopupBox::show2ButtonPopup(
     353    DialogCode val = MythPopupBox::Show2ButtonPopup(
    354354        gContext->GetMainWindow(),
    355         "",
    356         tr("Transport Menu"),
     355        "", tr("Transport Menu"),
    357356        tr("Edit.."),
    358         tr("Delete.."), 1);
     357        tr("Delete.."), kDialogCodeButton0);
    359358
    360     if (val == 0)
     359    if (kDialogCodeButton0 == val)
    361360        emit Edit();
    362     else if (val == 1)
     361    else if (kDialogCodeButton1 == val)
    363362        emit Delete();
    364363    else
    365364        m_list->setFocus();
  • libs/libmythtv/sr_root.cpp

     
    55           : ManagedListGroup( "rootGroup", NULL, _parentList, _parent, "rootGroup"),
    66             schedRec(_rec)
    77{
    8     cancelItem = new DialogDoneListItem( QString("[ %1 ]").arg(QObject::tr("Cancel")), MythDialog::Rejected, NULL,
    9                                         _parentList, this, "cancel");
     8    cancelItem = new DialogDoneListItem(
     9        QString("[ %1 ]").arg(QObject::tr("Cancel")),
     10        kDialogCodeRejected, NULL,
     11        _parentList, this, "cancel");
    1012    cancelItem->setState(MLS_BOLD);
    1113    addItem(cancelItem);
    1214
     
    3234    connect(testButton, SIGNAL(selected(ManagedListItem*)), _rec, SLOT(testRecording()));
    3335
    3436    recordAsShownItem = new DialogDoneListItem(QString("[ %1 ]").arg(QObject::tr("Save these settings")),
    35                                                MythDialog::Accepted, NULL, _parentList, this, "recordAsShown");
     37                                               kDialogCodeAccepted, NULL, _parentList, this, "recordAsShown");
    3638    recordAsShownItem->setState(MLS_BOLD);
    3739    addItem(recordAsShownItem);
    3840}
  • libs/libmyth/settings.cpp

     
    18531853    switch(e->key()) {
    18541854    case Key_Escape:
    18551855        reject();
    1856         emit popupDone(MythDialog::Rejected);
     1856        emit popupDone(kDialogCodeRejected);
    18571857        break;
    18581858    default:
    18591859        MythDialog::keyPressEvent(e);
  • libs/libmyth/mythdialogs.cpp

     
    123123
    124124void MythDialog::AcceptItem(int i)
    125125{
    126     done(ListStart + i);
     126    done(kDialogCodeListStart + i);
    127127}
    128128
    129129void MythDialog::accept()
    130130{
    131     done(Accepted);
     131    done(kDialogCodeAccepted);
    132132}
    133133
    134134void MythDialog::reject()
    135135{
    136     done(Rejected);
     136    done(kDialogCodeRejected);
    137137}
    138138
    139139int MythDialog::exec()
     
    144144        return -1;
    145145    }
    146146
    147     setResult(Rejected);
     147    setResult(kDialogCodeRejected);
    148148
    149149    Show();
    150150
     
    466466
    467467void MythPopupBox::accept(void)
    468468{
    469     MythDialog::done(MythDialog::Accepted);
    470     emit popupDone(MythDialog::Accepted);
     469    MythDialog::done(kDialogCodeAccepted);
     470    emit popupDone(kDialogCodeAccepted);
    471471}
    472472
    473473void MythPopupBox::reject(void)
    474474{
    475     MythDialog::done(MythDialog::Rejected);
    476     emit popupDone(MythDialog::Rejected);
     475    MythDialog::done(kDialogCodeRejected);
     476    emit popupDone(kDialogCodeRejected);
    477477}
    478478
    479479int MythPopupBox::ExecPopup(QObject *target, const char *slot)
     
    500500void MythPopupBox::defaultButtonPressedHandler(void)
    501501{
    502502    const QObjectList *objlist = children();
    503     QObjectListIt it(*objlist);
     503    QObjectListIt itf(*objlist);
    504504    QObject *objs;
    505505    int i = 0;
    506     while ((objs = it.current()) != 0)
     506    bool foundbutton = false;
     507
     508    // this bit of code will work if the window is focused
     509    while ((objs = itf.current()) != 0)
    507510    {
    508         ++it;
     511        ++itf;
    509512        if (objs->isWidgetType())
    510513        {
    511514            QWidget *widget = (QWidget *)objs;
    512515            if (widget->isA("MythPushButton"))
    513516            {
    514517                if (widget->hasFocus())
     518                {
     519                    foundbutton = true;
    515520                    break;
     521                }
    516522                i++;
    517523            }
    518524        }
    519525    }
    520     done(i);
     526    if (foundbutton)
     527    {
     528        VERBOSE(VB_IMPORTANT, "Button processed using hasFocus(): "<<i);
     529        AcceptItem(i);
     530        return;
     531    }
     532
     533    // this bit of code should always work but requires a cast
     534    QObjectListIt itd(*objlist);
     535    i = 0;
     536    while ((objs = itd.current()) != 0)
     537    {
     538        ++itd;
     539        if (objs->isWidgetType())
     540        {
     541            QWidget *widget = (QWidget *)objs;
     542            if (widget->isA("MythPushButton"))
     543            {
     544                MythPushButton *button = dynamic_cast<MythPushButton*>(widget);
     545                if (button && button->isDown())
     546                {
     547                    foundbutton = true;
     548                    break;
     549                }
     550                i++;
     551            }
     552        }
     553    }
     554    if (foundbutton)
     555    {
     556        VERBOSE(VB_IMPORTANT, "Button processed using isDown(): "<<i);
     557        AcceptItem(i);
     558        return;
     559    }
     560
     561    VERBOSE(VB_IMPORTANT, "MythPopupBox::defaultButtonPressedHandler(void)"
     562            "\n\t\t\tWe should never get here!");
     563    done(kDialogCodeRejected);
    521564}
    522565
    523566void MythPopupBox::defaultExitHandler(int r)
     
    530573{
    531574    MythPopupBox popup(parent, title);
    532575    popup.addLabel(message, Medium, true);
    533     QButton *okButton = popup.addButton(tr("OK"));
     576    QButton *okButton = popup.addButton(tr("OK"), &popup, SLOT(accept()));
    534577    okButton->setFocus();
    535578    popup.ExecPopup();
    536579}
     
    540583{
    541584    MythPopupBox popup(parent, title);
    542585    popup.addLabel(message, Medium, true);
    543     QButton *okButton = popup.addButton(tr("Exit"));
     586    QButton *okButton = popup.addButton(tr("Exit"), &popup, SLOT(accept()));
    544587    okButton->setFocus();
    545588    popup.ExecPopup();
    546589}
     
    550593{
    551594    MythPopupBox popup(parent, title);
    552595    popup.addLabel(message, Medium, true);
    553     QButton *okButton = popup.addButton(tr("OK"));
    554     QButton *cancelButton = popup.addButton(tr("Cancel"));
     596    QButton *okButton = NULL, *cancelButton = NULL;
     597    okButton     = popup.addButton(tr("OK"),     &popup, SLOT(accept()));
     598    cancelButton = popup.addButton(tr("Cancel"), &popup, SLOT(reject()));
     599
    555600    if (focusOk)
    556601        okButton->setFocus();
    557602    else
    558603        cancelButton->setFocus();
    559604
    560     return (popup.ExecPopup() == 0);
     605    return (kDialogCodeAccepted == popup.ExecPopup());
    561606}
    562607
    563608bool MythPopupBox::showGetTextPopup(MythMainWindow *parent, QString title,
     
    570615    textEdit->setText(text);
    571616    popup.addWidget(textEdit);
    572617   
    573     popup.addButton(tr("OK"));
    574     popup.addButton(tr("Cancel"));
     618    popup.addButton(tr("OK"),     &popup, SLOT(accept()));
     619    popup.addButton(tr("Cancel"), &popup, SLOT(cancel()));
    575620   
    576621    textEdit->setFocus();
    577622   
    578     if (popup.ExecPopup() == 0)
     623    if (kDialogCodeAccepted == popup.ExecPopup())
    579624    {
    580625        text = textEdit->text();
    581626        return true;
     
    584629    return false;
    585630}
    586631
    587 
    588 int MythPopupBox::show2ButtonPopup(MythMainWindow *parent, QString title,
    589                                    QString message, QString button1msg,
    590                                    QString button2msg, int defvalue)
     632DialogCode MythPopupBox::ShowButtonPopup(
     633    MythMainWindow *parent,
     634    const QString &title, const QString &message,
     635    const QStringList &buttonmsgs,
     636    DialogCode default_button)
    591637{
    592638    MythPopupBox popup(parent, title);
    593639
    594640    popup.addLabel(message, Medium, true);
    595641    popup.addLabel("");
    596642
    597     QButton *but1 = popup.addButton(button1msg);
    598     QButton *but2 = popup.addButton(button2msg);
    599 
    600     if (defvalue == 1)
    601         but1->setFocus();
    602     else
    603         but2->setFocus();
    604 
    605     return popup.ExecPopup();
    606 }
    607 
    608 int MythPopupBox::showButtonPopup(MythMainWindow *parent, QString title,
    609                                   QString message, QStringList buttonmsgs,
    610                                   int defvalue)
    611 {
    612     MythPopupBox popup(parent, title);
    613 
    614     popup.addLabel(message, Medium, true);
    615     popup.addLabel("");
    616 
     643    const uint def = ((int)default_button) - ((int)kDialogCodeButton0);
    617644    for (unsigned int i = 0; i < buttonmsgs.size(); i++ )
    618645    {
    619646        QButton *but = popup.addButton(buttonmsgs[i]);
    620         if (defvalue == (int)i)
     647        if (def == i)
    621648            but->setFocus();
    622649    }
    623650
    624     return popup.ExecPopup();
     651    return (DialogCode) popup.ExecPopup();
    625652}
    626653
    627654MythProgressDialog::MythProgressDialog(const QString &message, int totalSteps)
  • libs/libmyth/mythcontext.cpp

     
    30653065        else
    30663066        {
    30673067            QStringList buttonNames;
    3068             int         selected;
    30693068
    30703069            buttonNames += QObject::tr("Exit");
    30713070            buttonNames += QObject::tr("Upgrade");
    30723071            if (expertMode)
    30733072                buttonNames += QObject::tr("Use current schema");
    30743073
    3075             selected = MythPopupBox::showButtonPopup(d->mainWindow,
    3076                                                      "Database Upgrade",
    3077                                                      message, buttonNames, -1);
     3074            DialogCode selected = MythPopupBox::ShowButtonPopup(
     3075                d->mainWindow, "Database Upgrade", message,
     3076                buttonNames, kDialogCodeButton0);
     3077
    30783078            // The annoying extra confirmation:
    3079             if (selected == 1)
     3079            if (kDialogCodeButton1 == selected)
    30803080            {
    30813081                message = tr("This cannot be un-done, so having a"
    30823082                             " database backup would be a good idea.");
    30833083                if (connections)
    30843084                    message += "\n\n" + warnOtherCl;
    30853085
    3086                 selected = MythPopupBox::showButtonPopup(d->mainWindow,
    3087                                                          "Database Upgrade",
    3088                                                          message,
    3089                                                          buttonNames, -1);
     3086                selected = MythPopupBox::ShowButtonPopup(
     3087                    d->mainWindow, "Database Upgrade", message,
     3088                    buttonNames, kDialogCodeButton0);
    30903089            }
    30913090
    30923091            switch (selected)
    30933092            {
    3094                 case 0:  returnValue = MYTH_SCHEMA_EXIT;         break;
    3095                 case 1:  returnValue = MYTH_SCHEMA_UPGRADE;      break;
    3096                 case 2:  returnValue = MYTH_SCHEMA_USE_EXISTING; break;
    3097                 default: returnValue = MYTH_SCHEMA_ERROR;
     3093                case kDialogCodeRejected:
     3094                case kDialogCodeButton0:
     3095                    returnValue = MYTH_SCHEMA_EXIT;         break;
     3096                case kDialogCodeButton1:
     3097                    returnValue = MYTH_SCHEMA_UPGRADE;      break;
     3098                case kDialogCodeButton2:
     3099                    returnValue = MYTH_SCHEMA_USE_EXISTING; break;
     3100                default:
     3101                    returnValue = MYTH_SCHEMA_ERROR;
    30983102            }
    30993103        }
    31003104
  • libs/libmyth/mythdialogs.h

     
    5050
    5151#include "libmythui/mythmainwindow.h"
    5252
     53typedef enum DialogCode
     54{
     55    kDialogCodeRejected  = 0, // should be the same as QDialog::Reject
     56    kDialogCodeAccepted  = 1, // should not be the same as QDialog::Reject
     57    kDialogCodeListStart = 0x10,
     58    kDialogCodeButton0   = 0x10,
     59    kDialogCodeButton1   = 0x11,
     60    kDialogCodeButton2   = 0x12,
     61    kDialogCodeButton3   = 0x13,
     62    kDialogCodeButton4   = 0x14,
     63    kDialogCodeButton5   = 0x15,
     64    kDialogCodeButton6   = 0x16,
     65    kDialogCodeButton7   = 0x17,
     66    kDialogCodeButton8   = 0x18,
     67    kDialogCodeButton9   = 0x19,
     68} DialogCode;
     69
    5370class MPUBLIC MythDialog : public QFrame
    5471{
    5572    Q_OBJECT
     
    5774    MythDialog(MythMainWindow *parent, const char *name = 0,
    5875               bool setsize = true);
    5976
    60     enum DialogCode
    61     {
    62         Rejected  = 0,
    63         Accepted  = 1,
    64         ListStart = 0x10,
    65     };
    66 
    6777    int result(void) const { return rescode; }
    6878
    6979    virtual void Show(void);
     
    143153                              QString message);
    144154    static bool showOkCancelPopup(MythMainWindow *parent, QString title,
    145155                                  QString message, bool focusOk);
    146     static int show2ButtonPopup(MythMainWindow *parent, QString title,
    147                                 QString message, QString button1msg,
    148                                 QString button2msg, int defvalue);
    149     static int showButtonPopup(MythMainWindow *parent, QString title,
    150                                QString message, QStringList buttonmsgs,
    151                                int defvalue);
    152156
     157    static DialogCode Show2ButtonPopup(
     158        MythMainWindow *parent,
     159        const QString &title, const QString &message,
     160        const QString &button1msg, const QString &button2msg,
     161        DialogCode default_button)
     162    {
     163        QStringList buttonmsgs;
     164        buttonmsgs += (button1msg.isEmpty()) ?
     165            QString("Button 1") : button1msg;
     166        buttonmsgs += (button2msg.isEmpty()) ?
     167            QString("Button 2") : button2msg;
     168        return ShowButtonPopup(
     169            parent, title, message, buttonmsgs, default_button);
     170    }
     171
     172    static DialogCode ShowButtonPopup(
     173        MythMainWindow *parent,
     174        const QString &title, const QString &message,
     175        const QStringList &buttonmsgs,
     176        DialogCode default_button);
     177
    153178    static bool showGetTextPopup(MythMainWindow *parent, QString title,
    154179                                 QString message, QString& text);
    155180
  • programs/mythfrontend/playbackbox.cpp

     
    37873787
    37883788void PlaybackBox::PopupDone(int r)
    37893789{
    3790     if ((MythDialog::Rejected == r) && expectingPopup)
     3790    if ((kDialogCodeRejected == r) && expectingPopup)
    37913791    {
    37923792        cancelPopup();
    37933793        previewVideoState = kChanging;
     
    46524652
    46534653    int result = recGroupPopup->ExecPopup();
    46544654
    4655     if (result != MythDialog::Rejected)
     4655    if (result != kDialogCodeRejected)
    46564656    {
    46574657        if (viewMask == VIEW_NONE)
    46584658            viewMask = VIEW_TITLES;
     
    46694669        update(drawTotalBounds);
    46704670    }
    46714671
    4672     closeRecGroupPopup(result != MythDialog::Rejected);
     4672    closeRecGroupPopup(result != kDialogCodeRejected);
    46734673}
    46744674
    46754675void PlaybackBox::showRecGroupChooser(void)
     
    48184818
    48194819    int result = recGroupPopup->ExecPopup();
    48204820
    4821     if (result != MythDialog::Rejected)
     4821    if (result != kDialogCodeRejected)
    48224822        setGroupFilter();
    48234823
    4824     closeRecGroupPopup(result != MythDialog::Rejected);
     4824    closeRecGroupPopup(result != kDialogCodeRejected);
    48254825
    4826     if (result != MythDialog::Rejected)
     4826    if (result != kDialogCodeRejected)
    48274827    {
    48284828        progIndex = 0;
    48294829        titleIndex = 0;
     
    50205020
    50215021    int result = recGroupPopup->ExecPopup();
    50225022
    5023     if (result != MythDialog::Rejected)
     5023    if (result != kDialogCodeRejected)
    50245024        setRecGroup();
    50255025
    5026     closeRecGroupPopup(result != MythDialog::Rejected);
     5026    closeRecGroupPopup(result != kDialogCodeRejected);
    50275027}
    50285028
    50295029void PlaybackBox::doPlaylistChangePlayGroup(void)
     
    50715071
    50725072    int result = recGroupPopup->ExecPopup();
    50735073
    5074     if (result != MythDialog::Rejected)
     5074    if (result != kDialogCodeRejected)
    50755075        setPlayGroup();
    50765076
    5077     closeRecGroupPopup(result != MythDialog::Rejected);
     5077    closeRecGroupPopup(result != kDialogCodeRejected);
    50785078}
    50795079
    50805080void PlaybackBox::showRecTitleChanger()
     
    51085108
    51095109    int result = recGroupPopup->ExecPopup();
    51105110
    5111     if (result == MythDialog::Accepted)
     5111    if (result == kDialogCodeAccepted)
    51125112        setRecTitle();
    51135113
    5114     closeRecGroupPopup(result == MythDialog::Accepted);
     5114    closeRecGroupPopup(result == kDialogCodeAccepted);
    51155115
    51165116    delete delitem;
    51175117    delitem = NULL;
     
    52965296            SLOT(recGroupOldPasswordChanged(const QString &)));
    52975297    connect(recGroupOkButton, SIGNAL(clicked()), recGroupPopup, SLOT(accept()));
    52985298
    5299     if (recGroupPopup->ExecPopup() == MythDialog::Accepted)
     5299    if (recGroupPopup->ExecPopup() == kDialogCodeAccepted)
    53005300        setRecGroupPassword();
    53015301
    53025302    closeRecGroupPopup(false);
  • programs/mythfrontend/channelrecpriority.cpp

     
    140140                saveRecPriority();
    141141                gContext->SaveSetting("ChannelRecPrioritySorting",
    142142                                      (int)sortType);
    143                 done(MythDialog::Accepted);
     143                done(kDialogCodeAccepted);
    144144            }
    145145            else if (action == "1")
    146146            {
  • programs/mythfrontend/main.cpp

     
    700700                    long long pos = (long long)(atoi((*++it).ascii()) & 0xffffffffLL);
    701701                    if (pos > 0)
    702702                    {
    703                         QString msg = QString("DVD contains a bookmark");
    704                         QString button1msg = QString("Play from bookmark");
    705                         QString button2msg = QString("Play from beginning");
     703                        QString msg = QObject::tr("DVD contains a bookmark");
     704                        QString btn0msg = QObject::tr("Play from bookmark");
     705                        QString btn1msg = QObject::tr("Play from beginning");
    706706       
    707                         int ret = MythPopupBox::show2ButtonPopup(gContext->GetMainWindow(),
    708                                                             "", msg,
    709                                                             button1msg,
    710                                                             button2msg,
    711                                                             1);
    712                         if (ret == 1)
     707                        DialogCode ret = MythPopupBox::Show2ButtonPopup(
     708                            gContext->GetMainWindow(),
     709                            "", msg,
     710                            btn0msg,
     711                            btn1msg,
     712                            kDialogCodeButton0);
     713                        if (kDialogCodeButton1 == ret)
    713714                            pginfo->setIgnoreBookmark(true);
    714                         else if (ret == -1)
     715                        else if (kDialogCodeRejected == ret)
    715716                        {
    716717                            delete tmprbuf;
    717718                            delete pginfo;
  • programs/mythfrontend/viewscheduled.cpp

     
    114114            else if (action == "DETAILS")
    115115                details();
    116116            else if (action == "ESCAPE" || action == "LEFT")
    117                 done(MythDialog::Accepted);
     117                done(kDialogCodeAccepted);
    118118            else if (action == "UP")
    119119                cursorUp();
    120120            else if (action == "DOWN")
  • programs/mythfrontend/statusbox.cpp

     
    367367            if ((inContent) &&
    368368                (currentItem == QObject::tr("Log Entries")))
    369369            {
    370                 int retval = MythPopupBox::show2ButtonPopup(my_parent,
    371                                  QString("AckLogEntry"),
    372                                  QObject::tr("Acknowledge all log entries at "
    373                                              "this priority level or lower?"),
    374                                  QObject::tr("Yes"), QObject::tr("No"), 0);
    375                 if (retval == 0)
     370                DialogCode retval = MythPopupBox::Show2ButtonPopup(
     371                    my_parent, QString("AckLogEntry"),
     372                    QObject::tr("Acknowledge all log entries at "
     373                                "this priority level or lower?"),
     374                    QObject::tr("Yes"), QObject::tr("No"),
     375                    kDialogCodeButton0);
     376
     377                if (kDialogCodeButton0 == retval)
    376378                {
    377379                    MSqlQuery query(MSqlQuery::InitCon());
    378380                    query.prepare("UPDATE mythlog SET acknowledged = 1 "
     
    558560    {
    559561        if (currentItem == QObject::tr("Log Entries"))
    560562        {
    561             int retval;
    562 
    563             retval = MythPopupBox::show2ButtonPopup(my_parent,
    564                                    QString("AckLogEntry"),
    565                                    QObject::tr("Acknowledge this log entry?"),
    566                                    QObject::tr("Yes"), QObject::tr("No"), 0);
    567             if (retval == 0)
     563            DialogCode retval = MythPopupBox::Show2ButtonPopup(
     564                my_parent,
     565                QString("AckLogEntry"),
     566                QObject::tr("Acknowledge this log entry?"),
     567                QObject::tr("Yes"), QObject::tr("No"), kDialogCodeButton0);
     568            if (kDialogCodeButton0 == retval)
    568569            {
    569570                MSqlQuery query(MSqlQuery::InitCon());
    570571                query.prepare("UPDATE mythlog SET acknowledged = 1 "
     
    578579        {
    579580            QStringList msgs;
    580581            int jobStatus;
    581             int retval;
    582582
    583583            jobStatus = JobQueue::GetJobStatus(
    584584                                contentData[contentPos].toInt());
    585585
    586586            if (jobStatus == JOB_QUEUED)
    587587            {
    588                 retval = MythPopupBox::show2ButtonPopup(my_parent,
    589                                        QString("JobQueuePopup"),
    590                                        QObject::tr("Delete Job?"),
    591                                        QObject::tr("Yes"),
    592                                        QObject::tr("No"), 2);
    593                 cout << "Popup result = " << retval << endl;
    594                 if (retval == 0)
     588                DialogCode retval = MythPopupBox::Show2ButtonPopup(
     589                    my_parent,
     590                    QString("JobQueuePopup"), QObject::tr("Delete Job?"),
     591                    QObject::tr("Yes"), QObject::tr("No"), kDialogCodeButton1);
     592                if (kDialogCodeButton0 == retval)
    595593                {
    596594                    JobQueue::DeleteJob(contentData[contentPos].toInt());
    597595                    doJobQueueStatus();
     
    604602                msgs << QObject::tr("Pause");
    605603                msgs << QObject::tr("Stop");
    606604                msgs << QObject::tr("No Change");
    607                 retval = MythPopupBox::showButtonPopup(my_parent,
    608                                        QString("JobQueuePopup"),
    609                                        QObject::tr("Job Queue Actions:"),
    610                                        msgs, 2);
    611                 if (retval == 0)
     605                DialogCode retval = MythPopupBox::ShowButtonPopup(
     606                    my_parent,
     607                    QString("JobQueuePopup"),
     608                    QObject::tr("Job Queue Actions:"),
     609                    msgs, kDialogCodeButton2);
     610                if (kDialogCodeButton0 == retval)
    612611                {
    613612                    JobQueue::PauseJob(contentData[contentPos].toInt());
    614613                    doJobQueueStatus();
    615614                }
    616                 else if (retval == 1)
     615                else if (kDialogCodeButton1 == retval)
    617616                {
    618617                    JobQueue::StopJob(contentData[contentPos].toInt());
    619618                    doJobQueueStatus();
     
    624623                msgs << QObject::tr("Resume");
    625624                msgs << QObject::tr("Stop");
    626625                msgs << QObject::tr("No Change");
    627                 retval = MythPopupBox::showButtonPopup(my_parent,
    628                                        QString("JobQueuePopup"),
    629                                        QObject::tr("Job Queue Actions:"),
    630                                        msgs, 2);
    631                 if (retval == 0)
     626                DialogCode retval = MythPopupBox::ShowButtonPopup(
     627                    my_parent,
     628                    QString("JobQueuePopup"),
     629                    QObject::tr("Job Queue Actions:"),
     630                    msgs, kDialogCodeButton2);
     631                if (kDialogCodeButton0 == retval)
    632632                {
    633633                    JobQueue::ResumeJob(contentData[contentPos].toInt());
    634634                    doJobQueueStatus();
    635635                }
    636                 else if (retval == 1)
     636                else if (kDialogCodeButton1 == retval)
    637637                {
    638638                    JobQueue::StopJob(contentData[contentPos].toInt());
    639639                    doJobQueueStatus();
     
    641641            }
    642642            else if (jobStatus & JOB_DONE)
    643643            {
    644                 retval = MythPopupBox::show2ButtonPopup(my_parent,
    645                                        QString("JobQueuePopup"),
    646                                        QObject::tr("Requeue Job?"),
    647                                        QObject::tr("Yes"),
    648                                        QObject::tr("No"), 1);
    649                 if (retval == 0)
     644                DialogCode retval = MythPopupBox::Show2ButtonPopup(
     645                    my_parent,
     646                    QString("JobQueuePopup"),
     647                    QObject::tr("Requeue Job?"),
     648                    QObject::tr("Yes"), QObject::tr("No"), kDialogCodeButton0);
     649                if (kDialogCodeButton0 == retval)
    650650                {
    651651                    JobQueue::ChangeJobStatus(contentData[contentPos].toInt(),
    652652                                              JOB_QUEUED);
     
    663663            if (rec)
    664664            {
    665665                QStringList msgs;
    666                 int retval;
    667666
    668667                msgs << QObject::tr("Delete Now");
    669668                msgs << QObject::tr("Disable AutoExpire");
    670669                msgs << QObject::tr("No Change");
    671670               
    672                 retval = MythPopupBox::showButtonPopup(my_parent,
    673                              QString("AutoExpirePopup"),
    674                              QObject::tr("AutoExpire Actions:"),
    675                              msgs, 2);
     671                DialogCode retval = MythPopupBox::ShowButtonPopup(
     672                    my_parent,
     673                    QString("AutoExpirePopup"),
     674                    QObject::tr("AutoExpire Actions:"),
     675                    msgs, kDialogCodeButton2);
    676676
    677                 if (retval == 0 && REC_CAN_BE_DELETED(rec))
     677                if ((kDialogCodeButton0 == retval) && REC_CAN_BE_DELETED(rec))
    678678                {
    679679                    RemoteDeleteRecording(rec, false, false);
    680680                }
    681                 else if (retval == 1)
     681                else if (kDialogCodeButton1 == retval)
    682682                {
    683683                    rec->SetAutoExpire(0);
    684684                    if ((rec)->recgroup == "LiveTV")
  • programs/mythfrontend/programrecpriority.cpp

     
    194194                                      (int)sortType);
    195195                gContext->SaveSetting("ProgramRecPriorityReverse",
    196196                                      (int)reverseSort);
    197                 done(MythDialog::Accepted);
     197                done(kDialogCodeAccepted);
    198198            }
    199199            else if (action == "1")
    200200            {
  • programs/mythtv-setup/main.cpp

     
    310310
    311311    if (backendIsRunning)
    312312    {
    313         int val = MythPopupBox::show2ButtonPopup(
     313        DialogCode val = MythPopupBox::Show2ButtonPopup(
    314314            gContext->GetMainWindow(), QObject::tr("WARNING"),
    315315            warn,
    316316            QObject::tr("Continue"),
    317             QObject::tr("Exit"), 1);
    318         if (1 == val)
    319             return 0;
     317            QObject::tr("Exit"), kDialogCodeButton0);
    320318
    321         backendIsRunning = true;
     319        if (kDialogCodeButton0 != val)
     320            return 0;
    322321    }
    323322
    324323    REG_KEY("qt", "DELETE", "Delete", "D");
  • programs/mythwelcome/welcomedialog.cpp

     
    711711
    712712void WelcomeDialog::donePopup(int r)
    713713{
    714     if (MythDialog::Rejected == r)
     714    if (kDialogCodeRejected == r)
    715715        cancelPopup();
    716716}
    717717