From 9a28ca404b43e5a8e6b5cd79ea3e19aafab21d58 Mon Sep 17 00:00:00 2001 From: Dmitry Avdeev Date: Fri, 23 Apr 2010 12:12:39 +0400 Subject: [PATCH] templates loading --- .../impl/FileTemplateManagerImpl.java | 18 +++++++----------- 1 file changed, 7 insertions(+), 11 deletions(-) diff --git a/platform/lang-impl/src/com/intellij/ide/fileTemplates/impl/FileTemplateManagerImpl.java b/platform/lang-impl/src/com/intellij/ide/fileTemplates/impl/FileTemplateManagerImpl.java index b049280f7fcd..0c621b525bac 100644 --- a/platform/lang-impl/src/com/intellij/ide/fileTemplates/impl/FileTemplateManagerImpl.java +++ b/platform/lang-impl/src/com/intellij/ide/fileTemplates/impl/FileTemplateManagerImpl.java @@ -76,6 +76,7 @@ public class FileTemplateManagerImpl extends FileTemplateManager implements Expo @NonNls private final String myTemplatesDir; private MyTemplates myTemplates; private final RecentTemplatesManager myRecentList = new RecentTemplatesManager(); + private final Set notAdjusted = new HashSet(); private volatile boolean myLoaded = false; private final FileTemplateManagerImpl myInternalTemplatesManager; private final FileTemplateManagerImpl myPatternsManager; @@ -277,6 +278,9 @@ public class FileTemplateManagerImpl extends FileTemplateManager implements Expo return; } loadTemplates(); + for (FileTemplate template : myTemplates.getAllTemplates()) { + template.setAdjust(!notAdjusted.contains(template.getName())); + } } myLoaded = true; } @@ -427,22 +431,14 @@ public class FileTemplateManagerImpl extends FileTemplateManager implements Expo Element templatesElement = element.getChild(ELEMENT_TEMPLATES); if (templatesElement != null) { invalidate(); - FileTemplate[] internals = getInternalTemplates(); List children = templatesElement.getChildren(); + notAdjusted.clear(); for (final Object aChildren : children) { Element child = (Element)aChildren; String name = child.getAttributeValue(ATTRIBUTE_NAME); boolean reformat = Boolean.TRUE.toString().equals(child.getAttributeValue(ATTRIBUTE_REFORMAT)); - if (child.getName().equals(ELEMENT_INTERNAL_TEMPLATE)) { - for (FileTemplate internal : internals) { - if (name.equals(internal.getName())) internal.setAdjust(reformat); - } - } - else if (child.getName().equals(ELEMENT_TEMPLATE)) { - FileTemplate template = getTemplate(name); - if (template != null) { - template.setAdjust(reformat); - } + if (!reformat) { + notAdjusted.add(name); } } }