public void reset() {
   mySelectedSchema = new CustomActionsSchema();
   mySelectedSchema.copyFrom(CustomActionsSchema.getInstance());
   patchActionsTreeCorrespondingToSchema(
       (DefaultMutableTreeNode) myActionsTree.getModel().getRoot());
   myRestoreAllDefaultButton.setEnabled(mySelectedSchema.isModified(new CustomActionsSchema()));
 }
 public void apply() throws ConfigurationException {
   final List<TreePath> treePaths = TreeUtil.collectExpandedPaths(myActionsTree);
   if (mySelectedSchema != null) {
     CustomizationUtil.optimizeSchema(myActionsTree, mySelectedSchema);
   }
   restorePathsAfterTreeOptimization(treePaths);
   CustomActionsSchema.getInstance().copyFrom(mySelectedSchema);
   setCustomizationSchemaForCurrentProjects();
 }
 public boolean isModified() {
   CustomizationUtil.optimizeSchema(myActionsTree, mySelectedSchema);
   return CustomActionsSchema.getInstance().isModified(mySelectedSchema);
 }