Blender V2.61 - r43446
Classes | Defines | Typedefs | Enumerations | Functions | Variables

interface_handlers.c File Reference

#include <float.h>
#include <limits.h>
#include <math.h>
#include <stdlib.h>
#include <string.h>
#include <ctype.h>
#include <assert.h>
#include "MEM_guardedalloc.h"
#include "DNA_sensor_types.h"
#include "DNA_controller_types.h"
#include "DNA_actuator_types.h"
#include "DNA_object_types.h"
#include "DNA_scene_types.h"
#include "BLI_math.h"
#include "BLI_blenlib.h"
#include "BLI_utildefines.h"
#include "PIL_time.h"
#include "BKE_colortools.h"
#include "BKE_context.h"
#include "BKE_idprop.h"
#include "BKE_report.h"
#include "BKE_texture.h"
#include "BKE_tracking.h"
#include "BKE_unit.h"
#include "ED_screen.h"
#include "ED_util.h"
#include "ED_keyframing.h"
#include "UI_interface.h"
#include "BLF_api.h"
#include "interface_intern.h"
#include "RNA_access.h"
#include "WM_api.h"
#include "WM_types.h"

Go to the source code of this file.

Classes

struct  uiHandleButtonData
struct  uiAfterFunc

Defines

#define BUTTON_TOOLTIP_DELAY   0.500
#define BUTTON_FLASH_DELAY   0.020
#define MENU_SCROLL_INTERVAL   0.1
#define BUTTON_AUTO_OPEN_THRESH   0.3
#define BUTTON_MOUSE_TOWARDS_THRESH   1.0

Typedefs

typedef enum uiButtonActivateType uiButtonActivateType
typedef enum uiHandleButtonState uiHandleButtonState
typedef enum uiButtonJumpType uiButtonJumpType
typedef enum uiButtonDelimType uiButtonDelimType
typedef struct uiHandleButtonData uiHandleButtonData
typedef struct uiAfterFunc uiAfterFunc

Enumerations

enum  uiButtonActivateType {
  BUTTON_ACTIVATE_OVER, BUTTON_ACTIVATE, BUTTON_ACTIVATE_APPLY, BUTTON_ACTIVATE_TEXT_EDITING,
  BUTTON_ACTIVATE_OPEN
}
enum  uiHandleButtonState {
  BUTTON_STATE_INIT, BUTTON_STATE_HIGHLIGHT, BUTTON_STATE_WAIT_FLASH, BUTTON_STATE_WAIT_RELEASE,
  BUTTON_STATE_WAIT_KEY_EVENT, BUTTON_STATE_NUM_EDITING, BUTTON_STATE_TEXT_EDITING, BUTTON_STATE_TEXT_SELECTING,
  BUTTON_STATE_MENU_OPEN, BUTTON_STATE_WAIT_DRAG, BUTTON_STATE_EXIT
}
enum  uiButtonJumpType { BUTTON_EDIT_JUMP_NONE, BUTTON_EDIT_JUMP_DELIM, BUTTON_EDIT_JUMP_ALL }
enum  uiButtonDelimType {
  BUTTON_DELIM_NONE, BUTTON_DELIM_ALPHA, BUTTON_DELIM_PUNCT, BUTTON_DELIM_BRACE,
  BUTTON_DELIM_OPERATOR, BUTTON_DELIM_QUOTE, BUTTON_DELIM_WHITESPACE, BUTTON_DELIM_OTHER
}

Functions

