Class Keyboarding

All Implemented Interfaces:
DateChangeListener, StudentChangeListener, ImageObserver, MenuContainer, Serializable, Accessible

Touch-typing and keyboarding skills assessment page.

Unlike other assessment pages that use phase-score grids, this page captures structured performance metrics for keyboarding practice sessions:

  • Program: Name of the typing curriculum or software (e.g., TypingClub, KeyBlaze, Braille2000)
  • Topic: Specific lesson, module, or exercise completed (e.g., "Home Row Mastery", "Lesson 12")
  • Speed (WPM): Words per minute achieved during the timed exercise
  • Accuracy (%): Percentage of characters typed correctly

Data Persistence:

Validation and Error Handling:

  • Speed and Accuracy fields must contain whole numbers (non-negative integers)
  • Empty speed/accuracy fields default to 0 for leniency
  • Invalid input triggers error dialogs and field focus for correction

The shared JLineGraph component is present for UI consistency but is not populated with keyboarding data (keyboarding does not use assessment parts). Implements DateChangeListener and StudentChangeListener for title updates when global selections change.

See Also:
  • Constructor Details

    • Keyboarding

      public Keyboarding(String studentName, LocalDate date, JLineGraph lineGraph)
      Construct the Keyboarding page for a specific student and session date.
      Parameters:
      studentName - selected student's display name (may be null)
      date - session date used for persisted results
      lineGraph - shared graph component (unused for keyboarding results)
  • Method Details