Admin Production rocket
Current Publication

CheckScreen Method

InfoConnect Desktop InfoConnect .NET API Guide V17.0
Rocket® InfoConnect Desktop (formerly a product of Micro Focus or formerly a product of Open Text) documentation, created before Rocket Software acquired certain products from OpenText, may include outdated references to "Micro Focus" or "OpenText", both of which are trademarks of OpenText or its affiliates. Rocket Software is not affiliated with Micro Focus or OpenText and has since rebranded these products as Rocket® products. You may also encounter outdated links in this documentation. If you do, please contact Rocket Support (support@rocketsoftware.com) for assistance.
CheckScreen Method
In This Topic
Reviews the current screen contents for misspellings.
Syntax

                     
                     
'Declaration
 

                     
                     
Sub CheckScreen() 

                  

                     
                     
'Usage
 

                     
                     
Dim instance As ISpellCheck
 
instance.CheckScreen()

                  

                     
                     
void CheckScreen()

                  
Example
using System;
using System.Drawing;
using System.Collections.Generic;
using System.Text;
using Attachmate.Reflection.Framework;
using Attachmate.Reflection.Emulation.IbmHosts;
using Attachmate.Reflection.UserInterface;
using Attachmate.Reflection.Productivity;

namespace ChangingThemes
{
    class Program
    {


        static void Main(string[] args)
        {
            //Start a visible instance of InfoConnect or get the instance running at the given channel name
            Application app = MyReflection.CreateApplication("myWorkspace", true);

            //Create a terminal from the session document file
            string sessionPath = Environment.GetEnvironmentVariable("USERPROFILE") + @"\Documents\Micro Focus\InfoConnect\demoSession.rd3x";
            IIbmTerminal terminal = (IIbmTerminal)app.CreateControl(sessionPath);

            //Make the session visible in the workspace
            IFrame frame = (IFrame)app.GetObject("Frame");
            frame.CreateView(terminal);

            IIbmScreen screen = terminal.Screen;

            IProductivity productivityTools = terminal.Productivity;

            ISpellCheck spelling = terminal.Productivity.SpellCheck;

            //enable SpellCheck
            spelling.Enabled = true;

            spelling.MainLanguage = SpellingLanguage.EnglishUS;


            //Set the maximum number of spelling suggestions for a misspelled word. 
            spelling.MaxSuggestions = 9;

            //Set the minimum length of fields reviewed for spelling errors.
            spelling.MinimumMatch = 5;

            //Specify a custom dictionary
            spelling.CustomDictionaryPath = Environment.GetEnvironmentVariable("USERPROFILE") + @"\Documents\Micro Focus\InfoConnect\customDictionary.tlx";

            //Add a word to the active custom dictionary. 
            //The setting has no effect if a custom dictionary isn't specified. 
            //After a word is added to the custom dictionary, it is no longer considered as being misspelled.
            spelling.AddToCustomDictionary("nrmlywrng");

            
            
            //Correct a word that begins with a lowercase letter and is followed by all uppercase letters
            spelling.CorrectAccidentalCapsLock = true;

            //Correct a word that begins with two or more uppercase letters 
            //to a word that begins with a single uppercase letter. 
            spelling.CorrectTwoInitialCaps = true;

            //exclude words that contain numerals from a spelling review
            spelling.IgnoreWordsWithNumbers = true;

            //exclude words that use only uppercase letters from a spelling review. 
            spelling.IgnoreAllUppercase = true;

            //Automatically reviews words for spelling errors as they are typed, 
            //adding wavy red lines under possibly misspelled words
            spelling.CheckSpellingAsType = true;

            //automatically correct spelling mistakes as they are typed,
            //provided that Auto Correct suggestions for the misspelled word are available.
            spelling.AutoCorrect = true;

            screen.BeforeSendControlKey += screen_BeforeSendControlKey;


            Console.ReadLine();
        }

        static void screen_BeforeSendControlKey(object sender, BeforeSendControlKeyEventArgs args)
        {
            IIbmScreen screen = (IIbmScreen)sender;
            ISpellCheck spelling = screen.Parent.Productivity.SpellCheck;

            //Spell check the current screen
            spelling.CheckScreen();

            Console.WriteLine("in event");



            MisspelledWord[] words = spelling.MisspelledWordCollection;

            foreach (MisspelledWord word in words)
            {
                Console.WriteLine(word.Word);
                if (word.Word == "PartNo") 
                {
                    Console.WriteLine("removing");
                    //Removing is not working
                    //Removes the specified misspelled word from the misspelled word list and
                    //clears the associated misspelling attribute from the screen.
                    //spelling.RemoveMisspelling(word);



                    //Replaces a misspelled word with a correctly spelled word at the specified location.
                    spelling.CorrectMisspelling(word, "Part Number");

                }
                
            }

            //Clear all misspellings from the current screen.
            spelling.RemoveAllMisspellings();
        }



    }
}









See Also