Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'source/blender/editors/interface/interface_intern.h')
-rw-r--r--source/blender/editors/interface/interface_intern.h38
1 files changed, 33 insertions, 5 deletions
diff --git a/source/blender/editors/interface/interface_intern.h b/source/blender/editors/interface/interface_intern.h
index 18423434eef..5760a28cb5c 100644
--- a/source/blender/editors/interface/interface_intern.h
+++ b/source/blender/editors/interface/interface_intern.h
@@ -1,5 +1,5 @@
/**
- * $Id: interface.h 14444 2008-04-16 22:40:48Z hos $
+ * $Id$
*
* ***** BEGIN GPL LICENSE BLOCK *****
*
@@ -44,12 +44,17 @@ struct uiStyle;
struct uiWidgetColors;
struct uiLayout;
struct bContextStore;
+struct Scene;
+struct ID;
/* ****************** general defines ************** */
/* visual types for drawing */
/* for time being separated from functional types */
typedef enum {
+ /* default */
+ UI_WTYPE_REGULAR,
+
/* standard set */
UI_WTYPE_LABEL,
UI_WTYPE_TOGGLE,
@@ -78,7 +83,8 @@ typedef enum {
UI_WTYPE_SWATCH,
UI_WTYPE_RGB_PICKER,
UI_WTYPE_NORMAL,
- UI_WTYPE_BOX
+ UI_WTYPE_BOX,
+ UI_WTYPE_SCROLL
} uiWidgetTypeEnum;
@@ -98,7 +104,7 @@ typedef enum {
#define UI_ACTIVE 4
#define UI_HAS_ICON 8
#define UI_TEXTINPUT 16
-
+#define UI_HIDDEN 32
/* warn: rest of uiBut->flag in UI_interface.h */
/* internal panel drawing defines */
@@ -181,6 +187,7 @@ struct uiBut {
void *search_arg;
uiLink *link;
+ short linkto[2];
char *tip, *lockstr;
@@ -204,6 +211,9 @@ struct uiBut {
struct PropertyRNA *rnaprop;
int rnaindex;
+ struct PointerRNA rnasearchpoin;
+ struct PropertyRNA *rnasearchprop;
+
/* Operator data */
struct wmOperatorType *optype;
int opcontext;
@@ -254,6 +264,9 @@ struct uiBlock {
uiBlockHandleFunc handle_func;
void *handle_func_arg;
+ /* custom extra handling */
+ int (*block_event_func)(const struct bContext *C, struct uiBlock *, struct wmEvent *);
+
/* extra draw function for custom blocks */
void (*drawextra)(const struct bContext *C, void *idv, rcti *rect);
@@ -277,6 +290,8 @@ struct uiBlock {
int tooltipdisabled; // to avoid tooltip after click
int active; // to keep blocks while drawing and free them afterwards
+
+ void *evil_C; // XXX hack for dynamic operator enums
};
typedef struct uiSafetyRct {
@@ -306,6 +321,8 @@ extern void ui_set_but_hsv(uiBut *but);
extern void ui_get_but_vectorf(uiBut *but, float *vec);
extern void ui_set_but_vectorf(uiBut *but, float *vec);
+extern void ui_hsvcircle_vals_from_pos(float *valrad, float *valdist, rcti *rect, float mx, float my);
+
extern void ui_get_but_string(uiBut *but, char *str, int maxlen);
extern int ui_set_but_string(struct bContext *C, uiBut *but, const char *str);
extern int ui_get_but_string_max_length(uiBut *but);
@@ -357,7 +374,9 @@ void ui_tooltip_free(struct bContext *C, struct ARegion *ar);
/* searchbox for string button */
ARegion *ui_searchbox_create(struct bContext *C, struct ARegion *butregion, uiBut *but);
+int ui_searchbox_inside(struct ARegion *ar, int x, int y);
void ui_searchbox_update(struct bContext *C, struct ARegion *ar, uiBut *but, int reset);
+void ui_searchbox_autocomplete(struct bContext *C, struct ARegion *ar, uiBut *but, char *str);
void ui_searchbox_event(struct bContext *C, struct ARegion *ar, uiBut *but, struct wmEvent *event);
void ui_searchbox_apply(uiBut *but, struct ARegion *ar);
void ui_searchbox_free(struct bContext *C, struct ARegion *ar);
@@ -402,17 +421,22 @@ extern int ui_button_is_active(struct ARegion *ar);
void ui_draw_anti_tria(float x1, float y1, float x2, float y2, float x3, float y3);
void ui_draw_menu_back(struct uiStyle *style, uiBlock *block, rcti *rect);
void ui_draw_search_back(struct uiStyle *style, uiBlock *block, rcti *rect);
+void ui_draw_link_bezier(rcti *rect);
extern void ui_draw_but(const struct bContext *C, ARegion *ar, struct uiStyle *style, uiBut *but, rcti *rect);
/* theme color init */
struct ThemeUI;
void ui_widget_color_init(struct ThemeUI *tui);
-void ui_draw_menu_item(struct uiFontStyle *fstyle, rcti *rect, char *name, int state);
+void ui_draw_menu_item(struct uiFontStyle *fstyle, rcti *rect, char *name, int iconid, int state);
/* interface_style.c */
void uiStyleInit(void);
+/* interface_icons.c */
+void ui_id_icon_render(struct Scene *scene, struct ID *id);
+int ui_id_icon_get(struct Scene *scene, struct ID *id);
+
/* resources.c */
void init_userdef_do_versions(void);
void ui_theme_init_userdef(void);
@@ -420,8 +444,9 @@ void ui_resources_init(void);
void ui_resources_free(void);
/* interface_layout.c */
-void ui_layout_add_but(struct uiLayout *layout, uiBut *but);
+void ui_layout_add_but(uiLayout *layout, uiBut *but);
int ui_but_can_align(uiBut *but);
+void ui_but_add_search(uiBut *but, PointerRNA *ptr, PropertyRNA *prop, PointerRNA *searchptr, PropertyRNA *searchprop);
/* interface_anim.c */
void ui_but_anim_flag(uiBut *but, float cfra);
@@ -430,6 +455,9 @@ void ui_but_anim_delete_keyframe(struct bContext *C);
void ui_but_anim_add_driver(struct bContext *C);
void ui_but_anim_remove_driver(struct bContext *C);
void ui_but_anim_menu(struct bContext *C, uiBut *but);
+int ui_but_anim_expression_get(uiBut *but, char *str, int maxlen);
+int ui_but_anim_expression_set(uiBut *but, const char *str);
+void ui_but_anim_autokey(uiBut *but, struct Scene *scene, float cfra);
#endif