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