using System;

namespace Kuineator.Tools
{
    class PropertyManager
    {

        private string _charcode;
        public string CharacterCode
        {
            set
            {
                Settings.FileControl.CharacterCode = value;
                this._charcode = value;
            }
            get
            {
                return this._charcode;
            }
        }
        private int _pronum;
        public int projectnum
        {
            set
            {
                this._pronum = value;
            }
            get
            {
                return this._pronum;
            }
        }
        private bool _indentv;
        public bool indentVisible
        {
            set
            {
                this._indentv = value;
            }
            get
            {
                return this._indentv;
            }
        }
        private bool _spacev;
        public bool spaceVisible
        {
            set
            {
                this._spacev = value;
            }
            get
            {
                return this._spacev;
            }
        }
        private bool _newlinev;
        public bool newlineVisible
        {
            set
            {
                this._newlinev = value;
            }
            get
            {
                return this._newlinev;
            }
        }
        private bool _turnable;
        public bool Turnable
        {
            set
            {
                this._turnable = value;
            }
            get
            {
                return this._turnable;
            }
        }
        private bool _toollevel;
        public bool Toollevel
        {
            set
            {
                this._toollevel = value;
            }
            get
            {
                return this._toollevel;
            }
        }
        public static CostumManager custom;
        public static EditManager editmag;
        public static EnumManager environ;
        public static OptionManager option;
        public static ProjectManager project;
        public static TabManager tabmag;

        public PropertyManager(WeifenLuo.WinFormsUI.Docking.DockPanel pn)
        {
            custom = new CostumManager();
            editmag = new EditManager(pn);
            environ = new EnumManager();
            option = new OptionManager();
            project = new ProjectManager();
            tabmag = new TabManager();
            CharacterCode = Kuineator.SHIFTJIS;
            projectnum = 0;
            indentVisible = true;
            spaceVisible = true;
            newlineVisible = true;
            Turnable = true;
            Toollevel = true;
        }

        /*
         * 0000-0099 INITERROR
         * 0000 : Can't read init files
         * 0001 : Can't find init files
         * 0002 : Can't write init files
         * 0003 : Can't setup
         * 0100-0199 SYSTEMERROR
         * 0200-0299 INPUT/OUTPUTERROR
         * 0200 : Can't read project files
         * 0201 : Can't find project files
         * 0202 : Can't write project files
         * 0203 : The project file is illigual
         * 0204 : Can't read source files
         * 0205 : Can't find source files
         * 0206 : Can't write source files
         * 0207 : The source file encoding is illigual
        */

        public static void throwSystemError(int ErrorCode, string message){

        }

    }
}
