QmlDesigner: Hide private signals

Hide private signals starting with "__" (convention)
and avoid duplicates.

Change-Id: If044cfc1e495a895515bae1baff430f0f91917fd
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
This commit is contained in:
Thomas Hartmann
2016-02-22 13:45:29 +01:00
parent 6bb916c451
commit a9cf2dec8c

View File

@@ -603,6 +603,17 @@ static void addSignal(const QString &typeName, const QString &itemId, const QStr
}
}
static QStringList cleanSignalNames(const QStringList &input)
{
QStringList output;
foreach (const QString &signal, input)
if (!signal.startsWith(QLatin1String("__")) && !output.contains(signal))
output.append(signal);
return output;
}
static QStringList getSortedSignalNameList(const ModelNode &modelNode)
{
NodeMetaInfo metaInfo = modelNode.metaInfo();
@@ -654,7 +665,7 @@ void gotoImplementation(const SelectionContext &selectionState)
const QString fileName = QmlDesignerPlugin::instance()->documentManager().currentDesignDocument()->fileName().toString();
const QString typeName = QmlDesignerPlugin::instance()->documentManager().currentDesignDocument()->fileName().toFileInfo().baseName();
QStringList signalNames = getSortedSignalNameList(selectionState.selectedModelNodes().first());
QStringList signalNames = cleanSignalNames(getSortedSignalNameList(selectionState.selectedModelNodes().first()));
QList<QmlJSEditor::FindReferences::Usage> usages = QmlJSEditor::FindReferences::findUsageOfType(fileName, typeName);