Revision: 18396
          
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=18396
Author:   harkyman
Date:     2009-01-07 14:10:31 +0100 (Wed, 07 Jan 2009)

Log Message:
-----------
Conflicts resolved. Hadn't used the Resolve command last time. Brilliant.

Modified Paths:
--------------
    branches/blender2.5/blender/source/blender/makesrna/intern/rna_action.c

Modified: 
branches/blender2.5/blender/source/blender/makesrna/intern/rna_action.c
===================================================================
--- branches/blender2.5/blender/source/blender/makesrna/intern/rna_action.c     
2009-01-07 11:27:17 UTC (rev 18395)
+++ branches/blender2.5/blender/source/blender/makesrna/intern/rna_action.c     
2009-01-07 13:10:31 UTC (rev 18396)
@@ -30,20 +30,166 @@
 #include "rna_internal.h"
 
 #include "DNA_action_types.h"
+#include "DNA_constraint_types.h"
+#include "DNA_scene_types.h"
 
+
 #ifdef RNA_RUNTIME
 
-#else 
+#else
 
+void rna_def_action_channel(BlenderRNA *brna)
+{
+       StructRNA *srna;
+       PropertyRNA *prop;
+
+       srna= RNA_def_struct(brna, "ActionChannel", NULL);
+       RNA_def_struct_sdna(srna, "bActionChannel");
+       RNA_def_struct_ui_text(srna, "Action Channel", "A channel for one 
object or bone's Ipos in an Action.");
+
+       prop= RNA_def_property(srna, "name", PROP_STRING, PROP_NONE);
+       RNA_def_property_ui_text(prop, "Name", "");
+       RNA_def_struct_name_property(srna, prop);
+
+       prop= RNA_def_property(srna, "action_group", PROP_POINTER, PROP_NONE);
+       RNA_def_property_pointer_sdna(prop, NULL, "grp");
+       RNA_def_property_struct_type(prop, "ActionGroup");
+       RNA_def_property_flag(prop, PROP_NOT_EDITABLE);
+       RNA_def_property_ui_text(prop, "Action Group", "Action Group that this 
Action Channel belongs to.");
+
+       prop= RNA_def_property(srna, "ipo", PROP_POINTER, PROP_NONE);
+       RNA_def_property_struct_type(prop, "Ipo");
+       RNA_def_property_flag(prop, PROP_NOT_EDITABLE);
+       RNA_def_property_ui_text(prop, "Ipo", "Ipo block this Action Channel 
uses.");   
+
+       /* constraint channel rna not yet implemented */
+       /*prop= RNA_def_property(srna, "constraint_channels", PROP_COLLECTION, 
PROP_NONE);
+       RNA_def_property_collection_sdna(prop, NULL, "ConstraintChannel", NULL);
+       RNA_def_property_struct_type(prop, "ConstraintChannel");
+       RNA_def_property_ui_text(prop, "Constraint Channels", "Ipos of 
Constraints attached to this object or bone."); */
+
+       prop= RNA_def_property(srna, "action_channel_selected", PROP_BOOLEAN, 
PROP_NONE);
+       RNA_def_property_boolean_sdna(prop, NULL, "flag", ACHAN_SELECTED);
+       RNA_def_property_ui_text(prop, "Selected", "Action Channel is 
selected.");
+
+       prop= RNA_def_property(srna, "action_channel_highlighted", 
PROP_BOOLEAN, PROP_NONE);
+       RNA_def_property_boolean_sdna(prop, NULL, "flag", ACHAN_HILIGHTED);
+       RNA_def_property_ui_text(prop, "Highlighted", "Action Channel is 
highlighted.");
+
+       prop= RNA_def_property(srna, "action_channel_hidden", PROP_BOOLEAN, 
PROP_NONE);
+       RNA_def_property_boolean_sdna(prop, NULL, "flag", ACHAN_HIDDEN);
+       RNA_def_property_ui_text(prop, "Hidden", "Action Channel is hidden.");
+
+       prop= RNA_def_property(srna, "action_channel_protected", PROP_BOOLEAN, 
PROP_NONE);
+       RNA_def_property_boolean_sdna(prop, NULL, "flag", ACHAN_PROTECTED);
+       RNA_def_property_ui_text(prop, "Protected", "Action Channel is 
protected.");
+
+       prop= RNA_def_property(srna, "action_channel_expanded", PROP_BOOLEAN, 
PROP_NONE);
+       RNA_def_property_boolean_sdna(prop, NULL, "flag", ACHAN_EXPANDED);
+       RNA_def_property_ui_text(prop, "Expanded", "Action Channel is 
expanded.");
+
+       prop= RNA_def_property(srna, "action_channel_show_ipo", PROP_BOOLEAN, 
PROP_NONE);
+       RNA_def_property_boolean_sdna(prop, NULL, "flag", ACHAN_SHOWIPO);
+       RNA_def_property_ui_text(prop, "Show Ipo", "Action Channel's Ipos are 
visible.");
+
+       prop= RNA_def_property(srna, "action_channel_show_constraints", 
PROP_BOOLEAN, PROP_NONE);
+       RNA_def_property_boolean_sdna(prop, NULL, "flag", ACHAN_SHOWCONS);
+       RNA_def_property_ui_text(prop, "Show Constraints", "Action Channel's 
constraints are visible.");
+}
+
+void rna_def_action_group(BlenderRNA *brna)
+{
+       StructRNA *srna;
+       PropertyRNA *prop;
+
+       srna= RNA_def_struct(brna, "ActionGroup", NULL);
+       RNA_def_struct_sdna(srna, "bActionGroup");
+       RNA_def_struct_ui_text(srna, "Action Group", "Groups of Actions 
Channels.");
+
+       prop= RNA_def_property(srna, "name", PROP_STRING, PROP_NONE);
+       RNA_def_property_ui_text(prop, "Name", "");
+       RNA_def_struct_name_property(srna, prop);
+
+       /* dna warns not to treat the Action Channel listbase in the Action 
Group struct like a
+          normal listbase. I'll leave this here but comment out, for Joshua to 
review. He can 
+          probably shed some more light on why this is */
+       /*prop= RNA_def_property(srna, "action_channels", PROP_COLLECTION, 
PROP_NONE);
+       RNA_def_property_collection_sdna(prop, NULL, "channels", NULL);
+       RNA_def_property_struct_type(prop, "ActionChannel");
+       RNA_def_property_ui_text(prop, "Action Channels", "DOC_BROKEN");*/
+
+       prop= RNA_def_property(srna, "action_group_selected", PROP_BOOLEAN, 
PROP_NONE);
+       RNA_def_property_boolean_sdna(prop, NULL, "flag", AGRP_SELECTED);
+       RNA_def_property_ui_text(prop, "Selected", "Action Group is selected.");
+
+       prop= RNA_def_property(srna, "action_group_protected", PROP_BOOLEAN, 
PROP_NONE);
+       RNA_def_property_boolean_sdna(prop, NULL, "flag", AGRP_PROTECTED);
+       RNA_def_property_ui_text(prop, "Protected", "Action Group is 
protected.");
+
+       prop= RNA_def_property(srna, "action_group_expanded", PROP_BOOLEAN, 
PROP_NONE);
+       RNA_def_property_boolean_sdna(prop, NULL, "flag", AGRP_EXPANDED);
+       RNA_def_property_ui_text(prop, "Expanded", "Action Group is expanded.");
+
+       prop= RNA_def_property(srna, "custom_color", PROP_INT, PROP_NONE);
+       RNA_def_property_int_sdna(prop, NULL, "customCol");
+       RNA_def_property_ui_text(prop, "Custom Color", "Index of custom color 
set.");
+}
+
 void RNA_def_action(BlenderRNA *brna)
 {
        StructRNA *srna;
        PropertyRNA *prop;
 
+       rna_def_action_channel(brna);
+       rna_def_action_group(brna);
+
        srna= RNA_def_struct(brna, "Action", "ID");
        RNA_def_struct_sdna(srna, "bAction");
-       RNA_def_struct_ui_text(srna, "Action", "DOC_BROKEN");
+       RNA_def_struct_ui_text(srna, "Action", "A collection of Ipos for 
animation.");
 
+       prop= RNA_def_property(srna, "action_channels", PROP_COLLECTION, 
PROP_NONE);
+       RNA_def_property_collection_sdna(prop, NULL, "chanbase", NULL);
+       RNA_def_property_struct_type(prop, "ActionChannel");
+       RNA_def_property_ui_text(prop, "Action Channels", "The individual 
animation channels that make up the Action.");
+
+       prop= RNA_def_property(srna, "action_groups", PROP_COLLECTION, 
PROP_NONE);
+       RNA_def_property_collection_sdna(prop, NULL, "groups", NULL);
+       RNA_def_property_struct_type(prop, "ActionGroup");
+       RNA_def_property_ui_text(prop, "Action Groups", "Convenient groupings 
of Action Channels.");
+
+       prop= RNA_def_property(srna, "timeline_markers", PROP_COLLECTION, 
PROP_NONE);
+       RNA_def_property_collection_sdna(prop, NULL, "markers", NULL);
+       RNA_def_property_struct_type(prop, "UnknownType"); /* implement when 
timeline rna is wrapped */
+       RNA_def_property_ui_text(prop, "Timeline Markers", "Markers specific to 
this Action, for labeling poses.");
+
+       prop= RNA_def_property(srna, "action_show_sliders", PROP_BOOLEAN, 
PROP_NONE);
+       RNA_def_property_boolean_sdna(prop, NULL, "flag", SACTION_SLIDERS);
+       RNA_def_property_ui_text(prop, "Show Sliders", "Show Shape Key 
sliders.");
+
+       prop= RNA_def_property(srna, "action_time_units", PROP_BOOLEAN, 
PROP_NONE);
+       RNA_def_property_boolean_sdna(prop, NULL, "flag", SACTION_DRAWTIME);
+       RNA_def_property_ui_text(prop, "Time Units", "Show seconds or frames in 
the timeline.");
+
+       prop= RNA_def_property(srna, "action_show_all", PROP_BOOLEAN, 
PROP_NONE);
+       RNA_def_property_boolean_sdna(prop, NULL, "flag", SACTION_NOHIDE);
+       RNA_def_property_ui_text(prop, "Show All", "Show all channels 
regardless of hidden status.");
+
+       prop= RNA_def_property(srna, "action_kill_overlapping_keys", 
PROP_BOOLEAN, PROP_NONE);
+       RNA_def_property_boolean_sdna(prop, NULL, "flag", 
SACTION_NOTRANSKEYCULL);
+       RNA_def_property_ui_text(prop, "Kill Overlapping Keys", "Remove 
overlapping keys after a transform.");
+
+       prop= RNA_def_property(srna, "action_key_cull_to_view", PROP_BOOLEAN, 
PROP_NONE);
+       RNA_def_property_boolean_sdna(prop, NULL, "flag", 
SACTION_HORIZOPTIMISEON);
+       RNA_def_property_ui_text(prop, "Cull Keys to View", "Only consider keys 
that are within the view.");
+
+       prop= RNA_def_property(srna, "action_group_colors", PROP_BOOLEAN, 
PROP_NONE);
+       RNA_def_property_boolean_sdna(prop, NULL, "flag", 
SACTION_NODRAWGCOLORS);
+       RNA_def_property_ui_text(prop, "Group Color", "Use custom color 
grouping and instead of default color scheme.");
+
+       prop= RNA_def_property(srna, "action_current_frame_number", 
PROP_BOOLEAN, PROP_NONE);
+       RNA_def_property_boolean_sdna(prop, NULL, "flag", 
SACTION_NODRAWCFRANUM);
+       RNA_def_property_ui_text(prop, "Current Frame Number", "Draw the frame 
number beside the current frame indicator.");
+
 }
 
 #endif


_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to