static void ui_add_smart_controller (bContext *C, uiBut *from, uiBut *to)
static void ui_add_link (bContext *C, uiBut *from, uiBut *to)
static int ui_but_contains_pt (uiBut *but, int mx, int my)
static int ui_mouse_inside_button (ARegion *ar, uiBut *but, int x, int y)
static void button_activate_state (bContext *C, uiBut *but, uiHandleButtonState state)
static int ui_handler_region_menu (bContext *C, wmEvent *event, void *userdata)
static void ui_handle_button_activate (bContext *C, ARegion *ar, uiBut *but, uiButtonActivateType type)
static void button_timers_tooltip_remove (bContext *C, uiBut *but)
static int ui_but_editable (uiBut *but)
static uiButui_but_prev (uiBut *but)
static uiButui_but_next (uiBut *but)
static uiButui_but_first (uiBlock *block)
static uiButui_but_last (uiBlock *block)
static int ui_is_a_warp_but (uiBut *but)
int ui_is_but_utf8 (uiBut *but)
static void ui_apply_but_func (bContext *C, uiBut *but)
static void ui_apply_autokey_undo (bContext *C, uiBut *but)
static void ui_apply_but_funcs_after (bContext *C)
static void ui_apply_but_BUT (bContext *C, uiBut *but, uiHandleButtonData *data)
static void ui_apply_but_BUTM (bContext *C, uiBut *but, uiHandleButtonData *data)
static void ui_apply_but_BLOCK (bContext *C, uiBut *but, uiHandleButtonData *data)
static void ui_apply_but_TOG (bContext *C, uiBut *but, uiHandleButtonData *data)
static void ui_apply_but_ROW (bContext *C, uiBlock *block, uiBut *but, uiHandleButtonData *data)
static void ui_apply_but_TEX (bContext *C, uiBut *but, uiHandleButtonData *data)
static void ui_apply_but_NUM (bContext *C, uiBut *but, uiHandleButtonData *data)
static void ui_apply_but_TOG3 (bContext *C, uiBut *but, uiHandleButtonData *data)
static void ui_apply_but_VEC (bContext *C, uiBut *but, uiHandleButtonData *data)
static void ui_apply_but_COLORBAND (bContext *C, uiBut *but, uiHandleButtonData *data)
static void ui_apply_but_CURVE (bContext *C, uiBut *but, uiHandleButtonData *data)
static void ui_apply_but_IDPOIN (bContext *C, uiBut *but, uiHandleButtonData *data)
static int ui_but_mouse_inside_icon (uiBut *but, ARegion *ar, wmEvent *event)
static int ui_but_start_drag (bContext *C, uiBut *but, uiHandleButtonData *data, wmEvent *event)
static void ui_delete_active_linkline (uiBlock *block)
static uiLinkLineui_is_a_link (uiBut *from, uiBut *to)
static void ui_apply_but_LINK (bContext *C, uiBut *but, uiHandleButtonData *data)
static void ui_apply_but_IMAGE (bContext *C, uiBut *but, uiHandleButtonData *data)
static void ui_apply_but_HISTOGRAM (bContext *C, uiBut *but, uiHandleButtonData *data)
static void ui_apply_but_WAVEFORM (bContext *C, uiBut *but, uiHandleButtonData *data)
static void ui_apply_but_TRACKPREVIEW (bContext *C, uiBut *but, uiHandleButtonData *data)
static void ui_apply_button (bContext *C, uiBlock *block, uiBut *but, uiHandleButtonData *data, int interactive)
static void ui_but_drop (bContext *C, wmEvent *event, uiBut *but, uiHandleButtonData *data)
static void ui_but_copy_paste (bContext *C, uiBut *but, uiHandleButtonData *data, char mode)
static uiButtonDelimType test_special_char (const char ch)
static int ui_textedit_step_next_utf8 (const char *str, size_t maxlen, short *pos)
static int ui_textedit_step_prev_utf8 (const char *str, size_t UNUSED(maxlen), short *pos)
static void ui_textedit_step_utf8 (const char *str, size_t maxlen, short *pos, const char direction, uiButtonJumpType jump)
static int ui_textedit_delete_selection (uiBut *but, uiHandleButtonData *data)
static void ui_textedit_set_cursor_pos (uiBut *but, uiHandleButtonData *data, short x)
static void ui_textedit_set_cursor_select (uiBut *but, uiHandleButtonData *data, short x)
static int ui_textedit_type_buf (uiBut *but, uiHandleButtonData *data, const char *utf8_buf, int utf8_buf_len)
static int ui_textedit_type_ascii (uiBut *but, uiHandleButtonData *data, char ascii)
static void ui_textedit_move (uiBut *but, uiHandleButtonData *data, int direction, int select, uiButtonJumpType jump)
static int ui_textedit_delete (uiBut *but, uiHandleButtonData *data, int direction, uiButtonJumpType jump)
static int ui_textedit_autocomplete (bContext *C, uiBut *but, uiHandleButtonData *data)
static int ui_textedit_copypaste (uiBut *but, uiHandleButtonData *data, int paste, int copy, int cut)
static void ui_textedit_begin (bContext *C, uiBut *but, uiHandleButtonData *data)
static void ui_textedit_end (bContext *C, uiBut *but, uiHandleButtonData *data)
static void ui_textedit_next_but (uiBlock *block, uiBut *actbut, uiHandleButtonData *data)
static void ui_textedit_prev_but (uiBlock *block, uiBut *actbut, uiHandleButtonData *data)
static void ui_do_but_textedit (bContext *C, uiBlock *block, uiBut *but, uiHandleButtonData *data, wmEvent *event)
static void ui_do_but_textedit_select (bContext *C, uiBlock *block, uiBut *but, uiHandleButtonData *data, wmEvent *event)
static void ui_numedit_begin (uiBut *but, uiHandleButtonData *data)
static void ui_numedit_end (uiBut *but, uiHandleButtonData *data)
static void ui_numedit_apply (bContext *C, uiBlock *block, uiBut *but, uiHandleButtonData *data)
static void ui_blockopen_begin (bContext *C, uiBut *but, uiHandleButtonData *data)
static void ui_blockopen_end (bContext *C, uiBut *but, uiHandleButtonData *data)
static int ui_do_but_BUT (bContext *C, uiBut *but, uiHandleButtonData *data, wmEvent *event)
static int ui_do_but_HOTKEYEVT (bContext *C, uiBut *but, uiHandleButtonData *data, wmEvent *event)
static int ui_do_but_KEYEVT (bContext *C, uiBut *but, uiHandleButtonData *data, wmEvent *event)
static int ui_do_but_TEX (bContext *C, uiBlock *block, uiBut *but, uiHandleButtonData *data, wmEvent *event)
static int ui_do_but_TOG (bContext *C, uiBut *but, uiHandleButtonData *data, wmEvent *event)
static int ui_do_but_EXIT (bContext *C, uiBut *but, uiHandleButtonData *data, wmEvent *event)
static float ui_numedit_apply_snapf (uiBut *but, float tempf, float softmin, float softmax, float softrange, int snap)
static float ui_numedit_apply_snap (int temp, float softmin, float softmax, int snap)
static int ui_numedit_but_NUM (uiBut *but, uiHandleButtonData *data, float fac, int snap, int mx)
static int ui_do_but_NUM (bContext *C, uiBlock *block, uiBut *but, uiHandleButtonData *data, wmEvent *event)
static int ui_numedit_but_SLI (uiBut *but, uiHandleButtonData *data, int shift, int ctrl, int mx)
static int ui_do_but_SLI (bContext *C, uiBlock *block, uiBut *but, uiHandleButtonData *data, wmEvent *event)
static int ui_do_but_SCROLL (bContext *C, uiBlock *block, uiBut *but, uiHandleButtonData *data, wmEvent *event)
static int ui_do_but_BLOCK (bContext *C, uiBut *but, uiHandleButtonData *data, wmEvent *event)
static int ui_numedit_but_NORMAL (uiBut *but, uiHandleButtonData *data, int mx, int my)
static int ui_do_but_NORMAL (bContext *C, uiBlock *block, uiBut *but, uiHandleButtonData *data, wmEvent *event)
static int ui_numedit_but_HSVCUBE (uiBut *but, uiHandleButtonData *data, int mx, int my)
static void ui_ndofedit_but_HSVCUBE (uiBut *but, uiHandleButtonData *data, wmNDOFMotionData *ndof, int shift)
static int ui_do_but_HSVCUBE (bContext *C, uiBlock *block, uiBut *but, uiHandleButtonData *data, wmEvent *event)
static int ui_numedit_but_HSVCIRCLE (uiBut *but, uiHandleButtonData *data, int mx, int my, int shift)
static void ui_ndofedit_but_HSVCIRCLE (uiBut *but, uiHandleButtonData *data, wmNDOFMotionData *ndof, int shift)
static int ui_do_but_HSVCIRCLE (bContext *C, uiBlock *block, uiBut *but, uiHandleButtonData *data, wmEvent *event)
static int verg_colorband (const void *a1, const void *a2)
static void ui_colorband_update (ColorBand *coba)
static int ui_numedit_but_COLORBAND (uiBut *but, uiHandleButtonData *data, int mx)
static int ui_do_but_COLORBAND (bContext *C, uiBlock *block, uiBut *but, uiHandleButtonData *data, wmEvent *event)
static int ui_numedit_but_CURVE (uiBut *but, uiHandleButtonData *data, int snap, int mx, int my)
static int ui_do_but_CURVE (bContext *C, uiBlock *block, uiBut *but, uiHandleButtonData *data, wmEvent *event)
static int in_scope_resize_zone (uiBut *but, int UNUSED(x), int y)
static int ui_numedit_but_HISTOGRAM (uiBut *but, uiHandleButtonData *data, int mx, int my)
static int ui_do_but_HISTOGRAM (bContext *C, uiBlock *block, uiBut *but, uiHandleButtonData *data, wmEvent *event)
static int ui_numedit_but_WAVEFORM (uiBut *but, uiHandleButtonData *data, int mx, int my)
static int ui_do_but_WAVEFORM (bContext *C, uiBlock *block, uiBut *but, uiHandleButtonData *data, wmEvent *event)
static int ui_numedit_but_VECTORSCOPE (uiBut *but, uiHandleButtonData *data, int mx, int my)
static int ui_do_but_VECTORSCOPE (bContext *C, uiBlock *block, uiBut *but, uiHandleButtonData *data, wmEvent *event)
static int ui_do_but_LINK (bContext *C, uiBut *but, uiHandleButtonData *data, wmEvent *event)
static int ui_numedit_but_TRACKPREVIEW (bContext *C, uiBut *but, uiHandleButtonData *data, int mx, int my, int shift)
static int ui_do_but_TRACKPREVIEW (bContext *C, uiBlock *block, uiBut *but, uiHandleButtonData *data, wmEvent *event)
static void but_shortcut_name_func (bContext *C, void *arg1, int UNUSED(event))
static uiBlockmenu_change_shortcut (bContext *C, ARegion *ar, void *arg)
static uiBlockmenu_add_shortcut (bContext *C, ARegion *ar, void *arg)
static void popup_change_shortcut_func (bContext *C, void *arg1, void *UNUSED(arg2))
static void remove_shortcut_func (bContext *C, void *arg1, void *UNUSED(arg2))
static void popup_add_shortcut_func (bContext *C, void *arg1, void *UNUSED(arg2))
static int ui_but_menu (bContext *C, uiBut *but)
static int ui_do_button (bContext *C, uiBlock *block, uiBut *but, wmEvent *event)
static uiButui_but_find_activated (ARegion *ar)
int ui_button_is_active (ARegion *ar)
void uiFreeActiveButtons (const bContext *C, bScreen *screen)
int UI_but_active_drop_name (bContext *C)
static void ui_blocks_set_tooltips (ARegion *ar, int enable)
static int ui_mouse_inside_region (ARegion *ar, int x, int y)
static uiButui_but_find_mouse_over (ARegion *ar, int x, int y)
static uiButui_list_find_mouse_over (ARegion *ar, int x, int y)
static int button_modal_state (uiHandleButtonState state)
static void button_tooltip_timer_reset (bContext *C, uiBut *but)
static void button_activate_init (bContext *C, ARegion *ar, uiBut *but, uiButtonActivateType type)
static void button_activate_exit (bContext *C, uiHandleButtonData *data, uiBut *but, int mousemove, int onfree)
void ui_button_active_free (const bContext *C, uiBut *but)
static uiButui_context_button_active (const bContext *C, int(*but_check_cb)(uiBut *))
static int ui_context_rna_button_active_test (uiBut *but)
static uiButui_context_rna_button_active (const bContext *C)
uiButuiContextActiveButton (const struct bContext *C)
void uiContextActiveProperty (const bContext *C, struct PointerRNA *ptr, struct PropertyRNA **prop, int *index)
void uiContextActivePropertyHandle (bContext *C)
wmOperatoruiContextActiveOperator (const struct bContext *C)
void uiContextAnimUpdate (const bContext *C)
static uiButuit_but_find_open_event (ARegion *ar, wmEvent *event)
static int ui_handle_button_over (bContext *C, wmEvent *event, ARegion *ar)
void ui_button_activate_do (bContext *C, ARegion *ar, uiBut *but)
static int ui_handle_button_event (bContext *C, wmEvent *event, uiBut *but)
static int ui_handle_list_event (bContext *C, wmEvent *event, ARegion *ar)
static void ui_handle_button_return_submenu (bContext *C, wmEvent *event, uiBut *but)
static void ui_mouse_motion_towards_init (uiPopupBlockHandle *menu, int mx, int my, int force)
static int ui_mouse_motion_towards_check (uiBlock *block, uiPopupBlockHandle *menu, int mx, int my)
static char ui_menu_scroll_test (uiBlock *block, int my)
static int ui_menu_scroll (ARegion *ar, uiBlock *block, int my)
static int ui_handle_menu_event (bContext *C, wmEvent *event, uiPopupBlockHandle *menu, int UNUSED(topmenu))
static int ui_handle_menu_return_submenu (bContext *C, wmEvent *event, uiPopupBlockHandle *menu)
static int ui_handle_menus_recursive (bContext *C, wmEvent *event, uiPopupBlockHandle *menu)
static int ui_handler_region (bContext *C, wmEvent *event, void *UNUSED(userdata))
static void ui_handler_remove_region (bContext *C, void *UNUSED(userdata))
static int ui_handler_region_menu (bContext *C, wmEvent *event, void *UNUSED(userdata))
static int ui_handler_popup (bContext *C, wmEvent *event, void *userdata)
static void ui_handler_remove_popup (bContext *C, void *userdata)
void UI_add_region_handlers (ListBase *handlers)
void UI_add_popup_handlers (bContext *C, ListBase *handlers, uiPopupBlockHandle *popup)
void UI_remove_popup_handlers (ListBase *handlers, uiPopupBlockHandle *popup)

