84 block,
UI_BTYPE_LABEL, 0,
label, 0,
y,
x,
UI_UNIT_Y,
NULL, 0, 0, 0, 0,
NULL);
101 const int size = roundness * 20;
103 if (size < ibuf->
x && size < ibuf->
y) {
105 rct += 4 * (ibuf->
y -
size) * ibuf->
x;
107 for (
int y = 0;
y <
size;
y++) {
108 for (
int x = 0;
x <
size;
x++, rct += 4) {
109 const float pixel = 1.0 /
size;
110 const float u = pixel *
x;
111 const float v = pixel *
y;
116 const int offset_l = 4 * (
size -
x -
x - 1) + 3;
117 const int offset_r = 4 * (ibuf->
x -
size) + 3;
133 rct[offset_l] =
alpha;
134 rct[offset_r] =
alpha;
139 rct += 4 * (ibuf->
x -
size);
148 #ifndef WITH_HEADLESS
153 if (
U.app_template[0] !=
'\0') {
157 U.app_template, template_directory,
sizeof(template_directory))) {
158 BLI_join_dirfile(splash_filepath,
sizeof(splash_filepath), template_directory,
"splash.png");
202 int splash_width = text_points_max * 45 *
U.dpi_fac;
211 block, ibuf, 0, 0.5f *
U.widget_unit, splash_width, splash_height,
NULL);
218 const int layout_margin_x =
U.dpi_fac * 26;
224 splash_width - (layout_margin_x * 2),
267 ot->
name =
"Splash Screen";
269 ot->
description =
"Open the splash screen with release info";
279 const int dialog_width = text_points_max * 42 *
U.dpi_fac;
290 #ifndef WITH_HEADLESS
297 blender_logo_data, blender_logo_data_size,
IB_rect,
NULL,
"blender_logo");
300 int width = 0.5 * dialog_width;
347 ot->
name =
"About Blender";
349 ot->
description =
"Open a window with information about Blender";
#define BLENDER_USERPREF_FILE
const char * BKE_appdir_folder_id(const int folder_id, const char *subfolder)
bool BKE_appdir_app_template_id_search(const char *app_template, char *path, size_t path_len)
const char * BKE_blender_version_string(void)
struct wmWindow * CTX_wm_window(const bContext *C)
int BLI_exists(const char *path) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL()
void BLI_join_dirfile(char *__restrict dst, const size_t maxlen, const char *__restrict dir, const char *__restrict file) ATTR_NONNULL()
size_t BLI_path_join(char *__restrict dst, const size_t dst_len, const char *path_first,...) ATTR_NONNULL(1
ID and Library types, which are fundamental for sdna.
int datatoc_splash_png_size
int datatoc_blender_logo_png_size
char datatoc_splash_png[]
char datatoc_blender_logo_png[]
_GL_VOID GLfloat value _GL_VOID_RET _GL_VOID const GLuint GLboolean *residences _GL_BOOL_RET _GL_VOID GLsizei GLfloat GLfloat GLfloat GLfloat const GLubyte *bitmap _GL_VOID_RET _GL_VOID GLenum const void *lists _GL_VOID_RET _GL_VOID const GLdouble *equation _GL_VOID_RET _GL_VOID GLdouble GLdouble blue _GL_VOID_RET _GL_VOID GLfloat GLfloat blue _GL_VOID_RET _GL_VOID GLint GLint blue _GL_VOID_RET _GL_VOID GLshort GLshort blue _GL_VOID_RET _GL_VOID GLubyte GLubyte blue _GL_VOID_RET _GL_VOID GLuint GLuint blue _GL_VOID_RET _GL_VOID GLushort GLushort blue _GL_VOID_RET _GL_VOID GLbyte GLbyte GLbyte alpha _GL_VOID_RET _GL_VOID GLdouble GLdouble GLdouble alpha _GL_VOID_RET _GL_VOID GLfloat GLfloat GLfloat alpha _GL_VOID_RET _GL_VOID GLint GLint GLint alpha _GL_VOID_RET _GL_VOID GLshort GLshort GLshort alpha _GL_VOID_RET _GL_VOID GLubyte GLubyte GLubyte alpha _GL_VOID_RET _GL_VOID GLuint GLuint GLuint alpha _GL_VOID_RET _GL_VOID GLushort GLushort GLushort alpha _GL_VOID_RET _GL_VOID GLenum mode _GL_VOID_RET _GL_VOID GLint GLsizei width
_GL_VOID GLfloat value _GL_VOID_RET _GL_VOID const GLuint GLboolean *residences _GL_BOOL_RET _GL_VOID GLsizei height
_GL_VOID GLfloat value _GL_VOID_RET _GL_VOID const GLuint GLboolean *residences _GL_BOOL_RET _GL_VOID GLsizei GLfloat GLfloat GLfloat GLfloat const GLubyte *bitmap _GL_VOID_RET _GL_VOID GLenum const void *lists _GL_VOID_RET _GL_VOID const GLdouble *equation _GL_VOID_RET _GL_VOID GLdouble GLdouble blue _GL_VOID_RET _GL_VOID GLfloat GLfloat blue _GL_VOID_RET _GL_VOID GLint GLint blue _GL_VOID_RET _GL_VOID GLshort GLshort blue _GL_VOID_RET _GL_VOID GLubyte GLubyte blue _GL_VOID_RET _GL_VOID GLuint GLuint blue _GL_VOID_RET _GL_VOID GLushort GLushort blue _GL_VOID_RET _GL_VOID GLbyte GLbyte GLbyte alpha _GL_VOID_RET _GL_VOID GLdouble GLdouble GLdouble alpha _GL_VOID_RET _GL_VOID GLfloat GLfloat GLfloat alpha _GL_VOID_RET _GL_VOID GLint GLint GLint alpha _GL_VOID_RET _GL_VOID GLshort GLshort GLshort alpha _GL_VOID_RET _GL_VOID GLubyte GLubyte GLubyte alpha _GL_VOID_RET _GL_VOID GLuint GLuint GLuint alpha _GL_VOID_RET _GL_VOID GLushort GLushort GLushort alpha _GL_VOID_RET _GL_VOID GLenum mode _GL_VOID_RET _GL_VOID GLint y
bool IMB_scaleImBuf(struct ImBuf *ibuf, unsigned int newx, unsigned int newy)
struct ImBuf * IMB_loadiffname(const char *filepath, int flags, char colorspace[IM_MAX_SPACE])
void IMB_premultiply_alpha(struct ImBuf *ibuf)
struct ImBuf * IMB_ibImageFromMemory(const unsigned char *mem, size_t size, int flags, char colorspace[IM_MAX_SPACE], const char *descr)
Contains defines and structs used throughout the imbuf module.
void uiItemS_ex(uiLayout *layout, float factor)
void uiItemL_ex(uiLayout *layout, const char *name, int icon, const bool highlight, const bool redalert)
const struct uiStyle * UI_style_get_dpi(void)
void UI_block_theme_style_set(uiBlock *block, char theme_style)
uiBut * uiDefButImage(uiBlock *block, void *imbuf, int x, int y, short width, short height, const uchar color[4])
void UI_popup_block_close(struct bContext *C, struct wmWindow *win, uiBlock *block)
uiLayout * uiLayoutColumn(uiLayout *layout, bool align)
void UI_menutype_draw(struct bContext *C, struct MenuType *mt, struct uiLayout *layout)
uiBut * uiDefBut(uiBlock *block, int type, int retval, const char *str, int x, int y, short width, short height, void *poin, float min, float max, float a1, float a2, const char *tip)
void UI_but_drawflag_enable(uiBut *but, int flag)
void uiLayoutSetAlignment(uiLayout *layout, char alignment)
uiLayout * uiLayoutRow(uiLayout *layout, bool align)
void UI_popup_block_invoke(struct bContext *C, uiBlockCreateFunc func, void *arg, void(*arg_free)(void *arg))
void UI_block_emboss_set(uiBlock *block, eUIEmbossType emboss)
void UI_but_drawflag_disable(uiBut *but, int flag)
uiLayout * UI_block_layout(uiBlock *block, int dir, int type, int x, int y, int size, int em, int padding, const struct uiStyle *style)
void UI_but_func_set(uiBut *but, uiButHandleFunc func, void *arg1, void *arg2)
uiBlock * UI_block_begin(const struct bContext *C, struct ARegion *region, const char *name, eUIEmbossType emboss)
void UI_block_bounds_set_centered(uiBlock *block, int addval)
void UI_block_flag_enable(uiBlock *block, int flag)
@ UI_BLOCK_THEME_STYLE_POPUP
void UI_but_flag_enable(uiBut *but, int flag)
struct bTheme * UI_GetTheme(void)
ATTR_WARN_UNUSED_RESULT const BMVert * v
static DBVT_INLINE btScalar size(const btDbvtVolume &a)
static CCL_NAMESPACE_BEGIN const double alpha
MINLINE unsigned char unit_float_to_uchar_clamp(float val)
uiWidgetColors wcol_menu_back
int(* invoke)(struct bContext *, struct wmOperator *, const struct wmEvent *) ATTR_WARN_UNUSED_RESULT
bool(* poll)(struct bContext *) ATTR_WARN_UNUSED_RESULT
ccl_device_inline float distance(const float2 &a, const float2 &b)
bool WM_operator_winactive(bContext *C)
void WM_OT_splash_about(wmOperatorType *ot)
static uiBlock * wm_block_create_about(bContext *C, ARegion *region, void *UNUSED(arg))
static ImBuf * wm_block_splash_image(int width, int *r_height)
static int wm_splash_invoke(bContext *C, wmOperator *UNUSED(op), const wmEvent *UNUSED(event))
static void wm_block_splash_add_label(uiBlock *block, const char *label, int x, int y)
static void wm_block_close(bContext *C, void *arg_block, void *UNUSED(arg))
static int wm_about_invoke(bContext *C, wmOperator *UNUSED(op), const wmEvent *UNUSED(event))
static uiBlock * wm_block_create_splash(bContext *C, ARegion *region, void *UNUSED(arg))
static void wm_block_splash_image_roundcorners_add(ImBuf *ibuf)
void WM_OT_splash(wmOperatorType *ot)