struct SGWork" link Includes/intuition/sghooks.h/MAIN 32}
{
struct Gadget *Gadget;
struct StringInfo *StringInfo;
UBYTE *WorkBuffer;
UBYTE *PrevBuffer;
ULONG Modes;
struct InputEvent *IEvent;
UWORD Code;
WORD BufferPos;
WORD NumChars;
ULONG Actions;
LONG LongInt;
struct GadgetInfo *GadgetInfo;
UWORD EditOp;
};
The local (application) hook may only change the Code, Actions,
WorkBuffer, NumChars, BufferPos and LongInt fields. None of the other
fields in the SGWork structure may be modified.
Gadget and StringInfo
The values in the string gadget before any modification are available
through the Gadget and StringInfo pointers.
PrevBuffer
The PrevBuffer provides a shortcut to the old, unmodified string
buffer.
WorkBuffer, BufferPos, NumChars and LongInt
WorkBuffer, BufferPos, NumChars and LongInt contain the values that
the string gadget will take if the edits are accepted. If the edit
hook updates these values, the gadget will take on the updated values.
IEvent
IEvent contains the input event that caused this call to the hook.
This input event is not keymapped. Only use this event for action
keys, like the Return key, function keys or the Esc key.
Code
If the input event maps to a single character, the keymapped value
will be in the Code field. The Code field may also be modified, and
the value placed in it will be passed back to the application in the
IDCMP_GADGETUP message when SGA_END is specified in the Actions field.
GadgetInfo
A structure of information defined in <intuition/cghooks.h>. This
structure is read only. See the "BOOPSI" chapter for more
information.
Modes
The modes of the gadget such as insert mode, defined below.
Actions
The action taken by the edit hook, defined below.
EditOp
The type of edit operation done by the global hook, defined below.
[Back to Amiga Developer Docs]