[Bf-blender-cvs] [5049594a0a6] new-object-types: Merge branch 'master' into new-object-types
Brecht Van Lommel
noreply at git.blender.org
Tue Mar 3 18:48:38 CET 2020
Commit: 5049594a0a6236109be433f960eec3719b466ddc
Author: Brecht Van Lommel
Date: Tue Mar 3 18:09:01 2020 +0100
Branches: new-object-types
https://developer.blender.org/rB5049594a0a6236109be433f960eec3719b466ddc
Merge branch 'master' into new-object-types
===================================================================
===================================================================
diff --cc source/blender/blenkernel/intern/idcode.c
index 2f4a84b623d,b9ca77ceb67..a6930a521af
--- a/source/blender/blenkernel/intern/idcode.c
+++ b/source/blender/blenkernel/intern/idcode.c
@@@ -247,8 -242,8 +247,10 @@@ short BKE_idcode_from_idfilter(const ui
CASE_IDFILTER(CU);
CASE_IDFILTER(GD);
CASE_IDFILTER(GR);
++ CASE_IDFILTER(HA);
CASE_IDFILTER(IM);
CASE_IDFILTER(LA);
++ CASE_IDFILTER(LP);
CASE_IDFILTER(LS);
CASE_IDFILTER(LT);
CASE_IDFILTER(MA);
@@@ -261,16 -256,13 +263,14 @@@
CASE_IDFILTER(PA);
CASE_IDFILTER(PAL);
CASE_IDFILTER(PC);
-- CASE_IDFILTER(LP);
++ CASE_IDFILTER(PT);
CASE_IDFILTER(SCE);
CASE_IDFILTER(SPK);
CASE_IDFILTER(SO);
CASE_IDFILTER(TE);
CASE_IDFILTER(TXT);
CASE_IDFILTER(VF);
- /* CASE_IDFILTER(HA); TODO overflow */
- /* CASE_IDFILTER(PT); TODO overflow */
- /* CASE_IDFILTER(VO); TODO overflow */
++ CASE_IDFILTER(VO);
CASE_IDFILTER(WO);
default:
return 0;
@@@ -297,11 -289,11 +297,13 @@@ int BKE_idcode_to_index(const short idc
CASE_IDINDEX(CU);
CASE_IDINDEX(GD);
CASE_IDINDEX(GR);
++ CASE_IDINDEX(HA);
CASE_IDINDEX(IM);
CASE_IDINDEX(KE);
CASE_IDINDEX(IP);
CASE_IDINDEX(LA);
CASE_IDINDEX(LI);
++ CASE_IDINDEX(LP);
CASE_IDINDEX(LS);
CASE_IDINDEX(LT);
CASE_IDINDEX(MA);
@@@ -314,7 -306,7 +316,7 @@@
CASE_IDINDEX(PA);
CASE_IDINDEX(PAL);
CASE_IDINDEX(PC);
-- CASE_IDINDEX(LP);
++ CASE_IDINDEX(PT);
CASE_IDINDEX(SCE);
CASE_IDINDEX(SCR);
CASE_IDINDEX(SPK);
@@@ -322,9 -314,6 +324,7 @@@
CASE_IDINDEX(TE);
CASE_IDINDEX(TXT);
CASE_IDINDEX(VF);
- CASE_IDINDEX(HA);
- CASE_IDINDEX(PT);
+ CASE_IDINDEX(VO);
CASE_IDINDEX(WM);
CASE_IDINDEX(WO);
CASE_IDINDEX(WS);
@@@ -354,11 -343,11 +354,13 @@@ short BKE_idcode_from_index(const int i
CASE_IDCODE(CU);
CASE_IDCODE(GD);
CASE_IDCODE(GR);
++ CASE_IDCODE(HA);
CASE_IDCODE(IM);
CASE_IDCODE(KE);
CASE_IDCODE(IP);
CASE_IDCODE(LA);
CASE_IDCODE(LI);
++ CASE_IDCODE(LP);
CASE_IDCODE(LS);
CASE_IDCODE(LT);
CASE_IDCODE(MA);
@@@ -371,7 -360,7 +373,7 @@@
CASE_IDCODE(PA);
CASE_IDCODE(PAL);
CASE_IDCODE(PC);
-- CASE_IDCODE(LP);
++ CASE_IDCODE(PT);
CASE_IDCODE(SCE);
CASE_IDCODE(SCR);
CASE_IDCODE(SPK);
@@@ -379,9 -368,6 +381,7 @@@
CASE_IDCODE(TE);
CASE_IDCODE(TXT);
CASE_IDCODE(VF);
- CASE_IDCODE(HA);
- CASE_IDCODE(PT);
+ CASE_IDCODE(VO);
CASE_IDCODE(WM);
CASE_IDCODE(WO);
CASE_IDCODE(WS);
diff --cc source/blender/makesdna/DNA_ID.h
index c30042de641,89af705d5ed..7357ac834c8
--- a/source/blender/makesdna/DNA_ID.h
+++ b/source/blender/makesdna/DNA_ID.h
@@@ -648,46 -645,39 +648,42 @@@ typedef enum IDRecalcFlag
} IDRecalcFlag;
- /* To filter ID types (filter_id) */
- /* XXX We cannot put all needed IDs inside an enum...
- * We'll have to see whether we can fit all needed ones inside 32 values,
- * or if we need to fallback to longlong defines :/
- */
+ /* To filter ID types (filter_id). 64 bit to fit all types. */
enum {
- FILTER_ID_AC = (1 << 0),
- FILTER_ID_AR = (1 << 1),
- FILTER_ID_BR = (1 << 2),
- FILTER_ID_CA = (1 << 3),
- FILTER_ID_CU = (1 << 4),
- FILTER_ID_GD = (1 << 5),
- FILTER_ID_GR = (1 << 6),
- FILTER_ID_IM = (1 << 7),
- FILTER_ID_LA = (1 << 8),
- FILTER_ID_LS = (1 << 9),
- FILTER_ID_LT = (1 << 10),
- FILTER_ID_MA = (1 << 11),
- FILTER_ID_MB = (1 << 12),
- FILTER_ID_MC = (1 << 13),
- FILTER_ID_ME = (1 << 14),
- FILTER_ID_MSK = (1 << 15),
- FILTER_ID_NT = (1 << 16),
- FILTER_ID_OB = (1 << 17),
- FILTER_ID_PAL = (1 << 18),
- FILTER_ID_PC = (1 << 19),
- FILTER_ID_SCE = (1 << 20),
- FILTER_ID_SPK = (1 << 21),
- FILTER_ID_SO = (1 << 22),
- FILTER_ID_TE = (1 << 23),
- FILTER_ID_TXT = (1 << 24),
- FILTER_ID_VF = (1 << 25),
- FILTER_ID_WO = (1 << 26),
- FILTER_ID_PA = (1 << 27),
- FILTER_ID_CF = (1 << 28),
- FILTER_ID_WS = (1 << 29),
- FILTER_ID_LP = (1u << 31),
- FILTER_ID_HA = (1u << 31), /* TODO: solve overflow */
- FILTER_ID_PT = (1u << 31), /* TODO: solve overflow */
- FILTER_ID_VO = (1u << 31), /* TODO: solve overflow */
+ FILTER_ID_AC = (1ULL << 0),
+ FILTER_ID_AR = (1ULL << 1),
+ FILTER_ID_BR = (1ULL << 2),
+ FILTER_ID_CA = (1ULL << 3),
+ FILTER_ID_CU = (1ULL << 4),
+ FILTER_ID_GD = (1ULL << 5),
+ FILTER_ID_GR = (1ULL << 6),
+ FILTER_ID_IM = (1ULL << 7),
+ FILTER_ID_LA = (1ULL << 8),
+ FILTER_ID_LS = (1ULL << 9),
+ FILTER_ID_LT = (1ULL << 10),
+ FILTER_ID_MA = (1ULL << 11),
+ FILTER_ID_MB = (1ULL << 12),
+ FILTER_ID_MC = (1ULL << 13),
+ FILTER_ID_ME = (1ULL << 14),
+ FILTER_ID_MSK = (1ULL << 15),
+ FILTER_ID_NT = (1ULL << 16),
+ FILTER_ID_OB = (1ULL << 17),
+ FILTER_ID_PAL = (1ULL << 18),
+ FILTER_ID_PC = (1ULL << 19),
+ FILTER_ID_SCE = (1ULL << 20),
+ FILTER_ID_SPK = (1ULL << 21),
+ FILTER_ID_SO = (1ULL << 22),
+ FILTER_ID_TE = (1ULL << 23),
+ FILTER_ID_TXT = (1ULL << 24),
+ FILTER_ID_VF = (1ULL << 25),
+ FILTER_ID_WO = (1ULL << 26),
+ FILTER_ID_PA = (1ULL << 27),
+ FILTER_ID_CF = (1ULL << 28),
+ FILTER_ID_WS = (1ULL << 29),
+ FILTER_ID_LP = (1ULL << 31),
++ FILTER_ID_HA = (1ULL << 32),
++ FILTER_ID_PT = (1ULL << 33),
++ FILTER_ID_VO = (1ULL << 34),
};
#define FILTER_ID_ALL \
diff --cc source/blender/makesrna/intern/rna_space.c
index 1bc5fad187b,63817137a02..43e9e43c5b9
--- a/source/blender/makesrna/intern/rna_space.c
+++ b/source/blender/makesrna/intern/rna_space.c
@@@ -5335,150 -5333,169 +5340,181 @@@ static void rna_def_space_console(Blend
RNA_def_property_ui_text(prop, "Output", "Command output");
}
- static void rna_def_fileselect_params(BlenderRNA *brna)
+ /* Filter for datablock types in link/append. */
+ static void rna_def_fileselect_idfilter(BlenderRNA *brna)
{
- StructRNA *srna;
- PropertyRNA *prop;
-
- static const EnumPropertyItem file_display_items[] = {
- {FILE_VERTICALDISPLAY,
- "LIST_VERTICAL",
- ICON_LONGDISPLAY,
- "Vertical List",
- "Display files as a vertical list"},
- {FILE_HORIZONTALDISPLAY,
- "LIST_HORIZONTAL",
- ICON_SHORTDISPLAY,
- "Horizontal List",
- "Display files as a horizontal list"},
- {FILE_IMGDISPLAY, "THUMBNAIL", ICON_IMGDISPLAY, "Thumbnails", "Display files as thumbnails"},
- {0, NULL, 0, NULL, NULL},
- };
-
- static const EnumPropertyItem display_size_items[] = {
- {64, "TINY", 0, "Tiny", ""},
- {96, "SMALL", 0, "Small", ""},
- {128, "NORMAL", 0, "Regular", ""},
- {192, "LARGE", 0, "Large", ""},
- {0, NULL, 0, NULL, NULL},
+ struct IDFilterBoolean {
+ /* 64 bit, so we can't use bitflag enum. */
+ const uint64_t flag;
+ const char *identifier;
+ const int icon;
+ const char *name;
+ const char *description;
};
- static const EnumPropertyItem file_filter_idtypes_items[] = {
- {FILTER_ID_AC, "ACTION", ICON_ANIM_DATA, "Actions", "Show/hide Action data-blocks"},
+ static const struct IDFilterBoolean booleans[] = {
+ /* Datablocks */
+ {FILTER_ID_AC, "filter_action", ICON_ANIM_DATA, "Actions", "Show Action data-blocks"},
{FILTER_ID_AR,
- "ARMATURE",
+ "filter_armature",
ICON_ARMATURE_DATA,
"Armatures",
- "Show/hide Armature data-blocks"},
- {FILTER_ID_BR, "BRUSH", ICON_BRUSH_DATA, "Brushes", "Show/hide Brushes data-blocks"},
- {FILTER_ID_CA, "CAMERA", ICON_CAMERA_DATA, "Cameras", "Show/hide Camera data-blocks"},
- {FILTER_ID_CF, "CACHEFILE", ICON_FILE, "Cache Files", "Show/hide Cache File data-blocks"},
- {FILTER_ID_CU, "CURVE", ICON_CURVE_DATA, "Curves", "Show/hide Curve data-blocks"},
+ "Show Armature data-blocks"},
+ {FILTER_ID_BR, "filter_brush", ICON_BRUSH_DATA, "Brushes", "Show Brushes data-blocks"},
+ {FILTER_ID_CA, "filter_camera", ICON_CAMERA_DATA, "Cameras", "Show Camera data-blocks"},
+ {FILTER_ID_CF, "filter_cachefile", ICON_FILE, "Cache Files", "Show Cache File data-blocks"},
+ {FILTER_ID_CU, "filter_curve", ICON_CURVE_DATA, "Curves", "Show Curve data-blocks"},
{FILTER_ID_GD,
- "GREASE_PENCIL",
+ "filter_grease_pencil",
ICON_GREASEPENCIL,
"Grease Pencil",
- "Show/hide Grease pencil data-blocks"},
- {FILTER_ID_GR, "GROUP", ICON_GROUP, "Collections", "Show/hide Collection data-blocks"},
- {FILTER_ID_IM, "IMAGE", ICON_IMAGE_DATA, "Images", "Show/hide Image data-blocks"},
- {FILTER_ID_LA, "LIGHT", ICON_LIGHT_DATA, "Lights", "Show/hide Light data-blocks"},
+ "Show Grease pencil data-blocks"},
+ {FILTER_ID_GR, "filter_group", ICON_GROUP, "Collections", "Show Collection data-blocks"},
++# ifdef WITH_NEW_OBJECT_TYPES
++ {FILTER_ID_HA, "filter_hair", ICON_HAIR_DATA, "Hairs", "Show/hide Hair data-blocks"},
++# endif
+ {FILTER_ID_IM, "filter_image", ICON_IMAGE_DATA, "Images", "Show Image data-blocks"},
+ {FILTER_ID_LA, "filter_light", ICON_LIGHT_DATA, "Lights", "Show Light data-blocks"},
++ {FILTER_ID_LP,
++ "filter_light_probe",
++ ICON_OUTLINER_DATA_LIGHTPROBE,
++ "Light Probes",
++ "Show Light Probe data-blocks"},
{FILTER_ID_LS,
- "LINESTYLE",
+ "filter_linestyle",
ICON_LINE_DATA,
"Freestyle Linestyles",
- "Show/hide Freestyle's Line Style data-blocks"},
- {FILTER_ID_LT, "LATTICE", ICON_LATTICE_DATA, "Lattices", "Show/hide Lattice data-blocks"},
+ "Show Freestyle's Line Style data-blocks"},
+ {FILTER_ID_LT, "filter_lattice", ICON_LATTICE_DATA, "Lattices", "Show Lattice data-blocks"},
{FILTER_ID_MA,
- "MATERIAL",
+ "filter_material",
ICON_MATERIAL_DATA,
"Materials",
- "Show/hide Material data-blocks"},
- {FILTER_ID_MB, "METABALL", ICON_META_DATA, "Metaballs", "Show/hide Metaball data-blocks"},
+ "Show Material data-blocks"},
+
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list