예제 #1
0
        public void MoveFormHistoryToEnd(FormRoot form)
        {
            var idBeforeClosing = GetId(form);

            FsPath tempDir = AppDir.History.Join("temp");

            if (tempDir.IsDirectory())
            {
                tempDir.DeleteDirectory(recursive: true);
            }

            AppDir.History.Join(idBeforeClosing.ToString()).MoveDirectoryTo(tempDir);

            int lastId = _instances.Count - 1;

            for (int i = idBeforeClosing + 1; i <= lastId; i++)
            {
                AppDir.History.Join(i.ToString()).MoveDirectoryTo(AppDir.History.Join((i - 1).ToString()));
            }

            tempDir.MoveDirectoryTo(AppDir.History.Join(lastId.ToString()));

            _instances.RemoveAt(idBeforeClosing);
            _instances.Add(form);
        }
예제 #2
0
 private static void moveDirectoryToBackup(FsPath dir, FsPath dirBak)
 {
     if (dirBak.IsDirectory())
     {
         dirBak.DeleteDirectory(recursive: true);
     }
     dirBak.Parent().CreateDirectory();
     dir.MoveDirectoryTo(dirBak);
 }