Variables

static ListBase UIAfterFuncs = {NULL, NULL}

Detailed Description

Definition in file interface_handlers.c.


Define Documentation

#define BUTTON_AUTO_OPEN_THRESH   0.3

Definition at line 86 of file interface_handlers.c.

Referenced by button_activate_init().

#define BUTTON_FLASH_DELAY   0.020

Definition at line 84 of file interface_handlers.c.

Referenced by button_activate_state().

#define BUTTON_MOUSE_TOWARDS_THRESH   1.0

Definition at line 87 of file interface_handlers.c.

Referenced by ui_mouse_motion_towards_check().

#define BUTTON_TOOLTIP_DELAY   0.500

Definition at line 83 of file interface_handlers.c.

Referenced by button_tooltip_timer_reset().

#define MENU_SCROLL_INTERVAL   0.1

Definition at line 85 of file interface_handlers.c.

Referenced by ui_handle_menu_event().


Typedef Documentation

typedef struct uiAfterFunc uiAfterFunc

Enumeration Type Documentation

Enumerator:
BUTTON_ACTIVATE_OVER 
BUTTON_ACTIVATE 
BUTTON_ACTIVATE_APPLY 
BUTTON_ACTIVATE_TEXT_EDITING 
BUTTON_ACTIVATE_OPEN 

