private void DoSyllabicStructureForAll()
        {
            List <string> lstDatalistPh2 = new List <string>();


            foreach (string str in NormalOrParsedText.Split(' '))
            {
                if (!string.IsNullOrEmpty(str) && !lstDatalistPh2.Contains(str))
                {
                    lstDatalistPh2.Add(str.Trim());
                }
            }



            DataTable dtData = new DataTable();

            dtData.Columns.Add("சொல்");
            dtData.Columns.Add("ஒலியசை அமைப்பு");
            PhonemicRules  objRules  = new PhonemicRules();
            SyllabicOutput objOutput = new SyllabicOutput();

            foreach (string word in lstDatalistPh2)
            {
                objOutput = objRules.CreateSyllables(word.Trim());
                if (objOutput.lstSyllables != null && objOutput.lstSyllables.Count > 0)
                {
                    string syllabText = string.Empty;
                    foreach (string syllab in objOutput.lstSyllables)
                    {
                        if (string.IsNullOrEmpty(syllabText))
                        {
                            syllabText = syllab;
                        }
                        else
                        {
                            syllabText = syllabText + "---" + syllab;
                        }
                    }
                    dtData.Rows.Add(word, syllabText);
                }
            }

            dataGridViewSyllable.DataSource       = dtData;
            dataGridViewSyllable.Columns[0].Width = 150;
            dataGridViewSyllable.Columns[1].Width = 550;
        }
        private void dataGridViewSyllable_CellClick(object sender, DataGridViewCellEventArgs e)
        {
            DataGridViewRow row       = new DataGridViewRow();
            PhonemicRules   objRules  = new PhonemicRules();
            SyllabicOutput  objOutput = new SyllabicOutput();

            string FinalOutput = string.Empty;

            int i = e.RowIndex;

            if (i != -1)
            {
                row = dataGridViewSyllable.Rows[i];
                string Word = row.Cells[0].Value.ToString();

                objOutput = objRules.CreateSyllables(Word);
                if (objOutput.lstSyllables != null)
                {
                    FinalOutput = FormatSyllables(objOutput);
                }

                rtbPh2.Text = FinalOutput;
            }
        }
        private void PerformPhonemicOperations()
        {
            PhonemicRules objphoneme  = new PhonemicRules();
            List <string> lstDatalist = new List <string>();


            foreach (string str in NormalOrParsedText.Split(' '))
            {
                if (!string.IsNullOrEmpty(str) && !lstDatalist.Contains(str))
                {
                    lstDatalist.Add(str.Trim());
                }
            }

            try
            {
                lstStartingEndingoutput = objphoneme.CheckPhonemicCharacters(lstDatalist);
            }
            catch (Exception ex) { throw ex; };


            List <string> lstStart = new List <string>();
            List <string> lstEnd   = new List <string>();
            List <string> lstTwo   = new List <string>();
            List <string> lstThree = new List <string>();


            if (lstStartingEndingoutput.Count > 0)
            {
                foreach (DisplayForm objDisplay in lstStartingEndingoutput)
                {
                    string start = objDisplay.StartingCharacters;
                    string end   = objDisplay.EndingCharacters;
                    string Two   = objDisplay.TwoConsonantClusters;
                    string Three = objDisplay.ThreeConsonantCluster;


                    if (!string.IsNullOrEmpty(start))
                    {
                        if (!lstStart.Contains(start))
                        {
                            lstStart.Add(start);
                        }
                    }

                    if (!string.IsNullOrEmpty(end))
                    {
                        if (!lstEnd.Contains(end))
                        {
                            lstEnd.Add(end);
                        }
                    }

                    if (objDisplay.hasTwoCluster)
                    {
                        if (!string.IsNullOrEmpty(Two))
                        {
                            if (!lstTwo.Contains(Two))
                            {
                                lstTwo.Add(Two);
                            }
                        }
                    }

                    if (objDisplay.hasThreeCluster)
                    {
                        if (!string.IsNullOrEmpty(Three))
                        {
                            if (!lstThree.Contains(Three))
                            {
                                lstThree.Add(Three);
                            }
                        }
                    }
                }

                DataTable dtstart = new DataTable();
                dtstart.Columns.Add("சொல் முதல் எழுத்துகள்");

                foreach (string ch in lstStart)
                {
                    dtstart.Rows.Add(ch);
                }
                startdataGrid.DataSource = dtstart;



                DataTable dtEnd = new DataTable();
                dtEnd.Columns.Add("சொல் இறுதி எழுத்துகள்");

                foreach (string ch in lstEnd)
                {
                    dtEnd.Rows.Add(ch);
                }
                EnddataGrid.DataSource = dtEnd;


                DataTable dtTwo = new DataTable();
                dtTwo.Columns.Add("இரண்டு மெய் மயக்கம்");

                foreach (string ch in lstTwo)
                {
                    dtTwo.Rows.Add(ch);
                }
                TwoConsdataGrid.DataSource = dtTwo;

                DataTable dtThree = new DataTable();
                dtThree.Columns.Add("மூன்று மெய் மயக்கம்");

                foreach (string ch in lstThree)
                {
                    dtThree.Rows.Add(ch);
                }
                ThreeConsdataGrid.DataSource = dtThree;


                //displaying first itemm by default
                StringBuilder   sb            = new StringBuilder();
                DataGridViewRow row           = new DataGridViewRow();
                List <string>   tempStartlist = new List <string>();
                row = startdataGrid.Rows[0];
                string             ch1    = row.Cells[0].Value.ToString();
                List <DisplayForm> lstOut = lstStartingEndingoutput.FindAll(o => o.StartingCharacters.Equals(ch1));
                if (lstOut.Count > 0)
                {
                    rtbDisplay.Clear();
                    foreach (DisplayForm objform in lstOut)
                    {
                        if (!tempStartlist.Contains(objform.Word))
                        {
                            tempStartlist.Add(objform.Word);
                            sb.Append(objform.Word + Environment.NewLine);
                        }
                    }
                    labelCountPh.Text = tempStartlist.Count.ToString();
                    rtbDisplay.Text   = sb.ToString();
                }
            }
        }