Skip to content

Commit e6763dc

Browse files
committed
add internal option for suppressing errors in render-pipelines
1 parent 4eb5886 commit e6763dc

File tree

4 files changed

+29
-5
lines changed

4 files changed

+29
-5
lines changed

resharper/resharper-unity/src/Application/UI/Options/VisualStudio/ReSharperOptionsPage.cs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -73,8 +73,11 @@ public ReSharperOptionsPage(Lifetime lifetime, OptionsPageContext pageContext,
7373
{
7474
AddHeader("Internal");
7575

76+
AddBoolOption((UnitySettings s) => s.SuppressShaderErrorHighlightingInRenderPipelinePackages,
77+
"Suppress resolve errors in render-pipeline packages");
78+
7679
AddBoolOption((UnitySettings s) => s.EnableCgErrorHighlighting,
77-
"Parse Cg files for syntax errors (requires internal mode, and re-opening solution)");
80+
"[Deprecated] Parse GLSL files for syntax errors (requires internal mode, and re-opening solution)");
7881
}
7982
}
8083
}

resharper/resharper-unity/src/HlslSupport/Daemon/UnityHlslAllErrorsPredicate.cs

Lines changed: 17 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
11
using JetBrains.Application.Settings;
22
using JetBrains.Collections.Viewable;
3+
using JetBrains.DataFlow;
4+
using JetBrains.Lifetimes;
35
using JetBrains.ProjectModel;
6+
using JetBrains.ProjectModel.DataContext;
47
using JetBrains.ReSharper.Plugins.Unity.ProjectModel;
58
using JetBrains.ReSharper.Plugins.Unity.Settings;
69
using JetBrains.ReSharper.Psi.Cpp.Tree;
@@ -10,18 +13,30 @@ namespace JetBrains.ReSharper.Plugins.Unity.HlslSupport.Daemon
1013
[SolutionComponent]
1114
public class UnityHlslAllErrorsPredicate : IHlslUnresolvedUnqualifiedNamesErrorsPredicate {
1215
private readonly UnitySolutionTracker myUnitySolutionTracker;
16+
private readonly IProperty<bool> mySuppressShaderErrors;
17+
private readonly IProperty<bool> mySuppressShaderErrorsInRenderPipeline;
1318

14-
public UnityHlslAllErrorsPredicate(UnitySolutionTracker unitySolutionTracker)
19+
public UnityHlslAllErrorsPredicate(Lifetime lifetime, ISolution solution, UnitySolutionTracker unitySolutionTracker, ISettingsStore settingsStore)
1520
{
1621
myUnitySolutionTracker = unitySolutionTracker;
22+
mySuppressShaderErrors = settingsStore.BindToContextLive(lifetime, ContextRange.Smart(solution.ToDataContext()))
23+
.GetValueProperty(lifetime, (UnitySettings key) => key.SuppressShaderErrorHighlighting);
24+
mySuppressShaderErrorsInRenderPipeline = settingsStore.BindToContextLive(lifetime, ContextRange.Smart(solution.ToDataContext()))
25+
.GetValueProperty(lifetime, (UnitySettings key) => key.SuppressShaderErrorHighlightingInRenderPipelinePackages);
1726
}
1827

1928
public bool SuppressUnresolvedErrors(CppFile cppFile, IContextBoundSettingsStore settingsStore)
2029
{
2130
if (!myUnitySolutionTracker.IsUnityProject.HasTrueValue())
2231
return false;
2332

24-
return settingsStore.GetValue((UnitySettings k) => k.SuppressShaderErrorHighlighting);
33+
if (mySuppressShaderErrorsInRenderPipeline.Value)
34+
{
35+
var location = cppFile.File;
36+
if (location.FullPath.Contains(".render-pipelines"))
37+
return true;
38+
}
39+
return mySuppressShaderErrors.Value;
2540
}
2641

2742
public bool SuppressUnresolvedUnqualifiedErrors(CppFile cppFile, IContextBoundSettingsStore settingsStore)

resharper/resharper-unity/src/Rider/UnityOptionsPage.cs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -120,8 +120,11 @@ public UnityOptionsPage(Lifetime lifetime, OptionsPageContext pageContext,
120120
{
121121
AddHeader("Internal");
122122

123+
AddBoolOption((UnitySettings s) => s.SuppressShaderErrorHighlightingInRenderPipelinePackages,
124+
"Suppress resolve errors in render-pipeline packages");
125+
123126
AddBoolOption((UnitySettings s) => s.EnableCgErrorHighlighting,
124-
"Parse Cg files for syntax errors (requires internal mode, and re-opening solution)");
127+
"[Deprecated] Parse GLSL files for syntax errors (requires internal mode, and re-opening solution)");
125128
}
126129
}
127130

resharper/resharper-unity/src/Settings/UnitySettings.cs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,9 +35,12 @@ public class UnitySettings
3535
[SettingsEntry(false, "Enables syntax error highlighting of CG blocks in ShaderLab files.")]
3636
public bool EnableCgErrorHighlighting;
3737

38-
[SettingsEntry(false, "Suppress resolve errors of unqualified names in HLSL.")]
38+
[SettingsEntry(false, "Suppress resolve errors in HLSL.")]
3939
public bool SuppressShaderErrorHighlighting;
4040

41+
[SettingsEntry(false, "Suppress resolve errors in render-pipeline package in HLSL.")]
42+
public bool SuppressShaderErrorHighlightingInRenderPipelinePackages;
43+
4144
[SettingsEntry(GutterIconMode.CodeInsightDisabled, "Unity highlighter scheme for editor.")]
4245
public GutterIconMode GutterIconMode;
4346

0 commit comments

Comments
 (0)