33import com .jme3 .math .Vector3f ;
44import com .ss .editor .Messages ;
55import com .ss .editor .model .undo .editor .ModelChangeConsumer ;
6- import com .ss .editor .ui .control .model .property .control .particle .influencer .BooleanParticleInfluencerPropertyControl ;
7- import com .ss .editor .ui .control .model .property .control .particle .influencer .EnumParticleInfluencerEmitterPropertyControl ;
8- import com .ss .editor .ui .control .model .property .control .particle .influencer .FloatParticleInfluencerPropertyControl ;
9- import com .ss .editor .ui .control .model .property .control .particle .influencer .IntArrayParticleInfluencerPropertyControl ;
10- import com .ss .editor .ui .control .model .property .control .particle .influencer .PhysicsNodeListControl ;
11- import com .ss .editor .ui .control .model .property .control .particle .influencer .Vector3fParticleInfluencerPropertyControl ;
12- import com .ss .editor .ui .control .model .property .control .particle .influencer .interpolation .control .AlphaInfluencerControl ;
13- import com .ss .editor .ui .control .model .property .control .particle .influencer .interpolation .control .ColorInfluencerControl ;
14- import com .ss .editor .ui .control .model .property .control .particle .influencer .interpolation .control .DestinationInfluencerControl ;
15- import com .ss .editor .ui .control .model .property .control .particle .influencer .interpolation .control .RotationInfluencerControl ;
16- import com .ss .editor .ui .control .model .property .control .particle .influencer .interpolation .control .SizeInfluencerControl ;
6+ import com .ss .editor .ui .control .model .property .control .particle .influencer .*;
7+ import com .ss .editor .ui .control .model .property .control .particle .influencer .interpolation .control .*;
178import com .ss .editor .ui .control .property .builder .PropertyBuilder ;
189import com .ss .editor .ui .control .property .builder .impl .AbstractPropertyBuilder ;
19-
10+ import com .ss .rlib .ui .util .FXUtils ;
11+ import javafx .scene .layout .VBox ;
2012import org .jetbrains .annotations .NotNull ;
2113import org .jetbrains .annotations .Nullable ;
22-
23- import javafx .scene .layout .VBox ;
24- import com .ss .rlib .ui .util .FXUtils ;
2514import tonegod .emitter .influencers .InterpolatedParticleInfluencer ;
2615import tonegod .emitter .influencers .ParticleInfluencer ;
27- import tonegod .emitter .influencers .impl .AlphaInfluencer ;
28- import tonegod .emitter .influencers .impl .ColorInfluencer ;
29- import tonegod .emitter .influencers .impl .DestinationInfluencer ;
30- import tonegod .emitter .influencers .impl .GravityInfluencer ;
16+ import tonegod .emitter .influencers .impl .*;
3117import tonegod .emitter .influencers .impl .GravityInfluencer .GravityAlignment ;
32- import tonegod .emitter .influencers .impl .ImpulseInfluencer ;
33- import tonegod .emitter .influencers .impl .PhysicsInfluencer ;
3418import tonegod .emitter .influencers .impl .PhysicsInfluencer .CollisionReaction ;
35- import tonegod .emitter .influencers .impl .RadialVelocityInfluencer ;
3619import tonegod .emitter .influencers .impl .RadialVelocityInfluencer .RadialPullAlignment ;
3720import tonegod .emitter .influencers .impl .RadialVelocityInfluencer .RadialPullCenter ;
3821import tonegod .emitter .influencers .impl .RadialVelocityInfluencer .RadialUpAlignment ;
39- import tonegod .emitter .influencers .impl .RotationInfluencer ;
40- import tonegod .emitter .influencers .impl .SizeInfluencer ;
41- import tonegod .emitter .influencers .impl .SpriteInfluencer ;
4222
4323/**
4424 * The implementation of the {@link PropertyBuilder} to build property controls for {@link ParticleInfluencer}.
4727 */
4828public class Toneg0dParticleInfluencerPropertyBuilder extends AbstractPropertyBuilder <ModelChangeConsumer > {
4929
30+ @ NotNull
5031 private static final GravityAlignment [] GRAVITY_ALIGNMENTS = GravityAlignment .values ();
32+
33+ @ NotNull
5134 private static final CollisionReaction [] COLLISION_REACTIONS = CollisionReaction .values ();
35+
36+ @ NotNull
5237 private static final RadialPullCenter [] RADIAL_PULL_CENTERS = RadialPullCenter .values ();
38+
39+ @ NotNull
5340 private static final RadialPullAlignment [] RADIAL_PULL_ALIGNMENTS = RadialPullAlignment .values ();
41+
42+ @ NotNull
5443 private static final RadialUpAlignment [] RADIAL_UP_ALIGNMENTS = RadialUpAlignment .values ();
5544
5645 @ NotNull
@@ -71,11 +60,12 @@ private Toneg0dParticleInfluencerPropertyBuilder() {
7160 }
7261
7362 @ Override
74- protected void buildForImpl (@ NotNull final Object object , @ Nullable final Object parent , @ NotNull final VBox container ,
75- @ NotNull final ModelChangeConsumer changeConsumer ) {
63+ protected void buildForImpl (@ NotNull final Object object , @ Nullable final Object parent ,
64+ @ NotNull final VBox container , @ NotNull final ModelChangeConsumer changeConsumer ) {
7665
7766 if (!(object instanceof ParticleInfluencer ) || parent == null ) return ;
7867
68+
7969 if (object instanceof AlphaInfluencer ) {
8070 createControls (container , changeConsumer , (AlphaInfluencer ) object , parent );
8171 } else if (object instanceof ColorInfluencer ) {
@@ -111,8 +101,9 @@ protected void buildForImpl(@NotNull final Object object, @Nullable final Object
111101 * @param influencer the influencer
112102 * @param parent the parent
113103 */
114- protected void createControls (@ NotNull final VBox container , @ NotNull final ModelChangeConsumer changeConsumer ,
115- @ NotNull InterpolatedParticleInfluencer influencer , @ NotNull final Object parent ) {
104+ private void createControls (@ NotNull final VBox container , @ NotNull final ModelChangeConsumer changeConsumer ,
105+ @ NotNull final InterpolatedParticleInfluencer influencer ,
106+ @ NotNull final Object parent ) {
116107
117108 final float fixedDuration = influencer .getFixedDuration ();
118109
@@ -134,13 +125,15 @@ protected void createControls(@NotNull final VBox container, @NotNull final Mode
134125 * @param influencer the influencer
135126 * @param parent the parent
136127 */
137- protected void createControls (@ NotNull final VBox container , @ NotNull final ModelChangeConsumer changeConsumer ,
138- @ NotNull final AlphaInfluencer influencer , @ NotNull final Object parent ) {
128+ private void createControls (@ NotNull final VBox container , @ NotNull final ModelChangeConsumer changeConsumer ,
129+ @ NotNull final AlphaInfluencer influencer , @ NotNull final Object parent ) {
139130
140131 final AlphaInfluencerControl influencerControl = new AlphaInfluencerControl (changeConsumer , influencer , parent );
141132 influencerControl .reload ();
142133
143134 FXUtils .addToPane (influencerControl , container );
135+
136+ buildSplitLine (container );
144137 }
145138
146139 /**
@@ -151,8 +144,8 @@ protected void createControls(@NotNull final VBox container, @NotNull final Mode
151144 * @param influencer the influencer
152145 * @param parent the parent
153146 */
154- protected void createControls (@ NotNull final VBox container , @ NotNull final ModelChangeConsumer changeConsumer ,
155- @ NotNull final ColorInfluencer influencer , @ NotNull final Object parent ) {
147+ private void createControls (@ NotNull final VBox container , @ NotNull final ModelChangeConsumer changeConsumer ,
148+ @ NotNull final ColorInfluencer influencer , @ NotNull final Object parent ) {
156149
157150 final boolean randomStartColor = influencer .isRandomStartColor ();
158151
@@ -167,6 +160,7 @@ protected void createControls(@NotNull final VBox container, @NotNull final Mode
167160 randomStartColorControl .setEditObject (influencer );
168161
169162 FXUtils .addToPane (colorControl , container );
163+ buildSplitLine (container );
170164 FXUtils .addToPane (randomStartColorControl , container );
171165 }
172166
@@ -178,11 +172,10 @@ protected void createControls(@NotNull final VBox container, @NotNull final Mode
178172 * @param influencer the influencer
179173 * @param parent the parent
180174 */
181- protected void createControls (@ NotNull final VBox container , @ NotNull final ModelChangeConsumer changeConsumer ,
182- @ NotNull final SizeInfluencer influencer , @ NotNull final Object parent ) {
175+ private void createControls (@ NotNull final VBox container , @ NotNull final ModelChangeConsumer changeConsumer ,
176+ @ NotNull final SizeInfluencer influencer , @ NotNull final Object parent ) {
183177
184178 final boolean randomSize = influencer .isRandomSize ();
185-
186179 final float randomSizeTolerance = influencer .getRandomSizeTolerance ();
187180
188181 final SizeInfluencerControl sizeControl = new SizeInfluencerControl (changeConsumer , influencer , parent );
@@ -205,6 +198,7 @@ protected void createControls(@NotNull final VBox container, @NotNull final Mode
205198 sizeVariationToleranceControl .setEditObject (influencer );
206199
207200 FXUtils .addToPane (sizeControl , container );
201+ buildSplitLine (container );
208202 FXUtils .addToPane (randomStartSizeControl , container );
209203 FXUtils .addToPane (sizeVariationToleranceControl , container );
210204 }
@@ -217,8 +211,8 @@ protected void createControls(@NotNull final VBox container, @NotNull final Mode
217211 * @param influencer the influencer
218212 * @param parent the parent
219213 */
220- protected void createControls (@ NotNull final VBox container , @ NotNull final ModelChangeConsumer changeConsumer ,
221- @ NotNull final SpriteInfluencer influencer , @ NotNull final Object parent ) {
214+ private void createControls (@ NotNull final VBox container , @ NotNull final ModelChangeConsumer changeConsumer ,
215+ @ NotNull final SpriteInfluencer influencer , @ NotNull final Object parent ) {
222216
223217 final int [] frameSequence = influencer .getFrameSequence ();
224218 final float fixedDuration = influencer .getFixedDuration ();
@@ -272,8 +266,8 @@ protected void createControls(@NotNull final VBox container, @NotNull final Mode
272266 * @param influencer the influencer
273267 * @param parent the parent
274268 */
275- protected void createControls (@ NotNull final VBox container , @ NotNull final ModelChangeConsumer changeConsumer ,
276- @ NotNull final DestinationInfluencer influencer , @ NotNull final Object parent ) {
269+ private void createControls (@ NotNull final VBox container , @ NotNull final ModelChangeConsumer changeConsumer ,
270+ @ NotNull final DestinationInfluencer influencer , @ NotNull final Object parent ) {
277271
278272 final boolean randomStartDestination = influencer .isRandomStartDestination ();
279273
@@ -289,6 +283,7 @@ protected void createControls(@NotNull final VBox container, @NotNull final Mode
289283 randomStartDestinationControl .setEditObject (influencer );
290284
291285 FXUtils .addToPane (influencerControl , container );
286+ buildSplitLine (container );
292287 FXUtils .addToPane (randomStartDestinationControl , container );
293288 }
294289
@@ -300,8 +295,8 @@ protected void createControls(@NotNull final VBox container, @NotNull final Mode
300295 * @param influencer the influencer
301296 * @param parent the parent
302297 */
303- protected void createControls (@ NotNull final VBox container , @ NotNull final ModelChangeConsumer changeConsumer ,
304- @ NotNull final ImpulseInfluencer influencer , @ NotNull final Object parent ) {
298+ private void createControls (@ NotNull final VBox container , @ NotNull final ModelChangeConsumer changeConsumer ,
299+ @ NotNull final ImpulseInfluencer influencer , @ NotNull final Object parent ) {
305300
306301 final float chance = influencer .getChance ();
307302 final float strength = influencer .getStrength ();
@@ -344,8 +339,8 @@ protected void createControls(@NotNull final VBox container, @NotNull final Mode
344339 * @param influencer the influencer
345340 * @param parent the parent
346341 */
347- protected void createControls (@ NotNull final VBox container , @ NotNull final ModelChangeConsumer changeConsumer ,
348- @ NotNull final GravityInfluencer influencer , @ NotNull final Object parent ) {
342+ private void createControls (@ NotNull final VBox container , @ NotNull final ModelChangeConsumer changeConsumer ,
343+ @ NotNull final GravityInfluencer influencer , @ NotNull final Object parent ) {
349344
350345 final Vector3f gravity = influencer .getGravity ().clone ();
351346 final GravityAlignment alignment = influencer .getAlignment ();
@@ -389,8 +384,8 @@ protected void createControls(@NotNull final VBox container, @NotNull final Mode
389384 * @param influencer the influencer
390385 * @param parent the parent
391386 */
392- protected void createControls (@ NotNull final VBox container , @ NotNull final ModelChangeConsumer changeConsumer ,
393- @ NotNull final PhysicsInfluencer influencer , @ NotNull final Object parent ) {
387+ private void createControls (@ NotNull final VBox container , @ NotNull final ModelChangeConsumer changeConsumer ,
388+ @ NotNull final PhysicsInfluencer influencer , @ NotNull final Object parent ) {
394389
395390 final CollisionReaction collisionReaction = influencer .getCollisionReaction ();
396391 final float restitution = influencer .getRestitution ();
@@ -414,9 +409,9 @@ protected void createControls(@NotNull final VBox container, @NotNull final Mode
414409 restitutionControl .setApplyHandler (PhysicsInfluencer ::setRestitution );
415410 restitutionControl .setEditObject (influencer );
416411
417- FXUtils .addToPane (nodeListControl , container );
418412 FXUtils .addToPane (reactionControl , container );
419413 FXUtils .addToPane (restitutionControl , container );
414+ FXUtils .addToPane (nodeListControl , container );
420415 }
421416
422417 /**
@@ -427,8 +422,8 @@ protected void createControls(@NotNull final VBox container, @NotNull final Mode
427422 * @param influencer the influencer
428423 * @param parent the parent
429424 */
430- protected void createControls (@ NotNull final VBox container , @ NotNull final ModelChangeConsumer changeConsumer ,
431- @ NotNull final RadialVelocityInfluencer influencer , @ NotNull final Object parent ) {
425+ private void createControls (@ NotNull final VBox container , @ NotNull final ModelChangeConsumer changeConsumer ,
426+ @ NotNull final RadialVelocityInfluencer influencer , @ NotNull final Object parent ) {
432427
433428 final RadialPullCenter pullCenter = influencer .getRadialPullCenter ();
434429 final RadialPullAlignment pullAlignment = influencer .getRadialPullAlignment ();
@@ -503,8 +498,8 @@ protected void createControls(@NotNull final VBox container, @NotNull final Mode
503498 * @param influencer the influencer
504499 * @param parent the parent
505500 */
506- protected void createControls (@ NotNull final VBox container , @ NotNull final ModelChangeConsumer changeConsumer ,
507- @ NotNull final RotationInfluencer influencer , @ NotNull final Object parent ) {
501+ private void createControls (@ NotNull final VBox container , @ NotNull final ModelChangeConsumer changeConsumer ,
502+ @ NotNull final RotationInfluencer influencer , @ NotNull final Object parent ) {
508503
509504 final boolean randomDirection = influencer .isRandomDirection ();
510505 final boolean randomSpeed = influencer .isRandomSpeed ();
@@ -556,6 +551,7 @@ protected void createControls(@NotNull final VBox container, @NotNull final Mode
556551 randomStartRotationZControl .setEditObject (influencer );
557552
558553 FXUtils .addToPane (influencerControl , container );
554+ buildSplitLine (container );
559555 FXUtils .addToPane (randomDirectionControl , container );
560556 FXUtils .addToPane (randomSpeedControl , container );
561557 FXUtils .addToPane (randomStartRotationXControl , container );
0 commit comments