MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) { central = new QWidget(this); central->setContextMenuPolicy(Qt::NoContextMenu); // explicitly forbid usage of context menu so actions item is not shown menu setCentralWidget(central); // Create text editor and set softkeys to it textEditor= new QTextEdit(tr("Navigate in UI to see context sensitive softkeys in action"), this); QAction* clear = new QAction(tr("Clear"), this); clear->setSoftKeyRole(QAction::NegativeSoftKey); textEditor->addAction(clear); ok = new QAction(tr("Ok"), this); ok->setSoftKeyRole(QAction::PositiveSoftKey); connect(ok, SIGNAL(triggered()), this, SLOT(okPressed())); cancel = new QAction(tr("Cancel"), this); cancel->setSoftKeyRole(QAction::NegativeSoftKey); connect(cancel, SIGNAL(triggered()), this, SLOT(cancelPressed())); infoLabel = new QLabel(tr(""), this); infoLabel->setContextMenuPolicy(Qt::NoContextMenu); toggleButton = new QPushButton(tr("Custom"), this); toggleButton->setContextMenuPolicy(Qt::NoContextMenu); toggleButton->setCheckable(true); pushButton = new QPushButton(tr("File Dialog"), this); pushButton->setContextMenuPolicy(Qt::NoContextMenu); QComboBox* comboBox = new QComboBox(this); comboBox->setContextMenuPolicy(Qt::NoContextMenu); comboBox->insertItems(0, QStringList() << QApplication::translate("MainWindow", "Selection1", 0, QApplication::UnicodeUTF8) << QApplication::translate("MainWindow", "Selection2", 0, QApplication::UnicodeUTF8) << QApplication::translate("MainWindow", "Selection3", 0, QApplication::UnicodeUTF8) ); layout = new QGridLayout; layout->addWidget(textEditor, 0, 0, 1, 2); layout->addWidget(infoLabel, 1, 0, 1, 2); layout->addWidget(toggleButton, 2, 0); layout->addWidget(pushButton, 2, 1); layout->addWidget(comboBox, 3, 0, 1, 2); central->setLayout(layout); fileMenu = menuBar()->addMenu(tr("&File")); exit = new QAction(tr("&Exit"), this); fileMenu->addAction(exit); connect(clear, SIGNAL(triggered()), this, SLOT(clearTextEditor())); connect(pushButton, SIGNAL(clicked()), this, SLOT(openDialog())); connect(exit, SIGNAL(triggered()), this, SLOT(exitApplication())); connect(toggleButton, SIGNAL(clicked()), this, SLOT(setCustomSoftKeys())); pushButton->setFocus(); }
void ExpressionQueryWidget::clear() { clearTextEditor(); if (m_lineEdit) m_lineEdit->clear(); if (m_mode == ShellMode) appendPrompt(); }
ExpressionQueryWidget::ExpressionQueryWidget(Mode mode, QDeclarativeEngineDebug *client, QWidget *parent) : QWidget(parent), m_mode(mode), m_client(client), m_query(0), m_textEdit(new QPlainTextEdit), m_lineEdit(0) { m_prompt = QLatin1String(">"); QVBoxLayout *layout = new QVBoxLayout(this); layout->setMargin(0); layout->setSpacing(0); layout->addWidget(m_textEdit); m_textEdit->setFrameStyle(QFrame::NoFrame); updateTitle(); m_highlighter = new QmlJSEditor::Highlighter(m_textEdit->document()); m_highlighter->setParent(m_textEdit->document()); if (m_mode == SeparateEntryMode) { Utils::StyledBar *bar = new Utils::StyledBar; m_lineEdit = new Utils::FilterLineEdit; m_lineEdit->setPlaceholderText(tr("<Type expression to evaluate>")); m_lineEdit->setToolTip(tr("Write and evaluate QtScript expressions.")); m_clearButton = new QToolButton(); m_clearButton->setToolTip(tr("Clear Output")); m_clearButton->setIcon(QIcon(Core::Constants::ICON_CLEAN_PANE)); connect(m_clearButton, SIGNAL(clicked()), this, SLOT(clearTextEditor())); connect(m_lineEdit, SIGNAL(textChanged(QString)), SLOT(changeContextHelpId(QString))); connect(m_lineEdit, SIGNAL(returnPressed()), SLOT(executeExpression())); QHBoxLayout *hbox = new QHBoxLayout(bar); hbox->setMargin(1); hbox->setSpacing(1); hbox->addWidget(m_lineEdit); hbox->addWidget(m_clearButton); layout->addWidget(bar); m_textEdit->setReadOnly(true); m_lineEdit->installEventFilter(this); } else { m_textEdit->installEventFilter(this); appendPrompt(); } setFontSettings(); clear(); }