Skip to content

Commit 8bd0dd2

Browse files
committed
Reorganize plugins
1 parent a10cb66 commit 8bd0dd2

39 files changed

+968
-470
lines changed

crowdin.yml

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
files:
22
- source: /src/plugins/coreplugin/res/translations/Core_en_US.ts
33
translation: /src/plugins/coreplugin/res/translations/Core_%locale_with_underscore%.ts
4-
- source: /src/plugins/audio/res/translations/Audio_en_US.ts
5-
translation: /src/plugins/audio/res/translations/Audio_%locale_with_underscore%.ts
6-
- source: /src/plugins/welcomewizard/res/translations/WelcomeWizard_en_US.ts
7-
translation: /src/plugins/welcomewizard/res/translations/WelcomeWizard_%locale_with_underscore%.ts
8-
- source: /src/plugins/achievement/res/translations/Achievement_en_US.ts
9-
translation: /src/plugins/achievement/res/translations/Achievement_%locale_with_underscore%.ts
10-
- source: /src/plugins/maintenance/res/translations/Maintenance_en_US.ts
11-
translation: /src/plugins/maintenance/res/translations/Maintenance_%locale_with_underscore%.ts
4+
- source: /src/plugins/audio/res/translations/org.diffscope.audio_en_US.ts
5+
translation: /src/plugins/audio/res/translations/org.diffscope.audio_%locale_with_underscore%.ts
6+
- source: /src/plugins/welcomewizard/res/translations/org.diffscope.welcomewizard_en_US.ts
7+
translation: /src/plugins/welcomewizard/res/translations/org.diffscope.welcomewizard_%locale_with_underscore%.ts
8+
- source: /src/plugins/achievement/res/translations/org.diffscope.achievement_en_US.ts
9+
translation: /src/plugins/achievement/res/translations/org.diffscope.achievement_%locale_with_underscore%.ts
10+
- source: /src/plugins/maintenance/res/translations/org.diffscope.maintenance_en_US.ts
11+
translation: /src/plugins/maintenance/res/translations/org.diffscope.maintenance_%locale_with_underscore%.ts
1212
- source: /src/libs/application/uishell/share/translations/uishell_en_US.ts
1313
translation: /src/libs/application/uishell/share/translations/uishell_%locale_with_underscore%.ts

src/plugins/CMakeLists.txt

Lines changed: 90 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,98 @@
11
qm_import(Translate)
2+
qm_import(Qml)
23
qm_find_qt(LinguistTools)
34

45
set(CURRENT_PLUGIN_DESC "${APPLICATION_NAME} Application Plugin")
56

