/// <summary> /// /// </summary> /// <param name="type"></param> /// <param name="text"></param> /// <param name="actionValue"></param> /// <remarks>Do not use virtual members from constructor!</remarks> protected virtual InlineKeyboardButton InitButton(InlineKeyboardType type, string text, string actionValue) { return(new TypedInlineKeyboardButton(type, actionValue) { Text = text }); }
public InlineKeyboardMarkup this[InlineKeyboardType type] { get { foreach (var keyboard in defaultButtons) { if (keyboard.type == type) { return(keyboard.keyboard); } } return(null); } private set { for (int i = 0; i < defaultButtons.Length; i++) { if (defaultButtons[i].type == type) { defaultButtons[i].keyboard = value; break; } } } }
protected virtual InlineKeyboardButton InitButton(InlineKeyboardType type, string text, string command, bool forceCallbackData = true) { if (!forceCallbackData) { return(base.InitButton(type, text, command)); } var callbackData = new GeneralCallbackData(GeneralCallbackData) { Command = command }; return(base.InitButton(type, text, callbackData)); }
protected virtual InlineKeyboardButton InitButton(InlineKeyboardType type, string text, string command, SelectedOption option = default(SelectedOption), string labelId = "", bool forceCallbackData = true) { if (!forceCallbackData) { return(base.InitButton(type, text, command)); } var callbackData = new SettingsCallbackData(GeneralCallbackData) { Command = command, Option = option, LabelId = labelId }; return(base.InitButton(type, text, callbackData)); }
/// <summary> /// /// </summary> /// <param name="type"></param> /// <param name="text"></param> /// <param name="command"></param> /// <param name="draftId"></param> /// <param name="row"></param> /// <param name="column"></param> /// <param name="forceCallbackData"></param> protected virtual InlineKeyboardButton InitButton(InlineKeyboardType type, string text, string command, string draftId = "", NmStoreUnit row = default(NmStoreUnit), int column = -1, bool forceCallbackData = true) { if (!forceCallbackData) { return(base.InitButton(type, text, command)); } var callbackData = new SendCallbackData(GeneralCallbackData) { Command = command, MessageId = Model?.MessageId.ToString(), DraftId = draftId, Row = row, Column = column }; return(base.InitButton(type, text, callbackData)); }
public TypedInlineKeyboardButton(InlineKeyboardType type, string value) { Type = type; switch (type) { case InlineKeyboardType.Url: base.Url = value; break; case InlineKeyboardType.CallbackData: base.CallbackData = value; break; case InlineKeyboardType.SwitchInlineQuery: base.SwitchInlineQuery = value; break; case InlineKeyboardType.SwitchInlineQueryCurrentChat: base.SwitchInlineQueryCurrentChat = value; break; } }
public InlineKeyboard(InlineKeyboardMarkup keyboard, InlineKeyboardType type) { this.keyboard = keyboard; this.type = type; }