cleanup: better project hierarchy
- adapt file names to match our convention
- sort code in subgroups (no more Sources and Headers groups)
Refs #71037
Change-Id: I585b85b9ba8f86407efc9127f29010117b5ee674
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 5e2fd13..a07a90d 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -30,35 +30,63 @@
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -w")
#Files to compile
-SET(ringclient_SRCS
- src/main.mm
- src/AppDelegate.mm
- src/RingWindowController.mm
- src/ConversationsViewController.mm
- src/PreferencesViewController.mm
+SET(ringclient_CONTROLLERS
src/QNSTreeController.mm
- src/AccGeneralVC.mm
- src/AccAudioVC.mm
- src/AccVideoVC.mm
- src/AccRingVC.mm
- src/AccAdvancedVC.mm
- src/AccSecurityVC.mm
- src/AccountsVC.mm
+ src/QNSTreeController.h
src/CurrentCallVC.mm
- src/AudioPrefsVC.mm
- src/VideoPrefsVC.mm
+ src/CurrentCallVC.h
src/GeneralPrefsVC.mm
src/RingWizardWC.mm
- src/HistoryViewController.mm
+ src/RingWizardWC.h
+ src/RingWindowController.mm
+ src/RingWindowController.h
+ src/ConversationsVC.mm
+ src/ConversationsVC.h
+ src/PreferencesVC.mm
+ src/PreferencesVC.h
+ src/AccGeneralVC.mm
+ src/AccGeneralVC.h
+ src/AccVideoVC.mm
+ src/AccVideoVC.h
+ src/AccAudioVC.mm
+ src/AccAudioVC.h
+ src/AccRingVC.mm
+ src/AccRingVC.h
+ src/AccAdvancedVC.mm
+ src/AccAdvancedVC.h
+ src/AccSecurityVC.mm
+ src/AccSecurityVC.h
+ src/AudioPrefsVC.mm
+ src/AudioPrefsVC.h
+ src/AccountsVC.mm
+ src/AccountsVC.h
+ src/VideoPrefsVC.mm
+ src/VideoPrefsVC.h
+ src/GeneralPrefsVC.h
+ src/HistoryVC.mm
+ src/HistoryVC.h
src/PersonsVC.mm
+ src/PersonsVC.h)
- src/delegates/ImageManipulationDelegate.mm
-
- src/views/PersonCell.mm
- src/views/CallView.mm
-
+SET(ringclient_BACKENDS
src/backends/AddressBookBackend.mm
- src/backends/MinimalHistoryBackend.mm)
+ src/backends/MinimalHistoryBackend.mm
+ src/backends/AddressBookBackend.h
+ src/backends/MinimalHistoryBackend.h)
+
+SET(ringclient_VIEWS
+ src/views/CallView.mm
+ src/views/CallView.h
+ src/views/PersonCell.mm
+ src/views/PersonCell.h)
+
+SET(ringclient_OTHERS
+ src/main.mm
+ src/AppDelegate.mm
+ src/AppDelegate.h
+ src/delegates/ImageManipulationDelegate.mm
+ src/delegates/ImageManipulationDelegate.h)
+
SET(ringclient_XIBS
MainMenu
@@ -77,37 +105,7 @@
PreferencesScreen
RingWizard)
-SET(ringclient_HDRS
- src/AppDelegate.h
- src/RingWindowController.h
- src/CurrentCallVC.h
- src/ConversationsViewController.h
- src/PreferencesViewController.h
- src/AccGeneralVC.h
- src/AccVideoVC.h
- src/AccAudioVC.h
- src/AccRingVC.h
- src/AccAdvancedVC.h
- src/AccSecurityVC.h
- src/AudioPrefsVC.h
- src/AccountsVC.h
- src/VideoPrefsVC.h
- src/GeneralPrefsVC.h
- src/HistoryViewController.h
- src/RingWizardWC.h
- src/QNSTreeController.h
- src/PersonsVC.h
-
- src/delegates/ImageManipulationDelegate.h
-
- src/views/PersonCell.h
- src/views/CallView.h
-
- src/backends/AddressBookBackend.h
- src/backends/MinimalHistoryBackend.h)
-
# Icons
-
# This part tells CMake where to find and install the file itself
SET(myApp_ICON ${CMAKE_CURRENT_SOURCE_DIR}/data/appicon.icns)
SET_SOURCE_FILES_PROPERTIES(${myApp_ICON} PROPERTIES
@@ -136,13 +134,23 @@
ENDFOREACH()
ADD_EXECUTABLE(${PROJ_NAME} MACOSX_BUNDLE
- ${ringclient_SRCS}
- ${ringclient_HDRS}
+ ${ringclient_CONTROLLERS}
+ ${ringclient_BACKENDS}
+ ${ringclient_VIEWS}
+ ${ringclient_OTHERS}
${ringclient_XIBS_FOR_EXECUTABLE}
${myApp_ICON}
Credits.rtf
${ring_ICONS})
+# Follow Xcode hierarchy principles
+SOURCE_GROUP("Controllers" FILES ${ringclient_CONTROLLERS})
+SOURCE_GROUP("Backends" FILES ${ringclient_BACKENDS})
+SOURCE_GROUP("CustomViews" FILES ${ringclient_VIEWS})
+SOURCE_GROUP("Classes" FILES ${ringclient_OTHERS})
+SOURCE_GROUP("Resources\\Interface Builder" FILES ${ringclient_XIBS_FOR_EXECUTABLE})
+
+
TARGET_LINK_LIBRARIES( ${PROJ_NAME}
${LIB_RING_CLIENT_LIBRARY}
${Qt5Core_LIBRARIES}