7+
find_package(ExtensionSystem REQUIRED)
8+
9+
function(diffscope_add_builtin_plugin _target)
10+
set(options NO_TRANSLATION NO_QML_MODULE NO_ACTION)
11+
set(oneValueArgs NAME DISPLAY_NAME MACRO_PREFIX QML_MODULE_NAME)
12+
set(multiValueArgs)
13+
cmake_parse_arguments(FUNC "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
14+
15+
set(_plugin_name ${FUNC_NAME})
16+
set(_plugin_display_name ${FUNC_DISPLAY_NAME})
17+
18+
ck_add_plugin(${_target}
19+
NAME ${_plugin_name}
20+
DISPLAY_NAME ${_plugin_display_name}
21+
COMPAT_VERSION 0.0.0
22+
VENDOR ${APPLICATION_VENDOR_NAME}
23+
DESCRIPTION "${PROJECT_DESCRIPTION}"
24+
MACRO_PREFIX ${FUNC_MACRO_PREFIX}
25+
)
26+
27+
file(GLOB_RECURSE _src *.h *.cpp)
28+
29+
if(NOT FUNC_NO_ACTION)
30+
qak_add_action_extension(
31+
_actions_src
32+
${CMAKE_CURRENT_SOURCE_DIR}/res/${_plugin_name}_actions.xml
33+
IDENTIFIER ${_target}
34+
)
35+
list(APPEND _src ${_actions_src})
36+
endif()
37+
38+
qm_configure_target(${_target}
39+
SOURCES ${_src}
40+
${FUNC_UNPARSED_ARGUMENTS}
41+
)
42+
43+
if(NOT FUNC_NO_QML_MODULE)
44+
if(QT_KNOWN_POLICY_QTP0001)
45+
qt_policy(SET QTP0001 NEW)
46+
endif()
47+
if(QT_KNOWN_POLICY_QTP0004)
48+
qt_policy(SET QTP0004 NEW)
49+
endif()
50+
51+
file(GLOB_RECURSE _qml_files RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} *.qml *.js *.mjs)
52+
53+
qt_add_qml_module(${_target}
54+
URI DiffScope.${FUNC_QML_MODULE_NAME}
55+
QML_FILES ${_qml_files}
56+
OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/DiffScope/${FUNC_QML_MODULE_NAME}
57+
)
58+
qm_install_qml_modules(${_target})
59+
endif()
60+
61+
if(NOT FUNC_NO_TRANSLATION)
62+
qm_add_translation(${_target}_translations
63+
PREFIX
64+
${_plugin_name}
65+
TARGETS
66+
${CK_APPLICATION_TARGET} ${_target}
67+
LOCALES
68+
en_US zh_CN zh_TW ja_JP
69+
TS_DIR
70+
${CMAKE_CURRENT_SOURCE_DIR}/res/translations
71+
QM_DIR
72+
${CMAKE_CURRENT_BINARY_DIR}/res/translations
73+
TS_DEPENDS ChorusKit_UpdateTranslations
74+
QM_DEPENDS ChorusKit_ReleaseTranslations
75+
)
76+
ck_add_attached_files(${_target}
77+
SRC ${CMAKE_CURRENT_BINARY_DIR}/res/translations DEST .
78+
)
79+
endif()
80+
81+
ck_sync_include(${_target}
82+
OPTIONS
83+
EXCLUDE "${_target}/internal/.+"
84+
FORCE
85+
)
86+
87+
ck_sync_include(${_target}
88+
DIRECTORY
89+
internal
90+
PREFIX "${_target}/internal"
91+
SKIP_INSTALL
92+
FORCE
93+
)
94+
endfunction()
95+
696
add_subdirectory(coreplugin)
797
add_subdirectory(audio)
898
add_subdirectory(welcomewizard)

src/plugins/achievement/CMakeLists.txt

Lines changed: 4 additions & 96 deletions
Original file line numberDiff line numberDiff line change
@@ -3,116 +3,24 @@ project(achievement
33
DESCRIPTION ${CURRENT_PLUGIN_DESC}
44
)
55

