From 3e591972cafdffb6692a1b94cf9a63251188df8b Mon Sep 17 00:00:00 2001
From: Still Hsu <341464@gmail.com>
Date: Sun, 6 May 2018 06:01:34 +0800
Subject: [PATCH] Add properties examples to overwrite
---
.../Common/ObjectProperties.Overwrites.md | 174 ++++++++++++++++++
.../Channels/GuildChannelProperties.cs | 9 +-
.../Channels/TextChannelProperties.cs | 3 +
.../Entities/Emotes/EmoteProperties.cs | 1 +
.../Entities/Guilds/GuildProperties.cs | 17 +-
.../Entities/Messages/MessageProperties.cs | 18 +-
.../Entities/Roles/RoleProperties.cs | 11 +-
.../Entities/Users/GuildUserProperties.cs | 10 +-
.../Entities/Users/SelfUserProperties.cs | 10 +-
.../Entities/Webhooks/WebhookProperties.cs | 11 +-
10 files changed, 189 insertions(+), 75 deletions(-)
create mode 100644 docs/_overwrites/Common/ObjectProperties.Overwrites.md
diff --git a/docs/_overwrites/Common/ObjectProperties.Overwrites.md b/docs/_overwrites/Common/ObjectProperties.Overwrites.md
new file mode 100644
index 000000000..e9c365d39
--- /dev/null
+++ b/docs/_overwrites/Common/ObjectProperties.Overwrites.md
@@ -0,0 +1,174 @@
+---
+uid: Discord.GuildChannelProperties
+example: [*content]
+---
+
+The following example uses @Discord.IGuildChannel.ModifyAsync* to
+apply changes specified in the properties,
+
+```cs
+var channel = _client.GetChannel(id) as IGuildChannel;
+if (channel == null) return;
+
+await channel.ModifyAsync(x =>
+{
+ x.Name = "new-name";
+ x.Position = channel.Position - 1;
+});
+```
+
+---
+uid: Discord.TextChannelProperties
+example: [*content]
+---
+
+The following example uses @Discord.ITextChannel.ModifyAsync* to
+apply changes specified in the properties,
+
+```cs
+var channel = _client.GetChannel(id) as ITextChannel;
+if (channel == null) return;
+
+await channel.ModifyAsync(x =>
+{
+ x.Name = "cool-guys-only";
+ x.Topic = "This channel is only for cool guys and adults!!!";
+ x.Position = channel.Position - 1;
+ x.IsNsfw = true;
+});
+```
+
+---
+uid: Discord.VoiceChannelProperties
+example: [*content]
+---
+
+The following example uses @Discord.IVoiceChannel.ModifyAsync* to
+apply changes specified in the properties,
+
+```cs
+var channel = _client.GetChannel(id) as IVoiceChannel;
+if (channel == null) return;
+
+await channel.ModifyAsync(x =>
+{
+ x.UserLimit = 5;
+});
+```
+
+---
+uid: Discord.EmoteProperties
+example: [*content]
+---
+
+The following example uses @Discord.IGuild.ModifyEmoteAsync* to
+apply changes specified in the properties,
+
+```cs
+await guild.ModifyEmoteAsync(x =>
+{
+ x.Name = "blobo";
+});
+```
+
+---
+uid: Discord.MessageProperties
+example: [*content]
+---
+
+The following example uses @Discord.IUserMessage.ModifyAsync* to
+apply changes specified in the properties,
+
+```cs
+var message = await channel.SendMessageAsync("boo");
+await Task.Delay(TimeSpan.FromSeconds(1));
+await message.ModifyAsync(x => x.Content = "boi");
+```
+
+---
+uid: Discord.GuildProperties
+example: [*content]
+---
+
+The following example uses @Discord.IGuild.ModifyAsync* to
+apply changes specified in the properties,
+
+```cs
+var guild = _client.GetGuild(id);
+if (guild == null) return;
+
+await guild.ModifyAsync(x =>
+{
+ x.Name = "VERY Fast Discord Running at Incredible Hihg Speed";
+});
+```
+
+---
+uid: Discord.RoleProperties
+example: [*content]
+---
+
+The following example uses @Discord.IRole.ModifyAsync* to
+apply changes specified in the properties,
+
+```cs
+var role = guild.GetRole(id);
+if (role == null) return;
+
+await role.ModifyAsync(x =>
+{
+ x.Name = "cool boi";
+ x.Color = Color.Gold;
+ x.Hoist = true;
+ x.Mentionable = true;
+});
+```
+
+---
+uid: Discord.GuildUserProperties
+example: [*content]
+---
+
+The following example uses @Discord.IGuildUser.ModifyAsync* to
+apply changes specified in the properties,
+
+```cs
+var user = guild.GetUser(id);
+if (user == null) return;
+
+await user.ModifyAsync(x =>
+{
+ x.Nickname = "I need healing";
+});
+```
+
+---
+uid: Discord.SelfUserProperties
+example: [*content]
+---
+
+The following example uses @Discord.ISelfUser.ModifyAsync* to
+apply changes specified in the properties,
+
+```cs
+await selfUser.ModifyAsync(x =>
+{
+ x.Username = "Mercy";
+});
+```
+
+---
+uid: Discord.WebhookProperties
+example: [*content]
+---
+
+The following example uses @Discord.IWebhook.ModifyAsync* to
+apply changes specified in the properties,
+
+```cs
+await webhook.ModifyAsync(x =>
+{
+ x.Name = "very fast fox";
+ x.ChannelId = newChannelId;
+});
+```
\ No newline at end of file
diff --git a/src/Discord.Net.Core/Entities/Channels/GuildChannelProperties.cs b/src/Discord.Net.Core/Entities/Channels/GuildChannelProperties.cs
index fdbd0447c..a0edfc796 100644
--- a/src/Discord.Net.Core/Entities/Channels/GuildChannelProperties.cs
+++ b/src/Discord.Net.Core/Entities/Channels/GuildChannelProperties.cs
@@ -3,14 +3,7 @@ namespace Discord
///
/// Properties that are used to modify an with the specified changes.
///
- ///
- ///
- /// await (Context.Channel as ITextChannel)?.ModifyAsync(x =>
- /// {
- /// x.Name = "do-not-enter";
- /// });
- ///
- ///
+ ///
public class GuildChannelProperties
{
///
diff --git a/src/Discord.Net.Core/Entities/Channels/TextChannelProperties.cs b/src/Discord.Net.Core/Entities/Channels/TextChannelProperties.cs
index b68c416b7..03b56b26c 100644
--- a/src/Discord.Net.Core/Entities/Channels/TextChannelProperties.cs
+++ b/src/Discord.Net.Core/Entities/Channels/TextChannelProperties.cs
@@ -1,8 +1,11 @@
+using System;
+
namespace Discord
{
///
/// Properties that are used to modify an with the specified changes.
///
+ ///
public class TextChannelProperties : GuildChannelProperties
{
///
diff --git a/src/Discord.Net.Core/Entities/Emotes/EmoteProperties.cs b/src/Discord.Net.Core/Entities/Emotes/EmoteProperties.cs
index 721345afe..de457a0dc 100644
--- a/src/Discord.Net.Core/Entities/Emotes/EmoteProperties.cs
+++ b/src/Discord.Net.Core/Entities/Emotes/EmoteProperties.cs
@@ -5,6 +5,7 @@ namespace Discord
///
/// Properties that are used to modify an with the specified changes.
///
+ ///
public class EmoteProperties
{
///
diff --git a/src/Discord.Net.Core/Entities/Guilds/GuildProperties.cs b/src/Discord.Net.Core/Entities/Guilds/GuildProperties.cs
index 3c136b579..7e23f3b1d 100644
--- a/src/Discord.Net.Core/Entities/Guilds/GuildProperties.cs
+++ b/src/Discord.Net.Core/Entities/Guilds/GuildProperties.cs
@@ -3,28 +3,19 @@ namespace Discord
///
/// Properties that are used to modify an with the specified changes.
///
- ///
- ///
- /// await Context.Guild.ModifyAsync(async x =>
- /// {
- /// x.Name = "aaaaaah";
- /// });
- ///
- ///
- ///
+ ///
public class GuildProperties
{
- public Optional Username { get; set; }
///
- /// Gets or sets the name of the Guild.
+ /// Gets or sets the name of the guild. Must be within 100 characters.
///
public Optional Name { get; set; }
///
- /// Gets or sets the region for the Guild's voice connections.
+ /// Gets or sets the region for the guild's voice connections.
///
public Optional Region { get; set; }
///
- /// Gets or sets the ID of the region for the Guild's voice connections.
+ /// Gets or sets the ID of the region for the guild's voice connections.
///
public Optional RegionId { get; set; }
///
diff --git a/src/Discord.Net.Core/Entities/Messages/MessageProperties.cs b/src/Discord.Net.Core/Entities/Messages/MessageProperties.cs
index c2892117a..2cc0eab8e 100644
--- a/src/Discord.Net.Core/Entities/Messages/MessageProperties.cs
+++ b/src/Discord.Net.Core/Entities/Messages/MessageProperties.cs
@@ -4,23 +4,9 @@ namespace Discord
/// Properties that are used to modify an with the specified changes.
///
///
- /// The content of a message can be cleared with if and only if an is present.
+ /// The content of a message can be cleared with if and only if an is present.
///
- ///
- ///
- /// var message = await ReplyAsync("abc");
- /// await message.ModifyAsync(x =>
- /// {
- /// x.Content = "";
- /// x.Embed = new EmbedBuilder()
- /// .WithColor(new Color(40, 40, 120))
- /// .WithAuthor(a => a.Name = "foxbot")
- /// .WithTitle("Embed!")
- /// .WithDescription("This is an embed.")
- /// .Build();
- /// });
- ///
- ///
+ ///
public class MessageProperties
{
///
diff --git a/src/Discord.Net.Core/Entities/Roles/RoleProperties.cs b/src/Discord.Net.Core/Entities/Roles/RoleProperties.cs
index 79372b86d..54fa27bfd 100644
--- a/src/Discord.Net.Core/Entities/Roles/RoleProperties.cs
+++ b/src/Discord.Net.Core/Entities/Roles/RoleProperties.cs
@@ -3,16 +3,7 @@ namespace Discord
///
/// Properties that are used to modify an with the specified changes.
///
- ///
- ///
- /// await role.ModifyAsync(x =>
- /// {
- /// x.Color = new Color(180, 15, 40);
- /// x.Hoist = true;
- /// });
- ///
- ///
- ///
+ ///
public class RoleProperties
{
///
diff --git a/src/Discord.Net.Core/Entities/Users/GuildUserProperties.cs b/src/Discord.Net.Core/Entities/Users/GuildUserProperties.cs
index beb2c392f..401b0ec7a 100644
--- a/src/Discord.Net.Core/Entities/Users/GuildUserProperties.cs
+++ b/src/Discord.Net.Core/Entities/Users/GuildUserProperties.cs
@@ -5,15 +5,7 @@ namespace Discord
///
/// Properties that are used to modify an with the following parameters.
///
- ///
- ///
- /// await guildUser.ModifyAsync(x =>
- /// {
- /// x.Nickname = $"festive {guildUser.Username}";
- /// });
- ///
- ///
- ///
+ ///
public class GuildUserProperties
{
///
diff --git a/src/Discord.Net.Core/Entities/Users/SelfUserProperties.cs b/src/Discord.Net.Core/Entities/Users/SelfUserProperties.cs
index d79da0265..e2ae12ba4 100644
--- a/src/Discord.Net.Core/Entities/Users/SelfUserProperties.cs
+++ b/src/Discord.Net.Core/Entities/Users/SelfUserProperties.cs
@@ -3,15 +3,7 @@ namespace Discord
///
/// Properties that are used to modify the with the specified changes.
///
- ///
- ///
- /// await Context.Client.CurrentUser.ModifyAsync(x =>
- /// {
- /// x.Avatar = new Image(File.OpenRead("avatar.jpg"));
- /// });
- ///
- ///
- ///
+ ///
public class SelfUserProperties
{
///
diff --git a/src/Discord.Net.Core/Entities/Webhooks/WebhookProperties.cs b/src/Discord.Net.Core/Entities/Webhooks/WebhookProperties.cs
index 387ee6106..00af9f9ef 100644
--- a/src/Discord.Net.Core/Entities/Webhooks/WebhookProperties.cs
+++ b/src/Discord.Net.Core/Entities/Webhooks/WebhookProperties.cs
@@ -3,16 +3,7 @@ namespace Discord
///
/// Properties used to modify an with the specified changes.
///
- ///
- ///
- /// await webhook.ModifyAsync(x =>
- /// {
- /// x.Name = "Bob";
- /// x.Avatar = new Image("avatar.jpg");
- /// });
- ///
- ///
- ///
+ ///
public class WebhookProperties
{
///