Add preferences stage
Preferences window allows user to configure application. For now it should include these settings:
- Application directory (default is
%USER_DIR%/.TimeRanger
) - Selected database (default is
%APP_DIR%/%VERSION_MAJOR%.%VERSION_MINOR%.db
) - History buffer size (undo/redo log size) [0-9999]
- Locale (default is system default)
- Show notifications (default is true) [boolean]
- Play sound on notification (default is true) [boolean]
- Hide to tray on close (default is true) [boolean]
- Auto-update (default is true) [boolean]
- Check updates button
Also we need a method to create a default configuration file and current configuration file which is copied from default if it doesn't exist in application directory. Also, a class holding configuration, methods for loading and saving configuration, etc.