Blender V5.0
screen_draw.cc File Reference
#include "ED_screen.hh"
#include "ED_screen_types.hh"
#include "GPU_batch_presets.hh"
#include "GPU_immediate.hh"
#include "GPU_platform.hh"
#include "GPU_state.hh"
#include "BKE_global.hh"
#include "BKE_screen.hh"
#include "BLF_api.hh"
#include "BLI_listbase.h"
#include "BLI_math_color.h"
#include "BLI_math_vector.h"
#include "BLI_rect.h"
#include "BLI_time.h"
#include "BLT_translation.hh"
#include "WM_api.hh"
#include "UI_interface.hh"
#include "UI_resources.hh"
#include "screen_intern.hh"

Go to the source code of this file.

Classes

struct  AreaAnimateHighlightData

Macros

#define CORNER_RESOLUTION   3

Functions

static void do_vert_pair (blender::gpu::VertBuf *vbo, uint pos, uint *vidx, int corner, int i)
static blender::gpu::Batch * batch_screen_edges_get (int *corner_len)
static void drawscredge_area (const ScrArea &area, float edge_thickness)
 Screen edges drawing.
void ED_screen_draw_edges (wmWindow *win)
void screen_draw_move_highlight (const wmWindow *win, bScreen *screen, eScreenAxis dir_axis, float anim_factor)
void screen_draw_region_scale_highlight (ARegion *region)
static void screen_draw_area_drag_tip (const wmWindow *win, int x, int y, const ScrArea *source, const std::string &hint)
static void screen_draw_area_closed (int xmin, int xmax, int ymin, int ymax, float anim_factor)
void screen_draw_join_highlight (const wmWindow *win, ScrArea *sa1, ScrArea *sa2, eScreenDir dir, float anim_factor)
static void rounded_corners (rctf rect, float color[4], int corners)
void screen_draw_dock_preview (const wmWindow *win, ScrArea *source, ScrArea *target, AreaDockTarget dock_target, float factor, int x, int y, float anim_factor)
void screen_draw_split_preview (ScrArea *area, const eScreenAxis dir_axis, const float factor)
static void area_animate_highlight_cb (const wmWindow *, void *userdata)
void screen_animate_area_highlight (wmWindow *win, bScreen *screen, const rcti *rect, float inner[4], float outline[4], float seconds)

Macro Definition Documentation

◆ CORNER_RESOLUTION

#define CORNER_RESOLUTION   3

Definition at line 37 of file screen_draw.cc.

Referenced by batch_screen_edges_get(), and do_vert_pair().

Function Documentation

◆ area_animate_highlight_cb()

void area_animate_highlight_cb ( const wmWindow * ,
void * userdata )
static

◆ batch_screen_edges_get()

◆ do_vert_pair()

void do_vert_pair ( blender::gpu::VertBuf * vbo,
uint pos,
uint * vidx,
int corner,
int i )
static

◆ drawscredge_area()

void drawscredge_area ( const ScrArea & area,
float edge_thickness )
static

◆ ED_screen_draw_edges()

◆ rounded_corners()

◆ screen_animate_area_highlight()

void screen_animate_area_highlight ( wmWindow * win,
bScreen * screen,
const rcti * rect,
float inner[4],
float outline[4],
float seconds )

◆ screen_draw_area_closed()

void screen_draw_area_closed ( int xmin,
int xmax,
int ymin,
int ymax,
float anim_factor )
static

◆ screen_draw_area_drag_tip()

◆ screen_draw_dock_preview()

◆ screen_draw_join_highlight()

void screen_draw_join_highlight ( const wmWindow * win,
ScrArea * sa1,
ScrArea * sa2,
eScreenDir dir,
float anim_factor )

Visual indication of the two areas involved in a proposed join.

Parameters
sa1Area from which the resultant originates.
sa2Target area that will be replaced.

Definition at line 378 of file screen_draw.cc.

References area_getoffsets(), EDITORRADIUS, wmWindow::eventstate, IFACE_, SCREEN_DIR_IS_VERTICAL, SCREEN_DIR_NONE, screen_draw_area_closed(), screen_draw_area_drag_tip(), ScrArea::totrct, U, UI_CNR_ALL, UI_draw_roundbox_4fv_ex(), UI_draw_roundbox_corner_set(), rctf::xmax, rcti::xmax, rctf::xmin, rcti::xmin, wmEvent::xy, rctf::ymax, rcti::ymax, rctf::ymin, and rcti::ymin.

Referenced by area_join_draw_cb().

◆ screen_draw_move_highlight()

◆ screen_draw_region_scale_highlight()

◆ screen_draw_split_preview()