home *** CD-ROM | disk | FTP | other *** search
- @DATABASE "pGadget/Gadget.h"
- @MASTER "Work2:AD/IInc/pGadget/Gadget.h"
- @REMARK This file was created by ADtoHT 2.0 on 11-Mär-97 13:34:36
- @REMARK Do not edit
- @REMARK ADtoHT is © 1993-1995 Christian Stieber
-
- @NODE MAIN "pGadget/Gadget.h"
- @TOC "__pOS_Dev.guide/MAIN"
-
- @{"pGadget/Gadget.h" LINK File}
-
-
- @{b}Structures@{ub}
-
- @{"pOS_Gadget" LINK "pGadget/Gadget.h/File" 18}
-
- @ENDNODE
- @NODE File "pGadget/Gadget.h"
- #ifndef __INC_POS_PGADGET_GADGET_H
- #define __INC_POS_PGADGET_GADGET_H
- /*******************************************************************
- Includes Release 24
- (C) Copyright 1995-1997 proDAD
- All Rights Reserved
-
- $AUT Holger Burkarth
- $DAT >>Gadget.h<< 04 Mar 1997 15:07:15 - (C) ProDAD
- *******************************************************************/
- #ifndef __INC_POS_PEXEC_LIST_H
- #include <@{"pExec/List.h" LINK "pExec/List.h/File"}>
- #endif
-
-
- /*----------------------------------
- -----------------------------------*/
- struct pOS_Gadget
- {
- @{"struct pOS_Node" LINK "pExec/List.h/File" 18} gad_Node;
-
- @{"SWORD" LINK "pExec/Types.h/File" 92} gad_LeftEdge;
- @{"SWORD" LINK "pExec/Types.h/File" 92} gad_TopEdge;
- @{"SWORD" LINK "pExec/Types.h/File" 92} gad_Width;
- @{"SWORD" LINK "pExec/Types.h/File" 92} gad_Height;
-
- @{"ULONG" LINK "pExec/Types.h/File" 91} gad_Flags; /* (enum pOS_GadgetFlags) */
- @{"ULONG" LINK "pExec/Types.h/File" 91} gad_ID; /* user-definable ID field */
- @{"ULONG" LINK "pExec/Types.h/File" 91} gad_UserData[2];
-
- @{"struct pOS_IntuiObj" LINK "pIntui/IObj.h/File" 17} *gad_Render;
- @{"struct pOS_IntuiObj" LINK "pIntui/IObj.h/File" 17} *gad_Select;
-
- /*---------------------------------------------*/
-
- @{"struct pOS_IntuiObj" LINK "pIntui/IObj.h/File" 17} *gad_Lable;
-
- @{"ULONG" LINK "pExec/Types.h/File" 91} gad_Activation; /* (enum pOS_GadgetActivate) */
- @{"ULONG" LINK "pExec/Types.h/File" 91} gad_Type; /* (enum pOS_GadgetTypes) */
- @{"APTR" LINK "pExec/Types.h/File" 87} gad_SpecialInfo;
- @{"struct pOS_Layer" LINK "pLayer/Clip.h/File" 63} *gad_Layer;
- @{"APTR" LINK "pExec/Types.h/File" 87} gad_Target;
- const @{"struct pOS_TagItem" LINK "pUtil/TagItem.h/File" 19} *gad_Map;
- struct pOS_Gadget *gad_Parent;
- const @{"CHAR" LINK "pExec/Types.h/File" 100} *gad_HelpID;
-
- @{"struct pOS_Callback" LINK "pExec/CallBack.h/File" 17} *gad_Callback;
- @{"UBYTE" LINK "pExec/Types.h/File" 95} gad_ShortKey;
- @{"UBYTE" LINK "pExec/Types.h/File" 95} gad_BorTop,gad_BorLeft,gad_BorRight,gad_BorBottom;
- @{"UBYTE" LINK "pExec/Types.h/File" 95} gad_Gwk; /* Layout-Gewicht */
- @{"UBYTE" LINK "pExec/Types.h/File" 95} gad_LableLay; /* (enum pOS_IObjectClassLayout) */
- @{"UBYTE" LINK "pExec/Types.h/File" 95} gad_RenderLay; /* (enum pOS_IObjectClassLayout) */
- @{"UBYTE" LINK "pExec/Types.h/File" 95} gad_MutualExclude;
- @{"UWORD" LINK "pExec/Types.h/File" 93} gad_BorderType; /* (enum pOS_GadgetBorderTypes) */
- @{"UWORD" LINK "pExec/Types.h/File" 93} gad_LableWidth; /* wird vom Gadget autom. berechnet */
- @{"UWORD" LINK "pExec/Types.h/File" 93} gad_LableHeight;
- struct pOS_GadgetDrop *gad_Drop; /* Gadget-Drop-Extend */
- struct pOS_GadgetDrag *gad_Drag; /* Gadget-Drag-Extend */
-
- @{"UBYTE" LINK "pExec/Types.h/File" 95} gad_Reserved[16-4];
- };
-
-
-
-
- enum pOS_GadgetFlags /* gad_Flags */
- {
- /*\\
- *** Ist GFLG_NoSelect==1 gesetzt und GACT_ToggleSelect==0, dann wird beim Anklicken
- *** ein optionales IDCMP_GadgetDown gesendet (GACT_Immediate==1). Das Gadget wird
- *** aber nicht GFLG_Selected==1 und wird auch nicht neugezeichnet.
- \\*/
- GFLG_NoSelect= 0x00000004, /* Gadget wird nie wirklich selektiert */
- GFLG_RelBottom= 0x00000008, /* vert. pos. is relative to bottom edge */
- GFLG_RelRight= 0x00000010, /* horiz. pos. is relative to right edge */
- GFLG_RelWidth= 0x00000020, /* width is relative to req/window */
- GFLG_RelHeight= 0x00000040, /* height is relative to req/window */
-
- GFLG_Selected= 0x00000080, /* Gadget ist selektiert */
- GFLG_Disabled= 0x00000100, /* Gadget ist gesperrt */
- GFLG_TabCycle= 0x00000200,
- GFLG_DropSelected= 0x00000400, /* Ein Drag-Objekt steht zur Zeit im Gadget.
- ** Das Flag wird von pIntui gesetzt und ist
- ** für Applikationen und Gadgets (const) readonly.
- */
-
- GFLG_PrivateDisable= 0x00000800, /* Beim Sperren vom Gadget (GFLG_Disabled) zeichnet
- ** pIntui kein Raster, sondern das Gadget muß
- ** ein eigenes Disable verwenden.
- ** !! nur für Gadgets modifizierbar !!
- */
-
- GFLG_OSLable= 0x00001000, /* Lable ist außerhalb der Gadget-Box */
- GFLG_Alternate= 0x00002000, /* Gadget muß erneuert werden */
- GFLG_FixSize= 0x00004000, /* das Gadget muß genau mit den GetIBox-Größen bedient werden */
-
- GFLG_UseMthAddRem= 0x00010000, /* es werden GCLMTH_Add/GCLMTH_Rem gesendet */
- GFLG_UseMthLayout= 0x00020000, /* GCLMTH_Layout wird gesendet */
- GFLG_IgnoreIE= 0x00040000, /* Input-Events ignorieren */
- GFLG_HighlightDropBox= 0x00080000, /* der GadgetBorder wird bei Drop hervorgehoben */
- GFLG_StdCallback= 0x00100000, /* gad_Callback wird als Standard-Callback berachtet */
- GFLG_StdTargetMap= 0x00200000, /* gad_Target und gad_Map wird im Standard-Modus bearbeitet */
- GFLG_HighlightFocus= 0x00400000, /* Gadget-Focus wird grafisch angezeigt */
- };
-
-
-
-
-
-
-
-
- enum pOS_GadgetActivate /* gad_Activation */
- {
- GACT_RelVerify= 0x0001,
- GACT_Immediate= 0x0002,
- GACT_UpdateGadget= 0x0004, /* UpdateGadget erzeugen */
-
- GACT_RightBorder= 0x0010,
- GACT_LeftBorder= 0x0020,
- GACT_TopBorder= 0x0040,
- GACT_BottomBorder= 0x0080,
-
- GACT_ToggleSelect= 0x0100, /* */
-
- GACT_StringLeft= 0x0000, /* */
- GACT_StringCenter= 0x0200,
- GACT_StringRight= 0x0400,
- GACT_LongInt= 0x0800, /* */
-
- GACT_ActiveGadget= 0x4000,
- GACT_AnimateGadget= 0x8000, /* Gadget wird mit GCLMTHRE_TickFrame versorgt */
-
-
- GACT_AnyBorderFlag =GACT_RightBorder | GACT_LeftBorder |
- GACT_TopBorder | GACT_BottomBorder,
-
- GACT_StandardDrop= 0x00010000, /* */
- GACT_StandardDrag= 0x00020000, /* */
- GACT_FixFocus= 0x00040000, /* der Eingabefocus kann nicht mit @{"pOS_ActivateGadget()" LINK "pIntuiD/pOS_ActivateGadget"} entzogen werden */
- GACT_FetchFocus= 0x00080000, /* nach GadgetUp bleibt der Fokus auf dem Gadget */
- };
-
-
-
- enum pOS_GadgetTypes /* gad_Type */
- {
- GTYP_GadgetType= 0xFC00, /* all Gadget Global Type flags (padded) */
-
- GTYP_ScrGadget= 0x4000, /* 1 = ScreenGadget, 0 = WindowGadget */
- GTYP_GZZGadget= 0x2000, /* 1 = for WFLG_GIMMEZEROZERO borders */
-
- GTYP_SysGadget= 0x8000,
- GTYP_SysTypeMask= 0x00F0,
-
- GTYP_Sizing= 0x0010, /* Window sizing gadget */
- GTYP_WDragging= 0x0020, /* Window drag bar */
- GTYP_SDragging= 0x0030, /* Screen drag bar */
- GTYP_WDepth= 0x0040, /* Window depth gadget */
- GTYP_SDepth= 0x0050, /* Screen depth gadget */
- GTYP_WZoom= 0x0060, /* Window zoom gadget */
- GTYP_Close= 0x0080, /* Window close gadget */
-
- GTYP_GTypeMask= 0x0007,
-
- GTYP_BoolGadget= 0x0001,
- GTYP_PropGadget= 0x0003,
- GTYP_StrGadget= 0x0004,
- GTYP_CustomGadget= 0x0005,
-
-
-
- GTYP_Reentrant= 0x00010000, /* Gadget wird ohne @{"pOS_LockIntuiGadget()" LINK "pIntuiD/pOS_LockIntuiGadget"}
- ** bedient. Dem Gadget ist es freigestellt
- ** @{"pOS_LockIntuiGadget()" LINK "pIntuiD/pOS_LockIntuiGadget"} aufzurufen.
- */
-
-
- GTYP_GShortKeyMask= 0x03000000,
- GTYP_KeyNone= 0x00000000, /* ShortKey => no action */
- GTYP_KeyActivate= 0x01000000, /* ShortKey => Activate-Gadget */
- GTYP_KeySelect= 0x02000000, /* ShortKey => Select-Gadget */
- GTYP_KeyActSelect= 0x03000000, /* ShortKey => Activate+Select-Gadget */
-
- GTYP_KeyRETURN= 0x04000000, /* is the gadget active, RETURN is the same as click */
-
-
-
- GTYP_DbInWindow= 0x40000000, /* Internal - Debug */
- };
-
-
- /** @{"pOS_DrawBorderBox()" LINK "pGraphicsD/pOS_DrawBorderBox"} **/
- enum pOS_GadgetBorderTypes /** gad_BorderType **/ /* ICLTAG_GadBorderType */
- {
- GADBORTYP_None=0,
- GADBORTYP_BlkBox, /* Black-Box */
- GADBORTYP_BevelUpBox, /* 3D/hochgestellt */
- GADBORTYP_BevelDownBox, /* 3D/tiefgestellt */
- GADBORTYP_RBevelUpBox, /* 3D/hochgestellt/rund */
- GADBORTYP_RBevelDownBox, /* 3D/tiefgestellt/rund */
- GADBORTYP_BevelBox, /* 3D/hoch-/tiefgestellt */
- GADBORTYP_HfBevelUpBox, /* 3D/hochgestellt (halbhell) */
- GADBORTYP_HfBevelDownBox, /* 3D/tiefgestellt (halbhell) */
- GADBORTYP_HfRBevelUpBox, /* 3D/hochgestellt/rund (halbhell) */
- GADBORTYP_HfRBevelDownBox, /* 3D/tiefgestellt/rund (halbhell) */
- GADBORTYP_XBox, /* verzahnte Box für Gruppen-Rahmen */
- GADBORTYP_ZBox, /* Black-White-Black für Boxen mit weißem Inhalt */
- GADBORTYP_Bevel1UpBox, /* wie GADBORTYP_BevelUpBox, aber mit 1Pixel Luft */
- GADBORTYP_Bevel1DownBox, /* wie GADBORTYP_BevelDownBox, aber mit 1Pixel Luft */
- GADBORTYP_StrBox,
- GADBORTYP_RBevelBox, /* 3D/hoch-/tiefgestellt/rund */
-
- GADBORTYP_TypMask = 0x00ff,
-
- GADBORF_BlkOverBorder = 0x0100, /* ... plus Black-Border */
- GADBORF_BgOverBorder = 0x0200, /* ... plus Background-Border */
-
- };
-
-
-
-
-
- /** pOS_CalcGadInner(win,gad,rect,flags) **/
- enum pOS_CalcGadInnerFlags
- {
- CALCGADINF_None = 0x00, /* nothing ;-) */
- CALCGADINF_CalcGadBox = 0x01, /* call @{"pOS_CalcGadgetBox()" LINK "pGadgetD/pOS_CalcGadgetBox"} */
- CALCGADINF_Relativ = 0x02, /* 'rect' relativ to Min (Max-=Min; Min=0) */
- CALCGADINF_Border = 0x04, /* add Border (inner gadget region) */
- CALCGADINF_Lable = 0x08, /* sub Lable-Size */
- CALCGADINF_Absolut = 0x10, /* (~CALCGADINF_Relativ) */
- CALCGADINF_NegBorder = 0x20, /* sub Border (~CALCGADINF_Border) */
- CALCGADINF_NegLable = 0x40, /* add Lable-Size (~CALCGADINF_Lable) */
- };
-
-
-
-
-
- #endif
- @ENDNODE
-