Definition at line 89 of file interface_handlers.c.

Enumerator:
BUTTON_DELIM_NONE 
BUTTON_DELIM_ALPHA 
BUTTON_DELIM_PUNCT 
BUTTON_DELIM_BRACE 
BUTTON_DELIM_OPERATOR 
BUTTON_DELIM_QUOTE 
BUTTON_DELIM_WHITESPACE 
BUTTON_DELIM_OTHER 

Definition at line 117 of file interface_handlers.c.

Enumerator:
BUTTON_EDIT_JUMP_NONE 
BUTTON_EDIT_JUMP_DELIM 
BUTTON_EDIT_JUMP_ALL 

Definition at line 111 of file interface_handlers.c.

Enumerator:
BUTTON_STATE_INIT 
BUTTON_STATE_HIGHLIGHT 
BUTTON_STATE_WAIT_FLASH 
BUTTON_STATE_WAIT_RELEASE 
BUTTON_STATE_WAIT_KEY_EVENT 
BUTTON_STATE_NUM_EDITING 
BUTTON_STATE_TEXT_EDITING 
BUTTON_STATE_TEXT_SELECTING 
BUTTON_STATE_MENU_OPEN 
BUTTON_STATE_WAIT_DRAG 
BUTTON_STATE_EXIT 

Definition at line 97 of file interface_handlers.c.


Function Documentation

static void but_shortcut_name_func ( bContext C,
void *  arg1,
int   UNUSEDevent 
) [static]
static void button_activate_exit ( bContext C,
uiHandleButtonData data,
uiBut but,
int  mousemove,
int  onfree 
) [static]
static void button_activate_init ( bContext C,
ARegion ar,
uiBut but,
uiButtonActivateType  type 
) [static]
static void button_activate_state ( bContext C,
uiBut but,
uiHandleButtonState  state 
) [static]

Definition at line 5186 of file interface_handlers.c.

References uiBut::active, uiBlock::auto_open, uiHandleButtonData::autoopentimer, BLOCK, uiBut::block, BUTTON_FLASH_DELAY, button_modal_state(), BUTTON_STATE_EXIT, BUTTON_STATE_HIGHLIGHT, BUTTON_STATE_MENU_OPEN, BUTTON_STATE_NUM_EDITING, BUTTON_STATE_TEXT_EDITING, BUTTON_STATE_TEXT_SELECTING, BUTTON_STATE_WAIT_DRAG, BUTTON_STATE_WAIT_FLASH, button_timers_tooltip_remove(), button_tooltip_timer_reset(), CTX_wm_window(), data, ED_region_tag_redraw(), ELEM3, uiBut::flag, uiBlock::flag, uiHandleButtonData::flashtimer, uiBlock::handle, ICONTEXTROW, UserDef::menuthreshold1, UserDef::menuthreshold2, wmWindow::modalhandlers, NULL, uiPopupBlockHandle::popup, PULLDOWN, uiHandleButtonData::region, state, uiHandleButtonData::state, TIMER, TRUE, uiBut::type, U, UI_BLOCK_LOOP, ui_blockopen_begin(), ui_blockopen_end(), ui_check_but(), ui_handler_region_menu(), ui_is_a_warp_but(), ui_numedit_begin(), ui_numedit_end(), UI_SELECT, ui_textedit_begin(), ui_textedit_end(), UserDef::uiflag, uiHandleButtonData::used_mouse, USER_MENUOPENAUTO, uiHandleButtonData::window, uiHandleButtonData::wm, WM_cursor_grab(), WM_cursor_ungrab(), WM_event_add_timer(), WM_event_add_ui_handler(), WM_event_remove_timer(), and WM_event_remove_ui_handler().

Referenced by button_activate_exit(), button_activate_init(), ui_but_copy_paste(), ui_but_drop(), ui_but_start_drag(), ui_do_but_BLOCK(), ui_do_but_BUT(), ui_do_but_COLORBAND(), ui_do_but_CURVE(), ui_do_but_EXIT(), ui_do_but_HISTOGRAM(), ui_do_but_HOTKEYEVT(), ui_do_but_HSVCIRCLE(), ui_do_but_HSVCUBE(), ui_do_but_KEYEVT(), ui_do_but_LINK(), ui_do_but_NORMAL(), ui_do_but_NUM(), ui_do_but_SCROLL(), ui_do_but_SLI(), ui_do_but_TEX(), ui_do_but_textedit(), ui_do_but_textedit_select(), ui_do_but_TOG(), ui_do_but_TRACKPREVIEW(), ui_do_but_VECTORSCOPE(), ui_do_but_WAVEFORM(), ui_do_button(), ui_handle_button_event(), and ui_handle_button_return_submenu().

static int button_modal_state ( uiHandleButtonState  state) [static]
static void button_timers_tooltip_remove ( bContext C,
uiBut but 
) [static]
static void button_tooltip_timer_reset ( bContext C,
uiBut but 
) [static]
static int in_scope_resize_zone ( uiBut but,
int   UNUSEDx,
int  y 
) [static]
static uiBlock* menu_add_shortcut ( bContext C,
ARegion ar,
void *  arg 
) [static]
static uiBlock* menu_change_shortcut ( bContext C,
ARegion ar,
void *  arg 
) [static]
static void popup_add_shortcut_func ( bContext C,
void *  arg1,
void *  UNUSEDarg2 
) [static]

Definition at line 4514 of file interface_handlers.c.

References button_timers_tooltip_remove(), menu_add_shortcut(), and uiPupBlock().

Referenced by ui_but_menu().

static void popup_change_shortcut_func ( bContext C,
void *  arg1,
void *  UNUSEDarg2 
) [static]

