Progress
Internationalization Guide


Using the Keyboard and Mouse

To accommodate the large number of characters in Chinese, Japanese, and Korean, applications that use these languages typically use an input method editor. An input method editor (IME) is a program that accepts a keystroke combination, displays double-byte characters, and lets the user select one of them (by using the mouse or the keyboard). An input method maps a sequence of keystrokes to double-byte characters.

NOTE: On Windows, Progress does not provide its own input methods or IMEs. Rather, Progress supports the input methods and IMEs that Microsoft supplies and those that fully support the Microsoft standard.

Data Flow In Single-byte Applications

Using an IME affects the flow of input through Progress applications. In single-byte applications, which do not need IMEs, input data travels as follows:

  1. From the user
  2. Through the keyboard
  3. Through the keyboard buffer
  4. Through the Progress application
  5. Through the Progress screen frame
  6. To the monitor screen

Once the input data reaches the keyboard buffer, the programmer can query it using the 4GL’s LASTKEY function and READKEY statement.

Figure 8–3 illustrates the flow of data through an application that does not use an input method editor.

Figure 8–3: Application That Does Not Use an Input Method Editor

Data Flow In Double-byte Applications

In double-byte applications, which use IMEs, input data travels as follows:

  1. From the user
  2. Through the keyboard
  3. Through the IME
  4. Through the keyboard buffer
  5. Though the Progress application
  6. Through the Progress screen frame
  7. To the screen

As before, once input data reaches the keyboard buffer, the programmer can query it using the 4GL’s LASTKEY function and READKEY statement.

Figure 8–4 illustrates the flow of data through an application that uses an input method editor.

Figure 8–4: Application That Uses an Input Method Editor


Copyright © 2004 Progress Software Corporation
www.progress.com
Voice: (781) 280-4000
Fax: (781) 280-4095