Class ViaVersionDialogManager
java.lang.Object
io.github.projectunified.unidialog.viaversion.ViaVersionDialogManager
- All Implemented Interfaces:
DialogManager<ViaItem,ViaDialogBodyBuilder, ViaDialogInputBuilder, ViaDialog<?>, ViaDialogActionBuilder>
public class ViaVersionDialogManager
extends Object
implements DialogManager<ViaItem,ViaDialogBodyBuilder,ViaDialogInputBuilder,ViaDialog<?>,ViaDialogActionBuilder>
A ViaVersion-based implementation of
DialogManager that manages dialogs for players.
It provides dialog creation, custom action registration, and dialog clearing.-
Constructor Summary
ConstructorsConstructorDescriptionViaVersionDialogManager(String defaultNamespace) Constructor for ViaVersionDialogManager, usingViaDialogTagBuilder.deserializeLegacy(java.lang.String)as the component deserializerViaVersionDialogManager(String defaultNamespace, Function<String, com.viaversion.viaversion.libs.mcstructs.text.TextComponent> componentDeserializer) Constructor for ViaVersionDialogManager -
Method Summary
Modifier and TypeMethodDescriptionbooleanclearDialog(com.viaversion.viaversion.api.connection.UserConnection connection) Clear the dialog for a user connection, automatically determining if it is a configuration dialog.booleanclearDialog(com.viaversion.viaversion.api.connection.UserConnection connection, boolean configuration) Clear the dialog for a user connection, optionally specifying if it is a configuration dialog.booleanclearDialog(UUID uuid) Clear the current dialog associated with the given player UUID.Create a confirmation dialogCreate a dialog list dialogCreate a multi-action dialogCreate a notice dialogCreate a server links dialogvoidregister()Register the dialog managervoidregisterCustomAction(String namespace, String id, Consumer<DialogPayload> action) Register a custom action with a unique identifier.voidregisterCustomAction(String id, Consumer<DialogPayload> action) Register a custom action with a unique identifier.static booleansupportsDialog(@Nullable com.viaversion.viaversion.api.connection.UserConnection connection) Check if a user connection supports dialogsstatic booleansupportsDialog(@Nullable UUID uuid) Check if a player supports dialogsvoidUnregister the dialog managervoidUnregister all custom actions.voidUnregister a custom action by its unique identifier.voidunregisterCustomAction(String namespace, String id) Unregister a custom action by its namespace and unique identifier.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface io.github.projectunified.unidialog.core.DialogManager
registerCustomAction, registerCustomAction
-
Constructor Details
-
ViaVersionDialogManager
Constructor for ViaVersionDialogManager, usingViaDialogTagBuilder.deserializeLegacy(java.lang.String)as the component deserializer- Parameters:
defaultNamespace- the default namespace
-
ViaVersionDialogManager
public ViaVersionDialogManager(String defaultNamespace, Function<String, com.viaversion.viaversion.libs.mcstructs.text.TextComponent> componentDeserializer) Constructor for ViaVersionDialogManager- Parameters:
defaultNamespace- the default namespacecomponentDeserializer- a function to deserialize components from strings
-
-
Method Details
-
supportsDialog
public static boolean supportsDialog(@Nullable @Nullable com.viaversion.viaversion.api.connection.UserConnection connection) Check if a user connection supports dialogs- Parameters:
connection- the user connection, may be null- Returns:
- true if the connection supports dialogs
-
supportsDialog
Check if a player supports dialogs- Parameters:
uuid- the player's UUID, may be null- Returns:
- true if the player supports dialogs
-
createConfirmationDialog
Description copied from interface:DialogManagerCreate a confirmation dialog- Specified by:
createConfirmationDialogin interfaceDialogManager<ViaItem,ViaDialogBodyBuilder, ViaDialogInputBuilder, ViaDialog<?>, ViaDialogActionBuilder> - Returns:
- a new instance of ConfirmationDialog
-
createMultiActionDialog
Description copied from interface:DialogManagerCreate a multi-action dialog- Specified by:
createMultiActionDialogin interfaceDialogManager<ViaItem,ViaDialogBodyBuilder, ViaDialogInputBuilder, ViaDialog<?>, ViaDialogActionBuilder> - Returns:
- a new instance of MultiActionDialog
-
createServerLinksDialog
Description copied from interface:DialogManagerCreate a server links dialog- Specified by:
createServerLinksDialogin interfaceDialogManager<ViaItem,ViaDialogBodyBuilder, ViaDialogInputBuilder, ViaDialog<?>, ViaDialogActionBuilder> - Returns:
- a new instance of ServerLinksDialog
-
createNoticeDialog
Description copied from interface:DialogManagerCreate a notice dialog- Specified by:
createNoticeDialogin interfaceDialogManager<ViaItem,ViaDialogBodyBuilder, ViaDialogInputBuilder, ViaDialog<?>, ViaDialogActionBuilder> - Returns:
- a new instance of NoticeDialog
-
createDialogListDialog
Description copied from interface:DialogManagerCreate a dialog list dialog- Specified by:
createDialogListDialogin interfaceDialogManager<ViaItem,ViaDialogBodyBuilder, ViaDialogInputBuilder, ViaDialog<?>, ViaDialogActionBuilder> - Returns:
- a new instance of DialogListDialog
-
register
public void register()Description copied from interface:DialogManagerRegister the dialog manager- Specified by:
registerin interfaceDialogManager<ViaItem,ViaDialogBodyBuilder, ViaDialogInputBuilder, ViaDialog<?>, ViaDialogActionBuilder>
-
unregister
public void unregister()Description copied from interface:DialogManagerUnregister the dialog manager- Specified by:
unregisterin interfaceDialogManager<ViaItem,ViaDialogBodyBuilder, ViaDialogInputBuilder, ViaDialog<?>, ViaDialogActionBuilder>
-
registerCustomAction
Description copied from interface:DialogManagerRegister a custom action with a unique identifier.- Specified by:
registerCustomActionin interfaceDialogManager<ViaItem,ViaDialogBodyBuilder, ViaDialogInputBuilder, ViaDialog<?>, ViaDialogActionBuilder> - Parameters:
id- the unique identifier for the custom actionaction- the action to be executed, taking a payload
-
registerCustomAction
Description copied from interface:DialogManagerRegister a custom action with a unique identifier.- Specified by:
registerCustomActionin interfaceDialogManager<ViaItem,ViaDialogBodyBuilder, ViaDialogInputBuilder, ViaDialog<?>, ViaDialogActionBuilder> - Parameters:
namespace- the namespace for the custom actionid- the unique identifier for the custom actionaction- the action to be executed, taking a payload
-
unregisterCustomAction
Description copied from interface:DialogManagerUnregister a custom action by its unique identifier.- Specified by:
unregisterCustomActionin interfaceDialogManager<ViaItem,ViaDialogBodyBuilder, ViaDialogInputBuilder, ViaDialog<?>, ViaDialogActionBuilder> - Parameters:
id- the unique identifier of the custom action to be unregistered
-
unregisterCustomAction
Description copied from interface:DialogManagerUnregister a custom action by its namespace and unique identifier.- Specified by:
unregisterCustomActionin interfaceDialogManager<ViaItem,ViaDialogBodyBuilder, ViaDialogInputBuilder, ViaDialog<?>, ViaDialogActionBuilder> - Parameters:
namespace- the namespace of the custom actionid- the unique identifier of the custom action to be unregistered
-
unregisterAllCustomActions
public void unregisterAllCustomActions()Description copied from interface:DialogManagerUnregister all custom actions.- Specified by:
unregisterAllCustomActionsin interfaceDialogManager<ViaItem,ViaDialogBodyBuilder, ViaDialogInputBuilder, ViaDialog<?>, ViaDialogActionBuilder>
-
clearDialog
public boolean clearDialog(com.viaversion.viaversion.api.connection.UserConnection connection, boolean configuration) Clear the dialog for a user connection, optionally specifying if it is a configuration dialog.- Parameters:
connection- the user connection to clear the dialog forconfiguration- if true, clears as a configuration dialog; if false, clears as a play dialog- Returns:
- true if the clear packet was sent, false otherwise
-
clearDialog
public boolean clearDialog(com.viaversion.viaversion.api.connection.UserConnection connection) Clear the dialog for a user connection, automatically determining if it is a configuration dialog.- Parameters:
connection- the user connection to clear the dialog for- Returns:
- true if the clear packet was sent, false otherwise
-
clearDialog
Description copied from interface:DialogManagerClear the current dialog associated with the given player UUID.- Specified by:
clearDialogin interfaceDialogManager<ViaItem,ViaDialogBodyBuilder, ViaDialogInputBuilder, ViaDialog<?>, ViaDialogActionBuilder> - Parameters:
uuid- the unique identifier of the player whose dialog should be cleared- Returns:
- true if the dialog was successfully cleared, false otherwise
-