Blender V5.0
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
8
9#pragma once
10
11#include "BLI_utildefines.h"
12
13#include "DNA_vec_types.h"
14
15#define TVC_TAB_COLUMNS 4
16
18 TVC_LINE_FG = (1 << 0),
19 TVC_LINE_BG = (1 << 1),
20 TVC_LINE_ICON = (1 << 2),
21 TVC_LINE_ICON_FG = (1 << 3),
23};
25
31
33
38
41
42 /* callbacks */
43 int (*begin)(TextViewContext *tvc);
44 void (*end)(TextViewContext *tvc);
45 const void *arg1;
46 const void *arg2;
47
48 /* iterator */
49 int (*step)(TextViewContext *tvc);
50 void (*line_get)(TextViewContext *tvc, const char **r_line, int *r_len);
52 uchar fg[4],
53 uchar bg[4],
54 int *r_icon,
55 uchar r_icon_fg[4],
56 uchar r_icon_bg[4]);
57 void (*draw_cursor)(TextViewContext *tvc, int cwidth, int columns);
58 /* constant theme colors */
59 void (*const_colors)(TextViewContext *tvc, unsigned char bg_sel[4]);
60 const void *iter;
68};
69
78 bool do_draw,
79 const int mval_init[2],
80 void **r_mval_pick_item,
81 int *r_mval_pick_offset);
unsigned char uchar
#define ENUM_OPERATORS(_type, _max)
enum eTextViewContext_LineFlag(* line_data)(TextViewContext *tvc, uchar fg[4], uchar bg[4], int *r_icon, uchar r_icon_fg[4], uchar r_icon_bg[4])
Definition textview.hh:51
const void * arg2
Definition textview.hh:46
const void * arg1
Definition textview.hh:45
const void * iter
Definition textview.hh:60
void(* end)(TextViewContext *tvc)
Definition textview.hh:44
void(* const_colors)(TextViewContext *tvc, unsigned char bg_sel[4])
Definition textview.hh:59
int(* begin)(TextViewContext *tvc)
Definition textview.hh:43
void(* line_get)(TextViewContext *tvc, const char **r_line, int *r_len)
Definition textview.hh:50
int(* step)(TextViewContext *tvc)
Definition textview.hh:49
rcti draw_rect_outer
Definition textview.hh:37
void(* draw_cursor)(TextViewContext *tvc, int cwidth, int columns)
Definition textview.hh:57
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:303
eTextViewContext_LineFlag
Definition textview.hh:17
@ TVC_LINE_ICON
Definition textview.hh:20
@ TVC_LINE_ICON_FG
Definition textview.hh:21
@ TVC_LINE_ICON_BG
Definition textview.hh:22
@ TVC_LINE_BG
Definition textview.hh:19
@ TVC_LINE_FG
Definition textview.hh:18