From c5b361e94d15f055483781c2dc2f1054a5e32232 Mon Sep 17 00:00:00 2001 From: BruebachL <44814898+BruebachL@users.noreply.github.com> Date: Thu, 2 Oct 2025 16:28:08 +0200 Subject: [PATCH] [Documentation] Doxygen regroup files and reorder group structure (#6208) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Regroup a whole bunch of files. Took 1 hour 38 minutes * Reorder the structure. Took 15 minutes * Link some more things. Took 18 minutes * More links. Took 14 minutes --------- Co-authored-by: Lukas BrĂ¼bach --- .../parsers/deck_link_to_api_transformer.h | 2 +- .../parsers/interface_json_deck_parser.h | 2 +- .../network/spoiler_background_updater.h | 2 +- cockatrice/src/client/tapped_out_interface.h | 4 +- cockatrice/src/deck/deck_stats_interface.h | 4 +- cockatrice/src/dialogs/dlg_connect.h | 2 +- .../dialogs/dlg_convert_deck_to_cod_format.h | 5 +- cockatrice/src/dialogs/dlg_create_game.h | 3 +- cockatrice/src/dialogs/dlg_edit_avatar.h | 2 +- cockatrice/src/dialogs/dlg_edit_password.h | 2 +- cockatrice/src/dialogs/dlg_filter_games.h | 3 +- .../dialogs/dlg_forgot_password_challenge.h | 2 +- .../src/dialogs/dlg_forgot_password_request.h | 2 +- .../src/dialogs/dlg_forgot_password_reset.h | 2 +- cockatrice/src/dialogs/dlg_load_deck.h | 3 +- .../dialogs/dlg_load_deck_from_clipboard.h | 3 +- .../src/dialogs/dlg_load_deck_from_website.h | 3 +- cockatrice/src/dialogs/dlg_load_remote_deck.h | 3 +- cockatrice/src/dialogs/dlg_register.h | 2 +- .../src/dialogs/dlg_startup_card_check.h | 2 +- cockatrice/src/dialogs/dlg_update.h | 2 +- cockatrice/src/dialogs/dlg_view_log.h | 2 +- cockatrice/src/interface/theme_manager.h | 3 +- cockatrice/src/server/chat_view/chat_view.h | 3 +- cockatrice/src/server/games_model.h | 1 - cockatrice/src/server/handle_public_servers.h | 2 +- cockatrice/src/server/pending_command.h | 2 +- .../remote/remote_decklist_tree_widget.h | 2 +- .../remote/remote_replay_list_tree_widget.h | 2 +- cockatrice/src/server/user/user_info_box.h | 1 - .../src/server/user/user_info_connection.h | 2 +- .../src/server/user/user_list_manager.h | 1 - cockatrice/src/server/user/user_list_widget.h | 1 - cockatrice/src/settings/cache_settings.h | 1 - .../src/settings/card_counter_settings.h | 2 +- .../src/settings/card_database_settings.h | 2 +- .../src/settings/card_override_settings.h | 2 +- cockatrice/src/settings/debug_settings.h | 3 +- cockatrice/src/settings/download_settings.h | 3 +- .../src/settings/game_filters_settings.h | 2 +- cockatrice/src/settings/layouts_settings.h | 2 +- cockatrice/src/settings/message_settings.h | 3 +- cockatrice/src/settings/recents_settings.h | 3 +- cockatrice/src/settings/servers_settings.h | 3 +- cockatrice/src/settings/shortcut_treeview.h | 2 +- cockatrice/src/settings/shortcuts_settings.h | 2 +- cockatrice/src/tabs/tab_account.h | 2 +- cockatrice/src/tabs/tab_admin.h | 2 +- cockatrice/src/tabs/tab_logs.h | 2 +- cockatrice/src/tabs/tab_message.h | 2 +- cockatrice/src/tabs/tab_room.h | 2 +- cockatrice/src/tabs/tab_server.h | 2 +- doc/doxygen-groups/doc_groups.dox | 772 +++++++++++------- 53 files changed, 516 insertions(+), 375 deletions(-) diff --git a/cockatrice/src/client/network/parsers/deck_link_to_api_transformer.h b/cockatrice/src/client/network/parsers/deck_link_to_api_transformer.h index 190fd5488..1e2372fd1 100644 --- a/cockatrice/src/client/network/parsers/deck_link_to_api_transformer.h +++ b/cockatrice/src/client/network/parsers/deck_link_to_api_transformer.h @@ -1,6 +1,6 @@ /** * @file deck_link_to_api_transformer.h - * @ingroup Network + * @ingroup ApiInterfaces * @brief TODO: Document this. */ diff --git a/cockatrice/src/client/network/parsers/interface_json_deck_parser.h b/cockatrice/src/client/network/parsers/interface_json_deck_parser.h index ace7e1623..e58f31bcc 100644 --- a/cockatrice/src/client/network/parsers/interface_json_deck_parser.h +++ b/cockatrice/src/client/network/parsers/interface_json_deck_parser.h @@ -1,6 +1,6 @@ /** * @file interface_json_deck_parser.h - * @ingroup Network + * @ingroup ApiInterfaces * @brief TODO: Document this. */ diff --git a/cockatrice/src/client/network/spoiler_background_updater.h b/cockatrice/src/client/network/spoiler_background_updater.h index e3d254528..387f93820 100644 --- a/cockatrice/src/client/network/spoiler_background_updater.h +++ b/cockatrice/src/client/network/spoiler_background_updater.h @@ -1,6 +1,6 @@ /** * @file spoiler_background_updater.h - * @ingroup Network + * @ingroup Client * @brief TODO: Document this. */ diff --git a/cockatrice/src/client/tapped_out_interface.h b/cockatrice/src/client/tapped_out_interface.h index 096015bed..43e5cdea3 100644 --- a/cockatrice/src/client/tapped_out_interface.h +++ b/cockatrice/src/client/tapped_out_interface.h @@ -1,8 +1,6 @@ /** * @file tapped_out_interface.h - * @ingroup ImportExport - * @ingroup Parsing - * @ingroup Network + * @ingroup ApiInterfaces * @brief TODO: Document this. */ diff --git a/cockatrice/src/deck/deck_stats_interface.h b/cockatrice/src/deck/deck_stats_interface.h index ccb530b5a..8a76b35fc 100644 --- a/cockatrice/src/deck/deck_stats_interface.h +++ b/cockatrice/src/deck/deck_stats_interface.h @@ -1,8 +1,6 @@ /** * @file deck_stats_interface.h - * @ingroup ImportExport - * @ingroup Parsing - * @ingroup Network + * @ingroup ApiInterfaces * @brief TODO: Document this. */ diff --git a/cockatrice/src/dialogs/dlg_connect.h b/cockatrice/src/dialogs/dlg_connect.h index 89d7a6943..b2afbef4d 100644 --- a/cockatrice/src/dialogs/dlg_connect.h +++ b/cockatrice/src/dialogs/dlg_connect.h @@ -1,6 +1,6 @@ /** * @file dlg_connect.h - * @ingroup NetworkDialogs + * @ingroup ConnectionDialogs * @brief TODO: Document this. */ diff --git a/cockatrice/src/dialogs/dlg_convert_deck_to_cod_format.h b/cockatrice/src/dialogs/dlg_convert_deck_to_cod_format.h index e608c247e..7c5ea303a 100644 --- a/cockatrice/src/dialogs/dlg_convert_deck_to_cod_format.h +++ b/cockatrice/src/dialogs/dlg_convert_deck_to_cod_format.h @@ -1,8 +1,7 @@ /** * @file dlg_convert_deck_to_cod_format.h - * @ingroup Dialogs - * @ingroup DeckStorageWidgets - * @ingroup ImportExport + * @ingroup LocalDeckStorageDialogs + * @ingroup Lobby * @brief TODO: Document this. */ diff --git a/cockatrice/src/dialogs/dlg_create_game.h b/cockatrice/src/dialogs/dlg_create_game.h index 24b972fe0..ac7592b94 100644 --- a/cockatrice/src/dialogs/dlg_create_game.h +++ b/cockatrice/src/dialogs/dlg_create_game.h @@ -1,7 +1,6 @@ /** * @file dlg_create_game.h - * @ingroup NetworkDialogs - * @ingroup Lobby + * @ingroup RoomDialogs * @brief TODO: Document this. */ diff --git a/cockatrice/src/dialogs/dlg_edit_avatar.h b/cockatrice/src/dialogs/dlg_edit_avatar.h index c96d56571..641b736dc 100644 --- a/cockatrice/src/dialogs/dlg_edit_avatar.h +++ b/cockatrice/src/dialogs/dlg_edit_avatar.h @@ -1,6 +1,6 @@ /** * @file dlg_edit_avatar.h - * @ingroup NetworkDialogs + * @ingroup AccountDialogs * @brief TODO: Document this. */ diff --git a/cockatrice/src/dialogs/dlg_edit_password.h b/cockatrice/src/dialogs/dlg_edit_password.h index 8f7b2b9aa..38f782228 100644 --- a/cockatrice/src/dialogs/dlg_edit_password.h +++ b/cockatrice/src/dialogs/dlg_edit_password.h @@ -1,6 +1,6 @@ /** * @file dlg_edit_password.h - * @ingroup NetworkDialogs + * @ingroup AccountDialogs * @brief TODO: Document this. */ diff --git a/cockatrice/src/dialogs/dlg_filter_games.h b/cockatrice/src/dialogs/dlg_filter_games.h index 1205a89f2..bba68b973 100644 --- a/cockatrice/src/dialogs/dlg_filter_games.h +++ b/cockatrice/src/dialogs/dlg_filter_games.h @@ -1,7 +1,6 @@ /** * @file dlg_filter_games.h - * @ingroup Lobby - * @ingroup NetworkDialogs + * @ingroup RoomDialogs * @brief TODO: Document this. */ diff --git a/cockatrice/src/dialogs/dlg_forgot_password_challenge.h b/cockatrice/src/dialogs/dlg_forgot_password_challenge.h index fdb9514c0..88427a7c9 100644 --- a/cockatrice/src/dialogs/dlg_forgot_password_challenge.h +++ b/cockatrice/src/dialogs/dlg_forgot_password_challenge.h @@ -1,6 +1,6 @@ /** * @file dlg_forgot_password_challenge.h - * @ingroup NetworkDialogs + * @ingroup AccountDialogs * @brief TODO: Document this. */ diff --git a/cockatrice/src/dialogs/dlg_forgot_password_request.h b/cockatrice/src/dialogs/dlg_forgot_password_request.h index a45f6f200..da4d9e726 100644 --- a/cockatrice/src/dialogs/dlg_forgot_password_request.h +++ b/cockatrice/src/dialogs/dlg_forgot_password_request.h @@ -1,6 +1,6 @@ /** * @file dlg_forgot_password_request.h - * @ingroup NetworkDialogs + * @ingroup AccountDialogs * @brief TODO: Document this. */ diff --git a/cockatrice/src/dialogs/dlg_forgot_password_reset.h b/cockatrice/src/dialogs/dlg_forgot_password_reset.h index 40d29cf94..ede22e2aa 100644 --- a/cockatrice/src/dialogs/dlg_forgot_password_reset.h +++ b/cockatrice/src/dialogs/dlg_forgot_password_reset.h @@ -1,6 +1,6 @@ /** * @file dlg_forgot_password_reset.h - * @ingroup NetworkDialogs + * @ingroup AccountDialogs * @brief TODO: Document this. */ diff --git a/cockatrice/src/dialogs/dlg_load_deck.h b/cockatrice/src/dialogs/dlg_load_deck.h index 9d2ad2924..b103f6a56 100644 --- a/cockatrice/src/dialogs/dlg_load_deck.h +++ b/cockatrice/src/dialogs/dlg_load_deck.h @@ -1,7 +1,6 @@ /** * @file dlg_load_deck.h - * @ingroup Dialogs - * @ingroup ImportExport + * @ingroup LocalDeckStorageDialogs * @ingroup Lobby * @brief TODO: Document this. */ diff --git a/cockatrice/src/dialogs/dlg_load_deck_from_clipboard.h b/cockatrice/src/dialogs/dlg_load_deck_from_clipboard.h index 755cf9f77..7873d4bf3 100644 --- a/cockatrice/src/dialogs/dlg_load_deck_from_clipboard.h +++ b/cockatrice/src/dialogs/dlg_load_deck_from_clipboard.h @@ -1,7 +1,6 @@ /** * @file dlg_load_deck_from_clipboard.h - * @ingroup Dialogs - * @ingroup ImportExport + * @ingroup LocalDeckStorageDialogs * @ingroup Lobby * @brief TODO: Document this. */ diff --git a/cockatrice/src/dialogs/dlg_load_deck_from_website.h b/cockatrice/src/dialogs/dlg_load_deck_from_website.h index 6e51eb736..84adb760f 100644 --- a/cockatrice/src/dialogs/dlg_load_deck_from_website.h +++ b/cockatrice/src/dialogs/dlg_load_deck_from_website.h @@ -1,7 +1,6 @@ /** * @file dlg_load_deck_from_website.h - * @ingroup Dialogs - * @ingroup ImportExport + * @ingroup RemoteDeckStorageDialogs * @ingroup Lobby * @brief TODO: Document this. */ diff --git a/cockatrice/src/dialogs/dlg_load_remote_deck.h b/cockatrice/src/dialogs/dlg_load_remote_deck.h index f997bbb77..372db5ba8 100644 --- a/cockatrice/src/dialogs/dlg_load_remote_deck.h +++ b/cockatrice/src/dialogs/dlg_load_remote_deck.h @@ -1,7 +1,6 @@ /** * @file dlg_load_remote_deck.h - * @ingroup Dialogs - * @ingroup ImportExport + * @ingroup RemoteDeckStorageDialogs * @ingroup Lobby * @brief TODO: Document this. */ diff --git a/cockatrice/src/dialogs/dlg_register.h b/cockatrice/src/dialogs/dlg_register.h index 89bb7930f..a614386fc 100644 --- a/cockatrice/src/dialogs/dlg_register.h +++ b/cockatrice/src/dialogs/dlg_register.h @@ -1,6 +1,6 @@ /** * @file dlg_register.h - * @ingroup NetworkDialogs + * @ingroup AccountDialogs * @brief TODO: Document this. */ diff --git a/cockatrice/src/dialogs/dlg_startup_card_check.h b/cockatrice/src/dialogs/dlg_startup_card_check.h index ada093df2..44fc59d58 100644 --- a/cockatrice/src/dialogs/dlg_startup_card_check.h +++ b/cockatrice/src/dialogs/dlg_startup_card_check.h @@ -1,6 +1,6 @@ /** * @file dlg_startup_card_check.h - * @ingroup NetworkDialogs + * @ingroup CardDatabaseUpdateDialogs * @brief TODO: Document this. */ diff --git a/cockatrice/src/dialogs/dlg_update.h b/cockatrice/src/dialogs/dlg_update.h index fd5901e39..45ae92178 100644 --- a/cockatrice/src/dialogs/dlg_update.h +++ b/cockatrice/src/dialogs/dlg_update.h @@ -1,6 +1,6 @@ /** * @file dlg_update.h - * @ingroup NetworkDialogs + * @ingroup ClientUpdateDialogs * @brief TODO: Document this. */ diff --git a/cockatrice/src/dialogs/dlg_view_log.h b/cockatrice/src/dialogs/dlg_view_log.h index f8f64c561..f0b900527 100644 --- a/cockatrice/src/dialogs/dlg_view_log.h +++ b/cockatrice/src/dialogs/dlg_view_log.h @@ -1,6 +1,6 @@ /** * @file dlg_view_log.h - * @ingroup NetworkDialogs + * @ingroup ServerLogDialogs * @brief TODO: Document this. */ diff --git a/cockatrice/src/interface/theme_manager.h b/cockatrice/src/interface/theme_manager.h index c14042536..594ede2bf 100644 --- a/cockatrice/src/interface/theme_manager.h +++ b/cockatrice/src/interface/theme_manager.h @@ -1,7 +1,6 @@ /** * @file theme_manager.h - * @ingroup Core - * @ingroup Settings + * @ingroup CoreSettings * @brief TODO: Document this. */ diff --git a/cockatrice/src/server/chat_view/chat_view.h b/cockatrice/src/server/chat_view/chat_view.h index 87ff31642..924c2ff42 100644 --- a/cockatrice/src/server/chat_view/chat_view.h +++ b/cockatrice/src/server/chat_view/chat_view.h @@ -1,8 +1,7 @@ /** * @file chat_view.h - * @ingroup Network + * @ingroup NetworkingWidgets * @ingroup Lobby - * @ingroup Widgets * @brief TODO: Document this. */ diff --git a/cockatrice/src/server/games_model.h b/cockatrice/src/server/games_model.h index 155ede3f5..03717bce8 100644 --- a/cockatrice/src/server/games_model.h +++ b/cockatrice/src/server/games_model.h @@ -1,7 +1,6 @@ /** * @file games_model.h * @ingroup Lobby - * @ingroup Network * @brief TODO: Document this. */ diff --git a/cockatrice/src/server/handle_public_servers.h b/cockatrice/src/server/handle_public_servers.h index a182a70c3..f06bb3ff6 100644 --- a/cockatrice/src/server/handle_public_servers.h +++ b/cockatrice/src/server/handle_public_servers.h @@ -1,6 +1,6 @@ /** * @file handle_public_servers.h - * @ingroup Network + * @ingroup Server * @brief TODO: Document this. */ diff --git a/cockatrice/src/server/pending_command.h b/cockatrice/src/server/pending_command.h index de96adb39..df452b10a 100644 --- a/cockatrice/src/server/pending_command.h +++ b/cockatrice/src/server/pending_command.h @@ -1,6 +1,6 @@ /** * @file pending_command.h - * @ingroup Network + * @ingroup Messages * @brief TODO: Document this. */ diff --git a/cockatrice/src/server/remote/remote_decklist_tree_widget.h b/cockatrice/src/server/remote/remote_decklist_tree_widget.h index 8e2bdbcf8..0153f0414 100644 --- a/cockatrice/src/server/remote/remote_decklist_tree_widget.h +++ b/cockatrice/src/server/remote/remote_decklist_tree_widget.h @@ -1,6 +1,6 @@ /** * @file remote_decklist_tree_widget.h - * @ingroup Client + * @ingroup NetworkingWidgets * @ingroup DeckStorageWidgets * @brief TODO: Document this. */ diff --git a/cockatrice/src/server/remote/remote_replay_list_tree_widget.h b/cockatrice/src/server/remote/remote_replay_list_tree_widget.h index b2e666fee..ccff71c47 100644 --- a/cockatrice/src/server/remote/remote_replay_list_tree_widget.h +++ b/cockatrice/src/server/remote/remote_replay_list_tree_widget.h @@ -2,7 +2,7 @@ * @file remote_replay_list_tree_widget.h * @ingroup DeckStorageWidgets * @ingroup Replays - * @ingroup Client + * @ingroup NetworkingWidgets * @brief TODO: Document this. */ diff --git a/cockatrice/src/server/user/user_info_box.h b/cockatrice/src/server/user/user_info_box.h index 47dc70065..d3d926bed 100644 --- a/cockatrice/src/server/user/user_info_box.h +++ b/cockatrice/src/server/user/user_info_box.h @@ -1,6 +1,5 @@ /** * @file user_info_box.h - * @ingroup Network * @ingroup Lobby * @brief TODO: Document this. */ diff --git a/cockatrice/src/server/user/user_info_connection.h b/cockatrice/src/server/user/user_info_connection.h index 8a9cf4007..90be05570 100644 --- a/cockatrice/src/server/user/user_info_connection.h +++ b/cockatrice/src/server/user/user_info_connection.h @@ -1,6 +1,6 @@ /** * @file user_info_connection.h - * @ingroup Network + * @ingroup Client * @brief TODO: Document this. */ diff --git a/cockatrice/src/server/user/user_list_manager.h b/cockatrice/src/server/user/user_list_manager.h index fecb8c63c..b02a43808 100644 --- a/cockatrice/src/server/user/user_list_manager.h +++ b/cockatrice/src/server/user/user_list_manager.h @@ -1,6 +1,5 @@ /** * @file user_list_manager.h - * @ingroup Network * @ingroup Lobby * @brief TODO: Document this. */ diff --git a/cockatrice/src/server/user/user_list_widget.h b/cockatrice/src/server/user/user_list_widget.h index 063bac7dc..8a1674549 100644 --- a/cockatrice/src/server/user/user_list_widget.h +++ b/cockatrice/src/server/user/user_list_widget.h @@ -1,6 +1,5 @@ /** * @file user_list_widget.h - * @ingroup Network * @ingroup Lobby * @brief TODO: Document this. */ diff --git a/cockatrice/src/settings/cache_settings.h b/cockatrice/src/settings/cache_settings.h index 52bf1bc12..93cd5a837 100644 --- a/cockatrice/src/settings/cache_settings.h +++ b/cockatrice/src/settings/cache_settings.h @@ -1,6 +1,5 @@ /** * @file cache_settings.h - * @ingroup Network * @ingroup Settings * @brief TODO: Document this. */ diff --git a/cockatrice/src/settings/card_counter_settings.h b/cockatrice/src/settings/card_counter_settings.h index 3713f8e47..94baeb9e2 100644 --- a/cockatrice/src/settings/card_counter_settings.h +++ b/cockatrice/src/settings/card_counter_settings.h @@ -1,6 +1,6 @@ /** * @file card_counter_settings.h - * @ingroup Settings + * @ingroup GameSettings * @brief TODO: Document this. */ diff --git a/cockatrice/src/settings/card_database_settings.h b/cockatrice/src/settings/card_database_settings.h index 0d800b664..5bc7eb59f 100644 --- a/cockatrice/src/settings/card_database_settings.h +++ b/cockatrice/src/settings/card_database_settings.h @@ -1,7 +1,7 @@ /** * @file card_database_settings.h * @ingroup CardDatabase - * @ingroup Settings + * @ingroup CardSettings * @brief TODO: Document this. */ diff --git a/cockatrice/src/settings/card_override_settings.h b/cockatrice/src/settings/card_override_settings.h index ba4ef7095..90a1a1681 100644 --- a/cockatrice/src/settings/card_override_settings.h +++ b/cockatrice/src/settings/card_override_settings.h @@ -1,6 +1,6 @@ /** * @file card_override_settings.h - * @ingroup Settings + * @ingroup CardSettings * @brief TODO: Document this. */ diff --git a/cockatrice/src/settings/debug_settings.h b/cockatrice/src/settings/debug_settings.h index 596708f60..2087b16b3 100644 --- a/cockatrice/src/settings/debug_settings.h +++ b/cockatrice/src/settings/debug_settings.h @@ -1,7 +1,6 @@ /** * @file debug_settings.h - * @ingroup Core - * @ingroup Settings + * @ingroup CoreSettings * @brief TODO: Document this. */ diff --git a/cockatrice/src/settings/download_settings.h b/cockatrice/src/settings/download_settings.h index 6e212954f..a67a7f9c7 100644 --- a/cockatrice/src/settings/download_settings.h +++ b/cockatrice/src/settings/download_settings.h @@ -1,7 +1,6 @@ /** * @file download_settings.h - * @ingroup Network - * @ingroup Settings + * @ingroup NetworkSettings * @brief TODO: Document this. */ diff --git a/cockatrice/src/settings/game_filters_settings.h b/cockatrice/src/settings/game_filters_settings.h index b533c5045..2a2c09c84 100644 --- a/cockatrice/src/settings/game_filters_settings.h +++ b/cockatrice/src/settings/game_filters_settings.h @@ -1,7 +1,7 @@ /** * @file game_filters_settings.h * @ingroup Lobby - * @ingroup Settings + * @ingroup GameSettings * @brief TODO: Document this. */ diff --git a/cockatrice/src/settings/layouts_settings.h b/cockatrice/src/settings/layouts_settings.h index 89fec2577..5feb0f4f6 100644 --- a/cockatrice/src/settings/layouts_settings.h +++ b/cockatrice/src/settings/layouts_settings.h @@ -1,6 +1,6 @@ /** * @file layouts_settings.h - * @ingroup Settings + * @ingroup CoreSettings * @brief TODO: Document this. */ diff --git a/cockatrice/src/settings/message_settings.h b/cockatrice/src/settings/message_settings.h index b37e812bb..265c455e1 100644 --- a/cockatrice/src/settings/message_settings.h +++ b/cockatrice/src/settings/message_settings.h @@ -1,7 +1,6 @@ /** * @file message_settings.h - * @ingroup Network - * @ingroup Settings + * @ingroup NetworkSettings * @brief TODO: Document this. */ diff --git a/cockatrice/src/settings/recents_settings.h b/cockatrice/src/settings/recents_settings.h index 5650af349..23c8f1a9f 100644 --- a/cockatrice/src/settings/recents_settings.h +++ b/cockatrice/src/settings/recents_settings.h @@ -1,7 +1,6 @@ /** * @file recents_settings.h - * @ingroup DeckStorage - * @ingroup Settings + * @ingroup DeckSettings * @brief TODO: Document this. */ diff --git a/cockatrice/src/settings/servers_settings.h b/cockatrice/src/settings/servers_settings.h index 19f648169..4d92c4647 100644 --- a/cockatrice/src/settings/servers_settings.h +++ b/cockatrice/src/settings/servers_settings.h @@ -1,7 +1,6 @@ /** * @file servers_settings.h - * @ingroup Network - * @ingroup Settings + * @ingroup NetworkSettings * @brief TODO: Document this. */ diff --git a/cockatrice/src/settings/shortcut_treeview.h b/cockatrice/src/settings/shortcut_treeview.h index 07436536a..229bf2ed2 100644 --- a/cockatrice/src/settings/shortcut_treeview.h +++ b/cockatrice/src/settings/shortcut_treeview.h @@ -1,6 +1,6 @@ /** * @file shortcut_treeview.h - * @ingroup Settings + * @ingroup CoreSettings * @brief TODO: Document this. */ diff --git a/cockatrice/src/settings/shortcuts_settings.h b/cockatrice/src/settings/shortcuts_settings.h index a25379139..b6820798d 100644 --- a/cockatrice/src/settings/shortcuts_settings.h +++ b/cockatrice/src/settings/shortcuts_settings.h @@ -1,6 +1,6 @@ /** * @file shortcuts_settings.h - * @ingroup Settings + * @ingroup CoreSettings * @brief TODO: Document this. */ diff --git a/cockatrice/src/tabs/tab_account.h b/cockatrice/src/tabs/tab_account.h index e72d5df4f..4e6abb24b 100644 --- a/cockatrice/src/tabs/tab_account.h +++ b/cockatrice/src/tabs/tab_account.h @@ -1,6 +1,6 @@ /** * @file tab_account.h - * @ingroup NetworkingTabs + * @ingroup AccountTabs * @brief TODO: Document this. */ diff --git a/cockatrice/src/tabs/tab_admin.h b/cockatrice/src/tabs/tab_admin.h index 22ba9280d..60722b778 100644 --- a/cockatrice/src/tabs/tab_admin.h +++ b/cockatrice/src/tabs/tab_admin.h @@ -1,6 +1,6 @@ /** * @file tab_admin.h - * @ingroup NetworkingTabs + * @ingroup ServerTabs * @brief TODO: Document this. */ diff --git a/cockatrice/src/tabs/tab_logs.h b/cockatrice/src/tabs/tab_logs.h index f548473e1..f87739051 100644 --- a/cockatrice/src/tabs/tab_logs.h +++ b/cockatrice/src/tabs/tab_logs.h @@ -1,6 +1,6 @@ /** * @file tab_logs.h - * @ingroup NetworkingTabs + * @ingroup ServerTabs * @brief TODO: Document this. */ diff --git a/cockatrice/src/tabs/tab_message.h b/cockatrice/src/tabs/tab_message.h index ca7306622..098089e46 100644 --- a/cockatrice/src/tabs/tab_message.h +++ b/cockatrice/src/tabs/tab_message.h @@ -1,6 +1,6 @@ /** * @file tab_message.h - * @ingroup NetworkingTabs + * @ingroup MessagingTabs * @brief TODO: Document this. */ diff --git a/cockatrice/src/tabs/tab_room.h b/cockatrice/src/tabs/tab_room.h index 2c20e3273..3eb1b580f 100644 --- a/cockatrice/src/tabs/tab_room.h +++ b/cockatrice/src/tabs/tab_room.h @@ -1,6 +1,6 @@ /** * @file tab_room.h - * @ingroup NetworkingTabs + * @ingroup RoomTabs * @ingroup Lobby * @brief TODO: Document this. */ diff --git a/cockatrice/src/tabs/tab_server.h b/cockatrice/src/tabs/tab_server.h index c7d11efbc..39e55fd26 100644 --- a/cockatrice/src/tabs/tab_server.h +++ b/cockatrice/src/tabs/tab_server.h @@ -1,6 +1,6 @@ /** * @file tab_server.h - * @ingroup NetworkingTabs + * @ingroup ServerTabs * @brief TODO: Document this. */ diff --git a/doc/doxygen-groups/doc_groups.dox b/doc/doxygen-groups/doc_groups.dox index 11e50a400..ec5158c69 100644 --- a/doc/doxygen-groups/doc_groups.dox +++ b/doc/doxygen-groups/doc_groups.dox @@ -19,74 +19,390 @@ */ /* ------------------------------------------------------------------ */ -/* Networking */ +/* UI */ /* ------------------------------------------------------------------ */ /** - * @defgroup Network Networking - * @brief Networking components for client/server communication. + * @defgroup UI User Interface + * @brief Graphical interface components built with Qt. * - * Contains all systems related to communication between client and server. - * This includes lobby and room management, server interaction logic, and - * message handling infrastructure based on protobuf. + * Includes high-level widgets, dialogs, models, and editors that form + * the interactive frontend of Cockatrice. */ /** - * @defgroup ApiResponses API Responses - * @ingroup Network - * @brief Structures representing API responses. + * @defgroup Widgets Widgets + * @ingroup UI + * @brief General-purpose Qt widgets. * - * Encapsulates the data models for networking API responses, - * providing consistent interfaces for parsing and handling results. + * A collection of reusable widgets used throughout the application, + * such as CardInfoPictureFoilWidget, DeckAnalyticsWidget, and others. */ /** - * @defgroup ApiResponseDisplayWidgets API Response Display Widgets - * @ingroup ApiResponses - * @brief Qt widgets for displaying API responses. + * @defgroup Dialogs Dialogs + * @ingroup Widgets + * @brief Application dialogs. * - * Provides user interface components that render and present API response - * data to the user in a structured and interactive way. + * Includes dialogs for card prices, DeckList import/export, + * settings, and other modal user interactions. */ /** - * @defgroup Messages Protocol Messages - * @ingroup Network - * @brief Protocol message definitions and handlers. - * - * Contains the generated protobuf messages and supporting code used - * to encode, decode, and process communication between client and server. + * @defgroup NetworkDialogs Networking Dialogs + * @ingroup Dialogs + * @ingroup NetworkingWidgets + * @brief Dialogs related to a RemoteClient interacting with a Server. */ /** - * @defgroup Client Client - * @ingroup Network - * @brief The Cockatrice client application. - * - * Handles all client-side communication with the server. + * @defgroup ClientUpdateDialogs Client Update Dialogs + * @ingroup NetworkDialogs + * @brief Dialogs relating to the client updating. */ /** - * @defgroup ClientUpdates Client Updates - * @ingroup Client - * @brief Client updates. + * @defgroup CardDatabaseUpdateDialogs Card Database Update Dialogs + * @ingroup NetworkDialogs + * @ingroup CardDatabaseWidgets + * @brief Dialogs relating to the CardDatabase updating. */ /** - * @defgroup Server Server - * @ingroup Network - * @brief The Cockatrice server application. - * - * Provides the authoritative game backend, handling authentication, - * lobbies, game rooms, and relaying state between connected clients. + * @defgroup ConnectionDialogs Connection Dialogs + * @ingroup NetworkDialogs + * @brief Dialogs relating to the RemoteClient%s connection to a Server. */ /** - * @defgroup Lobby Lobby & Rooms - * @ingroup Network - * @brief Multiplayer lobby and room management. + * @defgroup AccountDialogs Account Dialogs + * @ingroup NetworkDialogs + * @brief Dialogs relating to account information on a Server. + */ + +/** + * @defgroup RoomDialogs + * @ingroup NetworkDialogs + * @brief Dialogs relating to a RemoteClient interacting with a Room on a Server. + */ + +/** + * @defgroup ServerLogDialogs Server Log Dialogs + * @ingroup NetworkDialogs + * @brief Dialogs relating to a RemoteClient interacting a Server%'s logs. + */ + +/** + * @defgroup Tabs Tabs + * @ingroup Widgets + * @brief Tabbed UI components. * - * Manages creation and interaction of Game lobbies and room state synchronization with the server. + * Provides tab-based interfaces for organizing and navigating + * between multiple views in the application. + */ + +/** + * @defgroup DeckEditorTabs Deck Editor Tabs + * @ingroup Tabs + * @ingroup DeckEditors + * @brief Tabs for the DeckList Editors + */ + +/** + * @defgroup NetworkingTabs Networking Tabs + * @ingroup Tabs + * @ingroup NetworkingWidgets + * @brief Tabs related to a RemoteClient interacting with a Server. + */ + +/** + * @defgroup ServerTabs Server Tabs + * @ingroup NetworkingTabs + * @brief Tabs related to a Server. + */ + +/** + * @defgroup AccountTabs Account Tabs + * @ingroup NetworkingTabs + * @brief Tabs related to user account information. + */ + +/** + * @defgroup RoomTabs Room Tabs + * @ingroup NetworkingTabs + * @ingroup RoomWidgets + * @brief Tabs related to a Room on a Server. + */ + +/** + * @defgroup MessagingTabs Message Tabs + * @ingroup NetworkingTabs + * @brief Tabs related to users sending messages to each other. + */ + +/** + * @defgroup PictureLoader Card Picture Loader + * @ingroup UI + * @ingroup Cards + * @brief The PictureLoader for CardInfoPictureWidget%s and CardItem%s + */ + +/* ------------------------------------------------------------------ */ +/* Cards */ +/* ------------------------------------------------------------------ */ + +/** + * @defgroup Cards Cards + * @brief Representation of individual cards and their state. + * + * Defines CardInfo and related objects which hold attributes, metadata, and runtime state within + * both the CardDatabase and the Game engine. + */ + +/** + * @defgroup CardSets Card Sets + * @ingroup Cards + * @brief CardSet%s. + */ + +/** + * @defgroup CardPrintings Card Printings + * @ingroup Cards + * @brief Information about specific printings of CardInfo%s via PrintingInfo and ExactCard. + */ + +/** + * @defgroup CardWidgets Card Widgets + * @ingroup Widgets + * @ingroup Cards + * @brief Widgets for CardInfo display and interaction. + * + * Provides UI components that render individual CardInfo%s, handle + * interactions, and display card details within the application. + */ + +/** + * @defgroup CardExtraInfoWidgets Card Extra Info Widgets + * @ingroup CardWidgets + * @brief Widgets for displaying additional information about CardInfo%s. + * + * Displays additional data associated with CardInfo%s or data in a different form. + */ + +/** + * @defgroup CardDatabase Card Database + * @ingroup Cards + * @brief Core CardDatabase and loaders. + * + * Provides the underlying data models for cards, including loading, + * parsing, and managing the complete CardDatabase used in the application. + */ + +/** + * @defgroup CardDatabaseModels Models + * @ingroup CardDatabase + * @brief Qt models for CardDatabase access. + * + * Supplies Qt model abstractions for presenting CardInfo data in views, + * supporting filtering, sorting, and data binding to widgets. + */ + +/** + * @defgroup CardDatabaseModelFilters Filters + * @ingroup CardDatabaseModels + * @brief Filters for CardDatabase models. + * + * Provides reusable filtering components for Qt models, enabling + * refined queries and customized CardDatabase views. + */ + +/** + * @defgroup CardDatabaseParsers Parsers + * @ingroup CardDatabase + * @brief Parsers for CardInfo data. + * + * Implements parsers for CardDatabase structures, handling the + * transformation of raw data into structured objects and models. + */ + +/** + * @defgroup CardDatabaseWidgets Card Database Widgets + * @ingroup Widgets + * @ingroup CardDatabase + * @brief Widgets for browsing and selecting CardInfo%s in the CardDatabase. + * + * Provides UI components for interacting with the CardDatabase, + * including search, filtering, and browsing in tabular or list views. + */ + +/** + * @defgroup VisualCardDatabaseWidgets Visual Card Database Widgets + * @ingroup CardDatabaseWidgets + * @brief VisualDatabaseDisplayWidget and related helper classes. + * + * Enhances card browsing with graphical interfaces, offering + * image-based and grid-based views for selecting cards. + */ + +/* ------------------------------------------------------------------ */ +/* Decks */ +/* ------------------------------------------------------------------ */ + +/** + * @defgroup Decks Deck Management + * @brief DeckList handling, persistence, and tooling. + * + * Covers the lifecycle of DeckList%s: loading, saving, editing, import/export, + * and long-term persistence, including both textual and visual editors. + */ + +/** + * @defgroup DeckModels Deck Models + * @ingroup Decks + * @brief Qt Models relating to DeckList. + */ + +/** + * @defgroup DeckEditors Deck Editors + * @ingroup Decks + * @brief Editors for creating and modifying a DeckList. + * + * Provides visual and textual editors for building, modifying, + * and analyzing DeckList%s. Includes support for card search, + * sorting, and filtering of DeckList contents. + */ + +/** + * @defgroup DeckEditorWidgets Deck Editor Widgets + * @ingroup Widgets + * @ingroup DeckEditors + * @brief Supporting widgets for DeckList editors. + * + * Contains specialized UI components that extend DeckList editors with + * interactive functionality, data views, and user interaction tools. + */ + +/** + * @defgroup DeckEditorTabs Deck Editor Tabs + * @ingroup DeckEditorWidgets + * @brief Tabs which implement AbstractTabDeckEditor to provide DeckList editing functionality. + */ + +/** + * @defgroup DeckEditorAnalyticsWidgets Deck Editor Analytics Widgets + * @ingroup DeckEditorWidgets + * @brief Widgets for analyzing a DeckList. + * + * Provides visualization and statistical tools for analyzing DeckList%s. + */ + +/** + * @defgroup DeckEditorCardGroupWidgets Card Group Display Widgets + * @ingroup DeckEditorWidgets + * @brief Widgets for displaying groups of cards. + * + * Provides interactive views that organize and display cards in groups, + * enabling filtering, sorting, and direct manipulation of DeckList sections. + */ + +/** + * @defgroup PrintingWidgets Printing Widgets + * @ingroup DeckEditorWidgets + * @ingroup Widgets + * @brief Widgets for handling PrintingInfo of cards in a DeckList. + * + * Manages the display and editing of card printing information within a DeckList, + * including editions, variations, and preferences. + */ + +/** + * @defgroup DeckStorage Deck Storage + * @ingroup Decks + * @brief Systems for storing a DeckList on a local file system or remote service. + */ + +/** + * @defgroup LocalDeckStorage Local Deck Storage + * @ingroup DeckStorage + * @brief Systems for storing a DeckList on a local file system. + * + * Handles the persistence of a DeckList, providing file-based storage, + * metadata tracking, and tagging functionality. + */ + +/** + * @defgroup LocalDeckStorageWidgets Local Deck Storage Widgets + * @ingroup Widgets + * @ingroup LocalDeckStorage + * @brief Widgets for browsing and managing stored DeckList%s. + * + * Provides list and tree-based views for exploring stored DeckList%s, + * including tagging, searching, and preview functionality. + */ + + /** + * @defgroup LocalDeckStorageDialogs Local Deck Storage Dialogs + * @ingroup LocalDeckStorageWidgets + * @ingroup ImportExport + * @ingroup Lobby + * @brief Dialogs related to interacting with DeckList%s on a filesystem or in a remote location. + */ + +/** + * @defgroup VisualDeckStorageWidgets Visual Deck Storage Widgets + * @ingroup LocalDeckStorageWidgets + * @brief Visual widgets for DeckList storage. + * + * Offers graphical interfaces for browsing and interacting with a stored + * DeckList and tags, focusing on a more visual browsing experience. + */ + +/** + * @defgroup VisualDeckPreviewWidgets Visual Deck Preview Widgets + * @ingroup VisualDeckStorageWidgets + * @brief Widgets for visually previewing a DeckList. + * + * Provides visual previews of a DeckList, allowing users + * to inspect the DeckList name, color identity, and banner card at a glance. + */ + +/** + * @defgroup RemoteDeckStorage Remote Deck Storage + * @ingroup DeckStorage + * @brief Systems for storing a DeckList on a remote service. + */ + +/** + * @defgroup RemoteDeckStorageWidgets Remote Deck Storage Widgets + * @ingroup Widgets + * @ingroup RemoteDeckStorage + * @ingroup ImportExport + * @ingroup Lobby + * @brief Widgets related to interacting with DeckList%s on a filesystem or in a remote location. + */ + +/** + * @defgroup RemoteDeckStorageDialogs Remote Deck Storage Dialogs + * @ingroup RemoteDeckStorageWidgets + * @brief Dialogs related to interacting with DeckList%s on a filesystem or in a remote location. + */ + +/** + * @defgroup ImportExport Import/Export + * @ingroup DeckStorage + * @brief DeckList import, export, and conversion. + * + * Supports importing and exporting a DeckList across formats, including + * text, Cockatrice-native formats, and third-party platforms. + */ + +/** + * @defgroup Parsing Parsing + * @ingroup DeckStorage + * @brief DeckList parsing and external API integration. + * + * Contains parsers for DeckList URLs and APIs (e.g., TappedOut, Archidekt, + * Moxfield, Deckstats), allowing seamless import and synchronization. */ /* ------------------------------------------------------------------ */ @@ -95,16 +411,16 @@ /** * @defgroup Game Game - * @brief Core game framework. + * @brief Core Game framework. * * Responsible for the main Game loop, GameState management, - * CardZone handling, and resolution of in-game actions. + * CardZone handling, and resolution of actions during a Game. */ /** * @defgroup GameUi User Interface * @ingroup Game - * @brief Graphical components for in-game interaction. + * @brief Graphical components for interaction during a Game. * * Provides Qt-based widgets, dialogs, and menus used during a Game, * supporting both visual presentation and interaction logic. @@ -121,8 +437,9 @@ /** * @defgroup GameWidgets Game Widgets + * @ingroup Widgets * @ingroup GameUi - * @brief Widgets specific to the in-game interface. + * @brief Widgets specific to the interface in a Game. * * Provides reusable visual components that represent elements * of the ongoing Game, such as a PlayerGraphicsItem or CardZone views. @@ -131,7 +448,7 @@ /** * @defgroup GameDialogs Dialogs * @ingroup GameUi - * @brief In-game dialogs. + * @brief Dialogs for Game%s. * * Modal and non-modal dialogs for Player interaction during a Game, * including prompts, confirmations, and detailed views. @@ -140,7 +457,7 @@ /** * @defgroup GameMenus Menus * @ingroup GameUi - * @brief In-game menu structures. + * @brief Menus for Game%s. * * Provides menu bars, context menus, and hierarchical options * available to the Player during a Game session. @@ -149,7 +466,7 @@ /** * @defgroup GameMenusPlayers Player * @ingroup GameMenus - * @brief Menus specific to player actions. + * @brief Menus specific to Player actions. * * Defines context menus and options relating to Player state and PlayerActions. */ @@ -166,7 +483,7 @@ /** * @defgroup GameMenusCards Cards * @ingroup GameMenus - * @brief Menus for card interactions. + * @brief Menus for CardItem interactions. * * Defines right-click menus and contextual options available * when interacting with an individual CardItem. @@ -175,9 +492,9 @@ /** * @defgroup GameGraphics Graphics * @ingroup GameUi - * @brief Visual graphics for game elements. + * @brief Visual graphics for Game elements. * - * Provides rendering and layout for core game objects such as a + * Provides rendering and layout for core Game objects such as a * Player, CardZone, or CardItem in the interface. */ @@ -205,7 +522,7 @@ * @brief Graphical representation of cards. * * Manages the visual look and behavior of a CardItem when displayed - * in the game interface. + * in the Game interface. */ /** @@ -220,7 +537,7 @@ /** * @defgroup GameLogicPlayers Players * @ingroup GameLogic - * @brief Logic related to player state. + * @brief Logic related to Player state. * * Handles Player attributes, PlayerActions, resources, and their impact * on GameState. @@ -244,282 +561,93 @@ * including event handling and triggered effects. */ + /* ------------------------------------------------------------------ */ -/* Decks */ +/* Networking */ /* ------------------------------------------------------------------ */ /** - * @defgroup Decks Deck Management - * @brief DeckList handling, persistence, and tooling. + * @defgroup Network Networking + * @brief Networking components for client/server communication. * - * Covers the lifecycle of decks: loading, saving, editing, import/export, - * and long-term persistence, including both textual and visual editors. + * Contains all systems related to communication between client and server. + * This includes lobby and room management, server interaction logic, and + * message handling infrastructure based on protobuf. */ /** - * @defgroup DeckModels Deck Models - * @ingroup Decks - * @brief Qt Models relating to DeckList. + * @defgroup ApiInterfaces API Interfaces + * @ingroup Client + * @ingroup Parsing + * @ingroup ImportExport + * @brief Interfaces for interacting with various APIs */ -/** - * @defgroup DeckEditors Deck Editors - * @ingroup Decks - * @brief Editors for creating and modifying a DeckList. - * - * Provides visual and textual editors for building, modifying, - * and analyzing decks. Includes support for card search, - * sorting, and filtering of deck contents. - */ + /** + * @defgroup ApiResponses API Responses + * @ingroup ApiInterfaces + * @brief Structures representing API responses. + * + * Encapsulates the data models for networking API responses, + * providing consistent interfaces for parsing and handling results. + */ /** - * @defgroup DeckEditorWidgets Deck Editor Widgets - * @ingroup DeckEditors - * @brief Supporting widgets for deck editors. - * - * Contains specialized UI components that extend deck editors with - * interactive functionality, data views, and user interaction tools. - */ - -/** - * @defgroup DeckEditorAnalyticsWidgets Deck Editor Analytics Widgets - * @ingroup DeckEditorWidgets - * @brief Widgets for analyzing a DeckList. - * - * Provides visualization and statistical tools for analyzing decks. - */ - -/** - * @defgroup DeckEditorCardGroupWidgets Card Group Display Widgets - * @ingroup DeckEditorWidgets - * @brief Widgets for displaying groups of cards. - * - * Provides interactive views that organize and display cards in groups, - * enabling filtering, sorting, and direct manipulation of deck sections. - */ - -/** - * @defgroup PrintingWidgets Printing Widgets - * @ingroup DeckEditorWidgets - * @brief Widgets for handling PrintingInfo of cards in a DeckList. - * - * Manages the display and editing of card printing information within a DeckList, - * including editions, variations, and preferences. - */ - -/** - * @defgroup DeckStorage Deck Storage - * @ingroup Decks - * @brief Systems for storing a DeckList. - * - * Handles the persistence of a DeckList, providing file-based storage, - * metadata tracking, and tagging functionality. - */ - -/** - * @defgroup DeckStorageWidgets Deck Storage Widgets - * @ingroup DeckStorage - * @brief Widgets for browsing and managing stored DeckLists. - * - * Provides list and tree-based views for exploring stored DeckLists, - * including tagging, searching, and preview functionality. - */ - -/** - * @defgroup VisualDeckStorageWidgets Visual Deck Storage Widgets - * @ingroup DeckStorageWidgets - * @brief Visual widgets for DeckList storage. - * - * Offers graphical interfaces for browsing and interacting with a stored - * DeckList and tags, focusing on a more visual browsing experience. - */ - -/** - * @defgroup VisualDeckPreviewWidgets Visual Deck Preview Widgets - * @ingroup VisualDeckStorageWidgets - * @brief Widgets for visually previewing a DeckList. - * - * Provides visual previews of a DeckList, allowing users - * to inspect the deck name, color identity, and banner card at a glance. - */ - -/** - * @defgroup ImportExport Import/Export - * @ingroup DeckStorage - * @brief DeckList import, export, and conversion. - * - * Supports importing and exporting a DeckList across formats, including - * text, Cockatrice-native formats, and third-party platforms. - */ - -/** - * @defgroup Parsing Parsing - * @ingroup DeckStorage - * @brief Deck parsing and external API integration. - * - * Contains parsers for deck URLs and APIs (e.g., TappedOut, Archidekt, - * Moxfield, Deckstats), allowing seamless import and synchronization. - */ - -/* ------------------------------------------------------------------ */ -/* Cards */ -/* ------------------------------------------------------------------ */ - -/** - * @defgroup Cards Cards - * @brief Representation of individual cards and their state. - * - * Defines card objects, attributes, metadata, and runtime state within - * both the database and the game engine. - */ - -/** - * @defgroup CardSets Card Sets - * @ingroup Cards - * @brief Card sets. - */ - -/** - * @defgroup CardPrintings Card Printings - * @ingroup Cards - * @brief Information about specific printings of cards. - */ - -/** - * @defgroup CardWidgets Card Widgets - * @ingroup Cards - * @brief Widgets for card display and interaction. - * - * Provides UI components that render individual cards, handle - * interactions, and display card details within the application. - */ - -/** - * @defgroup CardExtraInfoWidgets Card Extra Info Widgets - * @ingroup CardWidgets - * @brief Widgets for extended card information. - * - * Displays additional data associated with cards or data in a different form. - */ - -/** - * @defgroup CardDatabase Card Database - * @ingroup Cards - * @brief Core card database and loaders. - * - * Provides the underlying data models for cards, including loading, - * parsing, and managing the complete card database used in the application. - */ - -/** - * @defgroup CardDatabaseModels Models - * @ingroup CardDatabase - * @brief Qt models for card database access. - * - * Supplies Qt model abstractions for presenting card data in views, - * supporting filtering, sorting, and data binding to widgets. - */ - -/** - * @defgroup CardDatabaseModelFilters Filters - * @ingroup CardDatabaseModels - * @brief Filters for card database models. - * - * Provides reusable filtering components for Qt models, enabling - * refined queries and customized card data views. - */ - -/** - * @defgroup CardDatabaseParsers Parsers - * @ingroup CardDatabase - * @brief Parsers for card data. - * - * Implements parsers for card database structures, handling the - * transformation of raw data into structured objects and models. - */ - -/** - * @defgroup CardDatabaseWidgets Card Database Widgets - * @ingroup CardDatabase - * @brief Widgets for browsing and selecting cards. - * - * Provides UI components for interacting with the card database, - * including search, filtering, and browsing in tabular or list views. - */ - -/** - * @defgroup VisualCardDatabaseWidgets Visual Card Database Widgets - * @ingroup CardDatabaseWidgets - * @brief VisualDatabaseDisplayWidget and related helper classes. - * - * Enhances card browsing with graphical interfaces, offering - * image-based and grid-based views for selecting cards. - */ - -/* ------------------------------------------------------------------ */ -/* UI */ -/* ------------------------------------------------------------------ */ - -/** - * @defgroup UI User Interface - * @brief Graphical interface components built with Qt. - * - * Includes high-level widgets, dialogs, models, and editors that form - * the interactive frontend of Cockatrice. - */ - -/** - * @defgroup Widgets Widgets - * @ingroup UI - * @brief General-purpose Qt widgets. - * - * A collection of reusable widgets used throughout the application, - * such as CardInfoPictureFoilWidget, DeckAnalyticsWidget, and others. - */ - -/** - * @defgroup Tabs Tabs + * @defgroup ApiResponseDisplayWidgets API Response Display Widgets * @ingroup Widgets - * @brief Tabbed UI components. + * @ingroup ApiResponses + * @brief Widgets for displaying API responses. * - * Provides tab-based interfaces for organizing and navigating - * between multiple views in the application. + * Provides user interface components that render and present API response + * data to the user in a structured and interactive way. */ /** - * @defgroup DeckEditorTabs Deck Editor Tabs - * @ingroup Tabs - * @ingroup DeckEditors - * @brief Tabs for the Deck Editors - */ - -/** - * @defgroup NetworkingTabs Networking Tabs - * @ingroup Tabs + * @defgroup Messages Protocol Messages * @ingroup Network - */ - -/** - * @defgroup Dialogs Dialogs - * @ingroup UI - * @brief Application dialogs. + * @brief Protocol message definitions and handlers. * - * Includes dialogs for card prices, deck import/export, - * settings, and other modal user interactions. + * Contains the generated protobuf messages and supporting code used + * to encode, decode, and process communication between client and server. */ /** - * @defgroup NetworkDialogs Networking Dialogs - * @ingroup Dialogs + * @defgroup Client Client * @ingroup Network - * @brief Dialogs related to interacting with a remote server. + * @brief The Cockatrice client application. + * + * Handles all client-side communication with the server. */ /** - * @defgroup PictureLoader Card Picture Loader - * @ingroup UI - * @ingroup Cards - * @brief The PictureLoader for CardInfoPictureWidget%s and CardItem%s + * @defgroup NetworkingWidgets Networking Widgets + * @ingroup Widgets + * @ingroup Client + * @brief Widgets related to a RemoteClient interacting with a Server. + */ + +/** + * @defgroup ClientUpdates Client Updates + * @ingroup Client + * @brief Client updates. + */ + +/** + * @defgroup Server Server + * @ingroup Network + * @brief The Cockatrice server application. + * + * Provides the authoritative game backend, handling authentication, + * lobbies, game rooms, and relaying state between connected clients. + */ + +/** + * @defgroup RoomWidgets Room Widgets + * @ingroup Widgets + * @ingroup Client + * @brief Server room management. + * + * Manages creation and interaction of Game lobbies and room state synchronization with the server. */ /* ------------------------------------------------------------------ */ @@ -530,7 +658,7 @@ * @defgroup Replay Replays * @brief Replay recording and playback. * - * Provides mechanisms for capturing game sessions, storing them in + * Provides mechanisms for capturing Game sessions, storing them in * replay files, and replaying them for review or analysis. */ @@ -546,6 +674,43 @@ * runtime access to user preferences and application options. */ +/** + * @defgroup SettingsWidgets Settings Widgets + * @ingroup Widgets + * @ingroup Settings + * @brief TODO: Document this + */ + +/** + * @defgroup CoreSettings Core Settings + * @ingroup Settings + * @brief TODO: Document this + */ + +/** + * @defgroup NetworkSettings Network Settings + * @ingroup Settings + * @brief TODO: Document this + */ + +/** + * @defgroup GameSettings Game Settings + * @ingroup Settings + * @brief TODO: Document this + */ + +/** + * @defgroup CardSettings Card Settings + * @ingroup Settings + * @brief TODO: Document this + */ + +/** + * @defgroup DeckSettings Deck Settings + * @ingroup Settings + * @brief TODO: Document this + */ + /* ------------------------------------------------------------------ */ /* Tests */ /* ------------------------------------------------------------------ */ @@ -557,4 +722,3 @@ * Provides unit tests, integration tests, and regression checks * to ensure stability and correctness of the Cockatrice codebase. */ -