forked from qt-creator/qt-creator
TextEditor: Add an option to hide file line ending combobox
Change-Id: Iae8160f7cd567fc6d42116837fc367fa6dffdc4b Reviewed-by: <github-actions-qt-creator@cristianadam.eu> Reviewed-by: David Schulz <david.schulz@qt.io>
This commit is contained in:
@@ -47,6 +47,7 @@ static const char autoFoldFirstCommentKey[] = "AutoFoldFirstComment";
|
|||||||
static const char centerCursorOnScrollKey[] = "CenterCursorOnScroll";
|
static const char centerCursorOnScrollKey[] = "CenterCursorOnScroll";
|
||||||
static const char openLinksInNextSplitKey[] = "OpenLinksInNextSplitKey";
|
static const char openLinksInNextSplitKey[] = "OpenLinksInNextSplitKey";
|
||||||
static const char displayFileEncodingKey[] = "DisplayFileEncoding";
|
static const char displayFileEncodingKey[] = "DisplayFileEncoding";
|
||||||
|
static const char displayFileLineEndingKey[] = "DisplayFileLineEnding";
|
||||||
static const char scrollBarHighlightsKey[] = "ScrollBarHighlights";
|
static const char scrollBarHighlightsKey[] = "ScrollBarHighlights";
|
||||||
static const char animateNavigationWithinFileKey[] = "AnimateNavigationWithinFile";
|
static const char animateNavigationWithinFileKey[] = "AnimateNavigationWithinFile";
|
||||||
static const char animateWithinFileTimeMaxKey[] = "AnimateWithinFileTimeMax";
|
static const char animateWithinFileTimeMaxKey[] = "AnimateWithinFileTimeMax";
|
||||||
@@ -76,6 +77,7 @@ void DisplaySettings::toSettings(const QString &category, QSettings *s) const
|
|||||||
s->setValue(QLatin1String(centerCursorOnScrollKey), m_centerCursorOnScroll);
|
s->setValue(QLatin1String(centerCursorOnScrollKey), m_centerCursorOnScroll);
|
||||||
s->setValue(QLatin1String(openLinksInNextSplitKey), m_openLinksInNextSplit);
|
s->setValue(QLatin1String(openLinksInNextSplitKey), m_openLinksInNextSplit);
|
||||||
s->setValue(QLatin1String(displayFileEncodingKey), m_displayFileEncoding);
|
s->setValue(QLatin1String(displayFileEncodingKey), m_displayFileEncoding);
|
||||||
|
s->setValue(QLatin1String(displayFileLineEndingKey), m_displayFileLineEnding);
|
||||||
s->setValue(QLatin1String(scrollBarHighlightsKey), m_scrollBarHighlights);
|
s->setValue(QLatin1String(scrollBarHighlightsKey), m_scrollBarHighlights);
|
||||||
s->setValue(QLatin1String(animateNavigationWithinFileKey), m_animateNavigationWithinFile);
|
s->setValue(QLatin1String(animateNavigationWithinFileKey), m_animateNavigationWithinFile);
|
||||||
s->setValue(QLatin1String(displayAnnotationsKey), m_displayAnnotations);
|
s->setValue(QLatin1String(displayAnnotationsKey), m_displayAnnotations);
|
||||||
@@ -105,6 +107,7 @@ void DisplaySettings::fromSettings(const QString &category, const QSettings *s)
|
|||||||
m_centerCursorOnScroll = s->value(group + QLatin1String(centerCursorOnScrollKey), m_centerCursorOnScroll).toBool();
|
m_centerCursorOnScroll = s->value(group + QLatin1String(centerCursorOnScrollKey), m_centerCursorOnScroll).toBool();
|
||||||
m_openLinksInNextSplit = s->value(group + QLatin1String(openLinksInNextSplitKey), m_openLinksInNextSplit).toBool();
|
m_openLinksInNextSplit = s->value(group + QLatin1String(openLinksInNextSplitKey), m_openLinksInNextSplit).toBool();
|
||||||
m_displayFileEncoding = s->value(group + QLatin1String(displayFileEncodingKey), m_displayFileEncoding).toBool();
|
m_displayFileEncoding = s->value(group + QLatin1String(displayFileEncodingKey), m_displayFileEncoding).toBool();
|
||||||
|
m_displayFileLineEnding = s->value(group + QLatin1String(displayFileLineEndingKey), m_displayFileLineEnding).toBool();
|
||||||
m_scrollBarHighlights = s->value(group + QLatin1String(scrollBarHighlightsKey), m_scrollBarHighlights).toBool();
|
m_scrollBarHighlights = s->value(group + QLatin1String(scrollBarHighlightsKey), m_scrollBarHighlights).toBool();
|
||||||
m_animateNavigationWithinFile = s->value(group + QLatin1String(animateNavigationWithinFileKey), m_animateNavigationWithinFile).toBool();
|
m_animateNavigationWithinFile = s->value(group + QLatin1String(animateNavigationWithinFileKey), m_animateNavigationWithinFile).toBool();
|
||||||
m_animateWithinFileTimeMax = s->value(group + QLatin1String(animateWithinFileTimeMaxKey), m_animateWithinFileTimeMax).toInt();
|
m_animateWithinFileTimeMax = s->value(group + QLatin1String(animateWithinFileTimeMaxKey), m_animateWithinFileTimeMax).toInt();
|
||||||
@@ -131,6 +134,7 @@ bool DisplaySettings::equals(const DisplaySettings &ds) const
|
|||||||
&& m_openLinksInNextSplit == ds.m_openLinksInNextSplit
|
&& m_openLinksInNextSplit == ds.m_openLinksInNextSplit
|
||||||
&& m_forceOpenLinksInNextSplit == ds.m_forceOpenLinksInNextSplit
|
&& m_forceOpenLinksInNextSplit == ds.m_forceOpenLinksInNextSplit
|
||||||
&& m_displayFileEncoding == ds.m_displayFileEncoding
|
&& m_displayFileEncoding == ds.m_displayFileEncoding
|
||||||
|
&& m_displayFileLineEnding == ds.m_displayFileLineEnding
|
||||||
&& m_scrollBarHighlights == ds.m_scrollBarHighlights
|
&& m_scrollBarHighlights == ds.m_scrollBarHighlights
|
||||||
&& m_animateNavigationWithinFile == ds.m_animateNavigationWithinFile
|
&& m_animateNavigationWithinFile == ds.m_animateNavigationWithinFile
|
||||||
&& m_animateWithinFileTimeMax == ds.m_animateWithinFileTimeMax
|
&& m_animateWithinFileTimeMax == ds.m_animateWithinFileTimeMax
|
||||||
|
@@ -69,6 +69,7 @@ public:
|
|||||||
bool m_openLinksInNextSplit = false;
|
bool m_openLinksInNextSplit = false;
|
||||||
bool m_forceOpenLinksInNextSplit = false;
|
bool m_forceOpenLinksInNextSplit = false;
|
||||||
bool m_displayFileEncoding = false;
|
bool m_displayFileEncoding = false;
|
||||||
|
bool m_displayFileLineEnding = true;
|
||||||
bool m_scrollBarHighlights = true;
|
bool m_scrollBarHighlights = true;
|
||||||
bool m_animateNavigationWithinFile = false;
|
bool m_animateNavigationWithinFile = false;
|
||||||
int m_animateWithinFileTimeMax = 333; // read only setting
|
int m_animateWithinFileTimeMax = 333; // read only setting
|
||||||
|
@@ -102,6 +102,7 @@ void DisplaySettingsWidget::settingsFromUI(DisplaySettings &displaySettings,
|
|||||||
displaySettings.m_centerCursorOnScroll = m_ui.centerOnScroll->isChecked();
|
displaySettings.m_centerCursorOnScroll = m_ui.centerOnScroll->isChecked();
|
||||||
displaySettings.m_openLinksInNextSplit = m_ui.openLinksInNextSplit->isChecked();
|
displaySettings.m_openLinksInNextSplit = m_ui.openLinksInNextSplit->isChecked();
|
||||||
displaySettings.m_displayFileEncoding = m_ui.displayFileEncoding->isChecked();
|
displaySettings.m_displayFileEncoding = m_ui.displayFileEncoding->isChecked();
|
||||||
|
displaySettings.m_displayFileLineEnding = m_ui.displayFileLineEnding->isChecked();
|
||||||
displaySettings.m_scrollBarHighlights = m_ui.scrollBarHighlights->isChecked();
|
displaySettings.m_scrollBarHighlights = m_ui.scrollBarHighlights->isChecked();
|
||||||
displaySettings.m_animateNavigationWithinFile = m_ui.animateNavigationWithinFile->isChecked();
|
displaySettings.m_animateNavigationWithinFile = m_ui.animateNavigationWithinFile->isChecked();
|
||||||
displaySettings.m_displayAnnotations = m_ui.displayAnnotations->isChecked();
|
displaySettings.m_displayAnnotations = m_ui.displayAnnotations->isChecked();
|
||||||
@@ -135,6 +136,7 @@ void DisplaySettingsWidget::settingsToUI()
|
|||||||
m_ui.centerOnScroll->setChecked(displaySettings.m_centerCursorOnScroll);
|
m_ui.centerOnScroll->setChecked(displaySettings.m_centerCursorOnScroll);
|
||||||
m_ui.openLinksInNextSplit->setChecked(displaySettings.m_openLinksInNextSplit);
|
m_ui.openLinksInNextSplit->setChecked(displaySettings.m_openLinksInNextSplit);
|
||||||
m_ui.displayFileEncoding->setChecked(displaySettings.m_displayFileEncoding);
|
m_ui.displayFileEncoding->setChecked(displaySettings.m_displayFileEncoding);
|
||||||
|
m_ui.displayFileLineEnding->setChecked(displaySettings.m_displayFileLineEnding);
|
||||||
m_ui.scrollBarHighlights->setChecked(displaySettings.m_scrollBarHighlights);
|
m_ui.scrollBarHighlights->setChecked(displaySettings.m_scrollBarHighlights);
|
||||||
m_ui.animateNavigationWithinFile->setChecked(displaySettings.m_animateNavigationWithinFile);
|
m_ui.animateNavigationWithinFile->setChecked(displaySettings.m_animateNavigationWithinFile);
|
||||||
m_ui.displayAnnotations->setChecked(displaySettings.m_displayAnnotations);
|
m_ui.displayAnnotations->setChecked(displaySettings.m_displayAnnotations);
|
||||||
|
@@ -97,6 +97,13 @@
|
|||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
|
<item row="7" column="1">
|
||||||
|
<widget class="QCheckBox" name="displayFileLineEnding">
|
||||||
|
<property name="text">
|
||||||
|
<string>Display file line ending</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
<item row="2" column="1">
|
<item row="2" column="1">
|
||||||
<widget class="QCheckBox" name="animateMatchingParentheses">
|
<widget class="QCheckBox" name="animateMatchingParentheses">
|
||||||
<property name="text">
|
<property name="text">
|
||||||
@@ -170,7 +177,7 @@
|
|||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="7" column="1">
|
<item row="8" column="0">
|
||||||
<widget class="QCheckBox" name="animateNavigationWithinFile">
|
<widget class="QCheckBox" name="animateNavigationWithinFile">
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string>Animate navigation within file</string>
|
<string>Animate navigation within file</string>
|
||||||
|
@@ -640,6 +640,7 @@ public:
|
|||||||
void slotSelectionChanged();
|
void slotSelectionChanged();
|
||||||
void _q_animateUpdate(const QTextCursor &cursor, QPointF lastPos, QRectF rect);
|
void _q_animateUpdate(const QTextCursor &cursor, QPointF lastPos, QRectF rect);
|
||||||
void updateCodeFoldingVisible();
|
void updateCodeFoldingVisible();
|
||||||
|
void updateFileLineEndingVisible();
|
||||||
|
|
||||||
void reconfigure();
|
void reconfigure();
|
||||||
void updateSyntaxInfoBar(const Highlighter::Definitions &definitions, const QString &fileName);
|
void updateSyntaxInfoBar(const Highlighter::Definitions &definitions, const QString &fileName);
|
||||||
@@ -952,10 +953,9 @@ TextEditorWidgetPrivate::TextEditorWidgetPrivate(TextEditorWidget *parent)
|
|||||||
m_fileLineEnding->addItems(ExtraEncodingSettings::lineTerminationModeNames());
|
m_fileLineEnding->addItems(ExtraEncodingSettings::lineTerminationModeNames());
|
||||||
m_fileLineEnding->setContentsMargins(spacing, 0, spacing, 0);
|
m_fileLineEnding->setContentsMargins(spacing, 0, spacing, 0);
|
||||||
m_fileLineEndingAction = m_toolBar->addWidget(m_fileLineEnding);
|
m_fileLineEndingAction = m_toolBar->addWidget(m_fileLineEnding);
|
||||||
m_fileLineEndingAction->setVisible(!q->isReadOnly());
|
updateFileLineEndingVisible();
|
||||||
connect(q, &TextEditorWidget::readOnlyChanged, this, [this] {
|
connect(q, &TextEditorWidget::readOnlyChanged,
|
||||||
m_fileLineEndingAction->setVisible(!q->isReadOnly());
|
this, &TextEditorWidgetPrivate::updateFileLineEndingVisible);
|
||||||
});
|
|
||||||
|
|
||||||
m_fileEncodingLabel = new FixedSizeClickLabel;
|
m_fileEncodingLabel = new FixedSizeClickLabel;
|
||||||
m_fileEncodingLabel->setContentsMargins(spacing, 0, spacing, 0);
|
m_fileEncodingLabel->setContentsMargins(spacing, 0, spacing, 0);
|
||||||
@@ -3225,6 +3225,11 @@ void TextEditorWidgetPrivate::updateCodeFoldingVisible()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void TextEditorWidgetPrivate::updateFileLineEndingVisible()
|
||||||
|
{
|
||||||
|
m_fileLineEndingAction->setVisible(m_displaySettings.m_displayFileLineEnding && !q->isReadOnly());
|
||||||
|
}
|
||||||
|
|
||||||
void TextEditorWidgetPrivate::reconfigure()
|
void TextEditorWidgetPrivate::reconfigure()
|
||||||
{
|
{
|
||||||
m_document->setMimeType(Utils::mimeTypeForFile(m_document->filePath()).name());
|
m_document->setMimeType(Utils::mimeTypeForFile(m_document->filePath()).name());
|
||||||
@@ -7211,6 +7216,7 @@ void TextEditorWidget::setDisplaySettings(const DisplaySettings &ds)
|
|||||||
}
|
}
|
||||||
|
|
||||||
d->updateCodeFoldingVisible();
|
d->updateCodeFoldingVisible();
|
||||||
|
d->updateFileLineEndingVisible();
|
||||||
d->updateHighlights();
|
d->updateHighlights();
|
||||||
d->setupScrollBar();
|
d->setupScrollBar();
|
||||||
viewport()->update();
|
viewport()->update();
|
||||||
|
Reference in New Issue
Block a user