Add a start_dm option to SimpleMenu (#6286)

Co-authored-by: Jakub Kuczys <me@jacken.men>
This commit is contained in:
yeetbruises 2024-01-14 22:17:19 -05:00 committed by GitHub
parent 569840e9e6
commit 409ece427f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -242,6 +242,19 @@ class SimpleMenu(discord.ui.View):
kwargs = await self.get_page(self.current_page) kwargs = await self.get_page(self.current_page)
self.message = await ctx.send(**kwargs, ephemeral=ephemeral) self.message = await ctx.send(**kwargs, ephemeral=ephemeral)
async def start_dm(self, user: discord.User):
"""
Used to start displaying the menu in a direct message.
Parameters
----------
user: `discord.User`
The user that will be direct messaged by the bot.
"""
self.author = user
kwargs = await self.get_page(self.current_page)
self.message = await user.send(**kwargs)
async def get_page(self, page_num: int) -> Dict[str, Optional[Any]]: async def get_page(self, page_num: int) -> Dict[str, Optional[Any]]:
try: try:
page = await self.source.get_page(page_num) page = await self.source.get_page(page_num)