GATE
graphics.h File Reference

UI graphics and image handling utilities. More...

Classes

struct  gate_ui_graphics_class
 
struct  gate_ui_icon_class
 
struct  gate_ui_iconlist_class
 
struct  gate_ui_cursor_class
 

Macros

#define GATE_UI_ICON_STOCK_APP   1
 
#define GATE_UI_ICON_STOCK_DOCUMENT   2
 
#define GATE_UI_ICON_STOCK_FOLDER   3
 
#define GATE_UI_ICON_STOCK_FOLDEROPEN   4
 
#define GATE_UI_ICON_STOCK_NEWFILE   5
 
#define GATE_UI_ICON_STOCK_OPENFILE   6
 
#define GATE_UI_ICON_STOCK_SAVEFILE   7
 
#define GATE_UI_ICON_STOCK_PRINTER   8
 
#define GATE_UI_ICON_STOCK_CUT   9
 
#define GATE_UI_ICON_STOCK_COPY   10
 
#define GATE_UI_ICON_STOCK_PASTE   11
 
#define GATE_UI_ICON_STOCK_DELETE   12
 
#define GATE_UI_ICON_STOCK_FIND   13
 
#define GATE_UI_ICON_STOCK_HELP   14
 
#define GATE_UI_ICON_STOCK_STORAGE   15
 
#define GATE_UI_ICON_STOCK_COMPUTER   16
 
#define GATE_UI_ICON_STOCK_NETWORK   17
 
#define GATE_UI_ICON_STOCK_GLOBE   18
 
#define GATE_UI_ICON_STOCK_SETTINGS   19
 
#define GATE_UI_ICON_STOCK_HOME   20
 
#define GATE_UI_ICON_STOCK_IMAGE   21
 
#define GATE_UI_ICON_STOCK_AUDIO   22
 
#define GATE_UI_ICON_STOCK_VIDEO   23
 
#define GATE_UI_ICON_STOCK_MAIL   24
 
#define GATE_UI_ICON_FLAG_STOCK   1
 
#define GATE_UI_ICON_FLAG_SMALL   2
 
#define GATE_UI_ICON_FLAG_LARGE   4
 
#define GATE_UI_CURSOR_FLAG_STOCK   1
 
#define GATE_UI_CURSOR_STOCK_POINTER   1 /* default mouse pointer */
 
#define GATE_UI_CURSOR_STOCK_BUSY   2 /* busy icon (hourglasses) */
 
#define GATE_UI_CURSOR_STOCK_STARTING   3 /* default point with background busy icon */
 
#define GATE_UI_CURSOR_STOCK_HAND   4 /* a hand/grabbing icon */
 
#define GATE_UI_CURSOR_STOCK_TEXT   5 /* text editing I-Beam */
 
#define GATE_UI_CURSOR_STOCK_REJECTED   6 /* restricted mouse area or NO icon */
 
#define GATE_UI_CURSOR_STOCK_SIZE_ALL   7 /* arrows in all directions (move) */
 
#define GATE_UI_CURSOR_STOCK_SIZE_LEFTRIGHT   8 /* arrow to left and right (resize) */
 
#define GATE_UI_CURSOR_STOCK_SIZE_UPDOWN   9 /* arrow to top and bottom (resize) */
 
#define GATE_UI_CURSOR_STOCK_SIZE_LEFTUPRIGHTDOWN   10 /* arrow to left-up and right-bottom (resize) */
 
#define GATE_UI_CURSOR_STOCK_SIZE_RIGHTUPKEFTDOWN   11 /* arrow to right-up and left-bottom (resize) */
 

Typedefs

typedef struct gate_ui_graphics_class gate_ui_graphics_t
 
typedef struct gate_ui_icon_class gate_ui_icon_t
 
typedef struct gate_ui_iconlist_class gate_ui_iconlist_t
 
typedef struct gate_ui_cursor_class gate_ui_cursor_t
 

Functions

GATE_UI_API gate_result_t gate_ui_graphics_create_virtual (gate_ui_graphics_t *graph, gate_ui_host_t *host, gate_uint32_t width, gate_uint32_t height)
 
GATE_UI_API gate_result_t gate_ui_graphics_create_image (gate_ui_graphics_t *graph, gate_ui_host_t *host, gate_uint32_t width, gate_uint32_t height, gate_uint32_t depth)
 
GATE_UI_API gate_result_t gate_ui_graphics_create_image_from (gate_ui_graphics_t *graph, gate_ui_host_t *host, gate_rasterimage_t const *rasterimage)
 
GATE_UI_API gate_result_t gate_ui_graphics_create_ctrl (gate_ui_graphics_t *graph, gate_ui_ctrl_t *ctrl)
 
GATE_UI_API gate_result_t gate_ui_graphics_create_native (gate_ui_graphics_t *graph, gate_ui_host_t *host, void *graphics, void *param, gate_int32_t width, gate_int32_t height)
 
GATE_UI_API gate_result_t gate_ui_graphics_destroy (gate_ui_graphics_t *graph)
 
GATE_UI_API gate_int32_t gate_ui_graphics_width (gate_ui_graphics_t *graph)
 
GATE_UI_API gate_int32_t gate_ui_graphics_height (gate_ui_graphics_t *graph)
 
GATE_UI_API gate_result_t gate_ui_graphics_set_pixel (gate_ui_graphics_t *graph, gate_ui_point_t pos, gate_ui_color_t col)
 
GATE_UI_API gate_result_t gate_ui_graphics_get_pixel (gate_ui_graphics_t *graph, gate_ui_point_t pos, gate_ui_color_t *col)
 
