Mark unused symbols.

This commit is contained in:
Roberto Raggi
2009-09-23 18:06:59 +02:00
parent 1d75ebecdc
commit 7cf7683052
5 changed files with 24 additions and 14 deletions

View File

@@ -949,16 +949,22 @@ void CPPEditor::updateMethodBoxIndex()
static void highlightUses(QTextDocument *doc, static void highlightUses(QTextDocument *doc,
const QTextCharFormat &format, const QTextCharFormat &format,
const QTextCharFormat &unusedFormat,
const QList<SemanticInfo::Use> &uses, const QList<SemanticInfo::Use> &uses,
QList<QTextEdit::ExtraSelection> *selections) QList<QTextEdit::ExtraSelection> *selections)
{ {
if (uses.size() <= 1) bool isUnused = false;
return; if (uses.size() == 1)
isUnused = true;
foreach (const SemanticInfo::Use &use, uses) { foreach (const SemanticInfo::Use &use, uses) {
QTextEdit::ExtraSelection sel; QTextEdit::ExtraSelection sel;
sel.format = format; if (isUnused)
sel.format = unusedFormat;
else
sel.format = format;
sel.cursor = QTextCursor(doc); sel.cursor = QTextCursor(doc);
const int anchor = doc->findBlockByNumber(use.line - 1).position() + use.column - 1; const int anchor = doc->findBlockByNumber(use.line - 1).position() + use.column - 1;
@@ -1708,6 +1714,7 @@ void CPPEditor::setFontSettings(const TextEditor::FontSettings &fs)
highlighter->rehighlight(); highlighter->rehighlight();
m_occurrencesFormat = fs.toTextCharFormat(QLatin1String(TextEditor::Constants::C_OCCURRENCES)); m_occurrencesFormat = fs.toTextCharFormat(QLatin1String(TextEditor::Constants::C_OCCURRENCES));
m_occurrencesUnusedFormat = fs.toTextCharFormat(QLatin1String(TextEditor::Constants::C_OCCURRENCES_UNUSED));
m_occurrenceRenameFormat = fs.toTextCharFormat(QLatin1String(TextEditor::Constants::C_OCCURRENCES_RENAME)); m_occurrenceRenameFormat = fs.toTextCharFormat(QLatin1String(TextEditor::Constants::C_OCCURRENCES_RENAME));
} }
@@ -1786,11 +1793,9 @@ void CPPEditor::updateSemanticInfo(const SemanticInfo &semanticInfo)
} }
} }
if (! good) if (uses.size() == 1 || good)
continue; highlightUses(document(), m_occurrencesFormat, m_occurrencesUnusedFormat,
uses, &selections);
highlightUses(document(), m_occurrencesFormat, uses, &selections);
break; // done
} }
setExtraSelections(CodeSemanticsSelection, selections); setExtraSelections(CodeSemanticsSelection, selections);

View File

@@ -281,6 +281,7 @@ private:
QTimer *m_updateMethodBoxTimer; QTimer *m_updateMethodBoxTimer;
QTimer *m_updateUsesTimer; QTimer *m_updateUsesTimer;
QTextCharFormat m_occurrencesFormat; QTextCharFormat m_occurrencesFormat;
QTextCharFormat m_occurrencesUnusedFormat;
QTextCharFormat m_occurrenceRenameFormat; QTextCharFormat m_occurrenceRenameFormat;
QList<QTextEdit::ExtraSelection> m_renameSelections; QList<QTextEdit::ExtraSelection> m_renameSelections;

View File

