libgpac
Documentation of the core library of GPAC
events.c File Reference
#include "visual_manager.h"
#include "nodes_stacks.h"
#include "mpeg4_grouping.h"
#include <gpac/utf.h>
+ Include dependency graph for events.c:

Macros

#define CALL_SET_FOCUS(__child)
 

Functions

static GF_Nodebrowse_parent_for_focus (GF_Compositor *compositor, GF_Node *elt, Bool prev_focus)
 
static void gf_sc_reset_collide_cursor (GF_Compositor *compositor)
 
static Bool exec_text_selection (GF_Compositor *compositor, GF_Event *event)
 
static void flush_text_node_edit (GF_Compositor *compositor, Bool final_flush)
 
GF_EXPORT GF_Err gf_sc_paste_text (GF_Compositor *compositor, const char *text)
 
static Bool load_text_node (GF_Compositor *compositor, u32 cmd_type)
 
static void exec_text_input (GF_Compositor *compositor, GF_Event *event)
 
static void toggle_keyboard (GF_Compositor *compositor, Bool do_show)
 
static Bool hit_node_editable (GF_Compositor *compositor, Bool check_focus_node)
 
static GF_Nodeget_parent_focus (GF_Node *node, GF_List *hit_use_stack, u32 cur_idx)
 
static Bool exec_event_dom (GF_Compositor *compositor, GF_Event *event)
 
Bool gf_sc_exec_event_vrml (GF_Compositor *compositor, GF_Event *ev)
 
static Bool exec_vrml_key_event (GF_Compositor *compositor, GF_Node *node, GF_Event *ev, Bool is_focus_out)
 
Bool visual_execute_event (GF_VisualManager *visual, GF_TraverseState *tr_state, GF_Event *ev, GF_ChildNodeItem *children)
 
u32 gf_sc_svg_focus_navigate (GF_Compositor *compositor, u32 key_code)
 
static Bool is_focus_target (GF_Node *elt)
 
static void rebuild_focus_ancestor (GF_Compositor *compositor, GF_Node *elt)
 
static GF_Nodeset_focus (GF_Compositor *compositor, GF_Node *elt, Bool current_focus, Bool prev_focus)
 
GF_EXPORT u32 gf_sc_focus_switch_ring (GF_Compositor *compositor, Bool move_prev, GF_Node *focus, u32 force_focus)
 
Bool gf_sc_execute_event (GF_Compositor *compositor, GF_TraverseState *tr_state, GF_Event *ev, GF_ChildNodeItem *children)
 
static Bool forward_event (GF_Compositor *compositor, GF_Event *ev, Bool consumed)
 
Bool gf_sc_exec_event (GF_Compositor *compositor, GF_Event *evt)
 
void gf_sc_change_key_navigator (GF_Compositor *sr, GF_Node *n)
 
void gf_sc_key_navigator_del (GF_Compositor *sr, GF_Node *n)
 

Macro Definition Documentation

◆ CALL_SET_FOCUS

#define CALL_SET_FOCUS (   __child)
Value:
{ \
gf_list_add(compositor->focus_ancestors, elt); \
n = set_focus(compositor, __child, current_focus, prev_focus); \
if (n) { \
gf_node_set_cyclic_traverse_flag(elt, 0); \
return n; \
} \
gf_list_rem_last(compositor->focus_ancestors); \
gf_node_set_cyclic_traverse_flag(elt, 0);\
return NULL; \
} \
static GF_Compositor * compositor
Definition: compositor_tools.c:113
static GF_Node * set_focus(GF_Compositor *compositor, GF_Node *elt, Bool current_focus, Bool prev_focus)
Definition: events.c:1294

Function Documentation

◆ browse_parent_for_focus()

static GF_Node * browse_parent_for_focus ( GF_Compositor *  compositor,
GF_Node elt,
Bool  prev_focus 
)
static

! this may happen when walking up PROTO nodes !!

! this may happen when walking up PROTO nodes !!

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_sc_reset_collide_cursor()

static void gf_sc_reset_collide_cursor ( GF_Compositor *  compositor)
static
+ Here is the caller graph for this function:

◆ exec_text_selection()

static Bool exec_text_selection ( GF_Compositor *  compositor,
GF_Event event 
)
static
+ Here is the caller graph for this function:

◆ flush_text_node_edit()

static void flush_text_node_edit ( GF_Compositor *  compositor,
Bool  final_flush 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ load_text_node()

static Bool load_text_node ( GF_Compositor *  compositor,
u32  cmd_type 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ exec_text_input()

static void exec_text_input ( GF_Compositor *  compositor,
GF_Event event 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ toggle_keyboard()

static void toggle_keyboard ( GF_Compositor *  compositor,
Bool  do_show 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ hit_node_editable()

static Bool hit_node_editable ( GF_Compositor *  compositor,
Bool  check_focus_node 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ get_parent_focus()

static GF_Node* get_parent_focus ( GF_Node node,
GF_List *  hit_use_stack,
u32  cur_idx 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ exec_event_dom()

static Bool exec_event_dom ( GF_Compositor *  compositor,
GF_Event event 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_sc_exec_event_vrml()

Bool gf_sc_exec_event_vrml ( GF_Compositor *  compositor,
GF_Event ev 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ exec_vrml_key_event()

static Bool exec_vrml_key_event ( GF_Compositor *  compositor,
GF_Node node,
GF_Event ev,
Bool  is_focus_out 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ visual_execute_event()

Bool visual_execute_event ( GF_VisualManager *  visual,
GF_TraverseState *  tr_state,
GF_Event ev,
GF_ChildNodeItem children 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_sc_svg_focus_navigate()

u32 gf_sc_svg_focus_navigate ( GF_Compositor *  compositor,
u32  key_code 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ is_focus_target()

static Bool is_focus_target ( GF_Node elt)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ rebuild_focus_ancestor()

static void rebuild_focus_ancestor ( GF_Compositor *  compositor,
GF_Node elt 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ set_focus()

static GF_Node* set_focus ( GF_Compositor *  compositor,
GF_Node elt,
Bool  current_focus,
Bool  prev_focus 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_sc_focus_switch_ring()

GF_EXPORT u32 gf_sc_focus_switch_ring ( GF_Compositor *  compositor,
Bool  move_prev,
GF_Node focus,
u32  force_focus 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_sc_execute_event()

Bool gf_sc_execute_event ( GF_Compositor *  compositor,
GF_TraverseState *  tr_state,
GF_Event ev,
GF_ChildNodeItem children 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ forward_event()

static Bool forward_event ( GF_Compositor *  compositor,
GF_Event ev,
Bool  consumed 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_sc_exec_event()

Bool gf_sc_exec_event ( GF_Compositor *  compositor,
GF_Event evt 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_sc_change_key_navigator()

void gf_sc_change_key_navigator ( GF_Compositor *  sr,
GF_Node n 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_sc_key_navigator_del()

void gf_sc_key_navigator_del ( GF_Compositor *  sr,
GF_Node n 
)
+ Here is the caller graph for this function: