# ApplyAndImport()

> Saves the changes from the editor UI to the settings object and imports the asset.

## Definition

* **Type:** Method
* **Namespace:** [UnityEditor.AssetImporters](/engine/6000.6/script-reference/unityeditor/assetimporters.md)
* **Assembly:** UnityEditor.CoreModule

> **Warning:**
>
> **Deprecated.** Please use SaveChanges.

```csharp
protected void ApplyAndImport()
```

### Examples

```csharp
using UnityEngine;
using UnityEditor;
using UnityEditor.AssetImporters;

public class ExampleScript : AssetImporterEditor
{
    public void OnInspectorGUI()
    {
        serializedObject.Update();

        // Draw custom GUI

        serializedObject.ApplyModifiedProperties();

        ApplyRevertGUI();
    }

    protected virtual bool OnApplyRevertGUI()
    {
        using (new EditorGUI.DisabledScope(!HasModified()))
        {
            bool applied;

            RevertButton();
            applied = ApplyButton();

            if (GUILayout.Button("Apply And Generate Other Files..."))
            {
                // Apply first to make sure the importer settings are up-to-date
                Apply();

                // Generate a bunch of new files for each importer
                foreach (AssetImporter importer in targets)
                {
                    var path = importer.assetPath;
                    // Do create files based on the path.
                }

                ApplyAndImport();
                applied = true;
            }
            return applied;
        }
    }
}
```