@@ -251,6 +251,8 @@ QColor FormatDescription::foreground() const
} else { } else {
return m_format.foreground(); return m_format.foreground();
} }
} else if (m_name == QLatin1String(Constants::C_OCCURRENCES_UNUSED)) {
return Qt::lightGray;
} else if (m_name == QLatin1String(Constants::C_PARENTHESES)) { } else if (m_name == QLatin1String(Constants::C_PARENTHESES)) {
return QColor(Qt::red); return QColor(Qt::red);
} }
@@ -596,11 +598,11 @@ void FontSettingsPage::apply()
void FontSettingsPage::saveSettings() void FontSettingsPage::saveSettings()
{ {
if (d_ptr->m_value != d_ptr->m_lastValue) { if (d_ptr->m_value != d_ptr->m_lastValue) {
d_ptr->m_lastValue = d_ptr->m_value; d_ptr->m_lastValue = d_ptr->m_value;
if (QSettings *settings = Core::ICore::instance()->settings()) if (QSettings *settings = Core::ICore::instance()->settings())
d_ptr->m_value.toSettings(d_ptr->m_settingsGroup, settings); d_ptr->m_value.toSettings(d_ptr->m_settingsGroup, settings);
QTimer::singleShot(0, this, SLOT(delayedChange())); QTimer::singleShot(0, this, SLOT(delayedChange()));
} }
} }

View File

@@ -80,6 +80,7 @@ const char * const C_PARENTHESES = "Parentheses";
const char * const C_CURRENT_LINE = "CurrentLine"; const char * const C_CURRENT_LINE = "CurrentLine";
const char * const C_CURRENT_LINE_NUMBER = "CurrentLineNumber"; const char * const C_CURRENT_LINE_NUMBER = "CurrentLineNumber";
const char * const C_OCCURRENCES = "Occurrences"; const char * const C_OCCURRENCES = "Occurrences";
const char * const C_OCCURRENCES_UNUSED = "Occurrences.Unused";
const char * const C_OCCURRENCES_RENAME = "Occurrences.Rename"; const char * const C_OCCURRENCES_RENAME = "Occurrences.Rename";
const char * const C_NUMBER = "Number"; const char * const C_NUMBER = "Number";

View File

@@ -78,6 +78,7 @@ TextEditorSettings::TextEditorSettings(QObject *parent)
formatDescriptions.append(currentLineNumber); formatDescriptions.append(currentLineNumber);
formatDescriptions.append(FormatDescription(QLatin1String(C_OCCURRENCES), tr("Occurrences"))); formatDescriptions.append(FormatDescription(QLatin1String(C_OCCURRENCES), tr("Occurrences")));
formatDescriptions.append(FormatDescription(QLatin1String(C_OCCURRENCES_UNUSED), tr("Unused Occurrence")));
formatDescriptions.append(FormatDescription(QLatin1String(C_OCCURRENCES_RENAME), tr("Renaming Occurrence"))); formatDescriptions.append(FormatDescription(QLatin1String(C_OCCURRENCES_RENAME), tr("Renaming Occurrence")));
// Standard categories // Standard categories
@@ -155,7 +156,7 @@ void TextEditorSettings::initializeEditor(BaseTextEditor *editor)
{ {
// Connect to settings change signals // Connect to settings change signals
connect(this, SIGNAL(fontSettingsChanged(TextEditor::FontSettings)), connect(this, SIGNAL(fontSettingsChanged(TextEditor::FontSettings)),
editor, SLOT(setFontSettingsIfVisible(TextEditor::FontSettings))); editor, SLOT(setFontSettingsIfVisible(TextEditor::FontSettings)));
connect(this, SIGNAL(tabSettingsChanged(TextEditor::TabSettings)), connect(this, SIGNAL(tabSettingsChanged(TextEditor::TabSettings)),
editor, SLOT(setTabSettings(TextEditor::TabSettings))); editor, SLOT(setTabSettings(TextEditor::TabSettings)));
connect(this, SIGNAL(storageSettingsChanged(TextEditor::StorageSettings)), connect(this, SIGNAL(storageSettingsChanged(TextEditor::StorageSettings)),
@@ -164,7 +165,7 @@ void TextEditorSettings::initializeEditor(BaseTextEditor *editor)
editor, SLOT(setDisplaySettings(TextEditor::DisplaySettings))); editor, SLOT(setDisplaySettings(TextEditor::DisplaySettings)));
connect(editor, SIGNAL(requestFontSize(int)), connect(editor, SIGNAL(requestFontSize(int)),
this, SLOT(fontSizeRequested(int))); this, SLOT(fontSizeRequested(int)));
// Apply current settings (tab settings depend on font settings) // Apply current settings (tab settings depend on font settings)
editor->setFontSettings(fontSettings()); editor->setFontSettings(fontSettings());