Definition at line 4493 of file interface_handlers.c.

References button_timers_tooltip_remove(), menu_change_shortcut(), and uiPupBlock().

Referenced by ui_but_menu().

static void remove_shortcut_func ( bContext C,
void *  arg1,
void *  UNUSEDarg2 
) [static]
static uiButtonDelimType test_special_char ( const char  ch) [static]
static void ui_add_link ( bContext C,
uiBut from,
uiBut to 
) [static]
void UI_add_popup_handlers ( bContext C,
ListBase handlers,
uiPopupBlockHandle popup 
)
void UI_add_region_handlers ( ListBase handlers)
static void ui_add_smart_controller ( bContext C,
uiBut from,
uiBut to 
) [static]
static void ui_apply_autokey_undo ( bContext C,
uiBut but 
) [static]
static void ui_apply_but_BLOCK ( bContext C,
uiBut but,
uiHandleButtonData data 
) [static]
static void ui_apply_but_BUT ( bContext C,
uiBut but,
uiHandleButtonData data 
) [static]
static void ui_apply_but_BUTM ( bContext C,
uiBut but,
uiHandleButtonData data 
) [static]
static void ui_apply_but_COLORBAND ( bContext C,
uiBut but,
uiHandleButtonData data 
) [static]
static void ui_apply_but_CURVE ( bContext C,
uiBut but,
uiHandleButtonData data 
) [static]
static void ui_apply_but_func ( bContext C,
uiBut but 
) [static]
static void ui_apply_but_funcs_after ( bContext C) [static]
static void ui_apply_but_HISTOGRAM ( bContext C,
uiBut but,
uiHandleButtonData data 
) [static]
static void ui_apply_but_IDPOIN ( bContext C,
uiBut but,
uiHandleButtonData data 
) [static]
static void ui_apply_but_IMAGE ( bContext C,
uiBut but,
uiHandleButtonData data 
) [static]
static void ui_apply_but_LINK ( bContext C,
uiBut but,
uiHandleButtonData data 
) [static]
static void ui_apply_but_NUM ( bContext C,
uiBut but,
uiHandleButtonData data 
) [static]
static void ui_apply_but_ROW ( bContext C,
uiBlock block,
uiBut but,
uiHandleButtonData data 
) [static]
static void ui_apply_but_TEX ( bContext C,
uiBut but,
uiHandleButtonData data 
) [static]
static void ui_apply_but_TOG ( bContext C,
uiBut but,
uiHandleButtonData data 
) [static]
static void ui_apply_but_TOG3 ( bContext C,
uiBut but,
uiHandleButtonData data 
) [static]
static void ui_apply_but_TRACKPREVIEW ( bContext C,
uiBut but,
uiHandleButtonData data 
) [static]
static void ui_apply_but_VEC ( bContext C,
uiBut but,
uiHandleButtonData data 
) [static]
static void ui_apply_but_WAVEFORM ( bContext C,
uiBut but,
uiHandleButtonData data 
) [static]
static void ui_apply_button ( bContext C,
uiBlock block,
uiBut but,
uiHandleButtonData data,
int  interactive 
) [static]
static void ui_blockopen_begin ( bContext C,
uiBut but,
uiHandleButtonData data 
) [static]
static void ui_blockopen_end ( bContext C,
uiBut but,
uiHandleButtonData data 
) [static]
static void ui_blocks_set_tooltips ( ARegion ar,
int  enable 
) [static]
int UI_but_active_drop_name ( bContext C)
static int ui_but_contains_pt ( uiBut but,
int  mx,
int  my 
) [static]
static void ui_but_copy_paste ( bContext C,
uiBut but,
uiHandleButtonData data,
char  mode 
) [static]
static void ui_but_drop ( bContext C,
wmEvent event,
uiBut but,
uiHandleButtonData data 
) [static]
static int ui_but_editable ( uiBut but) [static]

Definition at line 224 of file interface_handlers.c.

References ELEM5, LABEL, LISTBOX, PROGRESSBAR, ROUNDBOX, SEPR, and uiBut::type.

Referenced by ui_but_first(), ui_but_last(), ui_but_next(), and ui_but_prev().

static uiBut* ui_but_find_activated ( ARegion ar) [static]
static uiBut* ui_but_find_mouse_over ( ARegion ar,
int  x,
int  y 
) [static]
static uiBut* ui_but_first ( uiBlock block) [static]
static uiBut* ui_but_last ( uiBlock block) [static]

Definition at line 259 of file interface_handlers.c.

References uiBlock::buttons, ListBase::last, NULL, uiBut::prev, and ui_but_editable().

Referenced by ui_handle_menu_event().

static int ui_but_menu ( bContext C,
uiBut but 
) [static]
static int ui_but_mouse_inside_icon ( uiBut but,
ARegion ar,
wmEvent event 
) [static]
static uiBut* ui_but_next ( uiBut but) [static]

Definition at line 238 of file interface_handlers.c.

References uiBut::next, NULL, and ui_but_editable().

Referenced by ui_handle_menu_event(), and ui_menu_scroll().

static uiBut* ui_but_prev ( uiBut but) [static]

Definition at line 229 of file interface_handlers.c.

References NULL, uiBut::prev, and ui_but_editable().

Referenced by ui_handle_menu_event(), and ui_menu_scroll().

static int ui_but_start_drag ( bContext C,
uiBut but,
uiHandleButtonData data,
wmEvent event 
) [static]
void ui_button_activate_do ( bContext C,
ARegion ar,
uiBut but 
)
void ui_button_active_free ( const bContext C,
uiBut but 
)
int ui_button_is_active ( ARegion ar)

Definition at line 4948 of file interface_handlers.c.

References NULL, and ui_but_find_activated().

Referenced by ui_handler_panel_region().

static void ui_colorband_update ( ColorBand coba) [static]
static uiBut* ui_context_button_active ( const bContext C,
int(*)(uiBut *)  but_check_cb 
) [static]
static uiBut* ui_context_rna_button_active ( const bContext C) [static]
static int ui_context_rna_button_active_test ( uiBut but) [static]

Definition at line 5473 of file interface_handlers.c.

References PointerRNA::data, NULL, and uiBut::rnapoin.

Referenced by ui_context_rna_button_active().

