Commit: 53c5310c30128c261e54fefb8b7ada5437478a7b
Author: Julian Eisel
Date: Fri Sep 2 02:21:05 2016 +0200
Branches: wiggly-widgets
https://developer.blender.org/rB53c5310c30128c261e54fefb8b7ada5437478a7b
Merge branch 'master' into wiggly-widgets
Conflicts:
release/scripts/modules/bpy_extras/keyconfig_utils.py
release/scripts/startup/bl_ui/properties_data_bone.py
source/blender/editors/transform/transform_manipulator.c
source/blender/windowmanager/WM_api.h
source/blender/windowmanager/intern/wm_event_system.c
source/blender/windowmanager/intern/wm_operators.c
source/blenderplayer/bad_level_call_stubs/stubs.c
===================================================================
===================================================================
diff --cc release/scripts/modules/bpy_extras/keyconfig_utils.py
index 90b7602,ee0638e..b7e62fa
--- a/release/scripts/modules/bpy_extras/keyconfig_utils.py
+++ b/release/scripts/modules/bpy_extras/keyconfig_utils.py
@@@ -24,35 -23,6 +24,35 @@@
# ('Script', 'EMPTY', 'WINDOW', []),
+# would be good to have a more generic way of doing this...
+KM_WIDGETS_HIERARCHY = [
+ # VIEW_3D
+ ('Widgets', 'EMPTY', 'WINDOW', [
+ (0, 0, 0, 0), # avoid adding 'Widgets (Global)" entry
+ ('Face Map Widgets', 'VIEW_3D', 'WINDOW', []),
+ ('Lamp Widgets', 'VIEW_3D', 'WINDOW', []),
+ ('Force Field Widgets', 'VIEW_3D', 'WINDOW', []),
+ ('Camera Widgets', 'VIEW_3D', 'WINDOW', []),
+ ('Manipulator Widgets', 'VIEW_3D', 'WINDOW', []),
- ]),
++ ]),
+ # GRAPH_EDITOR
+ ('Widgets', 'EMPTY', 'WINDOW', [
+ (0, 0, 0, 0),
+ ('Backdrop Transform Widgets', 'GRAPH_EDITOR', 'WINDOW', []),
- ]),
++ ]),
+ # NODE_EDITOR
+ ('Widgets', 'EMPTY', 'WINDOW', [
+ (0, 0, 0, 0),
+ ('Backdrop Transform Widgets', 'NODE_EDITOR', 'WINDOW', []),
- ]),
++ ]),
+ # SEQUENCE_EDITOR
+ ('Widgets', 'EMPTY', 'WINDOW', [
+ (0, 0, 0, 0),
+ ('Backdrop Transform Widgets', 'SEQUENCE_EDITOR', 'WINDOW', []),
+ # ('Image Transform Widgets', 'SEQUENCE_EDITOR', 'WINDOW', []),
- ]),
- ]
++ ]),
++]
+
KM_HIERARCHY = [
('Window', 'EMPTY', 'WINDOW', []), # file save, window change, exit
('Screen', 'EMPTY', 'WINDOW', [ # full screen, undo, screenshot
@@@ -107,11 -75,10 +107,11 @@@
('Graph Editor', 'GRAPH_EDITOR', 'WINDOW', [
('Graph Editor Generic', 'GRAPH_EDITOR', 'WINDOW', []),
+ KM_WIDGETS_HIERARCHY[1]
- ]),
+ ]),
('Dopesheet', 'DOPESHEET_EDITOR', 'WINDOW', [
('Dopesheet Generic', 'DOPESHEET_EDITOR', 'WINDOW', []),
- ]),
+ ]),
('NLA Editor', 'NLA_EDITOR', 'WINDOW', [
('NLA Channels', 'NLA_EDITOR', 'WINDOW', []),
('NLA Generic', 'NLA_EDITOR', 'WINDOW', []),
@@@ -129,13 -96,11 +129,13 @@@
('Node Editor', 'NODE_EDITOR', 'WINDOW', [
('Node Generic', 'NODE_EDITOR', 'WINDOW', []),
+ KM_WIDGETS_HIERARCHY[2],
- ]),
+ ]),
('Sequencer', 'SEQUENCE_EDITOR', 'WINDOW', [
('SequencerCommon', 'SEQUENCE_EDITOR', 'WINDOW', []),
('SequencerPreview', 'SEQUENCE_EDITOR', 'WINDOW', []),
+ KM_WIDGETS_HIERARCHY[3],
- ]),
+ ]),
('Logic Editor', 'LOGIC_EDITOR', 'WINDOW', []),
('File Browser', 'FILE_BROWSER', 'WINDOW', [
diff --cc source/blender/blenkernel/BKE_blender_version.h
index 618b36c,483fefb..2247d32
--- a/source/blender/blenkernel/BKE_blender_version.h
+++ b/source/blender/blenkernel/BKE_blender_version.h
@@@ -28,7 -28,7 +28,7 @@@
* and keep comment above the defines.
* Use STRINGIFY() rather than defining with quotes */
#define BLENDER_VERSION 277
- #define BLENDER_SUBVERSION 1
-#define BLENDER_SUBVERSION 3
++#define BLENDER_SUBVERSION 4
/* Several breakages with 270, e.g. constraint deg vs rad */
#define BLENDER_MINVERSION 270
#define BLENDER_MINSUBVERSION 6
diff --cc source/blender/blenloader/intern/versioning_270.c
index 01fa1be,0a36e78..e61bcd8
--- a/source/blender/blenloader/intern/versioning_270.c
+++ b/source/blender/blenloader/intern/versioning_270.c
@@@ -1225,44 -1235,161 +1235,200 @@@ void blo_do_versions_270(FileData *fd,
}
}
}
+
+ for (Brush *br = main->brush.first; br; br = br->id.next) {
+ if (br->sculpt_tool == SCULPT_TOOL_FLATTEN) {
+ br->flag |= BRUSH_ACCUMULATE;
+ }
+ }
+
+ if (!DNA_struct_elem_find(fd->filesdna, "ClothSimSettings",
"float", "time_scale")) {
+ Object *ob;
+ ModifierData *md;
+ for (ob = main->object.first; ob; ob = ob->id.next) {
+ for (md = ob->modifiers.first; md; md =
md->next) {
+ if (md->type == eModifierType_Cloth) {
+ ClothModifierData *clmd =
(ClothModifierData *)md;
+ clmd->sim_parms->time_scale =
1.0f;
+ }
+ else if (md->type ==
eModifierType_ParticleSystem) {
+ ParticleSystemModifierData *pmd
= (ParticleSystemModifierData *)md;
+ if (pmd->psys->clmd) {
+
pmd->psys->clmd->sim_parms->time_scale = 1.0f;
+ }
+ }
+ }
+ }
+ }
+ }
+
+ if (!MAIN_VERSION_ATLEAST(main, 277, 3)) {
+ /* ------- init of grease pencil initialization ---------------
*/
+ if (!DNA_struct_elem_find(fd->filesdna, "bGPDstroke",
"bGPDpalettecolor", "*palcolor")) {
+ for (Scene *scene = main->scene.first; scene; scene =
scene->id.next) {
+ ToolSettings *ts = scene->toolsettings;
+ /* initialize use position for sculpt brushes */
+ ts->gp_sculpt.flag |=
GP_BRUSHEDIT_FLAG_APPLY_POSITION;
+ /* initialize selected vertices alpha factor */
+ ts->gp_sculpt.alpha = 1.0f;
+
+ /* new strength sculpt brush */
+ if (ts->gp_sculpt.brush[0].size >= 11) {
+ GP_BrushEdit_Settings *gset =
&ts->gp_sculpt;
+ GP_EditBrush_Data *brush;
+
+ brush =
&gset->brush[GP_EDITBRUSH_TYPE_STRENGTH];
+ brush->size = 25;
+ brush->strength = 0.5f;
+ brush->flag =
GP_EDITBRUSH_FLAG_USE_FALLOFF;
+ }
+ }
+ /* create a default grease pencil drawing brushes set */
+ if (!BLI_listbase_is_empty(&main->gpencil)) {
+ for (Scene *scene = main->scene.first; scene;
scene = scene->id.next) {
+ ToolSettings *ts = scene->toolsettings;
+ if
(BLI_listbase_is_empty(&ts->gp_brushes)) {
+
BKE_gpencil_brush_init_presets(ts);
+ }
+ }
+ }
+ /* Convert Grease Pencil to new palettes/brushes
+ * Loop all strokes and create the palette and all
colors
+ */
+ for (bGPdata *gpd = main->gpencil.first; gpd; gpd =
gpd->id.next) {
+ if (BLI_listbase_is_empty(&gpd->palettes)) {
+ /* create palette */
+ bGPDpalette *palette =
BKE_gpencil_palette_addnew(gpd, "GP_Palette", true);
+ for (bGPDlayer *gpl =
gpd->layers.first; gpl; gpl = gpl->next) {
+ /* create color using layer
name */
+ bGPDpalettecolor *palcolor =
BKE_gpencil_palettecolor_addnew(palette, gpl->info, true);
+ if (palcolor != NULL) {
+ /* set color attributes
*/
+
copy_v4_v4(palcolor->color, gpl->color);
+
copy_v4_v4(palcolor->fill, gpl->fill);
+
+ if (gpl->flag &
GP_LAYER_HIDE) palcolor->flag |= PC_COLOR_HIDE;
+ if (gpl->flag &
GP_LAYER_LOCKED) palcolor->flag |= PC_COLOR_LOCKED;
+ if (gpl->flag &
GP_LAYER_ONIONSKIN) palcolor->flag |= PC_COLOR_ONIONSKIN;
+ if (gpl->flag &
GP_LAYER_VOLUMETRIC) palcolor->flag |= PC_COLOR_VOLUMETRIC;
+ if (gpl->flag &
GP_LAYER_HQ_FILL) palcolor->flag |= PC_COLOR_HQ_FILL;
+
+ /* set layer opacity to
1 */
+ gpl->opacity = 1.0f;
+
+ /* set tint color */
+
ARRAY_SET_ITEMS(gpl->tintcolor, 0.0f, 0.0f, 0.0f, 0.0f);
+
+ /* flush relevant
layer-settings to strokes */
+ for (bGPDframe *gpf =
gpl->frames.first; gpf; gpf = gpf->next) {
+ for (bGPDstroke
*gps = gpf->strokes.first; gps; gps = gps->next) {
+ /* set
stroke to palette and force recalculation */
+
BLI_strncpy(gps->colorname, gpl->info, sizeof(gps->colorname));
+
gps->palcolor = NULL;
+
gps->flag |= GP_STROKE_RECALC_COLOR;
+
gps->thickness = gpl->thickness;
+
+ /* set
alpha strength to 1 */
+ for
(int i = 0; i < gps->totpoints; i++) {
+
gps->points[i].strength = 1.0f;
+ }
+ }
+ }
+ }
+
+ /* set thickness to 0 (now it
is a factor to override stroke thickness) */
+ gpl->thickness = 0.0f;
+ }
+ /* set first color as active */
+ if (palette->colors.first)
+
BKE_gpencil_palettecolor_setactive(palette, palette->colors.first);
+ }
+ }
+ }
+ /* ------- end of grease pencil initialization ---------------
*/
+ }
+
+ {
+ if (!DNA_struct_elem_find(fd->filesdna, "MovieTrackingTrack",
"float", "weight_stab")) {
+ MovieClip *clip;
+ for (clip = main->movieclip.first; clip; clip =
clip->id.next) {
+ MovieTracking *tracking = &clip->tracking;
+ MovieTrackingObject *tracking_object;
+ for (tracking_object = tracking->objects.first;
+ tracking_object != NULL;
+ tracking_object = tracking_object->next)
+ {
+ ListBase *tracksbase =
BKE_tracking_object_get_tracks(tracking, tracking_object);
+ MovieTrackingTrack *track;
+ for (track = tracksbase->first;
+ track != NULL;
+ track = track->next)
+ {
+ track->weight_stab =
track->weight;
+ }
+ }
+ }
+ }
+
+ if (!DNA_struct_elem_find(fd->filesdna,
"MovieTrackingStabilization", "int", "tot_rot_track")) {
+ MovieClip *clip;
+ for (clip = main->movieclip.first; clip != NULL; clip =
clip->id.next) {
+ if (clip->tracking.stabilization.rot_track) {
+
migrate_single_rot_stabilization_track_settings(&clip->tracking.stabilization);
+ }
+ if (clip->tracking.stabilization.scale == 0.0f)
{
+ /* ensure init.
+ * Was previously used for autoscale
only,
+ * now used always (as "target scale")
*/
+ clip->tracking.stabilization.scale =
1.0f;
+ }
+ /* blender prefers 1-based frame counting;
+ * thus using frame 1 as reference typically
works best */
+ clip->tracking.stabilization.anchor_frame = 1;
+ /* by default show the track lists expanded, to
improve "discoverability" */
+ clip->tracking.stabilization.flag |=
TRACKING_SHOW_STAB_TRACKS;
+ /* deprecated, not used anymore */
+ clip->tracking.stabilization.ok = false;
+ }
+ }
}
+
+ {
+ if (!DNA_struct_elem_find(fd->filesdna, "SpaceNode", "float",
"backdrop_zoom")) {
+ bScreen *sc;
+ for (sc = main->screen.first; sc; sc = sc->id.next) {
+ ScrArea *sa;
+ for (sa = sc->areabase.first; sa; sa =
sa->next) {
+ SpaceLink *sl;
+ for (sl = sa->spacedata.first; sl; sl =
sl->next) {
+ if (sl->spacetype ==
SPACE_NODE) {
+ SpaceNode *snode =
(SpaceNode *)sl;
@@ Diff output truncated at 10240 characters. @@
_______________________________________________
Bf-blender-cvs mailing list
[email protected]
https://lists.blender.org/mailman/listinfo/bf-blender-cvs