forked from qt-creator/qt-creator
CppEditor: Inline cppcodemodelsettingspage.ui
Change-Id: I97f27121714adaca00aaa1347d460968be395afa Reviewed-by: Christian Stenger <christian.stenger@qt.io> Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
This commit is contained in:
@@ -26,7 +26,7 @@ add_qtc_plugin(CppEditor
|
|||||||
cppcodemodelinspectordialog.cpp cppcodemodelinspectordialog.h cppcodemodelinspectordialog.ui
|
cppcodemodelinspectordialog.cpp cppcodemodelinspectordialog.h cppcodemodelinspectordialog.ui
|
||||||
cppcodemodelinspectordumper.cpp cppcodemodelinspectordumper.h
|
cppcodemodelinspectordumper.cpp cppcodemodelinspectordumper.h
|
||||||
cppcodemodelsettings.cpp cppcodemodelsettings.h
|
cppcodemodelsettings.cpp cppcodemodelsettings.h
|
||||||
cppcodemodelsettingspage.cpp cppcodemodelsettingspage.h cppcodemodelsettingspage.ui
|
cppcodemodelsettingspage.cpp cppcodemodelsettingspage.h
|
||||||
cppcodestylepreferences.cpp cppcodestylepreferences.h
|
cppcodestylepreferences.cpp cppcodestylepreferences.h
|
||||||
cppcodestylepreferencesfactory.cpp cppcodestylepreferencesfactory.h
|
cppcodestylepreferencesfactory.cpp cppcodestylepreferencesfactory.h
|
||||||
cppcodestylesettings.cpp cppcodestylesettings.h
|
cppcodestylesettings.cpp cppcodestylesettings.h
|
||||||
|
|||||||
@@ -24,7 +24,6 @@
|
|||||||
****************************************************************************/
|
****************************************************************************/
|
||||||
|
|
||||||
#include "cppcodemodelsettingspage.h"
|
#include "cppcodemodelsettingspage.h"
|
||||||
#include "ui_cppcodemodelsettingspage.h"
|
|
||||||
|
|
||||||
#include "clangdiagnosticconfigsselectionwidget.h"
|
#include "clangdiagnosticconfigsselectionwidget.h"
|
||||||
#include "clangdiagnosticconfigswidget.h"
|
#include "clangdiagnosticconfigswidget.h"
|
||||||
@@ -32,17 +31,20 @@
|
|||||||
#include "cpptoolsreuse.h"
|
#include "cpptoolsreuse.h"
|
||||||
|
|
||||||
#include <coreplugin/icore.h>
|
#include <coreplugin/icore.h>
|
||||||
|
|
||||||
#include <projectexplorer/session.h>
|
#include <projectexplorer/session.h>
|
||||||
|
|
||||||
#include <utils/algorithm.h>
|
#include <utils/algorithm.h>
|
||||||
#include <utils/infolabel.h>
|
#include <utils/infolabel.h>
|
||||||
#include <utils/itemviews.h>
|
#include <utils/itemviews.h>
|
||||||
|
#include <utils/layoutbuilder.h>
|
||||||
#include <utils/pathchooser.h>
|
#include <utils/pathchooser.h>
|
||||||
#include <utils/qtcassert.h>
|
#include <utils/qtcassert.h>
|
||||||
|
|
||||||
|
#include <QCheckBox>
|
||||||
#include <QDesktopServices>
|
#include <QDesktopServices>
|
||||||
#include <QFormLayout>
|
#include <QFormLayout>
|
||||||
#include <QGroupBox>
|
#include <QGroupBox>
|
||||||
#include <QHBoxLayout>
|
|
||||||
#include <QInputDialog>
|
#include <QInputDialog>
|
||||||
#include <QPushButton>
|
#include <QPushButton>
|
||||||
#include <QSpinBox>
|
#include <QSpinBox>
|
||||||
@@ -61,32 +63,57 @@ class CppCodeModelSettingsWidget final : public Core::IOptionsPageWidget
|
|||||||
|
|
||||||
public:
|
public:
|
||||||
CppCodeModelSettingsWidget(CppCodeModelSettings *s);
|
CppCodeModelSettingsWidget(CppCodeModelSettings *s);
|
||||||
~CppCodeModelSettingsWidget() override;
|
|
||||||
|
|
||||||
private:
|
private:
|
||||||
void apply() final;
|
void apply() final;
|
||||||
|
|
||||||
void setupGeneralWidgets();
|
|
||||||
|
|
||||||
bool applyGeneralWidgetsToSettings() const;
|
bool applyGeneralWidgetsToSettings() const;
|
||||||
|
|
||||||
Ui::CppCodeModelSettingsPage *m_ui = nullptr;
|
|
||||||
CppCodeModelSettings *m_settings = nullptr;
|
CppCodeModelSettings *m_settings = nullptr;
|
||||||
|
QCheckBox *m_interpretAmbiguousHeadersAsCHeaders;
|
||||||
|
QCheckBox *m_ignorePchCheckBox;
|
||||||
|
QCheckBox *m_skipIndexingBigFilesCheckBox;
|
||||||
|
QSpinBox *m_bigFilesLimitSpinBox;
|
||||||
};
|
};
|
||||||
|
|
||||||
CppCodeModelSettingsWidget::CppCodeModelSettingsWidget(CppCodeModelSettings *s)
|
CppCodeModelSettingsWidget::CppCodeModelSettingsWidget(CppCodeModelSettings *s)
|
||||||
: m_ui(new Ui::CppCodeModelSettingsPage)
|
: m_settings(s)
|
||||||
{
|
{
|
||||||
m_ui->setupUi(this);
|
m_interpretAmbiguousHeadersAsCHeaders
|
||||||
|
= new QCheckBox(tr("Interpret ambiguous headers as C headers"));
|
||||||
|
|
||||||
m_settings = s;
|
m_skipIndexingBigFilesCheckBox = new QCheckBox(tr("Do not index files greater than"));
|
||||||
|
m_skipIndexingBigFilesCheckBox->setChecked(m_settings->skipIndexingBigFiles());
|
||||||
|
|
||||||
setupGeneralWidgets();
|
m_bigFilesLimitSpinBox = new QSpinBox;
|
||||||
|
m_bigFilesLimitSpinBox->setSuffix(tr("MB"));
|
||||||
|
m_bigFilesLimitSpinBox->setRange(1, 500);
|
||||||
|
m_bigFilesLimitSpinBox->setValue(m_settings->indexerFileSizeLimitInMb());
|
||||||
|
|
||||||
|
m_ignorePchCheckBox = new QCheckBox(tr("Ignore precompiled headers"));
|
||||||
|
m_ignorePchCheckBox->setToolTip(tr(
|
||||||
|
"<html><head/><body><p>When precompiled headers are not ignored, the parsing for code "
|
||||||
|
"completion and semantic highlighting will process the precompiled header before "
|
||||||
|
"processing any file.</p></body></html>"));
|
||||||
|
|
||||||
|
m_interpretAmbiguousHeadersAsCHeaders->setChecked(
|
||||||
|
m_settings->interpretAmbigiousHeadersAsCHeaders());
|
||||||
|
|
||||||
|
m_ignorePchCheckBox->setChecked(m_settings->pchUsage() == CppCodeModelSettings::PchUse_None);
|
||||||
|
|
||||||
|
using namespace Utils::Layouting;
|
||||||
|
|
||||||
|
Column {
|
||||||
|
Group {
|
||||||
|
Title(tr("General")),
|
||||||
|
Column {
|
||||||
|
m_interpretAmbiguousHeadersAsCHeaders,
|
||||||
|
m_ignorePchCheckBox,
|
||||||
|
Row { m_skipIndexingBigFilesCheckBox, m_bigFilesLimitSpinBox, Stretch() },
|
||||||
}
|
}
|
||||||
|
},
|
||||||
CppCodeModelSettingsWidget::~CppCodeModelSettingsWidget()
|
Stretch()
|
||||||
{
|
}.attachTo(this);
|
||||||
delete m_ui;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void CppCodeModelSettingsWidget::apply()
|
void CppCodeModelSettingsWidget::apply()
|
||||||
@@ -95,45 +122,33 @@ void CppCodeModelSettingsWidget::apply()
|
|||||||
m_settings->toSettings(Core::ICore::settings());
|
m_settings->toSettings(Core::ICore::settings());
|
||||||
}
|
}
|
||||||
|
|
||||||
void CppCodeModelSettingsWidget::setupGeneralWidgets()
|
|
||||||
{
|
|
||||||
m_ui->interpretAmbiguousHeadersAsCHeaders->setChecked(
|
|
||||||
m_settings->interpretAmbigiousHeadersAsCHeaders());
|
|
||||||
|
|
||||||
m_ui->skipIndexingBigFilesCheckBox->setChecked(m_settings->skipIndexingBigFiles());
|
|
||||||
m_ui->bigFilesLimitSpinBox->setValue(m_settings->indexerFileSizeLimitInMb());
|
|
||||||
|
|
||||||
const bool ignorePch = m_settings->pchUsage() == CppCodeModelSettings::PchUse_None;
|
|
||||||
m_ui->ignorePCHCheckBox->setChecked(ignorePch);
|
|
||||||
}
|
|
||||||
|
|
||||||
bool CppCodeModelSettingsWidget::applyGeneralWidgetsToSettings() const
|
bool CppCodeModelSettingsWidget::applyGeneralWidgetsToSettings() const
|
||||||
{
|
{
|
||||||
bool settingsChanged = false;
|
bool settingsChanged = false;
|
||||||
|
|
||||||
const bool newInterpretAmbiguousHeaderAsCHeaders
|
const bool newInterpretAmbiguousHeaderAsCHeaders
|
||||||
= m_ui->interpretAmbiguousHeadersAsCHeaders->isChecked();
|
= m_interpretAmbiguousHeadersAsCHeaders->isChecked();
|
||||||
if (m_settings->interpretAmbigiousHeadersAsCHeaders()
|
if (m_settings->interpretAmbigiousHeadersAsCHeaders()
|
||||||
!= newInterpretAmbiguousHeaderAsCHeaders) {
|
!= newInterpretAmbiguousHeaderAsCHeaders) {
|
||||||
m_settings->setInterpretAmbigiousHeadersAsCHeaders(newInterpretAmbiguousHeaderAsCHeaders);
|
m_settings->setInterpretAmbigiousHeadersAsCHeaders(newInterpretAmbiguousHeaderAsCHeaders);
|
||||||
settingsChanged = true;
|
settingsChanged = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
const bool newSkipIndexingBigFiles = m_ui->skipIndexingBigFilesCheckBox->isChecked();
|
const bool newSkipIndexingBigFiles = m_skipIndexingBigFilesCheckBox->isChecked();
|
||||||
if (m_settings->skipIndexingBigFiles() != newSkipIndexingBigFiles) {
|
if (m_settings->skipIndexingBigFiles() != newSkipIndexingBigFiles) {
|
||||||
m_settings->setSkipIndexingBigFiles(newSkipIndexingBigFiles);
|
m_settings->setSkipIndexingBigFiles(newSkipIndexingBigFiles);
|
||||||
settingsChanged = true;
|
settingsChanged = true;
|
||||||
}
|
}
|
||||||
const int newFileSizeLimit = m_ui->bigFilesLimitSpinBox->value();
|
const int newFileSizeLimit = m_bigFilesLimitSpinBox->value();
|
||||||
if (m_settings->indexerFileSizeLimitInMb() != newFileSizeLimit) {
|
if (m_settings->indexerFileSizeLimitInMb() != newFileSizeLimit) {
|
||||||
m_settings->setIndexerFileSizeLimitInMb(newFileSizeLimit);
|
m_settings->setIndexerFileSizeLimitInMb(newFileSizeLimit);
|
||||||
settingsChanged = true;
|
settingsChanged = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
const bool newIgnorePch = m_ui->ignorePCHCheckBox->isChecked();
|
const bool newIgnorePch = m_ignorePchCheckBox->isChecked();
|
||||||
const bool previousIgnorePch = m_settings->pchUsage() == CppCodeModelSettings::PchUse_None;
|
const bool previousIgnorePch = m_settings->pchUsage() == CppCodeModelSettings::PchUse_None;
|
||||||
if (newIgnorePch != previousIgnorePch) {
|
if (newIgnorePch != previousIgnorePch) {
|
||||||
const CppCodeModelSettings::PCHUsage pchUsage = m_ui->ignorePCHCheckBox->isChecked()
|
const CppCodeModelSettings::PCHUsage pchUsage = m_ignorePchCheckBox->isChecked()
|
||||||
? CppCodeModelSettings::PchUse_None
|
? CppCodeModelSettings::PchUse_None
|
||||||
: CppCodeModelSettings::PchUse_BuildSystem;
|
: CppCodeModelSettings::PchUse_BuildSystem;
|
||||||
m_settings->setPCHUsage(pchUsage);
|
m_settings->setPCHUsage(pchUsage);
|
||||||
|
|||||||
@@ -1,106 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<ui version="4.0">
|
|
||||||
<class>CppEditor::Internal::CppCodeModelSettingsPage</class>
|
|
||||||
<widget class="QWidget" name="CppEditor:Internal::CppCodeModelSettingsPage">
|
|
||||||
<property name="geometry">
|
|
||||||
<rect>
|
|
||||||
<x>0</x>
|
|
||||||
<y>0</y>
|
|
||||||
<width>697</width>
|
|
||||||
<height>440</height>
|
|
||||||
</rect>
|
|
||||||
</property>
|
|
||||||
<property name="windowTitle">
|
|
||||||
<string/>
|
|
||||||
</property>
|
|
||||||
<layout class="QVBoxLayout" name="verticalLayout_2">
|
|
||||||
<item>
|
|
||||||
<widget class="QGroupBox" name="anotherGroupBox">
|
|
||||||
<property name="title">
|
|
||||||
<string>General</string>
|
|
||||||
</property>
|
|
||||||
<layout class="QVBoxLayout" name="verticalLayout">
|
|
||||||
<item>
|
|
||||||
<widget class="QCheckBox" name="interpretAmbiguousHeadersAsCHeaders">
|
|
||||||
<property name="text">
|
|
||||||
<string>Interpret ambiguous headers as C headers</string>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item>
|
|
||||||
<widget class="QCheckBox" name="ignorePCHCheckBox">
|
|
||||||
<property name="toolTip">
|
|
||||||
<string><html><head/><body><p>When precompiled headers are not ignored, the parsing for code completion and semantic highlighting will process the precompiled header before processing any file.</p></body></html></string>
|
|
||||||
</property>
|
|
||||||
<property name="text">
|
|
||||||
<string>Ignore precompiled headers</string>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item>
|
|
||||||
<layout class="QHBoxLayout" name="horizontalLayout">
|
|
||||||
<item>
|
|
||||||
<widget class="QCheckBox" name="skipIndexingBigFilesCheckBox">
|
|
||||||
<property name="text">
|
|
||||||
<string>Do not index files greater than</string>
|
|
||||||
</property>
|
|
||||||
<property name="checked">
|
|
||||||
<bool>true</bool>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item>
|
|
||||||
<widget class="QSpinBox" name="bigFilesLimitSpinBox">
|
|
||||||
<property name="suffix">
|
|
||||||
<string>MB</string>
|
|
||||||
</property>
|
|
||||||
<property name="minimum">
|
|
||||||
<number>1</number>
|
|
||||||
</property>
|
|
||||||
<property name="maximum">
|
|
||||||
<number>500</number>
|
|
||||||
</property>
|
|
||||||
<property name="value">
|
|
||||||
<number>5</number>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item>
|
|
||||||
<spacer name="horizontalSpacer">
|
|
||||||
<property name="orientation">
|
|
||||||
<enum>Qt::Horizontal</enum>
|
|
||||||
</property>
|
|
||||||
<property name="sizeHint" stdset="0">
|
|
||||||
<size>
|
|
||||||
<width>40</width>
|
|
||||||
<height>20</height>
|
|
||||||
</size>
|
|
||||||
</property>
|
|
||||||
</spacer>
|
|
||||||
</item>
|
|
||||||
</layout>
|
|
||||||
</item>
|
|
||||||
<item>
|
|
||||||
<layout class="QHBoxLayout" name="horizontalLayout_3"/>
|
|
||||||
</item>
|
|
||||||
</layout>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item>
|
|
||||||
<spacer name="verticalSpacer">
|
|
||||||
<property name="orientation">
|
|
||||||
<enum>Qt::Vertical</enum>
|
|
||||||
</property>
|
|
||||||
<property name="sizeHint" stdset="0">
|
|
||||||
<size>
|
|
||||||
<width>20</width>
|
|
||||||
<height>40</height>
|
|
||||||
</size>
|
|
||||||
</property>
|
|
||||||
</spacer>
|
|
||||||
</item>
|
|
||||||
</layout>
|
|
||||||
</widget>
|
|
||||||
<resources/>
|
|
||||||
<connections/>
|
|
||||||
</ui>
|
|
||||||
@@ -73,7 +73,6 @@ QtcPlugin {
|
|||||||
"cppcodemodelsettings.h",
|
"cppcodemodelsettings.h",
|
||||||
"cppcodemodelsettingspage.cpp",
|
"cppcodemodelsettingspage.cpp",
|
||||||
"cppcodemodelsettingspage.h",
|
"cppcodemodelsettingspage.h",
|
||||||
"cppcodemodelsettingspage.ui",
|
|
||||||
"cppcodestylepreferences.cpp",
|
"cppcodestylepreferences.cpp",
|
||||||
"cppcodestylepreferences.h",
|
"cppcodestylepreferences.h",
|
||||||
"cppcodestylepreferencesfactory.cpp",
|
"cppcodestylepreferencesfactory.cpp",
|
||||||
|
|||||||
Reference in New Issue
Block a user