PlayerGUI::PlayerGUI(QWidget *parent) : QDialog(parent), ui(new Ui::PlayerGUI) { ui->setupUi(this); // ui->mainVLayout->addWidget( &ModelConsole::getInstance() ); resize(400, 20); // The simulation will be launched in pause mode, so // the GUI must be similar playPauseClicked(); connect(ui->btPlayPause, SIGNAL(clicked()), this, SLOT(playPauseClicked())); connect(ui->btStep, SIGNAL(clicked()), this, SLOT(stepClicked())); connect(ui->btStop, SIGNAL(clicked()), this, SLOT(stopClicked())); }
HapticsPlayer::HapticsPlayer() : actuator(0) { ui.setupUi(this); #if defined(Q_WS_MAEMO_5) // maemo5 style problem: title of groupboxes is rendered badly if there isn't enough space // that is, the sizehint of the title area is Preferred rather than Minimum. // to fix that, we manually tweak some spacers. ui.verticalSpacer_2->changeSize(20, 20, QSizePolicy::Expanding, QSizePolicy::Fixed); ui.verticalSpacer_3->changeSize(20, 20, QSizePolicy::Expanding, QSizePolicy::Fixed); ui.verticalSpacer_4->changeSize(20, 30, QSizePolicy::Expanding, QSizePolicy::Fixed); ui.verticalSpacer_5->changeSize(20, 30, QSizePolicy::Expanding, QSizePolicy::Fixed); ui.verticalSpacer_6->changeSize(20, 20, QSizePolicy::Expanding, QSizePolicy::Fixed); ui.verticalSpacer_7->changeSize(20, 30, QSizePolicy::Expanding, QSizePolicy::Fixed); #endif connect(ui.actuators, SIGNAL(currentIndexChanged(int)), SLOT(actuatorChanged())); connect(ui.enabled, SIGNAL(toggled(bool)), SLOT(enabledChanged(bool))); connect(ui.playPause, SIGNAL(pressed()), SLOT(playPauseClicked())); connect(ui.stop, SIGNAL(pressed()), &effect, SLOT(stop())); connect(ui.duration, SIGNAL(valueChanged(int)), SLOT(durationChanged(int))); connect(ui.intensity, SIGNAL(valueChanged(int)), SLOT(intensityChanged(int))); //for the envelope connect(ui.attackTime, SIGNAL(valueChanged(int)), SLOT(attackTimeChanged(int))); connect(ui.attackIntensity, SIGNAL(valueChanged(int)), SLOT(attackIntensityChanged(int))); connect(ui.fadeTime, SIGNAL(valueChanged(int)), SLOT(fadeTimeChanged(int))); connect(ui.fadeIntensity, SIGNAL(valueChanged(int)), SLOT(fadeIntensityChanged(int))); //for the period connect(ui.grpPeriod, SIGNAL(toggled(bool)), SLOT(periodToggled(bool))); connect(ui.period, SIGNAL(valueChanged(int)), SLOT(periodChanged(int))); connect(ui.instantPlay, SIGNAL(pressed()), SLOT(instantPlayClicked())); //file API connect(ui.browse, SIGNAL(pressed()), SLOT(browseClicked())); connect(ui.filePlayPause, SIGNAL(pressed()), SLOT(filePlayPauseClicked())); connect(ui.fileStop, SIGNAL(pressed()), &fileEffect, SLOT(stop())); // if pausing a playing effect is not supported then stop playback connect(&fileEffect, SIGNAL(error(QFeedbackEffect::ErrorType)), &fileEffect, SLOT(stop())); foreach (QFeedbackActuator *dev, QFeedbackActuator::actuators()) { ui.actuators->addItem(dev->name()); }