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

namespace prog_tesztelo
{
    /// <summary>
    /// A fájlátvitelhez szükséges információkat tartalmazó és feldolgozó osztály
    /// </summary>
    public class ViewerSettings
    {
        /// <summary>
        /// a kijelölt - letöltendő/feltöltendő - fájl 
        /// </summary>
        private string selectedfile;

        /// <summary>
        /// a letöltött fájl helye
        /// </summary>
        private string tempfilename;

        /// <summary>
        /// igaz érték esetén szerkesztésre nyitottuk meg a fájlt, hamis érték esetén csak a nézőkében nyitjuk meg
        /// </summary>
        private bool editable;

        /// <summary>
        /// igaz érték esetén feltöltjük a szervverre a fájlt, hamis érték esetén a szerverről töltjük le a fájlt
        /// </summary>
        private bool upload;

        /// <summary>
        /// a felhasználói adatok, amelyek szükségesek a szerverrel való kapcsolatfelvételhez és -tartáshoz
        /// </summary>
        private string user, pass, host;

        /// <summary>
        /// Konstruál egy ViewerSettings objektumot a paraméterekben megadott értékekkel; az objektumot a fájlletöltés/-feltöltés folyamatának vezérléséhez használjuk fel
        /// </summary>
        /// <param name="selectedfile">a kiválasztott fájl, amelyet szerkesztünk/megtekintünk a nézőkével</param>
        /// <param name="tempfilename">az átmeneti fájl helye</param>
        /// <param name="editable">értéke meghatározza, hogy szerkesztésre (igaz) vagy megtekintésre (hamis) töltjük le a fájlt</param>
        /// <param name="upload">értéke meghatározza, hogy feltöltjük (igaz) vagy letöltjük (hamis) a fájlt</param>
        /// <param name="host">a szerver címe</param>
        /// <param name="user">a felhasználói név</param>
        /// <param name="pass">a jelszó</param>
        public ViewerSettings(string selectedfile, string tempfilename, bool editable, bool upload, string host, string user, string pass)
        {
            this.selectedfile = selectedfile;
            this.tempfilename = tempfilename;
            this.editable = editable;
            this.upload = upload;
            this.host = host;
            this.user = user;
            this.pass = pass;
        }

        public string Selectedfile
        {
            get { return selectedfile; }
            set { selectedfile = value; }
        }

        public string Tempfilename
        {
            get { return tempfilename; }
            set { tempfilename = value; }
        }

        public bool Editable
        {
            get { return editable; }
            set { editable = value; }
        }

        public bool Upload
        {
            get { return upload; }
            set { upload = value; }
        }

        public string Host
        {
            get { return host; }
            set { host = value; }
        }

        public string Pass
        {
            get { return pass; }
            set { pass = value; }
        }

        public string User
        {
            get { return user; }
            set { user = value; }
        }
    }
}
