Skip to content

Commit 80976fd

Browse files
committed
Grid Gen: make presets stackable
1 parent 8e52fcb commit 80976fd

1 file changed

Lines changed: 17 additions & 1 deletion

File tree

src/BuiltinExtensions/GridGenerator/GridGeneratorExtension.cs

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
using FreneticUtilities.FreneticExtensions;
1+
using FreneticUtilities.FreneticExtensions;
22
using FreneticUtilities.FreneticToolkit;
33
using Newtonsoft.Json.Linq;
44
using SwarmUI.Accounts;
@@ -90,6 +90,11 @@ public override void OnPreInit()
9090
(call.LocalData as GridCallData).Additions.Add(val);
9191
return true;
9292
}
93+
else if (cleaned == PresetsParameter.Type.ID)
94+
{
95+
(call.LocalData as GridCallData).Presets.Add(val);
96+
return true;
97+
}
9398
else if (cleaned == "width" || cleaned == "outwidth")
9499
{
95100
call.Grid.MinWidth = Math.Min(call.Grid.MinWidth, int.Parse(val));
@@ -130,6 +135,15 @@ public override void OnPreInit()
130135
string prompt = param.InternalSet.Get(T2IParamTypes.Prompt, "") + " " + data.Additions.JoinString(" ");
131136
param.InternalSet.Set(T2IParamTypes.Prompt, prompt.Trim());
132137
}
138+
if (data.Presets.Any())
139+
{
140+
string presets = data.Presets.JoinString(",");
141+
if (param.InternalSet.TryGet(PresetsParameter, out string existing))
142+
{
143+
presets += $",{existing}";
144+
}
145+
param.InternalSet.Set(PresetsParameter, presets);
146+
}
133147
};
134148
GridRunnerPreRunHook = (runner) =>
135149
{
@@ -325,6 +339,8 @@ public class GridCallData
325339
public List<string> Replacements = [];
326340

327341
public List<string> Additions = [];
342+
343+
public List<string> Presets = [];
328344
}
329345

330346
public class SwarmUIGridData

0 commit comments

Comments
 (0)