예제 #1
0
AboutDialog::AboutDialog(QWidget *parent) :
    QDialog(parent),
    ui(new Ui::AboutDialog)
{
    ui->setupUi(this);

    setFixedSize(ABOUT_DIALOG_WIDTH, ABOUT_DIALOG_HEIGHT);

    QIcon qicon(":image/opswat-logo.ico");
    setWindowIcon(qicon);
    setWindowTitle(APP_NAME);
}
receivecoinsdialog::receivecoinsdialog(qwidget *parent) :
    qdialog(parent),
    ui(new ui::receivecoinsdialog),
    model(0)
{
    ui->setupui(this);

#ifdef q_os_mac // icons on push buttons are very uncommon on mac
    ui->clearbutton->seticon(qicon());
    ui->receivebutton->seticon(qicon());
    ui->showrequestbutton->seticon(qicon());
    ui->removerequestbutton->seticon(qicon());
#else
    ui->clearbutton->seticon(singlecoloricon(":/icons/remove"));
    ui->receivebutton->seticon(singlecoloricon(":/icons/receiving_addresses"));
    ui->showrequestbutton->seticon(singlecoloricon(":/icons/edit"));
    ui->removerequestbutton->seticon(singlecoloricon(":/icons/remove"));
#endif

    // context menu actions
    qaction *copylabelaction = new qaction(tr("copy label"), this);
    qaction *copymessageaction = new qaction(tr("copy message"), this);
    qaction *copyamountaction = new qaction(tr("copy amount"), this);

    // context menu
    contextmenu = new qmenu();
    contextmenu->addaction(copylabelaction);
    contextmenu->addaction(copymessageaction);
    contextmenu->addaction(copyamountaction);

    // context menu signals
    connect(ui->recentrequestsview, signal(customcontextmenurequested(qpoint)), this, slot(showmenu(qpoint)));
    connect(copylabelaction, signal(triggered()), this, slot(copylabel()));
    connect(copymessageaction, signal(triggered()), this, slot(copymessage()));
    connect(copyamountaction, signal(triggered()), this, slot(copyamount()));

    connect(ui->clearbutton, signal(clicked()), this, slot(clear()));
}
sendcoinsdialog::sendcoinsdialog(qwidget *parent) :
    qdialog(parent),
    ui(new ui::sendcoinsdialog),
    clientmodel(0),
    model(0),
    fnewrecipientallowed(true),
    ffeeminimized(true)
{
    ui->setupui(this);

#ifdef q_os_mac // icons on push buttons are very uncommon on mac
    ui->addbutton->seticon(qicon());
    ui->clearbutton->seticon(qicon());
    ui->sendbutton->seticon(qicon());
#else
    ui->addbutton->seticon(singlecoloricon(":/icons/add"));
    ui->clearbutton->seticon(singlecoloricon(":/icons/remove"));
    ui->sendbutton->seticon(singlecoloricon(":/icons/send"));
#endif

    guiutil::setupaddresswidget(ui->lineeditcoincontrolchange, this);

    addentry();

    connect(ui->addbutton, signal(clicked()), this, slot(addentry()));
    connect(ui->clearbutton, signal(clicked()), this, slot(clear()));

    // coin control
    connect(ui->pushbuttoncoincontrol, signal(clicked()), this, slot(coincontrolbuttonclicked()));
    connect(ui->checkbomoorecoincontrolchange, signal(statechanged(int)), this, slot(coincontrolchangechecked(int)));
    connect(ui->lineeditcoincontrolchange, signal(textedited(const qstring &)), this, slot(coincontrolchangeedited(const qstring &)));

    // coin control: clipboard actions
    qaction *clipboardquantityaction = new qaction(tr("copy quantity"), this);
    qaction *clipboardamountaction = new qaction(tr("copy amount"), this);
    qaction *clipboardfeeaction = new qaction(tr("copy fee"), this);
    qaction *clipboardafterfeeaction = new qaction(tr("copy after fee"), this);
    qaction *clipboardbytesaction = new qaction(tr("copy bytes"), this);
    qaction *clipboardpriorityaction = new qaction(tr("copy priority"), this);
    qaction *clipboardlowoutputaction = new qaction(tr("copy dust"), this);
    qaction *clipboardchangeaction = new qaction(tr("copy change"), this);
    connect(clipboardquantityaction, signal(triggered()), this, slot(coincontrolclipboardquantity()));
    connect(clipboardamountaction, signal(triggered()), this, slot(coincontrolclipboardamount()));
    connect(clipboardfeeaction, signal(triggered()), this, slot(coincontrolclipboardfee()));
    connect(clipboardafterfeeaction, signal(triggered()), this, slot(coincontrolclipboardafterfee()));
    connect(clipboardbytesaction, signal(triggered()), this, slot(coincontrolclipboardbytes()));
    connect(clipboardpriorityaction, signal(triggered()), this, slot(coincontrolclipboardpriority()));
    connect(clipboardlowoutputaction, signal(triggered()), this, slot(coincontrolclipboardlowoutput()));
    connect(clipboardchangeaction, signal(triggered()), this, slot(coincontrolclipboardchange()));
    ui->labelcoincontrolquantity->addaction(clipboardquantityaction);
    ui->labelcoincontrolamount->addaction(clipboardamountaction);
    ui->labelcoincontrolfee->addaction(clipboardfeeaction);
    ui->labelcoincontrolafterfee->addaction(clipboardafterfeeaction);
    ui->labelcoincontrolbytes->addaction(clipboardbytesaction);
    ui->labelcoincontrolpriority->addaction(clipboardpriorityaction);
    ui->labelcoincontrollowoutput->addaction(clipboardlowoutputaction);
    ui->labelcoincontrolchange->addaction(clipboardchangeaction);

    // init transaction fee section
    qsettings settings;
    if (!settings.contains("ffeesectionminimized"))
        settings.setvalue("ffeesectionminimized", true);
    if (!settings.contains("nfeeradio") && settings.contains("ntransactionfee") && settings.value("ntransactionfee").tolonglong() > 0) // compatibility
        settings.setvalue("nfeeradio", 1); // custom
    if (!settings.contains("nfeeradio"))
        settings.setvalue("nfeeradio", 0); // recommended
    if (!settings.contains("ncustomfeeradio") && settings.contains("ntransactionfee") && settings.value("ntransactionfee").tolonglong() > 0) // compatibility
        settings.setvalue("ncustomfeeradio", 1); // total at least
    if (!settings.contains("ncustomfeeradio"))
        settings.setvalue("ncustomfeeradio", 0); // per kilobyte
    if (!settings.contains("nsmartfeesliderposition"))
        settings.setvalue("nsmartfeesliderposition", 0);
    if (!settings.contains("ntransactionfee"))
        settings.setvalue("ntransactionfee", (qint64)default_transaction_fee);
    if (!settings.contains("fpayonlyminfee"))
        settings.setvalue("fpayonlyminfee", false);
    if (!settings.contains("fsendfreetransactions"))
        settings.setvalue("fsendfreetransactions", false);
    ui->groupfee->setid(ui->radiosmartfee, 0);
    ui->groupfee->setid(ui->radiocustomfee, 1);
    ui->groupfee->button((int)std::max(0, std::min(1, settings.value("nfeeradio").toint())))->setchecked(true);
    ui->groupcustomfee->setid(ui->radiocustomperkilobyte, 0);
    ui->groupcustomfee->setid(ui->radiocustomatleast, 1);
    ui->groupcustomfee->button((int)std::max(0, std::min(1, settings.value("ncustomfeeradio").toint())))->setchecked(true);
    ui->slidersmartfee->setvalue(settings.value("nsmartfeesliderposition").toint());
    ui->customfee->setvalue(settings.value("ntransactionfee").tolonglong());
    ui->checkboxminimumfee->setchecked(settings.value("fpayonlyminfee").tobool());
    ui->checkboxfreetx->setchecked(settings.value("fsendfreetransactions").tobool());
    minimizefeesection(settings.value("ffeesectionminimized").tobool());
}