static void ui_delete_active_linkline ( uiBlock block) [static]
static int ui_do_but_BLOCK ( bContext C,
uiBut but,
uiHandleButtonData data,
wmEvent event 
) [static]
static int ui_do_but_BUT ( bContext C,
uiBut but,
uiHandleButtonData data,
wmEvent event 
) [static]
static int ui_do_but_COLORBAND ( bContext C,
uiBlock block,
uiBut but,
uiHandleButtonData data,
wmEvent event 
) [static]
static int ui_do_but_CURVE ( bContext C,
uiBlock block,
uiBut but,
uiHandleButtonData data,
wmEvent event 
) [static]
static int ui_do_but_EXIT ( bContext C,
uiBut but,
uiHandleButtonData data,
wmEvent event 
) [static]
static int ui_do_but_HISTOGRAM ( bContext C,
uiBlock block,
uiBut but,
uiHandleButtonData data,
wmEvent event 
) [static]
static int ui_do_but_HOTKEYEVT ( bContext C,
uiBut but,
uiHandleButtonData data,
wmEvent event 
) [static]
static int ui_do_but_HSVCIRCLE ( bContext C,
uiBlock block,
uiBut but,
uiHandleButtonData data,
wmEvent event 
) [static]
static int ui_do_but_HSVCUBE ( bContext C,
uiBlock block,
uiBut but,
uiHandleButtonData data,
wmEvent event 
) [static]
static int ui_do_but_KEYEVT ( bContext C,
uiBut but,
uiHandleButtonData data,
wmEvent event 
) [static]
static int ui_do_but_LINK ( bContext C,
uiBut but,
uiHandleButtonData data,
wmEvent event 
) [static]
static int ui_do_but_NORMAL ( bContext C,
uiBlock block,
uiBut but,
uiHandleButtonData data,
wmEvent event 
) [static]
static int ui_do_but_NUM ( bContext C,
uiBlock block,
uiBut but,
uiHandleButtonData data,
wmEvent event 
) [static]
static int ui_do_but_SCROLL ( bContext C,
uiBlock block,
uiBut but,
uiHandleButtonData data,
wmEvent event 
) [static]
static int ui_do_but_SLI ( bContext C,
uiBlock block,
uiBut but,
uiHandleButtonData data,
wmEvent event 
) [static]
static int ui_do_but_TEX ( bContext C,
uiBlock block,
uiBut but,
uiHandleButtonData data,
wmEvent event 
) [static]
static void ui_do_but_textedit ( bContext C,
uiBlock block,
uiBut but,
uiHandleButtonData data,
wmEvent event 
) [static]
static void ui_do_but_textedit_select ( bContext C,
uiBlock block,
uiBut but,
uiHandleButtonData data,
wmEvent event 
) [static]
static int ui_do_but_TOG ( bContext C,
uiBut but,
uiHandleButtonData data,
wmEvent event 
) [static]
static int ui_do_but_TRACKPREVIEW ( bContext C,
uiBlock block,
uiBut but,
uiHandleButtonData data,
wmEvent event 
) [static]
static int ui_do_but_VECTORSCOPE ( bContext C,
uiBlock block,
uiBut but,
uiHandleButtonData data,
wmEvent event 
) [static]
static int ui_do_but_WAVEFORM ( bContext C,
uiBlock block,
uiBut but,
uiHandleButtonData data,
wmEvent event 
) [static]
static int ui_do_button ( bContext C,
uiBlock block,
uiBut but,
wmEvent event 
) [static]

Definition at line 4728 of file interface_handlers.c.

References uiBut::a1, uiBut::active, wmEvent::alt, BKE_report(), BKE_reportf(), BLOCK, BUT, BUT_COLORBAND, BUT_CURVE, BUT_IMAGE, BUT_NORMAL, BUT_TOGDUAL, BUTM, button_activate_state(), BUTTON_STATE_EXIT, BUTTON_STATE_HIGHLIGHT, CHARTAB, CKEY, COL, wmEvent::ctrl, CTX_wm_region(), data, DELKEY, DKEY, ED_region_tag_redraw(), ELEM, ELEM3, EVT_DROP, uiBut::flag, HISTOGRAM, HOTKEYEVT, HSVCIRCLE, HSVCUBE, HSVSLI, ICONROW, ICONTEXTROW, ICONTOG, ICONTOGN, IDPOIN, IKEY, INLINK, ISKEYMODIFIER, KEYEVT, KKEY, KM_MOD_FIRST, KM_PRESS, LABEL, LEFTMOUSE, LINK, LISTBOX, LISTROW, uiBut::lock, uiBut::lockstr, MENU, NULL, NUM, NUMABS, NUMSLI, OPTION, OPTIONN, wmEvent::oskey, PADPERIOD, uiBut::poin, uiBut::pointype, wmEvent::prevtype, wmEvent::prevval, PROGRESSBAR, PULLDOWN, RETKEY, uiAfterFunc::retval, RIGHTMOUSE, ROUNDBOX, ROW, RPT_WARNING, SCROLL, SEARCH_MENU, wmEvent::shift, SLI, uiHandleButtonData::state, uiBut::str, TEX, TOG, TOG3, TOGBUT, TOGN, TOGR, TRACKPREVIEW, wmEvent::type, uiBut::type, ui_but_anim_add_driver(), ui_but_anim_add_keyingset(), ui_but_anim_delete_keyframe(), ui_but_anim_insert_keyframe(), ui_but_anim_remove_driver(), ui_but_anim_remove_keyingset(), ui_but_copy_paste(), UI_BUT_DISABLED, ui_but_drop(), ui_but_menu(), ui_do_but_BLOCK(), ui_do_but_BUT(), ui_do_but_COLORBAND(), ui_do_but_CURVE(), ui_do_but_EXIT(), ui_do_but_HISTOGRAM(), ui_do_but_HOTKEYEVT(), ui_do_but_HSVCIRCLE(), ui_do_but_HSVCUBE(), ui_do_but_KEYEVT(), ui_do_but_LINK(), ui_do_but_NORMAL(), ui_do_but_NUM(), ui_do_but_SCROLL(), ui_do_but_SLI(), ui_do_but_TEX(), ui_do_but_TOG(), ui_do_but_TRACKPREVIEW(), ui_do_but_VECTORSCOPE(), ui_do_but_WAVEFORM(), UI_GRAD_V_ALT, ui_set_but_default(), wmEvent::val, VECTORSCOPE, VKEY, WAVEFORM, WM_UI_HANDLER_BREAK, and WM_UI_HANDLER_CONTINUE.