GATE_UI_API gate_result_t gate_ui_graphics_draw (gate_ui_graphics_t *graph, gate_ui_graphics_t *srcgraph, gate_ui_point_t const *dst, gate_ui_size_t const *size, gate_ui_point_t const *srcpos)
 
GATE_UI_API gate_result_t gate_ui_graphics_draw_ex (gate_ui_graphics_t *graph, gate_ui_graphics_t *src_graph, gate_ui_position_t const *dest_rect, gate_ui_position_t const *src_rect)
 
GATE_UI_API gate_result_t gate_ui_graphics_draw_image (gate_ui_graphics_t *graph, gate_rasterimage_t const *srcimage, gate_ui_point_t const *dst, gate_ui_size_t const *size, gate_ui_point_t const *srcpos)
 
GATE_UI_API gate_result_t gate_ui_graphics_line (gate_ui_graphics_t *graph, gate_ui_point_t from, gate_ui_point_t to, gate_ui_color_t col, gate_uint32_t linewidth)
 
GATE_UI_API gate_result_t gate_ui_graphics_rect (gate_ui_graphics_t *graph, gate_ui_position_t rect, gate_ui_color_t const *colline, gate_uint32_t linewidth, gate_ui_color_t const *colfill)
 
GATE_UI_API gate_result_t gate_ui_graphics_polygon (gate_ui_graphics_t *graph, gate_ui_point_t const *points, gate_size_t pointcount, gate_ui_color_t const *colline, gate_uint32_t linewidth, gate_ui_color_t const *colfill)
 
GATE_UI_API gate_result_t gate_ui_graphics_get_char_size (gate_ui_graphics_t *graph, gate_ui_font_t const *font, gate_char32_t const *chars, gate_size_t charcount, gate_int32_t *charlens)
 
GATE_UI_API gate_result_t gate_ui_graphics_get_text_size (gate_ui_graphics_t *graph, gate_ui_font_t const *font, gate_string_t const *txt, gate_int32_t *width, gate_int32_t *height)
 
GATE_UI_API gate_result_t gate_ui_graphics_print (gate_ui_graphics_t *graph, gate_ui_font_t const *font, gate_string_t const *text, gate_ui_position_t const *pos)
 
GATE_UI_API void * gate_ui_graphics_handle (gate_ui_graphics_t *graph)
 
GATE_UI_API void * gate_ui_graphics_surface (gate_ui_graphics_t *graph)
 
GATE_UI_API gate_result_t gate_ui_icon_create_stock (gate_ui_icon_t *icon, gate_ui_host_t *host, gate_uint32_t stock_id, gate_uint32_t flags)
 
GATE_UI_API gate_result_t gate_ui_icon_create_native (gate_ui_icon_t *icon, gate_ui_host_t *host, void *handle, gate_uint32_t flags)
 
GATE_UI_API gate_result_t gate_ui_icon_create_image (gate_ui_icon_t *icon, gate_ui_host_t *host, gate_rasterimage_t const *image)
 
GATE_UI_API gate_result_t gate_ui_icon_create_file (gate_ui_icon_t *icon, gate_ui_host_t *host, gate_string_t const *filepath)
 
GATE_UI_API gate_result_t gate_ui_icon_copy (gate_ui_icon_t *dsticon, gate_ui_icon_t const *srcicon)
 
GATE_UI_API gate_result_t gate_ui_icon_destroy (gate_ui_icon_t *icon)
 
GATE_UI_API gate_result_t gate_ui_iconlist_create (gate_ui_iconlist_t *ilst, gate_ui_host_t *host, gate_int32_t width, gate_int32_t height)
 
GATE_UI_API gate_result_t gate_ui_iconlist_destroy (gate_ui_iconlist_t *ilst)
 
GATE_UI_API gate_size_t gate_ui_iconlist_count (gate_ui_iconlist_t *ilst)
 
GATE_UI_API gate_result_t gate_ui_iconlist_add (gate_ui_iconlist_t *ilst, gate_ui_icon_t const *icon, gate_intptr_t *icon_key)
 
GATE_UI_API gate_result_t gate_ui_iconlist_add_image (gate_ui_iconlist_t *ilst, gate_rasterimage_t const *image, gate_intptr_t *icon_key)
 
GATE_UI_API gate_result_t gate_ui_iconlist_get (gate_ui_iconlist_t *ilst, gate_intptr_t icon_key, gate_ui_icon_t *icon)
 
GATE_UI_API gate_result_t gate_ui_cursor_create_stock (gate_ui_cursor_t *cursor, gate_ui_host_t *host, gate_uint32_t stock_id)
 
GATE_UI_API gate_result_t gate_ui_cursor_create_native (gate_ui_cursor_t *cursor, gate_ui_host_t *host, void *handle, gate_uint32_t flags)
 
GATE_UI_API gate_result_t gate_ui_cursor_create_image (gate_ui_cursor_t *cursor, gate_ui_host_t *host, gate_rasterimage_t const *image, gate_uint16_t x, gate_uint16_t y)
 
GATE_UI_API gate_result_t gate_ui_cursor_create_file (gate_ui_cursor_t *cursor, gate_ui_host_t *host, gate_string_t const *filepath)
 
GATE_UI_API gate_result_t gate_ui_cursor_copy (gate_ui_cursor_t *dstcursor, gate_ui_cursor_t const *srccursor)
 
GATE_UI_API gate_result_t gate_ui_cursor_destroy (gate_ui_cursor_t *cursor)
 

Detailed Description

UI graphics and image handling utilities.