예제 #1
0
int RobotWidget::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
{
    _id = QDockWidget::qt_metacall(_c, _id, _a);
    if (_id < 0)
        return _id;
    if (_c == QMetaObject::InvokeMetaMethod) {
        switch (_id) {
        case 0: changeRobotOnOff((*reinterpret_cast< int(*)>(_a[1])),(*reinterpret_cast< bool(*)>(_a[2]))); break;
        case 1: setPoseBtnClicked(); break;
        default: ;
        }
        _id -= 2;
    }
    return _id;
}
예제 #2
0
RobotWidget::RobotWidget(QWidget* parent)
    : QDockWidget("Current Robot",parent)
{
    QGridLayout *layout = new QGridLayout;
    robotpic = new QLabel;
    isYellowTeamCombo = new QComboBox(this);
    isYellowTeamCombo->addItem("Blue");
    isYellowTeamCombo->addItem("Yellow");
    robotCombo = new QComboBox(this);

    // Add items to the combo box dynamically 
    for (int i=0; i<ROBOT_COUNT; i++){
      QString item=QString::number(i);
      robotCombo->addItem(item);
    }

    // robotCombo->addItem("0");
    // robotCombo->addItem("1");
    // robotCombo->addItem("2");
    // robotCombo->addItem("3");
    // robotCombo->addItem("4");
    // robotCombo->addItem("5");
    vellabel = new QLabel;
    acclabel = new QLabel;
    resetBtn = new QPushButton("Reset");
    locateBtn = new QPushButton("Locate");
    onOffBtn = new QPushButton("Turn Off");
    setPoseBtn = new QPushButton("Set Position");
    layout->addWidget(robotpic,0,0,5,1);
    layout->addWidget(new QLabel("Team"),0,1);
    layout->addWidget(isYellowTeamCombo,0,2);
    layout->addWidget(new QLabel("Index"),1,1);
    layout->addWidget(robotCombo,1,2);
    layout->addWidget(new QLabel("Velocity"),2,1);
    layout->addWidget(vellabel,2,2);
    layout->addWidget(resetBtn,3,1);
    layout->addWidget(locateBtn,3,2);
    layout->addWidget(onOffBtn,4,1);
    layout->addWidget(setPoseBtn,4,2);
    QWidget *widget = new QWidget(this);
    widget->setLayout(layout);
    widget->setSizePolicy(QSizePolicy::Fixed,QSizePolicy::Fixed);
    setWidget(widget);
    getPoseWidget = new GetPositionWidget();
    QObject::connect(setPoseBtn,SIGNAL(clicked()),this,SLOT(setPoseBtnClicked()));
}