feat: basic i18n support
This commit is contained in:
parent
f51232ed89
commit
dbd576161a
@ -13,31 +13,51 @@ set(CMAKE_AUTORCC ON)
|
|||||||
set(CMAKE_CXX_STANDARD 11)
|
set(CMAKE_CXX_STANDARD 11)
|
||||||
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||||||
|
|
||||||
find_package(Qt5 COMPONENTS Widgets Multimedia Network REQUIRED)
|
find_package(Qt5 COMPONENTS Widgets Multimedia Network LinguistTools REQUIRED)
|
||||||
find_package(PkgConfig)
|
find_package(PkgConfig)
|
||||||
|
|
||||||
if (PKG_CONFIG_FOUND)
|
if (PKG_CONFIG_FOUND)
|
||||||
pkg_check_modules(TagLib REQUIRED taglib)
|
pkg_check_modules(TagLib REQUIRED taglib)
|
||||||
endif ()
|
endif ()
|
||||||
|
|
||||||
|
set (PMUSIC_CPP_FILES
|
||||||
|
main.cpp
|
||||||
|
mainwindow.cpp
|
||||||
|
seekableslider.cpp
|
||||||
|
playlistmodel.cpp
|
||||||
|
singleapplicationmanager.cpp
|
||||||
|
)
|
||||||
|
|
||||||
|
set (PMUSIC_HEADER_FILES
|
||||||
|
mainwindow.h
|
||||||
|
seekableslider.h
|
||||||
|
playlistmodel.h
|
||||||
|
singleapplicationmanager.h
|
||||||
|
)
|
||||||
|
|
||||||
|
set (PMUSIC_UI_FILES
|
||||||
|
mainwindow.ui
|
||||||
|
)
|
||||||
|
|
||||||
set (EXE_NAME pmusic)
|
set (EXE_NAME pmusic)
|
||||||
|
|
||||||
add_executable(${EXE_NAME}
|
# Translation
|
||||||
main.cpp
|
file (GLOB PMUSIC_TS_FILES languages/*.ts)
|
||||||
mainwindow.cpp
|
set (PMUSIC_CPP_FILES_FOR_I18N ${PMUSIC_CPP_FILES} ${PMUSIC_UI_FILES})
|
||||||
mainwindow.h
|
|
||||||
seekableslider.cpp
|
|
||||||
seekableslider.h
|
|
||||||
playlistmodel.h
|
|
||||||
playlistmodel.cpp
|
|
||||||
singleapplicationmanager.h
|
|
||||||
singleapplicationmanager.cpp
|
|
||||||
mainwindow.ui
|
|
||||||
resources.qrc
|
|
||||||
|
|
||||||
# 3rd party code
|
qt5_create_translation(PMUSIC_QM_FILES ${PMUSIC_CPP_FILES_FOR_I18N} ${PMUSIC_TS_FILES})
|
||||||
FlacPic.h
|
|
||||||
ID3v2Pic.h
|
add_executable(${EXE_NAME}
|
||||||
|
${PMUSIC_HEADER_FILES}
|
||||||
|
${PMUSIC_CPP_FILES}
|
||||||
|
${PMUSIC_UI_FILES}
|
||||||
|
resources.qrc
|
||||||
|
|
||||||
|
# 3rd party code
|
||||||
|
FlacPic.h
|
||||||
|
ID3v2Pic.h
|
||||||
|
|
||||||
|
${PMUSIC_QM_FILES}
|
||||||
)
|
)
|
||||||
|
|
||||||
if (NOT TagLib_FOUND)
|
if (NOT TagLib_FOUND)
|
||||||
|
34
languages/pineapple-music.ts
Normal file
34
languages/pineapple-music.ts
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<!DOCTYPE TS>
|
||||||
|
<TS version="2.1">
|
||||||
|
<context>
|
||||||
|
<name>MainWindow</name>
|
||||||
|
<message>
|
||||||
|
<source>Mono</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Stereo</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>%1 Channels</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Select songs to play</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Audio Files</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
</context>
|
||||||
|
<context>
|
||||||
|
<name>main</name>
|
||||||
|
<message>
|
||||||
|
<source>File list.</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
</context>
|
||||||
|
</TS>
|
54
languages/pineapple-music_zh_CN.ts
Normal file
54
languages/pineapple-music_zh_CN.ts
Normal file
@ -0,0 +1,54 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<!DOCTYPE TS>
|
||||||
|
<TS version="2.1" language="zh_CN">
|
||||||
|
<context>
|
||||||
|
<name>MainWindow</name>
|
||||||
|
<message>
|
||||||
|
<source>Mono</source>
|
||||||
|
<translation>单声道</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Stereo</source>
|
||||||
|
<translation>立体声</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>%1 Channels</source>
|
||||||
|
<translation>%1 声道</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Select songs to play</source>
|
||||||
|
<translation>选择要播放的曲目</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Audio Files</source>
|
||||||
|
<translation>音频文件</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Pineapple Player</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>^</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>No song loaded...</source>
|
||||||
|
<translation>未加载曲目...</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Drag and drop file to load</source>
|
||||||
|
<translation>拖放文件来播放</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>0:00</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
</context>
|
||||||
|
<context>
|
||||||
|
<name>main</name>
|
||||||
|
<message>
|
||||||
|
<source>File list.</source>
|
||||||
|
<translation>文件列表</translation>
|
||||||
|
</message>
|
||||||
|
</context>
|
||||||
|
</TS>
|
Loading…
Reference in New Issue
Block a user