Skip to content

Commit 8826311

Browse files
committed
增加中文本地化翻译
将输出重定向到日志文本
1 parent 67a45f0 commit 8826311

10 files changed

Lines changed: 311 additions & 43 deletions

QResArscEditorUI.qrc

Lines changed: 11 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,13 @@
11
<RCC>
2-
<qresource prefix="/res">
3-
<file>res/public-final.xml</file>
4-
<file>res/locale.txt</file>
5-
</qresource>
6-
<qresource prefix="/icon">
7-
<file>ico/save.png</file>
8-
<file>ico/open.png</file>
9-
</qresource>
2+
<qresource prefix="/res">
3+
<file>res/public-final.xml</file>
4+
<file>res/locale.txt</file>
5+
</qresource>
6+
<qresource prefix="/icon">
7+
<file>ico/save.png</file>
8+
<file>ico/open.png</file>
9+
</qresource>
10+
<qresource prefix="/translation">
11+
<file>tr/QtResArscEditor_zh_CN.qm</file>
12+
</qresource>
1013
</RCC>

QtResArscEditor.vcxproj

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,7 @@
7373
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
7474
<ClCompile>
7575
<AdditionalOptions>/utf-8 %(AdditionalOptions)</AdditionalOptions>
76+
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
7677
</ClCompile>
7778
<Link>
7879
<Version>2.0</Version>
@@ -124,8 +125,6 @@
124125
<ClCompile Include="src\QTreeWidgetItem_ArscValue.cpp" />
125126
<ClCompile Include="src\ResArscStruct.cpp" />
126127
<ClCompile Include="src\SimpleRichText.cpp" />
127-
<QtRcc Include="QtResArscEditorUI.qrc" />
128-
<QtUic Include="QResArscEditorUI.ui" />
129128
<ClCompile Include="main.cpp" />
130129
</ItemGroup>
131130
<ItemGroup>
@@ -166,6 +165,12 @@
166165
<ItemGroup>
167166
<ResourceCompile Include="QtResArscEditor.rc" />
168167
</ItemGroup>
168+
<ItemGroup>
169+
<QtRcc Include="QResArscEditorUI.qrc" />
170+
</ItemGroup>
171+
<ItemGroup>
172+
<QtTranslation Include="tr\QtResArscEditor_zh_CN.ts" />
173+
</ItemGroup>
169174
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
170175
<ImportGroup Condition="Exists('$(QtMsBuild)\qt.targets')">
171176
<Import Project="$(QtMsBuild)\qt.targets" />

QtResArscEditor.vcxproj.filters

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -25,11 +25,6 @@
2525
<UniqueIdentifier>{5303893d-8e97-4363-a37e-c1c1ec20fbf8}</UniqueIdentifier>
2626
</Filter>
2727
</ItemGroup>
28-
<ItemGroup>
29-
<QtRcc Include="QtResArscEditorUI.qrc">
30-
<Filter>Resource Files</Filter>
31-
</QtRcc>
32-
</ItemGroup>
3328
<ItemGroup>
3429
<ClCompile Include="src\GuidFactory.cpp">
3530
<Filter>Source Files</Filter>
@@ -159,11 +154,6 @@
159154
<Filter>Header Files</Filter>
160155
</QtMoc>
161156
</ItemGroup>
162-
<ItemGroup>
163-
<QtUic Include="QResArscEditorUI.ui">
164-
<Filter>Form Files</Filter>
165-
</QtUic>
166-
</ItemGroup>
167157
<ItemGroup>
168158
<Natvis Include="src\common\sbtree.natvis">
169159
<Filter>common</Filter>
@@ -179,4 +169,14 @@
179169
<Filter>Resource Files</Filter>
180170
</ResourceCompile>
181171
</ItemGroup>
172+
<ItemGroup>
173+
<QtRcc Include="QResArscEditorUI.qrc">
174+
<Filter>Resource Files</Filter>
175+
</QtRcc>
176+
</ItemGroup>
177+
<ItemGroup>
178+
<QtTranslation Include="tr\QtResArscEditor_zh_CN.ts">
179+
<Filter>Translation Files</Filter>
180+
</QtTranslation>
181+
</ItemGroup>
182182
</Project>

main.cpp

Lines changed: 53 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,64 @@
11
#include "src/QResArscEditor.h"
2-
#include <QtWidgets/QApplication>
32
#include <map>
3+
#include <QDateTime>
44
#include <QDebug>
5+
#include <QFile>
6+
#include <QFileInfo>
7+
#include <QTextStream>
8+
#include <QTranslator>
9+
#include <QtWidgets/QApplication>
510
#include <set>
611

