ACAT Developer Preview Beta 1 #151
Unanswered
michaelbeale-IL
asked this question in
Q&A
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
ACAT Developer Preview Beta - Release Notes
Comprehensive Feature and Architecture Changes
📊 Release Summary
This Developer Preview Beta represents a major architectural evolution of the Assistive Context-Aware Toolkit (ACAT), transitioning from version 3.12 to a modernized 4.0 foundation. The release includes:
🏗️ Major Architectural Changes
1. Build System Modernization
MSBuild Centralization
New:
Directory.Build.propsandDirectory.Build.targetsProject Reference Refactoring
$(SolutionDir)to$(SolutionRoot)across entire solutionStrong-Name Signing Infrastructure
STRONG_ASSEMBLY_CHECKconfiguration flagSIGNED_RELEASEapproach.gitignore)Post-Build Automation
PostBuildSolution.csproj2. Extension Framework Architecture
New Modular Extension System
ACAT.Extensions.UIProject (NEW)GenericScannerForm- Base class for scanner formsGenericUserControl- Extensible user control foundationScrollingText- New scrolling text controlKeyboardUserControl- Enhanced keyboard functionalityFontUtility(2,107 lines) - Comprehensive font management systemWindowMoveResizeScannerForm- Window manipulation UIWindowsExplorerContextMenu- File explorer integrationWindowsExplorerClipboardMenu,FileOpsMenu,NavigateMenuACAT.Extensions.OnboardingProject (NEW)OnboardingExtensionBase- Base class for custom onboarding flowsOnboardingWizard- Wizard orchestration engineOnboardingSequence/OnboardingSequenceItem- Configurable sequencesOnboardingWelcome- Welcome screenOnboardingLanguageSelect- Language selection (UserControlLanguageSelect)OnboardingSwitchSelect- Input device selectionOnboardingKeyboardConfigSelect- Keyboard layout selectionOnboardingHardwareSwitchSetup- Hardware switch configurationUserControlHardwareSwitchTest- Switch testing UIUserControlScanTimingsConfigure- Timing configurationOnboardingFinish- Completion screenExtension Loading Architecture
AppCommonclassIOnboardingExtension,IOnboardingUserControl,IOnboardingWizard3. Configuration System Redesign
ACATConfigNext (NEW)
A next-generation configuration application:
Modern UI Framework:
CustomControls.cs(894 lines) - Custom control implementationsSettingsForm.cs(644 lines) - Main settings interfaceGroupedSettingsPanel- Hierarchical settings organizationSettingsPanel- Individual setting panels with Save method exposureISettingsBinderinterface - Pluggable settings bindingEnhanced Preferences Management:
PreferencesBasetypePanel Configuration System
New Panel Configuration Files:
LanguageSettings.xml)PanelConfigMapEnhancements:ScannerCommonPanelManagerto create panels from configuration entriesStartupArgClass:PanelConfigproperty for detailed panel initialization4. Brain-Computer Interface (BCI) Architecture
BCI Actuator Refactoring
Exposed BCI Settings API:
Enhanced BCI Logging:
Signal Processing & Device Management
g.tec Device Support:
DAQ_gTecBCIto default to GTecBCIgTecDeviceTesterwith proper device closureDebug_TestGTECconfigurationMicroSecondTimerdefinitionBCI Signal Check UI:
BCI Calibration System:
BCIErrorinitialization using object initializer syntaxBCI Control Classes:
New BCI Device Support
UnicornDotNet Integration (NuGet 1.24.0, 111KB)
BrainFlow Synthetic Board Support
Camera Actuator Updates:
AcatCameraNativepackage (reduced from 99.7MB to 84.8MB)5. Localization & Internationalization
Spanish Language Support
Comprehensive Spanish Resources:
KeyboardAbcUserControl.xml,KeyboardQwertyUserControl.xmlPunctuationsScanner.xml(198 lines)LanguageSettings.xmlSpanish ConvAssist Integration:
spanish_conversation.db(880KB) - Conversation databasespanish_shorthand.db(311KB) - Shorthand databaseall_aac.txt(906 entries) - AAC vocabularysent_all_aac.txt(998 entries) - Sentence templatesfilter_words.txt(1,195 entries) - Word filteringstopwords.txt(313 entries) - Spanish stop wordsCulture Handling Refactor:
DefaultThreadCurrentUICulturewithCurrentUICulture6. Named Pipe Communication
Enhanced IPC Architecture
NamedPipeServerConvAssist.csimprovements:7. Logging & Diagnostics
Structured Logging System
Log Level Hierarchy:
GlobalPreferencesDirectoryWalker: Debug → Verbose for file discoveryUserControlManager: Removed debug logs for list modificationsAnimationPlayer: Updated logging levels for animation eventsFontsutility: Error → Info when no user fonts installedFileUtils: Enhanced assembly resolution logging contextEnhanced Logging Features:
WindowActivityMonitor: Replaced debug logs with verbose logsLayoutclassLog.cs: Enhanced logging setup8. Animation & UI Framework
Animation System Refactor
AnimationPlayer: Updated logging levelsUserControlManager: Prevent stopping top-level animationsonSelectbehavior inToolbarUserControlandToolsMenuUserControlAnimationManager: CorrectInterpretinstance initializationDashboardAppScanner: Added pause and resume handlingToolbar & Control Refactoring
ToolbarUserControlEnhancements:ToolbarBoxandDefaultButtonsBoxUserControlContainerFormRefactor (279 lines changed):Generic Control Foundation:
GenericUserControlDPI Scaling & Multi-Monitor
DpiScaling.cs(216 lines):DualMonitor.cs(28 lines changed):Widget & Display Improvements:
WidgetAttribute: Default font properties set to null/zero to avoid unintended behaviorScannerButtonBase: Font scaling only applied when font family is set (prevents null reference exceptions)9. Deployment & Installation
NSIS Installer System (NEW)
Replaced Python-based installer with native NSIS scripts:
NSIS_InstallerScript.nsi(296 lines):NSIS_InstallerScript-DEBUG.nsi(284 lines):Removed:
installGenerator.py(609 lines) - Legacy Python installerRemoved:
ndp481-web.exe- Bundled .NET installerDeployment Script Refactor
deploy.batRewrite (292 lines removed, enhanced version):Removed Legacy Scripts:
config.bat(3 lines)deployRedist.bat(9 lines)10. Dependency Management
Removed Binary Dependencies
Cleaned up redistributables in favor of NuGet:
Newtonsoft.Json.dll(711KB) - Now via NuGetSharpDX.dll,SharpDX.DXGI.dll,SharpDX.Direct2D1.dll,SharpDX.Direct3D11.dllColorSlider.dll(35KB)System.Security.Cryptography.Pkcs.dll(22KB)Removed Accord.NET Binaries
Deleted 100+ binary files from
External/Accord.3.8.0folders:11. Word Prediction & ConvAssist
ConvAssist Architecture
ConvAssist.zipwith new file size and hash12. Preferences & User Data
New User Data Management
shorthand_sqlite.db- User preferences database.gitignorefor per-user customizationPreferences.cswith better validationSystemPreferencesupdated for debug log settingsWidget Configuration
SwitchWindowbuttonLaunchAppbutton13. Security & Compliance
Security Fixes
SECURITY.md)Licensing & Attribution
License2.txt(166 lines) - Additional license informationlicense.txt(117 lines) - Updated Apache 2.0 license14. UI/UX Polish
Splash Screen
Splash.csenhanced to display correctly and bring to frontHardware Switch Setup
WidgetAttributevalue forSPLItem5inSentencePredictionUserControl.xmlUserControlHardwareSwitchSetupUserControlHardwareSwitchSetup_LoadResource & Documentation Updates
ACAT BCI User Guide.pdfPreferencesEditForminitialization15. Code Quality & Maintainability
Removed Legacy Code
HorizontalStripScanner2(unused scanner)IsForegroundApp()method inUser32Interop.csCross-Thread Safety
Windows.csScannerCommon.csActiveWordPredictor_EvtModeChangedmethodUsing Directives
UserControlKeyboardConfigSelect.csDashboardAppScanner.cs🔧 CI/CD & DevOps
GitHub Actions
build.yml- Main build pipelinedebug-installer.yml- Debug installer buildsbuild-release.yml(created) - Release buildsIssue Templates
issues_templatefolder with bug report templates📈 Version History Context
Building on releases:
👥 Contributors
🎯 Breaking Changes & Migration Notes
For Developers:
$(SolutionRoot)if customFor End Users:
🔗 Resources
⚙️ System Requirements
🚀 What's Next
This Developer Preview Beta establishes the foundation for ACAT 4.0. Future releases will build on this modernized architecture with:
Note: This is a Beta Release intended for developers and early adopters. Some features are subject to change based on community feedback.
This discussion was created from the release ACAT Developer Preview Beta 1.
Beta Was this translation helpful? Give feedback.
All reactions