db_error_dialog::db_error_dialog(const QString error) : m_error_text(error) { setWindowTitle(tr("Database error")); QVBoxLayout* layout = new QVBoxLayout(this); setMinimumWidth(400); // reasonable minimum QPlainTextEdit* label = new QPlainTextEdit; label->setPlainText(error); label->setReadOnly(true); label->setSizePolicy(QSizePolicy::Ignored, QSizePolicy::Fixed); label->setFrameShape(QFrame::Box); label->setFrameShadow(QFrame::Raised); layout->addWidget(label); m_btn_group = new QButtonGroup(this); QButtonGroup* g = m_btn_group; QRadioButton* btn1 = new QRadioButton(tr("Continue")); g->addButton(btn1, 1); btn1->setChecked(true); QRadioButton* btn2 = new QRadioButton(tr("Try to reconnect")); g->addButton(btn2, 2); QRadioButton* btn3 = new QRadioButton(tr("Quit application")); g->addButton(btn3, 3); layout->addWidget(btn1); layout->addWidget(btn2); layout->addWidget(btn3); QPushButton* btn_OK = new QPushButton(tr("OK")); btn_OK->setDefault(true); QPushButton* copy_btn = new QPushButton(tr("Copy")); QDialogButtonBox* buttonBox = new QDialogButtonBox(Qt::Horizontal); buttonBox->addButton(copy_btn, QDialogButtonBox::ActionRole); buttonBox->addButton(btn_OK, QDialogButtonBox::AcceptRole); layout->addWidget(buttonBox); connect(copy_btn, SIGNAL(clicked()), this, SLOT(copy_error())); connect(buttonBox, SIGNAL(accepted()), this, SLOT(accept())); connect(this, SIGNAL(accepted()), this, SLOT(handle_error())); }
void ItemEditorWidget::initMenuItems() { Q_ASSERT(m_editor); foreach (QAction *action, m_toolBar->actions()) delete action; QAction *act; act = new QAction( iconSave(), tr("Save"), m_editor ); m_toolBar->addAction(act); act->setToolTip( tr("Save Item (<strong>F2</strong>)") ); act->setShortcut( QKeySequence(tr("F2", "Shortcut to save item editor changes")) ); connect( act, SIGNAL(triggered()), this, SLOT(saveAndExit()) ); act = new QAction( iconCancel(), tr("Cancel"), m_editor ); m_toolBar->addAction(act); act->setToolTip( tr("Cancel Editing and Revert Changes") ); act->setShortcut( QKeySequence(tr("Escape", "Shortcut to revert item editor changes")) ); connect( act, SIGNAL(triggered()), this, SIGNAL(cancel()) ); QPlainTextEdit *plainTextEdit = qobject_cast<QPlainTextEdit*>(m_editor); if (plainTextEdit != NULL) { plainTextEdit->setFrameShape(QFrame::NoFrame); act = new QAction( iconUndo(), tr("Undo"), m_editor ); m_toolBar->addAction(act); act->setShortcut(QKeySequence::Undo); act->setEnabled(false); connect( act, SIGNAL(triggered()), plainTextEdit, SLOT(undo()) ); connect( plainTextEdit, SIGNAL(undoAvailable(bool)), act, SLOT(setEnabled(bool)) ); act = new QAction( iconRedo(), tr("Redo"), m_editor ); m_toolBar->addAction(act); act->setShortcut(QKeySequence::Redo); act->setEnabled(false); connect( act, SIGNAL(triggered()), plainTextEdit, SLOT(redo()) ); connect( plainTextEdit, SIGNAL(redoAvailable(bool)), act, SLOT(setEnabled(bool)) ); } }