Blender V4.3
textview.hh
Go to the documentation of this file.
1/* SPDX-FileCopyrightText: 2023 Blender Authors
2 *
3 * SPDX-License-Identifier: GPL-2.0-or-later */
4
9#pragma once
10
11#define TVC_TAB_COLUMNS 4
12
14 TVC_LINE_FG = (1 << 0),
15 TVC_LINE_BG = (1 << 1),
16 TVC_LINE_ICON = (1 << 2),
17 TVC_LINE_ICON_FG = (1 << 3),
18 TVC_LINE_ICON_BG = (1 << 4)
19};
21
26 int sel_start, sel_end;
27
29
34
36 int scroll_ymin, scroll_ymax;
37
38 /* callbacks */
39 int (*begin)(TextViewContext *tvc);
40 void (*end)(TextViewContext *tvc);
41 const void *arg1;
42 const void *arg2;
43
44 /* iterator */
45 int (*step)(TextViewContext *tvc);
46 void (*line_get)(TextViewContext *tvc, const char **r_line, int *r_len);
47 enum eTextViewContext_LineFlag (*line_data)(TextViewContext *tvc,
48 uchar fg[4],
49 uchar bg[4],
50 int *r_icon,
51 uchar r_icon_fg[4],
52 uchar r_icon_bg[4]);
53 void (*draw_cursor)(TextViewContext *tvc, int cwidth, int columns);
54 /* constant theme colors */
55 void (*const_colors)(TextViewContext *tvc, unsigned char bg_sel[4]);
56 const void *iter;
64};
65
74 bool do_draw,
75 const int mval_init[2],
76 void **r_mval_pick_item,
77 int *r_mval_pick_offset);
unsigned char uchar
#define ENUM_OPERATORS(_type, _max)
draw_view push_constant(Type::INT, "radiance_src") .push_constant(Type capture_info_buf storage_buf(1, Qualifier::READ, "ObjectBounds", "bounds_buf[]") .push_constant(Type draw_view int
const void * arg2
Definition textview.hh:42
const void * arg1
Definition textview.hh:41
const void * iter
Definition textview.hh:56
rcti draw_rect_outer
Definition textview.hh:33
int textview_draw(TextViewContext *tvc, bool do_draw, const int mval_init[2], void **r_mval_pick_item, int *r_mval_pick_offset)
Definition textview.cc:304
eTextViewContext_LineFlag
Definition textview.hh:13
@ TVC_LINE_ICON
Definition textview.hh:16
@ TVC_LINE_ICON_FG
Definition textview.hh:17
@ TVC_LINE_ICON_BG
Definition textview.hh:18
@ TVC_LINE_BG
Definition textview.hh:15
@ TVC_LINE_FG
Definition textview.hh:14