103 lines
7.6 KiB
MQL5
//+------------------------------------------------------------------+
| |||
//| Def.mqh |
| |||
//| Copyright 2026, Niquel Mendoza. |
| |||
//| https://www.mql5.com |
| |||
//+------------------------------------------------------------------+
| |||
#property copyright "Copyright 2026, Niquel Mendoza."
| |||
#property link "https://www.mql5.com"
| |||
#property strict
| |||
| |||
#ifndef TELEGRAMBYLEO_SRC_EVENTS_DEF_MQH
| |||
#define TELEGRAMBYLEO_SRC_EVENTS_DEF_MQH
| |||
| |||
//+------------------------------------------------------------------+
| |||
//| |
| |||
//+------------------------------------------------------------------+
| |||
#include "..\\TlgHandler.mqh"
| |||
| |||
//+------------------------------------------------------------------+
| |||
//| |
| |||
//+------------------------------------------------------------------+
| |||
namespace TSN
| |||
{
| |||
//+------------------------------------------------------------------+
| |||
//| |
| |||
//+------------------------------------------------------------------+
| |||
//--- Funcion make
| |||
#define TELEGRAMBYELO_REG_FLAG_MAKE(EVENT) (1u<<((EVENT)-1))
| |||
| |||
//--- Flags especificas
| |||
#define TELEGRAMBYLEO_REG_FLAG_ON_MESSAGE (TELEGRAMBYELO_REG_FLAG_MAKE(TELEGRAMBYLEO_GETUPT_K_MESSAGE))
| |||
#define TELEGRAMBYLEO_REG_FLAG_ON_EDITED_MESSAGE (TELEGRAMBYELO_REG_FLAG_MAKE(TELEGRAMBYLEO_GETUPT_K_EDITED_MESSAGE))
| |||
#define TELEGRAMBYLEO_REG_FLAG_ON_CHANNEL_POST (TELEGRAMBYELO_REG_FLAG_MAKE(TELEGRAMBYLEO_GETUPT_K_CHANNEL_POST))
| |||
#define TELEGRAMBYLEO_REG_FLAG_ON_EDITED_CHANNEL_POST (TELEGRAMBYELO_REG_FLAG_MAKE(TELEGRAMBYLEO_GETUPT_K_EDITED_CHANNEL_POST))
| |||
#define TELEGRAMBYLEO_REG_FLAG_ON_BUSINESS_CONNECTION (TELEGRAMBYELO_REG_FLAG_MAKE(TELEGRAMBYLEO_GETUPT_K_BUSINESS_CONNECTION))
| |||
#define TELEGRAMBYLEO_REG_FLAG_ON_BUSINESS_MESSAGE (TELEGRAMBYELO_REG_FLAG_MAKE(TELEGRAMBYLEO_GETUPT_K_BUSINESS_MESSAGE))
| |||
#define TELEGRAMBYLEO_REG_FLAG_ON_EDITED_BUSINESS_MESSAGE (TELEGRAMBYELO_REG_FLAG_MAKE(TELEGRAMBYLEO_GETUPT_K_EDITED_BUSINESS_MESSAGE))
| |||
#define TELEGRAMBYLEO_REG_FLAG_ON_DELETED_BUSINESS_MESSAGES (TELEGRAMBYELO_REG_FLAG_MAKE(TELEGRAMBYLEO_GETUPT_K_DELETED_BUSINESS_MESSAGES))
| |||
#define TELEGRAMBYLEO_REG_FLAG_ON_GUEST_MESSAGE (TELEGRAMBYELO_REG_FLAG_MAKE(TELEGRAMBYLEO_GETUPT_K_GUEST_MESSAGE))
| |||
#define TELEGRAMBYLEO_REG_FLAG_ON_MESSAGE_REACTION (TELEGRAMBYELO_REG_FLAG_MAKE(TELEGRAMBYLEO_GETUPT_K_MESSAGE_REACTION))
| |||
#define TELEGRAMBYLEO_REG_FLAG_ON_MESSAGE_REACTION_COUNT (TELEGRAMBYELO_REG_FLAG_MAKE(TELEGRAMBYLEO_GETUPT_K_MESSAGE_REACTION_COUNT))
| |||
#define TELEGRAMBYLEO_REG_FLAG_ON_INLINE_QUERY (TELEGRAMBYELO_REG_FLAG_MAKE(TELEGRAMBYLEO_GETUPT_K_INLINE_QUERY))
| |||
#define TELEGRAMBYLEO_REG_FLAG_ON_CHOSEN_INLINE_RESULT (TELEGRAMBYELO_REG_FLAG_MAKE(TELEGRAMBYLEO_GETUPT_K_CHOSEN_INLINE_RESULT))
| |||
#define TELEGRAMBYLEO_REG_FLAG_ON_CALLBACK_QUERY (TELEGRAMBYELO_REG_FLAG_MAKE(TELEGRAMBYLEO_GETUPT_K_CALLBACK_QUERY))
| |||
#define TELEGRAMBYLEO_REG_FLAG_ON_SHIPPING_QUERY (TELEGRAMBYELO_REG_FLAG_MAKE(TELEGRAMBYLEO_GETUPT_K_SHIPPING_QUERY))
| |||
#define TELEGRAMBYLEO_REG_FLAG_ON_PRE_CHECKOUT_QUERY (TELEGRAMBYELO_REG_FLAG_MAKE(TELEGRAMBYLEO_GETUPT_K_PRE_CHECKOUT_QUERY))
| |||
#define TELEGRAMBYLEO_REG_FLAG_ON_PURCHASED_PAID_MEDIA (TELEGRAMBYELO_REG_FLAG_MAKE(TELEGRAMBYLEO_GETUPT_K_PURCHASED_PAID_MEDIA))
| |||
#define TELEGRAMBYLEO_REG_FLAG_ON_POLL (TELEGRAMBYELO_REG_FLAG_MAKE(TELEGRAMBYLEO_GETUPT_K_POLL))
| |||
#define TELEGRAMBYLEO_REG_FLAG_ON_POLL_ANSWER (TELEGRAMBYELO_REG_FLAG_MAKE(TELEGRAMBYLEO_GETUPT_K_POLL_ANSWER))
| |||
#define TELEGRAMBYLEO_REG_FLAG_ON_MY_CHAT_MEMBER (TELEGRAMBYELO_REG_FLAG_MAKE(TELEGRAMBYLEO_GETUPT_K_MY_CHAT_MEMBER))
| |||
#define TELEGRAMBYLEO_REG_FLAG_ON_CHAT_MEMBER (TELEGRAMBYELO_REG_FLAG_MAKE(TELEGRAMBYLEO_GETUPT_K_CHAT_MEMBER))
| |||
#define TELEGRAMBYLEO_REG_FLAG_ON_CHAT_JOIN_REQUEST (TELEGRAMBYELO_REG_FLAG_MAKE(TELEGRAMBYLEO_GETUPT_K_CHAT_JOIN_REQUEST))
| |||
#define TELEGRAMBYLEO_REG_FLAG_ON_CHAT_BOOST (TELEGRAMBYELO_REG_FLAG_MAKE(TELEGRAMBYLEO_GETUPT_K_CHAT_BOOST))
| |||
#define TELEGRAMBYLEO_REG_FLAG_ON_REMOVED_CHAT_BOOST (TELEGRAMBYELO_REG_FLAG_MAKE(TELEGRAMBYLEO_GETUPT_K_REMOVED_CHAT_BOOST))
| |||
#define TELEGRAMBYLEO_REG_FLAG_ON_MANAGED_BOT (TELEGRAMBYELO_REG_FLAG_MAKE(TELEGRAMBYLEO_GETUPT_K_MANAGED_BOT))
| |||
#define TELEGRAMBYLEO_REG_FLAG_ON_SUBSCRIPTION (TELEGRAMBYELO_REG_FLAG_MAKE(TELEGRAMBYLEO_GETUPT_K_SUBSCRIPTION))
| |||
#define TELEGRAMBYLEO_REG_FLAG_ON_STOPPED_MESSAGE_GENERATION (TELEGRAMBYELO_REG_FLAG_MAKE(TELEGRAMBYLEO_GETUPT_K_STOPPED_MESSAGE_GENERATION))
| |||
| |||
//--- Todos
| |||
#define TELEGRAMBYLEO_REG_FLAG_ALL (TELEGRAMBYLEO_REG_FLAG_ON_MESSAGE | TELEGRAMBYLEO_REG_FLAG_ON_EDITED_MESSAGE | \
| |||
TELEGRAMBYLEO_REG_FLAG_ON_CHANNEL_POST | TELEGRAMBYLEO_REG_FLAG_ON_EDITED_CHANNEL_POST | \
| |||
TELEGRAMBYLEO_REG_FLAG_ON_BUSINESS_CONNECTION | TELEGRAMBYLEO_REG_FLAG_ON_BUSINESS_MESSAGE | \
| |||
TELEGRAMBYLEO_REG_FLAG_ON_EDITED_BUSINESS_MESSAGE | TELEGRAMBYLEO_REG_FLAG_ON_DELETED_BUSINESS_MESSAGES | \
| |||
TELEGRAMBYLEO_REG_FLAG_ON_GUEST_MESSAGE | TELEGRAMBYLEO_REG_FLAG_ON_MESSAGE_REACTION | \
| |||
TELEGRAMBYLEO_REG_FLAG_ON_MESSAGE_REACTION_COUNT | TELEGRAMBYLEO_REG_FLAG_ON_INLINE_QUERY | \
| |||
TELEGRAMBYLEO_REG_FLAG_ON_CHOSEN_INLINE_RESULT | TELEGRAMBYLEO_REG_FLAG_ON_CALLBACK_QUERY | \
| |||
TELEGRAMBYLEO_REG_FLAG_ON_SHIPPING_QUERY | TELEGRAMBYLEO_REG_FLAG_ON_PRE_CHECKOUT_QUERY | \
| |||
TELEGRAMBYLEO_REG_FLAG_ON_PURCHASED_PAID_MEDIA | TELEGRAMBYLEO_REG_FLAG_ON_POLL | \
| |||
TELEGRAMBYLEO_REG_FLAG_ON_POLL_ANSWER | TELEGRAMBYLEO_REG_FLAG_ON_MY_CHAT_MEMBER | \
| |||
TELEGRAMBYLEO_REG_FLAG_ON_CHAT_MEMBER | TELEGRAMBYLEO_REG_FLAG_ON_CHAT_JOIN_REQUEST | \
| |||
TELEGRAMBYLEO_REG_FLAG_ON_CHAT_BOOST | TELEGRAMBYLEO_REG_FLAG_ON_REMOVED_CHAT_BOOST | \
| |||
TELEGRAMBYLEO_REG_FLAG_ON_MANAGED_BOT | TELEGRAMBYLEO_REG_FLAG_ON_SUBSCRIPTION | \
| |||
TELEGRAMBYLEO_REG_FLAG_ON_STOPPED_MESSAGE_GENERATION)
| |||
| |||
//+------------------------------------------------------------------+
| |||
//| |
| |||
//+------------------------------------------------------------------+
| |||
#define TELEGRAMBYLEO_EVENTS_NOTIFY(arr, arr_size, method, node) for(int __i = 0; __i < arr_size; __i++) { arr[__i].method(node); }
| |||
| |||
| |||
//+------------------------------------------------------------------+
| |||
//| |
| |||
//+------------------------------------------------------------------+
| |||
#ifndef TELEGRAMBYLEO_EVENTS_DEFAULT_RADD
| |||
#define TELEGRAMBYLEO_EVENTS_DEFAULT_RADD (32)
| |||
#endif // TELEGRAMBYLEO_EVENTS_DEFAULT_RADD
| |||
| |||
//---
| |||
#ifndef TELEGRAMBYLEO_EVENTS_ADD_NEWEL
| |||
#define TELEGRAMBYLEO_EVENTS_ADD_NEWEL(ARR, SIZE, PTR) \
| |||
if(SIZE >= ArraySize(ARR)) \
| |||
{ \
| |||
const int ns = ArraySize(ARR) + TELEGRAMBYLEO_EVENTS_DEFAULT_RADD; \
| |||
ArrayResize(ARR, ns, ns); \
| |||
} \
| |||
ARR[SIZE++] = PTR; \
| |||
| |||
//---
| |||
#endif // TELEGRAMBYLEO_EVENTS_ADD_NEWEL
| |||
| |||
//---
| |||
}
| |||
| |||
#endif // TELEGRAMBYLEO_SRC_EVENTS_DEF_MQH
|