/*----------------------------------------------------------------------------*/
/* ios_forms.h                                                                */
/* copyright (c) innovaphone 2015                                             */
/*                                                                            */
/*----------------------------------------------------------------------------*/

#define forms_async ios_async
#define async_event ios_event

#if defined(__cplusplus)
class forms_object {
};
#endif /* defined(__cplusplus) */

#include "client/linux/async_forms/async_forms.h"
#if TARGET_OS_IPHONE
#include "../forms_cp/forms_cp.h"
#else
#define ENUM_FORMS_CP_ASYNC_HANDLER
#define ENUM_FORMS_CP_EVENT_HANDLER
#define DEFINE_FORMS_CP_ASYNC_HANDLER
#define DEFINE_FORMS_CP_EVENT_HANDLER
#endif

NAMESPACE_BEGIN

/*---------------------------------------------------------------------------*/

#define FORMS_TXT_REPAIR_LOST_PHONE_ACCOUNT     0
#define FORMS_TXT_SMARTPHONE_RESTART_NEEDED     1
#define FORMS_TXT_OVERLAYING_PERMISSION_NEEDED  2
#define FORMS_TXT_COUNT                         3

#define FORMS_AUTOSTART_WLAN                    0
#define FORMS_AUTOSTART_MOBILE_DATA_WLAN        1
#define FORMS_AUTOSTART_ALWAYS                  2
#define FORMS_AUTOSTART_NEVER                   3
#define FORMS_AUTOSTART_VALUES                  4

#define FORMS_DIALER_CLAIM_MANUAL               0
#define FORMS_DIALER_CLAIM_NONE                 1
#define FORMS_DIALER_CLAIM_INTERNAL_CALLS       2
#define FORMS_DIALER_CLAIM_ANY_CALLS            3
#define FORMS_DIALER_CLAIM_IN_WLAN              4
#define FORMS_DIALER_CLAIM_VALUES               5

#define FORMS_GSM_USE_NONE                      0
#define FORMS_GSM_USE_FALLBACK                  1
#define FORMS_GSM_USE_EXTERNAL_CALLS            2
#define FORMS_GSM_USE_ANY_CALLS                 3
#define FORMS_GSM_USE_OUTSIDE_WLAN              4
#define FORMS_GSM_USE_VALUES                    5

#define FORMS_GSM_CALL_METHOD_DIRECT            0
#define FORMS_GSM_CALL_METHOD_CALLTHROUGH       1
#define FORMS_GSM_CALL_METHOD_CALLBACK          2
#define FORMS_GSM_CALL_METHOD_VALUES            3

#define FORMS_DISPLAY_ON_IF_CHARGING_NO         0
#define FORMS_DISPLAY_ON_IF_CHARGING_DIMMED     1
#define FORMS_DISPLAY_ON_IF_CHARGING_BRIGHT     2

#define FORMS_LOCAL_NOTIFICATION_TYPE_DEFAULT         0
#define FORMS_LOCAL_NOTIFICATION_TYPE_PHONE_CALL      1
#define FORMS_LOCAL_NOTIFICATION_TYPE_HOLD_PHONE_CALL 2
#define FORMS_LOCAL_NOTIFICATION_TYPE_END_PHONE_CALL  3
#define FORMS_LOCAL_NOTIFICATION_TYPE_CHAT_MESSAGE    4
#define FORMS_LOCAL_NOTIFICATION_TYPE_DECISION        5
#define FORMS_LOCAL_NOTIFICATION_TYPE_REPLY           6
#define FORMS_LOCAL_NOTIFICATION_TYPE_APP_NOTIFY      7

#define FORMS_CONTENT_SIZE_CATEGORY_XS          0
#define FORMS_CONTENT_SIZE_CATEGORY_S           1
#define FORMS_CONTENT_SIZE_CATEGORY_M           2
#define FORMS_CONTENT_SIZE_CATEGORY_L           3
#define FORMS_CONTENT_SIZE_CATEGORY_XL          4
#define FORMS_CONTENT_SIZE_CATEGORY_XXL         5
#define FORMS_CONTENT_SIZE_CATEGORY_XXXL        6
#define FORMS_CONTENT_SIZE_CATEGORY_VALUES      7

