Blender  V2.93
wm_operator_props.c
Go to the documentation of this file.
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  * The Original Code is Copyright (C) 2007 Blender Foundation.
17  * All rights reserved.
18  */
19 
27 #include "DNA_space_types.h"
28 
29 #include "BLI_math_base.h"
30 #include "BLI_rect.h"
31 
32 #include "UI_resources.h"
33 
34 #include "RNA_access.h"
35 #include "RNA_define.h"
36 #include "RNA_enum_types.h"
37 
38 #include "ED_select_utils.h"
39 
40 #include "WM_api.h"
41 #include "WM_types.h"
42 
44 {
45  PropertyRNA *prop;
46 
47  prop = RNA_def_boolean(ot->srna, "confirm", true, "Confirm", "Prompt for confirmation");
49 }
50 
55  struct bContext *UNUSED(C), PointerRNA *UNUSED(ptr), PropertyRNA *UNUSED(prop), bool *r_free)
56 {
57  EnumPropertyItem *items;
58  const EnumPropertyItem default_item = {
60  "DEFAULT",
61  0,
62  "Default",
63  "Automatically determine sort method for files",
64  };
65  int totitem = 0;
66 
67  RNA_enum_item_add(&items, &totitem, &default_item);
69  RNA_enum_item_end(&items, &totitem);
70  *r_free = true;
71 
72  return items;
73 }
74 
75 /* default properties for fileselect */
77  int filter,
78  short type,
79  short action,
80  short flag,
81  short display,
82  short sort)
83 {
84  PropertyRNA *prop;
85 
86  static const EnumPropertyItem file_display_items[] = {
88  "DEFAULT",
89  0,
90  "Default",
91  "Automatically determine display type for files"},
93  "LIST_VERTICAL",
94  ICON_SHORTDISPLAY, /* Name of deprecated short list */
95  "Short List",
96  "Display files as short list"},
98  "LIST_HORIZONTAL",
99  ICON_LONGDISPLAY, /* Name of deprecated long list */
100  "Long List",
101  "Display files as a detailed list"},
102  {FILE_IMGDISPLAY, "THUMBNAIL", ICON_IMGDISPLAY, "Thumbnails", "Display files as thumbnails"},
103  {0, NULL, 0, NULL, NULL},
104  };
105 
106  if (flag & WM_FILESEL_FILEPATH) {
107  RNA_def_string_file_path(ot->srna, "filepath", NULL, FILE_MAX, "File Path", "Path to file");
108  }
109 
110  if (flag & WM_FILESEL_DIRECTORY) {
112  ot->srna, "directory", NULL, FILE_MAX, "Directory", "Directory of the file");
113  }
114 
115  if (flag & WM_FILESEL_FILENAME) {
117  ot->srna, "filename", NULL, FILE_MAX, "File Name", "Name of the file");
118  }
119 
120  if (flag & WM_FILESEL_FILES) {
122  ot->srna, "files", &RNA_OperatorFileListElement, "Files", "");
124  }
125 
126  if ((flag & WM_FILESEL_SHOW_PROPS) == 0) {
127  prop = RNA_def_boolean(ot->srna,
128  "hide_props_region",
129  true,
130  "Hide Operator Properties",
131  "Collapse the region displaying the operator settings");
133  }
134 
135  if (action == FILE_SAVE) {
136  /* note, this is only used to check if we should highlight the filename area red when the
137  * filepath is an existing file. */
138  prop = RNA_def_boolean(ot->srna,
139  "check_existing",
140  true,
141  "Check Existing",
142  "Check and warn on overwriting existing files");
144  }
145 
146  prop = RNA_def_boolean(
147  ot->srna, "filter_blender", (filter & FILE_TYPE_BLENDER) != 0, "Filter .blend files", "");
149  prop = RNA_def_boolean(ot->srna,
150  "filter_backup",
152  "Filter .blend files",
153  "");
155  prop = RNA_def_boolean(
156  ot->srna, "filter_image", (filter & FILE_TYPE_IMAGE) != 0, "Filter image files", "");
158  prop = RNA_def_boolean(
159  ot->srna, "filter_movie", (filter & FILE_TYPE_MOVIE) != 0, "Filter movie files", "");
161  prop = RNA_def_boolean(
162  ot->srna, "filter_python", (filter & FILE_TYPE_PYSCRIPT) != 0, "Filter python files", "");
164  prop = RNA_def_boolean(
165  ot->srna, "filter_font", (filter & FILE_TYPE_FTFONT) != 0, "Filter font files", "");
167  prop = RNA_def_boolean(
168  ot->srna, "filter_sound", (filter & FILE_TYPE_SOUND) != 0, "Filter sound files", "");
170  prop = RNA_def_boolean(
171  ot->srna, "filter_text", (filter & FILE_TYPE_TEXT) != 0, "Filter text files", "");
173  prop = RNA_def_boolean(
174  ot->srna, "filter_archive", (filter & FILE_TYPE_ARCHIVE) != 0, "Filter archive files", "");
176  prop = RNA_def_boolean(
177  ot->srna, "filter_btx", (filter & FILE_TYPE_BTX) != 0, "Filter btx files", "");
179  prop = RNA_def_boolean(
180  ot->srna, "filter_collada", (filter & FILE_TYPE_COLLADA) != 0, "Filter COLLADA files", "");
182  prop = RNA_def_boolean(
183  ot->srna, "filter_alembic", (filter & FILE_TYPE_ALEMBIC) != 0, "Filter Alembic files", "");
185  prop = RNA_def_boolean(
186  ot->srna, "filter_usd", (filter & FILE_TYPE_USD) != 0, "Filter USD files", "");
188  prop = RNA_def_boolean(ot->srna,
189  "filter_volume",
190  (filter & FILE_TYPE_VOLUME) != 0,
191  "Filter OpenVDB volume files",
192  "");
194  prop = RNA_def_boolean(
195  ot->srna, "filter_folder", (filter & FILE_TYPE_FOLDER) != 0, "Filter folders", "");
197  prop = RNA_def_boolean(
198  ot->srna, "filter_blenlib", (filter & FILE_TYPE_BLENDERLIB) != 0, "Filter Blender IDs", "");
200 
201  /* TODO asset only filter? */
202 
203  prop = RNA_def_int(
204  ot->srna,
205  "filemode",
206  type,
207  FILE_LOADLIB,
208  FILE_SPECIAL,
209  "File Browser Mode",
210  "The setting for the file browser mode to load a .blend file, a library or a special file",
211  FILE_LOADLIB,
212  FILE_SPECIAL);
214 
215  if (flag & WM_FILESEL_RELPATH) {
217  "relative_path",
218  true,
219  "Relative Path",
220  "Select the file relative to the blend file");
221  }
222 
223  if ((filter & FILE_TYPE_IMAGE) || (filter & FILE_TYPE_MOVIE)) {
224  prop = RNA_def_boolean(ot->srna, "show_multiview", 0, "Enable Multi-View", "");
226  prop = RNA_def_boolean(ot->srna, "use_multiview", 0, "Use Multi-View", "");
228  }
229 
230  prop = RNA_def_enum(ot->srna, "display_type", file_display_items, display, "Display Type", "");
232 
233  prop = RNA_def_enum(ot->srna, "sort_method", DummyRNA_NULL_items, sort, "File sorting mode", "");
236 }
237 
239  int default_action,
240  const EnumPropertyItem *select_actions,
241  bool hide_gui)
242 {
243  PropertyRNA *prop;
244  prop = RNA_def_enum(
245  ot->srna, "action", select_actions, default_action, "Action", "Selection action to execute");
246 
247  if (hide_gui) {
249  }
250 }
251 
252 void WM_operator_properties_select_action(wmOperatorType *ot, int default_action, bool hide_gui)
253 {
254  static const EnumPropertyItem select_actions[] = {
255  {SEL_TOGGLE, "TOGGLE", 0, "Toggle", "Toggle selection for all elements"},
256  {SEL_SELECT, "SELECT", 0, "Select", "Select all elements"},
257  {SEL_DESELECT, "DESELECT", 0, "Deselect", "Deselect all elements"},
258  {SEL_INVERT, "INVERT", 0, "Invert", "Invert selection of all elements"},
259  {0, NULL, 0, NULL, NULL},
260  };
261 
262  wm_operator_properties_select_action_ex(ot, default_action, select_actions, hide_gui);
263 }
264 
269  int default_action,
270  bool hide_gui)
271 {
272  static const EnumPropertyItem select_actions[] = {
273  {SEL_SELECT, "SELECT", 0, "Select", "Select all elements"},
274  {SEL_DESELECT, "DESELECT", 0, "Deselect", "Deselect all elements"},
275  {0, NULL, 0, NULL, NULL},
276  };
277 
278  wm_operator_properties_select_action_ex(ot, default_action, select_actions, hide_gui);
279 }
280 
286 {
288  "ratio",
289  0.5f,
290  0.0f,
291  1.0f,
292  "Ratio",
293  "Portion of items to select randomly",
294  0.0f,
295  1.0f);
297  "seed",
298  0,
299  0,
300  INT_MAX,
301  "Random Seed",
302  "Seed for the random number generator",
303  0,
304  255);
305 
307 }
308 
310 {
311  PropertyRNA *prop = RNA_struct_find_property(op->ptr, "seed");
312  int value = RNA_property_int_get(op->ptr, prop);
313 
314  if (op->flag & OP_IS_INVOKE) {
315  if (!RNA_property_is_set(op->ptr, prop)) {
316  value += 1;
317  RNA_property_int_set(op->ptr, prop, value);
318  }
319  }
320  return value;
321 }
322 
324 {
326 }
327 
329 {
330  PropertyRNA *prop;
331 
332  prop = RNA_def_int(ot->srna, "xmin", 0, INT_MIN, INT_MAX, "X Min", "", INT_MIN, INT_MAX);
334  prop = RNA_def_int(ot->srna, "xmax", 0, INT_MIN, INT_MAX, "X Max", "", INT_MIN, INT_MAX);
336  prop = RNA_def_int(ot->srna, "ymin", 0, INT_MIN, INT_MAX, "Y Min", "", INT_MIN, INT_MAX);
338  prop = RNA_def_int(ot->srna, "ymax", 0, INT_MIN, INT_MAX, "Y Max", "", INT_MIN, INT_MAX);
340 
341  prop = RNA_def_boolean(ot->srna, "wait_for_input", true, "Wait for Input", "");
343 }
344 
346 {
347  rect->xmin = RNA_int_get(op->ptr, "xmin");
348  rect->ymin = RNA_int_get(op->ptr, "ymin");
349  rect->xmax = RNA_int_get(op->ptr, "xmax");
350  rect->ymax = RNA_int_get(op->ptr, "ymax");
351 }
352 
354 {
355  rcti rect_i;
357  BLI_rctf_rcti_copy(rect, &rect_i);
358 }
359 
363 void WM_operator_properties_gesture_box_ex(wmOperatorType *ot, bool deselect, bool extend)
364 {
365  PropertyRNA *prop;
366 
368 
369  if (deselect) {
370  prop = RNA_def_boolean(
371  ot->srna, "deselect", false, "Deselect", "Deselect rather than select items");
373  }
374  if (extend) {
375  prop = RNA_def_boolean(ot->srna,
376  "extend",
377  true,
378  "Extend",
379  "Extend selection instead of deselecting everything first");
381  }
382 }
383 
389 {
391  "use_cursor_init",
392  true,
393  "Use Mouse Position",
394  "Allow the initial mouse position to be used");
396 }
397 
399 {
401 }
403 {
405 }
406 
408 {
409  static const EnumPropertyItem select_mode_items[] = {
410  {SEL_OP_SET, "SET", ICON_SELECT_SET, "Set", "Set a new selection"},
411  {SEL_OP_ADD, "ADD", ICON_SELECT_EXTEND, "Extend", "Extend existing selection"},
412  {SEL_OP_SUB, "SUB", ICON_SELECT_SUBTRACT, "Subtract", "Subtract existing selection"},
413  {SEL_OP_XOR, "XOR", ICON_SELECT_DIFFERENCE, "Difference", "Inverts existing selection"},
414  {SEL_OP_AND, "AND", ICON_SELECT_INTERSECT, "Intersect", "Intersect existing selection"},
415  {0, NULL, 0, NULL, NULL},
416  };
417  PropertyRNA *prop = RNA_def_enum(ot->srna, "mode", select_mode_items, SEL_OP_SET, "Mode", "");
419 }
420 
421 /* Some tools don't support XOR/AND. */
423 {
424  static const EnumPropertyItem select_mode_items[] = {
425  {SEL_OP_SET, "SET", ICON_SELECT_SET, "Set", "Set a new selection"},
426  {SEL_OP_ADD, "ADD", ICON_SELECT_EXTEND, "Extend", "Extend existing selection"},
427  {SEL_OP_SUB, "SUB", ICON_SELECT_SUBTRACT, "Subtract", "Subtract existing selection"},
428  {0, NULL, 0, NULL, NULL},
429  };
430  PropertyRNA *prop = RNA_def_enum(ot->srna, "mode", select_mode_items, SEL_OP_SET, "Mode", "");
432 }
433 
435 {
436  static const EnumPropertyItem direction_items[] = {
437  {UI_SELECT_WALK_UP, "UP", 0, "Previous", ""},
438  {UI_SELECT_WALK_DOWN, "DOWN", 0, "Next", ""},
439  {UI_SELECT_WALK_LEFT, "LEFT", 0, "Left", ""},
440  {UI_SELECT_WALK_RIGHT, "RIGHT", 0, "Right", ""},
441  {0, NULL, 0, NULL, NULL},
442  };
443  PropertyRNA *prop;
444  prop = RNA_def_enum(ot->srna,
445  "direction",
446  direction_items,
447  0,
448  "Walk Direction",
449  "Select/Deselect element in this direction");
451 }
452 
479 {
480  /* On the initial mouse press, this is set by #WM_generic_select_modal() to let the select
481  * operator exec callback know that it should not __yet__ deselect other items when clicking on
482  * an already selected one. Instead should make sure the operator executes modal then (see
483  * #WM_generic_select_modal()), so that the exec callback can be called a second time on the
484  * mouse release event to do this part. */
486  ot->srna, "wait_to_deselect_others", false, "Wait to Deselect Others", "");
488 
489  RNA_def_int(ot->srna, "mouse_x", 0, INT_MIN, INT_MAX, "Mouse X", "", INT_MIN, INT_MAX);
490  RNA_def_int(ot->srna, "mouse_y", 0, INT_MIN, INT_MAX, "Mouse Y", "", INT_MIN, INT_MAX);
491 }
492 
494 {
496 
497  PropertyRNA *prop;
498  prop = RNA_def_boolean(ot->srna, "zoom_out", false, "Zoom Out", "");
500 }
501 
506 {
507  PropertyRNA *prop;
508  prop = RNA_def_collection_runtime(ot->srna, "path", &RNA_OperatorMousePath, "Path", "");
510 }
511 
516 {
517  PropertyRNA *prop;
518 
519  prop = RNA_def_int(ot->srna, "xstart", 0, INT_MIN, INT_MAX, "X Start", "", INT_MIN, INT_MAX);
521  prop = RNA_def_int(ot->srna, "xend", 0, INT_MIN, INT_MAX, "X End", "", INT_MIN, INT_MAX);
523  prop = RNA_def_int(ot->srna, "ystart", 0, INT_MIN, INT_MAX, "Y Start", "", INT_MIN, INT_MAX);
525  prop = RNA_def_int(ot->srna, "yend", 0, INT_MIN, INT_MAX, "Y End", "", INT_MIN, INT_MAX);
527  prop = RNA_def_boolean(ot->srna, "flip", false, "Flip", "");
529 
530  if (cursor) {
531  prop = RNA_def_int(ot->srna,
532  "cursor",
533  cursor,
534  0,
535  INT_MAX,
536  "Cursor",
537  "Mouse cursor style to use during the modal operator",
538  0,
539  INT_MAX);
541  }
542 }
543 
548 {
549  PropertyRNA *prop;
550  const int radius_default = 25;
551 
552  prop = RNA_def_int(ot->srna, "x", 0, INT_MIN, INT_MAX, "X", "", INT_MIN, INT_MAX);
554  prop = RNA_def_int(ot->srna, "y", 0, INT_MIN, INT_MAX, "Y", "", INT_MIN, INT_MAX);
556  RNA_def_int(ot->srna, "radius", radius_default, 1, INT_MAX, "Radius", "", 1, INT_MAX);
557 
558  prop = RNA_def_boolean(ot->srna, "wait_for_input", true, "Wait for Input", "");
560 }
561 
563 {
564  PropertyRNA *prop;
565 
566  prop = RNA_def_boolean(ot->srna,
567  "extend",
568  false,
569  "Extend",
570  "Extend selection instead of deselecting everything first");
572  prop = RNA_def_boolean(ot->srna, "deselect", false, "Deselect", "Remove from selection");
574  prop = RNA_def_boolean(ot->srna, "toggle", false, "Toggle Selection", "Toggle the selection");
576 
577  prop = RNA_def_boolean(ot->srna,
578  "deselect_all",
579  false,
580  "Deselect On Nothing",
581  "Deselect all when nothing under the cursor");
583 }
584 
589 {
590  const int nth_default = nth_can_disable ? 0 : 1;
591  const int nth_min = min_ii(nth_default, 1);
593  "skip",
594  nth_default,
595  nth_min,
596  INT_MAX,
597  "Deselected",
598  "Number of deselected elements in the repetitive sequence",
599  nth_min,
600  100);
602  "nth",
603  1,
604  1,
605  INT_MAX,
606  "Selected",
607  "Number of selected elements in the repetitive sequence",
608  1,
609  100);
611  "offset",
612  0,
613  INT_MIN,
614  INT_MAX,
615  "Offset",
616  "Offset from the starting point",
617  -100,
618  100);
619 }
620 
622  struct CheckerIntervalParams *op_params)
623 {
624  const int nth = RNA_int_get(op->ptr, "nth");
625  const int skip = RNA_int_get(op->ptr, "skip");
626  int offset = RNA_int_get(op->ptr, "offset");
627 
628  op_params->nth = nth;
629  op_params->skip = skip;
630 
631  /* So input of offset zero ends up being (nth - 1). */
632  op_params->offset = mod_i(offset, nth + skip);
633 }
634 
636  int depth)
637 {
638  return ((op_params->skip == 0) ||
639  ((op_params->offset + depth) % (op_params->skip + op_params->nth) >= op_params->skip));
640 }
MINLINE int min_ii(int a, int b)
MINLINE int mod_i(int i, int n)
#define FILE_MAX
void BLI_rctf_rcti_copy(struct rctf *dst, const struct rcti *src)
#define UNUSED(x)
@ FILE_SORT_DEFAULT
@ FILE_LOADLIB
@ FILE_SPECIAL
@ FILE_TYPE_BTX
@ FILE_TYPE_BLENDER
@ FILE_TYPE_ALEMBIC
@ FILE_TYPE_ARCHIVE
@ FILE_TYPE_TEXT
@ FILE_TYPE_COLLADA
@ FILE_TYPE_PYSCRIPT
@ FILE_TYPE_BLENDER_BACKUP
@ FILE_TYPE_VOLUME
@ FILE_TYPE_MOVIE
@ FILE_TYPE_SOUND
@ FILE_TYPE_FOLDER
@ FILE_TYPE_FTFONT
@ FILE_TYPE_BLENDERLIB
@ FILE_TYPE_USD
@ FILE_TYPE_IMAGE
@ FILE_SAVE
@ FILE_VERTICALDISPLAY
@ FILE_IMGDISPLAY
@ FILE_HORIZONTALDISPLAY
@ FILE_DEFAULTDISPLAY
@ UI_SELECT_WALK_RIGHT
@ UI_SELECT_WALK_UP
@ UI_SELECT_WALK_LEFT
@ UI_SELECT_WALK_DOWN
@ SEL_SELECT
@ SEL_INVERT
@ SEL_DESELECT
@ SEL_TOGGLE
@ SEL_OP_ADD
@ SEL_OP_SUB
@ SEL_OP_SET
@ SEL_OP_AND
@ SEL_OP_XOR
_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 type
StructRNA RNA_OperatorFileListElement
StructRNA RNA_OperatorMousePath
@ PROP_SKIP_SAVE
Definition: RNA_types.h:204
@ PROP_HIDDEN
Definition: RNA_types.h:202
#define C
Definition: RandGen.cpp:39
#define WM_FILESEL_DIRECTORY
Definition: WM_api.h:535
#define WM_FILESEL_SHOW_PROPS
Definition: WM_api.h:540
#define WM_FILESEL_RELPATH
Definition: WM_api.h:533
#define WM_FILESEL_FILEPATH
Definition: WM_api.h:537
#define WM_FILESEL_FILES
Definition: WM_api.h:538
#define WM_FILESEL_FILENAME
Definition: WM_api.h:536
void sort(btMatrix3x3 &U, btVector3 &sigma, btMatrix3x3 &V, int t)
Helper function of 3X3 SVD for sorting singular values.
DO_INLINE void filter(lfVector *V, fmatrix3x3 *S)
void RNA_property_int_set(PointerRNA *ptr, PropertyRNA *prop, int value)
Definition: rna_access.c:2627
bool RNA_property_is_set(PointerRNA *ptr, PropertyRNA *prop)
Definition: rna_access.c:6655
PropertyRNA * RNA_struct_find_property(PointerRNA *ptr, const char *identifier)
Definition: rna_access.c:866
int RNA_property_int_get(PointerRNA *ptr, PropertyRNA *prop)
Definition: rna_access.c:2607
int RNA_int_get(PointerRNA *ptr, const char *name)
Definition: rna_access.c:6308
PropertyRNA * RNA_def_string_file_name(StructOrFunctionRNA *cont_, const char *identifier, const char *default_value, int maxlen, const char *ui_name, const char *ui_description)
Definition: rna_define.c:3747
void RNA_enum_items_add(EnumPropertyItem **items, int *totitem, const EnumPropertyItem *item)
Definition: rna_define.c:4448
PropertyRNA * RNA_def_boolean(StructOrFunctionRNA *cont_, const char *identifier, bool default_value, const char *ui_name, const char *ui_description)
Definition: rna_define.c:3481
PropertyRNA * RNA_def_string_file_path(StructOrFunctionRNA *cont_, const char *identifier, const char *default_value, int maxlen, const char *ui_name, const char *ui_description)
Definition: rna_define.c:3699
PropertyRNA * RNA_def_collection_runtime(StructOrFunctionRNA *cont_, const char *identifier, StructRNA *type, const char *ui_name, const char *ui_description)
Definition: rna_define.c:4210
PropertyRNA * RNA_def_float_factor(StructOrFunctionRNA *cont_, const char *identifier, float default_value, float hardmin, float hardmax, const char *ui_name, const char *ui_description, float softmin, float softmax)
Definition: rna_define.c:4133
void RNA_enum_item_end(EnumPropertyItem **items, int *totitem)
Definition: rna_define.c:4470
void RNA_enum_item_add(EnumPropertyItem **items, int *totitem, const EnumPropertyItem *item)
Definition: rna_define.c:4416
PropertyRNA * RNA_def_string_dir_path(StructOrFunctionRNA *cont_, const char *identifier, const char *default_value, int maxlen, const char *ui_name, const char *ui_description)
Definition: rna_define.c:3723
void RNA_def_property_flag(PropertyRNA *prop, PropertyFlag flag)
Definition: rna_define.c:1512
PropertyRNA * RNA_def_int(StructOrFunctionRNA *cont_, const char *identifier, int default_value, int hardmin, int hardmax, const char *ui_name, const char *ui_description, int softmin, int softmax)
Definition: rna_define.c:3585
void RNA_def_enum_funcs(PropertyRNA *prop, EnumPropertyItemFunc itemfunc)
Definition: rna_define.c:3819
PropertyRNA * RNA_def_enum(StructOrFunctionRNA *cont_, const char *identifier, const EnumPropertyItem *items, int default_value, const char *ui_name, const char *ui_description)
Definition: rna_define.c:3771
const EnumPropertyItem DummyRNA_NULL_items[]
Definition: rna_rna.c:40
const EnumPropertyItem rna_enum_fileselect_params_sort_items[]
Definition: rna_space.c:327
int ymin
Definition: DNA_vec_types.h:80
int ymax
Definition: DNA_vec_types.h:80
int xmin
Definition: DNA_vec_types.h:79
int xmax
Definition: DNA_vec_types.h:79
struct StructRNA * srna
Definition: WM_types.h:802
struct PointerRNA * ptr
PointerRNA * ptr
Definition: wm_files.c:3157
wmOperatorType * ot
Definition: wm_files.c:3156
static void wm_operator_properties_select_action_ex(wmOperatorType *ot, int default_action, const EnumPropertyItem *select_actions, bool hide_gui)
void WM_operator_properties_border_to_rcti(struct wmOperator *op, rcti *rect)
static const EnumPropertyItem * wm_operator_properties_filesel_sort_items_itemf(struct bContext *UNUSED(C), PointerRNA *UNUSED(ptr), PropertyRNA *UNUSED(prop), bool *r_free)
int WM_operator_properties_select_random_seed_increment_get(wmOperator *op)
void WM_operator_properties_gesture_box(wmOperatorType *ot)
bool WM_operator_properties_checker_interval_test(const struct CheckerIntervalParams *op_params, int depth)
void WM_operator_properties_confirm_or_exec(wmOperatorType *ot)
void WM_operator_properties_select_operation_simple(wmOperatorType *ot)
void WM_operator_properties_select_operation(wmOperatorType *ot)
void WM_operator_properties_select_action(wmOperatorType *ot, int default_action, bool hide_gui)
void WM_operator_properties_generic_select(wmOperatorType *ot)
void WM_operator_properties_gesture_straightline(wmOperatorType *ot, int cursor)
void WM_operator_properties_border(wmOperatorType *ot)
void WM_operator_properties_gesture_lasso(wmOperatorType *ot)
void WM_operator_properties_select_walk_direction(wmOperatorType *ot)
void WM_operator_properties_select_random(wmOperatorType *ot)
void WM_operator_properties_gesture_box_select(wmOperatorType *ot)
void WM_operator_properties_gesture_circle(wmOperatorType *ot)
void WM_operator_properties_select_all(wmOperatorType *ot)
void WM_operator_properties_use_cursor_init(wmOperatorType *ot)
void WM_operator_properties_gesture_box_ex(wmOperatorType *ot, bool deselect, bool extend)
void WM_operator_properties_border_to_rctf(struct wmOperator *op, rctf *rect)
void WM_operator_properties_mouse_select(wmOperatorType *ot)
void WM_operator_properties_gesture_box_zoom(wmOperatorType *ot)
void WM_operator_properties_checker_interval_from_op(struct wmOperator *op, struct CheckerIntervalParams *op_params)
void WM_operator_properties_filesel(wmOperatorType *ot, int filter, short type, short action, short flag, short display, short sort)
void WM_operator_properties_checker_interval(wmOperatorType *ot, bool nth_can_disable)
void WM_operator_properties_select_action_simple(wmOperatorType *ot, int default_action, bool hide_gui)