Skip to content

Commit

Permalink
Merge v0.5
Browse files Browse the repository at this point in the history
  • Loading branch information
Chaoses-Ib committed Feb 18, 2022
2 parents 56fef3b + 02c872b commit 0e36601
Show file tree
Hide file tree
Showing 48 changed files with 3,413 additions and 1,103 deletions.
3 changes: 0 additions & 3 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,6 +1,3 @@
pinyin.txt
output_*.txt

## Ignore Visual Studio temporary files, build results, and
## files generated by popular Visual Studio add-ons.
##
Expand Down
8 changes: 4 additions & 4 deletions Hijacker/Hijacker.rc
Original file line number Diff line number Diff line change
Expand Up @@ -51,8 +51,8 @@ END
//

VS_VERSION_INFO VERSIONINFO
FILEVERSION 0,4,0,1
PRODUCTVERSION 0,4,0,1
FILEVERSION 0,5,0,1
PRODUCTVERSION 0,5,0,1
FILEFLAGSMASK 0x3fL
#ifdef _DEBUG
FILEFLAGS 0x1L
Expand All @@ -69,12 +69,12 @@ BEGIN
BEGIN
VALUE "CompanyName", "https://github.com/Chaoses-Ib/IbEverythingExt"
VALUE "FileDescription", "Everything ƴ��������չ"
VALUE "FileVersion", "0.4.0.1"
VALUE "FileVersion", "0.5.0.1"
VALUE "InternalName", "Hijacker.dll"
VALUE "LegalCopyright", "Copyright (C) 2021 ����Ib"
VALUE "OriginalFilename", "WindowsCodecs.dll"
VALUE "ProductName", "IbEverythingExt"
VALUE "ProductVersion", "0.4.0.1"
VALUE "ProductVersion", "0.5.0.1"
END
END
BLOCK "VarFileInfo"
Expand Down
20 changes: 19 additions & 1 deletion Hijacker/Hijacker.vcxproj
Original file line number Diff line number Diff line change
Expand Up @@ -132,6 +132,7 @@
<OptimizeReferences>true</OptimizeReferences>
<GenerateDebugInformation>true</GenerateDebugInformation>
<EnableUAC>false</EnableUAC>
<AdditionalOptions>/PDBALTPATH:https://github.com/Chaoses-Ib/IbEverythingExt %(AdditionalOptions)</AdditionalOptions>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
Expand Down Expand Up @@ -168,31 +169,47 @@
<OptimizeReferences>true</OptimizeReferences>
<GenerateDebugInformation>true</GenerateDebugInformation>
<EnableUAC>false</EnableUAC>
<AdditionalOptions>/PDBALTPATH:https://github.com/Chaoses-Ib/IbEverythingExt %(AdditionalOptions)</AdditionalOptions>
</Link>
</ItemDefinitionGroup>
<ItemGroup>
<ClInclude Include="config.hpp" />
<ClInclude Include="framework.h" />
<ClInclude Include="helper.hpp" />
<ClInclude Include="ipc.hpp" />
<ClInclude Include="ipc_window.hpp" />
<ClInclude Include="match.hpp" />
<ClInclude Include="pch.h" />
<ClInclude Include="pinyin.hpp" />
<ClInclude Include="PinyinSearch.hpp" />
<ClInclude Include="PinyinSearchEdit.hpp" />
<ClInclude Include="PinyinSearchPcre.hpp" />
<ClInclude Include="quick_select.hpp" />
<ClInclude Include="resource.h" />
<ClInclude Include="search_history.hpp" />
</ItemGroup>
<ItemGroup>
<ClCompile Include="config.cpp" />
<ClCompile Include="dllmain.cpp" />
<ClCompile Include="helper.cpp" />
<ClCompile Include="ipc.cpp" />
<ClCompile Include="ipc_window.cpp" />
<ClCompile Include="match.cpp">
<Optimization Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">MaxSpeed</Optimization>
<Optimization Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">MaxSpeed</Optimization>
<BasicRuntimeChecks Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Default</BasicRuntimeChecks>
<BasicRuntimeChecks Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Default</BasicRuntimeChecks>
</ClCompile>
<ClCompile Include="pch.cpp">
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Create</PrecompiledHeader>
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Create</PrecompiledHeader>
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Create</PrecompiledHeader>
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Create</PrecompiledHeader>
</ClCompile>
<ClCompile Include="pinyin.cpp" />
<ClCompile Include="pinyin_data.cpp" />
<ClCompile Include="PinyinSearch.cpp" />
<ClCompile Include="PinyinSearchEdit.cpp" />
<ClCompile Include="PinyinSearchPcre.cpp" />
<ClCompile Include="quick_select.cpp" />
<ClCompile Include="search_history.cpp" />
</ItemGroup>
Expand All @@ -206,5 +223,6 @@
<Import Project="C:\L\C++\packages\IbWinCppLib\IbWinCppLib.props" />
<Import Project="C:\L\C++\packages\IbDllHijackLib\IbDllHijackLib.props" />
<Import Project="C:\L\C++\packages\IbEverythingLib\IbEverythingLib.props" />
<Import Project="C:\L\C++\packages\IbPinyinLib\IbPinyinLib.props" />
</ImportGroup>
</Project>
36 changes: 33 additions & 3 deletions Hijacker/Hijacker.vcxproj.filters
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,21 @@
<ClInclude Include="config.hpp">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="PinyinSearchPcre.hpp">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="PinyinSearch.hpp">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="PinyinSearchEdit.hpp">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ipc_window.hpp">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="match.hpp">
<Filter>Header Files</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
<ClCompile Include="dllmain.cpp">
Expand All @@ -53,9 +68,6 @@
<ClCompile Include="pinyin.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="pinyin_data.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="search_history.cpp">
<Filter>Source Files</Filter>
</ClCompile>
Expand All @@ -68,6 +80,24 @@
<ClCompile Include="config.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="PinyinSearchPcre.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="PinyinSearch.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="PinyinSearchEdit.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="ipc_window.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="match.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="helper.cpp">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="Hijacker.rc">
Expand Down
24 changes: 24 additions & 0 deletions Hijacker/PinyinSearch.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
#include "pch.h"
#include "PinyinSearch.hpp"
#include "PinyinSearchPcre.hpp"
#include "PinyinSearchEdit.hpp"
#include <cassert>

std::unique_ptr<PinyinSearch> make_pinyin_search(PinyinSearchMode mode, std::wstring& instance_name, HWND ipc_window) {
if (mode == PinyinSearchMode::Auto) {
try {
return std::make_unique<PinyinSearchPcre>();
} catch (const std::runtime_error& e) {
mode = PinyinSearchMode::Edit;
}
}

switch (mode) {
case PinyinSearchMode::Pcre:
return std::make_unique<PinyinSearchPcre>();
case PinyinSearchMode::Edit:
return std::make_unique<PinyinSearchEdit>(instance_name, ipc_window);
default:
assert(false);
}
}
23 changes: 23 additions & 0 deletions Hijacker/PinyinSearch.hpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
#pragma once
#include <memory>
#include <string>

#include <vector>
#define IB_PINYIN_ENCODING 32
#include <IbPinyinLib/Pinyin.hpp>

enum class PinyinSearchMode {
Auto,
Pcre,
Edit
};

class PinyinSearch {
public:
virtual ~PinyinSearch() {}

virtual void everything_created() {}
virtual void edit_created(HWND edit) {}
};

std::unique_ptr<PinyinSearch> make_pinyin_search(PinyinSearchMode mode, std::wstring& instance_name, HWND ipc_window);
Loading

0 comments on commit 0e36601

Please sign in to comment.