void ContactExaminerDlg::loadButton_clicked() { QString fn = QFileDialog::getOpenFileName( this, "Select virtual contact files to load", QString(getenv("GRASPIT"))+QString("/models/virtual"),"Virtual Contacts (*.vgr)" ); QStringList::iterator it; if(fn.count() == 0) return; clearButton_clicked(); if (objectRadioButton->isChecked()) { mObject->loadContactData(fn); } else if (handRadioButton->isChecked()){ mHand->loadContactData(fn); mHand->showVirtualContacts(true); } }
FilterWidget::FilterWidget(TQueryMap opts, QList<Attr*> list, Keeper *keeper, QWidget *parent) : QWidget(parent), keeper(keeper), attrList(list), parentWidget(parent), opts(opts) { innerWidget = new QWidget(this); scrollArea = new QScrollArea(this); scrollArea->setWidget( innerWidget ); scrollArea->setWidgetResizable( true ); innerLayout = new QGridLayout( innerWidget ); innerLayout->setSpacing(2); innerLayout->setMargin(2); QWidget *w = 0; int row = 0; for( int i = 0; i < attrList.size(); i++ ) { QApplication::processEvents(); Attr *a = list.at(i); w = getAttrWidget( a, innerWidget ); if ( !w ) continue; QCheckBox *box = new QCheckBox( a->getTitle(), innerWidget); if ( opts.contains(a->getName()) ) { box->setChecked(true); setWidgetData(a, w, opts[a->getName()]); } else { w->setEnabled(false); } widgetMap.insert( a->getName(), w ); connect(box, SIGNAL(toggled(bool)), w, SLOT(setEnabled(bool))); innerLayout->addWidget( box, row++, 0 ); innerLayout->addWidget( w, row++, 0); } filterButton = new QPushButton(tr("Filter"), innerWidget); filterButton->setIcon(QIcon(":/icons/magnifier.png")); clearButton = new QPushButton(tr("Clear"), innerWidget); clearButton->setIcon(QIcon(":/icons/cancel.png")); connect(filterButton, SIGNAL(clicked()), this, SLOT(filterButton_clicked())); connect(clearButton, SIGNAL(clicked()), this, SLOT(clearButton_clicked())); QBoxLayout *hlayout = new QBoxLayout(QBoxLayout::LeftToRight); hlayout->addWidget(filterButton); hlayout->addWidget(clearButton); hlayout->addItem(new QSpacerItem(10, 10 )); innerLayout->addLayout(hlayout, row++, 0); innerLayout->addItem( new QSpacerItem(20, 1200, QSizePolicy::Maximum, QSizePolicy::Maximum), row, 0); QGridLayout *glayout = new QGridLayout(this); glayout->addWidget(scrollArea, 0, 0); glayout->setSpacing(2); glayout->setMargin(2); setLayout(glayout); }