#ifndef eidviewerTypes_H
#define eidviewerTypes_H

#include <openssl/ssl.h>

#include <wx/string.h>
#include <wx/image.h>
#include <wx/colour.h>

#ifndef BYTE
	typedef unsigned char BYTE;
#endif

enum ID_CONTROLS
{
    IDD_PAGE_IDENTITY = wxID_HIGHEST,
    IDD_PAGE_CERTIFICATES,
    IDD_PAGE_CARDDATA,
    IDD_PAGE_OPTIONS,
    IDC_STATIC_IDENTITY_HEADER1,
    IDC_STATIC_IDENTITY_HEADER5,
    IDC_STATIC_IDENTITY_HEADER2,
    IDC_STATIC_IDENTITY_HEADER6,
    IDC_STATIC_IDENTITY_HEADER3,
    IDC_STATIC_IDENTITY_HEADER7,
    IDC_STATIC_IDENTITY_HEADER4,
    IDC_STATIC_IDENTITY_HEADER8,
    ID_LINE,
    IDC_BUTTON_IDENTITY_PRINT,
    IDC_BUTTON_BITMAP_ARROW,
    IDC_BUTTON_CHIP,
    IDC_STATIC_IDENTITY_NAME,
    IDC_STATIC_IDENTITY_NAME_VAL,
    IDC_STATIC_IDENTITY_GIVENNAMES,
    IDC_STATIC_IDENTITY_GIVENNAMES_VAL1,
    IDC_STATIC_IDENTITY_GIVENNAMES_VAL3,
    IDC_STATIC_IDENTITY_BIRTHPLACE,
    IDC_STATIC_IDENTITY_BIRTHDATE,
    IDC_STATIC_IDENTITY_SEX,
    IDC_STATIC_IDENTITY_NATIONALITY,
    IDC_STATIC_IDENTITY_BIRTHPLACE_VAL,
    IDC_STATIC_IDENTITY_BIRTHDATE_VAL,
    IDC_STATIC_IDENTITY_SEX_VAL,
    IDC_STATIC_IDENTITY_NATIONALITY_VAL,
    IDC_STATIC_IDENTITY_TITLE,
    IDC_STATIC_IDENTITY_NATIONALNR,
    IDC_STATIC_IDENTITY_TITLE_VAL,
    IDC_STATIC_IDENTITY_NATIONALNR_VAL,
    IDC_STATIC_CARDINFO_CHIPNR,
    IDC_STATIC_CARDINFO_CHIPNR_VAL,
    IDC_STATIC_CARDINFO_CARDNR,
    IDC_STATIC_CARDINFO_CARDNR_VAL,
    IDC_STATIC_CARDINFO_VALIDFROM,
    IDC_STATIC_CARDINFO_VALIDUNTIL,
    IDC_STATIC_CARDINFO_VALIDFROM_VAL,
    IDC_STATIC_CARDINFO_VALIDUNTIL_VAL,
    IDC_STATIC_CARDINFO_MUNICIPALITY,
    IDC_STATIC_CARDINFO_MUNICIPALITY_VAL,
    IDC_STATIC_ADDRESS_STREET,
    IDC_STATIC_ADDRESS_STREET_VAL,
    IDC_STATIC_ADDRESS_ZIP,
    IDC_STATIC_ADDRESS_MUNICIPALITY,
    IDC_STATIC_ADDRESS_COUNTRY,
    IDC_STATIC_ADDRESS_ZIP_VAL,
    IDC_STATIC_ADDRESS_MUNICIPALITY_VAL,
    IDC_STATIC_ADDRESS_COUNTRY_VAL,
    IDC_CHECK_SPECIALSTATUS_WHITE_VAL,
    IDC_CHECK_SPECIALSTATUS_YELLOW_VAL,
    IDC_CHECK_SPECIALSTATUS_MINORITY_VAL,
    IDC_STATIC_SPECIALSTATUS_WHITE,
    IDC_STATIC_SPECIALSTATUS_YELLOW,
    IDC_STATIC_SPECIALSTATUS_MINORITY,
    IDC_STATIC_BITMAP_BELGIUM,
    IDC_STATIC_BITMAP_LOGO,
    IDC_STATIC_PICTURE_CARD,
    IDC_STATIC_STATUS_PICTURE,
    IDC_STATIC_STATUS_IDENTITY,
    IDC_STATIC_STATUS_ADDRESS,
    IDC_STATIC_ADDRESS_GROUP,
    IDC_STATIC_CARDINFO_GROUP,
    IDC_STATIC_IDENTITY_GROUP,
    IDC_STATIC_SPECIAL_GROUP,
    IDC_STATIC_TREE_CERTIFICATES_LABEL,
    IDC_TREE_CERTIFICATES,
    IDC_STATIC_CERTIFICATES_OWNER,
    IDC_STATIC_CERTIFICATES_OWNER_VAL,
    IDC_STATIC_CERTIFICATES_ISSUER,
    IDC_STATIC_CERTIFICATES_ISSUER_VAL,
    IDC_STATIC_CERTIFICATES_KEYLENGTH,
    IDC_STATIC_CERTIFICATES_KEYLENGTH_VAL,
    IDC_STATIC_CERTIFICATES_VALIDFROM,
    IDC_STATIC_CERTIFICATES_VALIDUNTIL,
    IDC_STATIC_CERTIFICATES_VALIDFROM_VAL,
    IDC_STATIC_CERTIFICATES_VALIDUNTIL_VAL,
    IDC_STATIC_CERTIFICATES_STATUS,
    IDC_STATIC_CERTIFICATES_STATUS_VAL,
    IDC_BUTTON_REGISTER,
    IDC_BUTTONCERTIFICATES_DETAILS,
    IDC_LIST_CARDDATA_VERSIONINFO,
    IDC_STATIC_CARDDATA_PINTREE_LABEL,
    IDC_TREE_CARDDATA_PIN,
    IDC_STATIC_CARDDATA_PINNAME_LABEL,
    IDC_STATIC_CARDDATA_PINID_LABEL,
    IDC_STATIC_CARDDATA_PINNAME_VAL,
    IDC_STATIC_CARDDATA_PINID_VAL,
    IDC_STATIC_CARDDATA_PINSTATUS_LABEL,
    IDC_STATIC_CARDDATA_PINSTATUS_VAL,
    IDC_BUTTON_CARDDATA_CHANGEPIN,
    IDC_STATIC_CARDDATA_VERSIONINFO_GROUP,
    IDC_STATIC_CARDDATA_PIN_GROUP,
    IDC_STATIC_OPTIONS_OCSP,
    IDC_COMBO_OPTIONS_OCSP_VAL,
    IDC_STATIC_OPTIONS_CRL,
    IDC_COMBO_OPTIONS_CRL_VAL,
    IDC_COMBO_OPTIONS_READER_VAL,
    IDC_STATIC_OPTIONS_VALIDATION_GROUP,
    IDC_STATIC_OPTIONS_READER_GROUP,
    IDC_RADIOBOX_OPTIONS_LANGUAGE,
    IDC_BUTTON_IDENTITY_OPEN,
    IDC_BUTTON_IDENTITY_SAVE,
    IDC_STATIC_VERSION_PRODUCT,
    IDC_LISTCTRL_VERSION_MODULES,
    IDD_PAGE_VERSIONINFO,
    IDC_BITMAP_VERSION_LOGO,
    IDC_STATIC_CERTIFICATES_REGISTER,
    IDC_STATIC_INFO_DEVELOPEDBY,
    IDC_BITMAP_VERSION_ZETES,
    IDC_BITMAP_VERSION_CSC,
    IDC_BUTTON_IDENTITY_EXIT
};

void ASN1_TIME_Print(ASN1_TIME *tm, wxString & strTime);
void ASN1_GENERALIZEDTIME_Print(ASN1_GENERALIZEDTIME *tm, wxString & strTime);
void ASN1_UTCTIME_Print(ASN1_UTCTIME *tm, wxString & strTime);

wxBitmap eidBitmapsFunc( size_t index );

#endif // eidviewerTypes_H
