[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