Skip to content

Commit 67a45f0

Browse files
committed
重构程序,通过使用支持排名的map和根据需要修改的智能指针,大大简化了字符串编辑的逻辑
1 parent 09fe57e commit 67a45f0

45 files changed

Lines changed: 4529 additions & 1868 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

QtResArscEditor.rc

510 Bytes
Binary file not shown.

QtResArscEditor.sln

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,23 +3,23 @@ Microsoft Visual Studio Solution File, Format Version 12.00
33
# Visual Studio Version 17
44
VisualStudioVersion = 17.13.35806.99 d17.13
55
MinimumVisualStudioVersion = 10.0.40219.1
6-
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "QtResArscEditor", "QtResArscEditor.vcxproj", "{5965181F-7D91-4333-BA99-7E3124F1D577}"
6+
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "QtResArscEditor", "QtResArscEditor.vcxproj", "{D399DED1-EC1C-41F0-9847-AD1C6B7B6E68}"
77
EndProject
88
Global
99
GlobalSection(SolutionConfigurationPlatforms) = preSolution
1010
Debug|x64 = Debug|x64
1111
Release|x64 = Release|x64
1212
EndGlobalSection
1313
GlobalSection(ProjectConfigurationPlatforms) = postSolution
14-
{5965181F-7D91-4333-BA99-7E3124F1D577}.Debug|x64.ActiveCfg = Debug|x64
15-
{5965181F-7D91-4333-BA99-7E3124F1D577}.Debug|x64.Build.0 = Debug|x64
16-
{5965181F-7D91-4333-BA99-7E3124F1D577}.Release|x64.ActiveCfg = Release|x64
17-
{5965181F-7D91-4333-BA99-7E3124F1D577}.Release|x64.Build.0 = Release|x64
14+
{D399DED1-EC1C-41F0-9847-AD1C6B7B6E68}.Debug|x64.ActiveCfg = Debug|x64
15+
{D399DED1-EC1C-41F0-9847-AD1C6B7B6E68}.Debug|x64.Build.0 = Debug|x64
16+
{D399DED1-EC1C-41F0-9847-AD1C6B7B6E68}.Release|x64.ActiveCfg = Release|x64
17+
{D399DED1-EC1C-41F0-9847-AD1C6B7B6E68}.Release|x64.Build.0 = Release|x64
1818
EndGlobalSection
1919
GlobalSection(SolutionProperties) = preSolution
2020
HideSolutionNode = FALSE
2121
EndGlobalSection
2222
GlobalSection(ExtensibilityGlobals) = postSolution
23-
SolutionGuid = {4D5880C4-F152-4B49-AE1C-65CD91CA6EB7}
23+
SolutionGuid = {4A76AA79-EAB3-4224-A687-5069E2458CE2}
2424
EndGlobalSection
2525
EndGlobal

QtResArscEditor.vcxproj