12+
void myMessageHandler(QtMsgType _type, const QMessageLogContext& _context, const QString& _msg)
13+
{
14+
static QFile t_file;
15+
if (!t_file.isOpen())
16+
{
17+
QString t_filePath = QCoreApplication::applicationDirPath() + "/log.txt";
18+
t_file.setFileName(t_filePath);
19+
if (!t_file.open(QIODevice::Append | QIODevice::Text))
20+
{
21+
qInstallMessageHandler(NULL);
22+
qWarning("Cannot open log file for writing.");
23+
return;
24+
}
25+
}
26+
27+
QTextStream t_out(&t_file);
28+
t_out.setCodec("UTF-8");
29+
t_out << QDateTime::currentDateTime().toString("yyyy-MM-dd hh:mm:ss ");
30+
switch (_type) {
31+
case QtDebugMsg:
32+
t_out << "Debug: ";
33+
break;
34+
case QtInfoMsg:
35+
t_out << "Info: ";
36+
break;
37+
case QtWarningMsg:
38+
t_out << "Warning: ";
39+
break;
40+
case QtCriticalMsg:
41+
t_out << "Critical: ";
42+
break;
43+
case QtFatalMsg:
44+
t_out << "Fatal: ";
45+
break;
46+
}
47+
48+
t_out << _msg << "\n";
49+
}
50+
751
int main(int argc, char* argv[])
852
{
953
QApplication app(argc, argv);
54+
#ifndef _DEBUG
55+
qInstallMessageHandler(myMessageHandler);
56+
#endif // !_DEBUG
57+
QTranslator translator;
58+
if (translator.load(QLocale(), QFileInfo(QCoreApplication::applicationFilePath()).completeBaseName(),
59+
"_", ":/translation/tr"))
60+
QCoreApplication::installTranslator(&translator);
61+
1062
QResArscEditor window;
1163
window.show();
1264
return app.exec();

src/QEditDialog.cpp

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,18 @@
11
#include "QEditDialog.h"
2+
#include "QResArscParser.h"
3+
#include <QCheckBox>
4+
#include <QComboBox>
5+
#include <QDialogButtonBox>
26
#include <QGridLayout>
37
#include <QLabel>
48
#include <QLineEdit>
5-
#include <QComboBox>
6-
#include <QTextEdit>
79
#include <QPlainTextEdit>
8-
#include <QTextBrowser>
9-
#include <QCheckBox>
10-
#include <QDialogButtonBox>
11-
#include <QStackedWidget>
12-
#include <QStackedLayout>
1310
#include <QRegExp>
1411
#include <QRgba64>
15-
#include "QResArscParser.h"
12+
#include <QStackedLayout>
13+
#include <QStackedWidget>
14+
#include <QTextBrowser>
15+
#include <QTextEdit>
1616

1717
QEditDialog::QEditDialog(QWidget* _parent)
1818
: QDialog(_parent)
@@ -81,7 +81,7 @@ void QEditDialog::CreateControl(void)
8181

8282
t_mainLayout->addWidget(m_LB_Value, 3, 0, 1, 1);
8383

84-
m_stackedLayout = new QStackedLayout(this);
84+
m_stackedLayout = new QStackedLayout();
8585
m_stackedLayout->setObjectName(QString::fromUtf8("m_stackedLayout"));
8686

8787
t_mainLayout->addLayout(m_stackedLayout, 3, 1, 1, 1);

src/QResArscEditor.cpp

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,21 @@
11
#include "QResArscEditor.h"
2-
#include <QFileDialog>
3-
#include <QMessageBox>
4-
#include <QLineEdit>
5-
#include <QTreeWidget>
62
#include <QComboBox>
7-
#include <QMenu>
83
#include <QDomDocument>
94
#include <QDomElement>
5+
#include <QFileDialog>
6+
#include <QLineEdit>
7+
#include <QMenu>
8+
#include <QMessageBox>
9+
#include <QTreeWidget>
1010
#include <QXmlStreamWriter>
1111

12-
#include "QResArscParser.h"
13-
#include "QTreeWidgetItem_ArscValue.h"
14-
#include "QAppendDialog.h"
12+
#include "common/basicDefine.h"
1513
#include "QAddLocaleDialog.h"
14+
#include "QAppendDialog.h"
1615
#include "QEditDialog.h"
16+
#include "QResArscParser.h"
17+
#include "QTreeWidgetItem_ArscValue.h"
1718
#include "SimpleRichText.h"
18-
#include "common/basicDefine.h"
1919
QResArscEditor::QResArscEditor(QWidget* _parent)
2020
: QResArscEditorUI(_parent), m_valueMenu(NULL), m_treeMenu(NULL), m_basePath(".")
2121
{
@@ -40,7 +40,7 @@ void QResArscEditor::onOpenReleased_Slot(void)
4040
}
4141
void QResArscEditor::onSaveReleased_Slot(void)
4242
{
43-
QString t_FileName = QFileDialog::getSaveFileName(this, tr("Get OutPut ARSC File"), m_basePath,
43+
QString t_FileName = QFileDialog::getSaveFileName(this, tr("OutPut ARSC File"), m_basePath,
4444
tr("ARSC File (*.arsc)"), NULL, QFileDialog::DontConfirmOverwrite);
4545
if (t_FileName.isEmpty())
4646
return;

src/QStringPool.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
1+
#include "QArscString.h"
12
#include "QStringPool.h"
2-
#include <QVector>
33
#include <QDebug>
4-
#include "QArscString.h"
4+
#include <QVector>
55

66
bool TArscStringStyle::operator<(const TArscStringStyle& _other) const
77
{

src/QTablePackage.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
#include "QTablePackage.h"
21
#include "common/basicDefine.h"
32
#include "QPublicFinal.h"
3+
#include "QTablePackage.h"
44
#include "SimpleRichText.h"
55

66
QTablePackage::QTablePackage(QObject* _parent)

tr/QtResArscEditor_zh_CN.qm

3.26 KB
Binary file not shown.

0 commit comments

Comments
 (0)