palm-os-sdk/sdk-2/include/Core/UI/Control.h
2016-08-25 07:53:48 -03:00

111 lines
2.8 KiB
C

/***********************************************************************
*
* Copyright (c) 1994-1997, Palm Computing Inc., All Rights Reserved
*
* PROJECT: Pilot
* FILE: Control.h
* AUTHOR: Art Lamb: August 29, 1994
*
* DECLARER: UI
*
* DESCRIPTION:
* This file defines check box structures and routines.
*
***********************************************************************/
#ifndef __CONTROL_H__
#define __CONTROL_H__
typedef struct {
Byte usable :1; // set if part of ui
Byte enabled :1; // set if interactable (not grayed out)
Byte visible :1; // set if drawn (set internally)
Byte on :1; // set if on (checked)
Byte leftAnchor :1; // set if bounds expand to the right
// clear if bounds expand to the left
Byte frame :3;
} ControlAttrType;
enum controlStyles {buttonCtl, pushButtonCtl, checkboxCtl, popupTriggerCtl,
selectorTriggerCtl, repeatingButtonCtl};
typedef enum controlStyles ControlStyleType;
enum buttonFrames {noButtonFrame, standardButtonFrame, boldButtonFrame,
rectangleButtonFrame};
typedef enum buttonFrames ButtonFrameType;
typedef struct {
Word id;
RectangleType bounds;
CharPtr text;
ControlAttrType attr;
ControlStyleType style;
FontID font;
Byte group;
} ControlType;
typedef ControlType * ControlPtr;
//----------------------------------------------------------
// Control Functions
//----------------------------------------------------------
#ifdef __cplusplus
extern "C" {
#endif
extern void CtlDrawControl (ControlPtr pControl)
SYS_TRAP(sysTrapCtlDrawControl);
extern void CtlEraseControl (ControlPtr pControl)
SYS_TRAP(sysTrapCtlEraseControl);
extern void CtlHideControl (ControlPtr pControl)
SYS_TRAP(sysTrapCtlHideControl);
extern void CtlShowControl (ControlPtr pControl)
SYS_TRAP(sysTrapCtlShowControl);
extern Boolean CtlEnabled (ControlPtr pControl)
SYS_TRAP(sysTrapCtlEnabled);
extern void CtlSetEnabled (ControlPtr pControl, Boolean usable)
SYS_TRAP(sysTrapCtlSetEnabled);
extern void CtlSetUsable (ControlPtr pControl, Boolean usable)
SYS_TRAP(sysTrapCtlSetUsable);
extern SWord CtlGetValue (ControlPtr pControl)
SYS_TRAP(sysTrapCtlGetValue);
extern void CtlSetValue (ControlPtr pControl, SWord newValue)
SYS_TRAP(sysTrapCtlSetValue);
extern CharPtr CtlGetLabel (ControlPtr pControl)
SYS_TRAP(sysTrapCtlGetLabel);
extern void CtlSetLabel (ControlPtr pControl, CharPtr newLabel)
SYS_TRAP(sysTrapCtlSetLabel);
extern void CtlHitControl (ControlPtr pControl)
SYS_TRAP(sysTrapCtlHitControl);
extern Boolean CtlHandleEvent (ControlPtr pControl, EventPtr pEvent)
SYS_TRAP(sysTrapCtlHandleEvent);
#ifdef __cplusplus
}
#endif
#endif //__CONTROL_H__