Lines changed: 42 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
</ProjectConfiguration>
1212
</ItemGroup>
1313
<PropertyGroup Label="Globals">
14-
<ProjectGuid>{5965181F-7D91-4333-BA99-7E3124F1D577}</ProjectGuid>
14+
<ProjectGuid>{D399DED1-EC1C-41F0-9847-AD1C6B7B6E68}</ProjectGuid>
1515
<Keyword>QtVS_v304</Keyword>
1616
<WindowsTargetPlatformVersion Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'">10.0</WindowsTargetPlatformVersion>
1717
<WindowsTargetPlatformVersion Condition="'$(Configuration)|$(Platform)' == 'Release|x64'">10.0</WindowsTargetPlatformVersion>
@@ -60,18 +60,23 @@
6060
</ImportGroup>
6161
<PropertyGroup Label="UserMacros" />
6262
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'">
63+
<EnableClangTidyCodeAnalysis>false</EnableClangTidyCodeAnalysis>
64+
<RunCodeAnalysis>false</RunCodeAnalysis>
6365
</PropertyGroup>
6466
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'">
6567
</PropertyGroup>
66-
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
68+
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
6769
<ClCompile>
6870
<AdditionalOptions>/utf-8 %(AdditionalOptions)</AdditionalOptions>
6971
</ClCompile>
7072
</ItemDefinitionGroup>
71-
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
73+
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
7274
<ClCompile>
7375
<AdditionalOptions>/utf-8 %(AdditionalOptions)</AdditionalOptions>
7476
</ClCompile>
77+
<Link>
78+
<Version>2.0</Version>
79+
</Link>
7580
</ItemDefinitionGroup>
7681
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'" Label="Configuration">
7782
<ClCompile>
@@ -102,39 +107,61 @@
102107
</Link>
103108
</ItemDefinitionGroup>
104109
<ItemGroup>
110+
<ClCompile Include="src\common\QUtf8.cpp" />
111+
<ClCompile Include="src\common\utf8.cpp" />
112+
<ClCompile Include="src\GuidFactory.cpp" />
105113
<ClCompile Include="src\QAddLocaleDialog.cpp" />
106114
<ClCompile Include="src\QAppendDialog.cpp" />
115+
<ClCompile Include="src\QArscString.cpp" />
107116
<ClCompile Include="src\QEditDialog.cpp" />
108117
<ClCompile Include="src\QPublicFinal.cpp" />
109118
<ClCompile Include="src\QResArscEditor.cpp" />
110119
<ClCompile Include="src\QResArscEditorUI.cpp" />
111120
<ClCompile Include="src\QResArscParser.cpp" />
112-
<ClCompile Include="src\QUtf8.cpp" />
121+
<ClCompile Include="src\QStringPool.cpp" />
122+
<ClCompile Include="src\QTablePackage.cpp" />
123+
<ClCompile Include="src\QTableType.cpp" />
124+
<ClCompile Include="src\QTreeWidgetItem_ArscValue.cpp" />
113125
<ClCompile Include="src\ResArscStruct.cpp" />
114-
<ClCompile Include="src\StringPoolExtend.cpp" />
115126
<ClCompile Include="src\SimpleRichText.cpp" />
116-
<ClCompile Include="src\TablePackageExtend.cpp" />
117-
<ClCompile Include="src\utf8.cpp" />
118-
<QtRcc Include="QResArscEditorUI.qrc" />
127+
<QtRcc Include="QtResArscEditorUI.qrc" />
128+
<QtUic Include="QResArscEditorUI.ui" />
119129
<ClCompile Include="main.cpp" />
120130
</ItemGroup>
121131
<ItemGroup>
122132
<QtMoc Include="src\QResArscParser.h" />
123133
</ItemGroup>
124134
<ItemGroup>
125-
<QtMoc Include="src\QEditDialog.h" />
135+
<ClInclude Include="src\QTablePackage.h" />
136+
</ItemGroup>
137+
<ItemGroup>
138+
<ClInclude Include="src\common\basicDefine.h" />
139+
<ClInclude Include="src\common\bpptree.h" />
140+
<ClInclude Include="src\common\bpptree_map.h" />
141+
<ClInclude Include="src\common\QUtf8.h" />
142+
<ClInclude Include="src\common\sbtree.h" />
143+
<ClInclude Include="src\common\sbtree_map.h" />
144+
<ClInclude Include="src\common\shared_ptr.h" />
145+
<ClInclude Include="src\common\utf8.h" />
146+
<ClInclude Include="src\GuidFactory.h" />
126147
<QtMoc Include="src\QAppendDialog.h" />
127-
<QtMoc Include="src\QPublicFinal.h" />
128148
<QtMoc Include="src\QAddLocaleDialog.h" />
129-
<ClInclude Include="src\QUtf8.h" />
130-
<ClInclude Include="src\StringPoolExtend.h" />
149+
<QtMoc Include="src\QEditDialog.h" />
131150
<ClInclude Include="src\SimpleRichText.h" />
132-
<ClInclude Include="src\TablePackageExtend.h" />
133-
<ClInclude Include="src\utf8.h" />
134151
<QtMoc Include="src\QResArscEditorUI.h" />
135152
<QtMoc Include="src\QResArscEditor.h" />
136-
<ClInclude Include="src\basicDefine.h" />
153+
<ClInclude Include="src\QArscString.h" />
154+
<ClInclude Include="src\QStringPool.h" />
155+
<ClInclude Include="src\QTableType.h" />
156+
<ClInclude Include="src\QTreeWidgetItem_ArscValue.h" />
137157
<ClInclude Include="src\ResArscStruct.h" />
158+
<QtMoc Include="src\QPublicFinal.h" />
159+
</ItemGroup>
160+
<ItemGroup>
161+
<Natvis Include="src\common\sbtree.natvis" />
162+
</ItemGroup>
163+
<ItemGroup>
164+
<Image Include="QtResArscEditor.ico" />
138165
</ItemGroup>
139166
<ItemGroup>
140167
<ResourceCompile Include="QtResArscEditor.rc" />

