1 #ifndef CLASSES_REQUESTER_H 2 #define CLASSES_REQUESTER_H 3 4 /* 5 requester.class definitions (V45) 6 7 Copyright © 2002 The MorphOS Development Team, All Rights Reserved. 8 */ 9 10 #ifndef REACTION_REACTION_H 11 # include <reaction/reaction.h> 12 #endif 13 14 #pragma pack(2) 15 16 17 /* Attributes defined by requester.gadget */ 18 19 #define REQ_Dummy (REACTION_Dummy + 0x45000) 20 #define REQS_Dummy (REQ_Dummy + 0x100) 21 #define REQI_Dummy (REQ_Dummy + 0x200) 22 #define REQP_Dummy (REQ_Dummy + 0x300) 23 24 #define REQ_Type (REQ_Dummy + 1) 25 #define REQ_TitleText (REQ_Dummy + 2) 26 #define REQ_BodyText (REQ_Dummy + 3) 27 #define REQ_GadgetText (REQ_Dummy + 4) 28 #define REQ_ReturnCode (REQ_Dummy + 5) 29 #define REQ_TabSize (REQ_Dummy + 6) 30 31 32 /* Integer-request type attributes */ 33 34 #define REQI_Minimum (REQI_Dummy + 1) 35 #define REQI_Maximum (REQI_Dummy + 2) 36 #define REQI_Invisible (REQI_Dummy + 3) 37 #define REQI_Number (REQI_Dummy + 4) 38 #define REQI_Arrows (REQI_Dummy + 5) 39 #define REQI_MaxChars (REQI_Dummy + 6) 40 41 42 /* String-request type attributes */ 43 44 #define REQS_AllowEmpty (REQS_Dummy + 1) 45 #define REQS_Invisible (REQI_Invisible) 46 #define REQS_Buffer (REQS_Dummy + 2) 47 #define REQS_ShowDefault (REQS_Dummy + 3) 48 #define REQS_MaxChars (REQS_Dummy + 4) 49 #define REQS_ChooserArray (REQS_Dummy + 5) 50 #define REQS_ChooserActive (REQS_Dummy + 6) 51 52 53 /* Progress-window type attributes */ 54 55 #define REQP_Total (REQP_Dummy + 1) 56 #define REQP_Current (REQP_Dummy + 2) 57 #define REQP_AbortText (REQ_GadgetText) 58 #define REQP_ProgressText (REQ_BodyText) 59 #define REQP_OpenInactive (REQP_Dummy + 3) 60 #define REQP_NoText (REQP_Dummy + 4) 61 #define REQP_Dynamic (REQP_Dummy + 5) 62 #define REQP_CenterWindow (REQP_Dummy + 6) 63 #define REQP_LastPosition (REQP_Dummy + 7) 64 #define REQP_Percent (REQP_Dummy + 8) 65 #define REQP_Ticks (REQP_Dummy + 9) 66 #define REQP_ShortTicks (REQP_Dummy + 10) 67 68 69 /* requester.class methods */ 70 71 #define RM_OPENREQ (0x650001L) 72 73 74 struct orRequest 75 { 76 ULONG MethodID; 77 struct TagItem *or_Attrs; 78 struct Window *or_Window; 79 struct Screen *or_Screen; 80 }; 81 82 83 /* REQ_Type definitions */ 84 85 #define REQTYPE_INFO 0 86 #define REQTYPE_INTEGER 1 87 #define REQTYPE_STRING 2 88 #define REQTYPE_PROGRESS 3 89 90 91 /* Useful macros */ 92 93 #ifndef RequesterObject 94 # define OpenRequester(obj, win) DoMethod(obj, RM_OPENREQ, NULL, win, NULL, TAG_DONE) 95 # define RequesterObject NewObject(REQUESTER_GetClass(), NULL 96 #endif 97 98 99 #pragma pack() 100 101 #endif /* CLASSES_REQUESTER_H */