ThreadX docsThreadX docs
ThreadX
ThreadX Modules
NetX Duo
FileX
GUIX
USBX
TraceX
LevelX
ThreadX
ThreadX Modules
NetX Duo
FileX
GUIX
USBX
TraceX
LevelX
  • GUIX Documentation

    • Understand GUIX and GUIX Studio
    • GUIX documentation
    • Chapter 1 - Introduction to GUIX
    • Chapter 2 - Installation and Use of GUIX
    • Chapter 3 - Functional Overview of GUIX
    • Chapter 4 - Description of GUIX Services
    • Chapter 5 - GUIX Display Drivers
    • Appendix A - GUIX Color Definitions
    • Appendix B - GUIX Color Formats
    • Appendix C - GUIX Widget Styles
    • Appendix D - GUIX Brush, Canvas and Gradient Attributes
    • Appendix E - GUIX Event Description
    • Appendix F - GUIX RTOS Binding Services
    • Appendix G - GUIX Font Structure
    • Appendix H - GUIX Build-Time Configuration flags
    • Appendix I - GUIX Information Structures
    • Appendix D - Canvas Partial Frame Buffer Feature
    • GUIX User Guide
    • GUIX Example
    • GUIX Studio User Guide
    • Installation and Use of GUIX Studio
    • Description of GUIX Studio
    • GUIX Studio Resources
    • GUIX Studio Screen Designer
    • GUIX Studio Generated Code
    • Defining Screen Flow
    • Notes on Editing Specific Widget Types
    • GUIX Studio Command Line
    • Simple Example Project
    • Resource Project
    • GUIX Studio Quick Start Guide
    • GUIX Studio User Guide

About GUIX User Guide

This guide contains comprehensive information about GUIX, the high-performance GUI product from Eclipse Foundation. It is intended for embedded real-time software developers familiar with basic GUI concepts, ThreadX, and the C programming language.

Organization

Chapter 1 - Introduction to GUIX

Chapter 2 - Installation and use of GUIX

Chapter 3 - Functional Overview of GUIX

Chapter 4 - Description of GUIX Services

Chapter 5 - GUIX Display Drivers

GUIX Example

Appendix A - GUIX Color Definitions

Appendix B - GUIX Color Formats

Appendix C - GUIX Widget Styles

Appendix D - GUIX Brush, Canvas and Gradient Attributes

Appendix E - GUIX Event Description

Appendix F - GUIX RTOS Binding Services

Appendix G - GUIX Font Structure

Appendix H - GUIX Build-Time Configuration flags

Appendix I - GUIX Information Structures

Appendix J - Canvas Partial Frame Buffer Feature

Guide Conventions

Italics - Typeface denotes book titles, emphasizes important words, and indicates variables.

Boldface - Typeface denotes file names, key words, and further emphasizes important words and variables.

Important: Information symbols draw attention to important or additional information that could affect performance or function.

GUIX Data Types

In addition to the custom GUIX control structure data types, there are several special data types that are used in GUIX service call interfaces. These special data types map directly to data types of the underlying C compiler. This is done to ensure portability between different C compilers. The exact implementation is inherited from ThreadX and can be found in the tx_port.h file included in the ThreadX distribution.

The following is a list of GUIX service call data types and their associated meanings:

Data typeDescription
UINTBasic unsigned integer. This type is mapped to the most convenient unsigned data type.
INTBasic signed integer. This type is mapped to the most convenient signed data type.
ULONGUnsigned long type. This type must support 32-bit unsigned data.
VOIDAlmost always equivalent to the compiler's void type.
GX_CHARMost often typedefed as the compiler defined char type.
GX_BYTE8-bit signed type.
GX_UBYTE8-bit unsigned type.
GX_VALUE16 or 32 bit signed type. Defined as needed for best performance on the target system.
GX_FIXED_VALFixed point numeric data type.
GX_RESOURCE_IDUnsigned long type.
GX_COLORUnsigned long type.
GX_STRINGStructure containing GX_CHAR *gx_string_ptr and UINT gx_string_length.
GX_POINTStructure containing gx_point_x and gx_point_y.
GX_RECTANGLEStructure containing gx_rectangle_left, gx_rectangle_top, gx_rectangle_right, and gx_rectangle_bottom fields.
GX_GLYPHStructure containing glyph metrics.
GX_FONTStructure containing font metrics.
GX_BRUSHStructure containing brush metrics.
GX_PIXELMAPStructure containing pixelmap metrics.

Additional data types are used within the GUIX source. They are located in either the tx_port.h or gx_port.h files.

Troubleshooting

For troubleshooting, capture the following information:

  1. A detailed description of the problem, including frequency of occurrence and whether it can be reliably reproduced.

  2. A detailed description of any changes to the application and/or GUIX that preceded the problem.

  3. The contents of the _tx_version_id and _gx_version_id strings found in the tx_port.h and gx_port.h files of your distribution. These strings will provide valuable Information regarding your run-time environment.

  4. The contents in RAM of the following ULONG variables:

    _tx_build_options_gx_system_build_options

    These variables will give information on how your ThreadX and GUIX libraries were built.

  5. The contents in RAM of the following ULONG variables:

    _gx_system_last_error_gx_system_error_count

    These variables keep track of internal system errors in GUIX. If the _gx_system_error_count is greater than one, please set a breakpoint on the function return in the _gx_system_error_process function and find the value of _gx_system_last_error at this point. This will yield the first internal GUIX system error.

  6. A trace buffer captured immediately after the problem was detected. This is accomplished by building the ThreadX and GUIX libraries with TX_ENABLE_EVENT_TRACE and calling tx_trace_enable with the trace buffer information.

  7. The GUIX Studio project you are using, if applicable, or at a minimum a small project sufficient to demonstrate the deficiency.

Prev
Appendix D - Canvas Partial Frame Buffer Feature
Next
GUIX Example