예제 #1
0
파일: toolbar.cpp 프로젝트: manhere/booxsdk
OnyxToolBarItem::OnyxToolBarItem(QWidget *parent, QAction &action)
: QWidget(parent)
, action_(action)
, state_(STATE_NORMAL)
{
    connect(&action_, SIGNAL(changed()), this, SLOT(onActionChanged()));
    QSize size = iconSize();
    size += QSize(2, 2);
    setFixedSize(size);
    setAutoFillBackground(false);
}
예제 #2
0
void ActionButton::setAction(Action *AAction)
{
	if (FAction != AAction)
	{
		if (FAction)
		{
			disconnect(FAction,0,this,0);
		}

		FAction = AAction;
		onActionChanged();

		if (FAction)
		{
			connect(this,SIGNAL(clicked()),FAction,SLOT(trigger()));
			connect(FAction,SIGNAL(changed()),SLOT(onActionChanged()));
			connect(FAction,SIGNAL(actionDestroyed(Action *)),SLOT(onActionDestroyed(Action *)));
			setActionString(AAction->data(Action::DR_UserDefined  + 1).toString());
		}

		emit actionChanged();
	}
}
예제 #3
0
TradePadWidget::TradePadWidget(QWidget *parent) : QWidget(parent)
{
    //iniFileString = QDir::currentPath() + "/workspace.ini";
    //wsSettings = new QSettings(iniFileString, QSettings::IniFormat);

    setWindowFlags(Qt::Window);
    setWindowTitle("TradePad");

    pLabelSymbol = new QLabel("Symbol");

    pBtnBid = new QPushButton("12.32");
    pBtnAsk = new QPushButton("12.34");
    pLabelBidSz = new QLabel("150");
    pLabelAskSz = new QLabel("132");

    pLabelSymbol->setStyleSheet("background-color: #000033;"
                               "font: 18pt;"
                               "border: 1px solid #808080;"
                               "border-radius: 5px;"
                               "qproperty-alignment: AlignCenter;");

    pBtnBid->setStyleSheet("background-color: #006666;"
                             "font: 24pt;"
                             "border: 1px solid #010000;"
                             "border-radius: 5px;"
                             "qproperty-alignment: AlignCenter;");

    pLabelBidSz->setStyleSheet("background-color: #006666;"
                               "font: 16pt;"
                               "border: 1px solid #010000;"
                               "border-radius: 5px;"
                               "qproperty-alignment: AlignCenter;");

    pBtnAsk->setStyleSheet("background-color: #400000;"
                             "font: 24pt;"
                             "border: 1px solid #500000;"
                             "border-radius: 5px;"
                             "qproperty-alignment: AlignCenter;");

    pLabelAskSz->setStyleSheet("background-color: #400000;"
                               "font: 16pt;"
                               "border: 1px solid #500000;"
                               "border-radius: 5px;"
                               "qproperty-alignment: AlignCenter;");


    pComboAction = new QComboBox();
    pComboAction->addItem("BUY");
    pComboAction->addItem("SELL");

    pComboOrderType = new QComboBox();
    pComboOrderType->addItem("LMT");
    pComboOrderType->addItem("MKT");

    QLabel *pLabelQty = new QLabel("Qty:");
    pEditQty = new QLineEdit();


    QLabel *pLabelPrice = new QLabel("Price:");
    pEditPrice = new QLineEdit();

    //QWidget* spacer = new QWidget();
    pBtnSubmit = new QPushButton("BUY");
    pBtnSubmit->setStyleSheet("background-color:#006666;font: 18pt;");
    pBtnSubmit->setSizePolicy(QSizePolicy::Expanding,QSizePolicy::Expanding);


    QGridLayout *gridLayout = new QGridLayout;

    gridLayout->addWidget(pLabelSymbol,0,0,1,2);

    gridLayout->addWidget(pBtnAsk,1,0,1,1);
    gridLayout->addWidget(pLabelAskSz,1,1,1,1);

    gridLayout->addWidget(pBtnBid,2,0,1,1);
    gridLayout->addWidget(pLabelBidSz,2,1,1,1);

    gridLayout->addWidget(pComboAction,3,0,1,1);
    gridLayout->addWidget(pComboOrderType,3,1,1,1);

    gridLayout->addWidget(pLabelQty,4,0,1,1);
    gridLayout->addWidget(pEditQty,4,1,1,1);

    gridLayout->addWidget(pLabelPrice,5,0,1,1);
    gridLayout->addWidget(pEditPrice,5,1,1,1);

    gridLayout->addWidget(pBtnSubmit,6,0,1,2);
    setLayout(gridLayout);

    setMinimumSize(200, 200);

    connect(pComboAction, SIGNAL(currentIndexChanged(QString)), this, SLOT(onActionChanged(QString)));
    connect(pComboOrderType, SIGNAL(currentIndexChanged(QString)), this, SLOT(onOrderTypeChanged(QString)));
    connect(pBtnBid, SIGNAL(clicked(bool)), this, SLOT(onBtnBidClicked(bool)));
    connect(pBtnAsk, SIGNAL(clicked(bool)), this, SLOT(onBtnAskClicked(bool)));
    connect(pBtnSubmit, SIGNAL(clicked(bool)),this, SLOT(onSubmit(bool)));
}