Skip to content

Restructure source files

d.kilic requested to merge 146-structure-of-the-project into master

This MR gives a bit more structure to the pyhsical layout of our source files.

We decided to go with the first of the two options in the corresponding issue. I tried to add the new files into the structure as fits.

Other things changed as well:

  • No separation between cpp/h/ui files anymore
  • A CMakeLists.txt for each subdirectory instead of listing all source files in one CMakeLists.txt

I did add all subdirectories as inlcude dirs, such that the includes in the code do not need to be changed.

@l.dressen @t.arens You might want to quickly glance whether I made some weird decision about some directories (a lot of files, would only be natural)

Also, we could discuss having more subdirectories on the ui-side or adding new non-ui subdirectories. We do not need to do this in this MR; just mentioning that nothing is set in stone.


  • Adapt scripts which depend on file structure
    • check format
    • check license header
    • update license header

Closes #146 (closed)

Reviewer Checklist


  • the pre-build checks succeed

General code quality

  • naming conventions are met (see .clang-tidy for detailed information)
  • no static analyzer warnings in new code parts (e.g., use clang-tidy for checking)

General usability

  • old versions of pet-files are still loadable

Only if changes in UI

  • new elements are also saved and loaded from pet-file
  • check if tab order is still correct
  • all new SpinBoxes are promoted
  • new keybindings added to Petrack::keyBindings()
Edited by l.dressen

Merge request reports