#define FORMS_STATUS_BAR_APPEARANCE_HIDDEN      0x01000000
#define FORMS_STATUS_BAR_APPEARANCE_BLACK_TEXT  0x02000000

#define FORMS_WEBCAM_CODER_IYUV                 0
#define FORMS_WEBCAM_CODER_VP8                  1
#define FORMS_WEBCAM_CODER_H264                 2

#define FORMS_DIAL_NUMBER_VIDEO_MODE_DEFAULT    0
#define FORMS_DIAL_NUMBER_VIDEO_MODE_ON         1
#define FORMS_DIAL_NUMBER_VIDEO_MODE_OFF        2

#define FORMS_CX_CALL_UPDATE_HAS_VIDEO          0x00000001
#define FORMS_CX_CALL_UPDATE_SUPPORTS_DTMF      0x00000002
#define FORMS_CX_CALL_UPDATE_SUPPORTS_HOLDING   0x00000004
#define FORMS_CX_CALL_UPDATE_SUPPORTS_GROUPING  0x00000008
#define FORMS_CX_CALL_UPDATE_SUPPORTS_UNGROUPING 0x00000010

#define FORMS_CX_CALL_ENDED_REASON_FAILED       1
#define FORMS_CX_CALL_ENDED_REASON_REMOTE_ENDED 2
#define FORMS_CX_CALL_ENDED_REASON_UNANSWERED   3
#define FORMS_CX_CALL_ENDED_REASON_ANSWERED_ELSEWHERE 4
#define FORMS_CX_CALL_ENDED_REASON_DECLINED_ELSEWHERE 5

#define FORMS_CX_CALL_ERROR_SUCCESS             0
#define FORMS_CX_CALL_ERROR_UNSPECIFIED         1
#define FORMS_CX_CALL_ERROR_UNENTITLED          2
#define FORMS_CX_CALL_ERROR_DUPLICATE_UUID      3
#define FORMS_CX_CALL_ERROR_INCOMING_DO_NOT_DISTURB 4
#define FORMS_CX_CALL_ERROR_INCOMING_BLOCKED    5
#define FORMS_CX_CALL_ERROR_NO_PROVIDER         6
#define FORMS_CX_CALL_ERROR_UNKNOWN_UUID        7
#define FORMS_CX_CALL_ERROR_REQUEST_INVALID     8
#define FORMS_CX_CALL_ERROR_TOO_MANY_GROUPS     9

#define FORMS_VIDEO_TRANSCODER_KEY_FRAME        0x00000001
#define FORMS_VIDEO_TRANSCODER_APP_SHARING      0x00000002
#define FORMS_VIDEO_TRANSCODER_ACTIVE_MAP       0x00000004
#define FORMS_VIDEO_TRANSCODER_MIN_QUANT_SHIFT  4
#define FORMS_VIDEO_TRANSCODER_MIN_QUANT_MASK   0x000003f0
#define FORMS_VIDEO_TRANSCODER_MAX_QUANT_SHIFT  10
#define FORMS_VIDEO_TRANSCODER_MAX_QUANT_MASK   0x0000fc00
#define FORMS_VIDEO_TRANSCODER_TARGET_KBIT_SHIFT 16
#define FORMS_VIDEO_TRANSCODER_TARGET_KBIT_MASK 0xffff0000

#define ENUM_IOS_EVENT_HANDLER\
    ENUM_FORMS_EVENT_HANDLER\
    ENUM_FORMS_CP_EVENT_HANDLER

enum android_event_handler_enum
{
ENUM_IOS_EVENT_HANDLER
    IOS_EVENT_HANDLER_COUNT
};

/*---------------------------------------------------------------------------*/

NAMESPACE_END
