Fix T85038: No curve is "active" after selecting all curves
[blender.git] / source / blender / python / BPY_extern_run.h
1 /*
2  * This program is free software; you can redistribute it and/or
3  * modify it under the terms of the GNU General Public License
4  * as published by the Free Software Foundation; either version 2
5  * of the License, or (at your option) any later version.
6  *
7  * This program is distributed in the hope that it will be useful,
8  * but WITHOUT ANY WARRANTY; without even the implied warranty of
9  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
10  * GNU General Public License for more details.
11  *
12  * You should have received a copy of the GNU General Public License
13  * along with this program; if not, write to the Free Software Foundation,
14  * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
15  */
16
17 /** \file
18  * \ingroup python
19  */
20
21 #pragma once
22
23 #ifdef __cplusplus
24 extern "C" {
25 #endif
26
27 #include "BLI_sys_types.h"
28
29 struct ReportList;
30 struct Text;
31 struct bContext;
32
33 /* bpy_interface_run.c */
34 bool BPY_run_filepath(struct bContext *C, const char *filepath, struct ReportList *reports);
35 bool BPY_run_text(struct bContext *C,
36                   struct Text *text,
37                   struct ReportList *reports,
38                   const bool do_jump);
39
40 /* Use the 'eval' for simple single-line expressions,
41  * otherwise 'exec' for full multi-line scripts. */
42 bool BPY_run_string_exec(struct bContext *C, const char *imports[], const char *expr);
43 bool BPY_run_string_eval(struct bContext *C, const char *imports[], const char *expr);
44
45 /* Run, evaluating to fixed type result. */
46 bool BPY_run_string_as_number(struct bContext *C,
47                               const char *imports[],
48                               const char *expr,
49                               const char *report_prefix,
50                               double *r_value);
51 bool BPY_run_string_as_intptr(struct bContext *C,
52                               const char *imports[],
53                               const char *expr,
54                               const char *report_prefix,
55                               intptr_t *r_value);
56 bool BPY_run_string_as_string_and_size(struct bContext *C,
57                                        const char *imports[],
58                                        const char *expr,
59                                        const char *report_prefix,
60                                        char **r_value,
61                                        size_t *r_value_size);
62 bool BPY_run_string_as_string(struct bContext *C,
63                               const char *imports[],
64                               const char *expr,
65                               const char *report_prefix,
66                               char **r_value);
67
68 #ifdef __cplusplus
69 } /* extern "C" */
70 #endif