BuildingCoder.CmdCategories.ProblemAddingParameterBindingForCategory C# (CSharp) Method

ProblemAddingParameterBindingForCategory() static private method

static private ProblemAddingParameterBindingForCategory ( Document doc ) : void
doc Document
return void
        void ProblemAddingParameterBindingForCategory(
            Document doc)
        {
            Application app = doc.Application;

              if( null == _spellingErrorCorrector )
              {
            _spellingErrorCorrector
              = new Util.SpellingErrorCorrector( app );
              }

              DefinitionFile sharedParametersFile
            = app.OpenSharedParameterFile();

              DefinitionGroup group = sharedParametersFile
            .Groups.Create( "Reinforcement" );

              //Definition def = group.Definitions.Create( // 2014
              //  "ReinforcementParameter", ParameterType.Text );

              ExternalDefinitionCreationOptions opt
            = new ExternalDefinitionCreationOptions(
              "ReinforcementParameter", ParameterType.Text );

              Definition def = group.Definitions.Create( opt ); // 2015

              // To handle both ExternalDefinitonCreationOptions
              // and ExternalDefinitionCreationOptions:

              def = _spellingErrorCorrector.NewDefinition(
            group.Definitions, "ReinforcementParameter",
            ParameterType.Text );

              List<BuiltInCategory> bics
            = new List<BuiltInCategory>();

              //bics.Add(BuiltInCategory.OST_AreaRein);
              //bics.Add(BuiltInCategory.OST_FabricAreas);
              //bics.Add(BuiltInCategory.OST_FabricReinforcement);
              //bics.Add(BuiltInCategory.OST_PathRein);
              //bics.Add(BuiltInCategory.OST_Rebar);

              bics.Add( BuiltInCategory
            .OST_IOSRebarSystemSpanSymbolCtrl );

              CategorySet catset = new CategorySet();

              foreach( BuiltInCategory bic in bics )
              {
            catset.Insert(
              doc.Settings.Categories.get_Item( bic ) );
              }

              InstanceBinding binding
            = app.Create.NewInstanceBinding( catset );

              doc.ParameterBindings.Insert( def, binding,
            BuiltInParameterGroup.PG_CONSTRUCTION );
        }