public static void RunCategorySetup(Document currentDoc) { RevitCategories cats = new RevitCategories(currentDoc); if (!currentDoc.IsFamilyDocument) { CategoryMethod method = new CategoryMethod(cats.CategorySetup); int i = CategoryCalls.CategoryLoop(method); TaskDialog.Show("Categories Setup", "The line weights have been set for " + i + " Categories!"); } else { CategoryMethod method = new CategoryMethod(cats.CategorySetup); CategoryQualifier qual = new CategoryQualifier(cats.CategoryCheck); int i = CategoryCalls.CategoryLoop(method, qual); TaskDialog.Show("Categories Setup", "The line weights have been set for " + i + " Categories!"); } }
private void CategorySetup(CC_Category cat) { if (cat.BuiltInCategory > 0) { Category bic = GetBuiltInCategory(currentDoc, cat.BuiltInCategory); setCategoryStyles(bic, cat); } else { CC_Category parentcat = CategoryCalls.getCategory(cat.Name); Category parent = GetBuiltInCategory(currentDoc, parentcat.BuiltInCategory); CategoryNameMap map = parent.SubCategories; if (!map.Contains(cat.Name)) { Category subcat = currentDoc.Settings.Categories.NewSubcategory(parent, cat.Name); setCategoryStyles(subcat, cat); } else { Category subcat = map.get_Item(cat.Name); setCategoryStyles(subcat, cat); } } }