mirror of
https://github.com/chengyangkj/Ros_Qt5_Gui_App.git
synced 2025-09-15 12:58:58 +08:00
Some checks are pending
ROS2:Foxy(20.04) / release (map[image:ubuntu:focal ros:foxy]) (push) Waiting to run
ROS2:galactic(20.04) / release (map[image:ubuntu:focal ros:galactic]) (push) Waiting to run
ROS2:Humble(22.04) / release (map[image:ubuntu:jammy ros:humble]) (push) Waiting to run
ROS1:Melodic(18.04) / release (map[image:ubuntu:bionic ros:melodic]) (push) Waiting to run
ROS1:Noetic(20.04) / release (map[image:ubuntu:focal ros:noetic]) (push) Waiting to run
2.5 KiB
2.5 KiB
Developer Guide
Development Environment Setup
IDE Configuration
Qt Creator
- Install Qt Creator:
sudo apt-get install qtcreator
- Open project:
- Select File -> Open File or Project
- Select CMakeLists.txt in project root directory
- Configure build directory
VSCode
- Install required plugins:
- C/C++
- CMake
- CMake Tools
- Configure CMake:
- Configure CMake path in
.vscode/settings.json - Set build directory
Code Structure
.
├── doc/ # Project documentation
│ ├── images/ # Documentation images
│ ├── configuration.md # Configuration guide
│ ├── usage.md # Usage guide
│ ├── development.md # Development guide
│ └── faq.md # FAQ
├── include/ # Header files
│ ├── common/ # Common utility headers
│ ├── widgets/ # UI component headers
│ └── ros_bridge/ # ROS communication interface headers
├── src/ # Source code
│ ├── common/ # Common utility implementation
│ │ ├── configuration.cpp # Configuration management
│ │ ├── global.cpp # Global variables
│ │ └── topic_manager.cpp # Topic management
│ ├── widgets/ # Qt UI components
│ │ ├── main_window.cpp # Main window
│ │ ├── map_widget.cpp # Map component
│ │ ├── control_panel.cpp # Control panel
│ │ └── dashboard.cpp # Dashboard component
│ ├── ros_bridge/ # ROS communication interface
│ │ ├── ros_bridge.cpp # ROS bridge layer
│ │ ├── topic_subscriber.cpp # Topic subscription
│ │ └── topic_publisher.cpp # Topic publishing
│ └── main.cpp # Program entry
├── resources/ # Resource files
│ ├── images/ # Icons and images
│ ├── qss/ # Style sheets
│ └── translations/ # Language files
├── scripts/ # Helper scripts
├── test/ # Test code
└── CMakeLists.txt # CMake build file
Development Standards
Code Style
- Use clang-format for code formatting
- Follow Google C++ Style Guide
Commit Convention
- feat: New feature
- fix: Bug fix
- docs: Documentation update
- style: Code format changes
- refactor: Code refactoring
- test: Test case changes
- chore: Build process or auxiliary tool changes