Revision: 23349 http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=23349 Author: billrey Date: 2009-09-19 15:50:24 +0200 (Sat, 19 Sep 2009)
Log Message: ----------- Armature UI Added the new pose tools in the toolbar. Changed a few armature values to enums. Brecht: The Heads/Tails enum seems to also enable armature.draw_axis, and the paths_type enum affects armature.draw_names Modified Paths: -------------- trunk/blender/release/ui/buttons_data_armature.py trunk/blender/release/ui/space_view3d_toolbar.py trunk/blender/source/blender/makesrna/intern/rna_armature.c Modified: trunk/blender/release/ui/buttons_data_armature.py =================================================================== --- trunk/blender/release/ui/buttons_data_armature.py 2009-09-19 12:38:49 UTC (rev 23348) +++ trunk/blender/release/ui/buttons_data_armature.py 2009-09-19 13:50:24 UTC (rev 23349) @@ -121,28 +121,31 @@ layout = self.layout arm = context.armature - + + layout.itemR(arm, "paths_type", expand=True) + split = layout.split() col = split.column() - col.itemR(arm, "paths_show_around_current_frame", text="Around Frame") sub = col.column(align=True) - if (arm.paths_show_around_current_frame): + if (arm.paths_type == 'CURRENT_FRAME'): sub.itemR(arm, "path_before_current", text="Before") sub.itemR(arm, "path_after_current", text="After") - else: + elif (arm.paths_type == 'RANGE'): sub.itemR(arm, "path_start_frame", text="Start") sub.itemR(arm, "path_end_frame", text="End") - sub.itemR(arm, "path_size", text="Step") - col.itemR(arm, "paths_calculate_head_positions", text="Head") + sub.itemR(arm, "path_size", text="Step") + col.row().itemR(arm, "paths_location", expand=True) col = split.column() col.itemL(text="Show:") col.itemR(arm, "paths_show_frame_numbers", text="Frame Numbers") col.itemR(arm, "paths_highlight_keyframes", text="Keyframes") col.itemR(arm, "paths_show_keyframe_numbers", text="Keyframe Numbers") + + layout.itemO("pose.paths_calculate") class DATA_PT_ghost(DataButtonsPanel): __label__ = "Ghost" @@ -151,11 +154,12 @@ layout = self.layout arm = context.armature - + + layout.itemR(arm, "ghost_type", expand=True) + split = layout.split() col = split.column() - col.itemR(arm, "ghost_type", text="") sub = col.column(align=True) if arm.ghost_type == 'RANGE': Modified: trunk/blender/release/ui/space_view3d_toolbar.py =================================================================== --- trunk/blender/release/ui/space_view3d_toolbar.py 2009-09-19 12:38:49 UTC (rev 23348) +++ trunk/blender/release/ui/space_view3d_toolbar.py 2009-09-19 13:50:24 UTC (rev 23349) @@ -299,11 +299,13 @@ col.itemL(text="Pose:") col.itemO("pose.copy", text="Copy") col.itemO("pose.paste", text="Paste") + col.itemO("poselib.pose_add", text="Add To library") col = layout.column(align=True) - col.itemL(text="Library:") - col.itemO("poselib.pose_add", text="Add") - col.itemO("poselib.pose_remove", text="Remove") + col.itemL(text="In-Between:") + col.itemO("pose.relax", text="Relax") + col.itemO("pose.push", text="Push") + col.itemO("pose.breakdown", text="Breakdowner") col = layout.column(align=True) col.itemL(text="Repeat:") Modified: trunk/blender/source/blender/makesrna/intern/rna_armature.c =================================================================== --- trunk/blender/source/blender/makesrna/intern/rna_armature.c 2009-09-19 12:38:49 UTC (rev 23348) +++ trunk/blender/source/blender/makesrna/intern/rna_armature.c 2009-09-19 13:50:24 UTC (rev 23349) @@ -526,16 +526,25 @@ PropertyRNA *prop; static EnumPropertyItem prop_drawtype_items[] = { - {ARM_OCTA, "OCTAHEDRAL", 0, "Octahedral", "Draw bones as octahedral shape (default)."}, - {ARM_LINE, "STICK", 0, "Stick", "Draw bones as simple 2D lines with dots."}, - {ARM_B_BONE, "BBONE", 0, "B-Bone", "Draw bones as boxes, showing subdivision and B-Splines"}, - {ARM_ENVELOPE, "ENVELOPE", 0, "Envelope", "Draw bones as extruded spheres, showing defomation influence volume."}, + {ARM_OCTA, "OCTAHEDRAL", 0, "Octahedral", "Display bones as octahedral shape (default)."}, + {ARM_LINE, "STICK", 0, "Stick", "Display bones as simple 2D lines with dots."}, + {ARM_B_BONE, "BBONE", 0, "B-Bone", "Display bones as boxes, showing subdivision and B-Splines"}, + {ARM_ENVELOPE, "ENVELOPE", 0, "Envelope", "Display bones as extruded spheres, showing defomation influence volume."}, {0, NULL, 0, NULL, NULL}}; static EnumPropertyItem prop_ghost_type_items[] = { - {ARM_GHOST_CUR, "CURRENT_FRAME", 0, "Around Current Frame", "Draw Ghosts of poses within a fixed number of frames around the current frame."}, - {ARM_GHOST_RANGE, "RANGE", 0, "In Range", "Draw Ghosts of poses within specified range."}, - {ARM_GHOST_KEYS, "KEYS", 0, "On Keyframes", "Draw Ghosts of poses on Keyframes."}, + {ARM_GHOST_CUR, "CURRENT_FRAME", 0, "Around Frame", "Display Ghosts of poses within a fixed number of frames around the current frame."}, + {ARM_GHOST_RANGE, "RANGE", 0, "In Range", "Display Ghosts of poses within specified range."}, + {ARM_GHOST_KEYS, "KEYS", 0, "On Keyframes", "Display Ghosts of poses on Keyframes."}, {0, NULL, 0, NULL, NULL}}; + static const EnumPropertyItem prop_paths_type_items[]= { + {ARM_PATH_ACFRA, "CURRENT_FRAME", 0, "Around Frame", "Display Paths of poses within a fixed number of frames around the current frame."}, + {0, "RANGE", 0, "In Range", "Display Paths of poses within specified range."}, + {0, NULL, 0, NULL, NULL}}; + + static const EnumPropertyItem prop_paths_location_items[]= { + {ARM_PATH_HEADS, "HEADS", 0, "Heads", "Calculate bone paths from heads"}, + {0, "TIPS", 0, "Tips", "Calculate bone paths from tips"}, + {0, NULL, 0, NULL, NULL}}; srna= RNA_def_struct(brna, "Armature", "ID"); RNA_def_struct_ui_text(srna, "Armature", "Armature datablock containing a hierarchy of bones, usually used for rigging characters."); @@ -564,9 +573,21 @@ prop= RNA_def_property(srna, "ghost_type", PROP_ENUM, PROP_NONE); RNA_def_property_enum_sdna(prop, NULL, "ghosttype"); RNA_def_property_enum_items(prop, prop_ghost_type_items); - RNA_def_property_ui_text(prop, "Ghost Drawing", "Method of Onion-skinning for active Action"); + RNA_def_property_ui_text(prop, "Ghost Type", "Method of Onion-skinning for active Action"); RNA_def_property_update(prop, 0, "rna_Armature_redraw_data"); + prop= RNA_def_property(srna, "paths_type", PROP_ENUM, PROP_NONE); + RNA_def_property_enum_bitflag_sdna(prop, NULL, "flag"); + RNA_def_property_enum_items(prop, prop_paths_type_items); + RNA_def_property_ui_text(prop, "Paths Type", "Mapping type to use for this image in the game engine."); + RNA_def_property_update(prop, 0, "rna_Armature_redraw_data"); + + prop= RNA_def_property(srna, "paths_location", PROP_ENUM, PROP_NONE); + RNA_def_property_enum_bitflag_sdna(prop, NULL, "flag"); + RNA_def_property_enum_items(prop, prop_paths_location_items); + RNA_def_property_ui_text(prop, "Paths Location", "When calculating Bone Paths, use Head or Tips"); + RNA_def_property_update(prop, 0, "rna_Armature_redraw_data"); + /* Boolean values */ /* layer */ prop= RNA_def_property(srna, "layer", PROP_BOOLEAN, PROP_LAYER_MEMBER); @@ -672,15 +693,7 @@ RNA_def_property_ui_text(prop, "Paths Show Keyframe Numbers", "When drawing Armature in Pose Mode, show frame numbers of Keyframes on Bone Paths"); RNA_def_property_update(prop, 0, "rna_Armature_redraw_data"); - prop= RNA_def_property(srna, "paths_show_around_current_frame", PROP_BOOLEAN, PROP_NONE); - RNA_def_property_boolean_sdna(prop, NULL, "pathflag", ARM_PATH_ACFRA); - RNA_def_property_ui_text(prop, "Paths Around Current Frame", "When drawing Armature in Pose Mode, only show section of Bone Paths that falls around current frame"); - RNA_def_property_update(prop, 0, "rna_Armature_redraw_data"); - prop= RNA_def_property(srna, "paths_calculate_head_positions", PROP_BOOLEAN, PROP_NONE); - RNA_def_property_boolean_sdna(prop, NULL, "pathflag", ARM_PATH_HEADS); - RNA_def_property_ui_text(prop, "Paths Use Heads", "When calculating Bone Paths, use Head locations instead of Tips"); - RNA_def_property_update(prop, 0, "rna_Armature_redraw_data"); /* Number fields */ /* ghost/onionskining settings */ _______________________________________________ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org http://lists.blender.org/mailman/listinfo/bf-blender-cvs