public void OnEnable()
 {
     this.me                             = (ImportExportSystem)base.target;
     this.editor                         = null;
     this.settingsProperty               = serializedObject.FindProperty("settings");
     this.entriesProperty                = serializedObject.FindProperty("entries");
     this.overwriteLocalFilesProperty    = serializedObject.FindProperty("overwriteLocalFiles");
     this.enableInEditorProperty         = serializedObject.FindProperty("enableInEditor");
     this.entriesList                    = new ReorderableList(serializedObject, this.entriesProperty, true, true, true, true);
     this.entriesList.drawHeaderCallback = (Rect rect) => {
         Rect left = rect;
         left.width = left.width * 0.5f;
         Rect right = left;
         right.x = left.x + left.width;
         EditorGUI.LabelField(left, "Game Object");
         EditorGUI.LabelField(right, "Asset");
     };
     this.entriesList.drawElementCallback = (Rect rect, int index, bool isActive, bool isFocused) => {
         SerializedProperty element          = this.entriesList.serializedProperty.GetArrayElementAtIndex(index);
         SerializedProperty gameObject       = element.FindPropertyRelative("gameObject");
         SerializedProperty scriptableObject = element.FindPropertyRelative("scriptableObject");
         rect.height = rect.height * 0.75f;
         Rect left = rect;
         left.width = left.width * 0.5f;
         Rect right = left;
         right.x = left.x + left.width;
         EditorGUI.PropertyField(left, gameObject, new GUIContent());
         EditorGUI.PropertyField(right, scriptableObject, new GUIContent());
     };
     this.importAsset = null;
 }
        public static void ReserializeEntries(ImportExportSystem system)
        {
            string[] assetPaths = new string[system.Entries.Count];

            int index = 0;

            foreach (ImportExportEntry entry in system.Entries)
            {
                assetPaths[index++] = AssetDatabase.GetAssetPath(entry.scriptableObject);
            }

            assetPaths = assetPaths.Distinct().ToArray();
            AssetDatabase.ForceReserializeAssets(assetPaths);
        }