QtResArscEditor.vcxproj.filters

Lines changed: 98 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -21,104 +21,158 @@
2121
<UniqueIdentifier>{639EADAA-A684-42e4-A9AD-28FC9BCB8F7C}</UniqueIdentifier>
2222
<Extensions>ts</Extensions>
2323
</Filter>
24-
<Filter Include="utf8">
25-
<UniqueIdentifier>{ae6f8a82-e3a0-43da-85b2-20bf4236eee2}</UniqueIdentifier>
24+
<Filter Include="common">
25+
<UniqueIdentifier>{5303893d-8e97-4363-a37e-c1c1ec20fbf8}</UniqueIdentifier>
2626
</Filter>
2727
</ItemGroup>
2828
<ItemGroup>
29-
<QtRcc Include="QResArscEditorUI.qrc">
29+
<QtRcc Include="QtResArscEditorUI.qrc">
3030
<Filter>Resource Files</Filter>
3131
</QtRcc>
3232
</ItemGroup>
3333
<ItemGroup>
34-
<ClCompile Include="main.cpp">
34+
<ClCompile Include="src\GuidFactory.cpp">
3535
<Filter>Source Files</Filter>
3636
</ClCompile>
3737
<ClCompile Include="src\QResArscParser.cpp">
3838
<Filter>Source Files</Filter>
3939
</ClCompile>
40-
<ClCompile Include="src\QResArscEditorUI.cpp">
40+
<ClCompile Include="src\QTablePackage.cpp">
4141
<Filter>Source Files</Filter>
4242
</ClCompile>
43-
<ClCompile Include="src\ResArscStruct.cpp">
43+
<ClCompile Include="main.cpp">
4444
<Filter>Source Files</Filter>
4545
</ClCompile>
46-
<ClCompile Include="src\QResArscEditor.cpp">
46+
<ClCompile Include="src\QPublicFinal.cpp">
4747
<Filter>Source Files</Filter>
4848
</ClCompile>
49-
<ClCompile Include="src\SimpleRichText.cpp">
49+
<ClCompile Include="src\QStringPool.cpp">
5050
<Filter>Source Files</Filter>
5151
</ClCompile>
52-
<ClCompile Include="src\QEditDialog.cpp">
52+
<ClCompile Include="src\QResArscEditorUI.cpp">
5353
<Filter>Source Files</Filter>
5454
</ClCompile>
55-
<ClCompile Include="src\QAppendDialog.cpp">
55+
<ClCompile Include="src\QResArscEditor.cpp">
5656
<Filter>Source Files</Filter>
5757
</ClCompile>
58-
<ClCompile Include="src\QPublicFinal.cpp">
58+
<ClCompile Include="src\QArscString.cpp">
5959
<Filter>Source Files</Filter>
6060
</ClCompile>
61-
<ClCompile Include="src\QAddLocaleDialog.cpp">
61+
<ClCompile Include="src\common\QUtf8.cpp">
62+
<Filter>common</Filter>
63+
</ClCompile>
64+
<ClCompile Include="src\common\utf8.cpp">
65+
<Filter>common</Filter>
66+
</ClCompile>
67+
<ClCompile Include="src\QTableType.cpp">
68+
<Filter>Source Files</Filter>
69+
</ClCompile>
70+
<ClCompile Include="src\ResArscStruct.cpp">
6271
<Filter>Source Files</Filter>
6372
</ClCompile>
64-
<ClCompile Include="src\StringPoolExtend.cpp">
73+
<ClCompile Include="src\QTreeWidgetItem_ArscValue.cpp">
74+
<Filter>Source Files</Filter>
75+
</ClCompile>
76+
<ClCompile Include="src\SimpleRichText.cpp">
6577
<Filter>Source Files</Filter>
6678
</ClCompile>
67-
<ClCompile Include="src\QUtf8.cpp">
68-
<Filter>utf8</Filter>
79+
<ClCompile Include="src\QAppendDialog.cpp">
80+
<Filter>Source Files</Filter>
6981
</ClCompile>
70-
<ClCompile Include="src\utf8.cpp">
71-
<Filter>utf8</Filter>
82+
<ClCompile Include="src\QAddLocaleDialog.cpp">
83+
<Filter>Source Files</Filter>
7284
</ClCompile>
73-
<ClCompile Include="src\TablePackageExtend.cpp">
85+
<ClCompile Include="src\QEditDialog.cpp">
7486
<Filter>Source Files</Filter>
7587
</ClCompile>
7688
</ItemGroup>
89+
<ItemGroup>
90+
<ClInclude Include="src\GuidFactory.h">
91+
<Filter>Header Files</Filter>
92+
</ClInclude>
93+
<ClInclude Include="src\QStringPool.h">
94+
<Filter>Header Files</Filter>
95+
</ClInclude>
96+
<ClInclude Include="src\ResArscStruct.h">
97+
<Filter>Header Files</Filter>
98+
</ClInclude>
99+
<ClInclude Include="src\QArscString.h">
100+
<Filter>Header Files</Filter>
101+
</ClInclude>
102+
<ClInclude Include="src\common\basicDefine.h">
103+
<Filter>common</Filter>
104+
</ClInclude>
105+
<ClInclude Include="src\common\QUtf8.h">
106+
<Filter>common</Filter>
107+
</ClInclude>
108+
<ClInclude Include="src\common\sbtree.h">
109+
<Filter>common</Filter>
110+
</ClInclude>
111+
<ClInclude Include="src\common\sbtree_map.h">
112+
<Filter>common</Filter>
113+
</ClInclude>
114+
<ClInclude Include="src\common\utf8.h">
115+
<Filter>common</Filter>
116+
</ClInclude>
117+
<ClInclude Include="src\common\bpptree.h">
118+
<Filter>common</Filter>
119+
</ClInclude>
120+
<ClInclude Include="src\common\bpptree_map.h">
121+
<Filter>common</Filter>
122+
</ClInclude>
123+
<ClInclude Include="src\QTreeWidgetItem_ArscValue.h">
124+
<Filter>Header Files</Filter>
125+
</ClInclude>
126+
<ClInclude Include="src\SimpleRichText.h">
127+
<Filter>Header Files</Filter>
128+
</ClInclude>
129+
<ClInclude Include="src\common\shared_ptr.h">
130+
<Filter>Header Files</Filter>
131+
</ClInclude>
132+
<ClInclude Include="src\QTableType.h">
133+
<Filter>Header Files</Filter>
134+
</ClInclude>
135+
<ClInclude Include="src\QTablePackage.h">
136+
<Filter>Header Files</Filter>
137+
</ClInclude>
138+
</ItemGroup>
77139
<ItemGroup>
78140
<QtMoc Include="src\QResArscParser.h">
79141
<Filter>Header Files</Filter>
80142
</QtMoc>
81-
<QtMoc Include="src\QResArscEditorUI.h">
143+
<QtMoc Include="src\QPublicFinal.h">
82144
<Filter>Header Files</Filter>
83145
</QtMoc>
84-
<QtMoc Include="src\QResArscEditor.h">
146+
<QtMoc Include="src\QResArscEditorUI.h">
85147
<Filter>Header Files</Filter>
86148
</QtMoc>
87-
<QtMoc Include="src\QEditDialog.h">
149+
<QtMoc Include="src\QResArscEditor.h">
88150
<Filter>Header Files</Filter>
89151
</QtMoc>
90152
<QtMoc Include="src\QAppendDialog.h">
91153
<Filter>Header Files</Filter>
92154
</QtMoc>
93-
<QtMoc Include="src\QPublicFinal.h">
155+
<QtMoc Include="src\QAddLocaleDialog.h">
94156
<Filter>Header Files</Filter>
95157
</QtMoc>
96-
<QtMoc Include="src\QAddLocaleDialog.h">
158+
<QtMoc Include="src\QEditDialog.h">
97159
<Filter>Header Files</Filter>
98160
</QtMoc>
99161
</ItemGroup>
100162
<ItemGroup>
101-
<ClInclude Include="src\ResArscStruct.h">
102-
<Filter>Header Files</Filter>
103-
</ClInclude>
104-
<ClInclude Include="src\basicDefine.h">
105-
<Filter>Header Files</Filter>
106-
</ClInclude>
107-
<ClInclude Include="src\SimpleRichText.h">
108-
<Filter>Header Files</Filter>
109-
</ClInclude>
110-
<ClInclude Include="src\StringPoolExtend.h">
111-
<Filter>Header Files</Filter>
112-
</ClInclude>
113-
<ClInclude Include="src\utf8.h">
114-
<Filter>utf8</Filter>
115-
</ClInclude>
116-
<ClInclude Include="src\QUtf8.h">
117-
<Filter>utf8</Filter>
118-
</ClInclude>
119-
<ClInclude Include="src\TablePackageExtend.h">
120-
<Filter>Header Files</Filter>
121-
</ClInclude>
163+
<QtUic Include="QResArscEditorUI.ui">
164+
<Filter>Form Files</Filter>
165+
</QtUic>
166+
</ItemGroup>
167+
<ItemGroup>
168+
<Natvis Include="src\common\sbtree.natvis">
169+
<Filter>common</Filter>
170+
</Natvis>
171+
</ItemGroup>
172+
<ItemGroup>
173+
<Image Include="QtResArscEditor.ico">
174+
<Filter>Resource Files</Filter>
175+
</Image>
122176
</ItemGroup>
123177
<ItemGroup>
124178
<ResourceCompile Include="QtResArscEditor.rc">

main.cpp

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
1-
#include <QtWidgets/QApplication>
21
#include "src/QResArscEditor.h"
3-
#include "src/ResArscStruct.h"
4-
#include "src/SimpleRichText.h"
2+
#include <QtWidgets/QApplication>
3+
#include <map>
4+
#include <QDebug>
5+
#include <set>
56

67
int main(int argc, char* argv[])
78
{
8-
QApplication a(argc, argv);
9-
initTableConfig();
10-
QResArscEditor w;
11-
w.show();
12-
return a.exec();
9+
QApplication app(argc, argv);
10+
QResArscEditor window;
11+
window.show();
12+
return app.exec();
1313
}

src/GuidFactory.cpp

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
#include "GuidFactory.h"
2+
3+
GuidFactory::GuidFactory()
4+
:m_guid(0)
5+
{
6+
7+
}
8+
GuidFactory::~GuidFactory()
9+
{
10+
11+
}
12+
void GuidFactory::reset()
13+
{
14+
m_guid = 0;
15+
}
16+
int GuidFactory::getNewGuid()
17+
{
18+
return m_guid++;
19+
}

0 commit comments

Comments
 (0)