Single Photo displayed on LPC4088
Dependencies: DMBasicGUI DMSupport
easyGUIFixed/GuiLib.h
- Committer:
- jmitc91516
- Date:
- 2017-07-28
- Revision:
- 0:9140ec6aa604
File content as of revision 0:9140ec6aa604:
/* ************************************************************************ */ /* */ /* (C)2004-2015 IBIS Solutions ApS */ /* sales@easyGUI.com */ /* www.easyGUI.com */ /* */ /* v6.0.9.005 */ /* */ /* ************************************************************************ */ // ============================================================================= #ifndef __GUILIB_H #define __GUILIB_H #include "GuiConst.h" #include "GuiVar.h" #include "GuiDisplay.h" #ifdef __cplusplus /* If this is a C++ compiler, use C linkage */ extern "C" { #endif // ============================================================================= #ifdef GuiConst_CODEVISION_COMPILER // Remove warnings about unused functions #pragma used+ #endif // ============================================================================= #ifdef GuiConst_COLOR_DEPTH_5 #define GuiLib_COLOR_UNIT_8 #define GuiLib_LAYERS_SUPPORTED #endif #ifdef GuiConst_COLOR_DEPTH_8 #define GuiLib_COLOR_UNIT_8 #define GuiLib_LAYERS_SUPPORTED #endif #ifdef GuiConst_COLOR_DEPTH_12 #define GuiLib_COLOR_UNIT_16 #define GuiLib_LAYERS_SUPPORTED #endif #ifdef GuiConst_COLOR_DEPTH_15 #define GuiLib_COLOR_UNIT_16 #define GuiLib_LAYERS_SUPPORTED #endif #ifdef GuiConst_COLOR_DEPTH_16 #define GuiLib_COLOR_UNIT_16 #define GuiLib_LAYERS_SUPPORTED #endif #ifdef GuiConst_COLOR_DEPTH_18 #define GuiLib_COLOR_UNIT_24 #define GuiLib_LAYERS_SUPPORTED #endif #ifdef GuiConst_COLOR_DEPTH_24 #define GuiLib_COLOR_UNIT_24 #define GuiLib_LAYERS_SUPPORTED #endif #ifdef GuiConst_COLOR_DEPTH_32 #define GuiLib_COLOR_UNIT_32 #define GuiLib_LAYERS_SUPPORTED #endif // ============================================================================= #ifdef GuiConst_AVR_COMPILER_FLASH_RAM #define PrefixRom __flash #define PrefixGeneric __generic #define PrefixReentrant #define PrefixLocate #else #ifdef GuiConst_PICC_COMPILER_ROM #define PrefixRom rom #define PrefixGeneric #define PrefixReentrant #define PrefixLocate #else #ifdef GuiConst_KEIL_COMPILER_REENTRANT #define PrefixRom #define PrefixGeneric #define PrefixReentrant reentrant #define PrefixLocate #else #ifdef GuiConst_ICC_COMPILER #define PrefixRom const #define PrefixGeneric #define PrefixReentrant #define PrefixLocate #else #ifdef GuiConst_CODEVISION_COMPILER #define PrefixRom flash #define PrefixGeneric #define PrefixReentrant #define PrefixLocate #else #ifdef GuiConst_RENESAS_COMPILER_FAR #define PrefixRom _far #define PrefixGeneric _far #define PrefixReentrant #define PrefixLocate _far #else #define PrefixRom #define PrefixGeneric #define PrefixReentrant #define PrefixLocate #endif #endif #endif #endif #endif #endif // ============================================================================= #ifdef GuiConst_COLOR_DEPTH_1 #define GuiLib_COLOR_BYTESIZE_1 #endif #ifdef GuiConst_COLOR_DEPTH_2 #define GuiLib_COLOR_BYTESIZE_1 #endif #ifdef GuiConst_COLOR_DEPTH_4 #define GuiLib_COLOR_BYTESIZE_1 #endif #ifdef GuiConst_COLOR_DEPTH_5 #define GuiLib_COLOR_BYTESIZE_1 #endif #ifdef GuiConst_COLOR_DEPTH_8 #define GuiLib_COLOR_BYTESIZE_1 #endif #ifdef GuiConst_COLOR_DEPTH_12 #define GuiLib_COLOR_BYTESIZE_2 #endif #ifdef GuiConst_COLOR_DEPTH_15 #define GuiLib_COLOR_BYTESIZE_2 #endif #ifdef GuiConst_COLOR_DEPTH_16 #define GuiLib_COLOR_BYTESIZE_2 #endif #ifdef GuiConst_COLOR_DEPTH_18 #define GuiLib_COLOR_BYTESIZE_3 #endif #ifdef GuiConst_COLOR_DEPTH_24 #define GuiLib_COLOR_BYTESIZE_3 #endif #ifdef GuiConst_COLOR_DEPTH_32 #define GuiLib_COLOR_BYTESIZE_3 #endif #define GuiLib_NO_CURSOR -1 #define GuiLib_NO_RESET_AUTO_REDRAW 0 #define GuiLib_RESET_AUTO_REDRAW 1 #define GuiLib_ALIGN_NOCHANGE 0 #define GuiLib_ALIGN_LEFT 1 #define GuiLib_ALIGN_CENTER 2 #define GuiLib_ALIGN_RIGHT 3 #define GuiLib_PS_NOCHANGE 0 #define GuiLib_PS_OFF 1 #define GuiLib_PS_ON 2 #define GuiLib_PS_NUM 3 #define GuiLib_TRANSPARENT_OFF 0 #define GuiLib_TRANSPARENT_ON 1 #define GuiLib_UNDERLINE_OFF 0 #define GuiLib_UNDERLINE_ON 1 #define GuiLib_BBP_NONE 0 #define GuiLib_BBP_LEFT 1 #define GuiLib_BBP_RIGHT 2 #define GuiLib_BBP_TOP 4 #define GuiLib_BBP_BOTTOM 8 #define GuiLib_VAR_BOOL 0 #define GuiLib_VAR_UNSIGNED_CHAR 1 #define GuiLib_VAR_SIGNED_CHAR 2 #define GuiLib_VAR_UNSIGNED_INT 3 #define GuiLib_VAR_SIGNED_INT 4 #define GuiLib_VAR_UNSIGNED_LONG 5 #define GuiLib_VAR_SIGNED_LONG 6 #define GuiLib_VAR_FLOAT 7 #define GuiLib_VAR_DOUBLE 8 #define GuiLib_VAR_STRING 9 #define GuiLib_VAR_COLOR 10 #define GuiLib_VAR_NONE 255 #define GuiLib_FORMAT_DEC 0 #define GuiLib_FORMAT_EXP 1 #define GuiLib_FORMAT_HEX_POSTFIX_H 2 #define GuiLib_FORMAT_TIME_MMSS 3 #define GuiLib_FORMAT_TIME_HHMM_24 4 #define GuiLib_FORMAT_TIME_HHMMSS_24 5 #define GuiLib_FORMAT_TIME_HHMM_12_ampm 6 #define GuiLib_FORMAT_TIME_HHMMSS_12_ampm 7 #define GuiLib_FORMAT_TIME_HHMM_12_AMPM 8 #define GuiLib_FORMAT_TIME_HHMMSS_12_AMPM 9 #define GuiLib_FORMAT_HEX_PREFIX_0X 10 #define GuiLib_FORMAT_HEX_CLEAN 11 #define GuiLib_FORMAT_ALIGNMENT_LEFT 0 #define GuiLib_FORMAT_ALIGNMENT_CENTER 1 #define GuiLib_FORMAT_ALIGNMENT_RIGHT 2 #define GuiLib_DECIMAL_PERIOD 0 #define GuiLib_DECIMAL_COMMA 1 #define GuiLib_LANGUAGE_TEXTDIR_LEFTTORIGHT 0 #define GuiLib_LANGUAGE_TEXTDIR_RIGHTTOLEFT 1 #define GuiLib_TEXTBOX_SCROLL_ILLEGAL_NDX 0 #define GuiLib_TEXTBOX_SCROLL_INSIDE_BLOCK 1 #define GuiLib_TEXTBOX_SCROLL_AT_HOME 2 #define GuiLib_TEXTBOX_SCROLL_AT_END 3 #define GuiLib_TEXTBOX_SCROLL_ABOVE_HOME 4 #define GuiLib_TEXTBOX_SCROLL_BELOW_END 5 #define GuiLib_BUTTON_STATE_UP 0 #define GuiLib_BUTTON_STATE_DOWN 1 #define GuiLib_BUTTON_STATE_DISABLED 2 #define GuiLib_CHECKBOX_OFF 0 #define GuiLib_CHECKBOX_ON 1 #define GuiLib_RADIOBUTTON_OFF -1 #define GuiLib_NO_COLOR 0x10000000 // ============================================================================= typedef struct { GuiConst_INT16S ByteBegin; GuiConst_INT16S ByteEnd; } GuiLib_DisplayLineRec; #ifdef GuiConst_CODEVISION_COMPILER typedef flash struct #else typedef struct #endif { #ifdef GuiConst_CHARMODE_ANSI GuiConst_INT8U FirstChar; GuiConst_INT8U LastChar; GuiConst_INT16U FirstCharNdx; GuiConst_INT16U IllegalCharNdx; #else GuiConst_INT16U CharCount; GuiConst_INT32U FirstCharNdx; #endif GuiConst_INT8U XSize, YSize; #ifdef GuiConst_ADV_FONTS_ON GuiConst_INT8U ColorDepth; #endif GuiConst_INT8U TopLine, MidLine, BaseLine; GuiConst_INT8U Cursor1, Cursor2; GuiConst_INT8U Underline1, Underline2; GuiConst_INT8U BoxWidth; GuiConst_INT8U PsNumWidth; GuiConst_INT8U PsSpace; GuiConst_INT8U LineSize; } GuiLib_FontRec; #ifdef GuiConst_ICC_COMPILER typedef GuiLib_FontRec PrefixRom *GuiLib_FontRecPtr; typedef const GuiLib_FontRec * GuiLib_FontRecConstPtr; #else #ifdef GuiConst_CODEVISION_COMPILER typedef flash GuiLib_FontRec *GuiLib_FontRecPtr; typedef flash GuiLib_FontRec *GuiLib_FontRecConstPtr; #else typedef GuiLib_FontRec PrefixRom *GuiLib_FontRecPtr; typedef const GuiLib_FontRec PrefixRom *GuiLib_FontRecConstPtr; #endif #endif #ifdef GuiConst_ITEM_GRAPH_INUSE typedef struct { GuiConst_INT32S X; GuiConst_INT32S Y; } GuiLib_GraphDataPoint; #endif // ============================================================================= #ifdef GuiConst_DISPLAY_BUFFER_EASYGUI #ifdef GuiConst_COLOR_DEPTH_1 extern GuiConst_INT8U GuiLib_DisplayBuf[GuiConst_BYTE_LINES][GuiConst_BYTES_PR_LINE]; #endif #ifdef GuiConst_COLOR_DEPTH_2 #ifdef GuiConst_COLOR_PLANES_2 extern GuiConst_INT8U GuiLib_DisplayBuf[2][GuiConst_BYTE_LINES][GuiConst_BYTES_PR_LINE]; #else extern GuiConst_INT8U GuiLib_DisplayBuf[GuiConst_BYTE_LINES][GuiConst_BYTES_PR_LINE]; #endif #endif #ifdef GuiConst_COLOR_DEPTH_4 #ifdef GuiConst_COLOR_PLANES_4 extern GuiConst_INT8U GuiLib_DisplayBuf[4][GuiConst_BYTE_LINES][GuiConst_BYTES_PR_LINE]; #else extern GuiConst_INT8U GuiLib_DisplayBuf[GuiConst_BYTE_LINES][GuiConst_BYTES_PR_LINE]; #endif #endif #ifdef GuiConst_COLOR_DEPTH_5 extern GuiConst_INT8U GuiLib_DisplayBuf[GuiConst_BYTE_LINES][GuiConst_BYTES_PR_LINE]; #endif #ifdef GuiConst_COLOR_DEPTH_8 extern GuiConst_INT8U GuiLib_DisplayBuf[GuiConst_BYTE_LINES][GuiConst_BYTES_PR_LINE]; #endif #ifdef GuiConst_COLOR_DEPTH_12 typedef union { GuiConst_INT8U Bytes[GuiConst_BYTE_LINES][GuiConst_BYTES_PR_LINE]; GuiConst_INT16U Words[GuiConst_BYTE_LINES][GuiConst_BYTES_PR_LINE / 2]; } DisplayBufUnion; extern DisplayBufUnion GuiLib_DisplayBuf; #endif #ifdef GuiConst_COLOR_DEPTH_15 typedef union { GuiConst_INT8U Bytes[GuiConst_BYTE_LINES][GuiConst_BYTES_PR_LINE]; GuiConst_INT16U Words[GuiConst_BYTE_LINES][GuiConst_BYTES_PR_LINE / 2]; } DisplayBufUnion; extern DisplayBufUnion GuiLib_DisplayBuf; #endif #ifdef GuiConst_COLOR_DEPTH_16 typedef union { GuiConst_INT8U Bytes[GuiConst_BYTE_LINES][GuiConst_BYTES_PR_LINE]; GuiConst_INT16U Words[GuiConst_BYTE_LINES][GuiConst_BYTES_PR_LINE / 2]; } DisplayBufUnion; extern DisplayBufUnion GuiLib_DisplayBuf; #endif #ifdef GuiConst_COLOR_DEPTH_18 extern GuiConst_INT8U GuiLib_DisplayBuf[GuiConst_BYTE_LINES][GuiConst_BYTES_PR_LINE]; #endif #ifdef GuiConst_COLOR_DEPTH_24 extern GuiConst_INT8U GuiLib_DisplayBuf[GuiConst_BYTE_LINES][GuiConst_BYTES_PR_LINE]; #endif #ifdef GuiConst_COLOR_DEPTH_32 extern GuiConst_INT8U GuiLib_DisplayBuf[GuiConst_BYTE_LINES][GuiConst_BYTES_PR_LINE]; #endif #endif extern GuiLib_DisplayLineRec GuiLib_DisplayRepaint[GuiConst_BYTE_LINES]; #ifdef GuiConst_VNC_REMOTE_SUPPORT_ON extern GuiLib_DisplayLineRec GuiLib_VncRepaint[GuiConst_BYTE_LINES]; #endif // GuiConst_VNC_REMOTE_SUPPORT_ON #ifdef GuiConst_CURSOR_SUPPORT_ON extern GuiConst_INT16S GuiLib_ActiveCursorFieldNo; #endif extern GuiConst_INT16S GuiLib_LanguageIndex; extern GuiConst_INT16S GuiLib_CurStructureNdx; #ifdef GuiConst_ALLOW_UPSIDEDOWN_AT_RUNTIME extern GuiConst_INT8U GuiLib_DisplayUpsideDown; #endif #ifdef GuiConst_REMOTE_DATA extern void (*GuiLib_RemoteDataReadBlock) ( GuiConst_INT32U SourceOffset, GuiConst_INT32U SourceSize, GuiConst_INT8U * TargetAddr); #ifdef GuiConst_REMOTE_TEXT_DATA extern void (*GuiLib_RemoteTextReadBlock) ( GuiConst_INT32U SourceOffset, GuiConst_INT32U SourceSize, void * TargetAddr); #endif #endif // ============================================================================= #include "GuiFont.h" #include "GuiStruct.h" // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_DegToRad // =============== // // Converts angle from degrees to radians. // // Input: // ------ // Angle in degrees * 10 (1° = 10) // // Output: // ------- // Angle in radians * 4096 (1 rad = 4096) // extern GuiConst_INT32S GuiLib_DegToRad( GuiConst_INT32S Angle); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_RadToDeg // =============== // // Converts angle from radians to degrees. // // Input: // ------ // Angle in radians * 4096 (1 rad = 4096) // // Output: // ------- // Angle in degrees * 10 (1° = 10) // extern GuiConst_INT32S GuiLib_RadToDeg( GuiConst_INT32S Angle); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_SinRad // ============= // // Calculates Sin(angle), where angle is in radians (factored). // // Input: // ------ // Angle in radians * 4096 (1 rad = 4096) // // Output: // ------- // Sine of angle in 1/4096 units // extern GuiConst_INT32S GuiLib_SinRad( GuiConst_INT32S Angle); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_SinDeg // ============= // // Calculates Sin(angle), where angle is in degrees (factored). // // Input: // ------ // Angle in degrees * 10 (1° = 10) // // Output: // ------- // Sine of angle in 1/4096 units // extern GuiConst_INT32S GuiLib_SinDeg( GuiConst_INT32S Angle); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_CosRad // ============= // // Calculates Cos(angle), where angle is in radians (factored). // // Input: // ------ // Angle in radians * 4096 (1 rad = 4096) // // Output: // ------- // Cosine of angle in 1/4096 units // extern GuiConst_INT32S GuiLib_CosRad( GuiConst_INT32S Angle); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_CosDeg // ============= // // Calculates Cos(angle), where angle is in degrees (factored). // // Input: // ------ // Angle in degrees * 10 (1° = 10) // // Output: // ------- // Cosine of angle in 1/4096 units // extern GuiConst_INT32S GuiLib_CosDeg( GuiConst_INT32S Angle); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_Sqrt // =========== // // Returns Square root of argument. // // Input: // ------ // Argument // // Output: // ------- // Square root of argument // extern GuiConst_INT32U GuiLib_Sqrt( GuiConst_INT32U X); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_GetRedRgbColor // ===================== // // Extracts red component from RGB color. // // Input: // ------ // 24 bit RGB color // // Output: // ------- // 8 bit red color component // extern GuiConst_INT8U GuiLib_GetRedRgbColor( GuiConst_INT32U RgbColor); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_SetRedRgbColor // ===================== // // Sets red component from RGB color. // // Input: // ------ // 24 bit RGB color // 8 bit red color component // // Output: // ------- // 24 bit RGB color // extern GuiConst_INT32U GuiLib_SetRedRgbColor( GuiConst_INT32U RgbColor, GuiConst_INT8U RedColor); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_GetGreenRgbColor // ======================= // // Extracts green component from RGB color. // // Input: // ------ // 24 bit RGB color // // Output: // ------- // 8 bit green color component // extern GuiConst_INT8U GuiLib_GetGreenRgbColor( GuiConst_INT32U RgbColor); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_SetGreenRgbColor // ======================= // // Sets green component from RGB color. // // Input: // ------ // 24 bit RGB color // 8 bit green color component // // Output: // ------- // 24 bit RGB color // extern GuiConst_INT32U GuiLib_SetGreenRgbColor( GuiConst_INT32U RgbColor, GuiConst_INT8U GreenColor); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_GetBlueRgbColor // ====================== // // Extracts blue component from RGB color. // // Input: // ------ // 24 bit RGB color // // Output: // ------- // 8 bit blue color component // extern GuiConst_INT8U GuiLib_GetBlueRgbColor( GuiConst_INT32U RgbColor); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_SetBlueRgbColor // ====================== // // Sets blue component from RGB color. // // Input: // ------ // 24 bit RGB color // 8 bit blue color component // // Output: // ------- // 24 bit RGB color // extern GuiConst_INT32U GuiLib_SetBlueRgbColor( GuiConst_INT32U RgbColor, GuiConst_INT8U BlueColor); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_RgbToPixelColor // ====================== // // Translates from RGB color to proper pixel value for display controller // color setup. // // Input: // ------ // RGB color value // (32 bit, 24 bits used, low byte = Red, middle byte = Green, high byte = Blue) // // Output: // ------- // Encoded pixel color value // extern GuiConst_INTCOLOR GuiLib_RgbToPixelColor( GuiConst_INT32U RgbColor); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_Rgb888ToPixelColor // ========================= // // Translates from RGB color components to proper pixel value for display // controller color setup. // // Input: // ------ // Red color value // Green color value // Blue color value // // Output: // ------- // Encoded pixel color value // GuiConst_INTCOLOR GuiLib_Rgb888ToPixelColor( GuiConst_INT8U Red, GuiConst_INT8U Green, GuiConst_INT8U Blue); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_PixelToRgbColor // ====================== // // Translates from pixel value for display controller color setup to RGB color. // // Input: // ------ // Encoded pixel color value // // Output: // ------- // RGB color value // (32 bit, 24 bits used, low byte = Red, middle byte = Green, high byte = Blue) // extern GuiConst_INT32U GuiLib_PixelToRgbColor( GuiConst_INTCOLOR PixelColor); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_RgbColorToGrayScale // ========================== // // Translates from RGB color to 0~255 gray scale value. // // Input: // ------ // RGB color value // (32 bit, 24 bits used, low byte = Red, middle byte = Green, high byte = Blue) // // Output: // ------- // Gray scale value, 0~255 // extern GuiConst_INT8U GuiLib_RgbColorToGrayScale( GuiConst_INT32U RgbColor); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_Rgb888ColorToGrayScale // ============================= // // Translates from RGB color components to a 0~255 grayscale value. // // Input: // ------ // Red color value // Green color value // Blue color value // // Output: // ------- // Gray scale value, 0~255 // GuiConst_INT8U GuiLib_Rgb888ColorToGrayScale( GuiConst_INT8U Red, GuiConst_INT8U Green, GuiConst_INT8U Blue); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_GrayScaleToRgbColor // ========================== // // Translates from 0~255 gray scale value to RGB color. // // Input: // ------ // Gray scale value, 0~255 // // Output: // ------- // RGB color value // (32 bit, 24 bits used, low byte = Red, middle byte = Green, high byte = Blue) // extern GuiConst_INT32U GuiLib_GrayScaleToRgbColor( GuiConst_INT8U GrayValue); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_PixelColorToGrayScale // ============================ // // Translates from pixel value for display controller color setup to 0~255 gray // scale value. // // Input: // ------ // Encoded pixel color value // // Output: // ------- // Gray scale value, 0~255 // extern GuiConst_INT8U GuiLib_PixelColorToGrayScale( GuiConst_INTCOLOR PixelColor); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_GrayScaleToPixelColor // ============================ // // Translates from gray scale value to display controller color setup. // // Input: // ------ // Gray scale value, 0~255 // // Output: // ------- // Encoded pixel color value // extern GuiConst_INTCOLOR GuiLib_GrayScaleToPixelColor( GuiConst_INT8U GrayValue); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_BrightenRgbColor // ======================= // // Brightens RGB color 0~1000‰, 1000‰ results in pure white. // // Input: // ------ // RGB color value // (32 bit, 24 bits used, low byte = Red, middle byte = Green, high byte = Blue) // Brighten value, 0 ~ 1000‰ // // Output: // ------- // RGB color value // (32 bit, 24 bits used, low byte = Red, middle byte = Green, high byte = Blue) // extern GuiConst_INT32U GuiLib_BrightenRgbColor( GuiConst_INT32U RgbColor, GuiConst_INT16U Amount); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_BrightenPixelColor // ========================= // // Brightens color in display controller color setup 0~1000‰, 1000‰ results in // pure white. // // Input: // ------ // Encoded pixel color value // Brighten value, 0 ~ 1000‰ // // Output: // ------- // Encoded pixel color value // extern GuiConst_INTCOLOR GuiLib_BrightenPixelColor( GuiConst_INTCOLOR PixelColor, GuiConst_INT16U Amount); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_DarkenRgbColor // ===================== // // Darkens RGB color 0~1000‰, 1000‰ results in pure black. // // Input: // ------ // RGB color value // (32 bit, 24 bits used, low byte = Red, middle byte = Green, high byte = Blue) // Darken value, 0 ~ 1000‰ // // Output: // ------- // RGB color value // (32 bit, 24 bits used, low byte = Red, middle byte = Green, high byte = Blue) // extern GuiConst_INT32U GuiLib_DarkenRgbColor( GuiConst_INT32U RgbColor, GuiConst_INT16U Amount); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_DarkenPixelColor // ======================= // // Darkens color in display controller color setup 0~1000‰, 1000‰ results in // pure black. // // Input: // ------ // Encoded pixel color value // Darken value, 0 ~ 1000‰ // // Output: // ------- // Encoded pixel color value // extern GuiConst_INTCOLOR GuiLib_DarkenPixelColor( GuiConst_INTCOLOR PixelColor, GuiConst_INT16U Amount); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_MiddleRgbColor // ===================== // // Gives middle color, between color 1 and color 2. // Ratio in 0~1000‰, 0‰ gives color 1, 1000‰ gives color 2. // // Input: // ------ // RGB color 1 value // RGB color 2 value // (32 bit, 24 bits used, low byte = Red, middle byte = Green, high byte = Blue) // Color ratio, 0 ~ 1000‰ // // Output: // ------- // RGB color value // (32 bit, 24 bits used, low byte = Red, middle byte = Green, high byte = Blue) // extern GuiConst_INT32U GuiLib_MiddleRgbColor( GuiConst_INT32U RgbColor1, GuiConst_INT32U RgbColor2, GuiConst_INT16U Amount); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_MiddlePixelColor // ======================= // // Gives middle color in display controller color setup, // between color 1 and color 2. // Ratio in 0~1000‰, 0‰ gives color 1, 1000‰ gives color 2. // // Input: // ------ // Encoded pixel color 1 value // Encoded pixel color 2 value // Color ratio, 0 ~ 1000‰ // // Output: // ------- // Encoded pixel color value // extern GuiConst_INTCOLOR GuiLib_MiddlePixelColor( GuiConst_INTCOLOR PixelColor1, GuiConst_INTCOLOR PixelColor2, GuiConst_INT16U Amount); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_DesaturateRgbColor // ========================= // // Removes saturation from color, turning it towards gray color. // Ratio in 0~1000‰, 0‰ gives color 1, 1000‰ gives gray. // // Input: // ------ // RGB color value // (32 bit, 24 bits used, low byte = Red, middle byte = Green, high byte = Blue) // Desaturation ratio, 0 ~ 1000‰ // // Output: // ------- // RGB color value // (32 bit, 24 bits used, low byte = Red, middle byte = Green, high byte = Blue) // extern GuiConst_INT32U GuiLib_DesaturateRgbColor( GuiConst_INT32U RgbColor, GuiConst_INT16U Amount); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_DesaturatePixelColor // =========================== // // Removes saturation from color, turning it towards gray color. // Ratio in 0~1000‰, 0‰ gives color 1, 1000‰ gives gray. // // Input: // ------ // Encoded pixel color value // Color ratio, 0 ~ 1000‰ // // Output: // ------- // Encoded pixel color value // extern GuiConst_INTCOLOR GuiLib_DesaturatePixelColor( GuiConst_INTCOLOR PixelColor, GuiConst_INT16U Amount); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_AccentuateRgbColor // ========================= // // Accentuates RGB color. Colors with less than 50% mean gray are made darker, // otherwise brighter. Amount in ‰, 0‰ gives no change, 1000‰ gives pure black // or white. // // Input: // ------ // RGB color value // (32 bit, 24 bits used, low byte = Red, middle byte = Green, high byte = Blue) // Accentuate value, 0 ~ 1000‰ // // Output: // ------- // RGB color value // (32 bit, 24 bits used, low byte = Red, middle byte = Green, high byte = Blue) // extern GuiConst_INT32U GuiLib_AccentuateRgbColor( GuiConst_INT32U RgbColor, GuiConst_INT16U Amount); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_AccentuatePixelColor // =========================== // // Accentuates color in display controller color setup. Colors with less than // 50% mean gray are made darker, otherwise brighter. Amount in ‰, 0‰ gives no // change, 1000‰ gives pure black or white. // // Input: // ------ // Encoded pixel color value // Accentuate value, 0 ~ 1000‰ // // Output: // ------- // Encoded pixel color value // extern GuiConst_INTCOLOR GuiLib_AccentuatePixelColor( GuiConst_INTCOLOR PixelColor, GuiConst_INT16U Amount); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_SetButtonDisabledColor // ============================= // // Override automatic generation of button disabled color with the specified // pixel color value. // // Input: // ------ // Encoded pixel color value // // Output: // ------- // Encoded pixel color value // GuiConst_INTCOLOR GuiLib_SetButtonDisabledColor(GuiConst_INTCOLOR PixelColor); // ----------------------------------------------------------------------------- #ifdef GuiConst_CLIPPING_SUPPORT_ON // ============================================================================= // GuiLib_ResetClipping // ==================== // // Resets clipping. // Drawing can be limited to a rectangular portion of the screen, // this routine resets the clipping limits to the entire screen. // // Input: // ------ // None // // Output: // ------- // None // extern void GuiLib_ResetClipping(void); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_SetClipping // ================== // // Sets clipping. // Drawing can be limited to a rectangular portion of the screen, // this routine sets the clipping limits expressed as two opposite // corner coordinates. // // Input: // ------ // Rectangle coordinates // // Output: // ------- // None // extern void GuiLib_SetClipping( GuiConst_INT16S X1, GuiConst_INT16S Y1, GuiConst_INT16S X2, GuiConst_INT16S Y2); // ----------------------------------------------------------------------------- #endif // ============================================================================= // GuiLib_ResetDisplayRepaint // ========================== // // Resets all repainting scan line markers. // // Input: // ------ // None // // Output: // ------- // None // extern void GuiLib_ResetDisplayRepaint(void); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_MarkDisplayBoxRepaint // ============================ // // Sets the repainting scan line markers, indicating that all pixels inside the // specified rectangle must be repainted. // // Input: // ------ // Rectangle coordinates // // Output: // ------- // None // extern void GuiLib_MarkDisplayBoxRepaint( GuiConst_INT16S X1, GuiConst_INT16S Y1, GuiConst_INT16S X2, GuiConst_INT16S Y2); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_ClearDisplay // =================== // // Clears the screen. // // Input: // ------ // None // // Output: // ------- // None // extern void GuiLib_ClearDisplay(void); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_Dot // ========== // // Draws a single pixel. // // Input: // ------ // Coordinates // Color // // Output: // ------- // None // extern void GuiLib_Dot( GuiConst_INT16S X, GuiConst_INT16S Y, GuiConst_INTCOLOR Color); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_GetDot // ============= // // Returns the color of a single pixel. // // Input: // ------ // Coordinates // // Output: // ------- // Color // extern GuiConst_INTCOLOR GuiLib_GetDot( GuiConst_INT16S X, GuiConst_INT16S Y); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_Line // =========== // // Draws a line. // // Input: // ------ // Coordinates // Color // // Output: // ------- // None // extern void GuiLib_Line( GuiConst_INT16S X1, GuiConst_INT16S Y1, GuiConst_INT16S X2, GuiConst_INT16S Y2, GuiConst_INTCOLOR Color); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_LinePattern // ================== // // Draws a patterned line. // // Input: // ------ // Coordinates // Line pattern (8 pixel pattern) // Color // // Output: // ------- // None // extern void GuiLib_LinePattern( GuiConst_INT16S X1, GuiConst_INT16S Y1, GuiConst_INT16S X2, GuiConst_INT16S Y2, GuiConst_INT8U LinePattern, GuiConst_INTCOLOR Color); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_HLine // ============ // // Draws a horizontal line. // // Input: // ------ // Coordinates // Color // // Output: // ------- // None // extern void GuiLib_HLine( GuiConst_INT16S X1, GuiConst_INT16S X2, GuiConst_INT16S Y, GuiConst_INTCOLOR Color); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_VLine // ============ // // Draws a vertical line. // // Input: // ------ // Coordinates // Color // // Output: // ------- // None // extern void GuiLib_VLine( GuiConst_INT16S X, GuiConst_INT16S Y1, GuiConst_INT16S Y2, GuiConst_INTCOLOR Color); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_Box // ========== // // Draws a single pixel wide rectangle. // // Input: // ------ // Coordinates // Color // // Output: // ------- // None // extern void GuiLib_Box( GuiConst_INT16S X1, GuiConst_INT16S Y1, GuiConst_INT16S X2, GuiConst_INT16S Y2, GuiConst_INTCOLOR Color); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_FillBox // ============== // // Draws a filled rectangle. // // Input: // ------ // Coordinates // Color // // Output: // ------- // None // extern void GuiLib_FillBox( GuiConst_INT16S X1, GuiConst_INT16S Y1, GuiConst_INT16S X2, GuiConst_INT16S Y2, GuiConst_INTCOLOR Color); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_BorderBox // ================ // // Draws a filled rectangle with single pixel border. // // Input: // ------ // Coordinates // Border and fill colors // // Output: // ------- // None // extern void GuiLib_BorderBox( GuiConst_INT16S X1, GuiConst_INT16S Y1, GuiConst_INT16S X2, GuiConst_INT16S Y2, GuiConst_INTCOLOR BorderColor, GuiConst_INTCOLOR FillColor); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_InvertBox // ================ // // Inverts a block. // // Input: // ------ // Coordinates // // Output: // ------- // None // extern void GuiLib_InvertBox( GuiConst_INT16S X1, GuiConst_INT16S Y1, GuiConst_INT16S X2, GuiConst_INT16S Y2); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_Circle // ============= // // Draws a filled or framed circle with single pixel width border. // // Input: // ------ // Center coordinate // Radius // Border color, GuiLib_NO_COLOR means same color as fill color // Fill color, GuiLib_NO_COLOR means no filling // // Output: // ------- // None // extern void GuiLib_Circle( GuiConst_INT16S X, GuiConst_INT16S Y, GuiConst_INT16U Radius, GuiConst_INT32S BorderColor, GuiConst_INT32S FillColor); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_Ellipse // ============== // // Draws a filled or framed ellipse with single pixel width border. // // Input: // ------ // Center coordinate // Horizontal and vertical radii // Border color, GuiLib_NO_COLOR means same color as fill color // Fill color, GuiLib_NO_COLOR means no filling // // Output: // ------- // None // extern void GuiLib_Ellipse( GuiConst_INT16S X, GuiConst_INT16S Y, GuiConst_INT16U Radius1, GuiConst_INT16U Radius2, GuiConst_INT32S BorderColor, GuiConst_INT32S FillColor); // ----------------------------------------------------------------------------- #ifdef GuiConst_BITMAP_SUPPORT_ON // ============================================================================= // GuiLib_ShowBitmap // ================= // // Displays a stored bitmap. // // Input: // ------ // Bitmap index in GuiStruct_BitmapPtrList // Coordinates for upper left corner // Transparent background color, -1 means no transparency // // Output: // ------- // None // extern void GuiLib_ShowBitmap( GuiConst_INT16U BitmapIndex, GuiConst_INT16S X, GuiConst_INT16S Y, GuiConst_INT32S TranspColor); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_ShowBitmapAt // =================== // // Displays a bitmap at a specific address. // The data in the memory area must conform to the format explained in the // easyGUI user manual. // // Input: // ------ // Pointer to memory area // Coordinates for upper left corner // Transparent background color, -1 means no transparency // // Output: // ------- // None // extern void GuiLib_ShowBitmapAt( GuiConst_INT8U * BitmapPtr, GuiConst_INT16S X, GuiConst_INT16S Y, GuiConst_INT32S TranspColor); // ----------------------------------------------------------------------------- // ============================================================================ // GuiLib_ShowBitmapArea // ===================== // // Displays part of a stored bitmap. // // Input: // ------ // Bitmap index in GuiStruct_BitmapPtrList // Starting coordinates for upper left corner of bitmap // Absolute coordinates for upper left and lower right corner of displayed area // Transparent background color, -1 means no transparency // // Output: // ------- // None // extern void GuiLib_ShowBitmapArea( GuiConst_INT16U BitmapIndex, GuiConst_INT16S X, GuiConst_INT16S Y, GuiConst_INT16S AX1, GuiConst_INT16S AY1, GuiConst_INT16S AX2, GuiConst_INT16S AY2, GuiConst_INT32S TranspColor); // ----------------------------------------------------------------------------- // ============================================================================ // GuiLib_ShowBitmapAreaAt // ======================= // // Displays part of a bitmap at a specific address. // The data in the memory area must conform to the format explained in the // easyGUI user manual. // // Input: // ------ // Pointer to memory area // Starting coordinates for upper left corner of bitmap // Absolute coordinates for upper left and lower right corner of displayed area // Transparent background color, -1 means no transparency // // Output: // ------- // None // extern void GuiLib_ShowBitmapAreaAt( GuiConst_INT8U * BitmapPtr, GuiConst_INT16S X, GuiConst_INT16S Y, GuiConst_INT16S AX1, GuiConst_INT16S AY1, GuiConst_INT16S AX2, GuiConst_INT16S AY2, GuiConst_INT32S TranspColor); // ----------------------------------------------------------------------------- #endif // ============================================================================= // GuiLib_DrawChar // =============== // // Draws a single character on the display. // // Input: // ------ // Coordinates // Font index // Character // Color // // Output: // ------- // None // extern void GuiLib_DrawChar( GuiConst_INT16S X, GuiConst_INT16S Y, GuiConst_INT16U FontNo, GuiConst_TEXT Character, GuiConst_INTCOLOR Color); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_DrawStr // ============== // // Draws a text string on the display. // // Input: // ------ // Coordinates // Font index // Text string // Alignment // Ps mode // Transparent // Underlining // Back box size X (0 = none) // Back box size Y1 (height above base line, 0 = default font box) // Back box size Y2 (height below base line, 0 = default font box) // Extra back box pixels // Text color // Background box color // // Output: // ------- // None // extern void GuiLib_DrawStr( GuiConst_INT16S X, GuiConst_INT16S Y, GuiConst_INT16U FontNo, GuiConst_TEXT PrefixLocate *String, GuiConst_INT8U Alignment, GuiConst_INT8U PsWriting, GuiConst_INT8U Transparent, GuiConst_INT8U Underlining, GuiConst_INT16S BackBoxSizeX, GuiConst_INT16S BackBoxSizeY1, GuiConst_INT16S BackBoxSizeY2, GuiConst_INT8U BackBorderPixels, GuiConst_INTCOLOR ForeColor, GuiConst_INTCOLOR BackColor); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_DrawVar // ============== // // Draws a variable on the display. // // Input: // ------ // Coordinates // Font index // Variable pointer reference // Variable type - can be: // GuiLib_VAR_BOOL // GuiLib_VAR_UNSIGNED_CHAR // GuiLib_VAR_SIGNED_CHAR // GuiLib_VAR_UNSIGNED_INT // GuiLib_VAR_SIGNED_INT // GuiLib_VAR_UNSIGNED_LONG // GuiLib_VAR_SIGNED_LONG // GuiLib_VAR_FLOAT // GuiLib_VAR_DOUBLE // GuiLib_VAR_STRING // Variable format - can be: // GuiLib_FORMAT_DEC // GuiLib_FORMAT_EXP // GuiLib_FORMAT_HEX // GuiLib_FORMAT_TIME_MMSS // GuiLib_FORMAT_TIME_HHMM_24 // GuiLib_FORMAT_TIME_HHMMSS_24 // GuiLib_FORMAT_TIME_HHMM_12_ampm // GuiLib_FORMAT_TIME_HHMMSS_12_ampm // GuiLib_FORMAT_TIME_HHMM_12_AMPM // GuiLib_FORMAT_TIME_HHMMSS_12_AMPM // Variable format field width // Variable format alignment - can be: // GuiLib_FORMAT_ALIGNMENT_LEFT // GuiLib_FORMAT_ALIGNMENT_CENTER // GuiLib_FORMAT_ALIGNMENT_RIGHT // Variable format decimals // Variable format show sign (true or false) // Variable format zero padding (true or false) // Variable format trailing zeros (true or false) // Variable format thousands separator (true or false) // Alignment // Ps mode // Transparent // Underlining // Back box size X (0 = none) // Back box size Y1 (height above base line, 0 = default font box) // Back box size Y2 (height below base line, 0 = default font box) // Extra back box pixels // Text color // Background box color // // Output: // ------- // None // extern void GuiLib_DrawVar( GuiConst_INT16S X, GuiConst_INT16S Y, GuiConst_INT16U FontNo, void PrefixLocate *VarPtr, GuiConst_INT8U VarType, GuiConst_INT8U FormatterFormat, GuiConst_INT8U FormatterFieldWidth, GuiConst_INT8U FormatterAlignment, GuiConst_INT8U FormatterDecimals, GuiConst_INT8U FormatterShowSign, GuiConst_INT8U FormatterZeroPadding, GuiConst_INT8U FormatterTrailingZeros, GuiConst_INT8U FormatterThousandsSeparator, GuiConst_INT8U Alignment, GuiConst_INT8U PsWriting, GuiConst_INT8U Transparent, GuiConst_INT8U Underlining, GuiConst_INT16S BackBoxSizeX, GuiConst_INT16S BackBoxSizeY1, GuiConst_INT16S BackBoxSizeY2, GuiConst_INT8U BackBorderPixels, GuiConst_INTCOLOR ForeColor, GuiConst_INTCOLOR BackColor); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_Init // =========== // // Initialises the easyGUI library module. // MUST be called at application startup, before using the easyGUI library. // // Input: // ------ // None // // Output: // ------- // None // extern void GuiLib_Init(void); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_Clear // ============ // // Clears the screen, and resets the easyGUI system. // // Input: // ------ // None // // Output: // ------- // None // extern void GuiLib_Clear(void); // ----------------------------------------------------------------------------- #ifdef GuiConst_CHARMODE_UNICODE // ============================================================================= // GuiLib_UnicodeStrLen // ==================== // // Calculates length of Unicode string. // This function is equivalent to the ANSI character mode strlen function. // // Input: // ------ // Unicode string reference // // Output: // ------- // Length in characters, excluding zero termination // extern GuiConst_INT16U GuiLib_UnicodeStrLen( GuiConst_TEXT PrefixLocate *S); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_StrAnsiToUnicode // ======================= // // Converts ANSI string to Unicode string. // // Input: // ------ // ANSI and Unicode string references // Unicode string must have sufficient space // // Output: // ------- // None // extern void GuiLib_StrAnsiToUnicode( GuiConst_TEXT PrefixLocate *S2, GuiConst_CHAR PrefixLocate *S1); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_UnicodeStrCmp // ==================== // // Compares two Unicode strings. // This function is equivalent to the ANSI character mode strcmp function. // // Input: // ------ // Unicode string references // // Output: // ------- // <0: S1 is less than S2 // =0: S1 and S2 are equal // >0: S1 is greater than S2 // GuiConst_INT16S GuiLib_UnicodeStrCmp( GuiConst_TEXT PrefixLocate *S1, GuiConst_TEXT PrefixLocate *S2); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_UnicodeStrNCmp // ===================== // // Compares two Unicode strings, until the N'th character. // This function is equivalent to the ANSI character mode strncmp function. // // Input: // ------ // Unicode string references // Character count to compare // // Output: // ------- // <0: S1 is less than S2 inside the N characters // =0: S1 and S2 are equal inside the N characters // >0: S1 is greater than S2 inside the N characters // GuiConst_INT16S GuiLib_UnicodeStrNCmp( GuiConst_TEXT PrefixLocate *S1, GuiConst_TEXT PrefixLocate *S2, GuiConst_INT16U StrLen); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_UnicodeStrCpy // ==================== // // Copy from one Unicode string to another. // This function is equivalent to the ANSI character mode strcpy function // // Input: // ------ // S1: Unicode source string reference // S2: Unicode destination string reference // Unicode destination string must have sufficient space // // Output: // ------- // None // void GuiLib_UnicodeStrCpy( GuiConst_TEXT PrefixLocate *S2, GuiConst_TEXT PrefixLocate *S1); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_UnicodeStrNCpy // ===================== // // Copy from one Unicode string to another. No more than source StrLen bytes are // copied. // Bytes following a source null byte are not copied. // If needed target is padded with null bytes until reaching StrLen. // This function is equivalent to the ANSI character mode strncpy function. // // Input: // ------ // S1: Unicode source string reference // S2: Unicode destination string reference // StrLen: Number of characters to copy // Unicode destination string must have sufficient space // // Output: // ------- // None // void GuiLib_UnicodeStrNCpy( GuiConst_TEXT PrefixLocate *S2, GuiConst_TEXT PrefixLocate *S1, GuiConst_INT16U StrLen); // ----------------------------------------------------------------------------- #endif // ============================================================================= // GuiLib_ShowScreen // ================= // // Instructs structure drawing task to draw a complete structure. // // Input: // ------ // Structure ID // Active cursor field No. - // use GuiLib_NO_CURSOR if there is no cursor to show // Maintain or erase old AutoReadraw fields - // use GuiLib_NO_RESET_AUTO_REDRAW or GuiLib_RESET_AUTO_REDRAW // // Output: // ------- // None // extern void GuiLib_ShowScreen( const GuiConst_INT16U StructureNdx, GuiConst_INT16S CursorFieldToShow, GuiConst_INT8U ResetAutoRedraw); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_GetTextLanguagePtr // ========================= // // Returns pointer to text in structure // Language of selected text can be freely selected, no matter what language // is active // // Input: // ------ // Structure ID // Text No. - index 0 is first text in structure, Item types other than Texts // and Paragraph are ignored // // Output: // ------- // Pointer to text based on structure, text No. and current language // Returns Nil if no text was found // extern GuiConst_TEXT PrefixLocate *GuiLib_GetTextLanguagePtr( const GuiConst_INT16U StructureNdx, GuiConst_INT16U TextNo, GuiConst_INT16S LanguageIndex); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_GetTextPtr // ================= // // Returns pointer to text in structure // // Input: // ------ // Structure ID // Text No. - index 0 is first text in the structure, item types other than // Text and Paragraph are ignored // // Output: // ------- // Pointer to text based on structure, text No. and current language // Returns Nil if no text was found // extern GuiConst_TEXT PrefixLocate *GuiLib_GetTextPtr( const GuiConst_INT16U StructureNdx, GuiConst_INT16U TextNo); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_GetTextWidth // =================== // // Returns width of text in pixels // // Input: // ------ // Pointer to text string // Pointer to font // PS writing mode - can be: // GuiLib_PS_OFF No proportional writing // GuiLib_PS_ON Normal proportional writing // GuiLib_PS_NUM Numerical proportional writing // // Output: // ------- // Width of text in pixels, returns zero if an error is encountered // extern GuiConst_INT16U GuiLib_GetTextWidth( GuiConst_TEXT PrefixLocate *String, GuiLib_FontRecConstPtr Font, GuiConst_INT8U PsWriting); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_GetCharCode // ================== // // Returns ANSI or Unicode code of specific character in string // // Input: // ------ // Structure ID // Text No. - index 0 is first text in the structure, item types other than // Text and Paragraph are ignored // Character position // Omit control codes, Control codes are soft and hard line breaks // 0 - count all charactes // 1 - omit control codes during counting // // Output: // ------- // ANSI or Unicode code of character, returns zero if an error is encountered // extern GuiConst_TEXT GuiLib_GetCharCode( const GuiConst_INT16U StructureNdx, GuiConst_INT16U TextNo, GuiConst_INT16U CharNo, GuiConst_INT16U OmitCtrlCode); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_GuiLib_ClearPositionCallbacks // ==================================== // // Resets all position callback function references - no callbacks will then // happen, until GuiLib_SetPositionCallbackFunc has been called // // Input: // ------ // None // // Output: // ------- // None // extern void GuiLib_ClearPositionCallbacks(void); // ============================================================================= // GuiLib_SetPositionCallbackFunc // ============================== // // Defines a callback function for a specific position callback item // The callback function will be called each time a structure containing a // position callback item with the same index number. The callback will contain // the index number and the current X,Y display coordinates. // // Input: // ------ // Position callback index No. // Position callback function - function style is F(IndexNo, X, Y) // // Output: // ------- // None // extern void GuiLib_SetPositionCallbackFunc( GuiConst_INT16U IndexNo, void (*PosCallbackFunc) (GuiConst_INT16U IndexNo, GuiConst_INT16S X, GuiConst_INT16S Y)); #ifdef GuiConst_BLINK_SUPPORT_ON // ============================================================================= // GuiLib_GetBlinkingCharCode // ========================== // // Returns ANSI or Unicode code of character in string marked as blinking field // // Input: // ------ // Blinking item No. // Character position // Omit control codes, Control codes are soft and hard line breaks // 0 - count all charactes // 1 - omit control codes during counting // // Output: // ------- // ANSI or Unicode code of character, returns zero if an error is encountered // extern GuiConst_TEXT GuiLib_GetBlinkingCharCode( GuiConst_INT16U BlinkFieldNo, GuiConst_INT16U CharNo, GuiConst_INT16U OmitCtrlCode); // ----------------------------------------------------------------------------- #endif // ============================================================================= // GuiLib_SetLanguage // ================== // // Selects current language. Index zero is the reference language. // // Input: // ------ // Language index // // Output: // ------- // None // extern void GuiLib_SetLanguage( GuiConst_INT16S NewLanguage); // ----------------------------------------------------------------------------- #ifdef GuiConst_CURSOR_SUPPORT_ON // ============================================================================= // GuiLib_Cursor_Hide // ================== // // Hides cursor field. // // Input: // ------ // None // // Output: // ------- // None // extern void GuiLib_Cursor_Hide(void); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_IsCursorFieldInUse // ========================= // // Reports if a cursor field is active. // // Input: // ------ // Query cursor field No. // // Output: // ------- // 0 = Cursor field not active // 1 = Cursor field active // extern GuiConst_INT8U GuiLib_IsCursorFieldInUse( GuiConst_INT16S AskCursorFieldNo); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_Cursor_Select // ==================== // // Makes requested cursor field active, redrawing both current and new cursor // field. // // Input: // ------ // New cursor field No. // -1 hides cursor. // // Output: // ------- // 0 = No change, requested cursor field is invalid // 1 = Cursor moved // extern GuiConst_INT8U GuiLib_Cursor_Select( // GuiConst_INT16S NewCursorFieldNo); // extern GuiConst_INT8U GuiLib_Cursor_Select( GuiConst_INT16S NewCursorFieldNo); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_Cursor_Down // ================== // // Makes next cursor field active, redrawing both current and new cursor field. // // Input: // ------ // None // // Output: // ------- // 0 = Cursor at end of range // 1 = Cursor moved // extern GuiConst_INT8U GuiLib_Cursor_Down(void); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_Cursor_Up // ================ // // Makes previous cursor field active, redrawing both current and new cursor // field. // // Input: // ------ // None // // Output: // ------- // 0 = Cursor at end of range // 1 = Cursor moved // extern GuiConst_INT8U GuiLib_Cursor_Up(void); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_Cursor_Home // ================== // // Makes first cursor field active, redrawing both current and new cursor // field. // // Input: // ------ // None // // Output: // ------- // 0 = No change, first cursor field already active // 1 = Cursor moved // extern GuiConst_INT8U GuiLib_Cursor_Home(void); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_Cursor_End // ================= // // Makes last cursor field active, redrawing both current and new cursor // field. // // Input: // ------ // None // // Output: // ------- // 0 = No change, last cursor field already active // 1 = Cursor moved // extern GuiConst_INT8U GuiLib_Cursor_End(void); // ----------------------------------------------------------------------------- #endif #ifdef GuiConst_BLINK_SUPPORT_ON // ============================================================================= // GuiLib_BlinkBoxStart // ==================== // // Sets parameters for blinking box function // // Input: // ------ // X1, Y1, X2, Y2: Blinking rectangle // Rate: Blinking rate, in multiples of refresh rate, valid range 0-255 // Rate = 255 disables blinking, but makes an initial inverting of the // rectangle // // Output: // ------- // None // extern void GuiLib_BlinkBoxStart( GuiConst_INT16S X1, GuiConst_INT16S Y1, GuiConst_INT16S X2, GuiConst_INT16S Y2, GuiConst_INT16S Rate); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_BlinkBoxStop // =================== // // Stops blinking box function // // Input: // ------ // None // // Output: // ------- // None // extern void GuiLib_BlinkBoxStop(void); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_BlinkBoxMarkedItem // ========================= // // Sets parameters for blinking box function based on marked blink text field // // Input: // ------ // BlinkFieldNo: Index No. to marked blink text field in structure // CharNo: Character number in text, first character is No. 1 // CharNo = 0 means entire text // Rate: Blinking rate, in multiples of refresh rate, valid range 0-255 // Rate = 255 disables blinking, but makes an initial marking of the // character/text // // Output: // ------- // None // extern void GuiLib_BlinkBoxMarkedItem( GuiConst_INT16U BlinkFieldNo, GuiConst_INT16U CharNo, GuiConst_INT16S Rate); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_BlinkBoxMarkedItemStop // ============================= // // Stops blinking box function based on marked blink text field // // Input: // ------ // BlinkFieldNo: Index No. to marked blink text field in structure // // Output: // ------- // None // extern void GuiLib_BlinkBoxMarkedItemStop( GuiConst_INT16U BlinkFieldNo); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_BlinkBoxMarkedItemUpdate // =============================== // // Update parameters for blinking box function based on marked blink text field // // Input: // ------ // BlinkFieldNo: Index No. to marked blink text field in structure // // Output: // ------- // None // extern void GuiLib_BlinkBoxMarkedItemUpdate( GuiConst_INT16U BlinkFieldNo); //------------------------------------------------------------------------------ #endif // ============================================================================= // GuiLib_InvertBoxStart // ===================== // // Sets parameters for inverted box function // // Input: // ------ // X1, Y1, X2, Y2: Inverted box rectangle // // Output: // ------- // None // extern void GuiLib_InvertBoxStart( GuiConst_INT16S X1, GuiConst_INT16S Y1, GuiConst_INT16S X2, GuiConst_INT16S Y2); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_InvertBoxStop // ==================== // // Stops inverted box function // // Input: // ------ // None // // Output: // ------- // None // extern void GuiLib_InvertBoxStop(void); // ----------------------------------------------------------------------------- #ifdef GuiConst_ITEM_TOUCHAREA_INUSE // ============================================================================= // GuiLib_TouchCheck // ================= // // Returns touch area No. corresponding to the supplied coordinates. // If no touch area is found at coordinates -1 is returned. // Touch coordinates are converted to display coordinates, if conversion // parameters have been set with the GuiLib_TouchAdjustSet function. // // Input: // ------ // X, Y: Touch position in touch interface coordinates // // Output: // ------- // -1 = No touch area found // >=0 = Touch area No. // // extern GuiConst_INT32S GuiLib_TouchCheck( GuiConst_INT16S X, GuiConst_INT16S Y); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_TouchGet // =============== // // Performs the same action as GuiLib_TouchCheck, and additionally returns // touch coordinates in display coordinates: // Returns touch area No. corresponding to the supplied coordinates. // If no touch area is found at coordinates -1 is returned. // Touch coordinates are converted to display coordinates, if conversion // parameters have been set with the GuiLib_TouchAdjustSet function. // OBS: If no conversion parameters have been set with the GuiLib_TouchAdjustSet // function the calculated touch coordinates in display coordinates will be // TouchX = X, and TouchY = Y. // // Input: // ------ // X, Y: Touch position in touch interface coordinates // TouchX, TouchY: Addresses of the variables where touch coordinates // converted to display coordinates will be stored // // Output: // ------- // -1 = No touch area found // >=0 = Touch area No. // // extern GuiConst_INT32S GuiLib_TouchGet( GuiConst_INT16S X, GuiConst_INT16S Y, GuiConst_INT16S* TouchX, GuiConst_INT16S* TouchY); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_TouchAdjustReset // ======================= // // Resets touch coordinate conversion. // // Input: // ------ // None // // Output: // ------- // None // extern void GuiLib_TouchAdjustReset(void); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_TouchAdjustSet // ===================== // // Sets one coordinate pair for touch coordinate conversion. // Must be called two times, once for each of two diagonally opposed corners, // or four times, once for each of the corners. // The corner positions should be as close as possible to the physical display // corners, as precision is lowered when going towards the display center. // // Input: // ------ // XTrue, YTrue : Position represented in display coordinates // XMeasured, YMeasured: Position represented in touch interface coordinates // // Output: // ------- // None // extern void GuiLib_TouchAdjustSet( GuiConst_INT16S XTrue, GuiConst_INT16S YTrue, GuiConst_INT16S XMeasured, GuiConst_INT16S YMeasured); // ----------------------------------------------------------------------------- #endif // ============================================================================= // GuiLib_Refresh // ============== // // Refreshes variables and updates display. // // Input: // ------ // None // // Output: // ------- // None // extern void GuiLib_Refresh(void); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_TestPattern // ================== // // Makes test pattern for display control error diagnosis. See user manual for // further info. // // Input: // ------ // None // // Output: // ------- // None // extern void GuiLib_TestPattern(void); // ----------------------------------------------------------------------------- #ifdef GuiConst_ITEM_SCROLLBOX_INUSE // ============================================================================= // GuiLib_ScrollBox_Init // ===================== // // Initializes a scroll box (new item type style). // // Input: // ------ // Scroll box index // DataFuncPtr: Address of scroll line call-back function of type // "void F(GuiConst_INT16S LineIndex)" // NoOfLines: Total No. of lines in scroll box // ActiveLine: Active scroll line, -1 means no active scroll line // // // Output: // ------- // 0 = Error in parameters // 1 = Ok // extern GuiConst_INT8U GuiLib_ScrollBox_Init( GuiConst_INT8U ScrollBoxIndex, void (*DataFuncPtr) (GuiConst_INT16S LineIndex), GuiConst_INT16S NoOfLines, GuiConst_INT16S ActiveLine); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_ScrollBox_Redraw // ======================= // // Redraws dynamic parts of scroll box (new item type style). // For complete redraw use GuiLib_ScrollBox_Init. // // Input: // ------ // Scroll box index // // Output: // ------- // 0 = Error in parameters // 1 = Ok // extern GuiConst_INT8U GuiLib_ScrollBox_Redraw( GuiConst_INT8U ScrollBoxIndex); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_ScrollBox_RedrawLine // =========================== // // Redraws single line of scroll box (new item type style). // If line is not visible no action is performed. // // Input: // ------ // Scroll box index // Scroll line to redraw, index zero is first line in scroll box list // // Output: // ------- // 0 = Error in parameters // 1 = Ok // extern GuiConst_INT8U GuiLib_ScrollBox_RedrawLine( GuiConst_INT8U ScrollBoxIndex, GuiConst_INT16U ScrollLine); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_ScrollBox_Close // ====================== // // Closes a scroll box (new item type style). // // Input: // ------ // Scroll box index // // Output: // ------- // 0 = Error in parameters // 1 = Ok // extern GuiConst_INT8U GuiLib_ScrollBox_Close( GuiConst_INT8U ScrollBoxIndex); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_ScrollBox_Down // ===================== // // Makes next scroll line active, and scrolls list if needed (new item type // style). // // Input: // ------ // Scroll box index // // Output: // ------- // 0 = No change, list already at bottom // 1 = Active scroll line changed // extern GuiConst_INT8U GuiLib_ScrollBox_Down( GuiConst_INT8U ScrollBoxIndex); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_ScrollBox_Up // =================== // // Makes previous scroll line active, and scrolls list if needed (new item type // style). // // Input: // ------ // Scroll box index // // Output: // ------- // 0 = No change, list already at top // 1 = Active scroll line changed // extern GuiConst_INT8U GuiLib_ScrollBox_Up( GuiConst_INT8U ScrollBoxIndex); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_ScrollBox_Home // ===================== // // Makes first scroll line active, and scrolls list if needed (new item type // style). // // Input: // ------ // Scroll box index // // Output: // ------- // 0 = No change, list already at top // 1 = Active scroll line changed // extern GuiConst_INT8U GuiLib_ScrollBox_Home( GuiConst_INT8U ScrollBoxIndex); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_ScrollBox_End // ==================== // // Makes last scroll line active, and scrolls list if needed (new item type // style). // // Input: // ------ // Scroll box index // // Output: // ------- // 0 = No change, list already at bottom // 1 = Active scroll line changed // extern GuiConst_INT8U GuiLib_ScrollBox_End( GuiConst_INT8U ScrollBoxIndex); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_ScrollBox_To_Line // ======================== // // Makes specified scroll line active, and scrolls list if needed (new item type // style). // // Input: // ------ // Scroll box index // New scroll line, -1 means no active scroll line // // Output: // ------- // 0 = No change, list already at specified line // 1 = Active scroll line changed // extern GuiConst_INT8U GuiLib_ScrollBox_To_Line( GuiConst_INT8U ScrollBoxIndex, GuiConst_INT16S NewLine); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_ScrollBox_SetLineMarker // ============================== // // Sets scroll marker position and line count. // Scroll marker index 0 (active scroll line) can only cover 1 scroll line. // Display only changes after subsequent GuiLib_ScrollBox_Redraw call. // // Input: // ------ // Scroll box index // Scroll marker index // Marker start line, -1 means no marker // Marker line count (clipped to a maximum of 1 for marker index 0) // // Output: // ------- // 0 = Error in parameters // 1 = Ok // extern GuiConst_INT8U GuiLib_ScrollBox_SetLineMarker( GuiConst_INT8U ScrollBoxIndex, GuiConst_INT16U ScrollLineMarkerIndex, GuiConst_INT16S StartLine, GuiConst_INT16U Size); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_ScrollBox_GetActiveLine // ============================== // // Returns topmost scroll marker line of selected scroll box / marker. // // Input: // ------ // Scroll box index // Scroll marker index (0 = active scroll line, >0 = secondary line markers) // // Output: // ------- // Index of topmost scroll marker line // -1 = Error in parameters // extern GuiConst_INT16S GuiLib_ScrollBox_GetActiveLine( GuiConst_INT8U ScrollBoxIndex, GuiConst_INT16U ScrollLineMarkerIndex); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_ScrollBox_GetActiveLineCount // =================================== // // Returns number of marked lines in selected scroll box / marker. // // Input: // ------ // Scroll box index // Scroll marker index (0 = active scroll line, >0 = secondary line markers) // // Output: // ------- // Count of marked scroll lines // -1 = Error in parameters // Active scroll line (scroll marker index = 0) will always return 1 // extern GuiConst_INT16S GuiLib_ScrollBox_GetActiveLineCount( GuiConst_INT8U ScrollBoxIndex, GuiConst_INT16U ScrollLineMarkerIndex); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_ScrollBox_SetIndicator // ============================= // // Sets scroll indicator position. // Display only changes after subsequent GuiLib_ScrollBox_Redraw call. // // Input: // ------ // Scroll box index // Indicator line, -1 means no indicator // // Output: // ------- // 0 = Error in parameters // 1 = Ok // extern GuiConst_INT8U GuiLib_ScrollBox_SetIndicator( GuiConst_INT8U ScrollBoxIndex, GuiConst_INT16S StartLine); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_ScrollBox_SetTopLine // =========================== // // Sets topmost visible scroll line of selected scroll box. // Display only changes after subsequent GuiLib_ScrollBox_Redraw call. // If simultaneously setting line marker position make sure top line setting is // last action before GuiLib_ScrollBox_Redraw call. // // Input: // ------ // Scroll box index // Index of topmost visible scroll line // // Output: // ------- // 0 = Error in parameters // 1 = Ok // extern GuiConst_INT8U GuiLib_ScrollBox_SetTopLine( GuiConst_INT8U ScrollBoxIndex, GuiConst_INT16S TopLine); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_ScrollBox_GetTopLine // =========================== // // Returns topmost visible scroll line of selected scroll box. // // Input: // ------ // Scroll box index // // Output: // ------- // Index of topmost visible scroll line // -1 = Error in parameters // extern GuiConst_INT16S GuiLib_ScrollBox_GetTopLine( GuiConst_INT8U ScrollBoxIndex); // ----------------------------------------------------------------------------- #endif #ifdef GuiConst_ITEM_GRAPH_INUSE // ============================================================================= // GuiLib_Graph_Close // ================== // // Closes a graph, so that no futher actions can be accomplished with it. // Memory assigned to datasets must be freed independently. // // Input: // ------ // GraphIndex: Index of graph (index is zero based). // // Output: // ------- // 0 = Error in parameters // 1 = Ok // GuiConst_INT8U GuiLib_Graph_Close( GuiConst_INT8U GraphIndex); //------------------------------------------------------------------------------ // ============================================================================= // GuiLib_Graph_AddDataSet // ======================= // // Adds a data set to a graph. The data set must be created in the structure, // but is not shown before this function is called. // Memory must be assigned independently for the data set. // Nothing is drawn in this function. // // Input: // ------ // GraphIndex: Index of graph (index is zero based). // DataSetIndex: Index of data set in the graph (index is zero based). // XAxisIndex: Index of X-axis to use. // YAxisIndex: Index of Y-axis to use. // DataPtr: Pointer to an array of data points, where each data point is a 32 // bit signed X,Y entity of type GuiLib_GraphDataPoint. // DataSize: Maximum number of data points possible in the data set. // DataCount: Number of active data points in the data set. // DataFirst: Index of first active data point (index is zero based). // // Output: // ------- // 0 = Error in parameters // 1 = Ok // extern GuiConst_INT8U GuiLib_Graph_AddDataSet( GuiConst_INT8U GraphIndex, GuiConst_INT8U DataSetIndex, GuiConst_INT8U XAxisIndex, GuiConst_INT8U YAxisIndex, GuiLib_GraphDataPoint *DataPtr, GuiConst_INT16U DataSize, GuiConst_INT16U DataCount, GuiConst_INT16U DataFirst); //------------------------------------------------------------------------------ // ============================================================================= // GuiLib_Graph_RemoveDataSet // ========================== // // Removes a data set from a graph. // Memory must be released independently for the data set. // Nothing is drawn in this function. // //------------------------------------------------------------------------------ // // Input: // ------ // GraphIndex: Index of graph (index is zero based). // DataSetIndex: Index of data set in the graph (index is zero based). // // Output: // ------- // 0 = Error in parameters // 1 = Ok // extern GuiConst_INT8U GuiLib_Graph_RemoveDataSet( GuiConst_INT8U GraphIndex, GuiConst_INT8U DataSetIndex); //------------------------------------------------------------------------------ // ============================================================================= // GuiLib_Graph_AddDataPoint // ========================= // // Adds a data point to a data set. The data set must have sufficient space for // the new data point. // Nothing is drawn in this function. // // Input: // ------ // GraphIndex: Index of graph (index is zero based). // DataSetIndex: Index of data set in the graph (index is zero based). // DataPointX, DataPointY: The data point. // // Output: // ------- // 0 = Error in parameters // 1 = Ok // extern GuiConst_INT8U GuiLib_Graph_AddDataPoint( GuiConst_INT8U GraphIndex, GuiConst_INT8U DataSetIndex, GuiConst_INT32S DataPointX, GuiConst_INT32S DataPointY); //------------------------------------------------------------------------------ // ============================================================================= // GuiLib_Graph_ShowDataSet // ======================== // // Marks a data set as visible. // Nothing is drawn in this function. // // Input: // ------ // GraphIndex: Index of graph (index is zero based). // DataSetIndex: Index of data set in the graph (index is zero based). // // Output: // ------- // 0 = Error in parameters // 1 = Ok // extern GuiConst_INT8U GuiLib_Graph_ShowDataSet( GuiConst_INT8U GraphIndex, GuiConst_INT8U DataSetIndex); //------------------------------------------------------------------------------ // ============================================================================= // GuiLib_Graph_HideDataSet // ======================== // // Marks a data set as invisible. // Nothing is drawn in this function. // // Input: // ------ // GraphIndex: Index of graph (index is zero based). // DataSetIndex: Index of data set in the graph (index is zero based). // // Output: // ------- // 0 = Error in parameters // 1 = Ok // extern GuiConst_INT8U GuiLib_Graph_HideDataSet( GuiConst_INT8U GraphIndex, GuiConst_INT8U DataSetIndex); //------------------------------------------------------------------------------ // ============================================================================= // GuiLib_Graph_ShowXAxis // ====================== // // Marks an X-axis as visible. // Nothing is drawn in this function. // // Input: // ------ // GraphIndex: Index of graph (index is zero based). // AxisIndex: Index of X axis in the graph (index is zero based). // // Output: // ------- // 0 = Error in parameters // 1 = Ok // extern GuiConst_INT8U GuiLib_Graph_ShowXAxis( GuiConst_INT8U GraphIndex, GuiConst_INT8U AxisIndex); //------------------------------------------------------------------------------ // ============================================================================= // GuiLib_Graph_HideXAxis // ====================== // // Marks an X-axis as invisible. // Nothing is drawn in this function. // // Input: // ------ // GraphIndex: Index of graph (index is zero based). // AxisIndex: Index of X axis in the graph (index is zero based). // // Output: // ------- // 0 = Error in parameters // 1 = Ok // extern GuiConst_INT8U GuiLib_Graph_HideXAxis( GuiConst_INT8U GraphIndex, GuiConst_INT8U AxisIndex); //------------------------------------------------------------------------------ // ============================================================================= // GuiLib_Graph_ShowYAxis // ====================== // // Marks an Y-axis as visible. // Nothing is drawn in this function. // // Input: // ------ // GraphIndex: Index of graph (index is zero based). // AxisIndex: Index of Y axis in the graph (index is zero based). // // Output: // ------- // 0 = Error in parameters // 1 = Ok // extern GuiConst_INT8U GuiLib_Graph_ShowYAxis( GuiConst_INT8U GraphIndex, GuiConst_INT8U AxisIndex); //------------------------------------------------------------------------------ // ============================================================================= // GuiLib_Graph_HideYAxis // ====================== // // Marks an Y-axis as invisible. // Nothing is drawn in this function. // // Input: // ------ // GraphIndex: Index of graph (index is zero based). // AxisIndex: Index of Y axis in the graph (index is zero based). // // Output: // ------- // 0 = Error in parameters // 1 = Ok // extern GuiConst_INT8U GuiLib_Graph_HideYAxis( GuiConst_INT8U GraphIndex, GuiConst_INT8U AxisIndex); //------------------------------------------------------------------------------ // ============================================================================= // GuiLib_Graph_SetXAxisRange // ========================== // // Changes an X-axis range. // Nothing is drawn in this function. // // Input: // ------ // GraphIndex: Index of graph (index is zero based). // AxisIndex: Index of X axis in the graph (index is zero based). // MinValue, MaxValue: Limits of the X axis range. // // Output: // ------- // 0 = Error in parameters // 1 = Ok // extern GuiConst_INT8U GuiLib_Graph_SetXAxisRange( GuiConst_INT8U GraphIndex, GuiConst_INT8U AxisIndex, GuiConst_INT32S MinValue, GuiConst_INT32S MaxValue); //------------------------------------------------------------------------------ // ============================================================================= // GuiLib_Graph_SetYAxisRange // ========================== // // Changes an Y-axis range. // Nothing is drawn in this function. // // Input: // ------ // GraphIndex: Index of graph (index is zero based). // AxisIndex: Index of Y axis in the graph (index is zero based). // MinValue, MaxValue: Limits of the Y axis range. // // Output: // ------- // 0 = Error in parameters // 1 = Ok // extern GuiConst_INT8U GuiLib_Graph_SetYAxisRange( GuiConst_INT8U GraphIndex, GuiConst_INT8U AxisIndex, GuiConst_INT32S MinValue, GuiConst_INT32S MaxValue); //------------------------------------------------------------------------------ // ============================================================================= // GuiLib_Graph_ResetXAxisOrigin // ============================= // // Resets the X-axis origin to the original origin. // Nothing is drawn in this function. // // Input: // ------ // GraphIndex: Index of graph (index is zero based). // AxisIndex: Index of X axis in the graph (index is zero based). Index -1 will // reset all defined X axes. // // Output: // ------- // 0 = Error in parameters // 1 = Ok // extern GuiConst_INT8U GuiLib_Graph_ResetXAxisOrigin( GuiConst_INT8U GraphIndex, GuiConst_INT8S AxisIndex); //------------------------------------------------------------------------------ // ============================================================================= // GuiLib_Graph_OffsetXAxisOrigin // ============================== // // Adjusts the X-axis origin. Useful for dynamic graphs with moving X-axis. // Nothing is drawn in this function. // // Input: // ------ // GraphIndex: Index of graph (index is zero based). // AxisIndex: Index of X axis in the graph (index is zero based). Index -1 will // offset all defined X axes. This only makes sense if all X axes // have identical scaling. // Offset: Amount of movement of the X axis origin. // // Output: // ------- // 0 = Error in parameters // 1 = Ok // extern GuiConst_INT8U GuiLib_Graph_OffsetXAxisOrigin( GuiConst_INT8U GraphIndex, GuiConst_INT8S AxisIndex, GuiConst_INT32S Offset); //------------------------------------------------------------------------------ // ============================================================================= // GuiLib_Graph_ResetYAxisOrigin // ============================= // // Resets the Y-axis origin to the original origin. // Nothing is drawn in this function. // // Input: // ------ // GraphIndex: Index of graph (index is zero based). // AxisIndex: Index of Y axis in the graph (index is zero based). Index -1 will // reset all defined Y axes. // // Output: // ------- // 0 = Error in parameters // 1 = Ok // extern GuiConst_INT8U GuiLib_Graph_ResetYAxisOrigin( GuiConst_INT8U GraphIndex, GuiConst_INT8S AxisIndex); //------------------------------------------------------------------------------ // ============================================================================= // GuiLib_Graph_OffsetYAxisOrigin // ============================== // // Adjusts the Y-axis origin. Useful for dynamic graphs with moving Y-axis. // Nothing is drawn in this function. // // Input: // ------ // GraphIndex: Index of graph (index is zero based). // AxisIndex: Index of Y axis in the graph (index is zero based). Index -1 will // offset all defined Y axes. This only makes sense if all Y axes // have identical scaling. // Offset: Amount of movement of the Y axis origin. // // Output: // ------- // 0 = Error in parameters // 1 = Ok // extern GuiConst_INT8U GuiLib_Graph_OffsetYAxisOrigin( GuiConst_INT8U GraphIndex, GuiConst_INT8S AxisIndex, GuiConst_INT32S Offset); //------------------------------------------------------------------------------ // ============================================================================= // GuiLib_Graph_Redraw // =================== // // Redraws the complete graph, including background, axes, and data sets. // // Input: // ------ // GraphIndex: Index of graph (index is zero based). // // Output: // ------- // 0 = Error in parameters // 1 = Ok // extern GuiConst_INT8U GuiLib_Graph_Redraw( GuiConst_INT8U GraphIndex); //------------------------------------------------------------------------------ // ============================================================================= // GuiLib_Graph_DrawAxes // ===================== // // Redraws the graph, including background and axes, but excluding data sets. // // Input: // ------ // GraphIndex: Index of graph (index is zero based). // // Output: // ------- // 0 = Error in parameters // 1 = Ok // extern GuiConst_INT8U GuiLib_Graph_DrawAxes( GuiConst_INT8U GraphIndex); //------------------------------------------------------------------------------ // ============================================================================= // GuiLib_Graph_DrawDataSet // ======================== // // Redraws a data set. // // Input: // ------ // GraphIndex: Index of graph (index is zero based). // DataSetIndex: Index of data set in the graph (index is zero based). // // Output: // ------- // 0 = Error in parameters // 1 = Ok // extern GuiConst_INT8U GuiLib_Graph_DrawDataSet( GuiConst_INT8U GraphIndex, GuiConst_INT8U DataSetIndex); //------------------------------------------------------------------------------ // ============================================================================= // GuiLib_Graph_DrawDataPoint // ========================== // // Draws a single data point in a data set. // // Input: // ------ // GraphIndex: Index of graph (index is zero based). // DataSetIndex: Index of data set in the graph (index is zero based). // DataIndex: Index of point in the data set (index is zero based). // // Output: // ------- // 0 = Error in parameters // 1 = Ok // extern GuiConst_INT8U GuiLib_Graph_DrawDataPoint( GuiConst_INT8U GraphIndex, GuiConst_INT8U DataSetIndex, GuiConst_INT16U DataIndex); // ----------------------------------------------------------------------------- #endif #ifdef GuiConst_ITEM_GRAPHICS_LAYER_FILTER_INUSE // ============================================================================= // GuiLib_GraphicsFilter_Init // ========================== // // Initializes a graphics filter call-back function. // // Input: // ------ // GraphicsFilterIndex: Index of graphics filter (index is zero based). // FilterFuncPtr: Pointer to user-defined call-back filter function. // // Output: // ------- // 0 = Error in parameters // 1 = Ok // //------------------------------------------------------------------------------ extern GuiConst_INT8U GuiLib_GraphicsFilter_Init( GuiConst_INT8U GraphicsFilterIndex, void (*FilterFuncPtr) (GuiConst_INT8U *DestAddress, GuiConst_INT16U DestLineSize, GuiConst_INT8U *SourceAddress, GuiConst_INT16U SourceLineSize, GuiConst_INT16U Width, GuiConst_INT16U Height, GuiConst_INT32S FilterPars[10])); #endif // ============================================================================= // GuiLib_TextBox_Scroll_Up // ======================== // // Scrolls text box contents one text line up. // // Input: // ------ // Text box index // // Output: // ------- // 0 = Error in parameters // 1 = Ok // extern GuiConst_INT8U GuiLib_TextBox_Scroll_Up( GuiConst_INT8U TextBoxIndex); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_TextBox_Scroll_Down // ========================== // // Scrolls text box contents one text line down. // // Input: // ------ // Text box index // // Output: // ------- // 0 = Error in parameters // 1 = Ok // extern GuiConst_INT8U GuiLib_TextBox_Scroll_Down( GuiConst_INT8U TextBoxIndex); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_TextBox_Scroll_Home // ========================== // // Scrolls text box contents to the top. // // Input: // ------ // Text box index // // Output: // ------- // 0 = Error in parameters // 1 = Ok // extern GuiConst_INT8U GuiLib_TextBox_Scroll_Home( GuiConst_INT8U TextBoxIndex); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_TextBox_Scroll_End // ========================= // // Scrolls text box contents to the bottom. // // Input: // ------ // Text box index // // Output: // ------- // 0 = Error in parameters // 1 = Ok // extern GuiConst_INT8U GuiLib_TextBox_Scroll_End( GuiConst_INT8U TextBoxIndex); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_TextBox_Scroll_To_Line // ============================= // // Scrolls text box contents to a specific text line. // // Input: // ------ // Text box index // Text line // // Output: // ------- // 0 = Error in parameters // 1 = Ok // extern GuiConst_INT8U GuiLib_TextBox_Scroll_To_Line( GuiConst_INT8U TextBoxIndex, GuiConst_INT16S NewLine); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_TextBox_Scroll_Up_Pixel // ============================== // // Scrolls text box contents one pixel position up. // // Input: // ------ // Text box index // // Output: // ------- // 0 = Error in parameters // 1 = Ok // extern GuiConst_INT8U GuiLib_TextBox_Scroll_Up_Pixel( GuiConst_INT8U TextBoxIndex); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_TextBox_Scroll_Down_Pixel // ================================ // // Scrolls text box contents one pixel position down. // // Input: // ------ // Text box index // // Output: // ------- // 0 = Error in parameters // 1 = Ok // extern GuiConst_INT8U GuiLib_TextBox_Scroll_Down_Pixel( GuiConst_INT8U TextBoxIndex); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_TextBox_Scroll_Home_Pixel // ================================ // // Scrolls text box contents to the top. // // Input: // ------ // Text box index // // Output: // ------- // 0 = Error in parameters // 1 = Ok // extern GuiConst_INT8U GuiLib_TextBox_Scroll_Home_Pixel( GuiConst_INT8U TextBoxIndex); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_TextBox_Scroll_End_Pixel // =============================== // // Scrolls text box contents to the bottom. // // Input: // ------ // Text box index // // Output: // ------- // 0 = Error in parameters // 1 = Ok // extern GuiConst_INT8U GuiLib_TextBox_Scroll_End_Pixel( GuiConst_INT8U TextBoxIndex); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_TextBox_Scroll_To_PixelLine // ================================== // // Scrolls text box contents to a specific pixel position. // // Input: // ------ // Text box index // Pixel line // // Output: // ------- // 0 = Error in parameters // 1 = Ok // extern GuiConst_INT8U GuiLib_TextBox_Scroll_To_PixelLine( GuiConst_INT8U TextBoxIndex, GuiConst_INT16S NewPixelLine); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_TextBox_Scroll_Get_Pos // ============================= // // Returns status of topmost visible text line of text box. // // Input: // ------ // Text box index // // Output: // ------- // GuiLib_TEXTBOX_SCROLL_ILLEGAL_NDX Illegal text box index // GuiLib_TEXTBOX_SCROLL_INSIDE_BLOCK Text box scrolled mid way // GuiLib_TEXTBOX_SCROLL_AT_HOME Text box scrolled to the top // GuiLib_TEXTBOX_SCROLL_AT_END Text box scrolled to the bottom // GuiLib_TEXTBOX_SCROLL_ABOVE_HOME Text box scrolled above the top // GuiLib_TEXTBOX_SCROLL_BELOW_END Text box scrolled below the bottom // extern GuiConst_INT8U GuiLib_TextBox_Scroll_Get_Pos( GuiConst_INT8U TextBoxIndex); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_TextBox_Scroll_Get_Pos_Pixel // =================================== // // Returns status of topmost visible pixel position of text box. // // Input: // ------ // Text box index // // Output: // ------- // GuiLib_TEXTBOX_SCROLL_ILLEGAL_NDX Illegal text box index // GuiLib_TEXTBOX_SCROLL_INSIDE_BLOCK Text box scrolled mid way // GuiLib_TEXTBOX_SCROLL_AT_HOME Text box scrolled to the top // GuiLib_TEXTBOX_SCROLL_AT_END Text box scrolled to the bottom // GuiLib_TEXTBOX_SCROLL_ABOVE_HOME Text box scrolled above the top // GuiLib_TEXTBOX_SCROLL_BELOW_END Text box scrolled below the bottom // extern GuiConst_INT8U GuiLib_TextBox_Scroll_Get_Pos_Pixel( GuiConst_INT8U TextBoxIndex); // ----------------------------------------------------------------------------- // ============================================================================= // GuiLib_TextBox_Scroll_FitsInside // ================================ // // Determines if a text fits completely inside a text box without scrolling. // // Input: // ------ // Text box index // // Output: // ------- // 0 = No // 1 = Yes // extern GuiConst_INT8U GuiLib_TextBox_Scroll_FitsInside( GuiConst_INT8U TextBoxIndex); // ----------------------------------------------------------------------------- #ifdef GuiConst_REMOTE_DATA // ============================================================================= // GuiLib_RemoteCheck // ================== // // Checks if binary remote data file has correct ID. // // Input: // ------ // None // // Output: // ------- // 0 = Illegal ID // 1 = ID accepted // extern GuiConst_INT8U GuiLib_RemoteCheck(void); // ----------------------------------------------------------------------------- #endif #ifdef GuiConst_CODEVISION_COMPILER #pragma used- #endif // ----------------------------------------------------------------------------- #ifdef __cplusplus /* If this is a C++ compiler, end C linkage */ } #endif #endif