Beispiel #1
0
DlgEditAvatar::DlgEditAvatar(QWidget *parent)
    : QDialog(parent)
{
    imageLabel = new QLabel(tr("No image chosen."));
    imageLabel->setFixedSize(400, 200);
    imageLabel->setAlignment(Qt::AlignHCenter | Qt::AlignVCenter);
    imageLabel->setStyleSheet("border: 1px solid #000");

    textLabel = new QLabel(tr("To change your avatar, choose a new image.\nTo remove your current avatar, confirm without choosing a new image."));
    browseButton = new QPushButton(tr("Browse..."));
    connect(browseButton, SIGNAL(clicked()), this, SLOT(actBrowse()));
    
    QGridLayout *grid = new QGridLayout;
    grid->addWidget(imageLabel, 0, 0, 1, 2);
    grid->addWidget(textLabel, 1, 0);
    grid->addWidget(browseButton, 1, 1);
    
    QDialogButtonBox *buttonBox = new QDialogButtonBox(QDialogButtonBox::Ok | QDialogButtonBox::Cancel);
    connect(buttonBox, SIGNAL(accepted()), this, SLOT(actOk()));
    connect(buttonBox, SIGNAL(rejected()), this, SLOT(actCancel()));
         
    QVBoxLayout *mainLayout = new QVBoxLayout;
    mainLayout->addLayout(grid);
    mainLayout->addWidget(buttonBox);
    setLayout(mainLayout);

    setWindowTitle(tr("Change avatar"));
    setFixedHeight(sizeHint().height());
    setMinimumWidth(300);
}
DlgEditPassword::DlgEditPassword(QWidget *parent)
    : QDialog(parent)
{

    oldPasswordLabel = new QLabel(tr("Old password:"******"New password:"******"Confirm new password:"******"Change password"));
    setFixedHeight(sizeHint().height());
    setMinimumWidth(300);
}
Beispiel #3
0
DlgConnect::DlgConnect(QWidget *parent)
    : QDialog(parent)
{
    previousHostButton = new QRadioButton(tr("Previous Host"), this);
    previousHosts = new QComboBox(this);
    previousHosts->installEventFilter(new DeleteHighlightedItemWhenShiftDelPressedEventFilter);

    QStringList previousHostList = settingsCache->servers().getPreviousHostList();
    if (previousHostList.isEmpty()) {
        previousHostList << "cockatrice.woogerworks.com";
        previousHostList << "vps.poixen.com";
        previousHostList << "chickatrice.net";
    }
    previousHosts->addItems(previousHostList);
    previousHosts->setCurrentIndex(settingsCache->servers().getPrevioushostindex());

    newHostButton = new QRadioButton(tr("New Host"), this);
    
    hostLabel = new QLabel(tr("&Host:"));
    hostEdit = new QLineEdit();
    hostEdit->setPlaceholderText(tr("Enter host name"));
    hostLabel->setBuddy(hostEdit);

    portLabel = new QLabel(tr("&Port:"));
    portEdit = new QLineEdit(settingsCache->servers().getPort("4747"));
    portLabel->setBuddy(portEdit);

    playernameLabel = new QLabel(tr("Player &name:"));
    playernameEdit = new QLineEdit(settingsCache->servers().getPlayerName("Player"));
    playernameLabel->setBuddy(playernameEdit);

    passwordLabel = new QLabel(tr("P&assword:"));
    passwordEdit = new QLineEdit(settingsCache->servers().getPassword());
    passwordLabel->setBuddy(passwordEdit);
    passwordEdit->setEchoMode(QLineEdit::Password);
    
    savePasswordCheckBox = new QCheckBox(tr("&Save password"));
    savePasswordCheckBox->setChecked(settingsCache->servers().getSavePassword());

    autoConnectCheckBox = new QCheckBox(tr("A&uto connect at start"));
    if(savePasswordCheckBox->isChecked())
    {
        autoConnectCheckBox->setChecked(settingsCache->servers().getAutoConnect());
        autoConnectCheckBox->setEnabled(true);
    } else {
        settingsCache->servers().setAutoConnect(0);
        autoConnectCheckBox->setChecked(0);
        autoConnectCheckBox->setEnabled(false);
    }

    connect(savePasswordCheckBox, SIGNAL(stateChanged(int)), this, SLOT(passwordSaved(int)));

    QGridLayout *grid = new QGridLayout;
    grid->addWidget(previousHostButton, 0, 1);
    grid->addWidget(previousHosts, 1, 1);
    grid->addWidget(newHostButton, 2, 1);
    grid->addWidget(hostLabel, 3, 0);
    grid->addWidget(hostEdit, 3, 1);
    grid->addWidget(portLabel, 4, 0);
    grid->addWidget(portEdit, 4, 1);
    grid->addWidget(playernameLabel, 5, 0);
    grid->addWidget(playernameEdit, 5, 1);
    grid->addWidget(passwordLabel, 6, 0);
    grid->addWidget(passwordEdit, 6, 1);
    grid->addWidget(savePasswordCheckBox, 7, 0, 1, 2);
    grid->addWidget(autoConnectCheckBox, 8, 0, 1, 2);
    
    QDialogButtonBox *buttonBox = new QDialogButtonBox(QDialogButtonBox::Ok | QDialogButtonBox::Cancel);
    connect(buttonBox, SIGNAL(accepted()), this, SLOT(actOk()));
    connect(buttonBox, SIGNAL(rejected()), this, SLOT(actCancel()));
         
    QVBoxLayout *mainLayout = new QVBoxLayout;
    mainLayout->addLayout(grid);
    mainLayout->addWidget(buttonBox);
    setLayout(mainLayout);

    setWindowTitle(tr("Connect to server"));
    setFixedHeight(sizeHint().height());
    setMinimumWidth(300);

    connect(previousHostButton, SIGNAL(toggled(bool)), this, SLOT(previousHostSelected(bool)));
    connect(newHostButton, SIGNAL(toggled(bool)), this, SLOT(newHostSelected(bool)));

    if (settingsCache->servers().getPreviousHostLogin())
        previousHostButton->setChecked(true);
    else
        newHostButton->setChecked(true);
}
Beispiel #4
0
DlgRegister::DlgRegister(QWidget *parent)
    : QDialog(parent)
{
    QSettings settings;
    settings.beginGroup("server");

    hostLabel = new QLabel(tr("&Host:"));
    hostEdit = new QLineEdit(settings.value("hostname", "cockatrice.woogerworks.com").toString());
    hostLabel->setBuddy(hostEdit);

    portLabel = new QLabel(tr("&Port:"));
    portEdit = new QLineEdit(settings.value("port", "4747").toString());
    portLabel->setBuddy(portEdit);

    playernameLabel = new QLabel(tr("Player &name:"));
    playernameEdit = new QLineEdit(settings.value("playername", "Player").toString());
    playernameLabel->setBuddy(playernameEdit);

    passwordLabel = new QLabel(tr("P&assword:"));
    passwordEdit = new QLineEdit(settings.value("password").toString());
    passwordLabel->setBuddy(passwordEdit);
    passwordEdit->setEchoMode(QLineEdit::Password);

    emailLabel = new QLabel(tr("Email:"));
    emailEdit = new QLineEdit();
    emailLabel->setBuddy(emailEdit);

    genderLabel = new QLabel(tr("Gender:"));
    genderEdit = new QComboBox();
    genderLabel->setBuddy(genderEdit);
    genderEdit->insertItem(0, QIcon(":/resources/genders/unknown.svg"), tr("Undefined"));
    genderEdit->insertItem(1, QIcon(":/resources/genders/male.svg"), tr("Male"));
    genderEdit->insertItem(2, QIcon(":/resources/genders/female.svg"), tr("Female"));
    genderEdit->setCurrentIndex(0);

    countryLabel = new QLabel(tr("Country:"));
    countryEdit = new QComboBox();
    countryLabel->setBuddy(countryEdit);
    countryEdit->insertItem(0, tr("Undefined"));
    countryEdit->addItem(QPixmap(":/resources/countries/ad.svg"), "ad");
    countryEdit->addItem(QIcon(":/resources/countries/ae.svg"), "ae");
    countryEdit->addItem(QIcon(":/resources/countries/af.svg"), "af");
    countryEdit->addItem(QIcon(":/resources/countries/ag.svg"), "ag");
    countryEdit->addItem(QIcon(":/resources/countries/ai.svg"), "ai");
    countryEdit->addItem(QIcon(":/resources/countries/al.svg"), "al");
    countryEdit->addItem(QIcon(":/resources/countries/am.svg"), "am");
    countryEdit->addItem(QIcon(":/resources/countries/ao.svg"), "ao");
    countryEdit->addItem(QIcon(":/resources/countries/aq.svg"), "aq");
    countryEdit->addItem(QIcon(":/resources/countries/ar.svg"), "ar");
    countryEdit->addItem(QIcon(":/resources/countries/as.svg"), "as");
    countryEdit->addItem(QIcon(":/resources/countries/at.svg"), "at");
    countryEdit->addItem(QIcon(":/resources/countries/au.svg"), "au");
    countryEdit->addItem(QIcon(":/resources/countries/aw.svg"), "aw");
    countryEdit->addItem(QIcon(":/resources/countries/ax.svg"), "ax");
    countryEdit->addItem(QIcon(":/resources/countries/az.svg"), "az");
    countryEdit->addItem(QIcon(":/resources/countries/ba.svg"), "ba");
    countryEdit->addItem(QIcon(":/resources/countries/bb.svg"), "bb");
    countryEdit->addItem(QIcon(":/resources/countries/bd.svg"), "bd");
    countryEdit->addItem(QIcon(":/resources/countries/be.svg"), "be");
    countryEdit->addItem(QIcon(":/resources/countries/bf.svg"), "bf");
    countryEdit->addItem(QIcon(":/resources/countries/bg.svg"), "bg");
    countryEdit->addItem(QIcon(":/resources/countries/bh.svg"), "bh");
    countryEdit->addItem(QIcon(":/resources/countries/bi.svg"), "bi");
    countryEdit->addItem(QIcon(":/resources/countries/bj.svg"), "bj");
    countryEdit->addItem(QIcon(":/resources/countries/bl.svg"), "bl");
    countryEdit->addItem(QIcon(":/resources/countries/bm.svg"), "bm");
    countryEdit->addItem(QIcon(":/resources/countries/bn.svg"), "bn");
    countryEdit->addItem(QIcon(":/resources/countries/bo.svg"), "bo");
    countryEdit->addItem(QIcon(":/resources/countries/bq.svg"), "bq");
    countryEdit->addItem(QIcon(":/resources/countries/br.svg"), "br");
    countryEdit->addItem(QIcon(":/resources/countries/bs.svg"), "bs");
    countryEdit->addItem(QIcon(":/resources/countries/bt.svg"), "bt");
    countryEdit->addItem(QIcon(":/resources/countries/bv.svg"), "bv");
    countryEdit->addItem(QIcon(":/resources/countries/bw.svg"), "bw");
    countryEdit->addItem(QIcon(":/resources/countries/by.svg"), "by");
    countryEdit->addItem(QIcon(":/resources/countries/bz.svg"), "bz");
    countryEdit->addItem(QIcon(":/resources/countries/ca.svg"), "ca");
    countryEdit->addItem(QIcon(":/resources/countries/cc.svg"), "cc");
    countryEdit->addItem(QIcon(":/resources/countries/cd.svg"), "cd");
    countryEdit->addItem(QIcon(":/resources/countries/cf.svg"), "cf");
    countryEdit->addItem(QIcon(":/resources/countries/cg.svg"), "cg");
    countryEdit->addItem(QIcon(":/resources/countries/ch.svg"), "ch");
    countryEdit->addItem(QIcon(":/resources/countries/ci.svg"), "ci");
    countryEdit->addItem(QIcon(":/resources/countries/ck.svg"), "ck");
    countryEdit->addItem(QIcon(":/resources/countries/cl.svg"), "cl");
    countryEdit->addItem(QIcon(":/resources/countries/cm.svg"), "cm");
    countryEdit->addItem(QIcon(":/resources/countries/cn.svg"), "cn");
    countryEdit->addItem(QIcon(":/resources/countries/co.svg"), "co");
    countryEdit->addItem(QIcon(":/resources/countries/cr.svg"), "cr");
    countryEdit->addItem(QIcon(":/resources/countries/cu.svg"), "cu");
    countryEdit->addItem(QIcon(":/resources/countries/cv.svg"), "cv");
    countryEdit->addItem(QIcon(":/resources/countries/cw.svg"), "cw");
    countryEdit->addItem(QIcon(":/resources/countries/cx.svg"), "cx");
    countryEdit->addItem(QIcon(":/resources/countries/cy.svg"), "cy");
    countryEdit->addItem(QIcon(":/resources/countries/cz.svg"), "cz");
    countryEdit->addItem(QIcon(":/resources/countries/de.svg"), "de");
    countryEdit->addItem(QIcon(":/resources/countries/dj.svg"), "dj");
    countryEdit->addItem(QIcon(":/resources/countries/dk.svg"), "dk");
    countryEdit->addItem(QIcon(":/resources/countries/dm.svg"), "dm");
    countryEdit->addItem(QIcon(":/resources/countries/do.svg"), "do");
    countryEdit->addItem(QIcon(":/resources/countries/dz.svg"), "dz");
    countryEdit->addItem(QIcon(":/resources/countries/ec.svg"), "ec");
    countryEdit->addItem(QIcon(":/resources/countries/ee.svg"), "ee");
    countryEdit->addItem(QIcon(":/resources/countries/eg.svg"), "eg");
    countryEdit->addItem(QIcon(":/resources/countries/eh.svg"), "eh");
    countryEdit->addItem(QIcon(":/resources/countries/er.svg"), "er");
    countryEdit->addItem(QIcon(":/resources/countries/es.svg"), "es");
    countryEdit->addItem(QIcon(":/resources/countries/et.svg"), "et");
    countryEdit->addItem(QIcon(":/resources/countries/fi.svg"), "fi");
    countryEdit->addItem(QIcon(":/resources/countries/fj.svg"), "fj");
    countryEdit->addItem(QIcon(":/resources/countries/fk.svg"), "fk");
    countryEdit->addItem(QIcon(":/resources/countries/fm.svg"), "fm");
    countryEdit->addItem(QIcon(":/resources/countries/fo.svg"), "fo");
    countryEdit->addItem(QIcon(":/resources/countries/fr.svg"), "fr");
    countryEdit->addItem(QIcon(":/resources/countries/ga.svg"), "ga");
    countryEdit->addItem(QIcon(":/resources/countries/gb.svg"), "gb");
    countryEdit->addItem(QIcon(":/resources/countries/gd.svg"), "gd");
    countryEdit->addItem(QIcon(":/resources/countries/ge.svg"), "ge");
    countryEdit->addItem(QIcon(":/resources/countries/gf.svg"), "gf");
    countryEdit->addItem(QIcon(":/resources/countries/gg.svg"), "gg");
    countryEdit->addItem(QIcon(":/resources/countries/gh.svg"), "gh");
    countryEdit->addItem(QIcon(":/resources/countries/gi.svg"), "gi");
    countryEdit->addItem(QIcon(":/resources/countries/gl.svg"), "gl");
    countryEdit->addItem(QIcon(":/resources/countries/gm.svg"), "gm");
    countryEdit->addItem(QIcon(":/resources/countries/gn.svg"), "gn");
    countryEdit->addItem(QIcon(":/resources/countries/gp.svg"), "gp");
    countryEdit->addItem(QIcon(":/resources/countries/gq.svg"), "gq");
    countryEdit->addItem(QIcon(":/resources/countries/gr.svg"), "gr");
    countryEdit->addItem(QIcon(":/resources/countries/gs.svg"), "gs");
    countryEdit->addItem(QIcon(":/resources/countries/gt.svg"), "gt");
    countryEdit->addItem(QIcon(":/resources/countries/gu.svg"), "gu");
    countryEdit->addItem(QIcon(":/resources/countries/gw.svg"), "gw");
    countryEdit->addItem(QIcon(":/resources/countries/gy.svg"), "gy");
    countryEdit->addItem(QIcon(":/resources/countries/hk.svg"), "hk");
    countryEdit->addItem(QIcon(":/resources/countries/hm.svg"), "hm");
    countryEdit->addItem(QIcon(":/resources/countries/hn.svg"), "hn");
    countryEdit->addItem(QIcon(":/resources/countries/hr.svg"), "hr");
    countryEdit->addItem(QIcon(":/resources/countries/ht.svg"), "ht");
    countryEdit->addItem(QIcon(":/resources/countries/hu.svg"), "hu");
    countryEdit->addItem(QIcon(":/resources/countries/id.svg"), "id");
    countryEdit->addItem(QIcon(":/resources/countries/ie.svg"), "ie");
    countryEdit->addItem(QIcon(":/resources/countries/il.svg"), "il");
    countryEdit->addItem(QIcon(":/resources/countries/im.svg"), "im");
    countryEdit->addItem(QIcon(":/resources/countries/in.svg"), "in");
    countryEdit->addItem(QIcon(":/resources/countries/io.svg"), "io");
    countryEdit->addItem(QIcon(":/resources/countries/iq.svg"), "iq");
    countryEdit->addItem(QIcon(":/resources/countries/ir.svg"), "ir");
    countryEdit->addItem(QIcon(":/resources/countries/is.svg"), "is");
    countryEdit->addItem(QIcon(":/resources/countries/it.svg"), "it");
    countryEdit->addItem(QIcon(":/resources/countries/je.svg"), "je");
    countryEdit->addItem(QIcon(":/resources/countries/jm.svg"), "jm");
    countryEdit->addItem(QIcon(":/resources/countries/jo.svg"), "jo");
    countryEdit->addItem(QIcon(":/resources/countries/jp.svg"), "jp");
    countryEdit->addItem(QIcon(":/resources/countries/ke.svg"), "ke");
    countryEdit->addItem(QIcon(":/resources/countries/kg.svg"), "kg");
    countryEdit->addItem(QIcon(":/resources/countries/kh.svg"), "kh");
    countryEdit->addItem(QIcon(":/resources/countries/ki.svg"), "ki");
    countryEdit->addItem(QIcon(":/resources/countries/km.svg"), "km");
    countryEdit->addItem(QIcon(":/resources/countries/kn.svg"), "kn");
    countryEdit->addItem(QIcon(":/resources/countries/kp.svg"), "kp");
    countryEdit->addItem(QIcon(":/resources/countries/kr.svg"), "kr");
    countryEdit->addItem(QIcon(":/resources/countries/kw.svg"), "kw");
    countryEdit->addItem(QIcon(":/resources/countries/ky.svg"), "ky");
    countryEdit->addItem(QIcon(":/resources/countries/kz.svg"), "kz");
    countryEdit->addItem(QIcon(":/resources/countries/la.svg"), "la");
    countryEdit->addItem(QIcon(":/resources/countries/lb.svg"), "lb");
    countryEdit->addItem(QIcon(":/resources/countries/lc.svg"), "lc");
    countryEdit->addItem(QIcon(":/resources/countries/li.svg"), "li");
    countryEdit->addItem(QIcon(":/resources/countries/lk.svg"), "lk");
    countryEdit->addItem(QIcon(":/resources/countries/lr.svg"), "lr");
    countryEdit->addItem(QIcon(":/resources/countries/ls.svg"), "ls");
    countryEdit->addItem(QIcon(":/resources/countries/lt.svg"), "lt");
    countryEdit->addItem(QIcon(":/resources/countries/lu.svg"), "lu");
    countryEdit->addItem(QIcon(":/resources/countries/lv.svg"), "lv");
    countryEdit->addItem(QIcon(":/resources/countries/ly.svg"), "ly");
    countryEdit->addItem(QIcon(":/resources/countries/ma.svg"), "ma");
    countryEdit->addItem(QIcon(":/resources/countries/mc.svg"), "mc");
    countryEdit->addItem(QIcon(":/resources/countries/md.svg"), "md");
    countryEdit->addItem(QIcon(":/resources/countries/me.svg"), "me");
    countryEdit->addItem(QIcon(":/resources/countries/mf.svg"), "mf");
    countryEdit->addItem(QIcon(":/resources/countries/mg.svg"), "mg");
    countryEdit->addItem(QIcon(":/resources/countries/mh.svg"), "mh");
    countryEdit->addItem(QIcon(":/resources/countries/mk.svg"), "mk");
    countryEdit->addItem(QIcon(":/resources/countries/ml.svg"), "ml");
    countryEdit->addItem(QIcon(":/resources/countries/mm.svg"), "mm");
    countryEdit->addItem(QIcon(":/resources/countries/mn.svg"), "mn");
    countryEdit->addItem(QIcon(":/resources/countries/mo.svg"), "mo");
    countryEdit->addItem(QIcon(":/resources/countries/mp.svg"), "mp");
    countryEdit->addItem(QIcon(":/resources/countries/mq.svg"), "mq");
    countryEdit->addItem(QIcon(":/resources/countries/mr.svg"), "mr");
    countryEdit->addItem(QIcon(":/resources/countries/ms.svg"), "ms");
    countryEdit->addItem(QIcon(":/resources/countries/mt.svg"), "mt");
    countryEdit->addItem(QIcon(":/resources/countries/mu.svg"), "mu");
    countryEdit->addItem(QIcon(":/resources/countries/mv.svg"), "mv");
    countryEdit->addItem(QIcon(":/resources/countries/mw.svg"), "mw");
    countryEdit->addItem(QIcon(":/resources/countries/mx.svg"), "mx");
    countryEdit->addItem(QIcon(":/resources/countries/my.svg"), "my");
    countryEdit->addItem(QIcon(":/resources/countries/mz.svg"), "mz");
    countryEdit->addItem(QIcon(":/resources/countries/na.svg"), "na");
    countryEdit->addItem(QIcon(":/resources/countries/nc.svg"), "nc");
    countryEdit->addItem(QIcon(":/resources/countries/ne.svg"), "ne");
    countryEdit->addItem(QIcon(":/resources/countries/nf.svg"), "nf");
    countryEdit->addItem(QIcon(":/resources/countries/ng.svg"), "ng");
    countryEdit->addItem(QIcon(":/resources/countries/ni.svg"), "ni");
    countryEdit->addItem(QIcon(":/resources/countries/nl.svg"), "nl");
    countryEdit->addItem(QIcon(":/resources/countries/no.svg"), "no");
    countryEdit->addItem(QIcon(":/resources/countries/np.svg"), "np");
    countryEdit->addItem(QIcon(":/resources/countries/nr.svg"), "nr");
    countryEdit->addItem(QIcon(":/resources/countries/nu.svg"), "nu");
    countryEdit->addItem(QIcon(":/resources/countries/nz.svg"), "nz");
    countryEdit->addItem(QIcon(":/resources/countries/om.svg"), "om");
    countryEdit->addItem(QIcon(":/resources/countries/pa.svg"), "pa");
    countryEdit->addItem(QIcon(":/resources/countries/pe.svg"), "pe");
    countryEdit->addItem(QIcon(":/resources/countries/pf.svg"), "pf");
    countryEdit->addItem(QIcon(":/resources/countries/pg.svg"), "pg");
    countryEdit->addItem(QIcon(":/resources/countries/ph.svg"), "ph");
    countryEdit->addItem(QIcon(":/resources/countries/pk.svg"), "pk");
    countryEdit->addItem(QIcon(":/resources/countries/pl.svg"), "pl");
    countryEdit->addItem(QIcon(":/resources/countries/pm.svg"), "pm");
    countryEdit->addItem(QIcon(":/resources/countries/pn.svg"), "pn");
    countryEdit->addItem(QIcon(":/resources/countries/pr.svg"), "pr");
    countryEdit->addItem(QIcon(":/resources/countries/ps.svg"), "ps");
    countryEdit->addItem(QIcon(":/resources/countries/pt.svg"), "pt");
    countryEdit->addItem(QIcon(":/resources/countries/pw.svg"), "pw");
    countryEdit->addItem(QIcon(":/resources/countries/py.svg"), "py");
    countryEdit->addItem(QIcon(":/resources/countries/qa.svg"), "qa");
    countryEdit->addItem(QIcon(":/resources/countries/re.svg"), "re");
    countryEdit->addItem(QIcon(":/resources/countries/ro.svg"), "ro");
    countryEdit->addItem(QIcon(":/resources/countries/rs.svg"), "rs");
    countryEdit->addItem(QIcon(":/resources/countries/ru.svg"), "ru");
    countryEdit->addItem(QIcon(":/resources/countries/rw.svg"), "rw");
    countryEdit->addItem(QIcon(":/resources/countries/sa.svg"), "sa");
    countryEdit->addItem(QIcon(":/resources/countries/sb.svg"), "sb");
    countryEdit->addItem(QIcon(":/resources/countries/sc.svg"), "sc");
    countryEdit->addItem(QIcon(":/resources/countries/sd.svg"), "sd");
    countryEdit->addItem(QIcon(":/resources/countries/se.svg"), "se");
    countryEdit->addItem(QIcon(":/resources/countries/sg.svg"), "sg");
    countryEdit->addItem(QIcon(":/resources/countries/sh.svg"), "sh");
    countryEdit->addItem(QIcon(":/resources/countries/si.svg"), "si");
    countryEdit->addItem(QIcon(":/resources/countries/sj.svg"), "sj");
    countryEdit->addItem(QIcon(":/resources/countries/sk.svg"), "sk");
    countryEdit->addItem(QIcon(":/resources/countries/sl.svg"), "sl");
    countryEdit->addItem(QIcon(":/resources/countries/sm.svg"), "sm");
    countryEdit->addItem(QIcon(":/resources/countries/sn.svg"), "sn");
    countryEdit->addItem(QIcon(":/resources/countries/so.svg"), "so");
    countryEdit->addItem(QIcon(":/resources/countries/sr.svg"), "sr");
    countryEdit->addItem(QIcon(":/resources/countries/ss.svg"), "ss");
    countryEdit->addItem(QIcon(":/resources/countries/st.svg"), "st");
    countryEdit->addItem(QIcon(":/resources/countries/sv.svg"), "sv");
    countryEdit->addItem(QIcon(":/resources/countries/sx.svg"), "sx");
    countryEdit->addItem(QIcon(":/resources/countries/sy.svg"), "sy");
    countryEdit->addItem(QIcon(":/resources/countries/sz.svg"), "sz");
    countryEdit->addItem(QIcon(":/resources/countries/tc.svg"), "tc");
    countryEdit->addItem(QIcon(":/resources/countries/td.svg"), "td");
    countryEdit->addItem(QIcon(":/resources/countries/tf.svg"), "tf");
    countryEdit->addItem(QIcon(":/resources/countries/tg.svg"), "tg");
    countryEdit->addItem(QIcon(":/resources/countries/th.svg"), "th");
    countryEdit->addItem(QIcon(":/resources/countries/tj.svg"), "tj");
    countryEdit->addItem(QIcon(":/resources/countries/tk.svg"), "tk");
    countryEdit->addItem(QIcon(":/resources/countries/tl.svg"), "tl");
    countryEdit->addItem(QIcon(":/resources/countries/tm.svg"), "tm");
    countryEdit->addItem(QIcon(":/resources/countries/tn.svg"), "tn");
    countryEdit->addItem(QIcon(":/resources/countries/to.svg"), "to");
    countryEdit->addItem(QIcon(":/resources/countries/tr.svg"), "tr");
    countryEdit->addItem(QIcon(":/resources/countries/tt.svg"), "tt");
    countryEdit->addItem(QIcon(":/resources/countries/tv.svg"), "tv");
    countryEdit->addItem(QIcon(":/resources/countries/tw.svg"), "tw");
    countryEdit->addItem(QIcon(":/resources/countries/tz.svg"), "tz");
    countryEdit->addItem(QIcon(":/resources/countries/ua.svg"), "ua");
    countryEdit->addItem(QIcon(":/resources/countries/ug.svg"), "ug");
    countryEdit->addItem(QIcon(":/resources/countries/um.svg"), "um");
    countryEdit->addItem(QIcon(":/resources/countries/us.svg"), "us");
    countryEdit->addItem(QIcon(":/resources/countries/uy.svg"), "uy");
    countryEdit->addItem(QIcon(":/resources/countries/uz.svg"), "uz");
    countryEdit->addItem(QIcon(":/resources/countries/va.svg"), "va");
    countryEdit->addItem(QIcon(":/resources/countries/vc.svg"), "vc");
    countryEdit->addItem(QIcon(":/resources/countries/ve.svg"), "ve");
    countryEdit->addItem(QIcon(":/resources/countries/vg.svg"), "vg");
    countryEdit->addItem(QIcon(":/resources/countries/vi.svg"), "vi");
    countryEdit->addItem(QIcon(":/resources/countries/vn.svg"), "vn");
    countryEdit->addItem(QIcon(":/resources/countries/vu.svg"), "vu");
    countryEdit->addItem(QIcon(":/resources/countries/wf.svg"), "wf");
    countryEdit->addItem(QIcon(":/resources/countries/ws.svg"), "ws");
    countryEdit->addItem(QIcon(":/resources/countries/ye.svg"), "ye");
    countryEdit->addItem(QIcon(":/resources/countries/yt.svg"), "yt");
    countryEdit->addItem(QIcon(":/resources/countries/za.svg"), "za");
    countryEdit->addItem(QIcon(":/resources/countries/zm.svg"), "zm");
    countryEdit->addItem(QIcon(":/resources/countries/zw.svg"), "zw");
    countryEdit->setCurrentIndex(0);

    realnameLabel = new QLabel(tr("Real name:"));
    realnameEdit = new QLineEdit();
    realnameLabel->setBuddy(realnameEdit);
    
    QGridLayout *grid = new QGridLayout;
    grid->addWidget(hostLabel, 0, 0);
    grid->addWidget(hostEdit, 0, 1);
    grid->addWidget(portLabel, 1, 0);
    grid->addWidget(portEdit, 1, 1);
    grid->addWidget(playernameLabel, 2, 0);
    grid->addWidget(playernameEdit, 2, 1);
    grid->addWidget(passwordLabel, 3, 0);
    grid->addWidget(passwordEdit, 3, 1);
    grid->addWidget(emailLabel, 4, 0);
    grid->addWidget(emailEdit, 4, 1);
    grid->addWidget(genderLabel, 5, 0);
    grid->addWidget(genderEdit, 5, 1);
    grid->addWidget(countryLabel, 6, 0);
    grid->addWidget(countryEdit, 6, 1);
    grid->addWidget(realnameLabel, 7, 0);
    grid->addWidget(realnameEdit, 7, 1);
    
    QDialogButtonBox *buttonBox = new QDialogButtonBox(QDialogButtonBox::Ok | QDialogButtonBox::Cancel);
    connect(buttonBox, SIGNAL(accepted()), this, SLOT(actOk()));
    connect(buttonBox, SIGNAL(rejected()), this, SLOT(actCancel()));
         
    QVBoxLayout *mainLayout = new QVBoxLayout;
    mainLayout->addLayout(grid);
    mainLayout->addWidget(buttonBox);
    setLayout(mainLayout);

    setWindowTitle(tr("Register to server"));
    setFixedHeight(sizeHint().height());
    setMinimumWidth(300);
}
Beispiel #5
0
DlgRegister::DlgRegister(QWidget *parent)
    : QDialog(parent)
{
    QSettings settings;
    settings.beginGroup("server");

    hostLabel = new QLabel(tr("&Host:"));
    hostEdit = new QLineEdit(settings.value("hostname", "cockatrice.woogerworks.com").toString());
    hostLabel->setBuddy(hostEdit);

    portLabel = new QLabel(tr("&Port:"));
    portEdit = new QLineEdit(settings.value("port", "4747").toString());
    portLabel->setBuddy(portEdit);

    playernameLabel = new QLabel(tr("Player &name:"));
    playernameEdit = new QLineEdit(settings.value("playername", "Player").toString());
    playernameLabel->setBuddy(playernameEdit);

    passwordLabel = new QLabel(tr("P&assword:"));
    passwordEdit = new QLineEdit(settings.value("password").toString());
    passwordLabel->setBuddy(passwordEdit);
    passwordEdit->setEchoMode(QLineEdit::Password);

    passwordConfirmationLabel = new QLabel(tr("Password (again):"));
    passwordConfirmationEdit = new QLineEdit();
    passwordConfirmationLabel->setBuddy(passwordConfirmationEdit);
    passwordConfirmationEdit->setEchoMode(QLineEdit::Password);

    emailLabel = new QLabel(tr("Email:"));
    emailEdit = new QLineEdit();
    emailLabel->setBuddy(emailEdit);

    emailConfirmationLabel = new QLabel(tr("Email (again):"));
    emailConfirmationEdit = new QLineEdit();
    emailConfirmationLabel->setBuddy(emailConfirmationEdit);

    genderLabel = new QLabel(tr("Pronouns:"));
    genderEdit = new QComboBox();
    genderLabel->setBuddy(genderEdit);
    genderEdit->insertItem(0, QIcon(":/resources/genders/unknown.svg"), tr("Neutral"));
    genderEdit->insertItem(1, QIcon(":/resources/genders/male.svg"), tr("Masculine"));
    genderEdit->insertItem(2, QIcon(":/resources/genders/female.svg"), tr("Feminine"));
    genderEdit->setCurrentIndex(0);

    countryLabel = new QLabel(tr("Country:"));
    countryEdit = new QComboBox();
    countryLabel->setBuddy(countryEdit);
    countryEdit->insertItem(0, tr("Undefined"));
    countryEdit->setCurrentIndex(0);
    QStringList countries = settingsCache->getCountries();
    foreach(QString c, countries)
        countryEdit->addItem(QPixmap(":/resources/countries/" + c + ".svg"), c);

    realnameLabel = new QLabel(tr("Real name:"));
    realnameEdit = new QLineEdit();
    realnameLabel->setBuddy(realnameEdit);
    
    QGridLayout *grid = new QGridLayout;
    grid->addWidget(hostLabel, 0, 0);
    grid->addWidget(hostEdit, 0, 1);
    grid->addWidget(portLabel, 1, 0);
    grid->addWidget(portEdit, 1, 1);
    grid->addWidget(playernameLabel, 2, 0);
    grid->addWidget(playernameEdit, 2, 1);
    grid->addWidget(passwordLabel, 3, 0);
    grid->addWidget(passwordEdit, 3, 1);
    grid->addWidget(passwordConfirmationLabel, 4, 0);
    grid->addWidget(passwordConfirmationEdit, 4, 1);
    grid->addWidget(emailLabel, 5, 0);
    grid->addWidget(emailEdit, 5, 1);
    grid->addWidget(emailConfirmationLabel, 6, 0);
    grid->addWidget(emailConfirmationEdit, 6, 1);
    grid->addWidget(genderLabel, 7, 0);
    grid->addWidget(genderEdit, 7, 1);
    grid->addWidget(countryLabel, 8, 0);
    grid->addWidget(countryEdit, 8, 1);
    grid->addWidget(realnameLabel, 9, 0);
    grid->addWidget(realnameEdit, 9, 1);
    
    QDialogButtonBox *buttonBox = new QDialogButtonBox(QDialogButtonBox::Ok | QDialogButtonBox::Cancel);
    connect(buttonBox, SIGNAL(accepted()), this, SLOT(actOk()));
    connect(buttonBox, SIGNAL(rejected()), this, SLOT(actCancel()));
         
    QVBoxLayout *mainLayout = new QVBoxLayout;
    mainLayout->addLayout(grid);
    mainLayout->addWidget(buttonBox);
    setLayout(mainLayout);

    setWindowTitle(tr("Register to server"));
    setFixedHeight(sizeHint().height());
    setMinimumWidth(300);
}
DlgCreateToken::DlgCreateToken(QWidget *parent)
	: QDialog(parent)
{
	nameLabel = new QLabel(tr("&Name:"));
	nameEdit = new QLineEdit(tr("Token"));
	nameEdit->selectAll();
	nameLabel->setBuddy(nameEdit);

	colorLabel = new QLabel(tr("C&olor:"));
	colorEdit = new QComboBox;
	colorEdit->addItem(tr("white"), "w");
	colorEdit->addItem(tr("blue"), "u");
	colorEdit->addItem(tr("black"), "b");
	colorEdit->addItem(tr("red"), "r");
	colorEdit->addItem(tr("green"), "g");
	colorEdit->addItem(tr("multicolor"), "m");
	colorEdit->addItem(tr("colorless"), "");
	colorLabel->setBuddy(colorEdit);

	ptLabel = new QLabel(tr("&P/T:"));
	ptEdit = new QLineEdit;
	ptLabel->setBuddy(ptEdit);

	annotationLabel = new QLabel(tr("&Annotation:"));
	annotationEdit = new QLineEdit;
	annotationLabel->setBuddy(annotationEdit);
	
	destroyCheckBox = new QCheckBox(tr("&Destroy token when it leaves the table"));
	destroyCheckBox->setChecked(true);

	okButton = new QPushButton(tr("&OK"));
	okButton->setDefault(true);
	cancelButton = new QPushButton(tr("&Cancel"));

	QGridLayout *grid = new QGridLayout;
	grid->addWidget(nameLabel, 0, 0);
	grid->addWidget(nameEdit, 0, 1);
	grid->addWidget(colorLabel, 1, 0);
	grid->addWidget(colorEdit, 1, 1);
	grid->addWidget(ptLabel, 2, 0);
	grid->addWidget(ptEdit, 2, 1);
	grid->addWidget(annotationLabel, 3, 0);
	grid->addWidget(annotationEdit, 3, 1);
	grid->addWidget(destroyCheckBox, 4, 0, 1, 2);

	QHBoxLayout *buttonLayout = new QHBoxLayout;
	buttonLayout->addStretch();
	buttonLayout->addWidget(okButton);
	buttonLayout->addWidget(cancelButton);

	QVBoxLayout *mainLayout = new QVBoxLayout;
	mainLayout->addLayout(grid);
	mainLayout->addLayout(buttonLayout);
	setLayout(mainLayout);

	setWindowTitle(tr("Create token"));
	setFixedHeight(sizeHint().height());
	setMinimumWidth(300);

	connect(okButton, SIGNAL(clicked()), this, SLOT(actOk()));
	connect(cancelButton, SIGNAL(clicked()), this, SLOT(reject()));
}
Beispiel #7
0
DlgConnect::DlgConnect(QWidget *parent)
    : QDialog(parent)
{
    QSettings settings;
    settings.beginGroup("server");

    hostLabel = new QLabel(tr("&Host:"));
    hostEdit = new QLineEdit(settings.value("hostname", "cockatrice.woogerworks.com").toString());
    hostLabel->setBuddy(hostEdit);

    portLabel = new QLabel(tr("&Port:"));
    portEdit = new QLineEdit(settings.value("port", "4747").toString());
    portLabel->setBuddy(portEdit);

    playernameLabel = new QLabel(tr("Player &name:"));
    playernameEdit = new QLineEdit(settings.value("playername", "Player").toString());
    playernameLabel->setBuddy(playernameEdit);

    passwordLabel = new QLabel(tr("P&assword:"));
    passwordEdit = new QLineEdit(settings.value("password").toString());
    passwordLabel->setBuddy(passwordEdit);
    passwordEdit->setEchoMode(QLineEdit::Password);
    
    savePasswordCheckBox = new QCheckBox(tr("&Save password"));
    savePasswordCheckBox->setChecked(settings.value("save_password", 1).toInt());

    autoConnectCheckBox = new QCheckBox(tr("A&uto connect at start"));
    if(savePasswordCheckBox->isChecked())
    {
        autoConnectCheckBox->setChecked(settings.value("auto_connect", 0).toInt());
        autoConnectCheckBox->setEnabled(true);
    } else {
        settings.setValue("auto_connect", 0);
        autoConnectCheckBox->setChecked(0);
        autoConnectCheckBox->setEnabled(false);
    }

    connect(savePasswordCheckBox, SIGNAL(stateChanged(int)), this, SLOT(passwordSaved(int)));

    QGridLayout *grid = new QGridLayout;
    grid->addWidget(hostLabel, 0, 0);
    grid->addWidget(hostEdit, 0, 1);
    grid->addWidget(portLabel, 1, 0);
    grid->addWidget(portEdit, 1, 1);
    grid->addWidget(playernameLabel, 2, 0);
    grid->addWidget(playernameEdit, 2, 1);
    grid->addWidget(passwordLabel, 3, 0);
    grid->addWidget(passwordEdit, 3, 1);
    grid->addWidget(savePasswordCheckBox, 4, 0, 1, 2);
    grid->addWidget(autoConnectCheckBox, 5, 0, 1, 2);
    
    QDialogButtonBox *buttonBox = new QDialogButtonBox(QDialogButtonBox::Ok | QDialogButtonBox::Cancel);
    connect(buttonBox, SIGNAL(accepted()), this, SLOT(actOk()));
    connect(buttonBox, SIGNAL(rejected()), this, SLOT(actCancel()));
         
    QVBoxLayout *mainLayout = new QVBoxLayout;
    mainLayout->addLayout(grid);
    mainLayout->addWidget(buttonBox);
    setLayout(mainLayout);

    setWindowTitle(tr("Connect to server"));
    setFixedHeight(sizeHint().height());
    setMinimumWidth(300);
}
DlgFilterGames::DlgFilterGames(const QMap<int, QString> &_allGameTypes, QWidget *parent)
    : QDialog(parent),
      allGameTypes(_allGameTypes)
{
    QSettings settings;
    settings.beginGroup("filter_games");

    unavailableGamesVisibleCheckBox = new QCheckBox(tr("Show &unavailable games"));
    unavailableGamesVisibleCheckBox->setChecked(
        settings.value("unavailable_games_visible", false).toBool()
    );

    passwordProtectedGamesVisibleCheckBox = new QCheckBox(tr("Show &password protected games"));
    passwordProtectedGamesVisibleCheckBox->setChecked(
        settings.value("password_protected_games_visible", false).toBool()
    );
    
    gameNameFilterEdit = new QLineEdit;
    gameNameFilterEdit->setText(
        settings.value("game_name_filter", "").toString()
    );
    QLabel *gameNameFilterLabel = new QLabel(tr("Game &description:"));
    gameNameFilterLabel->setBuddy(gameNameFilterEdit);
    
    creatorNameFilterEdit = new QLineEdit;
    creatorNameFilterEdit->setText(
        settings.value("creator_name_filter", "").toString()
    );
    QLabel *creatorNameFilterLabel = new QLabel(tr("&Creator name:"));
    creatorNameFilterLabel->setBuddy(creatorNameFilterEdit);
    
    QVBoxLayout *gameTypeFilterLayout = new QVBoxLayout;
    QMapIterator<int, QString> gameTypesIterator(allGameTypes);
    while (gameTypesIterator.hasNext()) {
        gameTypesIterator.next();

        QCheckBox *temp = new QCheckBox(gameTypesIterator.value());
        temp->setChecked(
            settings.value(
                "game_type/" + hashGameType(gameTypesIterator.value()),
                false
            ).toBool()
        );

        gameTypeFilterCheckBoxes.insert(gameTypesIterator.key(), temp);
        gameTypeFilterLayout->addWidget(temp);
    }
    QGroupBox *gameTypeFilterGroupBox;
    if (!allGameTypes.isEmpty()) {
        gameTypeFilterGroupBox = new QGroupBox(tr("&Game types"));
        gameTypeFilterGroupBox->setLayout(gameTypeFilterLayout);
    } else
        gameTypeFilterGroupBox = 0;
    
    QLabel *maxPlayersFilterMinLabel = new QLabel(tr("at &least:"));
    maxPlayersFilterMinSpinBox = new QSpinBox;
    maxPlayersFilterMinSpinBox->setMinimum(1);
    maxPlayersFilterMinSpinBox->setMaximum(99);
    maxPlayersFilterMinSpinBox->setValue(
        settings.value("min_players", 1).toInt()
    );
    maxPlayersFilterMinLabel->setBuddy(maxPlayersFilterMinSpinBox);
    
    QLabel *maxPlayersFilterMaxLabel = new QLabel(tr("at &most:"));
    maxPlayersFilterMaxSpinBox = new QSpinBox;
    maxPlayersFilterMaxSpinBox->setMinimum(1);
    maxPlayersFilterMaxSpinBox->setMaximum(99);
    maxPlayersFilterMaxSpinBox->setValue(
        settings.value("max_players", 99).toInt()
    );
    maxPlayersFilterMaxLabel->setBuddy(maxPlayersFilterMaxSpinBox);
    
    QGridLayout *maxPlayersFilterLayout = new QGridLayout;
    maxPlayersFilterLayout->addWidget(maxPlayersFilterMinLabel, 0, 0);
    maxPlayersFilterLayout->addWidget(maxPlayersFilterMinSpinBox, 0, 1);
    maxPlayersFilterLayout->addWidget(maxPlayersFilterMaxLabel, 1, 0);
    maxPlayersFilterLayout->addWidget(maxPlayersFilterMaxSpinBox, 1, 1);
    
    QGroupBox *maxPlayersGroupBox = new QGroupBox(tr("Maximum player count"));
    maxPlayersGroupBox->setLayout(maxPlayersFilterLayout);
    
    QGridLayout *leftGrid = new QGridLayout;
    leftGrid->addWidget(gameNameFilterLabel, 0, 0);
    leftGrid->addWidget(gameNameFilterEdit, 0, 1);
    leftGrid->addWidget(creatorNameFilterLabel, 1, 0);
    leftGrid->addWidget(creatorNameFilterEdit, 1, 1);
    leftGrid->addWidget(maxPlayersGroupBox, 2, 0, 1, 2);
    leftGrid->addWidget(unavailableGamesVisibleCheckBox, 3, 0, 1, 2);
    leftGrid->addWidget(passwordProtectedGamesVisibleCheckBox, 4, 0, 1, 2);
    
    QVBoxLayout *leftColumn = new QVBoxLayout;
    leftColumn->addLayout(leftGrid);
    leftColumn->addStretch();
    
    QVBoxLayout *rightColumn = new QVBoxLayout;
    rightColumn->addWidget(gameTypeFilterGroupBox);
    
    QHBoxLayout *hbox = new QHBoxLayout;
    hbox->addLayout(leftColumn);
    hbox->addLayout(rightColumn);
    
    QDialogButtonBox *buttonBox = new QDialogButtonBox(QDialogButtonBox::Ok | QDialogButtonBox::Cancel);
    connect(buttonBox, SIGNAL(accepted()), this, SLOT(actOk()));
    connect(buttonBox, SIGNAL(rejected()), this, SLOT(reject()));
    
    QVBoxLayout *mainLayout = new QVBoxLayout;
    mainLayout->addLayout(hbox);
    mainLayout->addWidget(buttonBox);
    
    setLayout(mainLayout);
    setWindowTitle(tr("Filter games"));
}
DlgFilterGames::DlgFilterGames(const QMap<int, QString> &_allGameTypes, const GamesProxyModel *_gamesProxyModel, QWidget *parent)
    : QDialog(parent),
      allGameTypes(_allGameTypes),
      gamesProxyModel(_gamesProxyModel)
{
    showBuddiesOnlyGames = new QCheckBox(tr("Show '&buddies only' games"));
    showBuddiesOnlyGames->setChecked(gamesProxyModel->getShowBuddiesOnlyGames());

    unavailableGamesVisibleCheckBox = new QCheckBox(tr("Show &unavailable games"));
    unavailableGamesVisibleCheckBox->setChecked(gamesProxyModel->getUnavailableGamesVisible());

    showPasswordProtectedGames = new QCheckBox(tr("Show &password protected games"));
    showPasswordProtectedGames->setChecked(gamesProxyModel->getShowPasswordProtectedGames());

    gameNameFilterEdit = new QLineEdit;
    gameNameFilterEdit->setText(gamesProxyModel->getGameNameFilter());
    QLabel *gameNameFilterLabel = new QLabel(tr("Game &description:"));
    gameNameFilterLabel->setBuddy(gameNameFilterEdit);

    creatorNameFilterEdit = new QLineEdit;
    creatorNameFilterEdit->setText(gamesProxyModel->getCreatorNameFilter());
    QLabel *creatorNameFilterLabel = new QLabel(tr("&Creator name:"));
    creatorNameFilterLabel->setBuddy(creatorNameFilterEdit);

    QVBoxLayout *gameTypeFilterLayout = new QVBoxLayout;
    QMapIterator<int, QString> gameTypesIterator(allGameTypes);
    while (gameTypesIterator.hasNext()) {
        gameTypesIterator.next();

        QCheckBox *temp = new QCheckBox(gameTypesIterator.value());
        temp->setChecked(gamesProxyModel->getGameTypeFilter().contains(gameTypesIterator.key()));

        gameTypeFilterCheckBoxes.insert(gameTypesIterator.key(), temp);
        gameTypeFilterLayout->addWidget(temp);
    }
    QGroupBox *gameTypeFilterGroupBox;
    if (!allGameTypes.isEmpty()) {
        gameTypeFilterGroupBox = new QGroupBox(tr("&Game types"));
        gameTypeFilterGroupBox->setLayout(gameTypeFilterLayout);
    } else
        gameTypeFilterGroupBox = 0;

    QLabel *maxPlayersFilterMinLabel = new QLabel(tr("at &least:"));
    maxPlayersFilterMinSpinBox = new QSpinBox;
    maxPlayersFilterMinSpinBox->setMinimum(1);
    maxPlayersFilterMinSpinBox->setMaximum(99);
    maxPlayersFilterMinSpinBox->setValue(gamesProxyModel->getMaxPlayersFilterMin());
    maxPlayersFilterMinLabel->setBuddy(maxPlayersFilterMinSpinBox);

    QLabel *maxPlayersFilterMaxLabel = new QLabel(tr("at &most:"));
    maxPlayersFilterMaxSpinBox = new QSpinBox;
    maxPlayersFilterMaxSpinBox->setMinimum(1);
    maxPlayersFilterMaxSpinBox->setMaximum(99);
    maxPlayersFilterMaxSpinBox->setValue(gamesProxyModel->getMaxPlayersFilterMax());
    maxPlayersFilterMaxLabel->setBuddy(maxPlayersFilterMaxSpinBox);

    QGridLayout *maxPlayersFilterLayout = new QGridLayout;
    maxPlayersFilterLayout->addWidget(maxPlayersFilterMinLabel, 0, 0);
    maxPlayersFilterLayout->addWidget(maxPlayersFilterMinSpinBox, 0, 1);
    maxPlayersFilterLayout->addWidget(maxPlayersFilterMaxLabel, 1, 0);
    maxPlayersFilterLayout->addWidget(maxPlayersFilterMaxSpinBox, 1, 1);

    QGroupBox *maxPlayersGroupBox = new QGroupBox(tr("Maximum player count"));
    maxPlayersGroupBox->setLayout(maxPlayersFilterLayout);

    QGridLayout *restrictionsLayout = new QGridLayout;
    restrictionsLayout->addWidget(unavailableGamesVisibleCheckBox, 0, 0);
    restrictionsLayout->addWidget(showPasswordProtectedGames, 1, 0);
    restrictionsLayout->addWidget(showBuddiesOnlyGames, 2, 0);

    QGroupBox *restrictionsGroupBox = new QGroupBox(tr("Restrictions"));
    restrictionsGroupBox->setLayout(restrictionsLayout);


    QGridLayout *leftGrid = new QGridLayout;
    leftGrid->addWidget(gameNameFilterLabel, 0, 0);
    leftGrid->addWidget(gameNameFilterEdit, 0, 1);
    leftGrid->addWidget(creatorNameFilterLabel, 1, 0);
    leftGrid->addWidget(creatorNameFilterEdit, 1, 1);
    leftGrid->addWidget(maxPlayersGroupBox, 2, 0, 1, 2);
    leftGrid->addWidget(restrictionsGroupBox, 3, 0, 1, 2);


    QVBoxLayout *leftColumn = new QVBoxLayout;
    leftColumn->addLayout(leftGrid);
    leftColumn->addStretch();

    QVBoxLayout *rightColumn = new QVBoxLayout;
    rightColumn->addWidget(gameTypeFilterGroupBox);

    QHBoxLayout *hbox = new QHBoxLayout;
    hbox->addLayout(leftColumn);
    hbox->addLayout(rightColumn);

    QDialogButtonBox *buttonBox = new QDialogButtonBox(QDialogButtonBox::Ok | QDialogButtonBox::Cancel);
    connect(buttonBox, SIGNAL(accepted()), this, SLOT(actOk()));
    connect(buttonBox, SIGNAL(rejected()), this, SLOT(reject()));

    QVBoxLayout *mainLayout = new QVBoxLayout;
    mainLayout->addLayout(hbox);
    mainLayout->addWidget(buttonBox);

    setLayout(mainLayout);
    setWindowTitle(tr("Filter games"));
}
Beispiel #10
0
DlgCreateToken::DlgCreateToken(const QStringList &_predefinedTokens, QWidget *parent)
	: QDialog(parent), predefinedTokens(_predefinedTokens)
{
	nameLabel = new QLabel(tr("&Name:"));
	nameEdit = new QLineEdit(tr("Token"));
	nameEdit->selectAll();
	nameLabel->setBuddy(nameEdit);

	colorLabel = new QLabel(tr("C&olor:"));
	colorEdit = new QComboBox;
	colorEdit->addItem(tr("white"), "w");
	colorEdit->addItem(tr("blue"), "u");
	colorEdit->addItem(tr("black"), "b");
	colorEdit->addItem(tr("red"), "r");
	colorEdit->addItem(tr("green"), "g");
	colorEdit->addItem(tr("multicolor"), "m");
	colorEdit->addItem(tr("colorless"), QString());
	colorLabel->setBuddy(colorEdit);

	ptLabel = new QLabel(tr("&P/T:"));
	ptEdit = new QLineEdit;
	ptLabel->setBuddy(ptEdit);

	annotationLabel = new QLabel(tr("&Annotation:"));
	annotationEdit = new QLineEdit;
	annotationLabel->setBuddy(annotationEdit);
	
	destroyCheckBox = new QCheckBox(tr("&Destroy token when it leaves the table"));
	destroyCheckBox->setChecked(true);

	QGridLayout *grid = new QGridLayout;
	grid->addWidget(nameLabel, 0, 0);
	grid->addWidget(nameEdit, 0, 1);
	grid->addWidget(colorLabel, 1, 0);
	grid->addWidget(colorEdit, 1, 1);
	grid->addWidget(ptLabel, 2, 0);
	grid->addWidget(ptEdit, 2, 1);
	grid->addWidget(annotationLabel, 3, 0);
	grid->addWidget(annotationEdit, 3, 1);
	grid->addWidget(destroyCheckBox, 4, 0, 1, 2);
	
	QGroupBox *tokenDataGroupBox = new QGroupBox(tr("Token data"));
	tokenDataGroupBox->setLayout(grid);
	
	cardDatabaseModel = new CardDatabaseModel(db, this);
	cardDatabaseDisplayModel = new CardDatabaseDisplayModel(this);
	cardDatabaseDisplayModel->setSourceModel(cardDatabaseModel);
	cardDatabaseDisplayModel->setIsToken(CardDatabaseDisplayModel::ShowTrue);
	
	chooseTokenFromAllRadioButton = new QRadioButton(tr("Show &all tokens"));
	connect(chooseTokenFromAllRadioButton, SIGNAL(toggled(bool)), this, SLOT(actChooseTokenFromAll(bool)));
	chooseTokenFromDeckRadioButton = new QRadioButton(tr("Show tokens from this &deck"));
	connect(chooseTokenFromDeckRadioButton, SIGNAL(toggled(bool)), this, SLOT(actChooseTokenFromDeck(bool)));
	QTreeView *chooseTokenView = new QTreeView;
	chooseTokenView->setModel(cardDatabaseDisplayModel);
	chooseTokenView->setUniformRowHeights(true);
	chooseTokenView->setRootIsDecorated(false);
	chooseTokenView->setAlternatingRowColors(true);
	chooseTokenView->setSortingEnabled(true);
	chooseTokenView->sortByColumn(0, Qt::AscendingOrder);
	chooseTokenView->resizeColumnToContents(0);
	chooseTokenView->header()->setStretchLastSection(false);
	chooseTokenView->header()->hideSection(1);
	chooseTokenView->header()->hideSection(2);
	chooseTokenView->header()->setResizeMode(3, QHeaderView::ResizeToContents);
	chooseTokenView->header()->setResizeMode(4, QHeaderView::ResizeToContents);
	connect(chooseTokenView->selectionModel(), SIGNAL(currentRowChanged(QModelIndex, QModelIndex)), this, SLOT(tokenSelectionChanged(QModelIndex, QModelIndex)));
	
	if (predefinedTokens.isEmpty())
		chooseTokenFromAllRadioButton->setChecked(true);
	else {
		chooseTokenFromDeckRadioButton->setChecked(true);
		cardDatabaseDisplayModel->setCardNameSet(QSet<QString>::fromList(predefinedTokens));
	}
	
	QVBoxLayout *tokenChooseLayout = new QVBoxLayout;
	tokenChooseLayout->addWidget(chooseTokenFromAllRadioButton);
	tokenChooseLayout->addWidget(chooseTokenFromDeckRadioButton);
	tokenChooseLayout->addWidget(chooseTokenView);
	
	QGroupBox *tokenChooseGroupBox = new QGroupBox(tr("Choose token from list"));
	tokenChooseGroupBox->setLayout(tokenChooseLayout);
	
	QVBoxLayout *leftVBox = new QVBoxLayout;
	leftVBox->addWidget(tokenDataGroupBox);
	leftVBox->addStretch();
	
	QHBoxLayout *hbox = new QHBoxLayout;
	hbox->addLayout(leftVBox);
	hbox->addWidget(tokenChooseGroupBox);
	
	QDialogButtonBox *buttonBox = new QDialogButtonBox(QDialogButtonBox::Ok | QDialogButtonBox::Cancel);
	connect(buttonBox, SIGNAL(accepted()), this, SLOT(actOk()));
	connect(buttonBox, SIGNAL(rejected()), this, SLOT(reject()));
	
	QVBoxLayout *mainLayout = new QVBoxLayout;
	mainLayout->addLayout(hbox);
	mainLayout->addWidget(buttonBox);
	setLayout(mainLayout);

	setWindowTitle(tr("Create token"));
	setFixedHeight(sizeHint().height());
	setMinimumWidth(300);
}