Ejemplo n.º 1
0
 public HSTaskPane(Hunspell oHunspell)
 {
     InitializeComponent();
     m_oEncoder           = new HySpellEncoder.Wrapper();
     m_oHunspell          = oHunspell;
     sCustomDictPath      = Globals.ThisAddIn.CustomDictPath;
     this.LostFocus      += new EventHandler(HSTaskPane_LostFocus);
     this.VisibleChanged += new EventHandler(HSTaskPane_VisibleChanged);
 }
Ejemplo n.º 2
0
        private bool CheckSpelling(string sWord, ref ArrayList arrAnals)
        {
            bool bFoundStem = false;

            HySpellEncoder.Wrapper oEncoder = new HySpellEncoder.Wrapper();

            if (Globals.ThisAddIn.HSWrapper == null)
            {
                //Globals.ThisAddIn.Wrapper = new Wrapper();
                Globals.ThisAddIn.InitializeWrapper();
            }

            int       nRetFlag   = -1;
            ArrayList arrEncoded = new ArrayList();

            nRetFlag = oEncoder.Encode_U(sWord, arrEncoded);
            if (arrEncoded.Count != 0)
            {
                string sOutWord = arrEncoded[0].ToString();
                if (nRetFlag > 0)
                {
                    int nAccIndex = sWord.IndexOfAny(Globals.ThisAddIn.IsArmenianAccent);
                    if (nAccIndex != -1)
                    {
                        string sAcc = sWord.Substring(nAccIndex, 1);
                        if (nRetFlag < 2)
                        {
                            sAcc = Globals.ThisAddIn.DecodeAccent(sAcc);
                        }
                        if (nRetFlag == 2)
                        {
                            sOutWord = sOutWord.Remove(nAccIndex, 1);
                        }
                    }
                    // check if stem-affix is found in dic
                    List <string> anals = Globals.ThisAddIn.HSWrapper.Analyze(sOutWord);
                    //if (Globals.ThisAddIn.Wrapper.Analyze_U(arrAnals, sOutWord) > 0)
                    if (anals.Count > 0)
                    {
                        foreach (string anal in anals)
                        {
                            arrAnals.Add(anal);
                        }
                        bFoundStem = true;
                    }
                }
            }

            return(bFoundStem);
        }