6-
set(_plugin_name Achievement)
7-
set(_plugin_display_name Achievement)
8-
9-
# Add target
10-
ck_add_plugin(${PROJECT_NAME}
11-
NAME ${_plugin_name}
12-
DISPLAY_NAME ${_plugin_display_name}
13-
COMPAT_VERSION 0.2.0
14-
VENDOR ${APPLICATION_VENDOR_NAME}
15-
DESCRIPTION "${PROJECT_DESCRIPTION}"
6+
diffscope_add_builtin_plugin(${PROJECT_NAME}
7+
NAME org.diffscope.achievement
8+
DISPLAY_NAME Achievement
169
MACRO_PREFIX ACHIEVEMENT
17-
)
18-
19-
find_package(ExtensionSystem REQUIRED)
20-
21-
# Configure target
22-
file(GLOB_RECURSE _src *.h *.cpp)
23-
qak_add_action_extension(
24-
_achievement_actions_src
25-
res/achievement_actions.xml
26-
)
27-
list(APPEND _src ${_achievement_actions_src})
28-
29-
qm_configure_target(${PROJECT_NAME}
30-
SOURCES ${_src}
10+
QML_MODULE_NAME Achievement
3111
QT_LINKS
3212
Core
3313
Gui
3414
Widgets
3515
Qml
3616
Quick
37-
QuickControls2
38-
QuickTemplates2
39-
QT_INCLUDE_PRIVATE
40-
Core
41-
Gui
42-
Widgets
43-
Qml
44-
Quick
45-
QuickControls2
46-
QuickTemplates2
4717
LINKS
4818
ExtensionSystem::ExtensionSystem
4919
ChorusKit::AppCore
50-
loadapi
5120
uishell
5221
QAKCore
5322
QAKQuick
54-
svscraft::QmlExtras
5523
coreplugin
5624
INCLUDE_PRIVATE
57-
core
58-
windows
5925
internal/**
6026
)
61-
62-
if(QT_KNOWN_POLICY_QTP0001)
63-
qt_policy(SET QTP0001 NEW)
64-
endif()
65-
if(QT_KNOWN_POLICY_QTP0004)
66-
qt_policy(SET QTP0004 NEW)
67-
endif()
68-
69-
file(GLOB_RECURSE _qml_files RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} *.qml *.js *.mjs)
70-
71-
qt_add_qml_module(${PROJECT_NAME}
72-
URI DiffScope.Achievement
73-
QML_FILES ${_qml_files}
74-
OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/DiffScope/Achievement
75-
)
76-
77-
# Add translation
78-
qm_add_translation(${PROJECT_NAME}_translations
79-
PREFIX
80-
${_plugin_name}
81-
TARGETS
82-
${CK_APPLICATION_TARGET} ${PROJECT_NAME}
83-
LOCALES
84-
en_US zh_CN zh_TW ja_JP
85-
TS_DIR
86-
res/translations
87-
QM_DIR
88-
${CMAKE_CURRENT_BINARY_DIR}/res/translations
89-
TS_DEPENDS ChorusKit_UpdateTranslations
90-
QM_DEPENDS ChorusKit_ReleaseTranslations
91-
)
92-
93-
# Add resources
94-
ck_add_attached_files(${PROJECT_NAME}
95-
SRC ${CMAKE_CURRENT_BINARY_DIR}/res/translations DEST .
96-
)
97-
98-
file(GLOB _res_icons res/icons/*)
99-
100-
qt_add_resources(${PROJECT_NAME} icons
101-
PREFIX /diffscope/achievement/icons
102-
BASE res/icons
103-
FILES ${_res_icons}
104-
)
105-
106-
# Add install command
107-
ck_sync_include(${PROJECT_NAME}
108-
OPTIONS
109-
EXCLUDE "${PROJECT_NAME}/internal/.+"
110-
FORCE
111-
)
112-
113-
ck_sync_include(${PROJECT_NAME}
114-
DIRECTORY
115-
internal
116-
PREFIX "${PROJECT_NAME}/internal"
117-
SKIP_INSTALL
118-
)

src/plugins/achievement/internal/AchievementPlugin.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
#include <achievement/internal/achievementaddon.h>
1818

1919
static auto getAchievementActionExtension() {
20-
return QAK_STATIC_ACTION_EXTENSION(achievement_actions);
20+
return QAK_STATIC_ACTION_EXTENSION(achievement);
2121
}
2222

2323
namespace Achievement {

src/plugins/achievement/plugin.json.in

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
"Vendor": "@PLUGIN_METADATA_VENDOR@",
99
"Copyright": "@PLUGIN_METADATA_COPYRIGHT@",
1010
"License": [
11-
"Apache 2.0"
11+
"Apache-2.0"
1212
],
1313
"Arguments" : [
1414
],

src/plugins/achievement/res/achievement_actions.xml renamed to src/plugins/achievement/res/org.diffscope.achievement_actions.xml

File renamed without changes.

src/plugins/achievement/res/translations/Achievement_en_US.ts renamed to src/plugins/achievement/res/translations/org.diffscope.achievement_en_US.ts

File renamed without changes.

src/plugins/achievement/res/translations/Achievement_ja_JP.ts renamed to src/plugins/achievement/res/translations/org.diffscope.achievement_ja_JP.ts

File renamed without changes.

src/plugins/achievement/res/translations/Achievement_zh_CN.ts renamed to src/plugins/achievement/res/translations/org.diffscope.achievement_zh_CN.ts

File renamed without changes.

src/plugins/achievement/res/translations/Achievement_zh_TW.ts renamed to src/plugins/achievement/res/translations/org.diffscope.achievement_zh_TW.ts

File renamed without changes.

0 commit comments

Comments
 (0)