2006-05-29 08:59:36 +00:00
|
|
|
/*
|
|
|
|
* Clutter.
|
|
|
|
*
|
|
|
|
* An OpenGL based 'interactive canvas' library.
|
|
|
|
*
|
|
|
|
* Authored By Matthew Allum <mallum@openedhand.com>
|
|
|
|
*
|
|
|
|
* Copyright (C) 2006 OpenedHand
|
|
|
|
*
|
|
|
|
* This library is free software; you can redistribute it and/or
|
|
|
|
* modify it under the terms of the GNU Lesser General Public
|
|
|
|
* License as published by the Free Software Foundation; either
|
|
|
|
* version 2 of the License, or (at your option) any later version.
|
|
|
|
*
|
|
|
|
* This library is distributed in the hope that it will be useful,
|
|
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
|
|
* Lesser General Public License for more details.
|
|
|
|
*
|
|
|
|
* You should have received a copy of the GNU Lesser General Public
|
2008-07-01 10:08:28 +00:00
|
|
|
* License along with this library. If not, see <http://www.gnu.org/licenses/>.
|
2006-05-29 08:59:36 +00:00
|
|
|
*/
|
|
|
|
|
2023-07-21 13:37:20 +00:00
|
|
|
#pragma once
|
2015-07-07 14:51:13 +00:00
|
|
|
|
2008-10-30 17:04:34 +00:00
|
|
|
#if !defined(__CLUTTER_H_INSIDE__) && !defined(CLUTTER_COMPILATION)
|
|
|
|
#error "Only <clutter/clutter.h> can be included directly."
|
|
|
|
#endif
|
|
|
|
|
2023-08-07 13:38:12 +00:00
|
|
|
#include "clutter/clutter-types.h"
|
|
|
|
#include "clutter/clutter-input-device.h"
|
2006-05-29 08:59:36 +00:00
|
|
|
|
2011-12-20 12:28:06 +00:00
|
|
|
G_BEGIN_DECLS
|
|
|
|
|
2012-01-27 09:43:06 +00:00
|
|
|
#define CLUTTER_TYPE_EVENT (clutter_event_get_type ())
|
2014-07-21 21:46:44 +00:00
|
|
|
#define CLUTTER_TYPE_EVENT_SEQUENCE (clutter_event_sequence_get_type ())
|
2007-11-23 13:11:10 +00:00
|
|
|
|
|
|
|
/**
|
|
|
|
* CLUTTER_PRIORITY_EVENTS:
|
|
|
|
*
|
|
|
|
* Priority for event handling.
|
|
|
|
*/
|
2012-01-27 09:43:06 +00:00
|
|
|
#define CLUTTER_PRIORITY_EVENTS (G_PRIORITY_DEFAULT)
|
2007-11-23 13:11:10 +00:00
|
|
|
|
|
|
|
/**
|
|
|
|
* CLUTTER_CURRENT_TIME:
|
|
|
|
*
|
|
|
|
* Default value for "now".
|
|
|
|
*/
|
2012-01-27 09:43:06 +00:00
|
|
|
#define CLUTTER_CURRENT_TIME (0L)
|
2006-05-29 08:59:36 +00:00
|
|
|
|
2011-12-20 12:28:06 +00:00
|
|
|
/**
|
|
|
|
* CLUTTER_EVENT_PROPAGATE:
|
|
|
|
*
|
|
|
|
* Continues the propagation of an event; this macro should be
|
|
|
|
* used in event-related signals.
|
|
|
|
*/
|
2012-01-27 09:43:06 +00:00
|
|
|
#define CLUTTER_EVENT_PROPAGATE (FALSE)
|
2011-12-20 12:28:06 +00:00
|
|
|
|
|
|
|
/**
|
|
|
|
* CLUTTER_EVENT_STOP:
|
|
|
|
*
|
2012-05-03 10:27:22 +00:00
|
|
|
* Stops the propagation of an event; this macro should be used
|
2011-12-20 12:28:06 +00:00
|
|
|
* in event-related signals.
|
|
|
|
*/
|
2012-01-27 09:43:06 +00:00
|
|
|
#define CLUTTER_EVENT_STOP (TRUE)
|
|
|
|
|
|
|
|
/**
|
|
|
|
* CLUTTER_BUTTON_PRIMARY:
|
|
|
|
*
|
|
|
|
* The primary button of a pointer device.
|
|
|
|
*
|
|
|
|
* This is typically the left mouse button in a right-handed
|
|
|
|
* mouse configuration.
|
|
|
|
*/
|
|
|
|
#define CLUTTER_BUTTON_PRIMARY (1)
|
|
|
|
|
|
|
|
/**
|
|
|
|
* CLUTTER_BUTTON_MIDDLE:
|
|
|
|
*
|
|
|
|
* The middle button of a pointer device.
|
|
|
|
*/
|
|
|
|
#define CLUTTER_BUTTON_MIDDLE (2)
|
|
|
|
|
|
|
|
/**
|
|
|
|
* CLUTTER_BUTTON_SECONDARY:
|
|
|
|
*
|
|
|
|
* The secondary button of a pointer device.
|
|
|
|
*
|
|
|
|
* This is typically the right mouse button in a right-handed
|
|
|
|
* mouse configuration.
|
|
|
|
*/
|
|
|
|
#define CLUTTER_BUTTON_SECONDARY (3)
|
2006-05-29 08:59:36 +00:00
|
|
|
|
2007-03-22 18:21:59 +00:00
|
|
|
typedef struct _ClutterAnyEvent ClutterAnyEvent;
|
|
|
|
typedef struct _ClutterButtonEvent ClutterButtonEvent;
|
|
|
|
typedef struct _ClutterKeyEvent ClutterKeyEvent;
|
|
|
|
typedef struct _ClutterMotionEvent ClutterMotionEvent;
|
|
|
|
typedef struct _ClutterScrollEvent ClutterScrollEvent;
|
2007-10-03 09:28:16 +00:00
|
|
|
typedef struct _ClutterCrossingEvent ClutterCrossingEvent;
|
2012-03-19 13:47:19 +00:00
|
|
|
typedef struct _ClutterTouchEvent ClutterTouchEvent;
|
2015-05-22 16:30:09 +00:00
|
|
|
typedef struct _ClutterTouchpadPinchEvent ClutterTouchpadPinchEvent;
|
|
|
|
typedef struct _ClutterTouchpadSwipeEvent ClutterTouchpadSwipeEvent;
|
2021-04-15 17:38:37 +00:00
|
|
|
typedef struct _ClutterTouchpadHoldEvent ClutterTouchpadHoldEvent;
|
2015-01-14 13:31:13 +00:00
|
|
|
typedef struct _ClutterProximityEvent ClutterProximityEvent;
|
2016-05-10 14:54:41 +00:00
|
|
|
typedef struct _ClutterPadButtonEvent ClutterPadButtonEvent;
|
|
|
|
typedef struct _ClutterPadStripEvent ClutterPadStripEvent;
|
|
|
|
typedef struct _ClutterPadRingEvent ClutterPadRingEvent;
|
2020-07-17 14:31:10 +00:00
|
|
|
typedef struct _ClutterDeviceEvent ClutterDeviceEvent;
|
2020-02-17 09:43:29 +00:00
|
|
|
typedef struct _ClutterIMEvent ClutterIMEvent;
|
2012-03-19 13:47:19 +00:00
|
|
|
|
2013-08-29 16:10:56 +00:00
|
|
|
/**
|
|
|
|
* ClutterEventFilterFunc:
|
|
|
|
* @event: the event that is going to be emitted
|
2022-03-05 22:43:29 +00:00
|
|
|
* @event_actor: the current device actor of the events device
|
2013-08-29 16:10:56 +00:00
|
|
|
* @user_data: the data pointer passed to clutter_event_add_filter()
|
|
|
|
*
|
|
|
|
* A function pointer type used by event filters that are added with
|
|
|
|
* clutter_event_add_filter().
|
|
|
|
*
|
|
|
|
* Return value: %CLUTTER_EVENT_STOP to indicate that the event
|
|
|
|
* has been handled or %CLUTTER_EVENT_PROPAGATE otherwise.
|
|
|
|
* Returning %CLUTTER_EVENT_STOP skips any further filter
|
|
|
|
* functions and prevents the signal emission for the event.
|
|
|
|
*/
|
|
|
|
typedef gboolean (* ClutterEventFilterFunc) (const ClutterEvent *event,
|
2022-03-05 22:43:29 +00:00
|
|
|
ClutterActor *event_actor,
|
2013-08-29 16:10:56 +00:00
|
|
|
gpointer user_data);
|
|
|
|
|
2018-05-22 21:01:54 +00:00
|
|
|
CLUTTER_EXPORT
|
2006-06-05 Emmanuele Bassi <ebassi@openedhand.com>
* clutter-color.h:
* clutter-color.c: Reimplement ClutterColor as a boxed type;
add convenience API for color handling, like: add, subtract,
shade, HSL color-space conversion, packing and unpacking.
* clutter-private.h: Update ClutterMainContext, and export the
main context pointer here.
* clutter-rectangle.h:
* clutter-rectangle.c: Update the color-related code; make
clutter_rectangle_new() and empty constructor and provide
clutter_rectangle_new_with_color(); provide color setter
and getter API.
* clutter-label.h:
* clutter-label.c: Rename the "font" property to "font-name";
update the color-related code to the new ClutterColor object;
rename clutter_label_new() to clutter_label_new_with_text(),
and add setters and getters for the properties.
* clutter-marshal.list: Add VOID:OBJECT and VOID:BOXED marshallers
generators.
* clutter-stage.h:
* clutter-stage.c: Rework the API: provide a default constructor
for a singleton object, named clutter_stage_get_default(), which
supercedes the clutter_stage() function in clutter-main; provide
new events: button-press-event, button-release-event,
key-press-event and key-release-event; update the color-related
code;
(clutter_stage_snapshot): Allow negative width and height when
taking a snapshot (meaning: use full width/height).
(clutter_stage_get_element_at_pos): Rename clutter_stage_pick().
* clutter-element.c (clutter_element_paint): Clean up the
stage and color related code.
* clutter-event.h:
* clutter-event.c: Add generic ClutterAnyEvent type; add
clutter_event_new(), clutter_event_copy() and clutter_event_free();
make ClutterEvent a boxed type.
* clutter-main.h:
* clutter-main.c: Remove clutter_stage(); add clutter_main_quit(),
for cleanly quitting from clutter_main(); add multiple mainloops
support; allocate the ClutterCntx instead of adding it to the
stack; re-work the ClutterEvent dispatching.
* clutter-group.c (clutter_group_add), (clutter_group_remove): Keep
a reference on the element when added to a ClutterGroup.
* examples/rects.py
* examples/test.c:
* examples/test-text.c:
* examples/video-cube.c:
* examples/super-oh.c:
* examples/test-video.c: Update.
2006-06-05 13:38:31 +00:00
|
|
|
GType clutter_event_get_type (void) G_GNUC_CONST;
|
|
|
|
|
2018-05-22 21:01:54 +00:00
|
|
|
CLUTTER_EXPORT
|
2014-07-21 21:46:44 +00:00
|
|
|
GType clutter_event_sequence_get_type (void) G_GNUC_CONST;
|
|
|
|
|
2018-05-22 21:01:54 +00:00
|
|
|
CLUTTER_EXPORT
|
2011-02-22 17:12:34 +00:00
|
|
|
gboolean clutter_events_pending (void);
|
2018-05-22 21:01:54 +00:00
|
|
|
CLUTTER_EXPORT
|
2011-02-22 17:12:34 +00:00
|
|
|
ClutterEvent * clutter_event_get (void);
|
2018-05-22 21:01:54 +00:00
|
|
|
CLUTTER_EXPORT
|
2011-02-22 17:12:34 +00:00
|
|
|
void clutter_event_put (const ClutterEvent *event);
|
|
|
|
|
2018-05-22 21:01:54 +00:00
|
|
|
CLUTTER_EXPORT
|
2013-08-29 16:10:56 +00:00
|
|
|
guint clutter_event_add_filter (ClutterStage *stage,
|
|
|
|
ClutterEventFilterFunc func,
|
|
|
|
GDestroyNotify notify,
|
|
|
|
gpointer user_data);
|
2018-05-22 21:01:54 +00:00
|
|
|
CLUTTER_EXPORT
|
2013-08-29 16:10:56 +00:00
|
|
|
void clutter_event_remove_filter (guint id);
|
|
|
|
|
2018-05-22 21:01:54 +00:00
|
|
|
CLUTTER_EXPORT
|
2011-02-22 17:12:34 +00:00
|
|
|
ClutterEvent * clutter_event_new (ClutterEventType type);
|
2018-05-22 21:01:54 +00:00
|
|
|
CLUTTER_EXPORT
|
2011-02-22 17:12:34 +00:00
|
|
|
ClutterEvent * clutter_event_copy (const ClutterEvent *event);
|
2018-05-22 21:01:54 +00:00
|
|
|
CLUTTER_EXPORT
|
2011-02-22 17:12:34 +00:00
|
|
|
void clutter_event_free (ClutterEvent *event);
|
|
|
|
|
2018-05-22 21:01:54 +00:00
|
|
|
CLUTTER_EXPORT
|
2011-02-22 17:12:34 +00:00
|
|
|
ClutterEventType clutter_event_type (const ClutterEvent *event);
|
2018-05-22 21:01:54 +00:00
|
|
|
CLUTTER_EXPORT
|
2011-02-22 17:12:34 +00:00
|
|
|
ClutterEventFlags clutter_event_get_flags (const ClutterEvent *event);
|
2018-05-22 21:01:54 +00:00
|
|
|
CLUTTER_EXPORT
|
2011-02-22 17:12:34 +00:00
|
|
|
guint32 clutter_event_get_time (const ClutterEvent *event);
|
2018-05-22 21:01:54 +00:00
|
|
|
CLUTTER_EXPORT
|
2011-02-22 17:12:34 +00:00
|
|
|
ClutterModifierType clutter_event_get_state (const ClutterEvent *event);
|
2018-05-22 21:01:54 +00:00
|
|
|
CLUTTER_EXPORT
|
2011-02-22 17:12:34 +00:00
|
|
|
ClutterInputDevice * clutter_event_get_device (const ClutterEvent *event);
|
|
|
|
|
2018-05-22 21:01:54 +00:00
|
|
|
CLUTTER_EXPORT
|
2011-02-22 17:12:34 +00:00
|
|
|
ClutterInputDevice * clutter_event_get_source_device (const ClutterEvent *event);
|
2015-02-04 15:59:22 +00:00
|
|
|
|
2018-05-22 21:01:54 +00:00
|
|
|
CLUTTER_EXPORT
|
2015-02-04 15:59:22 +00:00
|
|
|
ClutterInputDeviceTool *clutter_event_get_device_tool (const ClutterEvent *event);
|
|
|
|
|
2022-02-25 15:15:43 +00:00
|
|
|
CLUTTER_DEPRECATED
|
2011-02-22 17:12:34 +00:00
|
|
|
ClutterActor * clutter_event_get_source (const ClutterEvent *event);
|
2018-05-22 21:01:54 +00:00
|
|
|
CLUTTER_EXPORT
|
2011-02-22 17:12:34 +00:00
|
|
|
ClutterInputDeviceType clutter_event_get_device_type (const ClutterEvent *event);
|
2018-05-22 21:01:54 +00:00
|
|
|
CLUTTER_EXPORT
|
2011-02-22 17:12:34 +00:00
|
|
|
void clutter_event_get_coords (const ClutterEvent *event,
|
|
|
|
gfloat *x,
|
|
|
|
gfloat *y);
|
2018-05-22 21:01:54 +00:00
|
|
|
CLUTTER_EXPORT
|
2012-04-19 11:16:54 +00:00
|
|
|
void clutter_event_get_position (const ClutterEvent *event,
|
2019-02-20 14:53:44 +00:00
|
|
|
graphene_point_t *position);
|
2018-05-22 21:01:54 +00:00
|
|
|
CLUTTER_EXPORT
|
2012-04-19 11:16:54 +00:00
|
|
|
float clutter_event_get_distance (const ClutterEvent *source,
|
|
|
|
const ClutterEvent *target);
|
2018-05-22 21:01:54 +00:00
|
|
|
CLUTTER_EXPORT
|
2012-04-19 11:16:54 +00:00
|
|
|
double clutter_event_get_angle (const ClutterEvent *source,
|
|
|
|
const ClutterEvent *target);
|
2018-05-22 21:01:54 +00:00
|
|
|
CLUTTER_EXPORT
|
2011-02-22 17:12:34 +00:00
|
|
|
gdouble * clutter_event_get_axes (const ClutterEvent *event,
|
|
|
|
guint *n_axes);
|
2018-05-22 21:01:54 +00:00
|
|
|
CLUTTER_EXPORT
|
2012-05-25 10:33:57 +00:00
|
|
|
gboolean clutter_event_has_shift_modifier (const ClutterEvent *event);
|
2018-05-22 21:01:54 +00:00
|
|
|
CLUTTER_EXPORT
|
2012-05-25 10:33:57 +00:00
|
|
|
gboolean clutter_event_has_control_modifier (const ClutterEvent *event);
|
2018-05-22 21:01:54 +00:00
|
|
|
CLUTTER_EXPORT
|
2012-07-18 14:32:53 +00:00
|
|
|
gboolean clutter_event_is_pointer_emulated (const ClutterEvent *event);
|
2018-05-22 21:01:54 +00:00
|
|
|
CLUTTER_EXPORT
|
2011-02-22 17:12:34 +00:00
|
|
|
guint clutter_event_get_key_symbol (const ClutterEvent *event);
|
2018-05-22 21:01:54 +00:00
|
|
|
CLUTTER_EXPORT
|
2011-02-22 17:12:34 +00:00
|
|
|
guint16 clutter_event_get_key_code (const ClutterEvent *event);
|
2018-05-22 21:01:54 +00:00
|
|
|
CLUTTER_EXPORT
|
2013-03-05 06:06:03 +00:00
|
|
|
gunichar clutter_event_get_key_unicode (const ClutterEvent *event);
|
2018-05-22 21:01:54 +00:00
|
|
|
CLUTTER_EXPORT
|
2011-02-22 17:12:34 +00:00
|
|
|
guint32 clutter_event_get_button (const ClutterEvent *event);
|
2018-05-22 21:01:54 +00:00
|
|
|
CLUTTER_EXPORT
|
2011-02-22 17:12:34 +00:00
|
|
|
ClutterActor * clutter_event_get_related (const ClutterEvent *event);
|
2018-05-22 21:01:54 +00:00
|
|
|
CLUTTER_EXPORT
|
2011-02-22 17:12:34 +00:00
|
|
|
ClutterScrollDirection clutter_event_get_scroll_direction (const ClutterEvent *event);
|
2018-05-22 21:01:54 +00:00
|
|
|
CLUTTER_EXPORT
|
2012-03-19 12:15:41 +00:00
|
|
|
void clutter_event_get_scroll_delta (const ClutterEvent *event,
|
|
|
|
gdouble *dx,
|
|
|
|
gdouble *dy);
|
2011-02-22 17:12:34 +00:00
|
|
|
|
2018-05-22 21:01:54 +00:00
|
|
|
CLUTTER_EXPORT
|
2012-03-19 13:47:19 +00:00
|
|
|
ClutterEventSequence * clutter_event_get_event_sequence (const ClutterEvent *event);
|
|
|
|
|
2018-05-22 21:01:54 +00:00
|
|
|
CLUTTER_EXPORT
|
2011-02-22 17:12:34 +00:00
|
|
|
guint32 clutter_keysym_to_unicode (guint keyval);
|
2018-05-22 21:01:54 +00:00
|
|
|
CLUTTER_EXPORT
|
2011-10-07 11:05:39 +00:00
|
|
|
guint clutter_unicode_to_keysym (guint32 wc);
|
2011-02-22 17:12:34 +00:00
|
|
|
|
2018-05-22 21:01:54 +00:00
|
|
|
CLUTTER_EXPORT
|
2011-02-22 17:12:34 +00:00
|
|
|
guint32 clutter_get_current_event_time (void);
|
2018-05-22 21:01:54 +00:00
|
|
|
CLUTTER_EXPORT
|
Eliminate G_CONST_RETURN
The G_CONST_RETURN define in GLib is, and has always been, a bit fuzzy.
We always used it to conform to the platform, at least for public-facing
API.
At first I assumed it has something to do with brain-damaged compilers
or with weird platforms where const was not really supported; sadly,
it's something much, much worse: it's a define that can be toggled at
compile-time to remove const from the signature of public API. This is a
truly terrifying feature that I assume was added in the past century,
and whose inception clearly had something to do with massive doses of
absynthe and opium — because any other explanation would make the
existence of such a feature even worse than assuming drugs had anything
to do with it.
Anyway, and pleasing the gods, this dubious feature is being
removed/deprecated in GLib; see bug:
https://bugzilla.gnome.org/show_bug.cgi?id=644611
Before deprecation, though, we should just remove its usage from the
whole API. We should especially remove its usage from Cally's internals,
since there it never made sense in the first place.
2011-06-07 14:49:20 +00:00
|
|
|
const ClutterEvent * clutter_get_current_event (void);
|
2009-06-06 14:27:37 +00:00
|
|
|
|
2018-05-22 21:01:54 +00:00
|
|
|
CLUTTER_EXPORT
|
2016-05-03 11:31:11 +00:00
|
|
|
guint clutter_event_get_touchpad_gesture_finger_count (const ClutterEvent *event);
|
2015-07-01 13:15:41 +00:00
|
|
|
|
2018-05-22 21:01:54 +00:00
|
|
|
CLUTTER_EXPORT
|
2015-07-01 13:15:41 +00:00
|
|
|
gdouble clutter_event_get_gesture_pinch_angle_delta (const ClutterEvent *event);
|
|
|
|
|
2018-05-22 21:01:54 +00:00
|
|
|
CLUTTER_EXPORT
|
2015-07-01 13:15:41 +00:00
|
|
|
gdouble clutter_event_get_gesture_pinch_scale (const ClutterEvent *event);
|
|
|
|
|
2018-05-22 21:01:54 +00:00
|
|
|
CLUTTER_EXPORT
|
2015-07-01 13:15:41 +00:00
|
|
|
ClutterTouchpadGesturePhase clutter_event_get_gesture_phase (const ClutterEvent *event);
|
|
|
|
|
2018-05-22 21:01:54 +00:00
|
|
|
CLUTTER_EXPORT
|
2015-07-01 13:15:41 +00:00
|
|
|
void clutter_event_get_gesture_motion_delta (const ClutterEvent *event,
|
|
|
|
gdouble *dx,
|
|
|
|
gdouble *dy);
|
|
|
|
|
2020-07-05 15:22:59 +00:00
|
|
|
CLUTTER_EXPORT
|
|
|
|
void clutter_event_get_gesture_motion_delta_unaccelerated (const ClutterEvent *event,
|
|
|
|
gdouble *dx,
|
|
|
|
gdouble *dy);
|
|
|
|
|
2018-07-29 14:15:52 +00:00
|
|
|
CLUTTER_EXPORT
|
2015-10-23 15:27:14 +00:00
|
|
|
ClutterScrollSource clutter_event_get_scroll_source (const ClutterEvent *event);
|
2018-07-29 14:15:52 +00:00
|
|
|
|
|
|
|
CLUTTER_EXPORT
|
2015-10-23 15:27:14 +00:00
|
|
|
ClutterScrollFinishFlags clutter_event_get_scroll_finish_flags (const ClutterEvent *event);
|
|
|
|
|
2018-05-22 21:01:54 +00:00
|
|
|
CLUTTER_EXPORT
|
2016-06-22 15:33:33 +00:00
|
|
|
guint clutter_event_get_mode_group (const ClutterEvent *event);
|
|
|
|
|
2018-05-22 21:01:54 +00:00
|
|
|
CLUTTER_EXPORT
|
2023-08-04 08:59:42 +00:00
|
|
|
gboolean clutter_event_get_pad_details (const ClutterEvent *event,
|
|
|
|
guint *number,
|
|
|
|
guint *mode,
|
|
|
|
ClutterInputDevicePadSource *source,
|
|
|
|
gdouble *value);
|
2020-12-08 11:28:01 +00:00
|
|
|
CLUTTER_EXPORT
|
|
|
|
uint32_t clutter_event_get_event_code (const ClutterEvent *event);
|
2016-06-22 15:33:33 +00:00
|
|
|
|
2020-12-08 11:51:56 +00:00
|
|
|
CLUTTER_EXPORT
|
|
|
|
int32_t clutter_event_sequence_get_slot (const ClutterEventSequence *sequence);
|
|
|
|
|
2020-12-08 12:18:06 +00:00
|
|
|
CLUTTER_EXPORT
|
|
|
|
int64_t clutter_event_get_time_us (const ClutterEvent *event);
|
|
|
|
CLUTTER_EXPORT
|
2023-08-04 08:59:42 +00:00
|
|
|
gboolean clutter_event_get_relative_motion (const ClutterEvent *event,
|
|
|
|
double *dx,
|
|
|
|
double *dy,
|
|
|
|
double *dx_unaccel,
|
|
|
|
double *dy_unaccel,
|
|
|
|
double *dx_constrained,
|
|
|
|
double *dy_constrained);
|
2020-12-08 12:18:06 +00:00
|
|
|
|
2023-08-04 08:59:42 +00:00
|
|
|
CLUTTER_EXPORT
|
|
|
|
const char * clutter_event_get_im_text (const ClutterEvent *event);
|
|
|
|
CLUTTER_EXPORT
|
|
|
|
gboolean clutter_event_get_im_location (const ClutterEvent *event,
|
|
|
|
int32_t *offset,
|
|
|
|
int32_t *anchor);
|
|
|
|
CLUTTER_EXPORT
|
|
|
|
uint32_t clutter_event_get_im_delete_length (const ClutterEvent *event);
|
|
|
|
CLUTTER_EXPORT
|
|
|
|
ClutterPreeditResetMode clutter_event_get_im_preedit_reset_mode (const ClutterEvent *event);
|
2020-12-08 12:18:06 +00:00
|
|
|
|
2006-05-29 08:59:36 +00:00
|
|
|
G_END_DECLS
|