void MainWindow::executeScript()
    {
        QAction *action = static_cast<QAction *>(sender());

        if (action->data().toString() != "Execute") {
            stopScript();
            return;
        }

        QueryWidget *widget = _workArea->currentQueryWidget();
        if (!widget)
            return;

        widget->execute();
    }
示例#2
0
/**
 * @brief Overrides QTabWidget::keyPressEvent() in order to intercept
 * tab close key shortcuts (Ctrl+F4 and Ctrl+W)
 */
void WorkAreaTabWidget::keyPressEvent(QKeyEvent *keyEvent)
{
    if ((keyEvent->modifiers() & Qt::ControlModifier) &&
            (keyEvent->key()==Qt::Key_F4 || keyEvent->key()==Qt::Key_W))
    {
        int index = currentIndex();
        closeTab(index);
        return;
    }
    QueryWidget *widget = currentQueryWidget();

    if (KeyboardManager::isPreviousTabShortcut(keyEvent)) {
        previousTab();
        return;
    } else if (KeyboardManager::isNextTabShortcut(keyEvent)) {
        nextTab();
        return;
    } else if (KeyboardManager::isNewTabShortcut(keyEvent) && widget) {
        widget->openNewTab();
        return;
    } else if (KeyboardManager::isDuplicateTabShortcut(keyEvent) && widget) {
        widget->duplicate();
        return;
    } else if (KeyboardManager::isSetFocusOnQueryLineShortcut(keyEvent) && widget) {
        widget->setScriptFocus();
        return;
    } else if (KeyboardManager::isExecuteScriptShortcut(keyEvent) && widget) {
        widget->execute();
        return;
    } else if (KeyboardManager::isAutoCompleteShortcut(keyEvent) && widget) {
        widget->showAutocompletion();
        return;
    } else if (KeyboardManager::isHideAutoCompleteShortcut(keyEvent) && widget) {
        widget->hideAutocompletion();
        return;
    }

    QTabWidget::keyPressEvent(keyEvent);
}
示例#3
0
 void WorkAreaWidget::executeScript()
 {
     QueryWidget *currentWidget = (QueryWidget *)_tabWidget->currentWidget();
     if (currentWidget)
         currentWidget->execute();
 }