36 if (screen->tool_tip ==
nullptr) {
41 screen->tool_tip->region_from = region;
42 screen->tool_tip->init =
init;
53 if (screen->tool_tip ==
nullptr) {
58 screen->tool_tip->region_from = region;
60 screen->tool_tip->init =
init;
73 if (screen->tool_tip !=
nullptr) {
74 if (screen->tool_tip->timer !=
nullptr) {
76 screen->tool_tip->timer =
nullptr;
85 if (screen->tool_tip !=
nullptr) {
86 if (screen->tool_tip->region) {
88 screen->tool_tip->region =
nullptr;
92 screen->tool_tip =
nullptr;
100 if (screen->tool_tip->region) {
102 screen->tool_tip->region =
nullptr;
104 const int pass_prev = screen->tool_tip->pass;
105 double pass_delay = 0.0;
112 screen->tool_tip->region = screen->tool_tip->init(C,
113 screen->tool_tip->region_from,
114 &screen->tool_tip->pass,
116 &screen->tool_tip->exit_on_event);
122 if (pass_prev != screen->tool_tip->pass) {
127 if (screen->tool_tip->region ==
nullptr) {
136 if (screen->tool_tip !=
nullptr) {
137 if (screen->tool_tip->region) {
139 screen->tool_tip->region =
nullptr;
ScrArea * CTX_wm_area(const bContext *C)
void CTX_wm_area_set(bContext *C, ScrArea *area)
void CTX_wm_region_set(bContext *C, ARegion *region)
ARegion * CTX_wm_region(const bContext *C)
wmWindowManager * CTX_wm_manager(const bContext *C)
MINLINE void copy_v2_v2_int(int r[2], const int a[2])
Platform independent time functions.
double BLI_time_now_seconds(void)
Read Guarded memory(de)allocation.
void UI_tooltip_free(bContext *C, bScreen *screen, ARegion *region)
ARegion *(*)(bContext *C, ARegion *region, int *pass, double *r_pass_delay, bool *r_exit_on_event) wmTooltipInitFn
void MEM_freeN(void *vmemh)
void *(* MEM_callocN)(size_t len, const char *str)
struct wmEvent * eventstate
void WM_event_timer_remove(wmWindowManager *wm, wmWindow *, wmTimer *timer)
wmTimer * WM_event_timer_add(wmWindowManager *wm, wmWindow *win, const int event_type, const double time_step)
bScreen * WM_window_get_active_screen(const wmWindow *win)