Referenced by ui_button_activate_do(), ui_handle_button_event(), and ui_handle_button_over().

static void ui_handle_button_activate ( bContext C,
ARegion ar,
uiBut but,
uiButtonActivateType  type 
) [static]
static int ui_handle_button_event ( bContext C,
wmEvent event,
uiBut but 
) [static]
static int ui_handle_button_over ( bContext C,
wmEvent event,
ARegion ar 
) [static]
static void ui_handle_button_return_submenu ( bContext C,
wmEvent event,
uiBut but 
) [static]
static int ui_handle_list_event ( bContext C,
wmEvent event,
ARegion ar 
) [static]
static int ui_handle_menu_event ( bContext C,
wmEvent event,
uiPopupBlockHandle menu,
int   UNUSEDtopmenu 
) [static]

Definition at line 6087 of file interface_handlers.c.

References uiBut::active, AKEY, wmEvent::alt, uiBut::bitnr, BKEY, BLI_in_rctf(), BLOCK, uiBlock::block_event_func, BUT, BUTTON_ACTIVATE, BUTTON_ACTIVATE_APPLY, BUTTON_ACTIVATE_OPEN, button_modal_state(), uiBlock::buttons, CKEY, wmEvent::ctrl, uiPopupBlockHandle::ctx_area, uiPopupBlockHandle::ctx_region, CTX_wm_area(), CTX_wm_area_set(), CTX_wm_manager(), CTX_wm_region(), CTX_wm_region_set(), CTX_wm_window(), wmEvent::customdata, PointerRNA::data, uiBlock::direction, DKEY, uiPopupBlockHandle::dotowards, DOWNARROWKEY, EIGHTKEY, EKEY, ELEM, ELEM3, ESCKEY, FALSE, ListBase::first, FIVEKEY, FKEY, uiBlock::flag, FOURKEY, GKEY, HKEY, IKEY, JKEY, KKEY, KM_PRESS, LABEL, LEFTARROWKEY, LEFTMOUSE, LKEY, uiBlock::maxx, uiBlock::maxy, MENU, uiBut::menu_key, MENU_SCROLL_INTERVAL, uiPopupBlockHandle::menuretval, MIDDLEMOUSE, uiBlock::minx, uiBlock::miny, MKEY, MOUSEMOVE, uiSafetyRct::next, uiBut::next, NINEKEY, NKEY, NULL, OKEY, ONEKEY, wmEvent::oskey, PAD0, PAD1, PAD2, PAD3, PAD4, PAD5, PAD6, PAD7, PAD8, PAD9, PADENTER, uiSafetyRct::parent, PKEY, PROP_LAYER, PROP_LAYER_MEMBER, PULLDOWN, QKEY, uiPopupBlockHandle::region, RETKEY, uiAfterFunc::retval, RIGHTARROWKEY, RIGHTMOUSE, RKEY, RNA_property_subtype(), uiBut::rnaindex, uiBut::rnapoin, uiBut::rnaprop, uiBlock::saferct, uiSafetyRct::safety, uiPopupBlockHandle::scrolltimer, SEARCH_MENU, SEPR, SEVENKEY, wmEvent::shift, SIXKEY, SKEY, uiHandleButtonData::state, THREEKEY, TIMER, TKEY, TOGR, TWOKEY, wmEvent::type, uiBut::type, UI_BLOCK_LOOP, UI_BLOCK_MOVEMOUSE_QUIT, UI_BLOCK_NUMSELECT, UI_BLOCK_OUT_1, ui_but_find_activated(), ui_but_first(), ui_but_last(), ui_but_next(), ui_but_prev(), UI_DOWN, ui_handle_button_activate(), ui_handle_button_event(), ui_handle_button_over(), ui_menu_scroll(), ui_menu_scroll_test(), ui_mouse_motion_towards_check(), ui_mouse_motion_towards_init(), UI_RETURN_CANCEL, UI_RETURN_OK, UI_RETURN_OUT, UI_RETURN_POPUP_OK, UI_RETURN_UPDATE, UI_RIGHT, UI_TOP, ui_window_to_block(), ARegion::uiblocks, UKEY, UPARROWKEY, wmEvent::val, VKEY, WHEELDOWNMOUSE, WHEELUPMOUSE, WKEY, WM_event_add_timer(), WM_UI_HANDLER_BREAK, WM_UI_HANDLER_CONTINUE, wmEvent::x, XKEY, wmEvent::y, YKEY, ZEROKEY, and ZKEY.

Referenced by ui_handle_menus_recursive().

static int ui_handle_menu_return_submenu ( bContext C,
wmEvent event,
uiPopupBlockHandle menu 
) [static]
static int ui_handle_menus_recursive ( bContext C,
wmEvent event,
uiPopupBlockHandle menu 
) [static]
static int ui_handler_popup ( bContext C,
wmEvent event,
void *  userdata 
) [static]
static int ui_handler_region ( bContext C,
wmEvent event,
void *  UNUSEDuserdata 
) [static]
static int ui_handler_region_menu ( bContext C,
wmEvent event,
void *  UNUSEDuserdata 
) [static]
static int ui_handler_region_menu ( bContext C,
wmEvent event,
void *  userdata 
) [static]

Referenced by button_activate_state().

static void ui_handler_remove_popup ( bContext C,
void *  userdata 
) [static]
static void ui_handler_remove_region ( bContext C,
void *  UNUSEDuserdata 
) [static]
static uiLinkLine* ui_is_a_link ( uiBut from,
uiBut to 
) [static]
static int ui_is_a_warp_but ( uiBut but) [static]
int ui_is_but_utf8 ( uiBut but)
static uiBut* ui_list_find_mouse_over ( ARegion ar,
int  x,
int  y 
) [static]
static int ui_menu_scroll ( ARegion ar,
uiBlock block,
int  my 
) [static]
static char ui_menu_scroll_test ( uiBlock block,
int  my 
) [static]
static int ui_mouse_inside_button ( ARegion ar,
uiBut but,
int  x,
int  y 
) [static]
static int ui_mouse_inside_region ( ARegion ar,
int  x,
int  y 
) [static]
static int ui_mouse_motion_towards_check ( uiBlock block,
uiPopupBlockHandle menu,
int  mx,
int  my 
) [static]
static void ui_mouse_motion_towards_init ( uiPopupBlockHandle menu,
int  mx,
int  my,
int  force 
) [static]
static void ui_ndofedit_but_HSVCIRCLE ( uiBut but,
uiHandleButtonData data,
wmNDOFMotionData ndof,
int  shift 
) [static]
static void ui_ndofedit_but_HSVCUBE ( uiBut but,
uiHandleButtonData data,
wmNDOFMotionData ndof,
int  shift 
) [static]
static void ui_numedit_apply ( bContext C,
uiBlock block,
uiBut but,
uiHandleButtonData data 
) [static]
static float ui_numedit_apply_snap ( int  temp,
float  softmin,
float  softmax,
int  snap 
) [static]

