Example #1
0
        OnBnEnumMap(object sender, EventArgs e)
        {
            ArrayList labelStrs = new ArrayList();
            ArrayList valueStrs = new ArrayList();

            // TBD: iterating over the Parameters using basic reflection gives us lots
            // of duplicates (not sure why).  Instead, use Enum.GetNames() which will return
            // only unique Enum names.  Then go backward to get the actual BuiltinParam Enum.
            // See TestElements.ParameterEnums() and TestElements.ParameterEnumsNoDup() for an
            // explanation of what is going on.  (jma - 07/24/06)

            string [] strs = System.Enum.GetNames(typeof(BuiltInParameter));
            foreach (string str in strs)
            {
                // look up the actual enum from its name
                BuiltInParameter paramEnum = (BuiltInParameter)System.Enum.Parse(typeof(BuiltInParameter), str);

                // see if this Element supports that parameter
                Parameter tmpParam = m_elem.get_Parameter(paramEnum);
                if (tmpParam != null)
                {
                    labelStrs.Add(str);
                    valueStrs.Add(tmpParam.Definition.Name);
                }
            }

            RevitLookup.Snoop.Forms.ParamEnum dbox = new RevitLookup.Snoop.Forms.ParamEnum(labelStrs, valueStrs);
            dbox.ShowDialog();
        }
Example #2
0
        private void ParameterEnumsNoDups()
        {
            ArrayList labelStrs = new ArrayList();
              ArrayList valueStrs = new ArrayList();

              string[] strs = System.Enum.GetNames( typeof( BuiltInParameter ) );
              foreach( string str in strs )
              {
            BuiltInParameter paramEnum = (BuiltInParameter) System.Enum.Parse( typeof( BuiltInParameter ), str );

            labelStrs.Add( str );
            valueStrs.Add( string.Format( "{0:d}", (int) paramEnum ) );
              }

              RevitLookup.Snoop.Forms.ParamEnum dbox = new RevitLookup.Snoop.Forms.ParamEnum( labelStrs, valueStrs );
              dbox.ShowDialog();
        }
Example #3
0
        private void ParameterEnums()
        {
            ArrayList labelStrs = new ArrayList();
              ArrayList valueStrs = new ArrayList();

              foreach( BuiltInParameter paramEnum in System.Enum.GetValues( typeof( BuiltInParameter ) ) )
              {
            labelStrs.Add( paramEnum.ToString() );
            valueStrs.Add( string.Format( "{0:d}", (int) paramEnum ) );
              }

              RevitLookup.Snoop.Forms.ParamEnum dbox = new RevitLookup.Snoop.Forms.ParamEnum( labelStrs, valueStrs );
              dbox.ShowDialog();
        }
Example #4
0
        private void CategoryEnums()
        {
            Revit.Categories categories = m_revitApp.ActiveUIDocument.Document.Settings.Categories;
              ArrayList labelStrs = new ArrayList();
              ArrayList valueStrs = new ArrayList();

              foreach( Revit.BuiltInCategory catEnum in System.Enum.GetValues( typeof( Revit.BuiltInCategory ) ) )
              {
            labelStrs.Add( catEnum.ToString() );

            try
            {
              Revit.Category cat = categories.get_Item( catEnum );
              if( cat == null )
            valueStrs.Add( "<null>" );
              else
            valueStrs.Add( cat.Name );
            }
            catch( System.Exception )
            {
              Trace.WriteLine( catEnum.ToString() );
            }

              }

              RevitLookup.Snoop.Forms.ParamEnum dbox = new RevitLookup.Snoop.Forms.ParamEnum( labelStrs, valueStrs );
              dbox.ShowDialog();
        }
Example #5
0
        OnBnEnumMap(object sender, EventArgs e)
        {
            ArrayList labelStrs = new ArrayList();
            ArrayList valueStrs = new ArrayList();                                     
               
            // TBD: iterating over the Parameters using basic reflection gives us lots
            // of duplicates (not sure why).  Instead, use Enum.GetNames() which will return
            // only unique Enum names.  Then go backward to get the actual BuiltinParam Enum.
            // See TestElements.ParameterEnums() and TestElements.ParameterEnumsNoDup() for an
            // explanation of what is going on.  (jma - 07/24/06)

            string [] strs = System.Enum.GetNames(typeof(BuiltInParameter));
            foreach (string str in strs)
            {
                // look up the actual enum from its name
                BuiltInParameter paramEnum = (BuiltInParameter)System.Enum.Parse(typeof(BuiltInParameter), str);

                // see if this Element supports that parameter
                Parameter tmpParam = m_elem.get_Parameter(paramEnum);
                if (tmpParam != null)
                {
                    labelStrs.Add(str);
                    valueStrs.Add(tmpParam.Definition.Name);
                }
            }

            RevitLookup.Snoop.Forms.ParamEnum dbox = new RevitLookup.Snoop.Forms.ParamEnum(labelStrs, valueStrs);
            dbox.ShowDialog();
        }