1e221c09eSPhilippe Houdoin/* 2e221c09eSPhilippe Houdoin * Definitions for the types that are built into the compiler. 3e221c09eSPhilippe Houdoin */ 4e221c09eSPhilippe Houdoin 5e221c09eSPhilippe Houdoin/* BPoint object. */ 6e221c09eSPhilippe Houdointype #'BPNT' point 7e221c09eSPhilippe Houdoin{ 8e221c09eSPhilippe Houdoin float x, 9e221c09eSPhilippe Houdoin float y 10e221c09eSPhilippe Houdoin}; 11e221c09eSPhilippe Houdoin 12e221c09eSPhilippe Houdoin/* BRect object. */ 13e221c09eSPhilippe Houdointype #'RECT' rect 14e221c09eSPhilippe Houdoin{ 15e221c09eSPhilippe Houdoin float left, 16e221c09eSPhilippe Houdoin float top, 17e221c09eSPhilippe Houdoin float right, 18e221c09eSPhilippe Houdoin float bottom 19e221c09eSPhilippe Houdoin}; 20e221c09eSPhilippe Houdoin 21e221c09eSPhilippe Houdoin/* rgb_color object. */ 22e221c09eSPhilippe Houdointype #'RGBC' rgb_color 23e221c09eSPhilippe Houdoin{ 24e221c09eSPhilippe Houdoin uint8 red, 25e221c09eSPhilippe Houdoin uint8 green, 26e221c09eSPhilippe Houdoin uint8 blue, 27e221c09eSPhilippe Houdoin uint8 alpha = 0xFF 28e221c09eSPhilippe Houdoin}; 29e221c09eSPhilippe Houdoin 30e221c09eSPhilippe Houdoin/* Application signature. */ 31e221c09eSPhilippe Houdointype(1, "BEOS:APP_SIG") #'MIMS' app_signature 32e221c09eSPhilippe Houdoin{ 33e221c09eSPhilippe Houdoin string signature // max 240 bytes (including null) 34e221c09eSPhilippe Houdoin}; 35e221c09eSPhilippe Houdoin 36*cb9c3e9cSJonas Sundström/* Application name catalog entry. */ 37*cb9c3e9cSJonas Sundströmtype(1, "SYS:NAME") #B_STRING_TYPE app_name_catalog_entry 38*cb9c3e9cSJonas Sundström{ 39*cb9c3e9cSJonas Sundström string catalog_entry 40*cb9c3e9cSJonas Sundström}; 41*cb9c3e9cSJonas Sundström 42e221c09eSPhilippe Houdoin/* Application launch flags */ 43e221c09eSPhilippe Houdointype(1, "BEOS:APP_FLAGS") #'APPF' app_flags 44e221c09eSPhilippe Houdoin{ 45e221c09eSPhilippe Houdoin // B_SINGLE_LAUNCH (0x0) 46e221c09eSPhilippe Houdoin // B_MULTIPLE_LAUNCH (0x1) 47e221c09eSPhilippe Houdoin // B_EXCLUSIVE_LAUNCH (0x2) 48e221c09eSPhilippe Houdoin // B_BACKGROUND_APP (0x4) 49e221c09eSPhilippe Houdoin // B_ARGV_ONLY (0x8) 50e221c09eSPhilippe Houdoin uint32 flags 51e221c09eSPhilippe Houdoin}; 52e221c09eSPhilippe Houdoin 53e221c09eSPhilippe Houdoin/* 54e221c09eSPhilippe Houdoin * Application version info. Should always be 340 bytes. The system 55e221c09eSPhilippe Houdoin * will automatically append 340 additional bytes with "system info". 56e221c09eSPhilippe Houdoin */ 57e221c09eSPhilippe Houdointype(1, "BEOS:APP_VERSION") #'APPV' app_version 58e221c09eSPhilippe Houdoin{ 59e221c09eSPhilippe Houdoin uint32 major, 60e221c09eSPhilippe Houdoin uint32 middle, 61e221c09eSPhilippe Houdoin uint32 minor, 62e221c09eSPhilippe Houdoin 63e221c09eSPhilippe Houdoin // B_APPV_DEVELOPMENT (0) 64e221c09eSPhilippe Houdoin // B_APPV_ALPHA (1) 65e221c09eSPhilippe Houdoin // B_APPV_BETA (2) 66e221c09eSPhilippe Houdoin // B_APPV_GAMMA (3) 67e221c09eSPhilippe Houdoin // B_APPV_GOLDEN_MASTER (4) 68e221c09eSPhilippe Houdoin // B_APPV_FINAL (5) 69e221c09eSPhilippe Houdoin uint32 variety, 70e221c09eSPhilippe Houdoin 71e221c09eSPhilippe Houdoin uint32 internal, 72e221c09eSPhilippe Houdoin 73e221c09eSPhilippe Houdoin string short_info[64], 74e221c09eSPhilippe Houdoin string long_info[256] 75e221c09eSPhilippe Houdoin}; 76e221c09eSPhilippe Houdoin 77e221c09eSPhilippe Houdoin/* Large (32x32, 8-bit) application icon. */ 78e221c09eSPhilippe Houdointype(101, "BEOS:L:STD_ICON") #'ICON' large_icon 79e221c09eSPhilippe Houdoin{ 80e221c09eSPhilippe Houdoin array icon[1024] 81e221c09eSPhilippe Houdoin}; 82e221c09eSPhilippe Houdoin 83e221c09eSPhilippe Houdoin/* Small (16x16, 8-bit) application icon. */ 84e221c09eSPhilippe Houdointype(101, "BEOS:M:STD_ICON") #'MICN' mini_icon 85e221c09eSPhilippe Houdoin{ 86e221c09eSPhilippe Houdoin array icon[256] 87e221c09eSPhilippe Houdoin}; 88e221c09eSPhilippe Houdoin 89e221c09eSPhilippe Houdoin/* Supported file types. */ 90e221c09eSPhilippe Houdointype(1, "BEOS:FILE_TYPES") #'MSGG' file_types 91e221c09eSPhilippe Houdoin{ 92e221c09eSPhilippe Houdoin // contains one or more fields called "types", each of which 93e221c09eSPhilippe Houdoin // has a MIME type value, for example: "types" = "text/plain" 94e221c09eSPhilippe Houdoin message types 95e221c09eSPhilippe Houdoin}; 96