コード例 #1
0
/* ==== JBEAM TEXT EDIT ==== */
JBEAM_TextBox::JBEAM_TextBox(QWidget *parent, NodeBeam *nb) : QPlainTextEdit(parent)
{
    LineNumbersA = new LineNumbers(this);
    setViewportMargins(26,0,0,0);

    //Connect linenumbers update request
    connect(this, SIGNAL(updateRequest(QRect,int)), this, SLOT(updateLineNumbers(QRect,int)));
    connect(this, SIGNAL(textChanged()), this, SLOT(textchanged()));

    synhigh = new Highlighter(this->document());

    JBEAM_NodeCursor = -1;
    JBEAM_BeamCursor = -1;
    CurrentNodeBeam = nb;

    this->setLineWrapMode(QPlainTextEdit::NoWrap); //No automatic line change
    this->setTabStopWidth(15); //Set smaller TAB width

    EmptyJbeamTextTemplate = "{\n"
                   "    \"Vehicle\":{\n"
                   "        \"information\":{\n"
                   "            \"authors\":\"Your name\"      \n"
                   "        },\n"
                   "        \"nodes\":[\n"
                   "            [\"id\", \"posX\", \"posY\", \"posZ\"],\n\n"
                   "            //BNEnodes\n"
                   "   \n"
                   "        ],\n"
                   "        \"beams\":[\n"
                   "            [\"id1:\", \"id2:\"],\n\n"
                   "            //BNEbeams\n"
                   "   \n"
                   "   \n"
                   "        ],\n"
                   "        \"triangles\":[\n"
                   "            [\"id1:\", \"id2:\", \"id3:\"],\n\n"
                   "            //BNEtriangles\n"
                   "   \n"
                   "   \n"
                   "        ],\n"
                   "   }\n"
                   "}\n";

    ResetContents();

    QFont fontti;
    fontti.setFamily(tr("Verdana"));
    this->setFont(fontti);

    for(int i=0; i<CurrentNodeBeam->ListTypes.size();i++)
    {
        this->JBEAM_curorNames.append(CurrentNodeBeam->ListTypes.at(i).keyword);
    }
}
コード例 #2
0
ファイル: qlabel1.cpp プロジェクト: aidint/PyG
void QLabel1::ShowContextMenu(const QPoint& pos) // this is a slot
{

    QPoint globalPos = this->mapToGlobal(pos);
    QMenu myMenu;
    myMenu.addAction("Remove");
    myMenu.addAction("Name");
    //myMenu.addAction("Change Code");
    myMenu.addAction("Change Text");

    QAction* selectedItem = myMenu.exec(globalPos);
    if (selectedItem)
    {
        if(selectedItem->text() == "Remove"){
            this->hide1();
        }
        if(selectedItem->text() == "Name"){
            QMessageBox v;
            v.setText(this->name);
            v.exec();
        }
        if(selectedItem->text() == "Change Code"){
            coder1->setWindowTitle(this->name + ".clicked()");
            coder1->setPlainText(code);
            coder1->show();

        }
        if(selectedItem->text() == "Change Text"){
            QString text = QInputDialog::getText(this,"Text","Enter your proper text:",QLineEdit::Normal,text1);
            this->setText(text);
            text1 = text;
            emit textchanged(text,this->name);
        }
    }

}
コード例 #3
0
transactionview::transactionview(qwidget *parent) :
    qwidget(parent), model(0), transactionproxymodel(0),
    transactionview(0)
{
    // build filter row
    setcontentsmargins(0,0,0,0);

    qhboxlayout *hlayout = new qhboxlayout();
    hlayout->setcontentsmargins(0,0,0,0);
#ifdef q_os_mac
    hlayout->setspacing(5);
    hlayout->addspacing(26);
#else
    hlayout->setspacing(0);
    hlayout->addspacing(23);
#endif

    watchonlywidget = new qcombobox(this);
    watchonlywidget->setfixedwidth(24);
    watchonlywidget->additem("", transactionfilterproxy::watchonlyfilter_all);
    watchonlywidget->additem(singlecoloricon(":/icons/eye_plus"), "", transactionfilterproxy::watchonlyfilter_yes);
    watchonlywidget->additem(singlecoloricon(":/icons/eye_minus"), "", transactionfilterproxy::watchonlyfilter_no);
    hlayout->addwidget(watchonlywidget);

    datewidget = new qcombobox(this);
#ifdef q_os_mac
    datewidget->setfixedwidth(121);
#else
    datewidget->setfixedwidth(120);
#endif
    datewidget->additem(tr("all"), all);
    datewidget->additem(tr("today"), today);
    datewidget->additem(tr("this week"), thisweek);
    datewidget->additem(tr("this month"), thismonth);
    datewidget->additem(tr("last month"), lastmonth);
    datewidget->additem(tr("this year"), thisyear);
    datewidget->additem(tr("range..."), range);
    hlayout->addwidget(datewidget);

    typewidget = new qcombobox(this);
#ifdef q_os_mac
    typewidget->setfixedwidth(121);
#else
    typewidget->setfixedwidth(120);
#endif

    typewidget->additem(tr("all"), transactionfilterproxy::all_types);
    typewidget->additem(tr("received with"), transactionfilterproxy::type(transactionrecord::recvwithaddress) |
                        transactionfilterproxy::type(transactionrecord::recvfromother));
    typewidget->additem(tr("sent to"), transactionfilterproxy::type(transactionrecord::sendtoaddress) |
                        transactionfilterproxy::type(transactionrecord::sendtoother));
    typewidget->additem(tr("to yourself"), transactionfilterproxy::type(transactionrecord::sendtoself));
    typewidget->additem(tr("mined"), transactionfilterproxy::type(transactionrecord::generated));
    typewidget->additem(tr("other"), transactionfilterproxy::type(transactionrecord::other));

    hlayout->addwidget(typewidget);

    addresswidget = new qlineedit(this);
#if qt_version >= 0x040700
    addresswidget->setplaceholdertext(tr("enter address or label to search"));
#endif
    hlayout->addwidget(addresswidget);

    amountwidget = new qlineedit(this);
#if qt_version >= 0x040700
    amountwidget->setplaceholdertext(tr("min amount"));
#endif
#ifdef q_os_mac
    amountwidget->setfixedwidth(97);
#else
    amountwidget->setfixedwidth(100);
#endif
    amountwidget->setvalidator(new qdoublevalidator(0, 1e20, 8, this));
    hlayout->addwidget(amountwidget);

    qvboxlayout *vlayout = new qvboxlayout(this);
    vlayout->setcontentsmargins(0,0,0,0);
    vlayout->setspacing(0);

    qtableview *view = new qtableview(this);
    vlayout->addlayout(hlayout);
    vlayout->addwidget(createdaterangewidget());
    vlayout->addwidget(view);
    vlayout->setspacing(0);
    int width = view->verticalscrollbar()->sizehint().width();
    // cover scroll bar width with spacing
#ifdef q_os_mac
    hlayout->addspacing(width+2);
#else
    hlayout->addspacing(width);
#endif
    // always show scroll bar
    view->setverticalscrollbarpolicy(qt::scrollbaralwayson);
    view->settabkeynavigation(false);
    view->setcontextmenupolicy(qt::customcontextmenu);

    view->installeventfilter(this);

    transactionview = view;

    // actions
    qaction *copyaddressaction = new qaction(tr("copy address"), this);
    qaction *copylabelaction = new qaction(tr("copy label"), this);
    qaction *copyamountaction = new qaction(tr("copy amount"), this);
    qaction *copytxidaction = new qaction(tr("copy transaction id"), this);
    qaction *editlabelaction = new qaction(tr("edit label"), this);
    qaction *showdetailsaction = new qaction(tr("show transaction details"), this);

    contextmenu = new qmenu();
    contextmenu->addaction(copyaddressaction);
    contextmenu->addaction(copylabelaction);
    contextmenu->addaction(copyamountaction);
    contextmenu->addaction(copytxidaction);
    contextmenu->addaction(editlabelaction);
    contextmenu->addaction(showdetailsaction);

    mapperthirdpartytxurls = new qsignalmapper(this);

    // connect actions
    connect(mapperthirdpartytxurls, signal(mapped(qstring)), this, slot(openthirdpartytxurl(qstring)));

    connect(datewidget, signal(activated(int)), this, slot(choosedate(int)));
    connect(typewidget, signal(activated(int)), this, slot(choosetype(int)));
    connect(watchonlywidget, signal(activated(int)), this, slot(choosewatchonly(int)));
    connect(addresswidget, signal(textchanged(qstring)), this, slot(changedprefix(qstring)));
    connect(amountwidget, signal(textchanged(qstring)), this, slot(changedamount(qstring)));

    connect(view, signal(doubleclicked(qmodelindex)), this, signal(doubleclicked(qmodelindex)));
    connect(view, signal(customcontextmenurequested(qpoint)), this, slot(contextualmenu(qpoint)));

    connect(copyaddressaction, signal(triggered()), this, slot(copyaddress()));
    connect(copylabelaction, signal(triggered()), this, slot(copylabel()));
    connect(copyamountaction, signal(triggered()), this, slot(copyamount()));
    connect(copytxidaction, signal(triggered()), this, slot(copytxid()));
    connect(editlabelaction, signal(triggered()), this, slot(editlabel()));
    connect(showdetailsaction, signal(triggered()), this, slot(showdetails()));
}