15# if defined(_WIN32) && !defined(PUGL_STATIC) && defined(PUGL_INTERNAL)
16# define PUGL_API __declspec(dllexport)
17# elif defined(_WIN32) && !defined(PUGL_STATIC)
18# define PUGL_API __declspec(dllimport)
19# elif defined(__GNUC__)
20# define PUGL_API __attribute__((visibility("default")))
26#ifndef PUGL_DISABLE_DEPRECATED
27# if defined(__clang__)
28# define PUGL_DEPRECATED_BY(rep) __attribute__((deprecated("", rep)))
29# elif defined(__GNUC__)
30# define PUGL_DEPRECATED_BY(rep) __attribute__((deprecated("Use " rep)))
32# define PUGL_DEPRECATED_BY(rep)
37# define PUGL_CONST_FUNC __attribute__((const))
39# define PUGL_CONST_FUNC
42#define PUGL_CONST_API \
46#define PUGL_BEGIN_DECLS
860#define PUGL_NUM_VIEW_HINTS ((unsigned)PUGL_REFRESH_RATE + 1u)
907#define PUGL_NUM_SIZE_HINTS ((unsigned)PUGL_MAX_ASPECT + 1u)
1265#define PUGL_NUM_CURSORS ((unsigned)PUGL_CURSOR_ANTI_DIAGONAL + 1u)
1462#ifndef PUGL_DISABLE_DEPRECATED
1625puglInitWindowAspectRatio(
PuglView* view,
CAdPlugDatabase::CRecord::RecordType type
Definition adplugdb.cpp:93
int y
Definition inflate.c:1588
struct huft * u[BMAX]
Definition inflate.c:1583
unsigned x[BMAX+1]
Definition inflate.c:1586
PuglLoopEnterEvent PuglEventLoopEnter
Definition pugl.h:1522
PuglUpdateEvent PuglEventUpdate
Definition pugl.h:1486
const PuglStatus st1
Definition pugl.h:1909
PuglCloseEvent PuglEventClose
Definition pugl.h:1492
PuglButtonEvent PuglEventButton
Definition pugl.h:1507
PuglMotionEvent PuglEventMotion
Definition pugl.h:1510
static PuglViewHint int value
Definition pugl.h:1708
static PuglViewHint hint
Definition pugl.h:1707
return st0 st0
Definition pugl.h:1912
PuglFocusEvent PuglEventFocus
Definition pugl.h:1495
PuglUnmapEvent PuglEventUnmap
Definition pugl.h:1483
PuglKeyEvent PuglEventKey
Definition pugl.h:1498
PuglConfigureEvent PuglEventConfigure
Definition pugl.h:1477
char * argv[]
Definition unzip.c:738
static const PuglBackend * backend
Definition pugl.h:1732
PuglDestroyEvent PuglEventDestroy
Definition pugl.h:1474
static int int minY
Definition pugl.h:1627
static int minX
Definition pugl.h:1626
PuglTextEvent PuglEventText
Definition pugl.h:1501
static const char * title
Definition pugl.h:1747
static double timeout
Definition pugl.h:1799
static const char * name
Definition pugl.h:1582
PuglExposeEvent PuglEventExpose
Definition pugl.h:1489
static int int height
Definition pugl.h:1594
PuglCreateEvent PuglEventCreate
Definition pugl.h:1471
PuglMapEvent PuglEventMap
Definition pugl.h:1480
PuglTimerEvent PuglEventTimer
Definition pugl.h:1519
uintptr_t PuglNativeWindow
Definition pugl.h:1537
PUGL_API PuglStatus puglWaitForEvent(PuglView *view)
Definition x11.c:1141
static int int int int maxY
Definition pugl.h:1630
PuglCrossingEvent PuglEventCrossing
Definition pugl.h:1504
static int width
Definition pugl.h:1593
static bool ignore
Definition pugl.h:1696
static uintptr_t parent
Definition pugl.h:1644
PuglLoopLeaveEvent PuglEventLoopLeave
Definition pugl.h:1525
PUGL_API PuglStatus puglProcessEvents(PuglView *view)
Definition win.c:946
PuglScrollEvent PuglEventScroll
Definition pugl.h:1513
PuglClientEvent PuglEventClient
Definition pugl.h:1516
static bool resizable
Definition pugl.h:1668
static int int int maxX
Definition pugl.h:1628
PuglAnyEvent PuglDestroyEvent
Definition pugl.h:270
uint32_t PuglEventFlags
Bitwise OR of PuglEventFlag values.
Definition pugl.h:215
PuglKey
Definition pugl.h:130
PuglAnyEvent PuglUpdateEvent
Definition pugl.h:317
PuglMod
Keyboard modifier flags.
Definition pugl.h:106
PuglAnyEvent PuglLoopLeaveEvent
Definition pugl.h:586
PuglAnyEvent PuglCreateEvent
Definition pugl.h:255
PuglCrossingMode
Reason for a PuglCrossingEvent.
Definition pugl.h:218
uint32_t PuglMods
Bitwise OR of PuglMod values.
Definition pugl.h:114
PuglEventFlag
Common flags for all event types.
Definition pugl.h:209
PuglAnyEvent PuglMapEvent
Definition pugl.h:296
PuglAnyEvent PuglCloseEvent
Definition pugl.h:343
PuglScrollDirection
Definition pugl.h:232
PuglAnyEvent PuglUnmapEvent
Definition pugl.h:306
PuglAnyEvent PuglLoopEnterEvent
Definition pugl.h:576
PuglEventType
The type of a PuglEvent.
Definition pugl.h:179
@ PUGL_KEY_CTRL_L
Definition pugl.h:162
@ PUGL_KEY_F7
Definition pugl.h:143
@ PUGL_KEY_PRINT_SCREEN
Definition pugl.h:174
@ PUGL_KEY_F9
Definition pugl.h:145
@ PUGL_KEY_ALT_R
Definition pugl.h:166
@ PUGL_KEY_NUM_LOCK
Definition pugl.h:173
@ PUGL_KEY_F5
Definition pugl.h:141
@ PUGL_KEY_F12
Definition pugl.h:148
@ PUGL_KEY_BACKSPACE
Definition pugl.h:132
@ PUGL_KEY_CAPS_LOCK
Definition pugl.h:171
@ PUGL_KEY_SUPER_L
Definition pugl.h:168
@ PUGL_KEY_PAGE_UP
Definition pugl.h:153
@ PUGL_KEY_F11
Definition pugl.h:147
@ PUGL_KEY_SUPER
Definition pugl.h:167
@ PUGL_KEY_F10
Definition pugl.h:146
@ PUGL_KEY_HOME
Definition pugl.h:155
@ PUGL_KEY_ALT
Definition pugl.h:164
@ PUGL_KEY_SHIFT
Definition pugl.h:158
@ PUGL_KEY_PAGE_DOWN
Definition pugl.h:154
@ PUGL_KEY_F8
Definition pugl.h:144
@ PUGL_KEY_CTRL_R
Definition pugl.h:163
@ PUGL_KEY_ESCAPE
Definition pugl.h:133
@ PUGL_KEY_DELETE
Definition pugl.h:134
@ PUGL_KEY_INSERT
Definition pugl.h:157
@ PUGL_KEY_F1
Definition pugl.h:137
@ PUGL_KEY_PAUSE
Definition pugl.h:175
@ PUGL_KEY_RIGHT
Definition pugl.h:151
@ PUGL_KEY_F6
Definition pugl.h:142
@ PUGL_KEY_DOWN
Definition pugl.h:152
@ PUGL_KEY_SUPER_R
Definition pugl.h:169
@ PUGL_KEY_F4
Definition pugl.h:140
@ PUGL_KEY_CTRL
Definition pugl.h:161
@ PUGL_KEY_ALT_L
Definition pugl.h:165
@ PUGL_KEY_SCROLL_LOCK
Definition pugl.h:172
@ PUGL_KEY_SHIFT_R
Definition pugl.h:160
@ PUGL_KEY_F3
Definition pugl.h:139
@ PUGL_KEY_LEFT
Definition pugl.h:149
@ PUGL_KEY_END
Definition pugl.h:156
@ PUGL_KEY_F2
Definition pugl.h:138
@ PUGL_KEY_MENU
Definition pugl.h:170
@ PUGL_KEY_SHIFT_L
Definition pugl.h:159
@ PUGL_KEY_UP
Definition pugl.h:150
@ PUGL_MOD_SUPER
Mod4/Command/Windows key.
Definition pugl.h:110
@ PUGL_MOD_ALT
Alt/Option key.
Definition pugl.h:109
@ PUGL_MOD_SHIFT
Shift key.
Definition pugl.h:107
@ PUGL_MOD_CTRL
Control key.
Definition pugl.h:108
@ PUGL_CROSSING_NORMAL
Crossing due to pointer motion.
Definition pugl.h:219
@ PUGL_CROSSING_UNGRAB
Crossing due to a grab release.
Definition pugl.h:221
@ PUGL_CROSSING_GRAB
Crossing due to a grab.
Definition pugl.h:220
@ PUGL_IS_HINT
Event is a hint (not direct user input).
Definition pugl.h:211
@ PUGL_IS_SEND_EVENT
Event is synthetic.
Definition pugl.h:210
@ PUGL_SCROLL_RIGHT
Scroll right.
Definition pugl.h:236
@ PUGL_SCROLL_DOWN
Scroll down.
Definition pugl.h:234
@ PUGL_SCROLL_UP
Scroll up.
Definition pugl.h:233
@ PUGL_SCROLL_SMOOTH
Smooth scroll in any direction.
Definition pugl.h:237
@ PUGL_SCROLL_LEFT
Scroll left.
Definition pugl.h:235
@ PUGL_UPDATE
View ready to draw, a PuglUpdateEvent.
Definition pugl.h:186
@ PUGL_EXPOSE
View must be drawn, a PuglExposeEvent.
Definition pugl.h:187
@ PUGL_LOOP_LEAVE
Recursive loop left, a PuglLoopLeaveEvent.
Definition pugl.h:203
@ PUGL_DATA
Data available from clipboard, a PuglDataEvent.
Definition pugl.h:205
@ PUGL_BUTTON_RELEASE
Mouse button released, a PuglButtonEvent.
Definition pugl.h:197
@ PUGL_LOOP_ENTER
Recursive loop entered, a PuglLoopEnterEvent.
Definition pugl.h:202
@ PUGL_CREATE
View created, a PuglCreateEvent.
Definition pugl.h:181
@ PUGL_KEY_RELEASE
Key released, a PuglKeyEvent.
Definition pugl.h:192
@ PUGL_TIMER
Timer triggered, a PuglTimerEvent.
Definition pugl.h:201
@ PUGL_CLOSE
View will be closed, a PuglCloseEvent.
Definition pugl.h:188
@ PUGL_KEY_PRESS
Key pressed, a PuglKeyEvent.
Definition pugl.h:191
@ PUGL_SCROLL
Scrolled, a PuglScrollEvent.
Definition pugl.h:199
@ PUGL_BUTTON_PRESS
Mouse button pressed, a PuglButtonEvent.
Definition pugl.h:196
@ PUGL_CLIENT
Custom client message, a PuglClientEvent.
Definition pugl.h:200
@ PUGL_FOCUS_IN
Keyboard focus entered view, a PuglFocusEvent.
Definition pugl.h:189
@ PUGL_UNMAP
View made invisible, a PuglUnmapEvent.
Definition pugl.h:185
@ PUGL_MAP
View made visible, a PuglMapEvent.
Definition pugl.h:184
@ PUGL_TEXT
Character entered, a PuglTextEvent.
Definition pugl.h:193
@ PUGL_NOTHING
No event.
Definition pugl.h:180
@ PUGL_DATA_OFFER
Data offered from clipboard, a PuglDataOfferEvent.
Definition pugl.h:204
@ PUGL_FOCUS_OUT
Keyboard focus left view, a PuglFocusEvent.
Definition pugl.h:190
@ PUGL_MOTION
Pointer moved, a PuglMotionEvent.
Definition pugl.h:198
@ PUGL_CONFIGURE
View moved/resized, a PuglConfigureEvent.
Definition pugl.h:183
@ PUGL_POINTER_OUT
Pointer left view, a PuglCrossingEvent.
Definition pugl.h:195
@ PUGL_DESTROY
View destroyed, a PuglDestroyEvent.
Definition pugl.h:182
@ PUGL_POINTER_IN
Pointer entered view, a PuglCrossingEvent.
Definition pugl.h:194
PUGL_API PuglRect puglGetFrame(const PuglView *view)
Definition common.c:233
PUGL_API PuglStatus puglSetSizeHint(PuglView *view, PuglSizeHint hint, PuglSpan width, PuglSpan height)
Definition wasm.c:611
PUGL_API PuglStatus puglSetFrame(PuglView *view, PuglRect frame)
Definition win.c:1055
PUGL_API PuglStatus puglSetPosition(PuglView *view, int x, int y)
Definition wasm.c:723
PUGL_API PuglStatus puglSetSize(PuglView *view, unsigned width, unsigned height)
Definition win.c:1105
PUGL_API void * puglGetContext(PuglView *view)
Definition common.c:270
PUGL_API PuglStatus puglPostRedisplay(PuglView *view)
Definition wasm.c:579
PUGL_API PuglStatus puglPostRedisplayRect(PuglView *view, PuglRect rect)
Definition wasm.c:587
PUGL_API PuglStatus puglRequestAttention(PuglView *view)
Definition win.c:819
PUGL_API PuglStatus puglSetClipboard(PuglView *view, const char *type, const void *data, size_t len)
Definition wasm.c:698
PUGL_API bool puglHasFocus(const PuglView *view)
Return whether view has the keyboard input focus.
Definition win.c:813
PUGL_API const void * puglGetClipboard(PuglView *view, uint32_t typeIndex, size_t *len)
Definition wasm.c:689
PUGL_API PuglStatus puglAcceptOffer(PuglView *view, const PuglDataOfferEvent *offer, uint32_t typeIndex)
Definition wasm.c:499
PUGL_API PuglStatus puglSetCursor(PuglView *view, PuglCursor cursor)
Definition wasm.c:708
PuglCursor
Definition pugl.h:1252
PUGL_API PuglStatus puglGrabFocus(PuglView *view)
Definition wasm.c:493
PUGL_API PuglStatus puglSendEvent(PuglView *view, const PuglEvent *event)
Definition win.c:848
PUGL_API uint32_t puglGetNumClipboardTypes(const PuglView *view)
Definition wasm.c:515
PUGL_API PuglStatus puglStopTimer(PuglView *view, uintptr_t id)
Definition wasm.c:667
PUGL_API const char * puglGetClipboardType(const PuglView *view, uint32_t typeIndex)
Definition wasm.c:522
PUGL_API PuglStatus puglStartTimer(PuglView *view, uintptr_t id, double timeout)
Definition wasm.c:647
PUGL_API PuglStatus puglPaste(PuglView *view)
Definition wasm.c:508
@ PUGL_CURSOR_NO
Operation not allowed.
Definition pugl.h:1257
@ PUGL_CURSOR_UP_DOWN
Up/down arrow for vertical resize.
Definition pugl.h:1259
@ PUGL_CURSOR_ARROW
Default pointing arrow.
Definition pugl.h:1253
@ PUGL_CURSOR_CARET
Caret (I-Beam) for text entry.
Definition pugl.h:1254
@ PUGL_CURSOR_CROSSHAIR
Cross-hair.
Definition pugl.h:1255
@ PUGL_CURSOR_HAND
Hand with a pointing finger.
Definition pugl.h:1256
@ PUGL_CURSOR_ANTI_DIAGONAL
Bottom-left to top-right arrow for diagonal resize.
Definition pugl.h:1261
@ PUGL_CURSOR_LEFT_RIGHT
Left/right arrow for horizontal resize.
Definition pugl.h:1258
@ PUGL_CURSOR_DIAGONAL
Top-left to bottom-right arrow for diagonal resize.
Definition pugl.h:1260
int16_t PuglCoord
Definition pugl.h:67
uint16_t PuglSpan
Definition pugl.h:75
PUGL_API PuglStatus puglSetBackend(PuglView *view, const PuglBackend *backend)
Definition common.c:187
PUGL_API PuglHandle puglGetHandle(PuglView *view)
Get the user data for a view.
Definition common.c:181
PUGL_API void puglSetHandle(PuglView *view, PuglHandle handle)
Definition common.c:175
PUGL_API PuglStatus puglSetEventFunc(PuglView *view, PuglEventFunc eventFunc)
Set the function to call when an event occurs.
Definition common.c:200
PUGL_API PuglWorld * puglGetWorld(PuglView *view)
Return the world that view is a part of.
Definition common.c:169
PUGL_API PuglView * puglNewView(PuglWorld *world)
Definition common.c:116
PUGL_API PuglStatus puglSetViewHint(PuglView *view, PuglViewHint hint, int value)
Definition common.c:207
PUGL_API int puglGetViewHint(const PuglView *view, PuglViewHint hint)
Definition common.c:227
PUGL_API void puglFreeView(PuglView *view)
Free a view created with puglNewView().
Definition common.c:141
const PuglBackend * puglGetBackend(const PuglView *view)
Return the graphics backend used by a view.
Definition common.c:194
PUGL_API double puglGetScaleFactor(const PuglView *view)
Definition wasm.c:529
PUGL_CONST_API const char * puglStrerror(PuglStatus status)
Return a string describing a status code.
Definition common.c:18
PuglStatus
Return status code.
Definition pugl.h:627
@ PUGL_SUCCESS
Success.
Definition pugl.h:628
@ PUGL_FAILURE
Non-fatal failure.
Definition pugl.h:629
@ PUGL_REALIZE_FAILED
System view realization failed.
Definition pugl.h:636
@ PUGL_REGISTRATION_FAILED
Class registration failed.
Definition pugl.h:635
@ PUGL_SET_FORMAT_FAILED
Failed to set pixel format.
Definition pugl.h:637
@ PUGL_BAD_BACKEND
Invalid or missing backend.
Definition pugl.h:631
@ PUGL_BAD_PARAMETER
Invalid parameter.
Definition pugl.h:633
@ PUGL_BACKEND_FAILED
Backend initialization failed.
Definition pugl.h:634
@ PUGL_UNKNOWN_ERROR
Unknown system error.
Definition pugl.h:630
@ PUGL_UNSUPPORTED
Unsupported operation.
Definition pugl.h:639
@ PUGL_NO_MEMORY
Failed to allocate memory.
Definition pugl.h:640
@ PUGL_BAD_CONFIGURATION
Invalid view configuration.
Definition pugl.h:632
@ PUGL_CREATE_CONTEXT_FAILED
Failed to create drawing context.
Definition pugl.h:638
void * PuglHandle
Handle for a view's opaque user data.
Definition pugl.h:837
struct PuglViewImpl PuglView
A drawable region that receives events.
Definition pugl.h:810
uintptr_t PuglNativeView
Definition pugl.h:834
PuglStatus(* PuglEventFunc)(PuglView *view, const PuglEvent *event)
A function called when an event occurs.
Definition pugl.h:910
PuglViewHintValue
A special view hint value.
Definition pugl.h:863
PuglViewHint
A hint for configuring a view.
Definition pugl.h:840
struct PuglBackendImpl PuglBackend
Definition pugl.h:823
PuglSizeHint
Definition pugl.h:876
@ PUGL_DONT_CARE
Use best available value.
Definition pugl.h:864
@ PUGL_FALSE
Explicitly false.
Definition pugl.h:865
@ PUGL_TRUE
Explicitly true.
Definition pugl.h:866
@ PUGL_ALPHA_BITS
Number of bits for alpha channel.
Definition pugl.h:848
@ PUGL_DOUBLE_BUFFER
True if double buffering should be used.
Definition pugl.h:852
@ PUGL_CONTEXT_VERSION_MINOR
OpenGL context minor version.
Definition pugl.h:844
@ PUGL_USE_DEBUG_CONTEXT
True to use a debug OpenGL context.
Definition pugl.h:842
@ PUGL_BLUE_BITS
Number of bits for blue channel.
Definition pugl.h:847
@ PUGL_RED_BITS
Number of bits for red channel.
Definition pugl.h:845
@ PUGL_IGNORE_KEY_REPEAT
True if key repeat events are ignored.
Definition pugl.h:855
@ PUGL_DEPTH_BITS
Number of bits for depth buffer.
Definition pugl.h:849
@ PUGL_REFRESH_RATE
Refresh rate in Hz.
Definition pugl.h:856
@ PUGL_USE_COMPAT_PROFILE
Use compatible (not core) OpenGL profile.
Definition pugl.h:841
@ PUGL_SAMPLES
Number of samples per pixel (AA).
Definition pugl.h:851
@ PUGL_SWAP_INTERVAL
Number of frames between buffer swaps.
Definition pugl.h:853
@ PUGL_CONTEXT_VERSION_MAJOR
OpenGL context major version.
Definition pugl.h:843
@ PUGL_STENCIL_BITS
Number of bits for stencil buffer.
Definition pugl.h:850
@ PUGL_RESIZABLE
True if view should be resizable.
Definition pugl.h:854
@ PUGL_GREEN_BITS
Number of bits for green channel.
Definition pugl.h:846
@ PUGL_DEFAULT_SIZE
Default size.
Definition pugl.h:877
@ PUGL_MAX_ASPECT
Definition pugl.h:903
@ PUGL_MIN_SIZE
Minimum size.
Definition pugl.h:878
@ PUGL_MAX_SIZE
Maximum size.
Definition pugl.h:879
@ PUGL_FIXED_ASPECT
Definition pugl.h:887
@ PUGL_MIN_ASPECT
Definition pugl.h:895
PUGL_API PuglNativeView puglGetParentWindow(const PuglView *view)
Return the parent window this view is embedded in, or null.
Definition common.c:252
PUGL_API const char * puglGetWindowTitle(const PuglView *view)
Return the title of the window, or null.
Definition common.c:239
PUGL_API PuglStatus puglSetTransientParent(PuglView *view, PuglNativeView parent)
Definition wasm.c:715
PUGL_API bool puglGetVisible(const PuglView *view)
Return true iff the view is currently visible.
Definition common.c:264
PUGL_API PuglStatus puglShow(PuglView *view)
Definition wasm.c:457
PUGL_API PuglStatus puglSetParentWindow(PuglView *view, PuglNativeView parent)
Definition common.c:245
PUGL_API PuglNativeView puglGetTransientParent(const PuglView *view)
Definition common.c:258
PUGL_API PuglStatus puglRealize(PuglView *view)
Definition wasm.c:387
PUGL_API PuglStatus puglHide(PuglView *view)
Hide the current window.
Definition wasm.c:465
PUGL_API PuglStatus puglSetWindowTitle(PuglView *view, const char *title)
Definition wasm.c:602
PUGL_API PuglNativeView puglGetNativeView(PuglView *view)
Return the native window handle.
Definition wasm.c:595
PuglWorldFlag
World flags.
Definition pugl.h:682
PUGL_API PuglWorld * puglNewWorld(PuglWorldType type, PuglWorldFlags flags)
Definition common.c:42
PUGL_API PuglStatus puglSetClassName(PuglWorld *world, const char *name)
Definition common.c:83
uint32_t PuglWorldFlags
Bitwise OR of PuglWorldFlag values.
Definition pugl.h:692
PuglWorldType
The type of a World.
Definition pugl.h:676
PUGL_API PuglStatus puglUpdate(PuglWorld *world, double timeout)
Definition wasm.c:543
struct PuglWorldImpl PuglWorld
Definition pugl.h:670
PUGL_API double puglGetTime(const PuglWorld *world)
Definition wasm.c:536
PUGL_API void puglSetWorldHandle(PuglWorld *world, PuglWorldHandle handle)
Definition common.c:71
void * PuglWorldHandle
Handle for the world's opaque user data.
Definition pugl.h:673
PUGL_API PuglWorldHandle puglGetWorldHandle(PuglWorld *world)
Get the user data for the world.
Definition common.c:77
PUGL_API const char * puglGetClassName(const PuglWorld *world)
Get the class name of the application, or null.
Definition common.c:90
PUGL_API void puglFreeWorld(PuglWorld *world)
Free a world allocated with puglNewWorld().
Definition common.c:62
PUGL_API void * puglGetNativeWorld(PuglWorld *world)
Definition wasm.c:37
@ PUGL_WORLD_THREADS
Definition pugl.h:688
@ PUGL_PROGRAM
Top-level application.
Definition pugl.h:677
@ PUGL_MODULE
Plugin or module within a larger application.
Definition pugl.h:678
JSAMPIMAGE data
Definition jpeglib.h:945
static LilvWorld * world
Definition lilv_test.c:64
unsigned short uint16_t
Definition mid.cpp:99
unsigned int uint32_t
Definition mid.cpp:100
short int16_t
Definition mid.cpp:96
#define PUGL_END_DECLS
Definition pugl.h:47
#define PUGL_API
Definition pugl.h:22
#define PUGL_DEPRECATED_BY(rep)
Definition pugl.h:32
#define PUGL_BEGIN_DECLS
Definition pugl.h:46
#define PUGL_CONST_API
Definition pugl.h:42
Common header for all event structs.
Definition pugl.h:241
PuglEventFlags flags
Bitwise OR of PuglEventFlag values.
Definition pugl.h:243
PuglEventType type
Event type.
Definition pugl.h:242
Graphics backend interface.
Definition types.h:67
uintptr_t data1
Client-specific data.
Definition pugl.h:508
PuglEventFlags flags
Bitwise OR of PuglEventFlag values.
Definition pugl.h:507
uintptr_t data2
Client-specific data.
Definition pugl.h:509
PuglEventType type
PUGL_CLIENT
Definition pugl.h:506
PuglEventType type
PUGL_POINTER_IN or PUGL_POINTER_OUT
Definition pugl.h:420
PuglMods state
Bitwise OR of PuglMod flags.
Definition pugl.h:427
PuglEventFlags flags
Bitwise OR of PuglEventFlag values.
Definition pugl.h:421
double time
Time in seconds.
Definition pugl.h:422
double x
View-relative X coordinate.
Definition pugl.h:423
double yRoot
Root-relative Y coordinate.
Definition pugl.h:426
PuglCrossingMode mode
Reason for crossing.
Definition pugl.h:428
double xRoot
Root-relative X coordinate.
Definition pugl.h:425
double y
View-relative Y coordinate.
Definition pugl.h:424
PuglEventType type
PUGL_DATA
Definition pugl.h:550
uint32_t typeIndex
Index of datatype.
Definition pugl.h:553
double time
Time in seconds.
Definition pugl.h:552
PuglEventFlags flags
Bitwise OR of PuglEventFlag values.
Definition pugl.h:551
PuglEventType type
PUGL_DATA_OFFER
Definition pugl.h:537
double time
Time in seconds.
Definition pugl.h:539
PuglEventFlags flags
Bitwise OR of PuglEventFlag values.
Definition pugl.h:538
PuglCoord y
View-relative top-left Y coordinate of region.
Definition pugl.h:330
PuglEventType type
PUGL_EXPOSE
Definition pugl.h:327
PuglSpan height
Height of exposed region.
Definition pugl.h:332
PuglSpan width
Width of exposed region.
Definition pugl.h:331
PuglCoord x
View-relative top-left X coordinate of region.
Definition pugl.h:329
PuglEventFlags flags
Bitwise OR of PuglEventFlag values.
Definition pugl.h:328
PuglEventType type
PUGL_FOCUS_IN or PUGL_FOCUS_OUT
Definition pugl.h:352
PuglCrossingMode mode
Reason for focus change.
Definition pugl.h:354
PuglEventFlags flags
Bitwise OR of PuglEventFlag values.
Definition pugl.h:353
double yRoot
Root-relative Y coordinate.
Definition pugl.h:381
PuglEventFlags flags
Bitwise OR of PuglEventFlag values.
Definition pugl.h:376
double time
Time in seconds.
Definition pugl.h:377
double y
View-relative Y coordinate.
Definition pugl.h:379
double xRoot
Root-relative X coordinate.
Definition pugl.h:380
uint32_t keycode
Raw key code.
Definition pugl.h:383
uint32_t key
Unshifted Unicode character code, or 0.
Definition pugl.h:384
PuglMods state
Bitwise OR of PuglMod flags.
Definition pugl.h:382
PuglEventType type
PUGL_KEY_PRESS or PUGL_KEY_RELEASE
Definition pugl.h:375
double x
View-relative X coordinate.
Definition pugl.h:378
double xRoot
Root-relative X coordinate.
Definition pugl.h:470
double time
Time in seconds.
Definition pugl.h:467
PuglEventFlags flags
Bitwise OR of PuglEventFlag values.
Definition pugl.h:466
PuglEventType type
PUGL_MOTION
Definition pugl.h:465
double yRoot
Root-relative Y coordinate.
Definition pugl.h:471
double x
View-relative X coordinate.
Definition pugl.h:468
PuglMods state
Bitwise OR of PuglMod flags.
Definition pugl.h:472
double y
View-relative Y coordinate.
Definition pugl.h:469
PuglSpan width
Definition pugl.h:90
PuglCoord y
Definition pugl.h:89
PuglCoord x
Definition pugl.h:88
PuglSpan height
Definition pugl.h:91
double xRoot
Root-relative X coordinate.
Definition pugl.h:404
double time
Time in seconds.
Definition pugl.h:401
PuglEventFlags flags
Bitwise OR of PuglEventFlag values.
Definition pugl.h:400
PuglMods state
Bitwise OR of PuglMod flags.
Definition pugl.h:406
uint32_t keycode
Raw key code.
Definition pugl.h:407
uint32_t character
Unicode character code.
Definition pugl.h:408
double yRoot
Root-relative Y coordinate.
Definition pugl.h:405
double x
View-relative X coordinate.
Definition pugl.h:402
double y
View-relative Y coordinate.
Definition pugl.h:403
PuglEventType type
PUGL_TEXT
Definition pugl.h:399
PuglEventFlags flags
Bitwise OR of PuglEventFlag values.
Definition pugl.h:524
PuglEventType type
PUGL_TIMER
Definition pugl.h:523
uintptr_t id
Timer ID.
Definition pugl.h:525
Cross-platform view definition.
Definition types.h:37
Cross-platform world definition.
Definition types.h:54
PuglWorldHandle handle
Definition types.h:56
PuglEventType type
Event type.
Definition pugl.h:601
PuglConfigureEvent configure
PUGL_CONFIGURE
Definition pugl.h:603
PuglMotionEvent motion
PUGL_MOTION
Definition pugl.h:608
PuglScrollEvent scroll
PUGL_SCROLL
Definition pugl.h:609
PuglTimerEvent timer
PUGL_TIMER
Definition pugl.h:612
PuglButtonEvent button
PUGL_BUTTON_PRESS, PUGL_BUTTON_RELEASE
Definition pugl.h:602
PuglAnyEvent any
Valid for all event types.
Definition pugl.h:600
PuglTextEvent text
PUGL_TEXT
Definition pugl.h:606
PuglDataOfferEvent offer
PUGL_DATA_OFFER
Definition pugl.h:613
PuglExposeEvent expose
PUGL_EXPOSE
Definition pugl.h:604
PuglDataEvent data
PUGL_DATA
Definition pugl.h:614
PuglClientEvent client
PUGL_CLIENT
Definition pugl.h:611
PuglCrossingEvent crossing
PUGL_POINTER_IN, PUGL_POINTER_OUT
Definition pugl.h:607
PuglKeyEvent key
PUGL_KEY_PRESS, PUGL_KEY_RELEASE
Definition pugl.h:605
PuglFocusEvent focus
PUGL_FOCUS_IN, PUGL_FOCUS_OUT
Definition pugl.h:610
typedef int(UZ_EXP MsgFn)()
#define void
Definition unzip.h:396
* pargc
Definition zipinfo.c:622
#define const
Definition zconf.h:137