Definition at line 2450 of file interface_handlers.c.

Referenced by ui_numedit_but_NUM().

static float ui_numedit_apply_snapf ( uiBut but,
float  tempf,
float  softmin,
float  softmax,
float  softrange,
int  snap 
) [static]
static void ui_numedit_begin ( uiBut but,
uiHandleButtonData data 
) [static]
static int ui_numedit_but_COLORBAND ( uiBut but,
uiHandleButtonData data,
int  mx 
) [static]
static int ui_numedit_but_CURVE ( uiBut but,
uiHandleButtonData data,
int  snap,
int  mx,
int  my 
) [static]
static int ui_numedit_but_HISTOGRAM ( uiBut but,
uiHandleButtonData data,
int  mx,
int  my 
) [static]
static int ui_numedit_but_HSVCIRCLE ( uiBut but,
uiHandleButtonData data,
int  mx,
int  my,
int  shift 
) [static]
static int ui_numedit_but_HSVCUBE ( uiBut but,
uiHandleButtonData data,
int  mx,
int  my 
) [static]
static int ui_numedit_but_NORMAL ( uiBut but,
uiHandleButtonData data,
int  mx,
int  my 
) [static]
static int ui_numedit_but_NUM ( uiBut but,
uiHandleButtonData data,
float  fac,
int  snap,
int  mx 
) [static]
static int ui_numedit_but_SLI ( uiBut but,
uiHandleButtonData data,
int  shift,
int  ctrl,
int  mx 
) [static]
static int ui_numedit_but_TRACKPREVIEW ( bContext C,
uiBut but,
uiHandleButtonData data,
int  mx,
int  my,
int  shift 
) [static]
static int ui_numedit_but_VECTORSCOPE ( uiBut but,
uiHandleButtonData data,
int  mx,
int  my 
) [static]
static int ui_numedit_but_WAVEFORM ( uiBut but,
uiHandleButtonData data,
int  mx,
int  my 
) [static]
static void ui_numedit_end ( uiBut but,
uiHandleButtonData data 
) [static]
void UI_remove_popup_handlers ( ListBase handlers,
uiPopupBlockHandle popup 
)
static int ui_textedit_autocomplete ( bContext C,
uiBut but,
uiHandleButtonData data 
) [static]
static void ui_textedit_begin ( bContext C,
uiBut but,
uiHandleButtonData data 
) [static]
static int ui_textedit_copypaste ( uiBut but,
uiHandleButtonData data,
int  paste,
int  copy,
int  cut 
) [static]
static int ui_textedit_delete ( uiBut but,
uiHandleButtonData data,
int  direction,
uiButtonJumpType  jump 
) [static]
static int ui_textedit_delete_selection ( uiBut but,
uiHandleButtonData data 
) [static]
static void ui_textedit_end ( bContext C,
uiBut but,
uiHandleButtonData data 
) [static]
static void ui_textedit_move ( uiBut but,
uiHandleButtonData data,
int  direction,
int  select,
uiButtonJumpType  jump 
) [static]
static void ui_textedit_next_but ( uiBlock block,
uiBut actbut,
uiHandleButtonData data 
) [static]
static void ui_textedit_prev_but ( uiBlock block,
uiBut actbut,
uiHandleButtonData data 
) [static]
static void ui_textedit_set_cursor_pos ( uiBut but,
uiHandleButtonData data,
short  x 
) [static]
static void ui_textedit_set_cursor_select ( uiBut but,
uiHandleButtonData data,
short  x 
) [static]
static int ui_textedit_step_next_utf8 ( const char *  str,
size_t  maxlen,
short *  pos 
) [static]

Definition at line 1300 of file interface_handlers.c.

References BLI_str_find_next_char_utf8(), FALSE, and TRUE.

Referenced by ui_textedit_step_utf8().

static int ui_textedit_step_prev_utf8 ( const char *  str,
size_t   UNUSEDmaxlen,
short *  pos 
) [static]
static void ui_textedit_step_utf8 ( const char *  str,
size_t  maxlen,
short *  pos,
const char  direction,
uiButtonJumpType  jump 
) [static]
static int ui_textedit_type_ascii ( uiBut but,
uiHandleButtonData data,
char  ascii 
) [static]

Definition at line 1510 of file interface_handlers.c.

References BLI_str_utf8_size(), ui_is_but_utf8(), and ui_textedit_type_buf().

Referenced by ui_do_but_textedit().

static int ui_textedit_type_buf ( uiBut but,
uiHandleButtonData data,
const char *  utf8_buf,
int  utf8_buf_len 
) [static]
uiBut* uiContextActiveButton ( const struct bContext C)

Definition at line 5482 of file interface_handlers.c.

References NULL, and ui_context_button_active().

wmOperator* uiContextActiveOperator ( const struct bContext C) [read]
void uiContextActiveProperty ( const bContext C,
struct PointerRNA ptr,
struct PropertyRNA **  prop,
int *  index 
)
void uiContextActivePropertyHandle ( bContext C)
void uiContextAnimUpdate ( const bContext C)
void uiFreeActiveButtons ( const bContext C,
bScreen screen 
)
static uiBut* uit_but_find_open_event ( ARegion ar,
wmEvent event 
) [static]
static int verg_colorband ( const void *  a1,
const void *  a2 
) [static]

Definition at line 3593 of file interface_handlers.c.

References uiAfterFunc::a2, CBData::pos, and WM_UI_HANDLER_CONTINUE.

Referenced by ui_colorband_update().


Variable Documentation

ListBase UIAfterFuncs = {NULL, NULL} [static]

Definition at line 294 of file interface_handlers.c.

Referenced by ui_apply_but_funcs_after().