home *** CD-ROM | disk | FTP | other *** search
- /*
-
- Window definition
-
- */
-
- #include <libraries/gadtools.h>
- #include <intuition/gadgetclass.h>
-
- // a lazyness define (and more readable...)
- #define GET_ID(a) (((struct Gadget *)(a->IAddress))->GadgetID)
-
- // prototype of a function to set changes of the sliders to step 10
- LONG ChangeValue( struct Gadget *gad, LONG value );
-
- enum
- {
- GADGET_ID_TITLE,
-
- GADGET_ID_BEVEL_MAIN,
-
- GADGET_ID_TXT_DESKTOP,
- GADGET_ID_FILE_DESKTOP,
- GADGET_ID_STRING_DESKTOP,
- GADGET_ID_POP_DESKTOP,
-
- GADGET_ID_TXT_LISTER,
- GADGET_ID_FILE_LISTER,
- GADGET_ID_STRING_LISTER,
- GADGET_ID_POP_LISTER,
-
- GADGET_ID_TXT_REQUESTER,
- GADGET_ID_FILE_REQUESTER,
- GADGET_ID_STRING_REQUESTER,
- GADGET_ID_POP_REQUESTER,
-
- GADGET_ID_BUTTON_COPIED,
- GADGET_ID_BUTTON_DELAY,
-
- GADGET_ID_BEVEL_MODESETTINGS,
-
- GADGET_ID_TXT_COPIED,
- GADGET_ID_FILE_COPIED,
- GADGET_ID_STRING_COPIED,
-
- GADGET_ID_TXT_DELAY,
- GADGET_ID_CYCLE_DELAY,
- GADGET_ID_SLIDER_DELAY,
-
- GADGET_ID_BUTTON_SAVE,
- GADGET_ID_BUTTON_TEST,
- GADGET_ID_BUTTON_CANCEL
-
- };
-
- USHORT labels[] = { {MSG_UNTIL}, {MSG_MIDDLE}, NULL };
-
- struct TagItem cycle[] =
- {
- GTST_MaxChars, 128,
- GTCustom_LocaleLabels, (ULONG) &labels,
- TAG_DONE
- };
-
- struct TagItem rel_desk[] =
- {
- GTCustom_LayoutRel, GADGET_ID_BEVEL_MAIN,
- DFB_DefPath, (ULONG) "SYS:#?",
- GTST_MaxChars, 128,
- TAG_DONE
- };
-
- struct TagItem button[] =
- {
- GA_Immediate, TRUE, // not really needed
- TAG_MORE, (ULONG) &rel_desk[0]
- };
-
- struct TagItem rel_desk_deskfile[] =
- {
- GTCustom_Control, GADGET_ID_STRING_DESKTOP,
- TAG_MORE, (ULONG) &rel_desk[0]
- };
-
- struct TagItem rel_desk_listerfile[] =
- {
- GTCustom_Control, GADGET_ID_STRING_LISTER,
- TAG_MORE, (ULONG) &rel_desk[0]
- };
-
- struct TagItem rel_desk_reqfile[] =
- {
- GTCustom_Control, GADGET_ID_STRING_REQUESTER,
- TAG_MORE, (ULONG) &rel_desk[0]
- };
-
- struct TagItem rel_copy[] =
- {
- GTCustom_Control, GADGET_ID_STRING_COPIED,
- DFB_DefPath, (ULONG) "SYS:",
- GTCustom_LayoutRel, GADGET_ID_BEVEL_MODESETTINGS,
- GTST_MaxChars, 128,
- GTCustom_LocaleLabels, (ULONG) &labels,
- TAG_DONE
- };
-
- struct TagItem slider[] =
- {
- GTSL_Min, 100,
- GTSL_Max, 600,
- GA_RelVerify, TRUE,
- GTSL_LevelFormat, (ULONG) "%ld ticks",
- GTSL_MaxLevelLen, 13,
- GTSL_LevelPlace, PLACETEXT_ABOVE,
- GTSL_DispFunc, (ULONG) &ChangeValue,
- TAG_MORE, (ULONG) &rel_copy[0]
- };
-
- ObjectDef winobjects[] =
- {
- {
- OD_TEXT, TEXTPEN,
-
- { 0, 1, SIZE_MAXIMUM, 1 }, { 0, 0, 0, 0 },
-
- MSG_RNDPIC_DESC, TEXTFLAG_CENTER,
-
- GADGET_ID_TITLE, NULL
- },
-
- {
- OD_AREA, NULL,
-
- { 1, 2, SIZE_MAX_LESS-1, 3 }, { 0, 4, 0, 26 },
-
- NULL, AREAFLAG_ERASE|AREAFLAG_RECESSED,
-
- GADGET_ID_BEVEL_MAIN, NULL
- },
-
- {
- OD_GADGET, BUTTON_KIND,
-
- { 0, 0, 10, 1 }, { 4, 3, 0, 6 },
-
- MSG_DESKTOP, BUTTONFLAG_TOGGLE_SELECT,//PLACETEXT_IN,
-
- GADGET_ID_TXT_DESKTOP, &rel_desk[0]
- },
- {
- OD_GADGET, FILE_BUTTON_KIND,
-
- { 10, 0, 3, 1 }, { 4, 3, 6, 6 },
-
- NULL, NULL,
-
- GADGET_ID_FILE_DESKTOP, &rel_desk_deskfile[0]
- },
- {
- OD_GADGET, STRING_KIND,
-
- { 13, 0, SIZE_MAX_LESS-3, 1 }, { 10, 3, -4, 6 },
-
- NULL, NULL,
-
- GADGET_ID_STRING_DESKTOP, &rel_desk[0]
- },
- {
- OD_GADGET, BUTTON_KIND,
-
- { POS_RIGHT_JUSTIFY, 0, 3, 1 }, { -4, 3, 0, 6 },
-
- (ULONG) "?", TEXTFLAG_TEXT_STRING|BUTTONFLAG_IMMEDIATE,
-
- GADGET_ID_POP_DESKTOP, &button[0]//rel_desk[0]
- },
-
- {
- OD_GADGET, BUTTON_KIND,
-
- { 0, 1, 10, 1 }, { 4, 9, 0, 6 },
-
- MSG_LISTER, BUTTONFLAG_TOGGLE_SELECT,//PLACETEXT_IN,
-
- GADGET_ID_TXT_LISTER, &rel_desk[0]
- },
- {
- OD_GADGET, FILE_BUTTON_KIND,
-
- { 10, 1, 3, 1 }, { 4, 9, 6, 6 },
-
- NULL, NULL,
-
- GADGET_ID_FILE_LISTER, &rel_desk_listerfile[0]
- },
- {
- OD_GADGET, STRING_KIND,
-
- { 13, 1, SIZE_MAX_LESS-3, 1 }, { 10, 9, -4, 6 },
-
- NULL, NULL,
-
- GADGET_ID_STRING_LISTER, &rel_desk[0]
- },
- {
- OD_GADGET, BUTTON_KIND,
-
- { POS_RIGHT_JUSTIFY, 1, 3, 1 }, { -4, 9, 0, 6 },
-
- (ULONG) "?", TEXTFLAG_TEXT_STRING|BUTTONFLAG_IMMEDIATE,
-
- GADGET_ID_POP_LISTER, &rel_desk[0]
- },
-
- {
- OD_GADGET, BUTTON_KIND,
-
- { 0, 2, 10, 1 }, { 4, 15, 0, 6 },
-
- MSG_REQUESTER, BUTTONFLAG_TOGGLE_SELECT,
-
- GADGET_ID_TXT_REQUESTER, &rel_desk[0]
- },
- {
- OD_GADGET, FILE_BUTTON_KIND,
-
- { 10, 2, 3, 1 }, { 4, 15, 6, 6 },
-
- NULL, NULL,
-
- GADGET_ID_FILE_REQUESTER, &rel_desk_reqfile[0]
- },
- {
- OD_GADGET, STRING_KIND,
-
- { 13, 2, SIZE_MAX_LESS-3, 1 }, { 10, 15, -4, 6 },
-
- NULL, NULL,
-
- GADGET_ID_STRING_REQUESTER, &rel_desk[0]
- },
- {
- OD_GADGET, BUTTON_KIND,
-
- { POS_RIGHT_JUSTIFY, 2, 3, 1 }, { -4, 15, 0, 6 },
-
- (ULONG) "?", TEXTFLAG_TEXT_STRING|BUTTONFLAG_IMMEDIATE,
-
- GADGET_ID_POP_REQUESTER, &rel_desk[0]
- },
-
- {
- OD_GADGET, BUTTON_KIND,
-
- { 1, 5, 31, 1 }, { 0, 33, 0, 6 },
-
- MSG_COPIED, BUTTONFLAG_TOGGLE_SELECT,
-
- GADGET_ID_BUTTON_COPIED, NULL
- },
- {
- OD_GADGET, BUTTON_KIND,
-
- { 32, 5, 31, 1 }, { 0, 33, 0, 6 },
-
- MSG_DELAY, BUTTONFLAG_TOGGLE_SELECT,
-
- GADGET_ID_BUTTON_DELAY, NULL
- },
-
- {
- OD_AREA, NULL,
-
- { 1, 6, SIZE_MAX_LESS-1, 4 }, { 0, 39, 0, 2 },
-
- NULL, AREAFLAG_ERASE|AREAFLAG_RECESSED,
-
- GADGET_ID_BEVEL_MODESETTINGS, NULL
- },
-
-
- {
- OD_GADGET, BUTTON_KIND,
-
- { 1, POS_RIGHT_JUSTIFY, 10, 1 }, { 0, -2, 0, 4 },
-
- MSG_SAVE, PLACETEXT_IN|BUTTONFLAG_OKAY_BUTTON,
-
- GADGET_ID_BUTTON_SAVE, NULL
- },
- {
- OD_GADGET, BUTTON_KIND,
-
- { POS_CENTER, POS_RIGHT_JUSTIFY, 10, 1 }, { 0, -2, 0, 4 },
-
- MSG_TEST, PLACETEXT_IN,
-
- GADGET_ID_BUTTON_TEST, NULL
- },
- {
- OD_GADGET, BUTTON_KIND,
-
- { POS_RIGHT_JUSTIFY-1, POS_RIGHT_JUSTIFY, 10, 1 }, { 0, -2, 0, 4 },
-
- MSG_CANCEL, PLACETEXT_IN|BUTTONFLAG_CANCEL_BUTTON,
-
- GADGET_ID_BUTTON_CANCEL, NULL
- },
- { OD_END }
- };
-
- /* objects for command mode */
- ObjectDef delay_objects[] =
- {
- {
- OD_GADGET, CYCLE_KIND,
-
- { 0, POS_RIGHT_JUSTIFY, 16, 1 }, { 4, -3, 0, 6 },
-
- MSG_DELAY_C, PLACETEXT_ABOVE,
-
- GADGET_ID_CYCLE_DELAY, &rel_copy[0]
- },
- {
- OD_GADGET, SLIDER_KIND,
-
- { 16, POS_RIGHT_JUSTIFY, SIZE_MAX_LESS-1, 1 }, { 4, -3, 0, 6 },
-
- NULL, NULL,
-
- GADGET_ID_SLIDER_DELAY, &slider[0]
- },
- { OD_END }
- };
-
- /* objects for makelink mode */
- ObjectDef copy_objects[] =
- {
- {
- OD_TEXT, TEXTPEN,
-
- { 0, 0, SIZE_MAXIMUM, 1 }, { 0, 3, 0, 0 },
-
- MSG_COPYPATH, TEXTFLAG_CENTER,
-
- GADGET_ID_TXT_COPIED, &rel_copy[0]
- },
- {
- OD_GADGET, DIR_BUTTON_KIND,
-
- { 0, POS_RIGHT_JUSTIFY, 3, 1 }, { 4, -3, 6, 6 },
-
- NULL, NULL,
-
- GADGET_ID_FILE_COPIED, &rel_copy[0]
- },
- {
- OD_GADGET, STRING_KIND,
-
- { 3, POS_RIGHT_JUSTIFY, SIZE_MAX_LESS-1, 1 }, { 10, -3, 0, 6 },
-
- NULL, NULL,
-
- GADGET_ID_STRING_COPIED, &rel_copy[0]
- },
- { OD_END }
- };
-
- ConfigWindow cfgwin =
- {
- { POS_CENTER, POS_CENTER, 64, 17 },
- { 0, 0, 0, 3 }
- };
-
-
-