private void FormPrognozeOdabraniGradovi_Load(object sender, EventArgs e)
        {
            weatherRepository.ObrisiPrognozeIzDb();
            ChartTemps.Hide();
            IdGradaLbl.Hide();
            gMapControl.Hide();
            weatherRepository.DodajOdabranePrognoze();
            weatherRepository.DodajPrognozePovijest();
            BindingSource.DataSource = weatherRepository.DohvatiPrognozeOdabranihGradova();
            dataGridViewOdabraniGradovi.DataSource = BindingSource;
            DataGridViewCheckBoxColumn chkBox = new DataGridViewCheckBoxColumn();

            chkBox.AutoSizeMode       = DataGridViewAutoSizeColumnMode.DisplayedCells;
            chkBox.FalseValue         = "false";
            chkBox.TrueValue          = "true";
            chkBox.IndeterminateValue = "false";
            dataGridViewOdabraniGradovi.Columns.Add(chkBox);
            dataGridViewOdabraniGradovi.Columns[14].HeaderText = "Odbir grada";
            DataGridViewImageColumn btnMap = new DataGridViewImageColumn();

            btnMap.Image        = Image.FromFile("E:/.NET/VremenskaPrognoza/VremenskaPrognoza/img/World_map.png");
            btnMap.Width        = 20;
            btnMap.AutoSizeMode = DataGridViewAutoSizeColumnMode.DisplayedCells;
            dataGridViewOdabraniGradovi.Columns.Add(btnMap);
            dataGridViewOdabraniGradovi.Columns[15].HeaderText = "Otvori u karti";
            DataGridViewImageColumn btnDelete = new DataGridViewImageColumn();

            btnDelete.Image        = Image.FromFile("E:/.NET/VremenskaPrognoza/VremenskaPrognoza/img/delete_ico.png");
            btnDelete.Width        = 20;
            btnDelete.AutoSizeMode = DataGridViewAutoSizeColumnMode.DisplayedCells;
            dataGridViewOdabraniGradovi.Columns.Add(btnDelete);
            dataGridViewOdabraniGradovi.Columns[16].HeaderText = "Ukloni grad";
            dataGridViewOdabraniGradovi.AutoGenerateColumns    = false;
            DaniZaGraf.Clear();
            DateTime danas = DateTime.Now;

            DaniZaGraf.Add(danas.ToString("dd.MM."));
            for (int x = 1; x < 8; x++)
            {
                DateTime temp = danas.AddDays(x);
                comboBoxUnapred.Items.Add(temp.ToString("dd.MM.yyyy."));
                DaniZaGraf.Add(temp.ToString("dd.MM."));
            }
            comboBoxTipGrafa.Items.Add("Dnevna temperatura");
            comboBoxTipGrafa.Items.Add("Minimalna temperatura");
            comboBoxTipGrafa.Items.Add("Maksimalna temperatura");
            comboBoxTipGrafa.Items.Add("Temperatura subjektivnog dojma");
            comboBoxTipGrafa.Items.Add("Tlak zraka");
            comboBoxTipGrafa.Items.Add("Vlaga zraka");
            comboBoxTipGrafa.Items.Add("Postotak oblačnosti");
            comboBoxTipGrafa.Items.Add("Brzina vjetra");
        }
 private void btnZatvoriGraf_Click(object sender, EventArgs e)
 {
     ChartTemps.Hide();
 }
        private void buttonGrafStatistika_Click(object sender, EventArgs e)
        {
            gMapControl.Hide();
            ChartTemps.Series.Clear();
            bool Prazno       = true;
            bool PraznoTip    = true;
            bool PrazanOdabir = true;

            if (comboBoxUnapred.SelectedItem == null)
            {
                const string message = "Niste odabrali raspon dana za prikaz grafa!";
                const string content = "Upozorenje";
                MessageBox.Show(message, content, MessageBoxButtons.OK, MessageBoxIcon.Warning);
                Prazno = true;
            }
            else
            {
                Prazno = false;
            }
            if (comboBoxTipGrafa.SelectedItem == null)
            {
                const string message = "Niste odabrali tip grafa!";
                const string content = "Upozorenje";
                MessageBox.Show(message, content, MessageBoxButtons.OK, MessageBoxIcon.Warning);
                PraznoTip = true;
            }
            else
            {
                PraznoTip = false;
            }
            if (checkedCity.Count <= 0)
            {
                ChartTemps.Hide();
                const string message = "Niste odabrali niti jedan grad!";
                const string content = "Upozorenje";
                MessageBox.Show(message, content, MessageBoxButtons.OK, MessageBoxIcon.Warning);
                PrazanOdabir = true;
            }
            else
            {
                PrazanOdabir = false;
            }
            if (!Prazno && !PraznoTip && !PrazanOdabir)
            {
                int dan = comboBoxUnapred.SelectedIndex + 1;
                for (int i = 0; i < checkedCity.Count; i++)
                {
                    var           lTemperatura = weatherRepository.TemperatureOdabranogGrada(checkedCity[i].nCityID, dan, comboBoxTipGrafa.Text);
                    var           lValls       = lTemperatura.ToList();
                    List <float>  MinAvgMax    = new List <float>();
                    List <string> sMinAvgMax   = new List <string>();
                    Console.WriteLine();
                    sMinAvgMax.Add("Minimalna vrijednost");
                    sMinAvgMax.Add("Srednja vrijednost");
                    sMinAvgMax.Add("Maksimalna vrijednost");
                    var minVall = lValls.Min();
                    MinAvgMax.Add(minVall);
                    ChartTemps.Visible        = true;
                    ChartTemps.Titles[0].Text = comboBoxTipGrafa.Text;
                    ChartTemps.Series.Add(checkedCity[i].sCityName);
                    ChartTemps.Series[i].ChartType       = System.Windows.Forms.DataVisualization.Charting.SeriesChartType.Line;
                    ChartTemps.Series[i].IsXValueIndexed = true;
                    float allValls = 0;
                    float avgVall  = 0;
                    for (int z = 0; z < lTemperatura.Count; z++)
                    {
                        allValls = allValls + lValls[z];
                        if (lTemperatura.Count - 1 == z)
                        {
                            avgVall = allValls / z + 1;
                            MinAvgMax.Add(avgVall);
                        }
                    }
                    var maxVall = lValls.Max();
                    MinAvgMax.Add(maxVall);
                    for (int x = 0; x < 3; x++)
                    {
                        ChartTemps.Series[i].Points.AddXY(sMinAvgMax[x], MinAvgMax[x]);
                    }
                    lTemperatura.Clear();
                }
            }
        }
        private void btnPrikaziGraf_Click(object sender, EventArgs e)
        {
            gMapControl.Hide();
            ChartTemps.Series.Clear();
            bool Prazno       = true;
            bool PraznoTip    = true;
            bool PrazanOdabir = true;

            if (comboBoxUnapred.SelectedItem == null)
            {
                const string message = "Niste odabrali raspon dana za prikaz grafa!";
                const string content = "Upozorenje";
                MessageBox.Show(message, content, MessageBoxButtons.OK, MessageBoxIcon.Warning);
                Prazno = true;
            }
            else
            {
                Prazno = false;
            }
            if (comboBoxTipGrafa.SelectedItem == null)
            {
                const string message = "Niste odabrali tip grafa!";
                const string content = "Upozorenje";
                MessageBox.Show(message, content, MessageBoxButtons.OK, MessageBoxIcon.Warning);
                PraznoTip = true;
            }
            else
            {
                PraznoTip = false;
            }
            if (checkedCity.Count <= 0)
            {
                ChartTemps.Hide();
                const string message = "Niste odabrali niti jedan grad!";
                const string content = "Upozorenje";
                MessageBox.Show(message, content, MessageBoxButtons.OK, MessageBoxIcon.Warning);
                PrazanOdabir = true;
            }
            else
            {
                PrazanOdabir = false;
            }
            if (!Prazno && !PraznoTip && !PrazanOdabir)
            {
                int dan = comboBoxUnapred.SelectedIndex + 1;
                for (int i = 0; i < checkedCity.Count; i++)
                {
                    var lTemperatura = weatherRepository.TemperatureOdabranogGrada(checkedCity[i].nCityID, dan, comboBoxTipGrafa.Text);
                    ChartTemps.Visible        = true;
                    ChartTemps.Titles[0].Text = comboBoxTipGrafa.Text;
                    ChartTemps.Series.Add(checkedCity[i].sCityName);
                    ChartTemps.Series[i].ChartType       = System.Windows.Forms.DataVisualization.Charting.SeriesChartType.Line;
                    ChartTemps.Series[i].IsXValueIndexed = true;
                    for (int x = 0; x < lTemperatura.Count; x++)
                    {
                        ChartTemps.Series[i].Points.AddXY(DaniZaGraf[x], lTemperatura[x]);
                    }
                    lTemperatura.Clear();
                }
            }
        }