/****************************************************************************
**
** This file includes all the Triton defines
**
**                  Jørgen 'Da' Larsen
**
*/

-> TRITON defs
#define BeginColumn             TRGR_VERT,TRGR_PROPSHARE OR TRGR_ALIGN OR TRGR_CENTER
#define BeginColumnI            TRGR_VERT,TRGR_PROPSHARE OR TRGR_ALIGN OR TRGR_CENTER OR TRGR_INDEP
#define BeginLine               TRGR_HORIZ,TRGR_PROPSHARE OR TRGR_ALIGN OR TRGR_CENTER
#define BeginLineI              TRGR_HORIZ,TRGR_PROPSHARE OR TRGR_ALIGN OR TRGR_CENTER OR TRGR_INDEP
#define BeginMenu(t)            TRMN_TITLE,(t)
#define BeginRequester(t,p)     WindowTitle(t),WindowPosition(p),WindowBackfillReq,\
                                WindowFlags(TRWF_NOZIPGADGET OR TRWF_NOSIZEGADGET OR TRWF_NOCLOSEGADGET OR TRWF_NODELZIP OR TRWF_NOESCCLOSE),\
                                VertGroupA,Space,HorizGroupA,Space,GroupBox,ObjectBackfillB
#define BeginRequesterGads      Space,EndGroup,Space
#define BeginSub(t)             TRMN_ITEM,(t)
#define BoopsiImage(img)        TROB_IMAGE,(img),TRAT_FLAGS,TRIM_BOOPSI
#define BoopsiImageD(img,mw,mh) TROB_Image,(img),TRAT_MINWIDTH,(mw),TRAT_MINHEIGHT,(mh),TRAT_FLAGS,TRIM_BOOPSI
#define Button(text,id)         TROB_BUTTON,NIL,TRAT_TEXT,(text),TRAT_ID,(id)
#define ButtonE(text,id)        TROB_BUTTON,NIL,TRAT_TEXT,(text),TRAT_ID,(id),TRAT_FLAGS,TRBU_ESCOK
#define ButtonR(text,id)        TROB_BUTTON,NIL,TRAT_TEXT,(text),TRAT_ID,(id),TRAT_FLAGS,TRBU_RETURNOK
#define ButtonRE(text,id)       TROB_BUTTON,NIL,TRAT_TEXT,(text),TRAT_ID,(id),TRAT_FLAGS,TRBU_RETURNOK OR TRBU_ESCOK
#define CenteredButton(t,i)     HorizGroupSC,Space,TROB_BUTTON,NIL,TRAT_TEXT,(t),TRAT_ID,(i),Space,EndGroup
#define CenteredButtonE(t,i)    HorizGroupSC,Space,TROB_BUTTON,NIL,TRAT_FLAGS,TRBU_ESCOK,TRAT_TEXT,(t),TRAT_ID,(i),Space,EndGroup
#define CenteredButtonR(t,i)    HorizGroupSC,Space,TROB_BUTTON,NIL,TRAT_FLAGS,TRBU_RETURNOK,TRAT_TEXT,(t),TRAT_ID,(i),Space,EndGroup
#define CenteredButtonRE(t,i)   HorizGroupSC,Space,TROB_BUTTON,NIL,TRAT_FLAGS,TRBU_RETURNOK OR TRBU_ESCOK,TRAT_TEXT,(t),TRAT_ID,(i),Space,EndGroup
#define CenteredInteger(i)      HorizGroupSC,Space,Integer(i),Space,EndGroup
#define CenteredInteger3(i)     HorizGroupSC,Space,Integer3(i),Space,EndGroup
#define CenteredIntegerB(i)     HorizGroupSC,Space,IntegerB(i),Space,EndGroup
#define CenteredIntegerH(i)     HorizGroupSC,Space,IntegerH(i),Space,EndGroup
#define CenteredText(text)      HorizGroupSC,Space,TextN(text),Space,EndGroup
#define CenteredText3(text)     HorizGroupSC,Space,Text3(text),Space,EndGroup
#define CenteredTextB(text)     HorizGroupSC,Space,TextB(text),Space,EndGroup
#define CenteredTextH(text)     HorizGroupSC,Space,TextH(text),Space,EndGroup
#define CenteredTextID(text,id) HorizGroupSC,Space,TextID(text,id),Space,EndGroup
#define CenteredText_BS(text)   HorizGroupSC,SpaceB,TextN(text),SpaceB,EndGroup
#define CheckBox(id)            TROB_CHECKBOX,NIL,TRAT_ID,id
#define CheckBoxC(id)           TROB_CHECKBOX,NIL,TRAT_ID,id,TRAT_VALUE,TRUE
#define CheckBoxCLEFT(id)       HorizGroupS, CheckBoxC(id), Space, EndGroup
#define CheckBoxLEFT(id)        HorizGroupS, CheckBox(id), Space, EndGroup
#define ColumnArray             TRGR_HORIZ,TRGR_ARRAY OR TRGR_ALIGN OR TRGR_CENTER
#define CustomScreen(scr)       TRWI_CUSTOMSCREEN,(scr)
#define CycleGadget(ent,val,id) TROB_CYCLE,ent,TRAT_ID,(id),TRAT_VALUE,(val)
#define Disabled                TRAT_DISABLED,TRUE
#define DropBox(id)             TROB_DROPBOX,NIL,TRAT_ID,(id)
#define EmptyButton(id)         TROB_BUTTON,NIL,TRAT_TEXT,'',TRAT_ID,(id)
#define EndArray                EndGroup
#define EndColumn               EndGroup
#define EndGroup                TRGR_END,NIL
#define EndLine                 EndGroup
#define EndProject              TAG_END
#define EndRequester            Space,EndGroup,EndProject
#define FWListRO(ent,id,top)    TROB_LISTVIEW,(ent),TRAT_FLAGS,TRLV_FWFONT OR TRLV_READONLY,TRAT_ID,id,TRAT_VALUE,0,TRLV_TOP,top
#define FWListROC(ent,id,top)   TROB_LISTVIEW,(ent),TRAT_FLAGS,TRLV_FWFONT OR TRLV_READONLY OR TRLV_NOCURSORKEYS,TRAT_ID,id,TRAT_VALUE,0,TRLV_TOP,top
#define FWListROCN(ent,id,top)  TROB_LISTVIEW,(ent),TRAT_FLAGS,TRLV_FWFONT OR TRLV_READONLY OR TRLV_NOCURSORKEYS OR TRLV_NONUMPADKEYS,TRAT_ID,id,TRAT_VALUE,0,TRLV_TOP,top
#define FWListRON(ent,id,top)   TROB_LISTVIEW,(ent),TRAT_FLAGS,TRLV_FWFONT OR TRLV_READONLY OR TRLV_NUNUMPADKEYS,TRAT_ID,id,TRAT_VALUE,0,TRLV_TOP,top
#define FWListSel(ent,id,top)   TROB_LISTVIEW,(ent),TRAT_FLAGS,TRLV_FWFONT OR TRLV_SELECT,TRAT_ID,id,TRAT_VALUE,0,TRLV_TOP,top
#define FWListSelC(ent,id,top)  TROB_LISTVIEW,(ent),TRAT_FLAGS,TRLV_FWFONT OR TRLV_SELECT OR TRLV_NOCURSORKEYS,TRAT_ID,id,TRAT_VALUE,0,TRLV_TOP,top
#define FWListSelCN(ent,id,top) TROB_LISTVIEW,(ent),TRAT_FLAGS,TRLV_FWFONT OR TRLV_SELECT OR TRLV_NOCURSORKEYS OR TRLV_NONUMPADKEYS,TRAT_ID,id,TRAT_VALUE,0,TRLV_TOP,top
#define FWListSelN(ent,id,top)  TROB_LISTVIEW,(ent),TRAT_FLAGS,TRLV_FWFONT OR TRLV_SELECT OR TRLV_NONUMPADKEYS,TRAT_ID,id,TRAT_VALUE,0,TRLV_TOP,top
#define FWListSS(e,id,top,v)    TROB_LISTVIEW,(e),TRAT_FLAGS,TRLV_FWFONT OR TRLV_SHOWSELECTED,TRAT_ID,id,TRAT_VALUE,v,TRLV_TOP,top
#define FWListSSC(e,id,top,v)   TROB_LISTVIEW,(e),TRAT_FLAGS,TRLV_FWFONT OR TRLV_SHOWSELECTED OR TRLV_NOCURSORKEYS,TRAT_ID,id,TRAT_VALUE,v,TRLV_TOP,top
#define FWListSSCN(e,id,top,v)  TROB_LISTVIEW,(e),TRAT_FLAGS,TRLV_FWFONT OR TRLV_SHOWSELECTED OR TRLV_NOCURSORKEYS OR TRLV_NONUMPADKEYS,TRAT_ID,id,TRAT_VALUE,v,TRLV_TOP,top
#define FWListSSN(e,id,top,v)   TROB_LISTVIEW,(e),TRAT_FLAGS,TRLV_FWFONT OR TRLV_SHOWSELECTED OR TRLV_NONUMPADKEYS,TRAT_ID,id,TRAT_VALUE,v,TRLV_TOP,top
#define GetDrawerButton(id)     TROB_BUTTON,TRBT_GETDRAWER,TRAT_TEXT,'',TRAT_ID,(id)
#define GetDrawerButtonS(s,id)  TROB_BUTTON,TRBT_GETDRAWER,TRAT_TEXT,(s),TRAT_ID,(id)
#define GetEntryButton(id)      TROB_BUTTON,TRBT_GETENTRY,TRAT_TEXT,'',TRAT_ID,(id)
#define GetEntryButtonS(s,id)   TROB_BUTTON,TRBT_GETENTRY,TRAT_TEXT,(s),TRAT_ID,(id)
#define GetFileButton(id)       TROB_BUTTON,TRBT_GETFILE,TRAT_TEXT,'',TRAT_ID,(id)
#define GetFileButtonS(s,id)    TROB_BUTTON,TRBT_GETFILE,TRAT_TEXT,(s),TRAT_ID,(id)
#define GroupBox                TROB_FRAMEBOX,TRFB_GROUPING
#define HorizGroup              TRGR_HORIZ,NIL
#define HorizGroupA             TRGR_HORIZ,TRGR_ALIGN
#define HorizGroupAC            TRGR_HORIZ,TRGR_ALIGN OR TRGR_CENTER
#define HorizGroupC             TRGR_HORIZ,TRGR_CENTER
#define HorizGroupE             TRGR_HORIZ,TRGR_EQUALSHARE
#define HorizGroupEA            TRGR_HORIZ,TRGR_EQUALSHARE OR TRGR_ALIGN
#define HorizGroupEAC           TRGR_HORIZ,TRGR_EQUALSHARE OR TRGR_ALIGN OR TRGR_CENTER
#define HorizGroupEC            TRGR_HORIZ,TRGR_EQUALSHARE OR TRGR_CENTER
#define HorizGroupS             TRGR_HORIZ,TRGR_PROPSPACES
#define HorizGroupSA            TRGR_HORIZ,TRGR_PROPSPACES OR TRGR_ALIGN
#define HorizGroupSAC           TRGR_HORIZ,TRGR_PROPSPACES OR TRGR_ALIGN OR TRGR_CENTER
#define HorizGroupSC            TRGR_HORIZ,TRGR_PROPSPACES OR TRGR_CENTER
#define HorizSeparator          HorizGroupEC,Space,Line(TROF_HORIZ),Space,EndGroup
#define ID(id)                  TRAT_ID,id
#define Integer(i)              TROB_TEXT,NIL,TRAT_VALUE,(i)
#define Integer3(i)             TROB_TEXT,NIL,TRAT_VALUE,(i),TRAT_FLAGS,TRTX_3D
#define IntegerB(i)             TROB_TEXT,NIL,TRAT_VALUE,(i),TRAT_FLAGS,TRTX_BOLD
#define IntegerBox(def,id,mwid) GroupBox, ObjectBackfillB, VertGroup, SpaceS, HorizGroupSC, Space, Integer(def),TRAT_ID,id,TRAT_MINWIDTH,mwid, Space, EndGroup, SpaceS, EndGroup
#define IntegerH(i)             TROB_TEXT,NIL,TRAT_VALUE,(i),TRAT_FLAGS,TRTX_HIGHLIGHT
#define ItemBarlabel            TRMN_ITEM,TRMN_BARLABEL
#define Line(flags)             TROB_LINE,flags
#define LineArray               TRGR_VERT,TRGR_ARRAY OR TRGR_ALIGN OR TRGR_CENTER
#define ListRO(ent,id,top)      TROB_LISTVIEW,(ent),TRAT_FLAGS,TRLV_READONLY,TRAT_ID,id,TRAT_VALUE,0,TRLV_TOP,top
#define ListROC(ent,id,top)     TROB_LISTVIEW,(ent),TRAT_FLAGS,TRLV_READONLY OR TRLV_NOCURSORKEYS,TRAT_ID,id,TRAT_VALUE,0,TRLV_TOP,top
#define ListROCN(ent,id,top)    TROB_LISTVIEW,(ent),TRAT_FLAGS,TRLV_READONLY OR TRLV_NOCURSORKEYS OR TRLV_NONUMPADKEYS,TRAT_ID,id,TRAT_VALUE,0,TRLV_TOP,top
#define ListRON(ent,id,top)     TROB_LISTVIEW,(ent),TRAT_FLAGS,TRLV_READONLY OR TRLV_NUNUMPADKEYS,TRAT_ID,id,TRAT_VALUE,0,TRLV_TOP,top
#define ListSel(ent,id,top)     TROB_LISTVIEW,(ent),TRAT_FLAGS,TRLV_SELECT,TRAT_ID,id,TRAT_VALUE,0,TRLV_TOP,top
#define ListSelC(ent,id,top)    TROB_LISTVIEW,(ent),TRAT_FLAGS,TRLV_SELECT OR TRLV_NOCURSORKEYS,TRAT_ID,id,TRAT_VALUE,0,TRLV_TOP,top
#define ListSelCN(ent,id,top)   TROB_LISTVIEW,(ent),TRAT_FLAGS,TRLV_SELECT OR TRLV_NOCURSORKEYS OR TRLV_NONUMPADKEYS,TRAT_ID,id,TRAT_VALUE,0,TRLV_TOP,top
#define ListSelN(ent,id,top)    TROB_LISTVIEW,(ent),TRAT_FLAGS,TRLV_SELECT OR TRLV_NONUMPADKEYS,TRAT_ID,id,TRAT_VALUE,0,TRLV_TOP,top
#define ListSS(e,id,top,v)      TROB_LISTVIEW,(e),TRAT_FLAGS,TRLV_SHOWSELECTED,TRAT_ID,id,TRAT_VALUE,v,TRLV_TOP,top
#define ListSSC(e,id,top,v)     TROB_LISTVIEW,(e),TRAT_FLAGS,TRLV_SHOWSELECTED OR TRLV_NOCURSORKEYS,TRAT_ID,id,TRAT_VALUE,v,TRLV_TOP,top
#define ListSSCN(e,id,top,v)    TROB_LISTVIEW,(e),TRAT_FLAGS,TRLV_SHOWSELECTED OR TRLV_NOCURSORKEYS OR TRLV_NONUMPADKEYS,TRAT_ID,id,TRAT_VALUE,v,TRLV_TOP,top
#define ListSSN(e,id,top,v)     TROB_LISTVIEW,(e),TRAT_FLAGS,TRLV_SHOWSELECTED OR TRLV_NONUMPADKEYS,TRAT_ID,id,TRAT_VALUE,v,TRLV_TOP,top
#define MenuFlags(f)            TRMN_FLAGS,(f)
#define MenuItem(t,id)          TRMN_ITEM,(t),TRAT_ID,id
#define MenuItemD(t,id)         TRMN_ITEM,(t),MenuFlags(TRMF_DISABLED),TRAT_ID,id
#define MXGadget(ent,val,id)    TROB_CYCLE,ent,TRAT_ID,(id),TRAT_VALUE,(val),TRAT_FLAGS,TRCY_MX
#define MXGadgetR(ent,val,id)   TROB_CYCLE,ent,TRAT_ID,(id),TRAT_VALUE,(val),TRAT_FLAGS,TRCY_MX OR TRCY_RIGHTLABELS
#define NamedFrameBox(t)        TROB_FRAMEBOX,TRFB_FRAMING,TRAT_TEXT,(t)
#define NamedSeparator(text)    HorizGroupEC,Space,Line(TROF_HORIZ),Space,TextT(text),Space,Line(TROF_HORIZ),Space,EndGroup
#define NamedSeparatorI(te,id)  HorizGroupEC,Space,Line(TROF_HORIZ),Space,TextT(te),TRAT_ID,id,Space,Line(TROF_HORIZ),Space,EndGroup
#define NamedSeparatorIN(te,id) HorizGroupEC,Line(TROF_HORIZ),Space,TextT(te),TRAT_ID,id,Space,Line(TROF_HORIZ),EndGroup
#define NamedSeparatorN(text)   HorizGroupEC,Line(TROF_HORIZ),Space,TextT(text),Space,Line(TROF_HORIZ),EndGroup
#define ObjectBackfillA         TRAT_BACKFILL,TRBF_SHADOW
#define ObjectBackfillAB        TRAT_BACKFILL,TRBF_SHADOW_BACKGROUND
#define ObjectBackfillAF        TRAT_BACKFILL,TRBF_SHADOW_FILL
#define ObjectBackfillB         TRAT_BACKFILL,TRBF_NONE
#define ObjectBackfillF         TRAT_BACKFILL,TRBF_FILL
#define ObjectBackfillFB        TRAT_BACKFILL,TRBF_FILL_BACKGROUND
#define ObjectBackfillReq       TRAT_BACKFILL,TRBF_REQUESTERBACK
#define ObjectBackfillS         TRAT_BACKFILL,TRBF_SHINE
#define ObjectBackfillSA        TRAT_BACKFILL,TRBF_SHINE_SHADOW
#define ObjectBackfillSB        TRAT_BACKFILL,TRBF_SHINE_BACKGROUND
#define ObjectBackfillSF        TRAT_BACKFILL,TRBF_SHINE_FILL
#define ObjectBackfillWin       TRAT_BACKFILL,TRBF_WINDOWBACK
#define PaletteGadget(val,id)   TROB_PALETTE,NIL,TRAT_ID,(id),TRAT_VALUE,(val)
#define Progress(maxi,val,id)   TROB_PROGRESS,(maxi),TRAT_ID,(id),TRAT_VALUE,(val)
#define ProjectDefinition(name) :=[]
#define PubScreen(scr)          TRWI_PUBSCREEN,(scr)
#define PubScreenName(name)     TRWI_PUBSCREENNAME,(name)
#define ScreenTitle(t)          TRWI_SCREENTITLE,(t)
#define SliderGadget(mini,maxi,val,id) TROB_SLIDER,NIL,TRSL_MIN,(mini),TRSL_MAX,(maxi),TRAT_ID,(id),TRAT_VALUE,(val)
#define Space                   TROB_SPACE,TRST_NORMAL
#define SpaceB                  TROB_SPACE,TRST_BIG
#define SpaceN                  TROB_SPACE,TRST_NONE
#define SpaceS                  TROB_SPACE,TRST_SMALL
#define StringGadget(def,id)    TROB_STRING,def,TRAT_ID,(id)
#define SubBarlabel             TRMN_SUB,TRMN_BARLABEL
#define SubItem(t,id)           TRMN_SUB,(t),TRAT_ID,id
#define SubItemD(t,id)          TRMN_SUB,(t),MenuFlags(TRMF_DISABLED),TRAT_ID,id
#define Text3(text)             TROB_TEXT,NIL,TRAT_TEXT,text,TRAT_FLAGS,TRTX_3D
#define TextB(text)             TROB_TEXT,NIL,TRAT_TEXT,text,TRAT_FLAGS,TRTX_BOLD
#define TextBox(text,id,mwid)   _TextBox, ObjectBackfillB, VertGroup, SpaceS, HorizGroupSC, Space, TextN(text),TRAT_ID,id,TRAT_MINWIDTH,mwid, Space, EndGroup, SpaceS, EndGroup
#define TextH(text)             TROB_TEXT,NIL,TRAT_TEXT,text,TRAT_FLAGS,TRTX_HIGHLIGHT
#define TextID(text,id)         TROB_TEXT,NIL,TRAT_TEXT,text,TRAT_ID,id
#define TextN(text)             TROB_TEXT,NIL,TRAT_TEXT,text
#define TextNR(t)               TextN(t),TRAT_FLAGS,TROF_RIGHTALIGN
#define TextRIGHT(t,id)         HorizGroupS, Space, TextN(t), ID(id), EndGroup
#define TextT(text)             TROB_TEXT,NIL,TRAT_TEXT,text,TRAT_FLAGS,TRTX_TITLE
#define TRITONNAME 'triton.library'
#define VertGroup               TRGR_VERT,NIL
#define VertGroupA              TRGR_VERT,TRGR_ALIGN
#define VertGroupAC             TRGR_VERT,TRGR_ALIGN OR TRGR_CENTER
#define VertGroupC              TRGR_VERT,TRGR_CENTER
#define VertGroupE              TRGR_VERT,TRGR_EQUALSHARE
#define VertGroupEA             TRGR_VERT,TRGR_EQUALSHARE OR TRGR_ALIGN
#define VertGroupEAC            TRGR_VERT,TRGR_EQUALSHARE OR TRGR_ALIGN OR TRGR_CENTER
#define VertGroupEC             TRGR_VERT,TRGR_EQUALSHARE OR TRGR_CENTER
#define VertGroupS              TRGR_VERT,TRGR_PROPSPACES
#define VertGroupSA             TRGR_VERT,TRGR_PROPSPACES OR TRGR_ALIGN
#define VertGroupSAC            TRGR_VERT,TRGR_PROPSPACES OR TRGR_ALIGN OR TRGR_CENTER
#define VertGroupSC             TRGR_VERT,TRGR_PROPSPACES OR TRGR_CENTER
#define VertSeparator           VertGroupEC,Space,Line(TROF_VERT),Space,EndGroup
#define WindowBackfillA         TRWI_BACKFILL,TRBF_SHADOW
#define WindowBackfillAB        TRWI_BACKFILL,TRBF_SHADOW_BACKGROUND
#define WindowBackfillAF        TRWI_BACKFILL,TRBF_SHADOW_FILL
#define WindowBackfillF         TRWI_BACKFILL,TRBF_FILL
#define WindowBackfillFB        TRWI_BACKFILL,TRBF_FILL_BACKGROUND
#define WindowBackfillNone      TRWI_BACKFILL,TRBF_NONE
#define WindowBackfillReq       TRWI_BACKFILL,TRBF_REQUESTERBACK
#define WindowBackfillS         TRWI_BACKFILL,TRBF_SHINE
#define WindowBackfillSA        TRWI_BACKFILL,TRBF_SHINE_SHADOW
#define WindowBackfillSB        TRWI_BACKFILL,TRBF_SHINE_BACKGROUND
#define WindowBackfillSF        TRWI_BACKFILL,TRBF_SHINE_FILL
#define WindowBackfillWin       TRWI_BACKFILL,TRBF_WINDOWBACK
#define WindowDimensions(dim)   TRWI_DIMENSIONS,(dim)
#define WindowFlags(f)          TRWI_FLAGS,(f)
#define WindowID(id)            TRWI_ID,(id)
#define WindowPosition(pos)     TRWI_POSITION,(pos)
#define WindowTitle(t)          TRWI_TITLE,(t)
#define WindowUnderscore(und)   TRWI_UNDERSCORE,(und)
#define _TextBox                TROB_FRAMEBOX,TRFB_TEXT
-> TRITON defs
