private void btnOpen_Click(object sender, EventArgs e)
        {
            lblWait.Visible = true;
            thread          = new Thread(new ThreadStart(DownloadFile));
            thread.Start();

            while (thread.ThreadState == ThreadState.Running)
            {
                Application.DoEvents();
            }

            lblWait.Visible = false;

            if (readedData == null)
            {
                return;
            }

            eduMan = new EduManager();
            MemoryStream mem = new MemoryStream(readedData);

            eduMan.Load(mem);

            new frmPresent(ref eduMan).ShowDialog();
        }
예제 #2
0
        /// <summary>
        /// 열기
        /// </summary>
        public void Open()
        {
            if (!SaveCheck)
            {
                return;
            }

            OpenFileDialog ofd = new OpenFileDialog();

            ofd.Filter = "Education Plus 파일(*.epf)|*.epf";

            if (ofd.ShowDialog() == DialogResult.Cancel)
            {
                return;
            }

            eduMan = new EduManager();
            FileStream fs = new FileStream(ofd.FileName, FileMode.Open);

            if (!eduMan.Load(fs))
            {
                return;
            }
            fs.Close();
            fs.Dispose();

            saveOk   = true;
            savePath = ofd.FileName;

            SetTitle();
            InitList();
            pgQuestion.SelectedObject = null;
        }
예제 #3
0
        /// <summary>
        /// 발표용 윈도 생성
        /// </summary>
        /// <param name="eduMan">편집된 에듀 플러스 퀘스천 매니저</param>
        public frmPresent(ref EduManager eduMan)
        {
            InitializeComponent();
            this.eduMan = eduMan;

            backBuf = new Bitmap(800, 600);
            g       = Graphics.FromImage(backBuf);
        }
예제 #4
0
        /// <summary>
        /// 새 파일
        /// </summary>
        public void New()
        {
            if (!SaveCheck)
            {
                return;
            }

            saveOk   = true;
            savePath = "";

            eduMan = new EduManager();

            SetTitle();
            InitList();
            pgQuestion.SelectedObject = null;
        }
예제 #5
0
        public frmMain(string file)
        {
            InitializeComponent();

            eduMan = new EduManager();
            FileStream fs = new FileStream(file, FileMode.Open);

            eduMan.Load(fs);
            fs.Close();
            fs.Dispose();

            saveOk   = true;
            savePath = file;

            SetTitle();
            InitList();
        }
예제 #6
0
        static void Main(string[] args)
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);

            // 만약 뒤쪽부터 검사하여 파일 버전이 검출되면 발표 모드로 실행한다
            {
                byte [] data = File.ReadAllBytes(Application.ExecutablePath);
                frmMain.DataReverse(data);
                MemoryStream mem = new MemoryStream(data);
                BinaryReader b   = new BinaryReader(mem);
                if (b.ReadInt32() == 0xDEAD)
                {
                    EduManager edu = new EduManager();
                    mem = new MemoryStream(data);
                    edu.Load(mem);
                    new frmPresent(ref edu).ShowDialog();
                    return;
                }
            }

            // 명령인자가 없다면 편집모드를 실행한다
            if (args.Length == 0)
            {
                Application.Run(new frmMain());
            }
            else
            {
                switch (args [0])
                {
                case "-pre":
                case "/발표":
                {
                    // 명령인자가 2개 이상이 아닐 경우 오류
                    if (args.Length < 2)
                    {
                        MessageBox.Show("파일 경로를 지정해주세요.");
                    }
                    // args[1]이 파일로 존재하지 않는다면 오류
                    if (!File.Exists(args [1]))
                    {
                        MessageBox.Show("파일 경로가 올바르지 않습니다.");
                    }

                    // 에듀 플러스 파일을 불러온다
                    FileStream fs     = new FileStream(args [1], FileMode.Open);
                    EduManager eduMan = new EduManager();
                    eduMan.Load(fs);
                    fs.Close();
                    fs.Dispose();

                    // 발표를 시작한다
                    Application.Run(new frmPresent(ref eduMan));
                }
                break;

                case "-h":
                case "-?":
                case "/도움말":
                {
                    Application.Run(new frmHelp());
                }
                break;

                case "-opt":
                case "/환경설정":
                case "/옵션":
                {
                    Application.Run(new frmOption());
                }
                break;

                case "-theme":
                case "-thm":
                case "/테마":
                {
                    if (args.Length >= 2)
                    {
                        if (File.Exists(args [1]))
                        {
                            Application.Run(new frmThemeEdit(args [1]));
                        }
                        else
                        {
                            MessageBox.Show("파일 경로가 올바르지 않습니다.");
                        }
                    }
                    else
                    {
                        Application.Run(new frmThemeEdit());
                    }
                }
                break;

                case "-netpre":
                case "-np":
                case "/넷발표":
                    Application.Run(new frmOpenFromFileServer());
                    break;

                case "-team":
                case "/팀네비":
                    frmTeam team = new frmTeam();
                    team.ControlBox = true;
                    Application.Run(team);
                    break;

                case "-fserv":
                case "/파일서버":
                    Application.Run(new frmFileServer());
                    break;

                default:
                {
                    // args[0]이 파일로 존재한다면 해당 파일을 편집모드로 연다
                    if (File.Exists(args [0]))
                    {
                        Application.Run(new frmMain(args [0]));
                    }
                    // 파일로 존재하지 않는다면 오류
                    else
                    {
                        MessageBox.Show("명령어가 잘못됬거나 파일이 없습니다.");
                    }
                }
                break;
                }
            }
        }