Пример #1
0
 /// <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;
             }
         }
     }
 }
Пример #3
0
        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));
        }
Пример #4
0
        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));
        }
Пример #5
0
        /// <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));
        }
Пример #6
0
        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;
 }