#3833: Small fixes/improvements to dialog api

This commit is contained in:
Outfluencer 2025-05-26 07:06:09 +10:00 committed by md_5
parent a696bb0e9f
commit 363003d8c7
No known key found for this signature in database
GPG Key ID: E8E901AC7C617C11
7 changed files with 12 additions and 8 deletions

View File

@ -5,7 +5,6 @@ import java.util.List;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.Data; import lombok.Data;
import lombok.NonNull; import lombok.NonNull;
import lombok.RequiredArgsConstructor;
import lombok.experimental.Accessors; import lombok.experimental.Accessors;
import net.md_5.bungee.api.chat.BaseComponent; import net.md_5.bungee.api.chat.BaseComponent;
import net.md_5.bungee.api.dialog.body.DialogBody; import net.md_5.bungee.api.dialog.body.DialogBody;
@ -15,7 +14,6 @@ import net.md_5.bungee.api.dialog.body.DialogBody;
*/ */
@Data @Data
@AllArgsConstructor @AllArgsConstructor
@RequiredArgsConstructor
@Accessors(fluent = true) @Accessors(fluent = true)
public final class DialogBase public final class DialogBase
{ {
@ -24,7 +22,7 @@ public final class DialogBase
* The mandatory dialog title. * The mandatory dialog title.
*/ */
@NonNull @NonNull
private final BaseComponent title; private BaseComponent title;
/** /**
* The name which is used for any buttons leading to this dialog (eg from a * The name which is used for any buttons leading to this dialog (eg from a
* {@link DialogListDialog}). Otherwise defaults to {@link #title}. * {@link DialogListDialog}). Otherwise defaults to {@link #title}.
@ -40,4 +38,9 @@ public final class DialogBase
*/ */
@SerializedName("can_close_with_escape") @SerializedName("can_close_with_escape")
private Boolean canCloseWithEscape; private Boolean canCloseWithEscape;
public DialogBase(@NonNull BaseComponent title)
{
this( title, null, null, null );
}
} }

View File

@ -43,7 +43,7 @@ public final class MultiActionDialog implements Dialog
public MultiActionDialog(@NonNull DialogBase base, @NonNull DialogClickAction... actions) public MultiActionDialog(@NonNull DialogBase base, @NonNull DialogClickAction... actions)
{ {
this( base, Arrays.asList( actions ), 2, null ); this( base, Arrays.asList( actions ), null, null );
} }
public MultiActionDialog(@NonNull DialogBase base, @NonNull List<DialogClickAction> actions, Integer columns, ClickEvent onCancel) public MultiActionDialog(@NonNull DialogBase base, @NonNull List<DialogClickAction> actions, Integer columns, ClickEvent onCancel)

View File

@ -43,7 +43,7 @@ public final class MultiActionInputFormDialog implements Dialog
public MultiActionInputFormDialog(@NonNull DialogBase base, @NonNull DialogInput input, @NonNull DialogSubmitAction action) public MultiActionInputFormDialog(@NonNull DialogBase base, @NonNull DialogInput input, @NonNull DialogSubmitAction action)
{ {
this( base, Arrays.asList( input ), Arrays.asList( action ), 2 ); this( base, Arrays.asList( input ), Arrays.asList( action ), null );
} }
public MultiActionInputFormDialog(@NonNull DialogBase base, @NonNull DialogInput input, @NonNull DialogSubmitAction action, Integer columns) public MultiActionInputFormDialog(@NonNull DialogBase base, @NonNull DialogInput input, @NonNull DialogSubmitAction action, Integer columns)

View File

@ -35,7 +35,7 @@ public class DialogAction
setWidth( width ); setWidth( width );
} }
public DialogAction(BaseComponent label) public DialogAction(@NonNull BaseComponent label)
{ {
this( label, null, null ); this( label, null, null );
} }

View File

@ -17,6 +17,7 @@ public class DialogInput
/** /**
* The internal input type. * The internal input type.
*/ */
@NonNull
@ApiStatus.Internal @ApiStatus.Internal
private final String type; private final String type;
/** /**

View File

@ -96,7 +96,7 @@ public class NumberRangeInput extends DialogInput
// we need to calculate if the initial value is between start and end, regardless of the order // we need to calculate if the initial value is between start and end, regardless of the order
float min = Math.min( start, end ); float min = Math.min( start, end );
float max = Math.max( start, end ); float max = Math.max( start, end );
Preconditions.checkArgument( step == null || ( initial >= min && initial <= max ), "step must be null or between start and end" ); Preconditions.checkArgument( initial == null || ( initial >= min && initial <= max ), "initial must be null or between start and end" );
this.initial = initial; this.initial = initial;
return this; return this;
} }

View File

@ -50,7 +50,7 @@ public class TextInput extends DialogInput
public TextInput(@NonNull String key, @NonNull BaseComponent label) public TextInput(@NonNull String key, @NonNull BaseComponent label)
{ {
this( key, 200, label, null, null, null, null ); this( key, null, label, null, null, null, null );
} }
public TextInput(@NonNull String key, Integer width, @NonNull BaseComponent label, Boolean labelVisible, String initial, Integer maxLength) public TextInput(@NonNull String key, Integer width, @NonNull BaseComponent label, Boolean labelVisible, String initial, Integer maxLength)