Subversion Repositories AndroidProjects

Rev

Rev 1307 | Rev 1425 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

using BurutaruEditor.file.elements;

namespace BurutaruEditor.file
{
    public class Document
    {
        private bool mIsDirty = false;
        private String mFilename = null;

        private List<LevelElement> mLevelElements = new List<LevelElement>();

        public Document()
        {
        }

        public bool NewDocument()
        {
            mIsDirty = false;
            mLevelElements.Clear();

            return true;
        }

        public bool LoadDocument(String filename)
        {
            mFilename = filename;

            // fill mLevelElements from file
            return LevelUtil.LoadLevel(mFilename, mLevelElements);
        }

        public bool SaveDocument()
        {
            // save mLevelElements
            return LevelUtil.SaveLevel(mFilename, mLevelElements);
        }

        public bool SaveDocument(String filename)
        {
            mFilename = filename;
            return SaveDocument();
        }

        public void SetDirty(bool dirty)
        {
            mIsDirty = dirty;
        }

        public bool IsDirty()
        {
            return mIsDirty;
        }

        public String GetFilename()
        {
            return mFilename;
        }

        public void SetFilename(String filename)
        {
            mFilename = filename;
        }

        public bool IsFilenameSet()
        {
            return (mFilename != null);
        }
    }
}