using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace CarerayImage_Test
{
    public partial class Form1 : Form
    {
        private Asa.CarerayImage careray;
        private Bitmap bmp;

        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            careray = new Asa.CarerayImage();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            OpenFileDialog dlg = new OpenFileDialog { Filter = "RAW|*.raw" };
            if (dlg.ShowDialog() == DialogResult.Cancel) return;

            careray.LoadRAW(dlg.FileName);
            careray.WindowWidth = Convert.ToInt32(numericUpDown1.Value);
            careray.WindowLevel = Convert.ToInt32(numericUpDown2.Value);
            bmp = careray.Get48bImage();
            pictureBox1.Image = bmp;
        }

        private void numericUpDown1_ValueChanged(object sender, EventArgs e)
        {
            careray.WindowWidth = Convert.ToInt32(numericUpDown1.Value);
            pictureBox1.Image = careray.Get48bImage();
        }

        private void numericUpDown2_ValueChanged(object sender, EventArgs e)
        {
            careray.WindowLevel = Convert.ToInt32(numericUpDown2.Value);
            pictureBox1.Image = careray.Get48bImage();
        }

        private void button2_Click(object sender, EventArgs e)
        {
            bool rtn = careray.Open();
            MessageBox.Show(rtn.ToString());

        }

        private void button3_Click(object sender, EventArgs e)
        {
            bool rtn = careray.Close();
            MessageBox.Show(rtn.ToString());
        }

        private void button4_Click(object sender, EventArgs e)
        {
            careray.GetImage();
            careray.WindowWidth = Convert.ToInt32(numericUpDown1.Value);
            careray.WindowLevel = Convert.ToInt32(numericUpDown2.Value);

            bmp = careray.Get48bImage();
            pictureBox1.Image = bmp;
        }

        private void button5_Click(object sender, EventArgs e)
        {
            bmp.Save(Application.StartupPath + string.Format("\\{0:HHmmss}", DateTime.Now) + ".png", System.Drawing.Imaging.ImageFormat.Png);

        }
    }
}