- add search menu with filter configuration and result actions
- add support for AND and OR filter relations
- add range filters for group number, average grade, and record book number
- update current collection menu to delegate search operations
- add bubble and merge sort algorithm selection
- add SortStrategySelectionWindow
- apply selected strategy to normal and parity sorting
- use dedicated comparators for student fields
- remove obsolete EvenOnlyMergeSortStrategy
- update collection menu labels and TODO placeholders
- move MainMenu to the root ui package
- add CurrentCollectionMenu for current collection operations
- move sorting components under collection/sorting
- add CollectionFileSaveWindow for saving collections to file
- update imports and menu delegation
- remove custom data collection and file path from AppState
- add FillStrategy abstraction for collection creation
- add ManualFillSettings and ManualFillStrategy
- add FileFillSettings and FileFillStrategy
- move collection size input into reusable CollectionSizeInputWindow
- update ManualDataSettingsWindow to manage its own editing state
- rename window base class usage to BaseModalWindow and update modal method calls
- add persistent CustomDataSettingsWindow instance to CreateCollectionMenu
- prepare custom data collection dynamically before showing the settings window
- apply custom data to AppState without immediately replacing mainCollection
- create mainCollection from prepared custom student data
- replace student preview message with collection preview window
- update input validation and StudentBuilder state handling
- rename collection-related methods and variables for clearer semantics
Add support for storing and configuring custom student data
collections in AppState.
Introduce a custom data settings window for entering and validating
student fields, selecting an object index, previewing student data,
and applying prepared data to the current collection.
Refactor collection creation to use reusable input handling and
update collection display and message window usage.