---
name: "caca_event"
section: "3caca"
platform: "linux"
package: "libcaca"
version: "0.99.beta20-7"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/caca_event"
---

# caca\_event(3caca)

Handling of user events.

## NAME

caca\_event - Handling of user events.

## SYNOPSIS

\#include \<caca.h\>

### Data Fields

enum **caca\_event\_type** **type**\
 union {\
    struct {\
       int **x**\
       int **y**\
       int **button**\
    } **mouse**\
    struct {\
       int **w**\
       int **h**\
    } **resize**\
    struct {\
       int **ch**\
       uint32\_t **utf32**\
       char **utf8** \[8\]\
    } **key**\
 } **data**\

## Detailed Description

This structure is filled by **caca\_get\_event()** when an event is received. It is an opaque structure that should only be accessed through caca\_event\_get\_type() and similar functions. The struct members may no longer be directly accessible in future versions.

## Author

Generated automatically by Doxygen for libcaca from the source code.
