⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mainimpl.cpp

📁 用Qt4编写的linux IDE开发环境
💻 CPP
📖 第 1 页 / 共 5 页
字号:
    actionsetFocusToEditor->setShortcutContext( Qt::WindowShortcut );    connect(actionToggleBreakpoint, SIGNAL(triggered()), this, SLOT(slotToggleBreakpoint()) );    connect(actionDebug, SIGNAL(triggered()), this, SLOT(slotDebug()) );    connect(actionExecuteWithoutDebug, SIGNAL(triggered()), this, SLOT(slotExecuteWithoutDebug()) );    connect(actionStopDebug, SIGNAL(triggered()), this, SLOT(slotContinueDebug()) );    connect(actionStepInto, SIGNAL(triggered()), this, SLOT(slotStepInto()) );    connect(actionStepOver, SIGNAL(triggered()), this, SLOT(slotStepOver()) );    connect(actionStepOut, SIGNAL(triggered()), this, SLOT(slotStepOut()) );    connect(actionQuit, SIGNAL(triggered()), this, SLOT(close()) );    connect(treeFiles, SIGNAL(itemDoubleClicked(QTreeWidgetItem *, int)), this, SLOT(slotDoubleClickTreeFiles(QTreeWidgetItem *, int)) );    connect(treeFiles, SIGNAL(itemClicked(QTreeWidgetItem *, int)), this, SLOT(slotClickTreeFiles(QTreeWidgetItem *, int)) );    connect(findFiles, SIGNAL(currentItemChanged(QListWidgetItem *, QListWidgetItem *)), this, SLOT(slotFindFilesActivated( QListWidgetItem *, QListWidgetItem *)) );    connect(findLines, SIGNAL(itemDoubleClicked ( QListWidgetItem *)), this, SLOT(slotDoubleClickFindLines( QListWidgetItem *)) );    connect(actionHelpQtWord, SIGNAL(triggered()), this, SLOT(slotHelpQtWord()) );    connect(actionSwitchHeaderSources, SIGNAL(triggered()), this, SLOT(slotOtherFile()) );    connect(actionToggleBookmark, SIGNAL(triggered()), this, SLOT(slotToggleBookmark()) );    connect(actionNextBookmark, SIGNAL(triggered()), this, SLOT(slotNextBookmark()) );    connect(actionPreviousBookmark, SIGNAL(triggered()), this, SLOT(slotPreviousBookmark()) );    connect(actionClearAllBookmarks, SIGNAL(triggered()), this, SLOT(slotClearAllBookmarks()) );    connect(actionOpenFile, SIGNAL(triggered()), this, SLOT(slotOpenFile()) );    connect(actionNewQtVersion, SIGNAL(triggered()), this, SLOT(slotNewQtVersion()) );    connect(actionOtherFile, SIGNAL(triggered()), this, SLOT(slotOtherFile()) );    //    m_projectGroup = new QActionGroup( this );    m_projectGroup->addAction( actionCloseProject );    m_projectGroup->addAction( actionSaveProject );    m_projectGroup->addAction( actionAddNewItem );    m_projectGroup->addAction( actionAddNewClass );    m_projectGroup->addAction( actionAddScope );    m_projectGroup->addAction( actionAddExistingFiles );    m_projectGroup->addAction( actionProjectPropertie );    m_projectGroup->addAction( actionBuild );    m_projectGroup->addAction( actionRebuild );    m_projectGroup->addAction( actionClean );    m_projectGroup->addAction( actionStopBuild );    m_projectGroup->addAction( actionCompile );    m_projectGroup->addAction( actionQmake );    m_projectGroup->addAction( actionDebug );    m_projectGroup->addAction( actionStopDebug );    m_projectGroup->addAction( actionExecuteWithoutDebug );    m_projectGroup->addAction( actionStepOut );    m_projectGroup->addAction( actionStepOver );    m_projectGroup->addAction( actionStepInto );    m_projectGroup->addAction( actionResetExecutablesList );    m_projectGroup->setEnabled( false );    //    m_buildingGroup = new QActionGroup( this );    m_buildingGroup->addAction( actionCompile );    m_buildingGroup->addAction( actionQmake );    m_buildingGroup->addAction( actionClean );    m_buildingGroup->addAction( actionBuild );    m_buildingGroup->addAction( actionRebuild );    m_buildingGroup->addAction( actionExecuteWithoutDebug );    m_buildingGroup->addAction( actionDebug );    m_buildingGroup->addAction( actionStopDebug );    m_buildingGroup->addAction( actionStepInto );    m_buildingGroup->addAction( actionStepOver );    m_buildingGroup->addAction( actionStepOut );}//void MainImpl::slotShortcuts(){    ShortcutsImpl *dialog = new ShortcutsImpl(this);    dialog->exec();    delete dialog;}//void MainImpl::slotNewFile(){    QString s = QFileDialog::getSaveFileName(                    this,                    tr("Choose the file to create"),                    "",                    tr("Files")+" (*.cpp *.h *.txt *.* *)" );    if ( s.isEmpty() )    {        // Cancel is clicked        return;    }    QFile file(s);    if ( file.exists() )    {        QMessageBox::warning(0,                             "QDevelop", tr("The file \"%1\"\n already exists in directory.").arg(s),                             tr("Cancel") );        return;    }    if (!file.open(QIODevice::WriteOnly | QIODevice::Text))    {        QMessageBox::about(0, "QDevelop",tr("Unable to create %1").arg(s));        return;    }    file.close();    openFile( QStringList( s ) );}//void MainImpl::slotSetFocusToEditor(){    Editor *editor = currentEditor();    if ( editor  )        editor->setFocus();}//void MainImpl::slotToggleBreakpoint(){    Editor *editor = currentEditor();    if ( editor  )        editor->toggleBreakpoint();}//void MainImpl::slotPreviousBookmark(){    QList<QAction *> actionsList = menuBookmarks->actions();    int pos = actionsList.indexOf( actionActiveBookmark );    int posFirstBookmark = actionsList.indexOf( actionClearAllBookmarks ) + 2;    if ( posFirstBookmark > actionsList.count() )        posFirstBookmark = -1;    int posLastBookmark = actionsList.count()-1;    if ( pos != -1 && posFirstBookmark < pos )    {        QAction *newAction = actionsList.at( pos - 1 );        slotActivateBookmark( newAction );    }    else if ( posFirstBookmark != -1 )    {        QAction *newAction = actionsList.at( posLastBookmark );        slotActivateBookmark( newAction );    }}//void MainImpl::slotNextBookmark(){    QList<QAction *> actionsList = menuBookmarks->actions();    int count = actionsList.count();    int pos = actionsList.indexOf( actionActiveBookmark );    if ( pos != 1 && pos+1 < count )    {        QAction *newAction = actionsList.at( pos + 1 );        slotActivateBookmark( newAction );    }    else    {        int posFirstBookmark = actionsList.indexOf( actionClearAllBookmarks ) + 2;        if ( posFirstBookmark < count )        {            QAction *newAction = actionsList.at( posFirstBookmark );            slotActivateBookmark( newAction );        }    }}//void MainImpl::slotToggleBookmark(){    Editor *editor = currentEditor();    if ( editor  )        editor->toggleBookmark();}//void MainImpl::slotToggleComment(){    Editor *editor = currentEditor();    if ( editor  )        editor->comment( TextEdit::Toggle );}//void MainImpl::slotComment(){    Editor *editor = currentEditor();    if ( editor  )        editor->comment( TextEdit::Comment );}//void MainImpl::slotMethodsList(){    Editor *editor = currentEditor();    if ( editor  )        editor->methodsList();}//void MainImpl::slotGotoImplementation(){    Editor *editor = currentEditor();    if ( editor  )        editor->gotoImplementation();}//void MainImpl::slotGotoDeclaration(){    Editor *editor = currentEditor();    if ( editor  )        editor->gotoDeclaration();}//void MainImpl::slotGotoMatchingBracket(){    Editor *editor = currentEditor();    if ( editor  )        editor->gotoMatchingBracket();}//void MainImpl::slotUncomment(){    Editor *editor = currentEditor();    if ( editor  )        editor->comment( TextEdit::Uncomment );}//void MainImpl::slotPreviousTab(){    if ( 0 < m_tabEditors->count() )    {        int i = m_tabEditors->currentIndex()-1;        Editor *editor = givenEditor( 0>i?m_tabEditors->count()-1:i );        if ( editor  )            m_tabEditors->setCurrentWidget( editor );    }}//void MainImpl::slotNextTab(){    if ( 0 < m_tabEditors->count() )    {        int i = (m_tabEditors->currentIndex()+1)%m_tabEditors->count();        Editor *editor = givenEditor(i);        if ( editor  )            m_tabEditors->setCurrentWidget( editor );    }}//void MainImpl::slotParameters(){    if (!m_projectManager)        return;    ParametersImpl *parametersimpl = new ParametersImpl(this);    parametersimpl->setParameters( m_projectManager->parameters() );    if ( parametersimpl->exec() == QDialog::Accepted )        m_projectManager->setParameters( parametersimpl->parameters() );    delete parametersimpl;}//void MainImpl::slotOptions(){    OptionsImpl *options = new OptionsImpl(this, m_font, m_lineNumbers, m_selectionBorder,                                           m_autoIndent, m_cppHighlighter, m_tabStopWidth, m_saveBeforeBuild, m_restoreOnStart,                                           m_formatPreprocessorText, m_formatQtText, m_formatSingleComments,                                           m_formatMultilineComments, m_formatQuotationText, m_formatMethods,                                           m_formatKeywords, m_autoMaskDocks, m_endLine, m_tabSpaces, m_autoCompletion,                                           m_backgroundColor, m_promptBeforeQuit, m_highlightCurrentLine, m_currentLineColor, m_autobrackets,                                           m_showTreeClasses, m_intervalUpdatingClasses, m_projectsDirectory, m_match, m_matchingColor,                                           m_closeButtonInTabs, m_pluginsDirectory, m_makeOptions, m_mibCodec,                                           m_includeDirectory, m_displayEditorToolbars, m_displayWhiteSpaces, m_documentationDirectory,                                           m_textColor, m_automaticCompilation     );    if ( options->exec() == QDialog::Accepted )    {        QApplication::setOverrideCursor(Qt::WaitCursor);        m_showTreeClasses = options->showTreeClasses->isChecked();        m_automaticCompilation = options->compileAuto->isChecked();        m_intervalUpdatingClasses = options->interval->value();        m_font = QFont( options->font().family(), options->font().pointSize() );        m_tabStopWidth = options->tabStopWidth->value();        m_cppHighlighter = options->highlight->isChecked();        m_lineNumbers = options->numbers->isChecked();        m_autoIndent = options->indent->isChecked();        m_selectionBorder = options->selectionBorder->isChecked();        m_saveBeforeBuild = options->saveAll->isChecked();        m_restoreOnStart = options->restore->isChecked();        m_endLine = (EndLine)options->endLine->currentIndex();        m_tabSpaces = options->tabSpaces->isChecked();        m_autoCompletion = options->completion->isChecked();        m_autobrackets = options->brackets->isChecked();        m_match = options->match->isChecked();        m_highlightCurrentLine = options->groupHighlightCurrentLine->isChecked();        m_promptBeforeQuit = options->promptBeforeQuit->isChecked();        m_projectsDirectory = options->projectsDirectory->text();        m_pluginsDirectory = options->pluginsDirectory->text();        m_includeDirectory = options->includeDirectory->text();        m_documentationDirectory = options->documentationDirectory->text();        m_makeOptions = options->makeOptions->text();        m_closeButtonInTabs = options->closeButton->isChecked();        setCrossButton( !m_closeButtonInTabs );        //        m_formatPreprocessorText = options->syntaxe()->preprocessorFormat();        m_formatQtText = options->syntaxe()->classFormat();        m_formatSingleComments = options->syntaxe()->singleLineCommentFormat();        m_formatMultilineComments = options->syntaxe()->multiLineCommentFormat();        m_formatQuotationText = options->syntaxe()->quotationFormat();        m_formatMethods = options->syntaxe()->functionFormat();        m_formatKeywords = options->syntaxe()->keywordFormat();        m_backgroundColor = options->backgroundColor();        m_textColor = options->textColor();        m_currentLineColor = options->currentLineColor();        m_matchingColor = options->matchingColor();        m_mibCodec = options->mib();        m_displayEditorToolbars = options->showEditorToolbars->isChecked();        m_displayWhiteSpaces = options->displayWhiteSpaces->isChecked();        slotUpdateOtherFileActions();        foreach(Editor *editor, allEditors() )        {            editor->setShowTreeClasses( m_showTreeClasses );            editor->setIntervalUpdatingTreeClasses( m_intervalUpdatingClasses );            editor->setFont( m_font );            editor->setTabStopWidth( m_tabStopWidth );            editor->setSyntaxHighlight( m_cppHighlighter );            editor->setLineNumbers( m_lineNumbers );            editor->setAutoIndent( m_autoIndent );            editor->setMatch( m_match );            editor->setHighlightCurrentLine( m_highlightCurrentLine );            editor->setSelectionBorder( m_selectionBorder );            editor->setAutoCompletion( m_autoCompletion );            editor->setEndLine( m_endLine );            editor->setTabSpaces( m_tabSpaces );            editor->setBackgroundColor( m_backgroundColor );            editor->setTextColor( m_textColor );            editor->setCurrentLineColor( m_currentLineColor );            editor->setMatchingColor( m_matchingColor );            editor->setAutobrackets( m_autobrackets );            editor->setShowWhiteSpaces( m_displayWhiteSpaces );            editor->displayEditorToolbar( m_displayEditorToolbars );            editor->setSyntaxColors            (                m_formatPreprocessorText,                m_formatQtText,                m_formatSingleComments,                m_formatMultilineComments,                m_formatQuotationText,                m_formatMethods,                m_formatKeywords            );        }        tabExplorer->setTabEnabled( 1, m_showTreeClasses );        if (!m_showTreeClasses) //ToolsOptions/General            tabExplorer->setTabToolTip( 1, tr("Classes explorer is disabled, please enable it in the Options dialog") );        else            tabExplorer->setTabToolTip( 1, "" );	    m_assistant->setdocumentationDirectory( m_documentationDirectory );        QApplication::restoreOverrideCursor();    }    delete options;}//void MainImpl::saveINI(){    QSettings settings(getQDevelopPath() + "qdevelop.ini", QSettings::IniFormat);    settings.beginGroup("Options");    settings.setValue("m_showTreeClasses", m_showTreeClasses);    settings.setValue("m_intervalUpdatingClasses", m_intervalUpdatingClasses);    settings.setValue("m_automaticCompilation", m_automaticCompilation);	settings.setValue("m_font", m_font.toString());    settings.setValue("m_tabStopWidth", m_tabStopWidth);    settings.setValue("m_cppHighlighter", m_cppHighlighter);    settings.setValue("m_lineNumbers", m_lineNumbers);    settings.setValue("m_autoIndent", m_autoIndent);    settings.setValue("m_selectionBorder", m_selectionBorder);    settings.setValue("m_saveBeforeBuild", m_saveBeforeBuild);    settings.setValue("m_restoreOnStart", m_restoreOnStart);    settings.setValue("m_promptBeforeQuit", m_promptBeforeQuit);

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -